@import url('./design-tokens-5.0.css');
@import url('./typography-5.0.css');

:root { --ink:var(--mhk-ink); --ivory:var(--mhk-ivory); --paper:var(--mhk-paper); --fog:var(--mhk-fog-on-light); --gold:var(--mhk-gold); --gold-on-light:var(--mhk-gold-on-light); --gutter:clamp(1.25rem,5vw,6rem); color-scheme:light; font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif; }
* { box-sizing:border-box; }
html,body { margin:0; min-height:100%; color:var(--ink); background:var(--ivory); }
a { color:inherit; }
.page-header { position:relative; z-index:3; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; height:5.2rem; padding:0 var(--gutter); border-bottom:1px solid rgba(17,17,15,.16); }
.page-brand { display:flex; align-items:center; gap:.75rem; width:max-content; text-decoration:none; font-size:.8rem; letter-spacing:.08em; }
.page-brand img { width:2.1rem; height:2.1rem; }
.page-nav { display:flex; gap:2rem; }
.page-nav a,.page-cta { text-decoration:none; font-size:.68rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.page-cta { justify-self:end; padding-bottom:.35rem; border-bottom:1px solid var(--gold); }
.page-main { padding:clamp(5rem,9vw,10rem) var(--gutter); }
.page-label { display:flex; align-items:center; gap:1rem; margin:0 0 1.5rem; font-size:.68rem; font-weight:750; letter-spacing:.18em; color:var(--gold-on-light); }
.page-label::before { content:''; width:2.5rem; height:1px; background:var(--gold); }
.page-title { max-width:12ch; margin:0; font:400 clamp(3.5rem,8vw,8rem)/.9 var(--mhk-display-serif); letter-spacing:-.055em; text-wrap:balance; }
.page-intro { max-width:44rem; margin:2rem 0 0; font:400 clamp(1.15rem,2vw,1.55rem)/1.55 var(--mhk-subparagraph-serif); color:#46443f; }
.page-footer { display:flex; justify-content:space-between; gap:2rem; padding:2.5rem var(--gutter); border-top:1px solid rgba(17,17,15,.16); font-size:.7rem; letter-spacing:.12em; text-transform:uppercase; }
.page-footer nav { display:flex; flex-wrap:wrap; gap:1.5rem; }
.page-footer a { text-decoration:none; }
.page-footer button { padding:0; border:0; color:inherit; background:transparent; font:inherit; letter-spacing:inherit; text-transform:inherit; cursor:pointer; }

.privacy-policy { max-width:100rem; margin:0 auto; }
.privacy-policy .page-title { max-width:10ch; }
.privacy-policy__date { margin:1.5rem 0 0; color:#69665f; font:400 .9rem/1.5 var(--mhk-support-font,Inter,sans-serif); }
.privacy-policy__layout { display:grid; grid-template-columns:minmax(12rem,17rem) minmax(0,48rem); gap:clamp(3rem,8vw,9rem); align-items:start; margin-top:clamp(4rem,8vw,7rem); }
.privacy-policy__contents { position:sticky; top:2rem; display:grid; gap:.85rem; padding-top:1rem; border-top:1px solid rgba(17,17,15,.2); }
.privacy-policy__contents strong { margin-bottom:.35rem; color:var(--gold-on-light); font:700 .68rem/1.3 var(--mhk-support-font,Inter,sans-serif); letter-spacing:.13em; text-transform:uppercase; }
.privacy-policy__contents a { width:max-content; max-width:100%; color:#55524c; font:400 .84rem/1.4 var(--mhk-support-font,Inter,sans-serif); text-decoration:none; }
.privacy-policy__contents a:hover,.privacy-policy__contents a:focus-visible { color:var(--ink); text-decoration:underline; text-decoration-color:var(--gold); text-underline-offset:.28em; }
.privacy-policy__body { min-width:0; }
.privacy-policy__body section { padding:0 0 3.5rem; scroll-margin-top:2rem; }
.privacy-policy__body section + section { padding-top:3.5rem; border-top:1px solid rgba(17,17,15,.16); }
.privacy-policy__body h2 { margin:0 0 1.2rem; font:400 clamp(2rem,3.5vw,3.2rem)/1.05 var(--mhk-display-serif); letter-spacing:-.025em; }
.privacy-policy__body h3 { margin:2rem 0 .65rem; color:#393732; font:700 .72rem/1.4 var(--mhk-support-font,Inter,sans-serif); letter-spacing:.12em; text-transform:uppercase; }
.privacy-policy__body p,.privacy-policy__body li,.privacy-policy__body address { color:#4e4b45; font:400 1rem/1.75 var(--mhk-support-font,Inter,sans-serif); }
.privacy-policy__body p { margin:.8rem 0 0; }
.privacy-policy__body ul { margin:1rem 0 0; padding-left:1.25rem; }
.privacy-policy__body li + li { margin-top:.55rem; }
.privacy-policy__body a { text-decoration-color:var(--gold); text-underline-offset:.2em; }
.privacy-policy__body code { padding:.1em .3em; border-radius:.2em; background:rgba(17,17,15,.06); font-size:.9em; }
.privacy-policy__body address { font-style:normal; }
.privacy-policy__choice { margin-top:1.5rem; padding:.85rem 1rem; border:1px solid var(--ink); color:var(--ivory); background:var(--ink); font:700 .68rem/1 var(--mhk-support-font,Inter,sans-serif); letter-spacing:.12em; text-transform:uppercase; cursor:pointer; }

.product-hero { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); min-height:calc(100vh - 5.2rem); }
.product-copy { display:flex; flex-direction:column; justify-content:center; padding:8vw var(--gutter); }
.product-media { position:relative; min-height:42rem; overflow:hidden; background:var(--ink); }
.product-media video { width:100%; height:100%; object-fit:cover; }
.product-study { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(17,17,15,.18); border-bottom:1px solid rgba(17,17,15,.18); }
.product-study div { padding:2.3rem var(--gutter); border-right:1px solid rgba(17,17,15,.18); }
.product-study div:last-child { border-right:0; }
.product-study dt { margin-bottom:.6rem; font-size:.65rem; letter-spacing:.16em; text-transform:uppercase; color:#6a6861; }
.product-study dd { margin:0; font:400 1.25rem/1.3 var(--mhk-display-serif); }
.product-story { display:grid; grid-template-columns:.75fr 1.25fr; gap:8vw; padding:9vw var(--gutter); background:var(--ink); color:var(--ivory); }
.product-story h2 { margin:0; font:400 clamp(2.6rem,5vw,5rem)/.98 var(--mhk-display-serif); }
.product-steps { display:grid; gap:2.5rem; }
.product-step { padding-top:1rem; border-top:1px solid rgba(243,239,229,.22); }
.product-step small { letter-spacing:.15em; color:var(--gold); }
.product-step h3 { margin:.75rem 0; font:400 1.8rem/1.15 var(--mhk-display-serif); }
.product-step p { max-width:35rem; color:#c8c4bc; line-height:1.6; }

.notes-list { margin-top:6rem; border-top:1px solid rgba(17,17,15,.2); }
.note { display:grid; grid-template-columns:8rem minmax(0,1fr) auto; gap:2rem; align-items:start; padding:2.5rem 0; border-bottom:1px solid rgba(17,17,15,.2); }
.note small { font-size:.65rem; letter-spacing:.14em; text-transform:uppercase; color:#6a6861; }
.note h2 { max-width:18ch; margin:0 0 .75rem; font:400 clamp(1.8rem,3vw,3rem)/1 var(--mhk-display-serif); }
.note p { max-width:46rem; margin:0; line-height:1.55; color:#56534c; }
.note a { align-self:center; text-decoration:none; font-size:.65rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; border-bottom:1px solid var(--gold); }

.faq { margin-top:6rem; border-top:1px solid rgba(17,17,15,.2); }
.faq details { border-bottom:1px solid rgba(17,17,15,.2); }
.faq summary { display:grid; grid-template-columns:3rem 1fr auto; gap:1rem; align-items:center; padding:2rem 0; cursor:pointer; list-style:none; font:400 clamp(1.35rem,2.4vw,2.2rem)/1.15 var(--mhk-display-serif); }
.faq summary::-webkit-details-marker { display:none; }
.faq summary span { font:700 .62rem/1 Inter,sans-serif; letter-spacing:.14em; color:#77736b; }
.faq summary::after { content:'+'; font:300 1.5rem/1 Inter,sans-serif; color:var(--gold-on-light); }
.faq details[open] summary::after { content:'−'; }
.faq details p { max-width:55rem; margin:0 0 2.5rem 4rem; font:400 1.05rem/1.65 var(--mhk-subparagraph-serif); color:#4b4943; }

.closing-band { display:grid; grid-template-columns:1fr auto; gap:2rem; align-items:end; margin-top:8rem; padding:4rem 0 0; border-top:1px solid rgba(17,17,15,.2); }
.closing-band h2 { max-width:12ch; margin:0; font:400 clamp(2.5rem,5vw,5rem)/.95 var(--mhk-display-serif); }
.closing-band a { text-decoration:none; padding:.9rem 1.2rem; color:var(--ivory); background:var(--ink); font-size:.68rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }

@media(max-width:800px){
  .page-header { grid-template-columns:1fr auto; height:4.4rem; }
  .page-brand span,.page-nav { display:none; }
  .privacy-policy__layout { grid-template-columns:1fr; gap:3rem; }
  .privacy-policy__contents { position:static; }
  .product-hero { grid-template-columns:1fr; }
  .product-copy { min-height:60vh; }
  .product-media { min-height:58vh; }
  .product-study { grid-template-columns:1fr; }
  .product-study div { border-right:0; border-bottom:1px solid rgba(17,17,15,.18); }
  .product-study div:last-child { border-bottom:0; }
  .product-story { grid-template-columns:1fr; }
  .note { grid-template-columns:1fr; gap:.75rem; }
  .note a { width:max-content; margin-top:1rem; }
  .faq details p { margin-left:0; }
  .closing-band { grid-template-columns:1fr; }
  .page-footer { flex-direction:column; }
}
