/* Linwood Studios: luxe dark/editorial layer (staged 25 Oct 2026). Loaded after site.css. Visual only: no copy lives here. */
:root{--ink:#f4ece2;--mut:rgba(244,236,226,.68);--bg:#100d0b;--card:#17130f;--line:rgba(244,236,226,.11);--lin:#1b1712;--a:#d39463;--ad:#e2a676;--a2:#e7b98f;--ch:#1a1612;--chl:rgba(244,236,226,.12);--dk:#100d0b;--dk2:#15110e;--cu:#c98b5a;--r:22px;--sh:0 1px 0 rgba(255,255,255,.03) inset,0 30px 60px -40px rgba(0,0,0,.9);--ease:cubic-bezier(.22,.8,.2,1)}
html{background:var(--bg);color-scheme:dark}
body{background:var(--bg);color:var(--ink)}
::selection{background:rgba(201,139,90,.45);color:#fff}
/* film grain over everything (decorative) */
body:after{content:"";position:fixed;inset:-50%;z-index:90;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain 1.2s steps(6) infinite}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}100%{transform:translate(0,0)}}
.skip:focus{background:var(--cu);color:var(--dk)}
:focus-visible{outline-color:var(--a2)}
h1,h2,h3{letter-spacing:-.025em;font-weight:700}
h1 em,h2 em{color:var(--a2);font-weight:600}
.eyebrow{color:var(--a);letter-spacing:.28em;font-size:12px}
.eyebrow:before{content:"";width:28px;height:1px;background:currentColor;opacity:.7}
.lead{color:var(--mut)}
/* scroll progress */
.lx-prog{position:fixed;left:0;top:0;height:2px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,#8a4f2a,var(--cu),var(--a2));z-index:95;pointer-events:none}
/* top bar + header */
.fbar{background:#0a0807;color:rgba(244,236,226,.82);border-bottom:1px solid var(--line);letter-spacing:.01em}
.fbar b{color:var(--a2)}.fbar a{color:#fff}
header.top{background:rgba(16,13,11,.55);border-bottom:1px solid transparent;transition:background .4s var(--ease),border-color .4s var(--ease)}
header.top.lx-solid{background:rgba(16,13,11,.86);border-bottom-color:var(--line)}
.brand{color:#fff}
.brand svg rect{fill:#1d1813}
nav.links a{color:rgba(244,236,226,.66);position:relative;transition:color .25s}
nav.links a:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--a2);transform:scaleX(0);transform-origin:100% 50%;transition:transform .45s var(--ease)}
nav.links a:hover{color:#fff}nav.links a:hover:after{transform:scaleX(1);transform-origin:0 50%}
/* buttons */
.btn{letter-spacing:.01em;transition:transform .35s var(--ease),background .3s,box-shadow .35s var(--ease),color .3s,border-color .3s;position:relative;overflow:hidden;isolation:isolate}
.btn.p{background:linear-gradient(135deg,#e2a676,#c98b5a 55%,#a96a3f);color:#120f0d;box-shadow:0 14px 34px -14px rgba(201,139,90,.75),0 0 0 1px rgba(255,255,255,.12) inset}
.btn.p:hover{background:linear-gradient(135deg,#ecb688,#d39463 55%,#b7774a);box-shadow:0 20px 44px -14px rgba(201,139,90,.9),0 0 0 1px rgba(255,255,255,.18) inset;transform:translateY(-2px)}
.btn.p:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);transform:translateX(-120%);transition:transform .9s var(--ease)}
.btn.p:hover:before{transform:translateX(120%)}
.btn.g,.btn.gl{border:1px solid rgba(244,236,226,.28);color:var(--ink);background:rgba(244,236,226,.02)}
.btn.g:hover,.btn.gl:hover{background:rgba(244,236,226,.08);border-color:rgba(244,236,226,.55)}
/* hero */
.hero{padding:72px 0 120px;background:radial-gradient(1000px 640px at 80% 10%,rgba(201,139,90,.22),transparent 60%),radial-gradient(800px 600px at -10% 110%,rgba(140,70,35,.18),transparent 60%),var(--bg);isolation:isolate}
.hero:before{background-image:linear-gradient(rgba(244,236,226,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(244,236,226,.045) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 60% 30%,#000,transparent 75%);mask-image:radial-gradient(ellipse 70% 60% at 60% 30%,#000,transparent 75%)}
.hero .lx-glow{position:absolute;width:560px;height:560px;left:0;top:0;border-radius:50%;background:radial-gradient(circle,rgba(231,185,143,.16),transparent 62%);pointer-events:none;z-index:-1;transform:translate3d(-999px,-999px,0);transition:opacity .6s;opacity:0}
.hero.lx-hover .lx-glow{opacity:1}
.hero h1{font-size:clamp(46px,6vw,86px);line-height:.96;letter-spacing:-.04em;margin-bottom:26px}
.hero h1 em{font-style:italic;font-weight:600;color:var(--a2)}
.hero h1 em .lx-w>span{background:linear-gradient(100deg,#f3d2ad,#c98b5a 45%,#e7b98f 70%,#a96a3f);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-size:300% 100%;animation:wordup 1.1s var(--ease) both,sheen 9s ease-in-out 1.2s infinite;padding-right:.06em}
@keyframes sheen{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.hero h1 .lx-w{display:inline-block;overflow:clip;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.hero h1 .lx-w>span{display:inline-block;animation:wordup 1.1s var(--ease) both}
@keyframes wordup{from{transform:translateY(105%)}to{transform:none}}
.pill{background:rgba(244,236,226,.04);border:1px solid var(--line);color:rgba(244,236,226,.86);box-shadow:none;backdrop-filter:blur(6px)}
.pill span{background:linear-gradient(135deg,#e2a676,#c98b5a);color:#120f0d}
.micro{color:rgba(244,236,226,.6)}.micro .i{color:var(--a2)}
.facts{border-top:1px solid var(--line)}
.facts li b{color:#fff;font-size:30px}
.hero .dev{perspective:1400px}
.hero .dev .lap,.hero .dev .mob{transition:transform .9s var(--ease)}
.lap{background:#0b0a09;box-shadow:0 60px 90px -40px rgba(0,0,0,.95),0 0 0 1px rgba(244,236,226,.08)}
.lap:after{background:linear-gradient(180deg,#3a342e,#1d1915)}
.mob{background:#0b0a09;box-shadow:0 40px 70px -24px rgba(0,0,0,.95),0 0 0 1px rgba(244,236,226,.1)}
.chip{background:rgba(23,19,15,.82);border:1px solid rgba(244,236,226,.14);color:#f4ece2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.chip .i{color:var(--a2)}
.clabel{background:#f4ece2;color:#120f0d}
.lx-cue{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:rgba(244,236,226,.5)}
.lx-cue i{display:block;width:1px;height:44px;background:linear-gradient(rgba(244,236,226,.6),transparent);position:relative;overflow:hidden}
.lx-cue i:after{content:"";position:absolute;left:0;top:-40%;width:1px;height:40%;background:var(--a2);animation:cue 2.2s var(--ease) infinite}
@keyframes cue{to{top:110%}}
/* ===== trades reel ===== */
.reel{padding:0;background:var(--dk);position:relative}
.reel-intro{padding:120px 24px 64px;position:relative}
.reel-intro h2{font-size:clamp(34px,5.4vw,76px);line-height:1;letter-spacing:-.035em;max-width:13em;margin-bottom:18px}
.reel-intro .small{color:rgba(244,236,226,.55)}
.reel-list{list-style:none;margin:0;padding:0 24px 40px;max-width:1180px;margin:0 auto;display:grid;gap:28px}
.scn{margin:0;position:relative;border-radius:22px;overflow:hidden;background:#0a0807;border:1px solid var(--line)}
.scn img.poster{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.scn canvas{display:none}
.scn figcaption{padding:18px 22px 22px;display:grid;gap:4px}
.scn .no{font-family:var(--hf);color:var(--a);font-size:15px;letter-spacing:.1em}
.scn b{font-family:var(--hf);font-size:30px;line-height:1.05;letter-spacing:-.02em;color:#fff}
.scn .cap{color:var(--mut);font-size:16px}
.reel-note{max-width:1180px;margin:0 auto;padding:0 24px 80px;color:rgba(244,236,226,.5);font-size:13px}
.reel-rail{display:none}
/* scrub mode (JS on, motion allowed) */
.reel.is-scrub .reel-track{position:relative;height:calc(var(--n,5) * 115vh + 100vh)}
.reel.is-scrub .reel-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;background:#0a0807}
.reel.is-scrub .reel-list{position:absolute;inset:0;padding:0;max-width:none;display:block}
.reel.is-scrub .reel-list>li{position:absolute;inset:0}
.reel.is-scrub .scn{position:absolute;inset:0;border:0;border-radius:0;will-change:clip-path;clip-path:inset(100% 0 0 0)}
.reel.is-scrub li:first-child .scn{clip-path:none}
.reel.is-scrub .scn .media{position:absolute;inset:0;will-change:transform;transform-origin:62% 50%}
.reel.is-scrub .scn img.poster,.reel.is-scrub .scn canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--fx,62%) 50%;aspect-ratio:auto;display:block}
.reel.is-scrub .scn canvas{opacity:0;transition:opacity .4s}
.reel.is-scrub .scn.has-frames canvas{opacity:1}
.reel.is-scrub .scn .shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,8,7,.88) 0%,rgba(10,8,7,.55) 30%,rgba(10,8,7,0) 58%),linear-gradient(0deg,rgba(10,8,7,.75),rgba(10,8,7,0) 38%),radial-gradient(ellipse at 60% 50%,transparent 55%,rgba(0,0,0,.55));pointer-events:none}
.reel.is-scrub .scn .dim{position:absolute;inset:0;background:#000;opacity:0;pointer-events:none}
.reel.is-scrub .scn figcaption{position:absolute;left:clamp(24px,6vw,96px);bottom:clamp(64px,13vh,140px);padding:0;max-width:min(560px,46vw);gap:10px;z-index:3}
.reel.is-scrub .scn .num{position:absolute;left:clamp(10px,3vw,48px);top:50%;transform:translateY(-58%);font:700 clamp(220px,40vw,560px)/.8 var(--hf);letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1.5px rgba(231,185,143,.32);z-index:2;pointer-events:none;user-select:none}
.reel.is-scrub .scn .no{font-size:13px;letter-spacing:.32em;text-transform:uppercase;display:flex;align-items:center;gap:12px}
.reel.is-scrub .scn .no:after{content:"";width:56px;height:1px;background:currentColor;opacity:.6}
.reel.is-scrub .scn b{font-size:clamp(54px,8vw,128px);line-height:.9;letter-spacing:-.045em}
.reel.is-scrub .scn .cap{font-size:clamp(17px,1.5vw,21px);color:rgba(244,236,226,.82);max-width:24em}
.reel.is-scrub .scn .ln{display:block;overflow:clip;padding-bottom:.06em}
.reel.is-scrub .scn .ln>span{display:block;transform:translateY(var(--ty,110%));transition:transform 1s var(--ease)}
.reel.is-scrub .scn.on .ln>span{--ty:0%}
.reel.is-scrub .scn.on .ln:nth-child(2)>span{transition-delay:.08s}
.reel.is-scrub .scn.on .ln:nth-child(3)>span{transition-delay:.16s}
.reel.is-scrub .reel-rail{display:flex;position:absolute;right:clamp(18px,3vw,48px);top:50%;transform:translateY(-50%);flex-direction:column;gap:18px;z-index:5;list-style:none;margin:0;padding:0}
.reel-rail li{text-shadow:0 1px 12px rgba(0,0,0,.8);display:flex;align-items:center;justify-content:flex-end;gap:12px;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:rgba(244,236,226,.38);transition:color .4s}
.reel-rail li i{display:block;width:26px;height:1px;background:rgba(244,236,226,.25);position:relative;overflow:hidden;transition:width .5s var(--ease)}
.reel-rail li i:after{content:"";position:absolute;inset:0;background:var(--a2);transform:scaleX(var(--p,0));transform-origin:0 50%}
.reel-rail li.on{color:#fff}.reel-rail li.on i{width:64px}
.reel.is-scrub .reel-count{display:block;position:absolute;left:clamp(24px,6vw,96px);top:clamp(80px,13vh,130px);z-index:5;font:600 13px/1 Inter,sans-serif;letter-spacing:.32em;color:rgba(244,236,226,.55);text-transform:uppercase}
.reel-count{display:none}
.reel.is-scrub .reel-tag{display:block;position:absolute;right:clamp(18px,3vw,48px);bottom:22px;z-index:5;font-size:11.5px;letter-spacing:.06em;color:rgba(244,236,226,.5)}
.reel-tag{display:none}
.reel.is-scrub .reel-note{display:none}
/* ===== sections ===== */
section{padding:128px 0}
section.alt{background:var(--dk2);border-color:var(--line)}
.sh h2{font-size:clamp(34px,4.8vw,64px);line-height:1.02;letter-spacing:-.035em}
.sh p{color:var(--mut)}
.l249{padding:96px 0}
.l249box{max-width:880px;border:1px solid rgba(231,185,143,.28);border-radius:28px;padding:48px 46px;background:radial-gradient(600px 300px at 100% 0%,rgba(201,139,90,.16),transparent 60%),linear-gradient(180deg,#1a1511,#120f0c);box-shadow:0 60px 120px -60px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.02) inset;position:relative;overflow:hidden}
.l249box:before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:conic-gradient(from var(--ang,0deg),transparent 0 70%,rgba(231,185,143,.75) 80%,transparent 90%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:spin 7s linear infinite;pointer-events:none}
@property --ang{syntax:'<angle>';initial-value:0deg;inherits:false}
@keyframes spin{to{--ang:360deg}}
.l249box h2{font-size:clamp(30px,3.8vw,48px);line-height:1.05;letter-spacing:-.03em}
.l249box p{color:rgba(244,236,226,.78)}
.l249box .small{color:rgba(244,236,226,.58)}
.igalt a,.l249box a:not(.btn),.small a,.gnote a{color:var(--a2)}
.trd{padding:110px 0}
.trd h2{font-size:clamp(30px,3.8vw,52px);line-height:1.06;letter-spacing:-.03em}
.trdq{font-size:clamp(28px,3.2vw,44px);color:var(--a2);font-style:italic}
.trdl li{background:linear-gradient(180deg,#1a1612,#141110);border:1px solid var(--line);box-shadow:var(--sh);transition:transform .5s var(--ease),border-color .4s}
.trdl li:hover{transform:translateY(-4px);border-color:rgba(231,185,143,.35)}
.trdl b{color:#fff}
.strip{background:#0b0908;border-color:var(--line);overflow:hidden}
.strip .wrap{color:rgba(244,236,226,.66)}
.strip b{color:#fff}.strip .i{color:var(--a2)}
.strip.lx-marq .wrap{max-width:none;padding:22px 0;flex-wrap:nowrap;justify-content:flex-start;gap:0;width:max-content;animation:marq 38s linear infinite}
.strip.lx-marq .lx-set{display:flex;align-items:center;gap:0;flex:none}
.strip.lx-marq .lx-set>span{padding:0 28px;font-family:var(--hf);font-size:clamp(20px,2.2vw,30px);color:rgba(244,236,226,.85);letter-spacing:-.01em;white-space:nowrap}
.strip.lx-marq .lx-set>span:not(:first-child):before{content:"✦";color:var(--cu);font-size:.5em;margin-right:28px;vertical-align:middle}
.strip.lx-marq .lx-set>span:first-child{font-family:Inter,sans-serif;font-size:13px;letter-spacing:.24em;text-transform:uppercase;color:var(--a2)}
.strip.lx-marq .lx-set>span:first-child b{color:var(--a2);font-weight:700}
.strip.lx-marq:hover .wrap{animation-play-state:paused}
@keyframes marq{to{transform:translateX(-50%)}}
.why article,.steps li,.trio div,.faq details,.inc li{background:linear-gradient(180deg,#19150f,#13100d);border:1px solid var(--line);box-shadow:var(--sh)}
.why article{transition:transform .5s var(--ease),border-color .4s}.why article:hover{transform:translateY(-6px);border-color:rgba(231,185,143,.32)}
.ic{background:rgba(201,139,90,.12);color:var(--a2);border:1px solid rgba(201,139,90,.22)}
.label{background:rgba(244,236,226,.04);border-color:var(--line)}
.label span{background:#f4ece2;color:#120f0d}
.wk{background:#14110e;border:1px solid var(--line);transition:transform .6s var(--ease),box-shadow .6s var(--ease),border-color .4s}
.wk:hover{transform:translateY(-8px);box-shadow:0 50px 80px -40px rgba(0,0,0,.95);border-color:rgba(231,185,143,.3)}
.wk .stage,.wk:nth-child(2n) .stage{background:radial-gradient(420px 220px at 70% 0%,rgba(201,139,90,.22),transparent 70%),linear-gradient(160deg,#211b15,#16120f)}
.wk .scr img,.wk .mob img{transition:transform 1.2s var(--ease)}
.wk:hover .scr img{transform:scale(1.04)}
.wk .tag{color:var(--a)}
.wk h3{color:#fff}
.band{background:radial-gradient(900px 500px at 90% 0%,rgba(201,139,90,.2),transparent 60%),#0b0908;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.band p.lead{color:rgba(244,236,226,.72)}
.bsteps li{background:rgba(244,236,226,.03);border:1px solid var(--line)}
.bsteps li:before{background:linear-gradient(135deg,#e2a676,#c98b5a);color:#120f0d}
.bsteps span{color:rgba(244,236,226,.62)}
.price{background:linear-gradient(180deg,#19150f,#13100d);border:1px solid var(--line);box-shadow:var(--sh);transition:transform .5s var(--ease),border-color .4s}
.price:hover{transform:translateY(-6px)}
.price.f{background:radial-gradient(500px 300px at 100% 0%,rgba(201,139,90,.28),transparent 60%),linear-gradient(180deg,#2a2018,#17120e);border-color:rgba(231,185,143,.4);box-shadow:0 60px 110px -50px rgba(0,0,0,.95)}
.price.f .sub,.price.f li{color:rgba(244,236,226,.8)}
.badge{background:rgba(201,139,90,.14);color:var(--a2);border:1px solid rgba(201,139,90,.3)}
.price.f .badge{background:linear-gradient(135deg,#e2a676,#c98b5a);color:#120f0d;border:0}
.amt{color:#fff}.amt small{color:var(--mut)}
.price li .i{color:var(--a2)}
.note{color:rgba(244,236,226,.62)}
.note strong{color:#fff}
.steps li:before{color:transparent;-webkit-text-stroke:1px var(--a2);font-size:54px}
.mono{background:radial-gradient(circle at 70% 20%,rgba(231,185,143,.3),transparent 55%),#16120e;border:1px solid var(--line)}
.mono:before{display:none}
.about p{color:var(--mut)}
.trio b{color:var(--a)}
summary{color:#f4ece2}
summary:after{background-color:rgba(201,139,90,.15);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23e7b98f' d='M11 5h2v14h-2z'/%3E%3Cpath fill='%23e7b98f' d='M5 11h14v2H5z'/%3E%3C/svg%3E")}
.faq details{transition:border-color .3s}.faq details[open]{border-color:rgba(231,185,143,.32)}
details p{color:var(--mut)}
.faqw a,.contact .lead a{color:var(--a2)}
.where{color:rgba(244,236,226,.7)}.where .i{color:var(--a2)}
form.enq{background:linear-gradient(180deg,#1a1612,#131010);border:1px solid rgba(231,185,143,.2);box-shadow:0 60px 120px -60px rgba(0,0,0,.95)}
label{color:rgba(244,236,226,.88)}
input,textarea,select{background:#0e0c0a;border:1px solid rgba(244,236,226,.18);color:#f4ece2;transition:border-color .25s,box-shadow .25s}
input::placeholder,textarea::placeholder{color:rgba(244,236,226,.38)}
select{background:#0e0c0a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23e7b98f' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E") right 12px center/22px no-repeat}
select option{background:#14110e;color:#f4ece2}
input:focus,textarea:focus,select:focus{outline:2px solid rgba(231,185,143,.5);border-color:var(--a2);box-shadow:0 0 0 6px rgba(201,139,90,.12)}
.small{color:rgba(244,236,226,.6)}
footer{background:#080706;color:rgba(244,236,226,.62);border-top:1px solid var(--line)}
footer .brand svg{box-shadow:0 0 0 1px rgba(244,236,226,.14)}
.doc p,.doc li{color:rgba(244,236,226,.8)}
.doc a{color:var(--a2)}
@media (max-width:640px){
 .mcta{background:rgba(16,13,11,.92);border-top:1px solid var(--line)}
 .hero{padding:56px 0 88px}
 .hero h1{font-size:clamp(42px,12vw,60px)}
 .lx-cue{display:none}
 .l249box{padding:30px 22px}
 .reel-intro{padding:84px 20px 40px}
 .reel.is-scrub .reel-track{height:calc(var(--n,5) * 95vh + 100vh)}
 .reel.is-scrub .scn .shade{background:linear-gradient(0deg,rgba(10,8,7,.95) 0%,rgba(10,8,7,.6) 34%,rgba(10,8,7,0) 60%),linear-gradient(180deg,rgba(10,8,7,.55),rgba(10,8,7,0) 22%)}
 .reel.is-scrub .scn figcaption{left:20px;right:20px;bottom:calc(96px + env(safe-area-inset-bottom));max-width:none}
 .reel.is-scrub .scn b{font-size:clamp(46px,14vw,64px)}
 .reel.is-scrub .scn .num{left:auto;right:-4vw;top:auto;bottom:calc(150px + env(safe-area-inset-bottom));transform:none;font-size:62vw;-webkit-text-stroke-width:1px}
 .reel.is-scrub .reel-rail{top:78px;bottom:auto;left:20px;right:20px;transform:none;flex-direction:row;gap:6px}
 .reel-rail li{flex:1;font-size:0;gap:0}
 .reel-rail li i,.reel-rail li.on i{width:100%}
 .reel.is-scrub .reel-count{top:96px;left:20px}
 .reel.is-scrub .reel-tag{left:auto;right:20px;top:96px;bottom:auto;font-size:10.5px}
 .strip.lx-marq .lx-set>span{padding:0 18px}
 .strip.lx-marq .lx-set>span:not(:first-child):before{margin-right:18px}
}
/* reveals (only when JS has tagged elements) */
.lx-js [data-rv]{opacity:0;transform:translateY(34px);transition:opacity 1s var(--ease),transform 1.1s var(--ease);transition-delay:var(--d,0s)}
.lx-js [data-rv].in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
 body:after{animation:none}
 .lx-js [data-rv]{opacity:1;transform:none}
 .hero h1 .lx-w>span{animation:none}
 .strip.lx-marq .wrap{animation:none}
 .l249box:before{display:none}
}
.scn .shade,.scn .dim,.scn .num{display:none}
.reel.is-scrub .scn .shade,.reel.is-scrub .scn .dim,.reel.is-scrub .scn .num{display:block}
.scn .media{position:relative}
.scn img.poster{object-position:var(--fx,62%) 50%}
@media (max-width:640px){.scn img.poster{aspect-ratio:4/5}}

.reel.is-scrub .scn.long b{font-size:clamp(46px,6.2vw,96px)}
.reel.is-scrub .scn.long figcaption{max-width:min(640px,52vw)}
@media (max-width:640px){.reel.is-scrub .scn.long b{font-size:clamp(40px,11.5vw,54px)}.reel.is-scrub .scn.long figcaption{max-width:none}}

/* ===== hero device showcase (finish 25 Oct 2026): realistic laptop + phone, crossfading concept screens ===== */
.hero .dev.hx{padding:0 11% 10% 0;isolation:isolate}
.hx .hx-halo{position:absolute;left:4%;right:2%;top:8%;bottom:4%;z-index:-1;border-radius:50%;background:radial-gradient(closest-side,rgba(201,139,90,.42),rgba(201,139,90,.12) 55%,transparent 75%);filter:blur(28px);animation:hxhalo 7s ease-in-out infinite alternate;pointer-events:none}
.hx:after{content:"";position:absolute;left:6%;right:4%;bottom:-2%;height:9%;z-index:-1;border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.85),transparent);filter:blur(10px);pointer-events:none}
@keyframes hxhalo{from{opacity:.75;transform:scale(.97)}to{opacity:1;transform:scale(1.03)}}
.hx .lap{background:linear-gradient(180deg,#34302b,#1a1714 14%,#100e0c);border-radius:18px 18px 6px 6px;padding:11px 11px 0;box-shadow:0 0 0 1px rgba(244,236,226,.13),inset 0 1px 0 rgba(255,255,255,.12),0 80px 120px -50px rgba(0,0,0,.95),0 40px 90px -50px rgba(201,139,90,.5);transform-style:preserve-3d}
.hx .lap:before{top:4px;width:5px;height:5px;background:radial-gradient(circle at 35% 35%,#4b5563,#0b0c0e);box-shadow:0 0 0 1px rgba(255,255,255,.05)}
.hx .lap:after{display:none}
.hx .bez{background:#050404;border-radius:8px 8px 0 0;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(0,0,0,.8)}
.hx-bar{display:flex;align-items:center;gap:5px;height:22px;padding:0 10px;background:linear-gradient(180deg,#221e1a,#1a1714);border-bottom:1px solid rgba(244,236,226,.06)}
.hx-bar i{width:7px;height:7px;border-radius:50%;background:#3a332d}.hx-bar i:nth-child(1){background:#c9785a}.hx-bar i:nth-child(2){background:#c9a15a}.hx-bar i:nth-child(3){background:#6f8f6a}
.hx-url{flex:0 1 46%;height:11px;margin:0 auto;border-radius:6px;background:rgba(244,236,226,.07);transform:translateX(-14px)}
.hx .scr{position:relative;overflow:hidden;background:#0d0b0a;border-radius:0}
.hx .lap .scr{aspect-ratio:16/10}
.hx .scr img.hx-s{position:absolute;left:0;top:0;width:100%;height:auto;max-width:none;object-fit:fill;aspect-ratio:auto;border-radius:0;will-change:transform,opacity}
.hx .scr img.hx-s2{opacity:0}
.hx-glare{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(118deg,rgba(255,255,255,.10) 0%,rgba(255,255,255,.03) 26%,transparent 42%),radial-gradient(120% 80% at 50% 120%,rgba(0,0,0,.18),transparent 60%)}
.hx-base{position:absolute;left:-8.5%;right:-8.5%;bottom:-15px;height:15px;border-radius:2px 2px 16px 16px;background:linear-gradient(180deg,#5a4f45 0%,#2d2722 40%,#171310 100%);box-shadow:0 1px 0 rgba(255,255,255,.18) inset,0 22px 30px -14px rgba(0,0,0,.9)}
.hx-base i{position:absolute;left:50%;top:0;width:15%;height:5px;margin-left:-7.5%;border-radius:0 0 8px 8px;background:linear-gradient(180deg,#120f0d,#2a241f)}
.hx .mob{width:27%;padding:5px;border-radius:30px;background:linear-gradient(145deg,#4a4038,#1a1613 32%,#0f0c0a 60%,#3a322b);box-shadow:0 0 0 1px rgba(244,236,226,.16),inset 0 0 0 1px rgba(255,255,255,.06),0 50px 70px -26px rgba(0,0,0,.95),0 20px 60px -30px rgba(201,139,90,.55);z-index:2}
.hx .mob:before,.hx .mob:after{content:"";position:absolute;right:-2px;width:3px;border-radius:0 2px 2px 0;background:#3a322b}
.hx .mob:before{top:22%;height:11%}.hx .mob:after{top:36%;height:7%}
.hx .mob .scr{aspect-ratio:390/844;border-radius:25px}
.hx-isl{position:absolute;z-index:3;left:50%;top:11px;width:30%;height:4.2%;max-height:14px;margin-left:-15%;border-radius:20px;background:#000}
/* motion: only after the second screen has loaded (luxe.js adds .hx-go) */
.hx.hx-go .hx-s1{animation:hxA 16s cubic-bezier(.45,0,.2,1) infinite}
.hx.hx-go .hx-s2{animation:hxB 16s cubic-bezier(.45,0,.2,1) infinite}
.hx.hx-go .mob .hx-s1{animation-name:hxAm}.hx.hx-go .mob .hx-s2{animation-name:hxBm}
@keyframes hxA{0%,8%{opacity:1;transform:translate3d(0,0,0)}40%,44%{opacity:1;transform:translate3d(0,-42%,0)}50%{opacity:0;transform:translate3d(0,-42%,0)}51%,96%{opacity:0;transform:translate3d(0,0,0)}100%{opacity:1;transform:translate3d(0,0,0)}}
@keyframes hxB{0%,46%{opacity:0;transform:translate3d(0,0,0)}50%,58%{opacity:1;transform:translate3d(0,0,0)}90%,94%{opacity:1;transform:translate3d(0,-42%,0)}100%{opacity:0;transform:translate3d(0,-42%,0)}}
@keyframes hxAm{0%,8%{opacity:1;transform:translate3d(0,0,0)}40%,44%{opacity:1;transform:translate3d(0,-38%,0)}50%{opacity:0;transform:translate3d(0,-38%,0)}51%,96%{opacity:0;transform:translate3d(0,0,0)}100%{opacity:1;transform:translate3d(0,0,0)}}
@keyframes hxBm{0%,46%{opacity:0;transform:translate3d(0,0,0)}50%,58%{opacity:1;transform:translate3d(0,0,0)}90%,94%{opacity:1;transform:translate3d(0,-38%,0)}100%{opacity:0;transform:translate3d(0,-38%,0)}}
.hx .chip{box-shadow:0 18px 36px -18px rgba(0,0,0,.9),0 0 0 1px rgba(231,185,143,.12)}
.hx .chip.c1{top:14%;left:-6%;animation:hxfloat 6s ease-in-out infinite alternate}
.hx .chip.c2{bottom:1%;left:4%;animation:hxfloat 7s ease-in-out -2s infinite alternate}
@keyframes hxfloat{from{translate:0 0}to{translate:0 -8px}}
.hx .clabel{right:34%;top:-13px;box-shadow:0 10px 24px -10px rgba(0,0,0,.8)}
@media (max-width:640px){
 .hero .dev.hx{padding:0 9% 9% 0}
 .hx .lap{border-radius:11px 11px 4px 4px;padding:6px 6px 0}
 .hx .lap:before{display:none}
 .hx .bez{border-radius:5px 5px 0 0}
 .hx-bar{height:13px;gap:3px;padding:0 6px}.hx-bar i{width:4px;height:4px}.hx-url{height:6px}
 .hx-base{bottom:-9px;height:9px;border-radius:2px 2px 10px 10px}.hx-base i{height:3px}
 .hx .mob{width:29%;padding:3px;border-radius:18px}
 .hx .mob .scr{border-radius:15px}
 .hx-isl{top:6px;height:8px}
 .hx .chip.c1{left:-3%;top:5%}
}
@media (prefers-reduced-motion:reduce){.hx .hx-halo,.hx .chip,.hx.hx-go .hx-s{animation:none!important}}

/* ===== compact $249 offer card under hero (finish 25 Oct 2026) ===== */
.lxo{padding:0 0 8px;margin-top:-56px;position:relative;z-index:2}
.lxo-card{display:grid;grid-template-columns:1fr auto;gap:22px 40px;align-items:center;padding:26px 30px;border-radius:22px;background:linear-gradient(135deg,rgba(201,139,90,.16),rgba(23,19,15,.92) 46%),#17130f;border:1px solid rgba(231,185,143,.28);box-shadow:0 30px 70px -40px rgba(0,0,0,.95),inset 0 1px 0 rgba(255,255,255,.05)}
.lxo .eyebrow{margin:0 0 8px;font-size:12px}
.lxo-h{font-family:var(--hf);font-size:clamp(21px,2.3vw,28px);line-height:1.15;letter-spacing:-.02em;margin:0 0 8px;color:#fff;font-weight:650}
.lxo-p{margin:0;color:var(--mut);font-size:15px;max-width:46em}
.lxo-c{display:flex;flex-direction:column;align-items:center;gap:10px}
.lxo-more{font-size:14px;font-weight:600;color:var(--a2);text-underline-offset:3px}
@media (max-width:860px){.lxo-card{grid-template-columns:1fr}.lxo-c{align-items:stretch}.lxo-c .btn{width:100%}.lxo-more{align-self:center}}
@media (max-width:640px){.lxo{margin-top:-40px}.lxo-card{padding:22px 18px;border-radius:18px}.lxo-p{font-size:14.5px}}
/* end-of-reel button (last scene) */
.scn .lnb{margin-top:10px}
.reel.is-scrub .scn .lnb{padding:6px 0 10px;margin-top:6px}
.reel.is-scrub .scn.on .ln:nth-child(4)>span{transition-delay:.24s}
/* AI disclosure tag: always legible (darker backing) */
.reel.is-scrub .reel-tag{background:rgba(10,8,7,.78);color:rgba(244,236,226,.92);padding:5px 10px;border-radius:999px;border:1px solid rgba(244,236,226,.14);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);text-shadow:none}
@media (max-width:640px){
 .reel.is-scrub .reel-track{height:calc(var(--n,5) * 48vh + 100vh)}
 .reel.is-scrub .reel-tag{left:20px;right:auto;top:122px;bottom:auto;font-size:10.5px;padding:4px 9px}
 .reel.is-scrub .scn .lnb .btn{width:auto}
}
.lxo{margin-top:0;padding:0 0 24px}.hero{padding-bottom:72px}
@media (max-width:640px){.lxo{margin-top:0;padding-bottom:16px}.hero{padding-bottom:48px}}

/* ===== quick contact block (staged only) ===== */
.qc{padding:96px 0 24px}
.qc-head{max-width:760px;margin-bottom:34px}
.qc-head h2{font-size:clamp(30px,4vw,52px);letter-spacing:-.03em}
.qc-grid{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:18px}
.qc-card{position:relative;display:flex;flex-direction:column;gap:6px;padding:26px 24px;border-radius:22px;text-decoration:none;color:var(--ink);background:linear-gradient(160deg,rgba(201,139,90,.10),rgba(23,19,15,.95) 55%),#17130f;border:1px solid rgba(231,185,143,.22);box-shadow:0 30px 60px -40px rgba(0,0,0,.95),inset 0 1px 0 rgba(255,255,255,.04);transition:transform .35s var(--ease),border-color .35s,box-shadow .35s;overflow:hidden}
.qc-card:before{content:"";position:absolute;inset:-1px;border-radius:inherit;background:radial-gradient(400px 160px at 0% 0%,rgba(231,185,143,.18),transparent 60%);opacity:0;transition:opacity .4s;pointer-events:none}
a.qc-card:hover,.qc-card:focus-within{transform:translateY(-4px);border-color:rgba(231,185,143,.5);box-shadow:0 40px 70px -40px rgba(0,0,0,.95),0 0 0 1px rgba(231,185,143,.12)}
a.qc-card:hover:before,.qc-card:focus-within:before{opacity:1}
.qc-ic{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:linear-gradient(145deg,#e7b98f,#a96a3f);color:#120f0d;margin-bottom:10px;box-shadow:0 10px 24px -12px rgba(201,139,90,.9)}
.qc-ic .i{width:22px;height:22px}
.qc-k{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--a2);font-weight:700}
.qc-v{font-family:var(--hf);font-size:clamp(24px,2.4vw,30px);line-height:1.1;letter-spacing:-.01em;color:#fff;font-weight:650;white-space:nowrap}
.qc-go{margin-top:auto;padding-top:10px;font-size:14px;color:var(--mut)}
.qc-form{gap:8px}
.qc-l{display:grid;gap:8px;font-size:14px;color:var(--mut);font-weight:500}
.qc-row{display:flex;gap:8px}
.qc-row input{flex:1;min-width:0;background:rgba(10,8,7,.6);border:1.5px solid rgba(244,236,226,.16);color:#fff;border-radius:999px;padding:12px 18px}
.qc-row input::placeholder{color:rgba(244,236,226,.4)}
.qc-row .btn{padding:12px 24px;min-height:48px}
.qc-form .small{margin-top:4px}
@media (max-width:1060px){.qc-grid{grid-template-columns:1fr 1fr}.qc-form{grid-column:1/-1}}
@media (max-width:640px){.qc{padding:68px 0 8px}.qc-grid{grid-template-columns:1fr 1fr;gap:12px}.qc-card{padding:20px 16px;border-radius:18px}.qc-v{font-size:19px}.qc-ic{width:40px;height:40px;border-radius:12px}.qc-row{flex-direction:column}.qc-row .btn{width:100%}
 .mcta .btn.g{width:48px}}
.qc-sub{margin:-6px 0 0;color:var(--mut);font-size:17px;max-width:40em}
.qc-form .qc-l input{background:rgba(10,8,7,.6);border:1.5px solid rgba(244,236,226,.16);color:#fff;border-radius:999px;padding:12px 18px}
/* ===== floating call/text button (mobile <=768px) ===== */
.fab{display:none}
@media (max-width:768px){
 .fab{display:block;position:fixed;right:calc(14px + env(safe-area-inset-right));bottom:calc(10px + env(safe-area-inset-bottom));z-index:60}
 .fab-btn{width:52px;height:52px;border-radius:50%;border:1px solid rgba(231,185,143,.55);display:grid;place-items:center;cursor:pointer;color:#120f0d;background:linear-gradient(145deg,#f0c9a2,#c98b5a 55%,#a96a3f);box-shadow:0 14px 30px -10px rgba(0,0,0,.9),0 0 0 4px rgba(201,139,90,.16);transition:transform .2s var(--ease)}
 .fab-btn .i{width:24px;height:24px}
 .fab.open .fab-btn{transform:rotate(-12deg) scale(.96)}
 .fab-menu{position:absolute;right:0;bottom:64px;min-width:210px;display:grid;gap:6px;padding:8px;border-radius:18px;background:rgba(23,19,15,.97);border:1px solid rgba(231,185,143,.3);box-shadow:0 30px 60px -20px rgba(0,0,0,.95);transform-origin:100% 100%;animation:fabin .22s var(--ease)}
 .fab-menu[hidden]{display:none}
 .fab-menu a{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;text-decoration:none;color:#f4ece2;font-size:15px;min-height:48px}
 .fab-menu a:hover,.fab-menu a:focus-visible{background:rgba(231,185,143,.12)}
 .fab-menu a .i{width:22px;height:22px;color:var(--a2)}
 .fab-menu b{display:block;font-size:16px;color:#fff}
 .mcta{padding-right:calc(80px + env(safe-area-inset-right))!important}
 body.home footer{padding-bottom:calc(110px + env(safe-area-inset-bottom))}
}
@keyframes fabin{from{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.fab-menu{animation:none}.fab-btn{transition:none}}
@media (max-width:768px){footer{padding-bottom:calc(96px + env(safe-area-inset-bottom))}body.home footer{padding-bottom:calc(110px + env(safe-area-inset-bottom))}}

/* ===== hero offer panel (appeal round, staged 25 Oct 2026) ===== */
.hero h1{font-size:clamp(44px,5.3vw,78px);margin-bottom:22px}
.hoff{position:relative;display:grid;grid-template-columns:auto 1fr;gap:0;margin:0 0 26px;border-radius:24px;overflow:hidden;background:linear-gradient(135deg,rgba(201,139,90,.22),rgba(23,19,15,.94) 55%),#17130f;border:1px solid rgba(231,185,143,.38);box-shadow:0 40px 80px -40px rgba(0,0,0,.95),0 0 0 6px rgba(201,139,90,.06),inset 0 1px 0 rgba(255,255,255,.06);max-width:600px}
.hoff:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,236,210,.10) 45%,transparent 60%);background-size:250% 100%;animation:hoffsheen 7s ease-in-out 1.5s infinite;pointer-events:none}
@keyframes hoffsheen{0%{background-position:120% 0}55%,100%{background-position:-120% 0}}
.hoff-p{display:flex;flex-direction:column;justify-content:center;padding:20px 26px 20px 24px;border-right:1px solid rgba(231,185,143,.22);background:radial-gradient(160px 120px at 30% 40%,rgba(231,185,143,.18),transparent 70%)}
.hoff-k{font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:700;color:var(--a2)}
.hoff-n{font-family:var(--hf);font-weight:700;font-size:clamp(58px,5.6vw,84px);line-height:.92;letter-spacing:-.045em;margin:6px 0 2px;background:linear-gradient(100deg,#fbe3c4,#e7b98f 40%,#c98b5a 75%,#f0c9a2);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hoff-u{font-size:13px;color:var(--mut);letter-spacing:.06em}
.hoff-t{padding:20px 22px;display:flex;flex-direction:column;justify-content:center;gap:14px}
.hoff-t p{margin:0;font-size:15.5px;line-height:1.5;color:rgba(244,236,226,.88)}
.hoff-c{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.hoff-c .btn{padding:12px 22px;min-height:46px}
.hoff-more{font-size:14px;font-weight:600;color:var(--a2);text-underline-offset:3px}
.hero .lead{margin-bottom:24px}
@media (max-width:640px){
 .hero{padding-top:28px}
 .hero h1{font-size:clamp(40px,11.2vw,54px);margin-bottom:18px}
 .hoff{grid-template-columns:1fr;border-radius:20px;margin-bottom:24px}
 .hoff-p{flex-direction:row;align-items:baseline;flex-wrap:wrap;gap:4px 12px;padding:16px 18px 4px;border-right:0}
 .hoff-k{flex-basis:100%}
 .hoff-n{font-size:64px;margin:2px 0 0}
 .hoff-t{padding:6px 18px 18px;gap:12px}
 .hoff-t p{font-size:14.5px}
 .hoff-c .btn{width:100%}
 .hoff-more{margin:0 auto}
}
@media (prefers-reduced-motion:reduce){.hoff:before{animation:none;display:none}}
@media (min-width:1061px){.hero .wrap{align-items:start}.hero .dev.hx{margin-top:48px}}
@media (max-width:640px){.hoff-p{justify-content:flex-start;text-align:left}}

/* ===== appeal round 2 (25 Oct 2026) ===== */
.hoff-d{display:inline-block;margin-top:8px;font-size:13px;font-weight:650;color:#f4ece2;letter-spacing:.02em;padding:4px 10px;border-radius:999px;border:1px solid rgba(231,185,143,.35);background:rgba(231,185,143,.08);white-space:nowrap;align-self:flex-start}
@media (max-width:640px){.hoff-d{margin:0 0 0 auto;align-self:center}}
/* featured work card (landscaper) */
.wk-ft{grid-column:1/-1;display:grid;grid-template-columns:1.35fr 1fr;align-items:stretch}
.wk-ft .stage{display:flex;align-items:center;padding:40px 44px 34px}
.wk-ft .stage .dev{width:100%}
.wk-ft .cap{justify-content:center;padding:32px 36px}
.wk-ft h3{font-size:30px}
.wk-ft .go{margin-top:8px}
@media (max-width:640px){.wk-ft{grid-template-columns:1fr}.wk-ft .stage{padding:34px 30px 26px}.wk-ft .cap{padding:20px 24px 24px}.wk-ft h3{font-size:22px}}
/* FAB: docks into the sticky bar on home; never floats over text */
@media (max-width:768px){
 .fab{transition:opacity .2s ease,transform .25s ease,visibility .25s}
 .fab.off{opacity:0;visibility:hidden;transform:translateY(120%);pointer-events:none}
 body:not(:has(.mcta)) .fab:before{content:"";position:fixed;left:0;right:0;bottom:0;height:calc(72px + env(safe-area-inset-bottom));background:rgba(16,13,11,.94);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:-1;pointer-events:none}
 body:not(:has(.mcta)) main{padding-bottom:84px}
}
@media (max-width:768px) and (prefers-reduced-motion:reduce){.fab{transition:none}}
/* FAB always visible on mobile (25 Oct 2026, r3): when the sticky bar is hidden the button floats on its own over a slim reserved strip */
@media (max-width:768px){
 .fab,.fab.off{opacity:1;visibility:visible;transform:none;pointer-events:auto}
 .fab-btn{width:54px;height:54px}
 .fab{right:calc(12px + env(safe-area-inset-right));bottom:calc(9px + env(safe-area-inset-bottom))}
 .fab.solo:before{content:"";position:fixed;left:0;right:0;bottom:0;height:calc(72px + env(safe-area-inset-bottom));background:rgba(16,13,11,.94);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:-1;pointer-events:none}
 .hero{padding-bottom:calc(96px + env(safe-area-inset-bottom))}
 #contact,#quick-contact{scroll-margin-bottom:84px}
 #contact .wrap{padding-bottom:84px}
}

/* ===== hero stage (26 Oct 2026 r1): offer + concept devices in one first-screen composition; mobile transitions ===== */
/* desktop + small laptop: one 12-col stage, laptop sits behind the offer panel */
@media (min-width:861px){
 .hero{padding-top:56px}
 .hero .wrap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;row-gap:0;align-items:start}
 .hero .wrap>div:first-child{display:contents}
 .hero h1{grid-column:1/7;grid-row:1;position:relative;z-index:3;margin-bottom:26px}
 .hero .dev.hx{grid-column:7/13;grid-row:1/3;align-self:end;position:relative;z-index:1;margin:0 -4% 34px -10%;max-width:none;width:auto;padding:0 12% 9% 0}
 .hero .hoff{grid-column:1/9;grid-row:2;position:relative;z-index:4;max-width:none;width:100%;margin:0 0 30px;background:linear-gradient(135deg,rgba(201,139,90,.30),rgba(23,19,15,.80) 52%,rgba(16,13,11,.88)),rgba(23,19,15,.55);-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2);box-shadow:0 50px 90px -40px rgba(0,0,0,.98),0 0 0 6px rgba(201,139,90,.07),0 0 60px -20px rgba(201,139,90,.35),inset 0 1px 0 rgba(255,255,255,.08)}
 .hero .hoff-p{padding:22px 30px 22px 28px}
 .hero .hoff-n{font-size:clamp(64px,6.4vw,96px)}
 .hero .hoff-t{padding:22px 26px}
 .hero .lead,.hero .ctas,.hero .micro,.hero .facts{grid-column:1/8;position:relative;z-index:3}
 .hero .lead{grid-row:3}.hero .ctas{grid-row:4}.hero .micro{grid-row:5}.hero .facts{grid-row:6}
 .hx .chip.c1{top:6%;left:auto;right:4%}
 .hx .chip.c2{bottom:auto;top:34%;left:auto;right:-2%}
 .hx .clabel{right:auto;left:30%;top:-13px}
 .hero .dev.hx{margin-top:0}
}
@media (min-width:861px) and (max-width:1060px){
 .hero h1{font-size:clamp(40px,5.2vw,54px);grid-column:1/7}
 .hero .dev.hx{grid-column:7/13;margin:0 0 30px -12%;padding-right:13%}
 .hero .hoff{grid-column:1/10}
 .hero .hoff-n{font-size:64px}
 .hero .hoff-t p{font-size:14.5px}
 .hx .chip.c2{display:none}
}
/* tablet + phone: headline, then the devices, then the offer panel layered over the bottom of the devices */
@media (max-width:860px){
 .hero .wrap{display:flex;flex-direction:column;align-items:stretch;gap:0}
 .hero .wrap>div:first-child{display:contents}
 .hero h1{order:1;margin-bottom:22px}
 .hero .dev.hx{order:2;position:relative;z-index:1;width:100%;max-width:560px;margin:0 auto}
 .hero .hoff{order:3;position:relative;z-index:3;margin:-30px 0 24px;max-width:none;background:linear-gradient(135deg,rgba(201,139,90,.30),rgba(23,19,15,.84) 52%,rgba(16,13,11,.92)),rgba(23,19,15,.6);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 -24px 60px -30px rgba(0,0,0,.9),0 40px 80px -40px rgba(0,0,0,.95),0 0 0 5px rgba(201,139,90,.07),inset 0 1px 0 rgba(255,255,255,.08)}
 .hero .lead{order:4}.hero .ctas{order:5}.hero .micro{order:6}.hero .facts{order:7}
 .hx .chip.c2{bottom:auto;top:40%;left:auto;right:-2%}
}
@media (max-width:640px){
 .hero{padding-top:22px}
 .hero h1{font-size:clamp(38px,10.6vw,50px);margin-bottom:18px}
 .hero .dev.hx{padding:0 10% 8% 0}
 .hero .hoff{margin-top:-22px}
 .hx .chip.c1{top:4%;left:-2%}
 .hx .chip.c2{top:auto;bottom:calc(24% - 20px);right:auto;left:-2%;font-size:11px;padding:6px 9px}
}
/* reel wipes: transform-only (no clip-path repaint), same on every screen size */
.reel.is-scrub .reel-list>li{overflow:hidden;will-change:transform}
.reel.is-scrub .scn{clip-path:none!important;will-change:transform}
.reel.is-scrub .reel-list>li:not(:first-child){transform:translate3d(0,100%,0)}
.reel.is-scrub .reel-list>li:not(:first-child) .scn{transform:translate3d(0,-100%,0)}
/* mobile: give each trade the same long scroll as desktop instead of flying past */
@media (max-width:640px){
 .reel.is-scrub .reel-track{height:calc(var(--n,5) * 105vh + 100vh);height:calc(var(--n,5) * 105svh + 100svh)}
}
/* mobile reveals: a touch more travel so they read as a wipe-up, still transform + opacity only */
@media (max-width:860px){
 .lx-js [data-rv]{transform:translate3d(0,44px,0) scale(.985)}
 .lx-js [data-rv].in{transform:none}
}
@media (prefers-reduced-motion:reduce){
 .hero .dev.hx,.hero .dev.hx .mob{translate:none!important}
 .reel.is-scrub .reel-list>li,.reel.is-scrub .scn{transform:none!important}
}

/* ===== "wow" pass (26 Oct 2026): video reel, copper light-sweeps, word reveals, section wipes ===== */
/* reel videos (muted loops) over their poster */
.scn video{display:none}
.reel.is-scrub .scn video{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--fx,62%) 50%;opacity:0;transition:opacity .9s var(--ease);pointer-events:none}
.reel.is-scrub .scn.has-vid video{opacity:1}
@media (max-width:640px){.reel.is-scrub .scn img.poster,.reel.is-scrub .scn video{object-position:50% 50%}}
.reel.is-scrub .reel-list>li>.edge{position:absolute;left:0;right:0;top:0;height:26vh;z-index:4;pointer-events:none;opacity:0;background:linear-gradient(180deg,rgba(255,232,204,.95) 0,rgba(240,196,150,.7) 2px,rgba(201,139,90,.30) 14%,rgba(201,139,90,.08) 48%,transparent 100%);mix-blend-mode:screen}
.reel.is-scrub .reel-tag{will-change:transform;transition:none}
.r-sweep,.r-bloom{position:absolute;pointer-events:none;z-index:4;mix-blend-mode:screen;opacity:0}
.r-sweep{top:-25%;bottom:-25%;left:0;width:42%;background:linear-gradient(90deg,transparent,rgba(231,185,143,0) 18%,rgba(255,220,182,.62) 50%,rgba(231,185,143,0) 82%,transparent);will-change:transform,opacity}
.r-bloom{inset:0;background:radial-gradient(ellipse 70% 60% at 55% 50%,rgba(255,224,190,.8),rgba(201,139,90,.32) 42%,transparent 72%);will-change:opacity}
.reel.is-scrub li:first-child .scn .media{will-change:transform,opacity}
/* hero: one copper light-sweep and warm bloom over the devices on load; devices resolve sharp. Labels and chips sit above it. */
.hx-sweep,.hx-bloom{position:absolute;pointer-events:none;z-index:2;mix-blend-mode:screen;opacity:0}
.hx-sweep{top:-8%;bottom:-8%;left:0;width:30%;background:linear-gradient(90deg,transparent,rgba(231,185,143,0) 15%,rgba(255,222,186,.66) 50%,rgba(231,185,143,0) 85%,transparent);animation:hxsweep 1.8s cubic-bezier(.65,0,.35,1) .5s both}
.hx-bloom{inset:-6% -4%;background:radial-gradient(closest-side,rgba(255,224,190,.6),rgba(201,139,90,.2) 55%,transparent);animation:hxbloom 1.7s ease-out 1s both}
@keyframes hxsweep{0%{transform:translate3d(-140%,0,0) skewX(-20deg);opacity:0}14%{opacity:1}86%{opacity:1}100%{transform:translate3d(380%,0,0) skewX(-20deg);opacity:0}}
@keyframes hxbloom{0%{opacity:0;transform:scale(.82)}32%{opacity:.9}100%{opacity:0;transform:scale(1.16)}}
.hx-wow .lap>.bez,.hx-wow .mob>.scr{animation:hxres 1.6s cubic-bezier(.22,.8,.2,1) .35s both}
@keyframes hxres{from{transform:scale(1.06);opacity:.35}to{transform:none;opacity:1}}
.hx .clabel,.hx .chip{z-index:3}
/* slower, richer reveals */
.lx-js [data-rv]{opacity:0;transform:translate3d(0,48px,0) scale(.985);transition:opacity 1.3s var(--ease),transform 1.5s var(--ease);transition-delay:var(--d,0s)}
.lx-js [data-rv].in{opacity:1;transform:none}
/* heading words rise out of a mask */
.lx-split .lx-m{display:inline-block;overflow:clip;vertical-align:top;padding-bottom:.12em;margin-bottom:-.12em}
.lx-split .lx-m>span{display:inline-block;transform:translate3d(0,110%,0);transition:transform .45s var(--ease)}
.lx-split.in .lx-m>span{transform:none}
/* copper light-sweep across key panels as they arrive */
.lx-swp{position:relative;overflow:hidden}
.lx-gl{position:absolute;top:-30%;bottom:-30%;left:0;width:42%;pointer-events:none;z-index:6;background:linear-gradient(90deg,transparent,rgba(231,185,143,0) 18%,rgba(255,224,190,.24) 50%,rgba(231,185,143,0) 82%,transparent);mix-blend-mode:screen;transform:translate3d(-170%,0,0) skewX(-18deg)}
.lx-swp.in .lx-gl{animation:glsw 2.1s cubic-bezier(.65,0,.35,1) .45s both}
@keyframes glsw{to{transform:translate3d(380%,0,0) skewX(-18deg)}}
/* section wipes: dark bands open from an inset rounded card to full-bleed (scroll-linked, transform only) */
.lx-wipe{position:relative;isolation:isolate;background:none!important;border-color:transparent!important}
.lx-wipe>.lx-wbg{position:absolute;inset:0;z-index:-1;pointer-events:none;transform:scale3d(calc(.9 + .1 * var(--k,0)),1,1);border-radius:calc(56px * (1 - var(--k,0)));will-change:transform}
section.alt>.lx-wbg{background:var(--dk2)}
section.band>.lx-wbg{background:radial-gradient(900px 500px at 90% 0%,rgba(201,139,90,.2),transparent 60%),#0b0908;box-shadow:inset 0 1px 0 var(--line),inset 0 -1px 0 var(--line)}
@media (prefers-reduced-motion:reduce){
 .hx-sweep,.hx-bloom,.r-sweep,.r-bloom,.lx-gl,.edge{display:none!important}
 .lx-split .lx-m>span{transform:none!important}
 .lx-wipe>.lx-wbg{transform:none!important;border-radius:0!important}
}

/* 26 Oct upgrade: 44px tap targets on small links (layout unchanged) */
.hoff-more{display:inline-flex;align-items:center;min-height:44px}
footer a{display:inline-block;padding:12px 4px;margin:-12px -4px}
