/* Editorial rhythm shared with the magazine: paper, ink, wood and generous grids. */
:root{--editorial-line:rgba(14,42,32,.19);--editorial-surface:#eae7df;--editorial-muted:#657067}
html{scroll-padding-top:110px}
body{font-size:16px;line-height:1.7}
h1,h2,h3{text-wrap:balance}
p{text-wrap:pretty}
figure{min-width:0}
.eyebrow{letter-spacing:2px;line-height:1.6}
.editorial-header{background:var(--snow);border-bottom:1px solid var(--editorial-line)}
.editorial-header .site-brand{background:transparent}
.site-brand img,.footer-brand img{object-fit:contain}
.hero{margin:20px 24px 0;min-height:690px;border-bottom:1px solid var(--editorial-line)}
.hero .hero-copy{padding:52px 8% 30px}
.hero h1{font-size:clamp(50px,5.1vw,86px);max-width:12ch;margin:32px 0}
.hero .hero-lead{font-size:17px;max-width:38ch}
.hero figure{min-height:640px}
.hero figure:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,rgba(14,42,32,.55));pointer-events:none}
.hero figcaption{z-index:1;bottom:28px;left:30px;padding-top:16px;border-top:1px solid #ffffff70;width:calc(100% - 60px)}
.hero-bottom{border-top:1px solid var(--editorial-line);padding-top:20px;margin-top:40px}
.button{min-height:48px;border:1px solid transparent;transition:background .18s,color .18s,transform .18s;letter-spacing:.02em}
.button:hover{transform:translateY(-2px)}
.hero .button{margin-top:26px}
.chapter-index{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0 24px;border-bottom:1px solid var(--editorial-line)}
.chapter-index a{display:flex;align-items:center;gap:14px;padding:24px 18px;border-right:1px solid var(--editorial-line);font-size:12px}
.chapter-index a:last-child{border:0}.chapter-index span{color:var(--wood);font-size:10px}.chapter-index b{font-size:19px;font-weight:400;margin-left:auto}
.chapter-index a:hover{background:var(--editorial-surface)}
.section{padding:96px 6%;border-top:0;border-bottom:1px solid var(--editorial-line)}
.section h2{font-size:clamp(38px,4.5vw,68px);letter-spacing:-.055em}
.story-grid{gap:8%}.story-prose{border-left:1px solid var(--editorial-line);padding-left:32px}.story-prose p{font-size:16px}
.use-grid{margin-top:56px;gap:0;border-top:1px solid var(--editorial-line)}
.use-grid article{padding:28px 28px 8px 0;border-top:0}.use-grid article+article{padding-left:28px;border-left:1px solid var(--editorial-line)}
.use-grid article>.eyebrow{font-size:38px;letter-spacing:-2px;color:var(--wood);font-weight:400;display:block;margin-bottom:24px}
.use-grid h3{font-size:24px;max-width:20ch;line-height:1.16}.use-grid p{font-size:14px;line-height:1.75;color:var(--editorial-muted);margin-top:16px}
.material-chapter{display:grid;grid-template-columns:1.05fr 1fr;padding:0;background:var(--forest);color:var(--snow);gap:0}
.material-photo{position:relative;min-height:560px}.material-photo img{position:absolute;inset:0;height:100%;object-fit:cover}
.material-photo figcaption{position:absolute;bottom:24px;left:28px;color:white;font-size:10px;letter-spacing:2px;background:rgba(14,42,32,.7);padding:8px 12px}
.material-copy{padding:72px 12%;align-self:center}.material-copy .eyebrow{color:#d1b99b}.material-copy h2{margin-bottom:30px}.material-copy>p:not(.eyebrow){color:#d1dbd0;font-size:16px}.material-copy .text-link{display:flex;justify-content:space-between;color:var(--snow);border-bottom:1px solid #ffffff55;margin-top:34px;padding-bottom:14px}
.collection{background:var(--snow)}.collection .section-heading{display:grid;grid-template-columns:1fr 1fr;gap:20px 8%;align-items:end}.collection .section-heading>.eyebrow{grid-column:1/-1;margin-bottom:0}.collection .section-intro{margin:0;max-width:42ch}
.product-grid{margin-top:48px;gap:24px}.product-grid article{border:1px solid var(--editorial-line);background:transparent;transition:border-color .2s,box-shadow .2s}.product-grid article:hover{border-color:var(--wood);box-shadow:0 12px 32px #0e2a200a}
.product-content{padding:24px}.product-number{border-bottom:1px solid var(--editorial-line);padding-bottom:14px;margin-bottom:22px;color:var(--wood)}.product-content h3{font-size:36px;letter-spacing:-.05em}.product-content>p{min-height:5.2em;font-size:14px;color:var(--editorial-muted);margin-top:16px}
.price{font-size:clamp(20px,2vw,30px);color:var(--wood);font-variant-numeric:tabular-nums;letter-spacing:-.035em;line-height:1.4;margin:26px 0!important}
.product-content .button{width:100%;background:var(--forest);color:var(--snow);justify-content:center}.product-content .button:hover{background:var(--moss)}.product-content .detail-link{display:block;text-align:center;padding-top:16px;font-size:12px}
.image-note,.price-note{font-size:12px;line-height:1.7;color:var(--editorial-muted)}
.interior-section{padding:80px 6%;background:var(--editorial-surface)}.gallery-masthead{padding-bottom:18px;border-bottom:1px solid var(--editorial-line);margin-bottom:40px}.gallery-masthead .eyebrow{margin:0}.interior-section .section-heading{margin-bottom:40px}.gallery-card figcaption{border-bottom:1px solid var(--editorial-line);padding:14px 0 18px;font-size:12px}.gallery-index{color:var(--wood)}.gallery-open img{transition:transform .4s}.gallery-open:hover>img:first-child{transform:scale(1.025)}
.warranty{position:relative}.warranty h2{max-width:20ch}.warranty-grid{gap:24px;margin-top:44px}.warranty-grid article{background:var(--editorial-surface);padding:32px;border-top:2px solid var(--wood)}.warranty-grid h3{font-size:23px}.warranty-grid strong{font-weight:400;font-size:clamp(38px,5vw,68px);color:var(--wood);letter-spacing:-.06em;display:block;margin:20px 0}.warranty-grid p{font-size:14px;max-width:58ch}.warranty-note{margin-top:26px;font-size:13px}
.home-waitlist{padding:80px 6%;display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;background:var(--forest);color:var(--snow)}
.waitlist-heading{margin:0}.waitlist-heading .eyebrow{color:#d1b99b}.waitlist-heading h2{font-size:clamp(40px,4.5vw,68px);margin:26px 0}.waitlist-heading>p:last-child{color:#d1dbd0;font-size:15px}
.home-waitlist .contact-form{background:transparent;grid-template-columns:1fr 1fr;gap:18px}.home-waitlist .contact-field:first-child{grid-column:1/-1}.home-waitlist .contact-form label{font-size:12px}.home-waitlist .contact-form input{background:#ffffff0a;border:1px solid #aebcaf70;color:var(--snow);padding:14px}.home-waitlist small,.home-waitlist .contact-notice{color:#d1dbd0;font-size:12px}.home-waitlist .contact-form button{background:#d7b58b;color:var(--forest);border:0;width:100%;justify-content:center}.home-waitlist .contact-form input:focus{outline-color:#d7b58b}.home-waitlist #contact-status:not(:empty){border-color:#aebcaf70}
.contact-page{padding:84px 5%;max-width:1320px;gap:8%}.contact-page h1{font-size:clamp(48px,5.5vw,80px)}.contact-page>div>p:last-child{color:var(--editorial-muted);max-width:40ch}.contact-page .contact-form{padding:36px;border-top:2px solid var(--wood)}.contact-form input{border-radius:0}.contact-form label{font-size:12px;letter-spacing:.03em}.contact-notice{color:var(--editorial-muted)}
.sales-cta{border-top:1px solid var(--editorial-line);padding:80px 6%}.sales-cta h2{max-width:22ch;margin-left:auto;margin-right:auto}
.discovery-links{gap:18px 30px;padding:24px 6%;font-size:12px;background:var(--editorial-surface);border-top:1px solid var(--editorial-line)}.discovery-links a{text-decoration:none;border-bottom:1px solid var(--stone)}
footer{padding:38px 6%;align-items:center;font-size:12px;border-top:1px solid var(--editorial-line)}.footer-brand{width:160px;height:120px;background:transparent}.footer-brand img{height:100%;width:100%}footer address{color:var(--editorial-muted)}
.breadcrumb{font-size:11px;letter-spacing:.03em;padding-top:24px;padding-bottom:24px}.product-hero{gap:6%;padding:24px 6% 72px}.product-intro h1{font-size:clamp(58px,7vw,104px);color:var(--wood)}.product-intro h2{font-size:clamp(26px,3vw,40px);margin:24px 0}.product-intro>.price{border-top:1px solid var(--editorial-line);padding-top:26px}
.knowledge-page>h1{max-width:20ch}.knowledge-page table{background:var(--editorial-surface)}.knowledge-page th,.knowledge-page td{padding:24px}.faq-list section{padding:8px 0 24px;border-bottom:1px solid var(--editorial-line)}
body[data-reading-theme=night]{--editorial-line:#bdb7aa44;--editorial-surface:#292d28;--editorial-muted:#c1c8bd}body[data-reading-theme=night] .price,body[data-reading-theme=night] .use-grid article>.eyebrow,body[data-reading-theme=night] .warranty-grid strong{color:#d7b58b}
@media(min-width:1600px){body>main,.hero,.chapter-index,.home-waitlist{max-width:1600px;margin-left:auto;margin-right:auto}}
@media(max-width:1000px){.hero{margin:12px 16px 0}.hero .hero-copy{padding:34px 7%}.hero h1{font-size:clamp(44px,6vw,65px)}.chapter-index{margin:0 16px}.chapter-index a{padding:20px 10px;gap:8px}.section{padding:64px 5%}.material-chapter{padding:0}.material-copy{padding:42px 9%}.product-grid{gap:14px}.product-content{padding:18px}.home-waitlist{gap:5%;padding:56px 5%}}
@media(max-width:760px){html{scroll-padding-top:80px}.hero{margin:0;min-height:0}.hero .hero-copy{padding:34px 24px 28px}.hero h1{font-size:clamp(46px,10vw,68px);max-width:14ch;margin:22px 0}.hero .hero-lead{font-size:16px}.hero figure{min-height:320px;height:48vh}.hero-bottom{margin-top:28px}.chapter-index{display:flex;overflow-x:auto;margin:0;scrollbar-width:thin}.chapter-index a{flex:0 0 auto;min-width:145px;padding:18px}.section{padding:52px 24px}.section h2{font-size:38px}.story-grid{gap:26px}.story-prose{border:0;padding:0}.use-grid{margin-top:32px}.use-grid article,.use-grid article+article{border-left:0;border-top:1px solid var(--editorial-line);padding:24px 0}.use-grid article>.eyebrow{font-size:28px;margin-bottom:14px}.material-chapter{grid-template-columns:1fr;padding:0}.material-photo{min-height:320px}.material-copy{padding:40px 24px}.collection .section-heading{grid-template-columns:1fr;gap:18px}.collection .section-heading>.eyebrow{grid-column:auto}.product-grid{gap:28px;margin-top:32px}.product-content{padding:24px}.product-content>p{min-height:0}.price{font-size:26px}.interior-section{padding:52px 24px}.warranty-grid article{padding:26px}.home-waitlist{display:block;padding:48px 24px}.waitlist-heading{margin-bottom:32px}.home-waitlist .contact-form{grid-template-columns:1fr}.waitlist-heading h2{font-size:42px}.contact-page{padding:48px 24px;gap:32px}.contact-page .contact-form{padding:24px}.contact-page h1{font-size:48px}.sales-cta{padding:52px 24px}.discovery-links{padding:24px}.product-hero{padding:20px 24px 48px}.product-intro h1{font-size:64px}footer{padding:28px 24px}.footer-brand{width:130px;height:96px}.knowledge-page th,.knowledge-page td{padding:16px}.about-chapter{gap:24px}}
@media(prefers-reduced-motion:reduce){.button,.product-grid article,.gallery-open img{transition:none}.button:hover{transform:none}}

body[data-reading-theme=night] .editorial-header .site-brand{background:transparent}body[data-reading-theme=night] .site-brand img,body[data-reading-theme=night] .footer-brand img{filter:brightness(0) invert(1)}

/* Pair each surface with its text colors: --forest becomes text ink at night,
   so it must not also serve as the background of the green editorial panels. */
body[data-reading-theme=night] .material-chapter,
body[data-reading-theme=night] .home-waitlist{background:#122e24;color:#f0ede5}
body[data-reading-theme=night] .material-copy .eyebrow,
body[data-reading-theme=night] .waitlist-heading .eyebrow{color:#d7b58b}
body[data-reading-theme=night] .material-copy>p:not(.eyebrow),
body[data-reading-theme=night] .waitlist-heading>p:last-child,
body[data-reading-theme=night] .home-waitlist small,
body[data-reading-theme=night] .home-waitlist .contact-notice{color:#d1dbd0}
body[data-reading-theme=night] .material-copy .text-link{color:#f0ede5;border-color:#90a294}
body[data-reading-theme=night] .contact-page .contact-form{background:#292d28;color:#ece7df}
body[data-reading-theme=night] .contact-form input{background:#202820;color:#f0ede5;border-color:#90a294;caret-color:#f0ede5;color-scheme:dark}
body[data-reading-theme=night] .contact-form input::placeholder{color:#c1c8bd;opacity:1}
body[data-reading-theme=night] .contact-form input:focus{outline-color:#d7b58b}
body[data-reading-theme=night] .contact-form .contact-notice,
body[data-reading-theme=night] .contact-form small{color:#d1dbd0}
body[data-reading-theme=night] .home-waitlist .contact-form button,
body[data-reading-theme=night] .contact-page .contact-form button{background:#d7b58b;color:#122e24}
body[data-reading-theme=night] .home-waitlist .contact-form button:hover,
body[data-reading-theme=night] .contact-page .contact-form button:hover{background:#e6c8a5;color:#122e24}
body[data-reading-theme=night] #contact-status:not(:empty){color:#f0ede5;border-color:#90a294}

/* The certification badge is a separate HTML overlay, never baked into the photo. */
.plan-photo .plan-seal{display:grid;place-items:center;position:absolute;right:14px;bottom:14px;width:72px;height:72px;max-width:none;padding:10px;border-radius:50%;background:#fff;box-shadow:0 3px 14px #0003;border:1px solid #0e2a201a;overflow:hidden}
.plan-photo .plan-seal img{display:block;width:100%;height:100%;object-fit:contain}
.gallery-open .gallery-seal{border-radius:50%;padding:10px;background:#fff;object-fit:contain;box-shadow:0 3px 14px #0003}
@media(max-width:600px){.plan-photo .plan-seal{width:64px;height:64px;padding:9px;right:12px;bottom:12px}}

/* The oval shield fits the available header area without the old square crop. */
.editorial-header .site-brand{display:flex;align-items:center;justify-content:center}
.editorial-header .site-brand img{display:block;width:100%;height:100%;max-height:70px;object-fit:contain;transform:none}
@media(max-width:760px){.editorial-header .site-brand img{max-height:56px}}
