/* SpidiVolto — editorial workshop. Typography remains controlled by the admin. */
*{box-sizing:border-box}
:root{--bg:#fff3cf;--ink:#510b05;--green:#510b05;--muted:#510b05;--paper:var(--bg);--line:color-mix(in srgb,var(--ink) 30%,transparent);--gutter:clamp(20px,2.1vw,40px);--heading:Georgia,serif;--body:Arial,sans-serif;--body-size:18px;--title-size:76px;--title-weight:400;--body-weight:400;--on-accent:var(--bg)}
html{font-size:var(--body-size);scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-weight:var(--body-weight);line-height:1.5;-webkit-font-smoothing:antialiased}
::selection{background:var(--ink);color:var(--bg)}
a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--heading);font-weight:var(--title-weight);letter-spacing:-.055em}h1{font-size:clamp(40px,5.3vw,var(--title-size));line-height:.99}h2{font-size:clamp(42px,6.5vw,100px);line-height:1.02}h3{font-size:clamp(25px,2.6vw,40px);line-height:1.13}p{overflow-wrap:break-word}.icon{width:24px;height:24px;flex-shrink:0;vertical-align:middle}.eyebrow{font-family:var(--body);font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:24px;font-weight:600}.section{padding:110px var(--gutter);scroll-margin-top:30px}.section-heading{display:grid;grid-template-columns:1.7fr 1fr;align-items:end;gap:10%;margin-bottom:64px}.section-heading>p{max-width:390px;font-size:.95rem}.number{font-size:.7rem;letter-spacing:.04em;font-family:var(--body)}
/* Persistent compact navigation, deliberately separate from the masthead. */
.header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:14px var(--gutter);background:var(--bg);border-bottom:1px solid var(--line)}.header-actions{display:flex;gap:10px;align-items:center}.brand-mark{display:flex;align-items:center;justify-content:center;width:48px;height:auto;aspect-ratio:1}.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}.home-mark{display:block}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-height:50px;padding:13px 25px;background:var(--green);color:var(--on-accent);border:1px solid var(--green);border-radius:5px 20px 5px 20px;font-size:.76rem;line-height:1.35;text-align:left;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button .icon{width:19px;height:19px}.button-secondary{color:inherit;background:transparent;border-color:currentColor}.unavailable{flex-wrap:wrap;cursor:default;gap:2px}.unavailable small{display:block;font-size:.61rem;width:100%}.unavailable:hover{transform:none}.site-menu{position:relative}.site-menu summary{width:50px;height:50px;background:var(--ink);color:var(--bg);border-radius:18px 5px 18px 5px;display:grid;place-items:center;cursor:pointer;list-style:none}.site-menu summary::-webkit-details-marker{display:none}.site-menu[open] summary .icon{transform:rotate(45deg)}.site-menu nav{position:absolute;right:0;top:65px;width:min(430px,calc(100vw - 40px));background:var(--ink);color:var(--bg);padding:25px;box-shadow:0 10px 30px #0002}.site-menu nav a{display:block;font-family:var(--heading);font-size:1.65rem;padding:12px 0;border-bottom:1px solid currentColor}.site-menu nav a:hover{padding-left:10px}.skip-link{position:fixed;top:-100px;left:20px;background:var(--ink);color:var(--bg);padding:14px;z-index:100}.skip-link:focus{top:10px}
/* A full-width name, then the product and its purpose in the same view. */
.section-hero{padding:0 var(--gutter) 22px}.masthead{display:flex;gap:1.7vw;align-items:center;justify-content:space-between;font-family:var(--heading);font-weight:var(--title-weight);font-size:clamp(50px,12.3vw,240px);letter-spacing:-.075em;line-height:1.13;padding:3px 0 18px;white-space:nowrap;overflow:hidden}.masthead-suffix{font-size:.65em;letter-spacing:-.075em}.masthead .brand-mark{width:9vw;height:auto;max-width:175px;flex-shrink:0}.hero-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--gutter);min-height:510px}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:22px 15px 22px 4%;}.hero-copy .eyebrow{margin-bottom:20px}.hero-description{font-size:.92rem;max-width:600px;margin-top:22px;line-height:1.5}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.hero-actions .button:first-child{width:100%}.hero-actions .button-secondary{flex:1}.hero-note{font-size:.73rem;margin-top:20px;max-width:520px}.hero-colophon{display:flex;justify-content:space-between;gap:24px;font-size:.66rem;text-transform:uppercase;margin-top:20px}.hero-colophon a{display:flex;gap:16px;align-items:center}.hero-colophon .icon{width:18px;height:18px}
.photo{position:relative;min-width:0;background:var(--paper);overflow:hidden;aspect-ratio:4/5;color:var(--ink)}.photo img{width:100%;height:100%;object-fit:cover;display:block}.hero-visual{min-width:0}.hero-photo{height:100%;min-height:510px;aspect-ratio:auto}.photo-placeholder{height:100%;min-height:inherit;position:relative;display:flex;align-items:center;justify-content:center;padding:28px}.shape-outline{display:block;width:60%;height:80%;stroke:currentColor;stroke-width:1.4;overflow:visible}.placeholder-caption{position:absolute;left:18px;right:18px;bottom:18px;display:flex;align-items:start;gap:12px;background:var(--paper);border-top:1px solid var(--line);padding-top:12px;font-size:.64rem;line-height:1.5}.placeholder-caption .icon{width:18px;height:18px}.hero-photo .shape-outline{width:52%;height:75%;transform:rotate(-10deg)}.hero-photo .photo-placeholder:after{content:"";width:32%;aspect-ratio:1;position:absolute;right:8%;top:18%;border:1px solid currentColor;border-radius:50%;opacity:.3;pointer-events:none}
/* Process: an image and three clean numbered rows. */
.section-steps{background:var(--paper)}.process-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:8%;align-items:center}.process-layout>.photo{aspect-ratio:1.1;background:var(--bg)}.process-layout .placeholder-caption{background:var(--bg)}.steps-list{border-top:1px solid var(--line)}.step{display:grid;grid-template-columns:30px 1fr 30px;gap:24px;padding:30px 0;border-bottom:1px solid var(--line)}.step h3{font-size:clamp(24px,2.2vw,34px);letter-spacing:-.035em}.step p{font-size:.82rem;margin-top:15px;max-width:490px}.step>.icon{width:27px;height:27px}.step .number{padding-top:7px}
/* A dark, spacious statement interrupts the rhythm. */
.section-benefits{background:var(--ink);color:var(--bg);padding-top:100px;padding-bottom:90px}.statement-heading{text-align:center;max-width:1150px;margin:0 auto 85px}.statement-heading h2{font-size:clamp(44px,7vw,108px)}.statement-heading>p{margin:28px auto 0;max-width:540px;font-size:.88rem}.benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5%}.benefits-grid article{border-top:1px solid currentColor;padding-top:18px;display:grid;grid-template-columns:28px 1fr;gap:12px}.benefits-grid h3{font-size:clamp(24px,2.5vw,38px)}.benefits-grid p{font-size:.8rem;margin-top:22px}
/* An asymmetric collection, with one configurable photograph per object. */
.section-products{padding-bottom:80px}.products-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,min(100%,420px)));gap:4%;align-items:start;justify-content:center}.product:nth-child(n){margin-top:0}.product .photo{aspect-ratio:4/4.8}.product:nth-child(2) .photo{border-radius:48% 48% 0 0}.product-heading{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-top:22px}.product h3{font-size:clamp(25px,2.8vw,42px)}.price{white-space:nowrap;font-size:.9rem;padding-top:9px}.product>p{font-size:.8rem;margin-top:14px;max-width:350px}.collection-photo{margin-top:80px}.collection-photo .photo{aspect-ratio:3.8}.collection-photo .shape-outline{width:20%;height:75%;transform:rotate(90deg)}.product-note{font-size:.78rem;margin:22px 0 0 auto;max-width:650px}
.section-audience{background:var(--paper);display:grid;grid-template-columns:1fr 1.1fr;gap:10%}.audience-intro>p:not(.eyebrow){margin-top:25px;max-width:390px;font-size:.9rem}.audience-art{position:relative;width:160px;height:190px;margin:40px 0 0 12%;}.audience-art .shape-outline{width:100%;height:100%}.audience-art>.icon{position:absolute;left:calc(50% - 25px);top:calc(50% - 25px);width:50px;height:50px}.audience-list{border-top:1px solid var(--line);align-self:center}.audience-list>div{display:flex;gap:25px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}.audience-list h3{font-size:clamp(28px,3.1vw,46px);flex:1}
.section-trust{padding:0;display:grid;grid-template-columns:1fr 1fr;align-items:stretch;background:var(--paper)}.section-trust>.photo{aspect-ratio:auto;min-height:650px;background:var(--bg)}.section-trust .placeholder-caption{background:var(--bg)}.trust-copy{padding:80px 8%;display:flex;flex-direction:column;justify-content:center}.trust-copy h2{font-size:clamp(42px,5.6vw,84px)}.trust-copy>p:not(.eyebrow){font-size:.95rem;margin-top:35px;max-width:550px}.trust-mark{display:flex;gap:20px;margin-top:60px}.trust-mark .icon{width:38px;height:38px}
.section-faq{display:grid;grid-template-columns:1fr 1fr;gap:8%;background:var(--paper)}.faq-list details{border-top:1px solid var(--line)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;padding:24px 0}.faq-list details>p{font-size:.9rem;padding-bottom:25px}.faq-list details[open] .icon{transform:rotate(45deg)}
.section-contact{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;background:var(--ink);color:var(--bg);padding-top:110px;padding-bottom:110px}.section-contact h2{font-size:clamp(44px,6.6vw,100px)}.section-contact>div>p:not(.eyebrow){font-size:.95rem;margin-top:30px;max-width:500px}.contact-action{align-self:center}.contact-action .hero-actions{margin-top:0;flex-direction:column}.contact-action .button{background:var(--bg);color:var(--ink);border-color:var(--bg);min-height:60px;font-size:.85rem}.contact-action .button-secondary{background:transparent;color:var(--bg)}.contact-action>p{font-size:.75rem;margin-top:18px}.contact-details{margin-top:45px;display:flex;flex-direction:column;gap:14px;font-size:.9rem;overflow-wrap:anywhere}.contact-details a{text-decoration:underline;text-underline-offset:5px}
.section-privacy{background:var(--paper);padding-top:35px;padding-bottom:35px}.section-privacy summary{display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;padding:15px 0}.section-privacy h2{font-family:var(--body);font-size:1rem;letter-spacing:0}.section-privacy details[open] summary .icon{transform:rotate(45deg)}.section-privacy details>p{max-width:850px;margin:24px 0;font-size:.85rem}.privacy-copy{max-width:900px}.privacy-copy article{margin:30px 0}.privacy-copy h3{font-size:1.5rem}.privacy-copy p{margin-top:14px;font-size:.85rem}summary::-webkit-details-marker{display:none}
footer{background:var(--ink);color:var(--bg);padding:45px var(--gutter) 0;overflow:hidden}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;align-items:start}.brand{font-family:var(--heading);font-size:1.8rem;letter-spacing:-.06em;line-height:1;display:inline-flex;gap:10px;align-items:baseline}.brand small{font-family:var(--body);font-size:.65rem;letter-spacing:0}.brand img{max-width:200px;max-height:70px}.footer-top>p{font-size:.8rem;max-width:260px}.footer-mail{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:.85rem;overflow-wrap:anywhere}.footer-bottom{display:flex;flex-wrap:wrap;gap:22px;font-size:.7rem;border-top:1px solid currentColor;padding-top:25px;margin-top:40px}.footer-bottom>span:first-child{margin-right:auto}.footer-bottom a{padding:5px 0}.footer-bottom a:hover{text-decoration:underline}footer .masthead{margin-top:45px;padding-bottom:15px}.floating-contact{display:none}.demo-page{min-height:100vh;display:grid;place-items:center;text-align:center;padding:30px}.demo-page h1{max-width:900px;margin:45px 0}
@media(min-width:1700px){.hero-copy{padding-left:6%;padding-right:6%}.hero-layout{min-height:640px}.hero-photo{min-height:640px}}
@media(max-width:1000px){.hero-layout{grid-template-columns:1fr 1fr}.hero-copy{padding:10px 0 10px 3%}.hero-copy h1{font-size:clamp(38px,5.4vw,58px)}.hero-actions .button{width:100%;flex:auto}.hero-description{font-size:.86rem}.hero-photo{min-height:620px}.section{padding-top:80px;padding-bottom:80px}.section-hero{padding-top:0;padding-bottom:22px}.section-trust{padding:0}.section-heading{gap:6%}.step{gap:16px}.products-grid{gap:22px}.product-heading{flex-direction:column;gap:5px}.price{padding:0}.section-trust>.photo{min-height:580px}.trust-copy{padding:60px 8%}.section-contact{gap:6%}.footer-top{grid-template-columns:1fr 1fr}.footer-mail{grid-column:2}.section-privacy{padding-top:25px;padding-bottom:25px}}
@media(max-width:700px){html{scroll-padding-top:90px}.header{padding:10px var(--gutter)}.brand-mark{width:40px;height:auto}.nav-contact{font-size:.66rem;padding:12px 17px;min-height:44px}.nav-contact .icon{width:16px;height:16px}.site-menu summary{width:44px;height:44px}.header-actions{gap:8px}.masthead{font-size:12vw;padding:12px 0 20px;gap:2vw}.masthead .brand-mark{width:9vw;height:auto}.section{padding:65px var(--gutter)}.section-hero{padding:0 var(--gutter) 20px}.hero-layout{display:flex;flex-direction:column;gap:28px}.hero-copy{padding:0;order:-1}.hero-copy h1{font-size:clamp(44px,11vw,calc(var(--title-size)*.85));max-width:580px}.hero-copy .eyebrow{font-size:.61rem;margin-bottom:20px}.hero-description{font-size:.92rem;margin-top:22px}.hero-actions{gap:10px;margin-top:24px}.hero-actions .button{min-height:52px;font-size:.78rem}.hero-note{font-size:.73rem;margin-top:18px}.hero-photo{min-height:0;aspect-ratio:1.05}.photo-placeholder{min-height:0}.hero-colophon{font-size:.56rem;gap:20px}.hero-colophon>span{max-width:180px}.hero-colophon a{gap:6px;text-align:right}.hero-colophon .icon{width:16px;height:16px}.section-heading{grid-template-columns:1fr;gap:25px;margin-bottom:35px}h2{font-size:clamp(42px,10.5vw,68px)}.eyebrow{font-size:.63rem;margin-bottom:20px}.section-heading>p{font-size:.88rem}.process-layout{grid-template-columns:1fr;gap:32px}.process-layout>.photo{aspect-ratio:1.1}.step{grid-template-columns:25px 1fr 24px;gap:12px;padding:25px 0}.step h3{font-size:1.5rem}.step p{font-size:.82rem}.statement-heading{margin-bottom:45px;text-align:left}.statement-heading h2{font-size:clamp(44px,11vw,70px)}.statement-heading>p{margin:25px 0 0}.benefits-grid{grid-template-columns:1fr;gap:30px}.benefits-grid article{gap:16px;padding-top:20px}.benefits-grid h3{font-size:1.7rem}.benefits-grid p{margin-top:15px}.products-grid{grid-template-columns:1fr;gap:45px}.product:nth-child(n){margin:0}.product:nth-child(n){width:100%;max-width:420px;margin-inline:auto}.product-heading{flex-direction:row;align-items:start;gap:15px}.product h3{font-size:1.8rem}.price{font-size:.84rem;white-space:nowrap;padding-top:8px}.product>p{max-width:none}.collection-photo{margin-top:45px}.collection-photo .photo{aspect-ratio:1.6}.collection-photo .shape-outline{width:35%}.product-note{font-size:.78rem}.section-audience{grid-template-columns:1fr;gap:35px}.audience-art{display:none}.audience-list>div{gap:18px;padding:24px 0}.audience-list h3{font-size:1.75rem}.section-trust{display:flex;flex-direction:column;padding:0}.section-trust>.photo{aspect-ratio:1;min-height:0}.trust-copy{padding:55px var(--gutter)}.trust-copy h2{font-size:clamp(44px,11vw,68px)}.trust-copy>p:not(.eyebrow){margin-top:25px;font-size:.9rem}.trust-mark{margin-top:35px}.section-faq{grid-template-columns:1fr;gap:35px}.section-contact{grid-template-columns:1fr;gap:40px}.section-contact h2{font-size:clamp(44px,11vw,70px)}.section-contact>div>p:not(.eyebrow){font-size:.9rem;margin-top:25px}.contact-details{margin-top:30px}.section-privacy{padding-top:20px;padding-bottom:20px}.footer-top{grid-template-columns:1fr;gap:25px}.footer-mail{grid-column:auto;justify-content:start}.footer-bottom{gap:14px 24px;margin-top:30px}.footer-bottom>span:first-child{width:100%}footer{padding-top:35px;padding-bottom:calc(80px + env(safe-area-inset-bottom))}footer .masthead{margin-top:30px}.floating-contact{display:flex;position:fixed;bottom:calc(12px + env(safe-area-inset-bottom));left:12px;right:12px;z-index:25;min-height:54px;box-shadow:0 3px 18px #0003;background:var(--green);color:var(--on-accent);border:1px solid var(--bg);font-size:.82rem}.photo-placeholder{padding:20px}.placeholder-caption{font-size:.6rem;left:14px;right:14px;bottom:14px}.shape-outline{height:77%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.button:hover{transform:none}}
@media(forced-colors:active){.button,.brand-mark,.site-menu summary{border:1px solid currentColor}.shape-outline{stroke:CanvasText}}
.admin-edit-link{position:fixed;bottom:22px;left:22px;z-index:100;background:var(--ink);color:var(--bg);padding:12px 18px;border:1px solid var(--bg);border-radius:30px;font:600 13px/1.4 Arial,sans-serif;text-decoration:none;box-shadow:0 4px 18px #0003}.admin-edit-link:focus-visible{outline:3px solid currentColor;outline-offset:3px}@media(max-width:700px){.admin-edit-link{bottom:90px;left:12px}}



/* Logos inherit the surrounding text color in light and dark sections. */
.brand-mark{position:relative}.brand-mark::before{content:"";position:absolute;inset:0;background:currentColor;mask:var(--logo-url) center/contain no-repeat;-webkit-mask:var(--logo-url) center/contain no-repeat}.brand-mark img{opacity:0}

/* November refresh: neutral canvas, readable typography and product cards. */
:root{--bg:#fff;--heading:Helvetica,Arial,sans-serif;--body:Helvetica,Arial,sans-serif;--title-size:68px;--title-weight:700;--line:color-mix(in srgb,var(--ink) 16%,transparent)}
h1,h2,h3{letter-spacing:-.045em;text-wrap:balance}
h1{font-size:clamp(40px,4.7vw,var(--title-size));line-height:1.06}
h2{font-size:clamp(36px,4.2vw,64px);line-height:1.12}
h3{letter-spacing:-.025em;line-height:1.25}
.section{padding-top:88px;padding-bottom:88px}
.section-hero{padding-top:0;padding-bottom:24px}
.masthead{justify-content:flex-start;gap:18px;font-size:clamp(42px,7.5vw,108px);letter-spacing:-.065em;line-height:1.15;padding:26px 0 32px}
.masthead .brand-mark{width:clamp(36px,6vw,80px);max-width:none}
.masthead-suffix{font-size:.32em;letter-spacing:.04em;align-self:center}
.hero-layout{gap:clamp(24px,4vw,64px);min-height:490px;align-items:center}
.hero-photo{min-height:490px;border-radius:20px;aspect-ratio:1.12}
.hero-copy{padding:16px 0}
.hero-description{font-size:1rem;line-height:1.65;margin-top:24px}
.hero-note{font-size:.75rem;line-height:1.6}
.button{border-radius:10px;font-weight:600;min-height:52px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.action-slot{flex:1 1 210px;min-width:0}
.action-slot .button{width:100%;height:100%}
.hero-actions .action-slot:first-child{flex-basis:100%}
.hero-actions .action-slot:not(:first-child) .button{justify-content:center}
.photo{border-radius:16px;background:color-mix(in srgb,var(--bg) 97%,var(--ink))}
.photo img{object-fit:contain}
.photo-placeholder{padding:28px}
.placeholder-caption{background:transparent}
.section-heading{grid-template-columns:1.4fr 1fr;gap:8%;margin-bottom:44px}
.section-heading>p{line-height:1.65}
.process-layout{gap:5%;grid-template-columns:1fr 1.15fr}
.process-layout>.photo{aspect-ratio:1;min-height:0}
.steps-list{border:0;display:grid;gap:14px}
.step{grid-template-columns:64px 1fr;gap:22px;padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--bg)}
.step-marker{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.step-marker .icon{width:26px;height:26px}
.step .number{font-size:2rem;font-weight:700;line-height:1;letter-spacing:-.04em;padding:0}
.step h3{font-size:clamp(21px,1.7vw,27px)}
.step p{font-size:.85rem;margin-top:10px;line-height:1.6}
.statement-heading{max-width:900px;margin-bottom:44px}
.statement-heading h2{font-size:clamp(36px,4.5vw,68px)}
.statement-heading>p{font-size:.95rem;max-width:620px;line-height:1.6}
.benefits-grid{gap:22px}
.benefits-grid article{display:flex;flex-direction:column;gap:28px;padding:28px;border:1px solid color-mix(in srgb,var(--bg) 25%,transparent);border-radius:18px;background:color-mix(in srgb,var(--bg) 7%,var(--ink))}
.benefit-marker{display:flex;align-items:center;justify-content:space-between;gap:20px}
.benefit-marker>.icon{box-sizing:content-box;width:25px;height:25px;padding:13px;border-radius:12px;background:color-mix(in srgb,var(--bg) 10%,transparent)}
.benefit-marker .number{font-size:.9rem;font-weight:700}
.benefits-grid h3{font-size:clamp(22px,1.9vw,29px)}
.benefits-grid p{font-size:.86rem;line-height:1.65;margin-top:16px}
.products-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.product:nth-child(n){display:flex;flex-direction:column;min-width:0;margin:0;padding:22px;border:1px solid var(--line);border-radius:20px;background:var(--bg);width:auto;max-width:none}
.product .photo,.product:nth-child(2) .photo{aspect-ratio:1;border-radius:12px;margin-top:18px}
.product-badge{align-self:flex-start;background:color-mix(in srgb,var(--ink) 7%,var(--bg));color:var(--ink);border-radius:50px;padding:7px 13px;font-size:.65rem;font-weight:700;letter-spacing:.03em}
.product-heading{flex-direction:column;gap:16px;margin-top:24px}
.product h3{font-size:clamp(22px,2vw,30px);line-height:1.2}
.product .price{font-size:clamp(30px,2.8vw,42px);font-weight:700;letter-spacing:-.045em;line-height:1.1;padding:0}
.product>p.product-badge{margin-top:0}
.product>p.product-description{font-size:.85rem;line-height:1.65;margin-top:18px;max-width:none}
.product-action{margin-top:auto;padding-top:28px}
.product-action .button{width:100%;font-size:.73rem}
.product-includes{display:flex;align-items:flex-start;gap:18px;margin-top:30px;padding:26px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--ink) 3%,var(--bg))}
.product-includes>.icon{margin-top:3px}
.product-includes h3{font-size:1.05rem}
.product-includes p{font-size:.85rem;line-height:1.65;margin-top:8px;max-width:900px}
.product-note{max-width:none;margin-top:20px;font-size:.76rem;line-height:1.6}
.collection-photo{margin-top:40px}
.audience-list h3{font-size:clamp(24px,2.5vw,36px)}
.section-trust{padding:0}
.section-trust>.photo{border-radius:0;min-height:500px}
.trust-copy h2{font-size:clamp(36px,3.8vw,58px)}
.section-contact h2{font-size:clamp(36px,4.2vw,64px)}
.contact-action .action-slot{flex:auto}
.contact-action .hero-actions .action-slot:first-child{flex-basis:auto}
.section-privacy{padding-top:28px;padding-bottom:28px}
footer .masthead{font-size:clamp(42px,7.5vw,108px)}
@media(min-width:1700px){.hero-photo{min-height:560px}.hero-layout{min-height:560px}}
@media(max-width:1000px){.hero-layout{grid-template-columns:1fr 1fr;gap:28px}.hero-copy h1{font-size:clamp(36px,4.8vw,52px)}.hero-photo{min-height:460px}.hero-description{font-size:.9rem}.products-grid{gap:16px}.product:nth-child(n){padding:16px}.product-action .button{padding-inline:14px}.process-layout{gap:24px}.step{padding:20px;grid-template-columns:45px 1fr;gap:16px}.benefits-grid{gap:16px}.benefits-grid article{padding:22px}.benefits-grid h3{font-size:22px}}
@media(max-width:700px){
 .section{padding-top:60px;padding-bottom:60px}.section-hero{padding-top:0;padding-bottom:20px}
 .masthead{font-size:clamp(36px,9vw,63px);gap:12px;padding:24px 0}.masthead .brand-mark{width:8vw}.masthead-suffix{font-size:.3em}
 .hero-layout{display:flex;gap:28px;min-height:0}.hero-copy{padding:0;order:-1}.hero-copy h1{font-size:clamp(38px,9.6vw,58px)}
 .hero-description{font-size:.94rem;line-height:1.65}.hero-photo{width:100%;min-height:0;aspect-ratio:1.1}.hero-visual{width:100%}
 .hero-actions .action-slot{flex-basis:100%}.hero-actions .button{font-size:.8rem}
 .section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:32px}h2,.statement-heading h2{font-size:clamp(32px,8vw,48px)}
 .process-layout{grid-template-columns:1fr;gap:28px}.step{padding:22px 18px;grid-template-columns:44px 1fr;gap:18px}.step h3{font-size:22px}.step .number{font-size:1.8rem}.step p{font-size:.85rem}
 .benefits-grid{grid-template-columns:1fr;gap:16px}.benefits-grid article{padding:26px;gap:22px}.benefits-grid h3{font-size:24px}
 .products-grid{grid-template-columns:1fr;gap:22px}.product:nth-child(n){padding:24px;max-width:460px;width:100%;margin-inline:auto}.product .photo{aspect-ratio:1.15}
 .product-heading{flex-direction:column;gap:16px}.product h3{font-size:26px}.product .price{font-size:38px}.product-action .button{font-size:.8rem}.product-includes{padding:22px 18px;gap:14px}
 .section-trust{padding:0}.section-trust>.photo{min-height:0}.trust-copy h2,.section-contact h2{font-size:clamp(32px,8vw,48px)}
 .section-privacy{padding-top:20px;padding-bottom:20px}footer .masthead{font-size:9vw}
}

/* A complete public layout while photos are still awaiting upload. */
.hero-visual:empty{display:none}
.without-photo .hero-layout,.without-photo .process-layout{grid-template-columns:minmax(0,1fr);min-height:0}
.without-photo .hero-copy{max-width:960px;padding:36px 0 48px}
.without-photo .hero-copy h1{max-width:900px}
.without-photo .hero-actions{max-width:580px}
.without-photo .steps-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.without-photo .step{grid-template-columns:minmax(0,1fr);align-content:start}
.without-photo .step-marker{flex-direction:row;align-items:center;justify-content:space-between}
.section-trust.without-photo{grid-template-columns:minmax(0,1fr);border-block:1px solid var(--line)}
.without-photo .trust-copy{padding:72px var(--gutter);max-width:1000px}
.without-photo .trust-copy>p:not(.eyebrow){max-width:750px}
.hero-copy,.step>div,.trust-copy,.section-heading>div,.contact-action,.section-contact>div{min-width:0}
h1,h2,h3,.button{overflow-wrap:anywhere}
@media(max-width:1000px){.without-photo .steps-list{grid-template-columns:minmax(0,1fr)}.without-photo .step{grid-template-columns:64px minmax(0,1fr)}.without-photo .step-marker{flex-direction:column;align-items:flex-start;justify-content:flex-start}}
@media(max-width:700px){
 .without-photo .hero-copy{padding:18px 0 24px}
 .without-photo .hero-layout{gap:0}
 .without-photo .step{grid-template-columns:44px minmax(0,1fr)}
 .without-photo .trust-copy{padding:55px var(--gutter)}
 .section-contact .contact-action .hero-actions{gap:12px}
 .header-actions{min-width:0}.nav-contact{gap:10px}
 .site-menu summary,.footer-bottom a,.hero-colophon a{min-height:44px}
 .hero-colophon{align-items:center}
}

/* Legal copy stays readable and its source links are distinguishable on phones. */
.section-privacy h1{font-size:clamp(36px,5vw,64px);line-height:1.1}
.privacy-copy a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.privacy-copy p{line-height:1.65}
