.japan-page{background:var(--paper)}
.japan-hero{min-height:620px;padding:clamp(6rem,11vw,10rem) var(--pad);display:grid;grid-template-columns:minmax(0,1fr) 280px;align-items:center;gap:clamp(3rem,8vw,8rem);border-bottom:1px solid var(--line)}
.japan-hero-copy h1{margin:.25rem 0 1.6rem;font-weight:400;font-size:clamp(4.5rem,10vw,10rem);line-height:.9;letter-spacing:-.055em}
.japan-intro{max-width:49rem;margin:0;font-family:var(--serif);font-size:clamp(1.35rem,2.4vw,2.3rem);line-height:1.45}
.japan-mark{width:250px;height:310px;justify-self:end;display:grid;place-items:center;align-content:center;gap:.6rem;border:1px solid var(--navy);background:rgba(255,255,255,.3)}
.japan-mark span{font-family:var(--serif);font-size:8rem;line-height:1}
.japan-mark small{text-transform:uppercase;letter-spacing:.25em;font-family:var(--sans);font-size:.62rem}
.japan-origin{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:clamp(3rem,9vw,9rem)}
.japan-section-heading h2,.buyer-heading h2,.precision-copy h2,.commitment-copy h2{margin:.4rem 0 1.5rem;font-weight:400;font-size:clamp(2.5rem,5vw,5.2rem);line-height:1.04}
.japan-section-heading h2{max-width:10ch}
.japan-prose{max-width:55rem}
.japan-prose p{font-family:var(--sans);font-size:clamp(.92rem,1.2vw,1.05rem);line-height:1.9;margin:0 0 1.35rem}
.japan-prose p:first-child{font-family:var(--serif);font-size:clamp(1.25rem,2vw,1.8rem);line-height:1.55}
.japan-values .section-heading{max-width:56rem}
.japan-value-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:4rem;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.japan-value{min-height:300px;padding:2rem;display:flex;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.japan-value>span{font-family:var(--sans);font-size:.65rem;letter-spacing:.18em;color:var(--gold)}
.japan-value h3{margin:auto 0 1rem;font-weight:400;font-size:clamp(1.4rem,2.2vw,2.1rem);line-height:1.12}
.japan-value p{margin:0;font-family:var(--sans);font-size:.82rem;line-height:1.75}
.buyer-expectations{padding:clamp(5rem,9vw,9rem) var(--pad);display:grid;grid-template-columns:minmax(250px,.9fr) minmax(0,1.1fr);gap:clamp(3rem,9vw,9rem);background:var(--navy-deep);color:var(--cream)}
.buyer-heading h2{max-width:11ch}
.expectation-list{border-top:1px solid rgba(245,241,232,.25)}
.expectation-list div{display:grid;grid-template-columns:55px 1fr;gap:1rem;padding:1.4rem 0;border-bottom:1px solid rgba(245,241,232,.25)}
.expectation-list span{font-size:.6rem;letter-spacing:.15em;color:var(--gold)}
.expectation-list p{margin:0;font-family:var(--serif);font-size:clamp(1.1rem,1.8vw,1.5rem)}
.portal-usp{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(3rem,8vw,8rem);align-items:center;border-bottom:1px solid var(--line)}
.portal-usp-copy h2{max-width:13ch;margin:.4rem 0 1.5rem;font-weight:400;font-size:clamp(2.5rem,5vw,5.2rem);line-height:1.04}
.portal-usp-copy>p{max-width:52rem;font-family:var(--sans);font-size:.9rem;line-height:1.85}
.portal-benefits{margin:2rem 0;padding:0;border-top:1px solid var(--line);list-style:none}
.portal-benefits li{position:relative;padding:1rem 0 1rem 1.8rem;border-bottom:1px solid var(--line);font-family:var(--sans);font-size:.82rem}
.portal-benefits li::before{content:"✓";position:absolute;left:0;color:var(--gold)}
.portal-usp-copy .portal-usp-note{margin:1.6rem 0;padding:1.2rem 1.4rem;border-left:2px solid var(--gold);background:rgba(255,255,255,.42);font-size:.76rem}
.portal-usp-copy .button{margin-top:.5rem}
.portal-visibility-card{padding:clamp(1.5rem,3vw,2.5rem);background:var(--navy);color:var(--cream);box-shadow:18px 18px 0 var(--cream)}
.portal-card-topline{display:flex;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(245,241,232,.25);font-family:var(--sans);font-size:.54rem;letter-spacing:.14em}
.portal-order-row{display:flex;align-items:end;justify-content:space-between;gap:2rem;padding:2rem 0 1rem}
.portal-order-row small,.portal-stage-row small{display:block;margin-bottom:.35rem;color:var(--gold);font-family:var(--sans);font-size:.55rem;letter-spacing:.16em}
.portal-order-row strong{font-family:var(--serif);font-size:1.5rem;font-weight:400}
.portal-percentage{font-family:var(--serif);font-size:3.4rem;line-height:1}
.portal-progress{height:5px;background:rgba(245,241,232,.2)}
.portal-progress span{display:block;width:65%;height:100%;background:var(--gold)}
.portal-stage-row{padding:1.6rem 0}
.portal-stage-row strong{display:block;font-family:var(--serif);font-size:2rem;font-weight:400}
.portal-stage-row span{font-family:var(--sans);font-size:.68rem;opacity:.72}
.portal-data-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(245,241,232,.25);border-left:1px solid rgba(245,241,232,.25)}
.portal-data-grid div{min-height:115px;padding:1rem;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid rgba(245,241,232,.25);border-bottom:1px solid rgba(245,241,232,.25)}
.portal-data-grid span{font-family:var(--serif);font-size:1.8rem}
.portal-data-grid small{font-family:var(--sans);font-size:.58rem;line-height:1.4;opacity:.75}
.portal-visibility-card>p{margin:1.5rem 0 0;font-family:var(--sans);font-size:.68rem;letter-spacing:.05em;opacity:.75}
.precision{display:grid;grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr);gap:clamp(3rem,8vw,8rem);align-items:start}
.precision-number{position:sticky;top:120px;font-family:var(--serif);font-size:clamp(7rem,16vw,16rem);line-height:.8;color:rgba(15,43,82,.1)}
.precision-copy{max-width:56rem}
.precision-copy h2{max-width:12ch}
.precision-copy>p{font-family:var(--sans);font-size:.94rem;line-height:1.85;margin:0 0 1.35rem}
.precision-copy .quality-note{margin-top:2.25rem;padding:1.25rem 1.5rem;border-left:2px solid var(--gold);background:var(--cream);font-size:.78rem}
.japan-commitment{padding:clamp(5rem,9vw,8rem) var(--pad);display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:clamp(3rem,9vw,9rem);align-items:end;border-top:1px solid var(--line)}
.commitment-copy h2{max-width:15ch}
.commitment-copy>p{max-width:52rem;font-family:var(--sans);font-size:.9rem;line-height:1.8}
.commitment-action{padding:2.25rem;border:1px solid var(--line);background:rgba(255,255,255,.35)}
.commitment-action p{margin:0 0 1.5rem;font-family:var(--serif);font-size:1.5rem;line-height:1.35}
.nav-dropdown.open-page>.nav-dropdown-toggle{color:var(--gold)}
@media(max-width:900px){
  .japan-hero{grid-template-columns:1fr;min-height:auto}
  .japan-mark{justify-self:start;width:180px;height:220px}
  .japan-mark span{font-size:5.5rem}
  .japan-origin,.buyer-expectations,.portal-usp,.precision,.japan-commitment{grid-template-columns:1fr}
  .japan-value-grid{grid-template-columns:repeat(2,1fr)}
  .precision-number{position:static;font-size:8rem}
  .portal-visibility-card{max-width:620px}
}
@media(max-width:600px){
  .japan-hero{padding-top:5rem;padding-bottom:5rem}
  .japan-value-grid{grid-template-columns:1fr}
  .japan-value{min-height:245px}
  .buyer-expectations{padding-top:5rem;padding-bottom:5rem}
  .commitment-action{padding:1.5rem}
  .portal-data-grid{grid-template-columns:1fr}
  .portal-data-grid div{min-height:88px}
  .portal-card-topline{display:grid}
}
