:root {
  --black: #090909;
  --ink: #151515;
  --graphite: #252525;
  --ash: #77736f;
  --line: rgba(255,255,255,.18);
  --off-white: #f4f4f2;
  --white: #fff;
  --wine: #6e1f2d;
  --wine-deep: #4c111c;
  --wine-light: #d7838c;
  --red: var(--wine);
  --red-dark: var(--wine-deep);
  --display: "Fraunces", Georgia, serif;
  --sans: "Manrope", Arial, sans-serif;
  --max: 1240px;
  --pad: max(24px, calc((100vw - var(--max)) / 2));
  --ease: cubic-bezier(.16,1,.3,1);
  --z-nav: 30;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--black);color:var(--white);font-family:var(--sans);font-size:16px;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}
section[id]{scroll-margin-top:92px}
img,video{display:block;width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{cursor:pointer}
h1,h2,h3{font-family:var(--display);font-optical-sizing:auto;font-weight:600;line-height:1.04;letter-spacing:-.025em;text-wrap:balance}
p{text-wrap:pretty}
em{font-weight:500;color:var(--wine)}
::selection{background:var(--red);color:var(--white)}
:focus-visible{outline:2px solid var(--wine-light);outline-offset:4px}
.skip-link{position:fixed;top:-60px;left:20px;z-index:50;background:var(--white);color:var(--black);padding:12px 18px}.skip-link:focus{top:12px}

/* Transparent official mark */
.brand-crop{position:relative;display:block;width:150px;height:56px;overflow:hidden}
.brand-crop img{position:absolute;left:-4px;top:-25px;width:157px;height:auto;max-width:none}

/* Compact navigation */
.site-nav{position:fixed;z-index:var(--z-nav);top:18px;left:50%;width:min(1080px,calc(100% - 40px));height:68px;transform:translateX(-50%);display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:0 10px 0 18px;background:rgba(9,9,9,.86);color:var(--white);border-bottom:1px solid rgba(255,255,255,.22);backdrop-filter:blur(14px);transition:background .35s var(--ease),top .35s var(--ease)}
.site-nav.scrolled{top:8px;background:rgba(9,9,9,.96)}
.site-nav__brand{height:60px;display:flex;align-items:center}
.site-nav__links{justify-self:center;display:flex;gap:34px}
.site-nav__links a{position:relative;padding:23px 0 20px;font-size:.75rem;font-weight:500;letter-spacing:.08em}
.site-nav__links a::after{content:"";position:absolute;left:0;right:100%;bottom:17px;height:1px;background:var(--wine-light);transition:right .35s var(--ease)}
.site-nav__links a:hover::after{right:0}
.site-nav__contact{min-width:124px;height:50px;display:grid;place-items:center;background:linear-gradient(118deg,#84283a,#551622 58%,#171112);box-shadow:0 5px 7px rgba(22,0,5,.38);font-size:.8rem;font-weight:650;letter-spacing:.05em;transition:background .25s,transform .25s var(--ease),box-shadow .25s}
.site-nav__contact:hover{background:linear-gradient(118deg,#963248,#681b2c 58%,#171112);box-shadow:0 7px 8px rgba(22,0,5,.48);transform:translateY(-1px)}
.site-nav__toggle{display:none;width:48px;height:48px;border:0;background:var(--red);align-items:center;justify-content:center;flex-direction:column;gap:7px}.site-nav__toggle span{width:20px;height:1px;background:var(--white);transition:transform .3s}.site-nav__toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.site-nav__toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.site-nav__mobile{position:absolute;top:74px;right:0;width:250px;padding:12px 22px 18px;background:rgba(9,9,9,.98);border-top:2px solid var(--red)}.site-nav__mobile a{display:block;padding:14px 0;border-bottom:1px solid var(--line);font-size:.86rem}

/* Cinematic hero */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;isolation:isolate;background:var(--black);overflow:hidden}
.hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}
.hero__shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(0,0,0,.84) 0%,rgba(0,0,0,.62) 36%,rgba(0,0,0,.2) 72%),linear-gradient(0deg,rgba(0,0,0,.8) 0%,transparent 48%,rgba(0,0,0,.32) 100%)}
.hero__content{width:min(790px,calc(100% - 48px));margin-left:var(--pad);padding:160px 0 150px}
.hero__overline{margin-bottom:24px;color:#ddd8d3;font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.hero h1{font-size:clamp(3.5rem,7.2vw,6rem);color:var(--white)}
.hero h1 em{display:inline-block;font-style:italic;color:var(--white)}
.hero__intro{max-width:59ch;margin-top:27px;color:#e2dfda;font-size:clamp(1rem,1.45vw,1.15rem);line-height:1.8}
.hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.button{min-height:56px;display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:0 30px;border:1px solid transparent;border-radius:3px;font-size:.84rem;font-weight:650;letter-spacing:.045em;transition:transform .3s var(--ease),background .3s,color .3s,border-color .3s,box-shadow .3s var(--ease)}
.button:hover{transform:translateY(-2px)}
.button--solid{background:var(--red);color:var(--white)}.button--solid:hover{background:var(--red-dark)}
.button--ghost{border-color:rgba(255,255,255,.56);color:var(--white)}.button--ghost:hover{background:var(--white);color:var(--black)}
.button--large{min-height:64px;padding-inline:34px}
.button--premium{min-height:64px;padding-inline:clamp(28px,3vw,42px);border:0;background:linear-gradient(118deg,#84283a 0%,#5b1725 46%,#110d0e 100%);color:var(--white);box-shadow:0 6px 8px rgba(35,4,11,.38),inset 0 1px rgba(255,255,255,.16);font-size:.9rem}
.button--premium:hover{background:linear-gradient(118deg,#963248 0%,#681b2c 48%,#171112 100%);box-shadow:0 8px 8px rgba(35,4,11,.48),inset 0 1px rgba(255,255,255,.2);color:var(--white)}
.button--premium span{font-size:1.05rem;transition:transform .3s var(--ease)}.button--premium:hover span{transform:translateX(3px)}
.hero__footer{position:absolute;left:var(--pad);right:var(--pad);bottom:28px;display:flex;justify-content:space-between;padding-top:17px;border-top:1px solid rgba(255,255,255,.32);color:#c9c5c0;font-size:.65rem;letter-spacing:.09em;text-transform:uppercase}

/* Editorial introduction */
.manifesto{padding:clamp(96px,12vw,176px) var(--pad);display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(50px,10vw,150px);align-items:end;background:var(--off-white);color:var(--ink)}
.manifesto__title>p{max-width:34ch;margin-bottom:30px;padding-bottom:13px;border-bottom:1px solid #aaa5a0;color:#5f5b57;font-size:.83rem}
.manifesto h2{font-size:clamp(3.1rem,6vw,5.8rem)}
.manifesto__copy>p{color:#484440;font-size:1.04rem;line-height:1.85}
.text-link{min-height:44px;display:inline-flex;align-items:center;gap:12px;margin-top:25px;border-bottom:1px solid var(--ink);font-size:.78rem;font-weight:600}.text-link span{color:var(--red)}

/* Full-bleed service scene */
.service-scene{position:relative;min-height:760px;overflow:hidden;background:#100d0b}
.service-scene>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.service-scene__panel{position:relative;width:min(580px,calc(100% - 48px));min-height:760px;margin-left:var(--pad);padding:clamp(90px,10vw,140px) clamp(30px,5vw,70px);display:flex;flex-direction:column;justify-content:center;background:rgba(9,9,9,.84);border-right:1px solid rgba(255,255,255,.16)}
.service-scene__panel>span{color:#d2ccc5;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}
.service-scene__panel h2{margin-top:24px;font-size:clamp(2.6rem,4.5vw,4.5rem)}
.service-scene__panel>p{margin-top:26px;color:#c7c2bc;line-height:1.8}
.service-scene__panel ul{margin-top:38px;border-top:1px solid var(--line);list-style:none}
.service-scene__panel li{padding:18px 0;display:grid;grid-template-columns:110px 1fr;gap:20px;border-bottom:1px solid var(--line)}
.service-scene__panel b{font-family:var(--display);font-weight:400;font-size:1.2rem}.service-scene__panel small{color:#bdb7b1;font-size:.77rem;line-height:1.55}

/* Actual catalogue */
.selection{padding:clamp(100px,11vw,160px) var(--pad);background:#121212;color:var(--white)}
.selection__header{display:grid;grid-template-columns:1.05fr .65fr;gap:60px;align-items:end;margin-bottom:70px}
.selection__header h2{font-size:clamp(3.2rem,6vw,5.8rem)}
.selection__header>p{max-width:54ch;color:#bbb7b2;line-height:1.8}
.collection-hero{position:relative;aspect-ratio:16/9;overflow:hidden;background:#1b1714}
.collection-hero img{width:100%;height:100%;object-fit:cover}
.collection-hero figcaption{position:absolute;left:24px;bottom:20px;max-width:46ch;padding:9px 12px;background:rgba(9,9,9,.82);color:#ded9d3;font-size:.67rem}
.collection-range{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #4c4946}
.collection-range article{min-height:230px;padding:32px 28px;border-right:1px solid #4c4946}.collection-range article:first-child{border-left:1px solid #4c4946}
.collection-range h3{font-size:1.55rem}.collection-range p{margin-top:14px;color:#bdb9b4;font-size:.82rem;line-height:1.7}
.collection-service{margin-top:80px;display:grid;grid-template-columns:1.15fr .85fr;min-height:520px;background:#1c1c1c}
.collection-service>img{width:100%;height:100%;min-height:520px;object-fit:cover}
.collection-service>div{padding:clamp(45px,6vw,80px);display:flex;flex-direction:column;justify-content:center}.collection-service h3{font-size:clamp(2.3rem,4vw,3.8rem)}.collection-service p{margin-top:22px;color:#c4c0ba;line-height:1.8}.collection-service .text-link{align-self:flex-start;border-color:#777;color:var(--white)}
.featured-links{margin-top:34px;display:flex;flex-wrap:wrap;gap:11px 22px;align-items:center;color:#a6a19c;font-size:.75rem}.featured-links a{min-height:44px;display:inline-flex;align-items:center;border-bottom:1px solid #6b6763;color:#efebe7}.featured-links a:hover{border-color:var(--wine-light);color:#fff}
.selection__all{width:max-content;margin:38px 0 0 auto}.selection__all span{color:var(--white)}

/* National ecommerce */
.nationwide{padding:clamp(100px,11vw,158px) var(--pad);display:grid;grid-template-columns:minmax(0,1.02fr) minmax(430px,.98fr);gap:clamp(56px,9vw,130px);align-items:center;background:#f4f4f2;color:var(--ink)}
.nationwide__intro>p:first-child{color:#5b5652;font-size:.74rem;font-weight:650;letter-spacing:.13em;text-transform:uppercase}
.nationwide__intro h2{max-width:13ch;margin-top:24px;font-size:clamp(3.1rem,5.7vw,5.6rem);line-height:1}
.nationwide__summary{max-width:59ch;margin-top:28px;color:#484440;font-size:1.03rem;line-height:1.82}
.nationwide__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.nationwide__actions .button--ghost{border-color:#4d4844;color:var(--ink)}
.nationwide__actions .button--ghost:hover{background:var(--ink);color:var(--white)}
.nationwide__scale{padding:clamp(34px,5vw,60px);background:#111;color:var(--white);box-shadow:14px 14px 0 #6e1f2d}
.nationwide__quantity{display:grid;grid-template-columns:auto auto 1fr auto auto;gap:12px;align-items:end;padding-bottom:34px;border-bottom:1px solid rgba(255,255,255,.25)}
.nationwide__quantity strong{font-family:var(--display);font-size:clamp(3.7rem,6vw,6rem);font-weight:600;line-height:.8}
.nationwide__quantity span{max-width:10ch;padding-bottom:3px;color:#d5d0ca;font-size:.72rem;line-height:1.3}
.nationwide__quantity i{height:1px;margin:0 8px 13px;background:linear-gradient(90deg,#83283a,#d7838c)}
.nationwide__benefits{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid rgba(255,255,255,.25)}
.nationwide__benefits article{padding:30px 26px 30px 0}
.nationwide__benefits article+article{padding-left:26px;border-left:1px solid rgba(255,255,255,.25)}
.nationwide__benefits h3{font-family:var(--sans);font-size:1rem;font-weight:650;letter-spacing:.01em}
.nationwide__benefits p{margin-top:10px;color:#c8c3bd;font-size:.79rem;line-height:1.65}
.nationwide__channels{padding-top:28px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.nationwide__channels span{width:100%;margin-bottom:3px;color:#a9a39d;font-size:.68rem;text-transform:uppercase;letter-spacing:.11em}
.nationwide__channels b{padding:8px 12px;background:#292526;font-size:.7rem;font-weight:600}

/* Visual statistics scene */
.cellar-story{position:relative;min-height:900px;display:flex;align-items:center;overflow:hidden;isolation:isolate;background:var(--black)}
.cellar-story>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.cellar-story::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.28) 60%),linear-gradient(0deg,rgba(0,0,0,.78),transparent 50%)}
.cellar-story__copy{max-width:700px;margin-left:var(--pad);padding-bottom:120px}.cellar-story__copy h2{font-size:clamp(3.2rem,6vw,5.6rem)}.cellar-story__copy p{max-width:56ch;margin-top:26px;color:#d1cdc8;font-size:1.04rem}
.cellar-story__facts{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,1fr);padding:0 var(--pad);background:rgba(9,9,9,.84);border-top:1px solid rgba(255,255,255,.22);backdrop-filter:blur(8px)}
.cellar-story__facts>div{min-height:130px;padding:27px 26px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--line)}.cellar-story__facts>div:first-child{border-left:1px solid var(--line)}
.cellar-story__facts strong{font-family:var(--display);font-size:clamp(1.55rem,2.5vw,2.35rem);font-weight:400}.cellar-story__facts span{color:#aaa6a2;font-size:.7rem}

/* Cavas */
.cavas{padding:clamp(100px,12vw,170px) var(--pad);background:var(--off-white);color:var(--ink)}
.cavas__header{max-width:840px;margin-bottom:80px}.cavas__header>p{margin-bottom:24px;color:#645f5b;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase}.cavas__header h2{font-size:clamp(3.2rem,6vw,5.8rem)}
.cava-motion{margin-bottom:30px;display:grid;grid-template-columns:.82fr 1.18fr;min-height:680px;background:#151515;color:var(--white);overflow:hidden}
.cava-motion__media{position:relative;min-height:680px;background:#171a1c;overflow:hidden;cursor:ew-resize;touch-action:pan-y}
.cava-motion__media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cava-motion__content{padding:clamp(50px,7vw,100px);display:flex;flex-direction:column;justify-content:center}.cava-motion__content>span{color:#b6b1ac;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}.cava-motion__content h3{margin-top:18px;font-size:clamp(2.7rem,5vw,4.8rem)}.cava-motion__content>p{max-width:54ch;margin-top:24px;color:#c8c3bd;line-height:1.8}.cava-motion__content label{margin-top:38px;color:#e2ded9;font-size:.72rem;font-weight:600}.cava-motion__content small{margin-top:8px;color:#aaa59f;font-size:.7rem}
.cava-scrubber{width:100%;height:44px;margin-top:6px;accent-color:var(--red);cursor:ew-resize}
.cava-editorial{display:grid;gap:30px}
.cava-model{display:grid;grid-template-columns:1.06fr .94fr;min-height:600px;background:#171717;color:var(--white)}
.cava-model--reverse{grid-template-columns:.94fr 1.06fr}.cava-model--reverse .cava-model__image{order:2}
.cava-model__image{min-height:600px;overflow:hidden;background:#292929}.cava-model__image img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.cava-model:hover .cava-model__image img{transform:scale(1.025)}
.cava-model__content{padding:clamp(50px,7vw,100px);display:flex;flex-direction:column;justify-content:center}.cava-model__content>span{color:#b0aba6;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}.cava-model__content h3{margin-top:16px;font-size:clamp(2.8rem,5vw,4.8rem)}.cava-model__content>p{margin-top:22px;color:#c6c1bc;line-height:1.8}
.cava-model dl{margin-top:34px;border-top:1px solid var(--line)}.cava-model dl>div{padding:15px 0;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);font-size:.78rem}.cava-model dt{color:#96918c}.cava-model dd{font-weight:500}.cava-model__content>a{width:max-content;margin-top:28px}

/* Service carousel */
.use-cases{padding:clamp(100px,11vw,150px) var(--pad);overflow:hidden;background:#0b0b0b;color:var(--white)}
.use-cases__lead{display:grid;grid-template-columns:1fr .55fr;gap:60px;align-items:end;margin-bottom:58px}.use-cases__lead h2{font-size:clamp(3rem,5.5vw,5rem)}.use-cases__lead h2 em{color:var(--wine-light)}.use-cases__lead p{max-width:44ch;color:#c6c1bc;line-height:1.8}
.use-carousel{max-width:var(--max);margin-inline:auto}
.use-carousel__stage{position:relative;height:clamp(560px,55vw,760px);overflow:hidden;isolation:isolate;background:#171311;touch-action:pan-y}
.use-carousel__stage>img{position:absolute;inset:0;z-index:-3;width:100%;height:100%;object-fit:cover;transition:opacity .32s var(--ease),transform .7s var(--ease)}
.use-carousel__stage.is-switching>img{opacity:.22;transform:scale(1.015)}
.use-carousel__shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(rgba(0,0,0,.28),rgba(0,0,0,.28)),linear-gradient(0deg,rgba(0,0,0,.55),transparent 48%,rgba(0,0,0,.18));pointer-events:none}
.use-carousel__copy{position:absolute;z-index:1;left:50%;top:50%;width:min(760px,calc(100% - 160px));transform:translate(-50%,-46%);text-align:center;text-shadow:0 2px 18px rgba(0,0,0,.38)}
.use-carousel__copy>span{display:block;margin-bottom:15px;color:#f0ece7;font-size:.72rem;font-weight:600;letter-spacing:.13em}
.use-carousel__copy h3{font-size:clamp(3.3rem,7vw,6rem);line-height:.98}
.use-carousel__copy p{max-width:60ch;margin:22px auto 0;color:#fff;font-size:clamp(1rem,1.45vw,1.16rem);font-weight:500;line-height:1.7;letter-spacing:.01em}
.use-carousel__arrow{position:absolute;z-index:2;top:50%;width:52px;height:52px;transform:translateY(-50%);display:grid;place-items:center;border:1px solid rgba(255,255,255,.58);border-radius:50%;background:rgba(9,9,9,.3);color:var(--white);font-size:1.3rem;backdrop-filter:blur(6px);transition:background .22s,transform .22s var(--ease),border-color .22s}.use-carousel__arrow:hover{background:var(--wine);border-color:var(--wine);transform:translateY(-50%) scale(1.04)}.use-carousel__arrow--prev{left:25px}.use-carousel__arrow--next{right:25px}
.use-carousel__rail{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:8px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-color:var(--wine) #24201e;scrollbar-width:thin}
.use-carousel__thumb{position:relative;min-width:0;aspect-ratio:1.2/1;overflow:hidden;scroll-snap-align:start;border:0;background:#211d1a;color:var(--white);text-align:left}.use-carousel__thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.82),rgba(0,0,0,.06) 70%);transition:background .25s}.use-carousel__thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.88);opacity:.54;transition:opacity .3s,filter .3s,transform .55s var(--ease)}.use-carousel__thumb>span{position:absolute;z-index:1;left:14px;right:12px;bottom:12px;display:grid;gap:2px}.use-carousel__thumb b{font-size:.76rem;font-weight:600;line-height:1.25}.use-carousel__thumb small{color:#d3cec8;font-size:.61rem;line-height:1.3}.use-carousel__thumb:hover img,.use-carousel__thumb.is-active img{opacity:1;filter:saturate(1);transform:scale(1.035)}.use-carousel__thumb.is-active{box-shadow:inset 0 -3px 0 var(--wine-light)}.use-carousel__thumb.is-active::after{background:linear-gradient(0deg,rgba(76,17,28,.88),rgba(0,0,0,.02) 72%)}
.use-carousel__help{margin-top:13px;color:#aaa59f;font-size:.68rem;text-align:right}

/* Search-friendly, accessible FAQ */
.faq{padding:clamp(100px,11vw,150px) var(--pad);display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(50px,9vw,130px);background:var(--off-white);color:var(--ink)}
.faq__intro h2{font-size:clamp(2.8rem,5vw,4.8rem)}.faq__intro p{max-width:45ch;margin-top:24px;color:#4c4844}
.faq__list{border-top:1px solid #77726d}.faq details{border-bottom:1px solid #aaa5a0}.faq summary{min-height:72px;padding:22px 42px 22px 0;display:flex;align-items:center;position:relative;cursor:pointer;font-family:var(--display);font-size:clamp(1.25rem,2vw,1.65rem);list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";position:absolute;right:8px;font-family:var(--sans);font-size:1.25rem}.faq details[open] summary::after{content:"−"}.faq details p{max-width:65ch;padding:0 42px 24px 0;color:#4c4844}

/* CTA */
.contact{position:relative;min-height:850px;padding:clamp(110px,12vw,170px) var(--pad);display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(60px,9vw,140px);align-items:center;isolation:isolate;background:var(--black)}
.contact>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}.contact__shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(0,0,0,.45),rgba(0,0,0,.84) 47%,rgba(0,0,0,.96))}
.contact__content>p:first-child{color:#c3bdb7;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}.contact__content h2{margin-top:24px;font-size:clamp(3.2rem,6vw,5.7rem)}.contact__content>p:nth-of-type(2){max-width:48ch;margin-top:26px;color:#c8c3bd}.contact__content .button{margin-top:34px}
.contact__form{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:clamp(34px,4vw,54px);background:rgba(15,15,15,.93);border-top:2px solid var(--red)}
.form-required{grid-column:1/-1;color:#d5d0ca;font-size:.72rem}
.field{grid-column:1/-1;display:flex;flex-direction:column;gap:8px}.field--half{grid-column:span 1}.field label{color:#c5c0ba;font-size:.67rem;letter-spacing:.1em;text-transform:uppercase}.field input,.field select{width:100%;height:52px;padding:0 14px;border:0;border-bottom:1px solid #77726d;border-radius:0;background:#f2f2ef;color:#111}.field input::placeholder{color:#5f5f5b;opacity:1}.field input:focus,.field select:focus{outline:0;border-bottom:3px solid var(--red)}.field .invalid{border-bottom:3px solid var(--red)}.form-error{grid-column:1/-1;color:#f0a0a7;font-size:.8rem}.contact__form .button{grid-column:1/-1;width:100%;margin-top:4px;border:0}

.footer{padding:60px var(--pad) 28px;background:var(--black);color:var(--white)}.footer__brand{display:block;width:max-content}.footer>p{margin-top:20px;color:#aaa6a1}.footer>nav{margin-top:21px;display:flex;flex-wrap:wrap;gap:4px 25px;font-size:.78rem}.footer>nav a{min-height:44px;display:inline-flex;align-items:center}.footer>nav a:last-child{color:var(--wine-light)}.footer__legal{margin-top:45px;padding-top:18px;display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);color:#96918c;font-size:.67rem}

.selection em,.service-scene em,.cellar-story em,.cava-motion em,.cava-model em,.contact em{color:var(--wine-light)}

/* Motion is progressive enhancement: content remains visible by default */
.js-ready .reveal{transition:opacity .9s var(--ease),transform .9s var(--ease)}.js-ready .reveal.reveal--pending{opacity:.001;transform:translateY(34px)}.js-ready .reveal.reveal--pending.in{opacity:1;transform:none}

@media(max-width:980px){
  .site-nav__links,.site-nav__contact{display:none}.site-nav{grid-template-columns:auto 1fr auto}.site-nav__toggle{display:flex;justify-self:end}
  .manifesto,.selection__header,.use-cases__lead,.contact,.faq,.nationwide{grid-template-columns:1fr}
  .manifesto__copy{max-width:620px}
  .collection-range{grid-template-columns:1fr 1fr}.collection-range article:nth-child(odd){border-left:1px solid #4c4946}.collection-range article{border-bottom:1px solid #4c4946}
  .collection-service{grid-template-columns:1fr}.collection-service>img{min-height:440px}
  .nationwide__scale{max-width:720px}
  .cellar-story__facts{grid-template-columns:1fr 1fr}.cellar-story__facts>div{min-height:105px;border-bottom:1px solid var(--line)}
  .cava-motion{grid-template-columns:1fr 1fr}
  .cava-model,.cava-model--reverse{grid-template-columns:1fr}.cava-model--reverse .cava-model__image{order:0}.cava-model__image{min-height:480px}
  .use-carousel__rail{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(180px,28vw)}
  .contact{gap:50px}.contact__shade{background:rgba(0,0,0,.76)}
}

@media(max-width:640px){
  :root{--pad:20px}
  .brand-crop{width:136px;height:50px}.brand-crop img{left:-4px;top:-23px;width:143px}
  .site-nav{top:10px;width:calc(100% - 24px);height:60px;padding-left:12px}.site-nav.scrolled{top:6px}.site-nav__brand{height:52px}.site-nav__toggle{width:46px;height:46px}.site-nav__mobile{top:66px;width:min(250px,calc(100vw - 24px))}
  .hero{min-height:850px}.hero__video{object-position:58% center}.hero__shade{background:linear-gradient(0deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.54) 62%,rgba(0,0,0,.35))}.hero__content{width:auto;margin:0;padding:145px 20px 170px}.hero h1{font-size:clamp(3.15rem,14vw,4.3rem)}.hero__intro{font-size:.96rem}.hero__actions{flex-direction:column}.hero__actions .button{width:100%}.hero__footer{left:20px;right:20px;bottom:24px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.hero__footer span:last-child{display:none}
  .button--premium,.button--large{width:100%;min-height:62px;padding-inline:22px}
  .manifesto{padding-block:90px;gap:42px}.manifesto h2,.selection__header h2,.cavas__header h2,.cellar-story__copy h2,.contact__content h2{font-size:clamp(2.8rem,13vw,4rem)}
  .service-scene{min-height:800px}.service-scene>img{object-position:64% center}.service-scene__panel{width:calc(100% - 40px);min-height:auto;margin:250px 20px 20px;padding:40px 26px;background:rgba(9,9,9,.92);border-right:0;border-top:2px solid var(--red)}.service-scene__panel h2{font-size:2.55rem}.service-scene__panel li{grid-template-columns:90px 1fr}
  .selection{padding-block:90px}.selection__header{gap:28px;margin-bottom:45px}.collection-hero{aspect-ratio:4/5}.collection-hero img{object-position:68% center}.collection-hero figcaption{left:12px;right:12px;bottom:12px}.collection-range{grid-template-columns:1fr}.collection-range article,.collection-range article:nth-child(odd){min-height:auto;padding:27px 4px;border-left:0;border-right:0}.collection-service{margin-top:56px}.collection-service>img{min-height:360px}.collection-service>div{padding:38px 24px}.featured-links{align-items:flex-start;flex-direction:column}.selection__all{width:auto;margin-left:0}
  .nationwide{padding-block:88px;gap:45px}.nationwide__intro h2{font-size:clamp(2.8rem,13vw,4rem)}.nationwide__actions{flex-direction:column}.nationwide__scale{padding:34px 22px;box-shadow:8px 8px 0 #6e1f2d}.nationwide__quantity{grid-template-columns:auto 1fr;gap:9px 12px;align-items:end}.nationwide__quantity i{grid-column:1/-1;width:100%;margin:10px 0;height:1px}.nationwide__quantity strong{font-size:3.8rem}.nationwide__benefits{grid-template-columns:1fr}.nationwide__benefits article,.nationwide__benefits article+article{padding:25px 0;border-left:0}.nationwide__benefits article+article{border-top:1px solid rgba(255,255,255,.25)}
  .cellar-story{min-height:920px;align-items:flex-start}.cellar-story>img{object-position:center}.cellar-story__copy{margin:0;padding:100px 20px 0}.cellar-story__facts{grid-template-columns:1fr 1fr;padding:0}.cellar-story__facts>div{padding:20px;min-height:100px}.cellar-story__facts strong{font-size:1.5rem}
  .cavas{padding-block:90px}.cavas__header{margin-bottom:48px}.cava-motion{grid-template-columns:1fr;min-height:auto}.cava-motion__media{min-height:620px}.cava-motion__content{padding:42px 25px}.cava-model__image{min-height:370px}.cava-model__content{padding:38px 26px}.cava-model__content h3{font-size:3rem}
  .use-cases{padding-block:86px}.use-cases__lead{gap:26px;margin-bottom:42px}.use-carousel__stage{height:660px}.use-carousel__stage>img{object-position:center}.use-carousel__copy{width:calc(100% - 48px);transform:translate(-50%,-48%)}.use-carousel__copy h3{font-size:clamp(3rem,14vw,4.5rem)}.use-carousel__copy p{font-size:.96rem;line-height:1.65}.use-carousel__arrow{top:auto;bottom:20px;width:48px;height:48px;transform:none}.use-carousel__arrow:hover{transform:scale(1.04)}.use-carousel__arrow--prev{left:20px}.use-carousel__arrow--next{right:20px}.use-carousel__rail{grid-auto-columns:72vw}.use-carousel__thumb{aspect-ratio:1.45/1}.use-carousel__help{text-align:left}
  .faq{padding-block:86px;gap:40px}.faq summary{font-size:1.25rem}
  .contact{min-height:auto;padding-block:92px;gap:42px}.contact>img{object-position:35% center}.contact__form{grid-template-columns:1fr;padding:30px 20px}.field,.field--half{grid-column:1/-1}
  .footer{padding-inline:20px}.footer__legal{flex-direction:column}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero__video{display:none}*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}.js-ready .reveal.reveal--pending{opacity:1;transform:none}}
@media(prefers-contrast:more){:focus-visible{outline-width:4px}.site-nav,.contact__form{background:#000}.hero__shade,.contact__shade{background:rgba(0,0,0,.86)}.field label,.hero__intro,.contact__content>p:nth-of-type(2){color:#fff}}
