@import url('/lp/summer-craft-beer/css/summer-craft-beer.css');

:root {
  --ink: #17333f;
  --navy: #234b5d;
  --navy-deep: #102f3b;
  --gold: #c4a35a;
  --gold-soft: #eee2bd;
  --leaf: #79929a;
  --cream: #f3f1e9;
  --paper: #fffefa;
  --coral: #6d7f86;
  --line: rgba(23,51,63,.17);
  --shadow: 0 24px 60px rgba(16,47,59,.13);
}

body { background: var(--paper); }
.hero::before { background: linear-gradient(90deg,rgba(11,38,49,.92),rgba(11,38,49,.62) 49%,rgba(11,38,49,.12)); }
.hero::after { content: '一関'; right: 4vw; top: 74px; color: rgba(255,255,255,.88); font-size: 34px; letter-spacing: .2em; }
.hero-content{width:min(760px,100%)}
.hero h1{font-size:clamp(43px,4.8vw,64px)}
.hero-note { background: rgba(255,255,255,.86); }
.intro { background: #edf3f3; }
.intro-card { border-color: rgba(84,121,135,.35); }
.intro-point { background: #e6eff0; }
.dish-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 12px; }
.dish-card { position: relative; min-height: 360px; overflow: hidden; color: white; background: var(--navy-deep); border: 1px solid rgba(255,255,255,.18); }
.dish-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .5; transition: opacity .16s ease; }
.dish-card:hover img { opacity: .58; }
.dish-card::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg,transparent 10%,rgba(8,35,45,.96) 96%); }
.dish-copy { position: absolute; z-index: 1; inset: auto 20px 22px; }
.dish-copy h3 { margin: 0 0 7px; font: 700 22px/1.5 var(--serif); }
.dish-copy p { margin: 0; font-size: 13px; }
.dish-copy a { display: inline-block; margin-top: 12px; color: var(--gold-soft); font-weight: 700; }
.temperature { color: white; background: var(--navy-deep); }
.temp-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.temp-card { position: relative; padding: 38px 28px; border: 1px solid rgba(255,255,255,.23); background: rgba(255,255,255,.055); }
.temp-card::before { content: ''; position: absolute; top: 0; right: 0; width: 42px; height: 42px; border-top: 1px solid var(--gold-soft); border-right: 1px solid var(--gold-soft); opacity: .55; }
.temp-deg { display: block; color: var(--gold-soft); font: 700 46px/1 var(--serif); }
.temp-card h3 { margin: 14px 0 8px; font: 700 25px/1.4 var(--serif); }
.temp-card strong { color: var(--gold-soft); }
.sake-products { background: var(--cream); }
.product-grid.three { grid-template-columns: repeat(3,1fr); }
.product-grid.three .product-visual { min-height: 280px; }
.product-grid.three .product-body h3 { font-size: 21px; }
.single-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; margin-top: 42px; }
.single-card { display: grid; grid-template-rows: 230px 1fr; background: white; border: 1px solid var(--line); }
.single-card img { width: 100%; height: 230px; object-fit: contain; padding: 24px; background: #f6f3eb; }
.single-card div { padding: 24px; }
.single-card h3 { font: 700 20px/1.5 var(--serif); }
.single-card a { color: var(--coral); font-weight: 700; }
.howto-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.howto-card { padding: 26px 20px; border-top: 1px solid var(--line); background: transparent; box-shadow: none; }
.trust-strip { background: #173b4a; }
.section-crest { color: #6f8a94; }
.product-verdict { color: #526f7b; }
.howto-card i { color: var(--navy); font-size: 25px; }
.howto-card h3 { font-family: var(--serif); }

@media (max-width: 980px) {
  .dish-grid { grid-template-columns: repeat(2,1fr); }
  .dish-card:last-child { grid-column: 1 / -1; min-height: 260px; }
  .product-grid.three,.single-grid { grid-template-columns: 1fr 1fr; }
  .temp-grid { grid-template-columns: 1fr; }
  .howto-grid { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 640px) {
  .dish-grid,.product-grid.three,.single-grid,.howto-grid { grid-template-columns: 1fr; }
  .dish-card,.dish-card:last-child { min-height: 320px; grid-column: auto; }
  .hero::before { background: rgba(11,38,49,.72); }
}

@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}

/* 2026 summer sake catalogue: quiet brewery editorial layout. */
.summer-limited{padding-top:92px;background:#fffefa}
.summer-lead{display:grid;grid-template-columns:minmax(360px,.9fr) 1fr;gap:80px;align-items:end;margin-bottom:52px;padding-bottom:34px;border-bottom:1px solid #b8aa89}
.summer-lead>p{max-width:630px;margin:0 0 8px;font-size:17px}
.season-date,.sale-status,.pairing-note{margin:0 0 8px;color:#8c6432;font-size:12px;font-weight:700;letter-spacing:.08em}
.featured-product{display:grid;grid-template-columns:minmax(300px,.82fr) 1.18fr;gap:70px;align-items:center;margin-bottom:70px;padding:48px;background:#17333f;color:#fff;border-top:4px solid var(--gold)}
.featured-product__image{display:grid;place-items:center;min-height:460px;background:#fff}
.featured-product__image img{width:100%;max-width:360px;height:440px;object-fit:contain}
.featured-product__copy h3{margin:0;font:600 clamp(29px,3vw,43px)/1.45 var(--serif)}
.featured-product__copy h3 a,.catalog-card h3 a,.tasting-card h3 a,.bottle-card h3 a,.gift-card h3 a{text-decoration:none}
.featured-product__copy>p:not(.price):not(.sale-status):not(.shipping-note){max-width:590px}
.featured-product .sale-status,.featured-product .shipping-note{color:#ead7a9}
.shipping-note{margin:12px 0 0;color:#6c7473;font-size:11px}
.summer-bottles{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.catalog-card{display:flex;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.catalog-card__image{display:grid;place-items:center;min-height:330px;padding:20px;background:#f8f6ef;border-bottom:1px solid var(--line)}
.catalog-card__image img{width:100%;height:290px;object-fit:contain}
.catalog-card__body{display:flex;flex:1;flex-direction:column;padding:25px 22px}
.catalog-card h3{margin:0;font:600 19px/1.55 var(--serif)}
.catalog-description{margin:13px 0 0;color:#58696e;font-size:13px;line-height:1.85}
.catalog-card .price{margin-top:auto;padding-top:18px}
.product-link{display:inline-block;width:max-content;margin-top:12px;padding-bottom:3px;color:#8b4939;border-bottom:1px solid currentColor;text-decoration:none;font-size:13px;font-weight:700;transition:color .16s ease,border-color .16s ease}
.product-link:hover{color:#17333f}
.product-link--strong{padding:13px 20px;color:#132d36;background:var(--gold);border:1px solid var(--gold)}
.product-link--strong:hover{color:#132d36;background:#e6c174;border-color:#e6c174}
.intro-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.intro-layout>p{margin:0;font-size:17px}
.tasting-products{background:#f1ede2}
.tasting-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.tasting-card{display:grid;grid-template-rows:310px 1fr;background:#fff;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.tasting-card__image{display:grid;place-items:center;padding:20px;background:#faf8f2;border-bottom:1px solid var(--line)}
.tasting-card__image img{width:100%;height:270px;object-fit:contain}
.tasting-card>div{padding:28px}
.tasting-card h3{margin:0;font:600 21px/1.55 var(--serif)}
.tasting-card--main{grid-template-columns:1fr 1fr;grid-template-rows:none}
.tasting-card--main .tasting-card__image{border-right:1px solid var(--line);border-bottom:0}
.tasting-card--main .tasting-card__image img{height:330px}
.section-head--left{margin-left:0;text-align:left}
.bottle-catalog{background:#fff}
.bottle-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.bottle-card{display:flex;flex-direction:column;min-width:0;padding:22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.bottle-card__image{display:grid;place-items:center;height:270px;margin:-22px -22px 20px;padding:16px;background:#f8f6ef;border-bottom:1px solid var(--line)}
.bottle-card__image img{width:100%;height:235px;object-fit:contain}
.bottle-card h3{margin:0;font:600 18px/1.55 var(--serif)}
.bottle-card .price{margin-top:auto;padding-top:17px;font-size:23px}
.gift-products{background:#17333f;color:#fff}
.gift-products .section-lead{color:#d8e0de}
.gift-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.24)}
.gift-card{display:grid;grid-template-rows:310px 1fr;background:#17333f}
.gift-card__image{display:grid;place-items:center;padding:20px;background:#fff}
.gift-card__image img{width:100%;height:270px;object-fit:contain}
.gift-card>div{padding:28px}
.gift-card h3{margin:0;font:600 21px/1.55 var(--serif)}
.gift-card .product-link{color:#ead7a9}
.summer-limited a:focus-visible,.tasting-products a:focus-visible,.bottle-catalog a:focus-visible,.gift-products a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}

@media(max-width:980px){
  .summer-lead,.intro-layout{grid-template-columns:1fr;gap:24px}
  .featured-product{grid-template-columns:1fr 1fr;gap:35px;padding:32px}
  .summer-bottles,.bottle-grid{grid-template-columns:repeat(2,1fr)}
  .tasting-grid{grid-template-columns:1fr 1fr}
  .tasting-card--main{grid-column:1/-1}
  .gift-grid{grid-template-columns:1fr}
  .gift-card{grid-template-columns:40% 1fr;grid-template-rows:none}
}
@media(max-width:640px){
  .summer-limited{padding-top:68px}
  .summer-lead{margin-bottom:34px}
  .featured-product{grid-template-columns:1fr;gap:24px;margin-inline:-14px;padding:20px 18px 28px}
  .featured-product__image{min-height:350px}
  .featured-product__image img{height:330px}
  .summer-bottles{grid-template-columns:1fr 1fr}
  .catalog-card__image{min-height:230px;padding:10px}
  .catalog-card__image img{height:210px}
  .catalog-card__body{padding:18px 14px}
  .catalog-card h3{font-size:16px}
  .catalog-card .price{font-size:20px}
  .tasting-grid{grid-template-columns:1fr}
  .tasting-card,.tasting-card--main{grid-column:auto;grid-template-columns:1fr;grid-template-rows:260px 1fr}
  .tasting-card--main .tasting-card__image{border-right:0;border-bottom:1px solid var(--line)}
  .tasting-card__image img,.tasting-card--main .tasting-card__image img{height:230px}
  .bottle-grid{grid-template-columns:1fr 1fr}
  .bottle-card{padding:14px}
  .bottle-card__image{height:205px;margin:-14px -14px 15px;padding:8px}
  .bottle-card__image img{height:185px}
  .bottle-card h3{font-size:16px}
  .bottle-card .price{font-size:20px}
  .gift-card{grid-template-columns:1fr;grid-template-rows:260px 1fr}
  .gift-card__image img{height:230px}
}

/* Hero v2: summer-limited labels, composed separately for desktop and mobile. */
.hero{min-height:760px;background:#071f2e}
.hero .container{min-height:760px}
.hero-media img{object-position:center center}
.hero::before{background:linear-gradient(90deg,rgba(4,23,36,.28) 0%,rgba(4,23,36,.12) 38%,rgba(4,23,36,0) 62%)}
.hero::after{display:none}
.hero-content{width:min(600px,100%);padding:78px 0 90px}
.hero h1{font-size:clamp(50px,5.2vw,70px);line-height:1.36;letter-spacing:.08em;text-shadow:0 2px 12px rgba(0,0,0,.22)}
.hero-lead{margin:20px 0 22px;line-height:1.9;text-shadow:0 1px 6px rgba(0,0,0,.3)}
.hero-offer{width:max-content;max-width:100%;padding:12px 18px;color:#fff;text-decoration:none;background:rgba(4,29,43,.86);border:1px solid rgba(221,190,117,.6);border-left:3px solid var(--gold);transition:border-color .16s ease,background .16s ease}
.hero-offer:hover{background:#092b3b;border-color:#e3c47d}
.hero-offer span{color:#e7d6ac}
.hero-offer strong{color:#fffefa;font-size:16px;text-shadow:0 1px 5px rgba(0,0,0,.32)}
.hero-offer b{color:#f0c760;font-size:22px;text-shadow:none}
.hero .hero-actions{gap:12px;margin-top:28px}
.hero .btn{min-width:210px;min-height:58px}
.hero .btn-primary{box-shadow:0 4px 0 #8f6a22}
.hero .btn-ghost{color:#fff;background:rgba(4,23,36,.38);border-color:rgba(255,255,255,.72)}
.hero .btn-ghost:hover{color:#17333f;background:#fff}

/* A two-column editorial catalogue gives each bottle enough scale on desktop. */
@media(min-width:981px){
  .summer-bottles{grid-template-columns:repeat(2,1fr)}
  .catalog-card{display:grid;grid-template-columns:43% 1fr}
  .catalog-card__image{min-height:350px;border-right:1px solid var(--line);border-bottom:0}
  .catalog-card__image img{height:315px}
  .catalog-card__body{padding:32px 28px}
  .catalog-card h3{font-size:22px}
  .bottle-grid{grid-template-columns:repeat(2,1fr)}
  .bottle-card{display:grid;grid-template-columns:43% 1fr;grid-template-rows:auto auto 1fr auto auto;column-gap:28px;min-height:330px;padding:25px}
  .bottle-card__image{grid-column:1;grid-row:1/6;width:auto;height:auto;margin:-25px 0 -25px -25px;padding:18px;border-right:1px solid var(--line);border-bottom:0}
  .bottle-card__image img{height:290px}
  .bottle-card .pairing-note,.bottle-card h3,.bottle-card .price,.bottle-card .product-link{grid-column:2}
  .bottle-card h3{font-size:21px}
  .bottle-card .price{align-self:end}
}

@media(max-width:640px){
  body{padding-bottom:78px}
  .hero{min-height:850px;background:#071f2e}
  .hero-media{position:absolute;inset:0;z-index:0;width:100%;height:100%;background:#071f2e}
  .hero-media img{width:100%;height:100%;object-fit:cover;object-position:center top}
  .hero::before{display:block;z-index:1;background:linear-gradient(180deg,rgba(4,23,36,0) 0%,rgba(4,23,36,.06) 47%,rgba(4,23,36,.88) 61%,rgba(4,23,36,.98) 100%)}
  .hero .container{position:relative;z-index:2;width:min(100% - 32px,1160px);min-height:850px;display:flex;align-items:flex-end;background:transparent}
  .hero-content{padding:410px 0 54px}
  .hero .eyebrow{margin-bottom:8px;font-size:10px}
  .hero h1{font-size:39px;line-height:1.42;letter-spacing:.06em}
  .hero-lead{margin:12px 0 16px;font-size:14px;line-height:1.8}
  .hero-offer{width:100%;padding:10px 13px}
  .hero-offer strong{font-size:14px}
  .hero-offer b{font-size:19px}
  .hero .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
  .hero .btn{width:100%;min-width:0;min-height:52px;padding:11px 8px;font-size:13px;box-shadow:none}
  .hero .btn-primary{box-shadow:none}
  .summer-bottles,.bottle-grid{grid-template-columns:1fr}
  .catalog-card{display:grid;grid-template-columns:42% 1fr}
  .catalog-card__image{min-height:260px;border-right:1px solid var(--line);border-bottom:0}
  .catalog-card__image img{height:235px}
  .catalog-card__body{padding:19px 15px}
  .bottle-card{display:grid;grid-template-columns:42% 1fr;grid-template-rows:auto auto 1fr auto auto;column-gap:16px;min-height:250px;padding:16px}
  .bottle-card__image{grid-column:1;grid-row:1/6;height:auto;margin:-16px 0 -16px -16px;padding:8px;border-right:1px solid var(--line);border-bottom:0}
  .bottle-card__image img{height:225px}
  .bottle-card .pairing-note,.bottle-card h3,.bottle-card .price,.bottle-card .product-link{grid-column:2}
}

/* Seasonal set: a dark exhibition case inspired by the labels' night-sky artwork. */
.featured-product{
  position:relative;
  isolation:isolate;
  grid-template-columns:minmax(390px,.92fr) 1.08fr;
  gap:clamp(48px,6vw,86px);
  overflow:hidden;
  padding:clamp(42px,5vw,68px);
  background:#102f3b;
  border-top:0;
  border-bottom:1px solid rgba(225,194,119,.58);
}
.featured-product::before{
  content:'夏季限定';
  position:absolute;
  z-index:-1;
  right:-.15em;
  bottom:-.25em;
  color:rgba(255,255,255,.025);
  font:600 clamp(130px,18vw,270px)/1 var(--serif);
  letter-spacing:.06em;
  writing-mode:vertical-rl;
}
.featured-product::after{
  content:'';
  position:absolute;
  z-index:2;
  inset:18px;
  pointer-events:none;
  border:1px solid rgba(225,194,119,.2);
}
.featured-product__image{
  position:relative;
  min-height:520px;
  padding:42px 34px 30px;
  background:#f5f1e7;
  border:1px solid rgba(225,194,119,.55);
  text-decoration:none;
}
.featured-product__image::before,.featured-product__image::after{
  content:'';
  position:absolute;
  width:38px;
  height:38px;
  border-color:#b3914d;
  opacity:.75;
}
.featured-product__image::before{top:14px;left:14px;border-top:1px solid;border-left:1px solid}
.featured-product__image::after{right:14px;bottom:14px;border-right:1px solid;border-bottom:1px solid}
.featured-product__image span{
  position:absolute;
  top:24px;
  left:28px;
  color:#765f32;
  font:600 10px/1.55 var(--sans);
  letter-spacing:.17em;
}
.featured-product__image img{width:100%;max-width:430px;height:440px;margin-top:25px;object-fit:contain}
.featured-product__copy{position:relative;z-index:3}
.featured-product .sale-status{display:flex;gap:18px;margin-bottom:22px;color:#ead7a9}
.featured-product .sale-status span{padding-bottom:5px;border-bottom:1px solid rgba(234,215,169,.45)}
.featured-kicker{margin:0 0 12px!important;color:#d8c38f!important;font-size:13px!important;letter-spacing:.09em}
.featured-product__copy h3{font-size:clamp(35px,4.2vw,58px);line-height:1.34;letter-spacing:.05em}
.featured-product__copy h3 a{color:#fffefa!important}
.featured-description{margin:22px 0 24px!important;color:#edf1ef!important;font-size:16px;line-height:2}
.featured-contents{display:grid;grid-template-columns:1fr 1fr;margin:0 0 28px;padding:0;border-top:1px solid rgba(255,255,255,.17);border-left:1px solid rgba(255,255,255,.17);list-style:none}
.featured-contents li{padding:10px 14px;color:#dce5e2;border-right:1px solid rgba(255,255,255,.17);border-bottom:1px solid rgba(255,255,255,.17);font-size:12px;letter-spacing:.04em}
.featured-buy{display:flex;align-items:center;gap:26px}
.featured-product .price{flex:0 0 auto;margin:0;color:#f1d486!important;font-size:clamp(31px,3vw,44px);letter-spacing:.04em}
.featured-product .price small{color:#d8caa8!important;font-size:12px}
.featured-product .product-link--strong{margin:0;padding:17px 22px;color:#102f3b!important;background:#d7ad4f;border-color:#d7ad4f;box-shadow:0 4px 0 #856727}
.featured-product .product-link--strong:hover{background:#ebca7c;border-color:#ebca7c;transform:translateY(1px);box-shadow:0 3px 0 #856727}
.featured-product .shipping-note{margin-top:22px;color:#d8caa8;font-size:12px;letter-spacing:.05em}

/* Food pairing: one quiet editorial system instead of five unrelated image tiles. */
.pairing-editorial{padding-block:110px;background:#f7f4ec}
.pairing-intro{display:grid;grid-template-columns:minmax(380px,.8fr) 1.2fr;gap:clamp(45px,8vw,120px);align-items:end;margin-bottom:58px;padding-bottom:38px;border-bottom:1px solid #b8aa89}
.pairing-intro .section-title{margin:0;text-align:left}
.pairing-intro .section-lead{max-width:650px;margin:0 0 8px;text-align:left;font-size:17px;line-height:2}
.section-index{margin:0 0 15px;color:#8c6432;font-size:11px;font-weight:700;letter-spacing:.18em}
.pairing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#b9ad91;border:1px solid #b9ad91}
.pairing-story{display:grid;grid-template-rows:auto 1fr;min-width:0;background:#fffefa}
.pairing-story--featured{grid-column:1/-1;grid-template-columns:minmax(0,1.32fr) minmax(330px,.68fr);grid-template-rows:none}
.pairing-story__image{display:block;overflow:hidden;background:#d6d4ca}
.pairing-story__image img{display:block;width:100%;height:310px;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.pairing-story--featured .pairing-story__image img{height:100%;min-height:510px}
.pairing-story__image:hover img{transform:scale(1.018)}
.pairing-story__copy{display:flex;flex-direction:column;align-items:flex-start;padding:34px 36px 38px}
.pairing-story--featured .pairing-story__copy{justify-content:center;padding:clamp(42px,5vw,72px)}
.pairing-number{margin:0 0 13px;color:#8c6432;font-size:11px;font-weight:700;letter-spacing:.12em}
.pairing-story h3{margin:0 0 17px;color:#17333f;font:600 clamp(24px,2.2vw,34px)/1.55 var(--serif);letter-spacing:.045em}
.pairing-story--featured h3{font-size:clamp(32px,3.3vw,48px)}
.pairing-story__copy>p:not(.pairing-number):not(.pairing-temp){margin:0;color:#52666d;font-size:14px;line-height:1.95}
.pairing-temp{display:flex;align-items:baseline;gap:10px;margin:22px 0 0;color:#17333f;font-size:12px;font-weight:700}
.pairing-temp span{color:#8c6432;font:600 17px/1 var(--serif)}
.pairing-story .product-link{margin-top:auto;padding-top:24px;color:#8b4939}

@media(max-width:980px){
  .featured-product{grid-template-columns:1fr 1fr;gap:36px;padding:38px}
  .featured-product__image{min-height:450px;padding-inline:20px}
  .featured-product__image img{height:390px}
  .featured-buy{align-items:flex-start;flex-direction:column;gap:16px}
  .pairing-intro{grid-template-columns:1fr;gap:24px}
  .pairing-story--featured{grid-template-columns:1fr 1fr}
}

@media(max-width:640px){
  .featured-product{grid-template-columns:1fr;gap:30px;margin-inline:-14px;padding:28px 18px 36px}
  .featured-product::after{inset:8px}
  .featured-product__image{min-height:360px;padding:34px 18px 16px}
  .featured-product__image span{top:18px;left:21px;font-size:8px}
  .featured-product__image img{height:325px;margin-top:17px}
  .featured-product__copy{padding-inline:8px}
  .featured-product__copy h3{font-size:36px}
  .featured-description{font-size:14px!important}
  .featured-buy{width:100%}
  .featured-product .product-link--strong{width:100%;text-align:center}
  .pairing-editorial{padding-block:76px}
  .pairing-intro{margin-bottom:34px;padding-bottom:27px}
  .pairing-intro .section-lead{font-size:15px}
  .pairing-grid{grid-template-columns:1fr}
  .pairing-story,.pairing-story--featured{grid-column:auto;grid-template-columns:1fr;grid-template-rows:auto 1fr}
  .pairing-story__image img,.pairing-story--featured .pairing-story__image img{height:245px;min-height:0}
  .pairing-story__copy,.pairing-story--featured .pairing-story__copy{padding:27px 24px 31px}
  .pairing-story h3,.pairing-story--featured h3{font-size:27px}
}

/* Three decisions, drawn like a short brewery tasting note. */
.selection-guide{position:relative;overflow:hidden;padding-block:105px;background:#edf3f3}
.selection-guide::after{content:'三';position:absolute;right:-.08em;top:-.25em;color:rgba(23,51,63,.025);font:600 390px/1 var(--serif);pointer-events:none}
.selection-guide__lead{position:relative;z-index:1;display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(55px,8vw,120px);align-items:end;margin-bottom:54px}
.selection-guide__lead .section-title{margin:0;text-align:left;font-size:clamp(38px,4.2vw,58px)}
.selection-guide__lead>div:last-child{max-width:620px;padding-bottom:8px;color:#52676f;font-size:16px;line-height:2}
.selection-guide__lead>div:last-child p{margin:0}
.selection-guide__statement{margin-bottom:10px!important;color:#17333f;font:600 21px/1.7 var(--serif)}
.selection-steps{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);margin:0;padding:0;border-top:1px solid #9eaa9f;border-left:1px solid #9eaa9f;list-style:none}
.selection-steps li{min-width:0;background:rgba(255,254,250,.58);border-right:1px solid #9eaa9f;border-bottom:1px solid #9eaa9f}
.selection-steps a{position:relative;display:flex;min-height:340px;flex-direction:column;padding:30px;color:#17333f;text-decoration:none;transition:background .2s ease}
.selection-steps a:hover{background:#fffefa}
.selection-step__number{position:absolute;top:24px;right:25px;color:#8c6432;font-size:11px;font-weight:700;letter-spacing:.15em}
.selection-steps svg{width:82px;height:62px;margin:5px 0 22px;fill:none;stroke:#496b76;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.selection-steps h3{margin:0 0 12px;font:600 23px/1.55 var(--serif);letter-spacing:.04em}
.selection-steps p{margin:0;color:#586c72;font-size:13px;line-height:1.9}
.selection-step__link{margin-top:auto;padding-top:22px;color:#8b4939;font-size:12px;font-weight:700}
.selection-guide__note{position:relative;z-index:1;display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;margin-top:18px;padding:23px 28px;color:#e5ece9;background:#17333f}
.selection-guide__note strong{color:#fffefa;font:600 18px/1.5 var(--serif)}
.selection-guide__note span{font-size:12px}
.selection-guide__note a{color:#f0d697;font-size:12px;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor}

/* Summer gifts: clear hierarchy on the brewery navy background. */
.gift-products{position:relative;padding-block:105px;background:#102f3b}
.gift-products::before{content:'';position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.018),transparent 38%);pointer-events:none}
.gift-products .section-head{position:relative;z-index:1;margin-bottom:38px}
.gift-products .section-title{color:#fffefa!important;text-shadow:0 1px 8px rgba(0,0,0,.2)}
.gift-products .section-lead{color:#dce5e2!important}
.gift-eyebrow{margin:0 0 13px;color:#e5c77d;font-size:10px;font-weight:700;letter-spacing:.2em}
.gift-services{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);margin:0 0 32px;padding:0;border-top:1px solid rgba(229,199,125,.45);border-left:1px solid rgba(229,199,125,.45);list-style:none}
.gift-services li{display:flex;align-items:baseline;gap:14px;padding:16px 20px;border-right:1px solid rgba(229,199,125,.45);border-bottom:1px solid rgba(229,199,125,.45)}
.gift-services strong{color:#f4dfaa;font-size:13px}
.gift-services span{color:#cbd7d4;font-size:11px}
.gift-grid{position:relative;z-index:1;background:rgba(229,199,125,.36)}
.gift-card{background:#102f3b}
.gift-card>div{display:flex;flex-direction:column}
.gift-card h3 a{color:#fffefa!important}
.gift-card>div>p:not(.price){color:#dce5e2}
.gift-card .price{margin-top:auto;padding-top:22px;color:#f0c760!important}
.gift-card .price small{color:#d9c99e!important}
.gift-card .product-link{color:#f0d697!important}

@media(max-width:980px){
  .selection-guide__lead{grid-template-columns:1fr;gap:26px}
  .selection-steps{grid-template-columns:1fr}
  .selection-steps a{min-height:250px}
  .selection-guide__note{grid-template-columns:1fr;gap:8px}
  .gift-services{grid-template-columns:1fr}
}

@media(max-width:640px){
  .catalog-description{font-size:12px;line-height:1.75}
  .selection-guide,.gift-products{padding-block:76px}
  .selection-guide__lead{margin-bottom:34px}
  .selection-guide__lead .section-title{font-size:34px}
  .selection-guide__lead>div:last-child{font-size:14px}
  .selection-guide__statement{font-size:18px}
  .selection-steps a{min-height:265px;padding:25px 23px}
  .selection-guide__note{padding:22px}
  .gift-services li{align-items:flex-start;flex-direction:column;gap:4px}
  .gift-card h3{font-size:20px}
}

/* Final layout polish: readable pairing headline and equal tasting cards. */
@media(min-width:981px){
  .pairing-story--featured{grid-template-columns:minmax(0,1.08fr) minmax(460px,.92fr)}
  .pairing-story--featured h3{font-size:clamp(32px,2.7vw,42px);white-space:nowrap}
}

.tasting-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.tasting-card,.tasting-card--main{display:grid;grid-template-columns:1fr;grid-template-rows:310px minmax(320px,1fr);min-width:0}
.tasting-card--main{grid-column:auto}
.tasting-card--main .tasting-card__image{border-right:0;border-bottom:1px solid var(--line)}
.tasting-card__image,.tasting-card--main .tasting-card__image{padding:22px}
.tasting-card__image img,.tasting-card--main .tasting-card__image img{width:100%;height:265px;object-fit:contain}
.tasting-card>div,.tasting-card--main>div{display:flex;min-width:0;flex-direction:column;padding:30px}
.tasting-card h3{min-height:3.1em;font-size:21px}
.tasting-card h3 a{color:#17333f}
.tasting-card>div>p:not(.price):not(.sale-status){margin:13px 0 0;color:#58696e;font-size:13px;line-height:1.85}
.tasting-card .price{margin-top:auto;padding-top:22px}
.tasting-card .product-link,.tasting-card .product-link--strong{width:100%;margin-top:15px;padding:14px 18px;color:#17333f;text-align:center;background:#d5ad56;border:1px solid #d5ad56;box-shadow:none}
.tasting-card .product-link:hover{color:#17333f;background:#e5c77e;border-color:#e5c77e}

.bottle-description{margin:13px 0 0;color:#58696e;font-size:12px;line-height:1.8}
@media(min-width:981px){
  .bottle-card .pairing-note,.bottle-card h3,.bottle-card .bottle-description,.bottle-card .price,.bottle-card .product-link{grid-column:2}
}

@media(max-width:980px){
  .pairing-story--featured h3{font-size:30px}
  .tasting-grid{grid-template-columns:1fr}
  .tasting-card,.tasting-card--main{grid-column:auto;grid-template-columns:38% 1fr;grid-template-rows:minmax(300px,auto)}
  .tasting-card__image,.tasting-card--main .tasting-card__image{border-right:1px solid var(--line);border-bottom:0}
}

@media(max-width:640px){
  .pairing-story--featured h3{white-space:normal}
  .tasting-card,.tasting-card--main{grid-template-columns:1fr;grid-template-rows:250px minmax(300px,auto)}
  .tasting-card__image,.tasting-card--main .tasting-card__image{border-right:0;border-bottom:1px solid var(--line)}
  .tasting-card__image img,.tasting-card--main .tasting-card__image img{height:215px}
  .tasting-card>div,.tasting-card--main>div{padding:25px 22px}
  .tasting-card h3{min-height:0;font-size:19px}
  .bottle-card .pairing-note,.bottle-card h3,.bottle-card .bottle-description,.bottle-card .price,.bottle-card .product-link{grid-column:2}
  .bottle-description{font-size:12px;line-height:1.75}
}

/* Temperature guide: three stages, expressed through seasonal line drawings. */
.temperature{position:relative;isolation:isolate;overflow:hidden;padding-block:110px;background:#102f3b}
.temperature-motif{position:absolute;z-index:-1;right:-30px;top:20px;width:min(42vw,560px);pointer-events:none;fill:none;stroke:rgba(226,203,147,.11);stroke-width:1.2}
.temperature-heading{display:grid;grid-template-columns:1fr 250px;gap:80px;align-items:end;margin-bottom:52px}
.temperature-heading .section-title{margin:0;color:#fffefa;text-align:left;font-size:clamp(38px,4.3vw,59px)}
.temperature-eyebrow{margin:0 0 15px;color:#e3c77e;font-size:10px;font-weight:700;letter-spacing:.19em}
.temperature-lead{max-width:720px;margin:24px 0 0;color:#d8e3e0;font-size:15px;line-height:2}
.temperature-first{padding:22px 0 6px 24px;border-left:1px solid rgba(226,203,147,.55)}
.temperature-first span{display:block;color:#d8e3e0;font-size:11px}
.temperature-first strong{display:block;margin:7px 0;color:#f1d99f;font:600 52px/1 var(--serif)}
.temperature-first p{margin:0;color:#c2d0cc;font-size:11px;line-height:1.7}
.temp-grid{gap:1px;background:rgba(226,203,147,.45);border:1px solid rgba(226,203,147,.45)}
.temp-card{min-height:400px;padding:34px 30px 32px;background:#173b48;border:0}
.temp-card::before{display:none}
.temp-card--flower{background:#1c4451;box-shadow:inset 0 3px 0 #d9b75f}
.temp-card__top{display:flex;align-items:flex-start;justify-content:space-between}
.temp-card__top svg{width:58px;height:58px;fill:none;stroke:#d9c68f;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;opacity:.8}
.temp-deg{color:#f2dca5;font-size:54px;font-weight:600}
.temp-scene{margin:28px 0 5px!important;color:#adc0bd!important;font-size:10px!important;font-weight:700;letter-spacing:.1em}
.temp-card h3{margin:0 0 14px;color:#fffefa;font-size:28px;font-weight:600}
.temp-card>p:not(.temp-scene){min-height:5.7em;margin:0;color:#d8e3e0;font-size:13px;line-height:1.9}
.temp-recommend{display:flex;align-items:baseline;gap:12px;margin-top:24px;padding-top:18px;border-top:1px solid rgba(255,255,255,.14)}
.temp-recommend span{color:#a9bbb8;font-size:10px}
.temp-recommend strong{color:#f1d99f;font-size:13px}
.temperature .article-link{margin:26px 0 0}
.temperature .article-link a{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;padding:22px 26px;color:#fffefa!important;text-decoration:none;background:#204b58;border:1px solid rgba(226,203,147,.55);transition:background .18s ease,border-color .18s ease}
.temperature .article-link a:hover{background:#285766;border-color:#e2cb93}
.temperature .article-link span{color:#e3c77e;font-size:10px;font-weight:700;letter-spacing:.12em}
.temperature .article-link strong{color:#fffefa;font:600 19px/1.5 var(--serif)}
.temperature .article-link i{color:#f1d99f;font-size:12px;font-style:normal;font-weight:700}

/* Brewery story: fact-led rather than a generic brand statement. */
.brand-story{position:relative;overflow:hidden;padding-block:110px;background:#fffefa}
.brand-story__crest{position:absolute;right:-45px;top:40px;width:280px;pointer-events:none;fill:none;stroke:rgba(23,51,63,.055);stroke-width:1}
.brand-story__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);gap:clamp(55px,7vw,100px);align-items:center}
.brand-story__visual{margin:0}
.brand-story__visual img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center center;border-bottom:4px solid #b99244}
.brand-story__visual figcaption{padding-top:11px;color:#6f7775;font-size:10px;letter-spacing:.06em}
.brand-story__eyebrow{margin:0 0 13px;color:#8c6432;font-size:10px;font-weight:700;letter-spacing:.18em}
.brand-story__copy .section-title{margin:0 0 20px;text-align:left;font-size:clamp(40px,4.2vw,58px)}
.brand-story__lead{margin:0 0 18px;color:#17333f;font:600 21px/1.75 var(--serif)}
.brand-story__copy>p:not(.brand-story__eyebrow):not(.brand-story__lead){margin:0 0 14px;color:#58696e;font-size:13px;line-height:1.95}
.brand-story blockquote{margin:25px 0;padding:18px 0 18px 22px;color:#17333f;border-left:2px solid #b99244;font:600 22px/1.7 var(--serif)}
.brand-story__link{display:inline-block;color:#8b4939;font-size:12px;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor}
.brand-facts{display:grid;grid-template-columns:repeat(4,1fr);margin:58px 0 0;border-top:1px solid #b9ad91;border-left:1px solid #b9ad91}
.brand-facts div{padding:23px;border-right:1px solid #b9ad91;border-bottom:1px solid #b9ad91}
.brand-facts dt{color:#8c6432;font:600 28px/1.2 var(--serif)}
.brand-facts dd{margin:8px 0 0;color:#52666d;font-size:11px}

/* Serving guide: a practical sequence from delivery to the final sip. */
.sake-care{position:relative;overflow:hidden;padding-block:105px;background:#f4f1e8}
.sake-care__wave{position:absolute;inset:auto 0 0;width:100%;height:160px;pointer-events:none;fill:none;stroke:rgba(139,105,53,.14);stroke-width:1}
.sake-care__head{display:grid;grid-template-columns:minmax(360px,.85fr) 1.15fr;gap:clamp(50px,8vw,120px);align-items:end;margin-bottom:50px;padding-bottom:32px;border-bottom:1px solid #b9ad91}
.sake-care__head .section-title{margin:0;text-align:left}
.sake-care__head>p{max-width:650px;margin:0 0 6px;color:#52666d;font-size:15px;line-height:2}
.care-steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #b9ad91;border-left:1px solid #b9ad91}
.care-step{position:relative;display:flex;min-height:350px;flex-direction:column;padding:28px 25px;background:rgba(255,254,250,.65);border-right:1px solid #b9ad91;border-bottom:1px solid #b9ad91}
.care-step__number{position:absolute;top:24px;right:23px;color:#8c6432;font-size:10px;font-weight:700;letter-spacing:.14em}
.care-step svg{width:60px;height:60px;margin-bottom:25px;fill:none;stroke:#496b76;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}
.care-step h3{margin:0 0 13px;color:#17333f;font:600 19px/1.6 var(--serif)}
.care-step p{margin:0;color:#58696e;font-size:12px;line-height:1.9}
.care-step strong{margin-top:auto;padding-top:20px;color:#8b4939;font-size:11px}
.sake-care__note{position:relative;display:grid;grid-template-columns:1fr 1.2fr auto;gap:28px;align-items:center;margin-top:18px;padding:22px 26px;color:#dce5e2;background:#17333f}
.sake-care__note p{margin:0;font-size:11px;line-height:1.7}
.sake-care__note p:first-child{display:flex;align-items:baseline;gap:14px}
.sake-care__note span{color:#e3c77e;font-size:9px;font-weight:700;letter-spacing:.1em}
.sake-care__note strong{color:#fffefa;font:600 17px/1.5 var(--serif)}
.sake-care__note a{color:#f1d99f;font-size:11px;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor}

@media(max-width:980px){
  .temperature-heading,.brand-story__grid,.sake-care__head{grid-template-columns:1fr;gap:28px}
  .temperature-first{max-width:320px}
  .brand-facts,.care-steps{grid-template-columns:repeat(2,1fr)}
  .sake-care__note{grid-template-columns:1fr;gap:10px}
}

@media(max-width:640px){
  .temperature,.brand-story,.sake-care{padding-block:76px}
  .temperature-heading{margin-bottom:34px}
  .temperature-heading .section-title{font-size:35px}
  .temperature-eyebrow{font-size:11px}
  .temperature-lead{font-size:14px}
  .temperature-first{padding-left:18px}
  .temperature-first span,.temperature-first p{font-size:12px}
  .temp-grid{grid-template-columns:1fr}
  .temp-card{min-height:365px;padding:28px 24px}
  .temp-scene,.temp-recommend span{font-size:11px!important}
  .temp-card>p:not(.temp-scene){min-height:0}
  .temperature .article-link a{grid-template-columns:1fr;gap:8px;padding:20px}
  .temperature .article-link span,.temperature .article-link i{font-size:12px}
  .brand-story__grid{gap:36px}
  .brand-story__visual figcaption,.brand-story__eyebrow{font-size:11px}
  .brand-story__copy .section-title{font-size:36px}
  .brand-story__lead{font-size:18px}
  .brand-facts{grid-template-columns:1fr 1fr;margin-top:38px}
  .brand-facts div{padding:18px 14px}
  .brand-facts dt{font-size:23px}
  .brand-facts dd{font-size:12px}
  .sake-care__head{margin-bottom:34px}
  .sake-care__head>p{font-size:14px}
  .care-steps{grid-template-columns:1fr}
  .care-step{min-height:290px}
  .care-step__number{font-size:11px}
  .care-step strong{font-size:12px}
  .sake-care__note{padding:20px}
  .sake-care__note p,.sake-care__note a{font-size:12px}
  .sake-care__note span{font-size:10px}
  .sake-care__note p:first-child{align-items:flex-start;flex-direction:column;gap:5px}
}
