@font-face{font-family:Cormorant;src:url('../fonts/CormorantGaramond-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Lato;src:url('../fonts/Lato-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{--page:#FCFAF5;--cream:#EEE3D4;--panel:#F1EBE2;--text:#342518;--muted:#6A5541;--sage:#9CA88D;--sage-wash:#E3EBDB;--rule:#A27D69;--line:rgba(106,85,65,.22);font-family:Lato,Arial,sans-serif;color:var(--text);background:var(--page);font-synthesis:none}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-width:320px;font-size:1rem;line-height:1.65}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--sage);outline-offset:4px}
.skip-link{position:absolute;z-index:10;top:-100px;left:1rem;padding:.65rem 1rem;background:var(--page);border:1px solid var(--text)}
.skip-link:focus{top:1rem}
.container{width:min(100% - 2.5rem,1100px);margin-inline:auto}
.site-header{border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;min-height:6.3rem}
.wordmark{text-decoration:none;white-space:nowrap;font-family:Cormorant,Georgia,serif;font-size:2.15rem;line-height:1;color:var(--muted)}
.wordmark span{font-style:italic}
.main-nav{display:flex;align-items:center;flex-wrap:wrap;column-gap:2.2rem;row-gap:.5rem}
.main-nav a{text-decoration:none;font-size:.875rem;line-height:1.45;padding-block:.55rem;border-bottom:1px solid transparent}
.main-nav a:hover,.main-nav a[aria-current=page]{border-color:var(--rule)}
.eyebrow{margin:0 0 1rem;color:var(--muted);font-size:.78rem;line-height:1.4;letter-spacing:.12em;text-transform:uppercase}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:Cormorant,Georgia,serif;color:var(--muted);font-weight:400}
h1{font-size:clamp(3.65rem,6.4vw,6.5rem);line-height:.98;letter-spacing:-.025em;margin-bottom:1.55rem}
h2{font-size:clamp(2.6rem,3.8vw,4.2rem);line-height:1.05;margin-bottom:1.35rem}
h3{font-size:clamp(2.3rem,3.5vw,3.5rem);line-height:1.06;margin-bottom:1rem}
.lead{font-size:1.17rem;line-height:1.65;max-width:39rem;color:var(--text)}
.home-intro{padding-block:5.75rem 4.2rem;border-bottom:1px solid var(--line)}
.home-intro h1{max-width:52rem}
.home-intro .lead{max-width:38rem;margin-bottom:0}
.catalog{padding-block:3.2rem 7rem}
.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:2.2rem}
.section-heading h2{margin:0}
.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,28rem),1fr));gap:1.5rem}
.product-card{min-width:0;display:grid;grid-template-columns:minmax(14rem,.8fr) minmax(0,1.2fr);background:var(--panel);border:1px solid var(--line);border-radius:.8rem;overflow:hidden}
.product-card-visual{padding:2rem;background:#EAE0D3;display:grid;place-items:center}
.product-card-visual img{width:min(100%,16rem);box-shadow:0 15px 29px rgba(52,37,24,.12)}
.product-card-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(2rem,4vw,4rem)}
.product-card-copy p:not(.eyebrow){max-width:32rem}
.text-link{display:inline-flex;align-items:center;gap:.7rem;margin-top:.8rem;padding-bottom:.35rem;border-bottom:1px solid var(--rule);color:var(--text);text-decoration:none;line-height:1.4}
.text-link:hover{border-color:var(--text)}
.text-link span{font-size:1.1rem}
.site-footer{border-top:1px solid var(--line);padding:2rem 0;color:var(--muted);font-size:.85rem;line-height:1.7}
.footer-inner{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:.5rem 2rem}
.footer-inner p{margin:0}
.footer-links{display:flex;flex-wrap:wrap;gap:.3rem 1.25rem}
.footer-links a+a::before{content:'·';display:inline-block;margin-right:1.25rem;color:var(--muted)}
.footer-links a{text-decoration:none;border-bottom:1px solid transparent}
.footer-links a:hover,.footer-links a:focus-visible{border-color:var(--rule)}
.legal-page{padding-block:5rem 7rem;max-width:1100px}
.legal-page h1{font-size:clamp(3rem,5vw,5rem)}
.legal-page p{max-width:46rem}
.legal-page section{max-width:46rem;margin:2.5rem 0}
.legal-page section h2{font-size:clamp(1.8rem,3vw,2.5rem);margin-bottom:.7rem}
.legal-page .legal-list{line-height:1.85}
.product-page{display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(3rem,7vw,7rem);align-items:center;padding-block:5rem 7rem}
.product-story{max-width:37rem}
.product-story p:not(.eyebrow){max-width:35rem}
.product-story .lead{margin-bottom:2rem}
.product-facts{display:flex;flex-wrap:wrap;gap:.55rem;margin:0 0 2.35rem}
.product-facts span{background:var(--panel);border:1px solid var(--line);padding:.48rem .85rem;font-size:.85rem;color:var(--muted)}
.product-showcase{min-height:29rem;padding:clamp(2rem,4vw,4.2rem);display:grid;place-items:center;background:var(--panel);border-radius:.9rem}
.product-showcase img{width:min(100%,23rem);box-shadow:0 22px 42px rgba(52,37,24,.13)}
.zone-page{padding-block:5.3rem 7rem}
.zone-intro{max-width:47rem;margin-bottom:2.8rem}
.zone-intro .lead{margin-bottom:1.4rem}
.prototype-note{max-width:43rem;margin:1.3rem 0 0;padding:1rem 1.2rem;background:var(--sage-wash);border-left:3px solid var(--sage);font-size:.93rem;line-height:1.55}
.prototype-note strong{font-weight:400;color:var(--muted)}
.zone-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:stretch}
.zone-panel{background:var(--panel);padding:clamp(1.5rem,3.3vw,3rem);border:1px solid var(--line);border-radius:.8rem}
.zone-panel h2{font-size:clamp(2.5rem,3.1vw,3.4rem)}
.field{display:grid;gap:.5rem;margin-bottom:1.15rem}
.field-help{color:var(--muted);font-size:.85rem;line-height:1.45}
.field label{font-size:.95rem}
.field input{width:100%;min-height:3.15rem;padding:.78rem 1rem;border:1px solid var(--line);border-radius:.28rem;background:var(--page);font:inherit;font-size:.93rem;color:var(--muted)}
.field input:disabled{opacity:1;color:var(--muted);-webkit-text-fill-color:var(--muted)}
.field input::placeholder{color:#806e5e;opacity:1}
.zone-panel button{width:100%;min-height:3.2rem;margin-top:.4rem;padding:.75rem 1rem;background:var(--muted);border:1px solid var(--muted);border-radius:.28rem;color:var(--page);font:inherit;font-size:.98rem;cursor:not-allowed;opacity:.78}
.small-note{font-size:.86rem;line-height:1.55;color:var(--muted);margin:1rem 0 0}
.account-preview{background:#F7F3EC}
.planner-status,.material-preview{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--line);background:var(--page);padding:1rem 1.15rem}
.planner-status{margin:1.6rem 0 2.65rem}
.status-pill{flex:none;padding:.35rem .7rem;background:var(--sage-wash);color:#394430;border-radius:10rem;font-size:.78rem;line-height:1.2}
.account-preview h3{font-size:2rem;margin-bottom:1rem}
.material-preview span{color:var(--muted);font-size:.8rem;flex:none}
@media(max-width:760px){
  .container{width:min(100% - 2rem,34rem)}
  .header-inner{min-height:0;flex-direction:column;align-items:flex-start;gap:.55rem;padding-block:1.1rem .5rem}
  .wordmark{font-size:1.95rem}
  .main-nav{width:100%;justify-content:space-between;gap:.55rem}
  .main-nav a{font-size:.85rem;white-space:nowrap}
  h1{font-size:clamp(3.1rem,12vw,4.65rem)}
  .home-intro{padding-block:3.8rem 3.3rem}
  .catalog{padding-block:2.8rem 5rem}
  .product-card{grid-template-columns:1fr}
  .product-card-visual{padding:2.3rem}
  .product-card-visual img{width:min(100%,14rem)}
  .product-card-copy{padding:2rem 1.55rem 2.4rem}
  .product-page{grid-template-columns:1fr;padding-block:3.6rem 5rem;gap:2.4rem}
  .product-showcase{min-height:0;padding:2rem}
  .product-showcase img{width:min(100%,16.5rem)}
  .zone-page{padding-block:3rem 5rem}
  .zone-intro{margin-bottom:1.75rem}
  .zone-grid{grid-template-columns:1fr}
  .legal-page{padding-block:3.5rem 5rem}
}
@media(max-width:370px){.main-nav a{font-size:.78rem}.container{width:calc(100% - 1.5rem)}.planner-status,.material-preview{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
