@font-face{font-family:'Sunset Demi';src:url('assets/fonts/sunset-demibold.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:'Sunset Regular';src:url('assets/fonts/sunset-regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
:root{--ink:#173b39;--paper:#fffdf9;--orange:#f66630;--cream:#f8f0e4;--blue:#d9ecf6;--line:#173b392b;font-family:'DM Sans',Georgia,serif;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:90px}*{box-sizing:border-box}body{margin:0}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #f66630;outline-offset:5px}p{line-height:1.6}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Sunset Demi',Arial,sans-serif}h1{font-size:clamp(3.8rem,6.4vw,6.9rem);letter-spacing:-.025em;line-height:.98;font-weight:400;margin-bottom:28px}h2{font-size:clamp(2.7rem,4.5vw,4.9rem);letter-spacing:-.025em;line-height:1.04;font-weight:400;margin-bottom:26px}h3{font-size:1.45rem;letter-spacing:-.025em}em{font-style:normal;color:var(--orange)}.eyebrow{font-size:.75rem;letter-spacing:.12em;font-weight:700;margin-bottom:22px}.intro{font-size:1.15rem;line-height:1.6}.button{display:inline-flex;align-items:center;justify-content:center;gap:15px;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:32px;padding:16px 24px;min-height:50px;font-size:.9rem;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px);background:#295955}.button.outline{background:transparent;color:var(--ink)}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button.compact{min-height:44px;padding:11px 22px}.text-link{display:inline-block;border:0;border-bottom:1px solid var(--ink);padding:5px 0;background:none;font-size:.9rem;font-weight:700;color:var(--ink)}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.centered{justify-content:center}.skip{position:absolute;top:-100px;z-index:10;background:white;padding:20px}.skip:focus{top:0}.announcement{background:var(--ink);color:white;text-align:center;padding:9px 15px;font-size:.7rem;letter-spacing:.12em}.announcement a{letter-spacing:0;margin-left:20px;text-decoration:underline}.header{display:flex;justify-content:space-between;align-items:center;min-height:89px;padding:10px 4.5%;background:#fffdf9f5;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header img{width:174px;height:auto;mix-blend-mode:multiply}.header nav{display:flex;align-items:center;gap:34px;font-size:.9rem;font-weight:600}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:44% 56%;min-height:650px;max-width:1800px;margin:auto;align-items:center;overflow:hidden}.hero-copy{padding:60px 0 55px 10.3%;position:relative;z-index:2}.hero h1 span{color:var(--orange)}.hero-art{position:relative;padding:30px 0;align-self:stretch;display:flex;align-items:center}.hero-art>img{width:115%;max-width:none;object-fit:contain;margin-left:-7%;mix-blend-mode:multiply}.hero-caption{position:absolute;bottom:30px;right:8%;font-size:.7rem;font-weight:700;letter-spacing:.12em}.hero-caption span{margin-left:25px}.scroll-cue{font-size:.7rem;letter-spacing:.1em;display:flex;align-items:center;gap:20px;margin-top:68px}.scroll-cue span{font-size:24px}.ribbon{background:var(--orange);padding:22px 0;display:flex;gap:42px;align-items:center;justify-content:center;overflow:hidden;white-space:nowrap;color:#163b39;font-family:'Sunset Demi',sans-serif;font-weight:400;font-size:1.8rem;letter-spacing:-.025em}.ribbon b{font-size:2rem;font-weight:400}.section{padding:110px 6%;max-width:1700px;margin:auto}.section-heading{text-align:center;margin-bottom:58px}.roots-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.roots-art{position:relative;background:#f7f1e7;border-radius:48% 48% 12px 12px;overflow:hidden;min-height:470px;display:flex;align-items:center}.roots-art img{width:100%;mix-blend-mode:multiply;transform:scale(1.05)}.note-tag{position:absolute;bottom:30px;left:8%;background:var(--paper);padding:12px 18px;border:1px solid var(--ink);border-radius:2px;transform:rotate(-4deg);font-weight:600;font-size:.9rem}.large-copy{font-size:1.5rem;line-height:1.5;letter-spacing:-.025em}.roots-copy>p{max-width:540px}.principles{margin:30px 0}.principles>div{border-top:1px solid var(--line);padding:20px 0 0 38px;position:relative}.principles span{position:absolute;left:0;top:25px;font-size:.75rem}.principles h3{margin-bottom:8px;font-size:1.2rem}.principles p{font-size:.95rem}.flavors{background:#f8f3ec;max-width:none}.split-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:45px}.split-heading h2{margin-bottom:0}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.product-card{min-width:0}.product-visual{position:relative;overflow:hidden;min-height:320px;background:var(--product-color);border-radius:14px;display:flex;align-items:center;justify-content:center}.product-visual img{height:360px;width:100%;object-fit:contain;mix-blend-mode:multiply;transform:rotate(8deg);transition:transform .3s}.product-card:hover img{transform:rotate(0deg) scale(1.03)}.type-product{padding:40px 25px;text-align:center;min-height:360px;display:flex;flex-direction:column;justify-content:center;align-items:center}.type-product strong{font-family:'Sunset Demi',sans-serif;font-size:clamp(2.4rem,4vw,4.5rem);font-weight:400;letter-spacing:-.025em;line-height:1.02}.type-product span{font-size:.8rem;margin-top:23px}.type-product .mini-logo{font-family:Georgia,serif;font-size:1.6rem;margin:0 0 25px}.product-number{position:absolute;top:20px;left:20px;font-size:.75rem}.product-info{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:22px 0}.product-info h3{margin:0 0 5px}.product-info p{margin:0;font-size:.9rem}.round-link{display:flex;justify-content:center;align-items:center;border:1px solid var(--ink);border-radius:50%;width:45px;height:45px;font-size:22px;flex-shrink:0}.collection-note{font-size:.9rem;text-align:center;margin:30px 0 0}.ritual{display:grid;grid-template-columns:1fr 1fr;background:var(--blue);align-items:center}.ritual-copy{padding:95px 12%}.ritual-copy h2{font-size:clamp(3rem,5.5vw,6rem)}.ritual-copy p{font-size:1.05rem}.ritual-copy .button{margin-top:15px}.ritual-art{overflow:hidden}.ritual-art img{width:100%;mix-blend-mode:multiply}.stockists{text-align:center}.stockists h2{font-size:clamp(3.4rem,6vw,6.5rem)}.networks{display:flex;flex-wrap:wrap;justify-content:center;gap:25px 55px;margin:45px 0;font-family:'Sunset Demi',sans-serif;font-size:1.6rem;font-weight:700;letter-spacing:-.035em}.small-note{font-size:.8rem;opacity:.8;margin:22px 0 0}.partner{background:var(--ink);color:var(--paper);padding:65px 8%;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%}.partner h2{margin:0}.partner>div>p:not(.eyebrow){font-size:1.15rem;max-width:470px}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:10%}.questions details{border-bottom:1px solid var(--line)}.questions summary{cursor:pointer;padding:24px 35px 24px 0;font-size:1.1rem;font-weight:600;list-style:none;position:relative}.questions summary:after{content:'+';position:absolute;right:5px}.questions details[open] summary:after{content:'−'}.questions details p{max-width:620px}.questions details .text-link{margin-bottom:22px}footer{background:#f4eddf;padding:50px 6% 25px}.footer-top{display:flex;justify-content:space-between;gap:25px;align-items:flex-start;padding-bottom:45px}.footer-top img{mix-blend-mode:multiply;height:auto}.footer-top p{font-size:1.2rem}.footer-top>div{display:flex;flex-direction:column;gap:13px}.footer-top button{padding:0;border:0;background:none;text-align:left;color:var(--ink)}.footer-bottom{display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding-top:23px;font-size:.75rem}.footer-bottom a{font-weight:700}dialog{border:0;border-radius:20px;padding:45px;max-width:520px;width:calc(100% - 36px);color:var(--ink);background:var(--paper)}dialog::backdrop{background:#06272599;backdrop-filter:blur(4px)}dialog h2{font-size:2.5rem}dialog .contact-status{font-size:.9rem;background:#f5ead8;padding:15px;border-radius:10px}.dialog-close{position:absolute;top:12px;right:16px;border:0;background:none;font-size:30px;color:var(--ink)}.page-intro{padding:80px 6% 50px;max-width:1450px;margin:auto}.page-intro h1{max-width:850px}.page-intro p{max-width:640px}.catalog{padding-top:20px}.product-details{padding:35px 0;border-top:1px solid var(--line);scroll-margin-top:110px}.product-details h2{font-size:2.5rem}.product-details-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:8%;align-items:center}.product-details-grid .product-visual{max-width:420px}.product-details p{max-width:600px}.ingredients{padding:15px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ingredients span{display:block;font-size:.75rem;letter-spacing:.1em;margin-bottom:5px}.locator{padding:0 6% 80px;max-width:1450px;margin:auto}.filters{display:flex;gap:20px;padding:25px;background:#f3f1ea;border-radius:14px;flex-wrap:wrap}.filters label{flex:1;min-width:180px;font-size:.85rem;font-weight:600}.filters input,.filters select{display:block;width:100%;margin-top:8px;padding:13px;border:1px solid #173b3955;border-radius:7px;background:white;color:var(--ink);font-size:1rem}.empty-state{padding:50px 30px;text-align:center;border:1px dashed #173b3955;margin-top:25px;border-radius:14px}.empty-state p{max-width:590px;margin:0 auto 20px}.store-row{border-bottom:1px solid var(--line);padding:25px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}.store-row h3{margin-bottom:8px}.store-row p{margin:0}.preview-label{display:inline-block;border:1px solid var(--line);font-size:.75rem;padding:8px 14px;border-radius:30px;margin-bottom:20px}
@media(min-width:1600px){.hero-art>img{width:105%;margin-left:-4%}}
@media(max-width:1000px){.header nav{gap:20px}.hero{min-height:560px}.hero-copy{padding-top:40px;padding-bottom:35px}h1{font-size:4.5rem}.hero .actions{gap:15px}.hero .button{font-size:.8rem;padding:14px 17px}.scroll-cue{margin-top:40px}.section{padding:80px 5%}.roots-layout{gap:5%}.roots-art{min-height:380px}.product-visual,.type-product{min-height:290px}.product-visual img{height:290px}.type-product strong{font-size:3.1rem}.ritual-copy{padding:65px 10%}.ritual-art img{min-height:450px;object-fit:cover}.faq{gap:6%}}
@media(max-width:700px){.announcement{font-size:.62rem;padding:9px 8px;letter-spacing:.06em}.announcement a{margin-left:8px}.header{min-height:73px;padding:8px 6%}.header img{width:145px}.menu-toggle{display:flex;gap:14px;align-items:center;border:0;background:none;color:var(--ink);font-size:.9rem;padding:12px 0}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:25px 6%;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:8px}.header nav.open{display:flex}.header nav a{padding:12px 0}.header nav .button{align-self:flex-start}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:38px 6% 0;width:100%}.hero h1{font-size:clamp(3.25rem,12vw,5.1rem);margin-bottom:20px}.eyebrow{font-size:.68rem;margin-bottom:18px}.intro{font-size:1rem}.hero .actions{gap:22px}.hero .button{font-size:.85rem}.hero .text-link{font-size:.85rem}.hero-art{min-height:300px;width:100%;padding:0 0 20px}.hero-art>img{width:100%;margin:0}.hero-caption{bottom:14px;right:6%;font-size:.62rem}.scroll-cue{display:none}.ribbon{font-size:1.2rem;padding:17px 0;gap:22px}.ribbon b{font-size:1.3rem}.section{padding:65px 6%}.section-heading{text-align:left;margin-bottom:28px}h2{font-size:2.8rem}.roots-layout{grid-template-columns:1fr;gap:35px}.roots-art{min-height:0;border-radius:42% 42% 12px 12px}.roots-art img{min-height:320px;object-fit:cover}.large-copy{font-size:1.3rem}.split-heading{align-items:flex-start;flex-direction:column;margin-bottom:30px}.split-heading .button{padding:12px 20px}.product-grid{grid-template-columns:1fr;gap:28px}.product-visual{min-height:320px}.product-visual img{height:350px}.type-product{min-height:310px}.type-product strong{font-size:4rem}.product-info{padding:17px 0 0}.product-info h3{font-size:1.5rem}.collection-note{text-align:left}.ritual{grid-template-columns:1fr}.ritual-copy{padding:60px 6% 20px}.ritual-copy h2{font-size:3.6rem}.ritual-art img{min-height:0}.stockists h2{font-size:3.5rem}.networks{font-size:1.4rem;gap:20px 30px;margin:35px 0}.partner{grid-template-columns:1fr;gap:25px;padding:55px 6%}.partner h2{font-size:2.8rem}.partner>div>p:not(.eyebrow){font-size:1rem}.faq{grid-template-columns:1fr;gap:15px}.questions summary{font-size:1rem}.footer-top{flex-wrap:wrap;gap:30px}.footer-top img{width:170px}.footer-top p{font-size:1rem}.footer-top>div{flex-direction:row;flex-wrap:wrap;gap:22px;font-size:.9rem}.footer-bottom{flex-direction:column;font-size:.7rem;gap:12px}dialog{padding:40px 25px 28px}.page-intro{padding:50px 6% 30px}.page-intro h1{font-size:3.4rem}.catalog{padding-top:0}.product-details-grid{grid-template-columns:1fr;gap:30px}.product-details-grid .product-visual{max-width:none}.product-details h2{font-size:2.8rem}.filters{padding:20px;gap:18px}.empty-state{padding:35px 20px}.store-row{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Brand direction supplied by Vincent: Sunset / Boucherie, clean photography. */
h1,h2{font-family:'Sunset Demi',Arial,sans-serif;font-weight:400;letter-spacing:-.025em;line-height:1.02}
h3,.intro,.large-copy,.hero h1+p{font-family:'Sunset Regular',Arial,sans-serif;font-weight:400}
body{font-size:18px}p{line-height:1.65}
.header nav,.button,.text-link,.eyebrow,.announcement,.scroll-cue,.hero-caption,.footer-bottom,.preview-label,.filters label,.questions summary{font-family:'Sunset Regular',Arial,sans-serif;font-weight:400}
.eyebrow{font-size:.85rem;letter-spacing:.09em}.header nav{font-size:1rem}.button,.text-link{font-size:1rem}
.hero{grid-template-columns:49% 51%;min-height:630px}.hero-copy{padding-right:3%}.hero h1{font-size:clamp(3.5rem,5.9vw,6.2rem)}
.hero-art{margin:35px 8% 35px 0;border-radius:14px;background:#fbf2e9;padding:0;align-self:center;aspect-ratio:1}
.packshot{position:relative;width:100%;aspect-ratio:1;overflow:hidden;isolation:isolate}
.packshot img{position:absolute;top:0;left:calc(var(--slot)*-100%);width:300%;height:100%;max-width:none;object-fit:fill;transform:none;mix-blend-mode:multiply}
.hero-packshot{border-radius:14px}.hero-caption{bottom:15px;right:5%;font-size:.7rem}
.product-visual{min-height:0;border-radius:12px}.product-visual .packshot{width:100%}.product-visual img{height:100%;transform:none}.product-card:hover img{transform:none}
.product-info h3{font-family:'Sunset Regular',Arial,sans-serif;font-size:1.65rem}.product-info p{font-size:1rem}.product-info{align-items:flex-start}
.ribbons{font-family:'Sunset Demi',Arial,sans-serif}.ribbon{font-weight:400}
.roots-art{border-radius:12px;min-height:0;background:#e8f0f2}.roots-art img{transform:none;mix-blend-mode:normal;aspect-ratio:1;object-fit:cover;object-position:35% 50%}
.ritual-art img{mix-blend-mode:normal;width:100%;height:100%;object-fit:cover}.ritual-art{align-self:stretch}.ritual{background:#e9f2f7}.ritual-copy p{font-size:1.15rem}
.roots-copy>p,.principles p,.questions p,.partner p{font-size:1.1rem}.collection-note{font-size:1rem}.small-note{font-size:.9rem}.networks{font-family:'Sunset Demi',Arial,sans-serif;font-weight:400}
@media(max-width:1000px){.hero{min-height:550px}.hero h1{font-size:4rem}.hero-art{margin-right:5%}.hero .button{font-size:.95rem}.hero .actions{gap:15px}}
@media(max-width:700px){.hero{display:flex;min-height:0}.hero h1{font-size:clamp(3rem,11.5vw,4.5rem)}.hero-copy{padding:35px 6% 0}.hero-art{width:88%;margin:26px 6%;min-height:0;align-self:auto}.hero-art>img{width:300%}.hero .button,.hero .text-link{font-size:.9rem}.hero-caption{font-size:.62rem;bottom:10px}.header nav{font-size:1rem}.product-visual{min-height:0}.product-visual img{height:100%}.eyebrow{font-size:.76rem}.intro{font-size:1.15rem}.roots-art img{min-height:0}.ritual-art{height:auto}.ritual-art img{height:auto}.product-info h3{font-size:1.65rem}.questions summary{font-size:1.1rem}.button,.text-link{font-size:1rem}}

/* Legibility pass: clear hierarchy and looser tracking. */
body{font-size:18px;letter-spacing:.022em}
p{line-height:1.75;letter-spacing:.025em;font-weight:400}
h1,h2{letter-spacing:0}
h3,.intro,.large-copy{letter-spacing:.025em;line-height:1.4;font-weight:400}
h3{font-size:1.75rem}.intro{font-size:1.4rem}.large-copy{font-size:1.75rem}
.roots-copy>p.large-copy{font-size:1.75rem}.roots-copy>p:not(.large-copy),.principles p,.questions p,.partner p{font-size:1.1rem}
.principles h3{font-size:1.45rem;letter-spacing:.025em}.product-info h3{font-size:1.8rem}.product-info p{font-size:1.05rem}
.eyebrow{letter-spacing:.13em}.button,.text-link,.header nav{letter-spacing:.025em}
.questions summary{font-size:1.3rem;letter-spacing:.02em}.ritual-copy p{font-size:1.1rem}
@media(max-width:700px){body{font-size:17px}.intro{font-size:1.28rem}.large-copy,.roots-copy>p.large-copy{font-size:1.5rem}.principles h3{font-size:1.35rem}.roots-copy>p:not(.large-copy),.principles p,.questions p,.partner p{font-size:1.05rem}.questions summary{font-size:1.2rem}.product-info h3{font-size:1.65rem}}
.ritual-art{position:relative}.ritual-art video{width:100%;height:100%;object-fit:cover;display:none}
.ritual.has-scroll-video{min-height:240vh;align-items:start;position:relative}
.ritual.has-scroll-video .ritual-copy,.ritual.has-scroll-video .ritual-art{position:sticky;top:90px;height:calc(100vh - 90px)}
.ritual.has-scroll-video .ritual-copy{display:flex;flex-direction:column;justify-content:center;padding-top:35px;padding-bottom:35px}
.ritual.has-scroll-video .ritual-copy .button{align-self:flex-start}
.ritual.has-scroll-video .ritual-art>img{display:none}.ritual.has-scroll-video .ritual-art video{display:block}
@media(max-width:700px){.ritual.has-scroll-video{display:block;padding-top:35px}.ritual.has-scroll-video .ritual-copy{position:relative;top:auto;height:auto;padding-bottom:35px}.ritual.has-scroll-video .ritual-art{top:73px;height:calc(100svh - 73px)}.ritual.has-scroll-video .ritual-art video{object-position:center}}
.hero-art{display:block;aspect-ratio:auto}.hero-caption{position:static;display:flex;justify-content:space-between;padding:12px 20px 16px;letter-spacing:.07em}.hero-caption span{margin-left:15px}
/* Official retailer marks, kept in their supplied colours. */
.networks{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:28px 38px;margin:45px auto;max-width:1000px}
.retailer-logo{width:140px;height:140px;display:flex;align-items:center;justify-content:center;flex:0 0 140px;overflow:hidden;border-radius:12px;background:#fff}
.retailer-logo img{width:100%;height:100%;object-fit:contain}
.retailer-tiara-dewata,.retailer-m-mart{background:transparent}
.retailer-circle-k{background:#e51c2a;padding:16px}
@media(max-width:700px){.networks{gap:20px;margin:32px auto;max-width:420px}.retailer-logo{width:100px;height:100px;flex-basis:100px;border-radius:9px}.retailer-circle-k{padding:10px}}

/* Hand-drawn marker strokes, repeated naturally across wrapped lines. */
.highlight{color:inherit;background:transparent;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 40' preserveAspectRatio='none'%3E%3Cpath fill='%23e5ec9c' d='M3 9L69 6 144 8 227 4 296 7 299 29 239 33 165 30 91 34 1 31Z'/%3E%3Cpath fill='%23e5ec9c' opacity='.4' d='M1 13L294 2 298 35 5 38Z'/%3E%3C/svg%3E");background-size:100% 100%;padding:.04em .14em;margin:0 -.03em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.highlight-peach{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 40' preserveAspectRatio='none'%3E%3Cpath fill='%23ffd0ad' d='M2 8L73 5 155 8 299 3 297 32 204 35 105 31 1 35Z'/%3E%3C/svg%3E")}
.highlight-blue{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 40' preserveAspectRatio='none'%3E%3Cpath fill='%23c8e6ef' d='M2 8L73 5 155 8 299 3 297 32 204 35 105 31 1 35Z'/%3E%3C/svg%3E")}
.ribbon{position:relative;display:block;overflow:hidden;padding:22px 0}
.ribbon-track{display:flex;width:max-content;animation:roots-marquee 38s linear infinite}
.ribbon-group{display:flex;flex-shrink:0;align-items:center;gap:40px;padding-right:40px;white-space:nowrap}
.ribbon-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:1px solid currentColor;border-radius:50%;background:var(--ink);color:var(--paper);font:16px Arial,sans-serif;display:grid;place-items:center}

@keyframes roots-marquee{to{transform:translateX(-50%)}}
@media(max-width:700px){.ribbon{padding:18px 0}.ribbon-group{gap:25px;padding-right:25px}}
@media(prefers-reduced-motion:reduce){.ribbon-track{animation:none}.ribbon-toggle{display:none}}

/* One photographic canvas with live HTML typography. */
.hero{display:block;position:relative;isolation:isolate;max-width:none;min-height:calc(100svh - 120px);background:#dcebf0;overflow:hidden}
.hero-background{position:absolute;inset:0;z-index:-2}.hero-background img{width:100%;height:100%;object-fit:cover;object-position:62% 50%}
.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(233,244,247,.97),rgba(233,244,247,.8) 25%,rgba(233,244,247,.12) 62%,transparent)}
.hero-copy{padding:clamp(65px,12vh,150px) 7%;max-width:850px}.hero h1{font-size:clamp(4.2rem,7.5vw,8.5rem)}.hero .intro{max-width:550px}.hero .scroll-cue{margin-top:50px}
.process{position:relative;height:280svh;background:#ac5719;color:#fffdf4}
.process-stage{position:sticky;top:89px;height:calc(100svh - 89px);overflow:hidden;isolation:isolate}
.process-media{position:absolute;inset:0;z-index:-2}.process-media img,.process-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% center}.process-media video{opacity:0}.video-ready .process-media video{opacity:1}.video-ready .process-poster{opacity:0}
.process-stage:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(37,23,6,.64),rgba(51,29,8,.25) 50%,transparent)}
.process-copy{position:absolute;left:7%;top:50%;transform:translateY(-50%);max-width:650px;padding-right:20px}.process-copy h2{font-size:clamp(3.5rem,7vw,7.5rem);line-height:1.02}.process-copy p:not(.eyebrow){font-size:1.2rem;line-height:1.7}.process-copy .button{margin-top:15px}
.process-bottom{position:absolute;bottom:32px;left:7%;right:7%;display:flex;justify-content:space-between;gap:20px;font-family:'Sunset Regular',sans-serif;font-size:.72rem;letter-spacing:.12em}.process-progress{position:absolute;bottom:0;left:0;right:0;height:4px;background:#fff2d5;transform:scaleX(0);transform-origin:left}
@media(max-width:700px){.hero{display:block;min-height:calc(100svh - 105px)}.hero-copy{padding:45px 6% 65px;max-width:none}.hero h1{font-size:clamp(3.1rem,12vw,4.9rem)}.hero .intro{font-size:1.15rem;max-width:310px}.hero-background img{object-position:60% center}.hero:after{background:linear-gradient(180deg,rgba(233,244,247,.96),rgba(233,244,247,.7) 40%,rgba(233,244,247,.08) 75%)}.hero .actions{gap:18px}.process-stage{top:73px;height:calc(100svh - 73px)}.process-copy{left:6%;top:45%;max-width:94%}.process-copy h2{font-size:clamp(3rem,12vw,5rem)}.process-copy p:not(.eyebrow){font-size:1.05rem}.process-bottom{left:6%;right:6%;font-size:.6rem}.process-bottom span:last-child{max-width:120px;text-align:right}}
@media(prefers-reduced-motion:reduce){.process{height:100svh}.process-bottom>span:first-child{visibility:hidden}}
.hero-copy{max-width:none;width:80%;padding:70px 7%}.hero h1{font-size:clamp(4rem,6.5vw,7rem)}@media(max-width:700px){.hero-copy{width:100%;padding:45px 6% 65px}.hero h1{font-size:clamp(3.1rem,12vw,4.9rem)}}

/* Product lineup hero and two photographic roots stories. */
.hero{background:var(--paper);min-height:calc(100svh - 120px)}.hero-background img{object-fit:cover;object-position:center}.hero:after{background:linear-gradient(90deg,#fffdf930,transparent 48%)}
.hero-copy{width:53%;padding:clamp(70px,12vh,130px) 3% clamp(60px,10vh,110px) 6%}.hero h1{font-size:clamp(3rem,5.4vw,6.1rem)}.hero .intro{font-size:1.25rem}.hero .scroll-cue{margin-top:42px}
.roots-layout{grid-template-columns:1.1fr 1fr;gap:7%}.roots-photo-pair{display:grid;gap:26px}.roots-photo-pair figure{margin:0}.roots-photo-pair figure:last-child{width:78%;margin-left:auto}.roots-photo-pair img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.roots-photo-pair figcaption{font-family:'Sunset Regular',sans-serif;font-size:.85rem;margin-top:10px;letter-spacing:.035em}.roots-copy{align-self:center}
@media(max-width:1000px) and (min-width:701px){.hero-copy{width:55%;padding-left:5%}.hero h1{font-size:3.6rem}.hero .actions{gap:12px}.hero .button,.hero .text-link{font-size:.8rem}.hero-background img{object-fit:contain}}
@media(max-width:700px){.hero{min-height:850px;min-height:max(850px,100svh);}.hero-copy{width:100%;padding:40px 6% 0}.hero h1{font-size:clamp(2.7rem,10.5vw,4rem)}.hero .intro{font-size:1.12rem}.hero-background{top:auto;bottom:0;height:440px;overflow:hidden}.hero-background img{width:200%;max-width:none;height:100%;object-fit:cover;object-position:center;transform:translateX(-50%)}.hero:after{background:linear-gradient(180deg,var(--paper) 0%,var(--paper) 42%,transparent 64%)}.roots-layout{grid-template-columns:1fr;gap:35px}.roots-photo-pair{gap:22px}.roots-photo-pair figure:last-child{width:86%}.roots-photo-pair figcaption{font-size:.8rem}}
@media(max-width:700px){.hero-background{-webkit-mask-image:linear-gradient(to bottom,transparent,#000 16%);mask-image:linear-gradient(to bottom,transparent,#000 16%)}}
