:root{--ink:#0a0a0a;--coal:#141414;--char:#1d1d1d;--cream:#fbf1e2;--muted:#cdc6ba;--lead:var(--lead);--glass:rgba(16,16,16,.66);--amber:#ffb81c;--orange:#f59a00;--burnt:#c25a05;--line:rgba(255,224,180,.15);
--display:'Archivo','Archivo Black',Impact,'Arial Black',sans-serif;--serif:'Instrument Serif','Cormorant Garamond',Georgia,serif;--body:'Space Grotesk','Helvetica Neue',Arial,sans-serif;
--gut:max(20px,env(safe-area-inset-left,0px));--gutr:max(20px,env(safe-area-inset-right,0px));--ease:cubic-bezier(.16,1,.3,1);color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ink);color:var(--cream);font-family:var(--body);font-size:17px;line-height:1.6;overflow-x:clip;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
:focus-visible{outline:2px solid var(--amber);outline-offset:3px}::selection{background:var(--amber);color:#1a0a02}
.wrap{max-width:1320px;margin:0 auto;padding-left:var(--gut);padding-right:var(--gutr)}
.display{font-family:var(--display);font-stretch:118%;font-weight:800;letter-spacing:-.025em;line-height:.96;text-wrap:balance;margin:0}
.it{background:linear-gradient(180deg,#ffd27a 0%,#f5a623 55%,#d87408 100%);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.06em}
.eyebrow{font-weight:500;font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;color:var(--amber);display:flex;align-items:center;gap:.9rem}
.eyebrow::before{content:"";width:2.4rem;height:1px;background:currentColor;flex:none}
.lead{font-size:clamp(1.05rem,1.5vw,1.25rem);color:var(--lead);max-width:34rem}
.muted{color:var(--muted)}
.ln{display:block;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em}.ln>span{display:block}
.js .ln>span{transform:translateY(115%);transition:transform 1.2s var(--ease)}
.js .in .ln>span,.js .on .ln>span,.js .ln.in>span{transform:none}
.js .ln:nth-child(2)>span{transition-delay:.09s}.js .ln:nth-child(3)>span{transition-delay:.18s}
.js [data-fade]{opacity:0;transform:translateY(24px);transition:opacity 1s .15s ease,transform 1.1s .15s var(--ease)}
.js .in [data-fade],.js .on [data-fade],.js [data-fade].in{opacity:1;transform:none}
.js [data-fade][data-d="1"]{transition-delay:.25s}.js [data-fade][data-d="2"]{transition-delay:.35s}.js [data-fade][data-d="3"]{transition-delay:.45s}
.js .clip{clip-path:inset(10% 10% 10% 10% round 28px);transition:clip-path 1.5s var(--ease)}.js .clip.in{clip-path:inset(0 0 0 0 round 28px)}
.btn{position:relative;display:inline-flex;align-items:center;gap:.7rem;padding:.95rem 1.5rem;border-radius:999px;font-weight:600;font-size:.96rem;background:linear-gradient(180deg,#ffc448,#e8820c);color:#1f0c03;box-shadow:0 10px 34px rgba(232,130,12,.32);will-change:transform;white-space:nowrap}
.btn i{width:.45rem;height:.45rem;border-radius:50%;background:#1f0c03;transition:transform .5s var(--ease)}.btn:hover i{transform:scale(2.2)}
.btn.line{background:none;color:var(--cream);box-shadow:none;border:1px solid rgba(255,235,205,.35)}.btn.line i{background:var(--amber)}
.btn.dark{background:#170a03;color:var(--cream);box-shadow:0 14px 40px rgba(40,10,0,.35)}.btn.dark i{background:var(--amber)}
.tlink{display:inline-flex;gap:.6rem;align-items:center;font-weight:600;border-bottom:1px solid var(--amber);padding-bottom:.25rem}
.tlink::after{content:"\2192";transition:transform .4s var(--ease)}.tlink:hover::after{transform:translateX(6px)}
.sec{padding-block:clamp(5rem,11vw,10rem)}
.h2{font-size:clamp(2.4rem,6vw,5.4rem)}

/* loader */
.loader{position:fixed;inset:0;z-index:200;background:var(--ink);display:grid;place-items:center;transition:transform 1.1s var(--ease),visibility 0s 1.1s}
.loader.done{transform:translateY(-101%);visibility:hidden}
.loader .in2{display:grid;justify-items:center;gap:1.2rem}.loader img{width:84px}
.loader b{font-family:var(--display);font-stretch:125%;font-weight:900;font-size:clamp(3.4rem,12vw,7rem);line-height:1;font-variant-numeric:tabular-nums}
.loader .lbar{width:min(56vw,240px);height:1px;background:var(--line)}.loader .lbar i{display:block;height:100%;background:var(--amber);transform:scaleX(0);transform-origin:left}

/* cursor */
.cur{position:fixed;left:0;top:0;z-index:150;pointer-events:none;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--amber);display:none;transition:width .35s var(--ease),height .35s var(--ease),margin .35s var(--ease),background .3s}
.cur span{position:absolute;inset:0;display:grid;place-items:center;font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#1f0c03;opacity:0}
.cur.big{width:56px;height:56px;margin:-28px 0 0 -28px;background:rgba(245,166,35,.22)}
.cur.view{width:88px;height:88px;margin:-44px 0 0 -44px;background:var(--amber)}.cur.view span{opacity:1}
@media (pointer:fine){.cur{display:block}}

/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:80;padding:calc(env(safe-area-inset-top,0px) + 22px) max(var(--gutr),calc(50vw - 660px + 20px)) 14px max(var(--gut),calc(50vw - 660px + 20px));display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;transition:transform .6s var(--ease)}
.nav.hide{transform:translateY(-120%)}
.brand{display:flex;align-items:center;gap:.6rem;justify-self:start}.brand img{height:38px;width:auto}
.brand span{font-family:var(--display);font-stretch:118%;font-weight:800;font-size:1.2rem;letter-spacing:-.02em}
.navpill{position:relative;display:flex;gap:.2rem;padding:.35rem;border-radius:999px;background:var(--glass);border:1px solid var(--line);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3)}
.navpill a{position:relative;z-index:1;padding:.55rem 1.05rem;border-radius:999px;font-size:.9rem;font-weight:500;transition:color .3s}
.navpill a.cur-page{color:var(--amber)}
.navpill .blob{position:absolute;z-index:0;top:.35rem;bottom:.35rem;left:0;width:0;border-radius:999px;background:rgba(255,224,180,.12);opacity:0;transition:transform .5s var(--ease),width .5s var(--ease),opacity .3s}
.nav .right{justify-self:end;display:flex;align-items:center;gap:1.1rem}
.nav .right .login{font-size:.9rem;font-weight:500;opacity:.85}
.nav .btn{padding:.72rem 1.15rem;font-size:.88rem}
.burger{display:none;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:rgba(20,13,9,.55);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);position:relative}
.burger i{position:absolute;left:14px;right:14px;height:1.5px;background:var(--cream);transition:transform .5s var(--ease),top .5s var(--ease)}
.burger i:first-child{top:19px}.burger i:last-child{top:26px}
.menu-open .burger i:first-child{top:22px;transform:rotate(45deg)}.menu-open .burger i:last-child{top:22px;transform:rotate(-45deg)}
.menu{position:fixed;inset:0;z-index:75;background:var(--coal);clip-path:circle(0% at calc(100% - 44px) 40px);transition:clip-path .9s var(--ease);display:flex;flex-direction:column;justify-content:space-between;padding:calc(env(safe-area-inset-top,0px) + 6.5rem) var(--gutr) calc(env(safe-area-inset-bottom,0px) + 2rem) var(--gut);overflow:auto}
.menu-open .menu{clip-path:circle(150% at calc(100% - 44px) 40px)}
.menu nav{display:flex;flex-direction:column;gap:.2rem}
.menu nav a{font-family:var(--display);font-stretch:118%;font-weight:800;font-size:clamp(2.1rem,9.5vw,3.6rem);letter-spacing:-.025em;line-height:1.12;display:flex;align-items:baseline;gap:.8rem;opacity:0;transform:translateY(30px);transition:opacity .6s,transform .8s var(--ease)}
.menu nav a small{font-family:var(--body);font-size:.72rem;font-weight:500;letter-spacing:.14em;color:var(--amber)}
.menu nav a.sub{font-family:var(--display);font-stretch:118%;font-weight:800;font-size:clamp(1.5rem,6.5vw,2.2rem);color:var(--muted)}
.menu-open .menu nav a{opacity:1;transform:none}
.menu nav a:nth-child(1){transition-delay:.15s}.menu nav a:nth-child(2){transition-delay:.2s}.menu nav a:nth-child(3){transition-delay:.25s}.menu nav a:nth-child(4){transition-delay:.3s}.menu nav a:nth-child(5){transition-delay:.35s}.menu nav a:nth-child(6){transition-delay:.4s}
.menu .mfoot{display:grid;gap:1rem;margin-top:2rem}.menu .mfoot .row{display:flex;gap:.7rem;flex-wrap:wrap}.menu .mfoot p{margin:0;color:var(--muted);font-size:.92rem}

/* runner */
.runner{position:fixed;left:0;right:0;bottom:0;z-index:70;height:calc(60px + env(safe-area-inset-bottom,0px));pointer-events:none;opacity:0;transition:opacity .6s}
.runner.show{opacity:1}
.runner .trk{position:absolute;left:0;right:0;bottom:env(safe-area-inset-bottom,0px);height:2px;background:rgba(255,220,170,.12)}
.runner .trk i{position:absolute;inset:0;background:linear-gradient(90deg,var(--burnt),var(--amber));transform-origin:left;transform:scaleX(0)}
.runner .dg{position:absolute;left:0;bottom:calc(env(safe-area-inset-bottom,0px) + 2px);width:64px;height:48px;will-change:transform}
.runner .dg img{position:absolute;left:50%;bottom:0;height:44px;width:auto;max-width:none;transform:translateX(-50%);opacity:0;filter:drop-shadow(0 6px 8px rgba(0,0,0,.5))}
.runner .dg img.on{opacity:1}.runner .dg img[data-p="sleep"]{height:28px}.runner .dg img[data-p="sit"]{height:48px}

/* home hero */
.hero{position:relative;height:440vh}
.hstage{position:sticky;top:0;height:100svh;overflow:hidden;background:var(--ink);--H:31vh;--gy:49vh;--cx:50%;--cy:calc(var(--gy) - var(--H)*.56);--r:calc(var(--H)*.5)}
.hframe{position:absolute;inset:0;overflow:hidden;will-change:transform;transform-origin:50% 60%}
#gl,.hfall{position:absolute;inset:0;width:100%;height:100%}.hfall{background-size:cover;background-position:center}
.hshade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,8,6,.8) 0%,rgba(12,8,6,.3) 55%,rgba(12,8,6,.05) 100%),linear-gradient(0deg,rgba(12,8,6,.9) 0%,rgba(12,8,6,0) 45%)}
.hslide{position:absolute;left:0;right:0;bottom:clamp(6rem,14vh,9rem);pointer-events:none}.hslide.on{pointer-events:auto}
.hslide h1,.hslide h2{font-size:clamp(3.4rem,10.6vw,10.5rem);margin:1.1rem 0 1.4rem}

.hslide p{margin:0 0 1.7rem}.hslide .row{display:flex;flex-wrap:wrap;gap:.8rem}
.js .hslide:not(.on) .ln>span{transition-duration:.55s;transition-delay:0s}.js .hslide:not(.on) [data-fade]{transition-duration:.3s;transition-delay:0s}
.hmeta{position:absolute;right:var(--gutr);bottom:clamp(6rem,14vh,9rem);display:flex;flex-direction:column;align-items:flex-end;gap:.7rem;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--lead)}
.hmeta b{font-family:var(--display);font-stretch:118%;font-weight:800;font-size:2.6rem;letter-spacing:0;line-height:1;color:var(--cream)}
.hmeta .dots{display:flex;gap:.4rem}.hmeta .dots i{width:28px;height:1px;background:rgba(255,235,205,.3);transition:background .4s}.hmeta .dots i.on{background:var(--amber)}

/* marquee */
.mq{padding-block:clamp(2.2rem,5vw,4rem) clamp(1.4rem,3vw,2rem);overflow:hidden}
.mq .rowm{display:flex;white-space:nowrap;will-change:transform;font-family:var(--display);font-stretch:118%;font-weight:800;font-size:clamp(3rem,9vw,8.5rem);line-height:1.05;letter-spacing:-.03em}
.mq .rowm span{padding-right:.4em;display:inline-flex;align-items:center;gap:.4em}
.mq .rowm span:nth-child(even){font-family:var(--display);font-stretch:118%;font-weight:800;color:var(--amber);letter-spacing:-.01em}
.mq .rowm span::after{content:"";width:.16em;height:.16em;border-radius:50%;background:var(--amber)}
.mq .also{margin-top:1.4rem;display:flex;flex-wrap:wrap;gap:.5rem 1.6rem;font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.mq .also b{color:var(--amber);font-weight:500}

/* story */
.story .grid{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.story .q{font-family:var(--display);font-stretch:118%;font-weight:800;font-size:clamp(2.4rem,5.4vw,5rem);line-height:1.04;letter-spacing:-.015em;margin:1.4rem 0 2rem}
.story .q .w{opacity:.16;transition:opacity .4s}.story .q .w.lit{opacity:1}
.story .q em{font-style:italic;color:var(--amber)}
.story p{max-width:33rem;color:var(--muted);margin:0 0 1.6rem}
.frame{position:relative;border-radius:28px;overflow:hidden;background:var(--char)}
.frame img{position:absolute;left:0;top:-10%;width:100%;height:120%;object-fit:cover;will-change:transform;max-width:none}
.frame figcaption{position:absolute;left:1.1rem;bottom:1rem;right:1.1rem;font-size:.8rem;letter-spacing:.04em;color:#f4e6d2;text-shadow:0 1px 10px rgba(0,0,0,.6)}
.frame::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(12,8,6,.45),transparent 40%);pointer-events:none}
.story .frame{aspect-ratio:4/5}

/* manifesto */
.mani{padding-block:clamp(5rem,13vw,11rem)}
.mani .grid{display:grid;grid-template-columns:1fr 3.2fr;gap:2rem}
.mani p.big2{font-family:var(--display);font-stretch:112%;font-weight:800;font-size:clamp(1.9rem,4.6vw,4.3rem);line-height:1.08;letter-spacing:-.02em;margin:0}
.mani p.big2 .w{opacity:.14;transition:opacity .35s,color .35s}.mani p.big2 .w.lit{opacity:1}.mani p.big2 .w.hot{color:var(--amber)}
.mani .side{display:flex;flex-direction:column;justify-content:space-between;gap:2rem}.mani .side img{width:min(100%,170px);will-change:transform}
.mani .foot2{display:grid;grid-template-columns:1fr 3.2fr;gap:2rem;margin-top:clamp(2.5rem,6vw,5rem)}.mani .foot2 p{margin:0 0 1.2rem;max-width:36rem;color:var(--muted)}
/* services reel */
.reel{position:relative}
.rstage{position:sticky;top:0;height:100svh;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.rhead{position:absolute;left:0;right:0;top:calc(env(safe-area-inset-top,0px) + 5.6rem);z-index:2}
.rhead .wrap{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem}
.rhead h2{font-size:clamp(1.5rem,3vw,2.6rem)}.rhead .cnt{font-size:.8rem;letter-spacing:.16em;color:var(--muted);font-variant-numeric:tabular-nums}
.rtrack{display:flex;gap:clamp(1.2rem,4vw,5rem);padding-left:max(var(--gut),calc(50vw - 660px + 20px));padding-right:12vw;width:max-content;will-change:transform;align-items:center;margin-top:2rem}
.panel{position:relative;width:min(82vw,1100px);height:min(64svh,620px);flex:none;display:grid;grid-template-columns:1.15fr 1fr}
.panel .ph{position:relative;border-radius:30px;overflow:hidden;background:var(--coal)}
.panel .ph img.pic{position:absolute;left:-12%;top:0;width:124%;height:100%;object-fit:cover;will-change:transform;max-width:none}
.panel .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,8,6,.55),rgba(13,8,6,0) 50%)}
.panel .num{position:absolute;left:1.4rem;bottom:.6rem;z-index:2;font-family:var(--display);font-stretch:125%;font-weight:900;font-size:clamp(4rem,9vw,8.5rem);line-height:1;color:transparent;-webkit-text-stroke:1.5px rgba(255,243,226,.85)}
.panel .pdog{position:absolute;z-index:3;height:auto;max-width:none;will-change:transform;filter:drop-shadow(0 26px 30px rgba(0,0,0,.5));pointer-events:none}
.panel .txt{padding:clamp(1.2rem,3vw,3rem);display:flex;flex-direction:column;justify-content:center;gap:1rem}
.panel .txt h3{font-size:clamp(2.2rem,4.6vw,4.6rem)}
.panel .txt .sub{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:clamp(1.1rem,1.7vw,1.45rem);color:var(--amber);margin:0;letter-spacing:-.01em}
.panel .txt p{margin:0;color:var(--muted);max-width:27rem}
.panel .tags{display:flex;flex-wrap:wrap;gap:.45rem}.panel .tags span{font-size:.8rem;padding:.3rem .8rem;border:1px solid var(--line);border-radius:999px}
.panel.alsop{display:flex;flex-direction:column;justify-content:center;gap:1.4rem;width:min(82vw,760px)}
.panel.alsop h3{font-size:clamp(1.6rem,3vw,2.6rem)}
.panel.alsop .g{display:grid;gap:.9rem}
/* main services stack */
.svc-head{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;flex-wrap:wrap;margin-bottom:clamp(2rem,5vw,4rem)}
.svc-head p{margin:0;max-width:24rem;color:var(--muted)}
.stack{display:grid;gap:clamp(1.2rem,3vw,2.4rem)}
.big{position:sticky;top:clamp(4.5rem,9vh,6.5rem);display:grid;grid-template-columns:1.1fr 1fr;min-height:min(78svh,700px);border-radius:34px;overflow:hidden;background:var(--char);border:1px solid var(--line);will-change:transform}
.big:nth-child(2){top:clamp(5.5rem,11vh,8rem);background:#221209}
.big .ph{position:relative;overflow:hidden;min-height:300px}
.big .ph img{position:absolute;left:0;top:-10%;width:100%;height:120%;object-fit:cover;will-change:transform;max-width:none}
.big .tx{padding:clamp(1.6rem,4vw,4rem);display:flex;flex-direction:column;justify-content:center;gap:1.2rem}
.big .tx h3{font-size:clamp(2.6rem,5.6vw,5.4rem)}
.big .tx .sub{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.1;color:var(--amber);margin:0}
.big .tx p{margin:0;color:var(--muted);max-width:30rem}
.facts{display:grid;gap:0;margin:.4rem 0;border-top:1px solid var(--line)}
.facts div{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--line);font-size:.95rem}
.facts div span:first-child{color:var(--muted)}.facts div span:last-child{font-weight:600;text-align:right}
.big .row{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.also{margin-top:clamp(2.5rem,6vw,5rem)}
.also .eyebrow{margin-bottom:1.4rem}
.also .g{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.mini{position:relative;display:flex;gap:1.1rem;align-items:center;padding:1.3rem 1.4rem;border:1px solid var(--line);border-radius:22px;transition:border-color .4s,background .4s,transform .6s var(--ease)}
.mini:hover{border-color:rgba(245,166,35,.55);background:rgba(245,166,35,.05);transform:translateY(-4px)}
.mini img{width:64px;height:auto;flex:none;transition:transform .6s var(--ease)}.mini:hover img{transform:rotate(-6deg) scale(1.08)}
.mini h4{margin:0 0 .2rem;font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.12rem;letter-spacing:-.01em}
.mini p{margin:0;font-size:.9rem;color:var(--muted);line-height:1.45}

/* night */
.night{position:relative;min-height:92svh;display:grid;align-items:end;overflow:hidden;background:#07050a}
.night .bg{position:absolute;inset:-8% 0;will-change:transform}.night .bg img{width:100%;height:100%;object-fit:cover;filter:brightness(.5) saturate(.9);max-width:none}
.night::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,rgba(7,5,10,.95) 0%,rgba(7,5,10,.25) 55%,rgba(7,5,10,.55) 100%)}
.night .stars{position:absolute;inset:0;z-index:1;pointer-events:none}
.night .stars i{position:absolute;width:2px;height:2px;border-radius:50%;background:#ffe6b0;animation:tw 3.6s ease-in-out infinite}
@keyframes tw{0%,100%{opacity:.15;transform:scale(.7)}50%{opacity:1;transform:scale(1.3)}}
.night .c{position:relative;z-index:2;padding-block:clamp(5rem,11vw,8rem)}
.night h2{font-family:var(--display);font-stretch:118%;font-weight:800;font-size:clamp(2.4rem,6.4vw,6.4rem);line-height:.98;letter-spacing:-.02em;margin:1.2rem 0 1.6rem;max-width:14ch}
.night h2 em{color:var(--amber)}
.night .cols{display:grid;grid-template-columns:1.2fr 1fr;gap:2rem;align-items:end}
.night .time{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:clamp(1.2rem,2vw,1.6rem);color:var(--lead);text-align:right}

/* proof bento */
.bento{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem}
.cell{position:relative;border:1px solid var(--line);border-radius:26px;padding:clamp(1.3rem,2.4vw,2rem);background:linear-gradient(160deg,rgba(255,224,180,.05),rgba(255,224,180,0) 60%);overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;gap:1.4rem;min-height:13rem;transition:border-color .5s}
.cell:hover{border-color:rgba(245,166,35,.45)}
.cell h3{margin:0;font-family:var(--display);font-stretch:112%;font-weight:700;font-size:clamp(1.2rem,1.8vw,1.5rem);letter-spacing:-.015em}
.cell p{margin:.4rem 0 0;color:var(--muted);font-size:.95rem}
.cell .k{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--amber)}
.c-rate{grid-column:span 5;grid-row:span 2;background:radial-gradient(120% 90% at 0% 0%,rgba(245,166,35,.22),rgba(245,166,35,0) 60%),var(--char)}
.c-rate .n{font-family:var(--display);font-stretch:118%;font-weight:900;font-size:clamp(5rem,12vw,10.5rem);line-height:.8;letter-spacing:-.03em}
.stars5{display:flex;gap:.35rem}.stars5 svg{width:clamp(22px,2.6vw,34px);height:auto;fill:var(--amber);transform:scale(0) rotate(-40deg);transition:transform .7s var(--ease)}
.in .stars5 svg{transform:none}.stars5 svg:nth-child(2){transition-delay:.08s}.stars5 svg:nth-child(3){transition-delay:.16s}.stars5 svg:nth-child(4){transition-delay:.24s}.stars5 svg:nth-child(5){transition-delay:.32s}
.c-a{grid-column:span 4}.c-b{grid-column:span 3}.c-c{grid-column:span 3}.c-d{grid-column:span 4}
.cell .dogi{position:absolute;right:-8px;bottom:-10px;width:120px;opacity:.95;transition:transform .7s var(--ease)}.cell:hover .dogi{transform:translate(-6px,-6px) rotate(-4deg)}
.cell .badge{width:92px;border-radius:14px}

/* reviews wall */
.rev{background:var(--coal);overflow:hidden}
.rev .head{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;flex-wrap:wrap;margin-bottom:clamp(2rem,5vw,3.5rem)}
.wall{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;height:min(78svh,720px);overflow:hidden;-webkit-mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent)}
.col{display:flex;flex-direction:column;gap:1rem;animation:up 46s linear infinite;will-change:transform}
.col:nth-child(2){animation-name:down;animation-duration:54s}.col:nth-child(3){animation-duration:60s}
.wall:hover .col{animation-play-state:paused}
@keyframes up{to{transform:translateY(calc(-50% - .5rem))}}@keyframes down{from{transform:translateY(calc(-50% - .5rem))}to{transform:none}}
.rv{border:1px solid var(--line);border-radius:22px;padding:1.5rem;background:var(--ink);display:grid;gap:1rem}
.wall .rv{transition:transform .6s var(--ease),border-color .4s}.wall .rv:nth-child(odd){transform:rotate(-1.2deg)}.wall .rv:nth-child(even){transform:rotate(1deg)}.wall .rv:hover{transform:rotate(0) scale(1.03);border-color:rgba(245,166,35,.6)}
.rev .ghost5{position:absolute;right:-2vw;top:-4vw;font-family:var(--display);font-stretch:125%;font-weight:900;font-size:clamp(10rem,30vw,30rem);line-height:.8;color:transparent;-webkit-text-stroke:1.5px rgba(255,200,120,.1);pointer-events:none}
.rev{position:relative}
.rv .st{display:flex;gap:.2rem}.rv .st svg{width:15px;fill:var(--amber)}
.rv q{quotes:none;font-size:1rem;line-height:1.55;color:#f1e3cf}
.rv.hl q{font-family:var(--display);font-stretch:108%;font-weight:700;font-size:1.3rem;line-height:1.2;letter-spacing:-.01em;color:var(--cream)}
.rv .by{display:flex;align-items:center;gap:.7rem;font-size:.82rem;color:var(--muted)}
.rv .by i{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--char);border:1px solid var(--line);font-style:normal;font-weight:700;font-size:.8rem;color:var(--amber)}

/* film strip */
.film{padding-block:clamp(4rem,9vw,7rem);overflow:hidden}
.film .head{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;flex-wrap:wrap;margin-bottom:2.2rem}
.strip{display:flex;gap:1rem;width:max-content;will-change:transform;cursor:grab;touch-action:pan-y}
.strip figure{margin:0;width:clamp(200px,24vw,330px);aspect-ratio:4/5;border-radius:20px;overflow:hidden;flex:none;background:var(--char);transition:transform .6s var(--ease)}
.strip figure:nth-child(odd){transform:translateY(22px)}
.strip img{width:100%;height:100%;object-fit:cover;pointer-events:none;transition:transform 1s var(--ease)}.strip figure:hover img{transform:scale(1.07)}

/* steps */
.steps3{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);margin-top:clamp(2rem,5vw,4rem)}
.st3{padding:2rem 2rem 0 0;border-right:1px solid var(--line);padding-left:2rem}.st3:first-child{padding-left:0}.st3:last-child{border-right:0}
.st3 b{font-family:var(--display);font-stretch:118%;font-weight:800;font-size:clamp(3.4rem,6vw,5.4rem);line-height:1;color:var(--amber);display:block;margin-bottom:1.2rem}
.st3 h3{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.35rem;margin:0 0 .5rem;letter-spacing:-.015em}.st3 p{margin:0;color:var(--muted);font-size:.97rem}

/* faq */
.faq .grid{display:grid;grid-template-columns:1fr 1.7fr;gap:clamp(2rem,6vw,6rem);align-items:start}
.faq .left{position:sticky;top:7rem}
.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.8rem}
.chips button{padding:.55rem 1rem;border-radius:999px;border:1px solid var(--line);font-size:.86rem;font-weight:500;transition:background .3s,color .3s,border-color .3s}
.chips button.on{background:var(--amber);color:#1f0c03;border-color:var(--amber)}
.qa{border-top:1px solid var(--line)}.qa:last-child{border-bottom:1px solid var(--line)}
.qa button{width:100%;text-align:left;display:grid;grid-template-columns:2.6rem 1fr auto;gap:.8rem;align-items:center;padding:1.35rem 0;font-family:var(--display);font-stretch:108%;font-weight:700;font-size:clamp(1.02rem,1.6vw,1.3rem);letter-spacing:-.01em}
.qa button small{font-family:var(--display);font-stretch:118%;font-weight:800;font-size:1.1rem;color:var(--amber)}
.qa button i{width:2.2rem;height:2.2rem;border-radius:50%;border:1px solid var(--line);position:relative;transition:transform .6s var(--ease),background .3s}
.qa button i::before,.qa button i::after{content:"";position:absolute;left:50%;top:50%;width:10px;height:1.5px;background:var(--cream);transform:translate(-50%,-50%)}
.qa button i::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .5s var(--ease)}
.qa.open button i{background:var(--amber)}.qa.open button i::before,.qa.open button i::after{background:#1f0c03}.qa.open button i::after{transform:translate(-50%,-50%) rotate(0)}
.qa .a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .6s var(--ease)}.qa.open .a{grid-template-rows:1fr}
.qa .a>div{overflow:hidden}.qa .a p{margin:0 0 1.5rem 3.4rem;color:var(--muted);max-width:40rem}
.qa[hidden]{display:none}

/* cta */
.cta{position:relative;overflow:hidden;color:#1f0c03;background:radial-gradient(90% 120% at 85% 0%,#ffd067 0%,#f5a623 32%,#e8820c 64%,#b54f04 100%)}
.cta .word{position:absolute;left:0;bottom:-.16em;white-space:nowrap;font-size:clamp(6rem,22vw,22rem);color:transparent;-webkit-text-stroke:1.5px rgba(60,20,0,.2);will-change:transform;pointer-events:none}
.cta .grid{position:relative;display:grid;grid-template-columns:1.5fr 1fr;gap:2rem;align-items:center;padding-block:clamp(3.5rem,7vw,6rem)}
.cta h2{font-size:clamp(2.2rem,4.8vw,4.4rem)}
.cta h2 .it{background:none;color:#3a1402;-webkit-text-fill-color:#3a1402}
.cta p{font-size:1.08rem;max-width:30rem;margin:1.1rem 0 1.6rem;font-weight:500}
.cta .row{display:flex;flex-wrap:wrap;gap:.8rem}
.cta .btn.line{color:#1f0c03;border-color:rgba(40,14,2,.5)}.cta .btn.line i{background:#1f0c03}
.cta .jump{justify-self:center;width:min(100%,300px);position:relative}
.cta .jump img{width:100%;animation:leap 3.2s cubic-bezier(.4,0,.2,1) infinite;filter:drop-shadow(0 30px 30px rgba(80,25,0,.4))}
@keyframes leap{0%,100%{transform:translateY(20px) rotate(6deg)}45%{transform:translateY(-22px) rotate(-5deg)}}

/* footer */
.foot{background:#080504;padding-top:clamp(3.5rem,7vw,6rem);overflow:clip;position:relative}
.foot .top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.3fr;gap:2.5rem}
.foot .brandf img{width:66px;margin-bottom:1.1rem}
.foot .brandf p{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.35rem;line-height:1.1;margin:0 0 1.2rem;max-width:16rem}
.foot h5{margin:0 0 1rem;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--amber);font-weight:500}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.foot li,.foot li a{color:#e4d2bb;font-size:.96rem}.foot li a{position:relative}.foot li a:hover{color:var(--amber)}
.foot .sel{user-select:all}
.foot .areas{margin-top:clamp(2.5rem,5vw,4rem);padding-top:1.6rem;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;font-size:.84rem;color:var(--muted)}
.foot .areas b{color:var(--amber);font-weight:500;letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;width:100%}
.foot .giant{font-family:var(--display);font-stretch:125%;font-weight:900;font-size:clamp(4.2rem,18.5vw,20rem);line-height:.86;letter-spacing:-.045em;margin:clamp(2rem,5vw,4rem) 0 0;white-space:nowrap;text-align:center;display:flex;justify-content:center;cursor:default;user-select:none}
.foot .giant span{display:inline-block;background:linear-gradient(180deg,#f5a623,#7a3a06);-webkit-background-clip:text;background-clip:text;color:transparent;will-change:transform;transition:transform .9s var(--ease),filter .6s;transform-origin:50% 100%}
.foot .giant span.hot{transition:transform .18s ease-out,filter .2s;filter:brightness(1.5) saturate(1.2)}
.foot .fdog{position:absolute;left:0;bottom:0;width:clamp(70px,9vw,130px);pointer-events:none;opacity:0;transition:opacity .4s;will-change:transform;z-index:2}
.foot .gw{position:relative}
.foot .legal{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;gap:.6rem 2rem;padding-block:1.2rem calc(4.6rem + env(safe-area-inset-bottom,0px));font-size:.82rem;color:var(--muted);border-top:1px solid var(--line);background:#080504}
.foot .legal a:hover{color:var(--amber)}

/* sub pages */
.phero{position:relative;padding-top:clamp(8rem,16vh,11rem);padding-bottom:clamp(3rem,7vw,6rem);overflow:hidden}
.phero .bgw{position:absolute;left:0;top:clamp(5rem,10vh,7rem);white-space:nowrap;font-size:clamp(7rem,24vw,24rem);color:transparent;-webkit-text-stroke:1px rgba(255,200,120,.13);pointer-events:none;will-change:transform}
.phero .grid{position:relative;display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:end}
.phero h1{font-size:clamp(3rem,8vw,7.6rem);margin:1.2rem 0 1.5rem}
.phero .row{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem}
.phero .frame{aspect-ratio:4/5}
.crumb{font-size:.8rem;color:var(--muted);margin-bottom:1.2rem}.crumb a:hover{color:var(--amber)}
.feat{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:clamp(2rem,5vw,3.5rem)}
.feat .cell{min-height:15rem}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.split.rev2>.frame{order:2}
.split .frame{aspect-ratio:4/5}
.split h2{margin:1rem 0 1.4rem}.split p{color:var(--muted);margin:0 0 1.1rem;max-width:34rem}
.prices{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:clamp(2rem,5vw,3.5rem)}
.price{border:1px solid var(--line);border-radius:26px;padding:1.6rem;display:flex;flex-direction:column;gap:1rem;transition:transform .6s var(--ease),border-color .4s,background .4s}
.price:hover{transform:translateY(-8px);border-color:rgba(245,166,35,.55)}
.price.top{background:linear-gradient(170deg,rgba(245,166,35,.2),rgba(245,166,35,.02) 70%);border-color:rgba(245,166,35,.5)}
.price .k{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--amber)}
.price h3{margin:0;font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.3rem;letter-spacing:-.015em}
.price .amt{font-family:var(--display);font-stretch:118%;font-weight:800;font-size:clamp(2.4rem,3.6vw,3.2rem);line-height:.9}.price .amt small{font-family:var(--body);font-size:.85rem;color:var(--muted);margin-left:.3rem}
.price p{margin:0;font-size:.92rem;color:var(--muted)}
.note{margin-top:1.6rem;padding:1.3rem 1.5rem;border:1px solid var(--line);border-radius:20px;color:var(--muted);font-size:.94rem}
.note b{color:var(--cream)}
.room{position:relative;display:grid;grid-template-columns:4rem 1.2fr 1.2fr auto;gap:1.5rem;align-items:center;padding-block:clamp(1.5rem,3vw,2.5rem);border-top:1px solid var(--line)}
.room:last-of-type{border-bottom:1px solid var(--line)}
.room .n{font-family:var(--display);font-stretch:112%;font-weight:700;color:var(--amber);font-size:1.3rem}
.room h3{font-size:clamp(2rem,5vw,4.6rem);transition:transform .7s var(--ease),color .4s}
.room h3 small{display:block;font-family:var(--display);font-stretch:118%;font-weight:800;font-size:clamp(1rem,1.6vw,1.35rem);letter-spacing:0;color:var(--amber);margin-top:.5rem;font-stretch:100%}
.room p{margin:0;color:var(--muted);font-size:.96rem;max-width:28rem}
.room .pr{font-family:var(--display);font-stretch:112%;font-weight:800;font-size:clamp(1.3rem,2vw,1.8rem);text-align:right;white-space:nowrap;line-height:1}
.room .pr small{display:block;font-family:var(--body);font-size:.76rem;color:var(--muted);margin-top:.4rem;white-space:normal;max-width:11rem;margin-left:auto;line-height:1.35}
.room .inl{display:none}
@media (hover:hover){.room:hover h3{transform:translateX(1rem)}}
.rfloat{position:fixed;left:0;top:0;z-index:60;width:min(26vw,360px);aspect-ratio:4/5;margin:-200px 0 0 30px;border-radius:22px;overflow:hidden;pointer-events:none;opacity:0;transition:opacity .35s;will-change:transform;box-shadow:0 40px 80px rgba(0,0,0,.55)}
.rfloat.on{opacity:1}.rfloat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.2);transition:opacity .45s,transform 1s var(--ease)}.rfloat img.on{opacity:1;transform:none}
.prose p{color:var(--muted);max-width:44rem}.prose h3{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.4rem;margin:2rem 0 .5rem}

@media (max-width:900px){
 .mani .grid,.mani .foot2{grid-template-columns:1fr}.mani .side{flex-direction:row;align-items:center;justify-content:space-between}.mani .side img{width:96px}
 .panel{width:86vw;height:auto;grid-template-columns:1fr}.panel .ph{height:36svh}.panel .txt{padding:1.4rem .3rem .2rem;gap:.7rem}.panel .txt p{font-size:.95rem}.rtrack{padding-right:var(--gutr);margin-top:3rem}

 .nav{grid-template-columns:1fr auto}.navpill,.nav .right .login,.nav .right .btn{display:none}.burger{display:block}
 .hslide{bottom:7.4rem}.hmeta{bottom:4.6rem;left:var(--gut);right:auto;flex-direction:row;align-items:center}.hmeta b{font-size:1.4rem}.hmeta .hint{display:none}
 .story .grid,.split,.phero .grid,.faq .grid,.night .cols{grid-template-columns:1fr}
 .split.rev2>.frame{order:0}.night .time{text-align:left}
 .big{grid-template-columns:1fr;position:relative;top:auto!important;min-height:0}.big .ph{aspect-ratio:4/3;min-height:0}
 .also .g,.feat{grid-template-columns:1fr}
 .bento{grid-template-columns:1fr 1fr}.c-rate{grid-column:1/-1;grid-row:auto}.c-a,.c-d{grid-column:1/-1}.c-b,.c-c{grid-column:span 1}.cell{min-height:11rem}
 .wall{grid-template-columns:1fr;height:74svh}.col:nth-child(n+2){display:none}
 .steps3{grid-template-columns:1fr}.st3{border-right:0;border-bottom:1px solid var(--line);padding:1.6rem 0}
 .faq .left{position:static}.qa button{grid-template-columns:2rem 1fr auto}.qa .a p{margin-left:0}
 .cta .grid{grid-template-columns:1fr}.cta .jump{display:none}
 .foot .top{grid-template-columns:1fr 1fr}.foot .brandf{grid-column:1/-1}
 .prices{grid-template-columns:1fr 1fr}
 .room{grid-template-columns:1fr auto;gap:.6rem 1rem}.room .n{display:none}.room p{grid-column:1/-1}
 .room .inl{display:block;grid-column:1/-1;border-radius:18px;overflow:hidden;aspect-ratio:4/3;margin-top:.6rem}.room .inl img{width:100%;height:100%;object-fit:cover}
 .rfloat{display:none}
 .cell .dogi{display:none}
 .panel:first-child .pdog{top:-5%!important;left:62%!important}
}
@media (max-width:520px){.prices{grid-template-columns:1fr}.foot .top{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}

/* ---- v6: illustrated hero, flip cards, steps, themes ---- */
body{background:radial-gradient(90rem 60rem at 110% -10%,rgba(245,166,35,.13),transparent 60%),radial-gradient(70rem 50rem at -20% 40%,rgba(232,130,12,.09),transparent 60%),var(--ink);transition:background-color .5s,color .5s}
.hill{position:absolute;inset:0;z-index:1;background:radial-gradient(70% 80% at var(--cx) var(--cy),#6b300a 0%,#3a1c0b 38%,#1f120a 78%);--hole:0px;
 -webkit-mask-image:radial-gradient(circle at var(--cx) var(--cy),transparent var(--hole),#000 calc(var(--hole) + 1.5px));mask-image:radial-gradient(circle at var(--cx) var(--cy),transparent var(--hole),#000 calc(var(--hole) + 1.5px))}
.hsun,.hring{position:absolute;left:var(--cx);top:var(--cy);width:calc(var(--r)*2);height:calc(var(--r)*2);margin:calc(var(--r)*-1) 0 0 calc(var(--r)*-1);border-radius:50%}
.hsun{background:radial-gradient(circle at 34% 28%,#fffaf0 0%,#ffe9c2 48%,#ffcf75 100%);box-shadow:0 0 0 1px rgba(255,220,160,.5),0 0 140px 30px rgba(245,166,35,.42)}
.hring{border:1px solid rgba(255,214,150,.28);transform:scale(1.32);animation:hring 14s linear infinite;border-left-color:transparent;border-bottom-color:transparent}
@keyframes hring{to{transform:scale(1.32) rotate(360deg)}}
.hdogs{position:absolute;z-index:2;left:var(--cx);top:var(--cy);width:calc(var(--r)*2);height:calc(var(--r)*2);margin:calc(var(--r)*-1) 0 0 calc(var(--r)*-1);pointer-events:none}
.hdogs img{position:absolute;left:var(--x);top:var(--y);width:var(--w);max-width:none;height:auto;translate:-50% -50%;will-change:transform,opacity;filter:drop-shadow(0 22px 26px rgba(60,20,0,.35))}
.hslide,.hmeta{z-index:3}
.hslide[data-s="0"] h1{font-size:clamp(3.2rem,7.2vw,7.4rem)}
.hslide[data-s="0"] .lead{max-width:26rem}
/* flip cards */
.panel .ph.flip{display:block;width:100%;height:100%;padding:0;background:none;overflow:visible;perspective:1600px;cursor:pointer;text-align:left;border-radius:30px}
.panel .ph.flip::after{display:none}
.fin{position:absolute;inset:0;transform-style:preserve-3d;transition:transform 1s var(--ease);border-radius:30px}
.flip.flipped .fin{transform:rotateY(180deg)}
.flip.peek:not(.flipped) .fin{animation:peek 1.6s var(--ease) .3s 1}
@keyframes peek{0%,100%{transform:rotateY(0)}45%{transform:rotateY(-28deg)}}
@media(hover:hover){.flip:not(.flipped):hover .fin{transform:rotateY(-12deg)}.flip.flipped:hover .fin{transform:rotateY(168deg)}}
.ff{position:absolute;inset:0;border-radius:30px;overflow:hidden;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-shadow:0 30px 70px rgba(0,0,0,.35)}
.ff.back{transform:rotateY(180deg);background:var(--coal)}
.ff.back::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,8,6,.6),rgba(13,8,6,0) 45%);pointer-events:none}
.ff.front{background:linear-gradient(160deg,#fff6e4 0%,#ffe3b0 55%,#ffc968 100%);display:grid;place-items:center}
.ff.front.night2{background:linear-gradient(165deg,#3a1d0c 0%,#1f120b 70%)}
.fsun{position:absolute;width:74%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffb52e,#ee8a10 70%,#d96f06);opacity:.2;left:13%;top:50%;translate:0 -50%}
.night2 .fsun{opacity:1;background:radial-gradient(circle at 35% 30%,#fff7e6,#ffe2ad 60%,#ffc65a);width:46%;left:auto;right:8%;top:30%;box-shadow:0 0 90px rgba(255,200,110,.45)}
.fart{position:relative;width:auto;height:74%;max-width:78%;object-fit:contain;filter:drop-shadow(0 26px 26px rgba(90,35,0,.35));transition:transform .8s var(--ease)}
.fart.wide{height:auto;width:78%;margin-top:22%}
.flip:hover .fart{transform:translateY(-8px) rotate(-3deg)}
.fhint{position:absolute;z-index:3;left:50%;bottom:1.1rem;translate:-50% 0;display:inline-flex;align-items:center;gap:.55rem;padding:.55rem 1rem;border-radius:999px;font-size:.82rem;font-weight:600;white-space:nowrap;background:rgba(28,14,6,.86);color:#fbf1e2}
.fhint i{width:.9rem;height:.9rem;border-radius:50%;border:2px solid #f5a623;border-right-color:transparent;animation:spin 2.4s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.panel .pdog{display:none}
.rstage{touch-action:pan-y}
.swipehint{display:inline-flex;align-items:center;gap:.5rem;font-size:.82rem;font-weight:600;color:var(--amber);margin-top:.5rem;padding:0 max(var(--gut),calc(50vw - 660px + 20px))}
.swipehint i{font-style:normal;display:inline-block;animation:swp 1.4s ease-in-out infinite}
@keyframes swp{0%,100%{transform:translateX(0)}50%{transform:translateX(8px)}}
/* steps */
.steps3{list-style:none;padding:0;margin:clamp(2rem,5vw,3.6rem) 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;border:0;counter-reset:none}
.st3{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:.7rem;padding:1.8rem 1.8rem 2rem;border:1px solid var(--line);border-radius:28px;background:var(--coal);border-right:1px solid var(--line)}
.st3:first-child{padding-left:1.8rem;background:linear-gradient(170deg,rgba(245,166,35,.2),rgba(245,166,35,.04) 60%),var(--coal);border-color:rgba(245,166,35,.5)}
.st3:last-child{border-right:1px solid var(--line)}
.st3 img{position:absolute;right:1.2rem;top:1.2rem;width:clamp(72px,8vw,110px);height:auto}
.st3 b{font-size:clamp(3.6rem,6vw,5.4rem);margin:0 0 .6rem}
.st3 h3{font-size:1.4rem;margin:0}.st3 p{flex:1;margin:0 0 .8rem}
.st3:not(:last-child)::after{content:"";position:absolute;z-index:2;right:-1.05rem;top:50%;width:.9rem;height:.9rem;border-top:2px solid var(--amber);border-right:2px solid var(--amber);transform:translateY(-50%) rotate(45deg)}
/* theme toggle */
.tgl{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;background:var(--glass);transition:transform .5s var(--ease)}
.tgl:hover{transform:rotate(20deg)}
.tgl i{width:15px;height:15px;border-radius:50%;box-shadow:inset -5px -3px 0 0 var(--amber);transition:all .5s var(--ease)}
[data-theme=light] .tgl i{background:var(--orange);box-shadow:0 0 0 3px rgba(232,130,12,.25)}
/* light theme */
html[data-theme=light]{--ink:#fdf5e8;--coal:#f7e9d2;--char:#f0ddc0;--cream:#2a160a;--muted:#6b5340;--lead:#4d3524;--line:rgba(70,35,5,.18);--amber:#d97a06;--glass:rgba(255,247,234,.78);color-scheme:light}
[data-theme=light] body{background:radial-gradient(90rem 60rem at 110% -10%,rgba(245,166,35,.28),transparent 60%),radial-gradient(70rem 50rem at -20% 40%,rgba(255,196,72,.22),transparent 60%),var(--ink)}
[data-theme=light] .hstage.onphoto,[data-theme=light] .night,[data-theme=light] .ff,[data-theme=light] .menu,[data-theme=light] .loader,[data-theme=light] .foot{color:#fbf1e2;--cream:#fbf1e2;--muted:#cdc6ba;--lead:#ead8c0;--line:rgba(255,224,180,.15);--amber:#f5a623}
[data-theme=light] .hill{background:radial-gradient(70% 80% at var(--cx) var(--cy),#ffd58a 0%,#ffe9c4 40%,#fdf5e8 80%)}
[data-theme=light] .hsun{background:radial-gradient(circle at 34% 28%,#4a230c 0%,#2c150a 70%);box-shadow:0 0 0 1px rgba(80,40,10,.3),0 30px 120px rgba(232,130,12,.4)}
[data-theme=light] .hring{border-color:rgba(120,60,10,.3);border-left-color:transparent;border-bottom-color:transparent}
[data-theme=light] .btn.line{border-color:rgba(70,35,5,.4)}
[data-theme=light] .hstage.onphoto .btn.line,[data-theme=light] .night .btn.line{border-color:rgba(255,235,205,.35)}
[data-theme=light] .nav{background:linear-gradient(180deg,rgba(253,245,232,.9),rgba(253,245,232,0))}
[data-theme=light] .it{background:linear-gradient(180deg,#f5a623 0%,#e07c08 55%,#b85404 100%);-webkit-background-clip:text;background-clip:text}
[data-theme=light] .hstage.onphoto .it,[data-theme=light] .night .it{background:linear-gradient(180deg,#ffd27a 0%,#f5a623 55%,#d87408 100%);-webkit-background-clip:text;background-clip:text}
@media (max-width:900px){
 .hstage{--H:23vh;--gy:40vh}.htrack{--S:74}
 .hslide[data-s="0"] .eyebrow{display:none}.hslide[data-s="0"] .row{flex-wrap:nowrap;gap:.5rem}.hslide[data-s="0"] .btn{padding:.85rem 1.05rem;font-size:.88rem}
 .rstage{justify-content:flex-start;padding-top:calc(env(safe-area-inset-top,0px) + 8.4rem)}.rhead{top:calc(env(safe-area-inset-top,0px) + 4rem)}
 .panel .txt h3{font-size:2rem}
 .hslide[data-s="0"] h1{font-size:clamp(2.7rem,12.5vw,4.4rem)}
 .panel{width:84vw}.panel .ph.flip{height:29svh}
 .rtrack{margin-top:0}
 .steps3{grid-template-columns:1fr}.st3{padding:1.5rem 1.4rem 1.6rem;border-bottom:1px solid var(--line)}
 .st3:not(:last-child)::after{right:auto;left:2.2rem;top:auto;bottom:-1.05rem;transform:rotate(135deg)}
 .nav .right{gap:.7rem}
}
@media (prefers-reduced-motion:reduce){.hring,.fhint i,.swipehint i{animation:none}.fin{transition:none}}


.areasnote{margin:1rem 0 0;font-size:.95rem;color:var(--muted)}.areasnote a{color:var(--amber);border-bottom:1px solid currentColor}

@font-face{font-family:'Kaushan Script';src:url(/assets/fonts/kaushan.woff2) format('woff2');font-display:swap}
/* hero story */
.hstory{position:absolute;z-index:2;left:var(--cx);top:var(--gy);width:0;height:0;color:#fbeedd;pointer-events:none}
.hground{position:absolute;left:-100vw;width:200vw;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,214,150,.5) 20%,rgba(255,214,150,.5) 80%,transparent)}
.htrack{position:absolute;left:0;top:0;--S:44;will-change:transform}
.hsc{position:absolute;left:calc(var(--i)*var(--S)*1vw);top:0}
.hfig{position:absolute;bottom:0;left:0;height:var(--H);width:auto;translate:-50% 2%;overflow:visible;filter:drop-shadow(0 14px 18px rgba(40,14,0,.35))}
.hfig.hcouch{height:calc(var(--H)*.92)}
.hcd{position:absolute;bottom:calc(var(--H)*.2);left:calc(var(--H)*.02);width:calc(var(--H)*.62);max-width:none}
.hsc p{position:absolute;top:.9rem;left:0;translate:-50% 0;margin:0;white-space:nowrap;text-align:center;font-family:var(--display);font-stretch:112%;font-weight:700;font-size:clamp(.95rem,1.25vw,1.2rem);line-height:1.25;color:var(--cream)}
.hsc p b{display:block;font-family:var(--body);font-weight:500;font-size:.78rem;color:var(--amber);margin-bottom:.1rem}
.hdog{position:absolute;left:0;top:0;will-change:transform}
.hdog img{position:absolute;bottom:0;left:0;max-width:none;width:auto;height:calc(var(--H)*.46);translate:-50% 3%;scale:-1 1;opacity:0;filter:drop-shadow(0 12px 14px rgba(60,20,0,.35))}
.hdog img.on{opacity:1}
.hdog img[data-p=jump]{scale:1 1;height:calc(var(--H)*.62)}
.hleash{position:absolute;left:0;top:0;width:1px;height:1px;overflow:visible;color:var(--amber)}
.hslide[data-s="0"]{bottom:clamp(2.6rem,7vh,4.5rem)}
.hslide[data-s="0"] h1{font-size:clamp(2.8rem,6vw,6.2rem);margin:.9rem 0 1rem}
.hslide[data-s="0"] .lead{max-width:34rem;margin-bottom:1.2rem}
[data-theme=light] .hstory{color:#2c150a}
[data-theme=light] .hground{background:linear-gradient(90deg,transparent,rgba(90,45,10,.4) 20%,rgba(90,45,10,.4) 80%,transparent)}
[data-theme=light] .hsun{background:radial-gradient(circle at 34% 28%,#fff 0%,#ffe2a8 55%,#ffc04d 100%);box-shadow:0 0 0 1px rgba(232,130,12,.3),0 0 120px 20px rgba(245,166,35,.45)}
/* just like home */
.jlh{font-family:'Kaushan Script','Brush Script MT',cursive;font-size:clamp(3rem,8vw,7rem);line-height:1;color:#ffc04d;transform:rotate(-4deg);transform-origin:left bottom;margin:1.4rem 0 .2rem;text-shadow:0 6px 30px rgba(0,0,0,.45);width:max-content;max-width:100%;position:relative}
.js .jlh[data-fade]{transform:rotate(-4deg) translateY(24px)}.js .in .jlh[data-fade]{transform:rotate(-4deg)}
.jlh::after{content:"";position:absolute;left:2%;right:6%;bottom:-.12em;height:.09em;border-radius:99px;background:linear-gradient(90deg,#f5a623,#ffd98a 60%,transparent)}
@media (max-width:900px){.hslide[data-s="0"]{bottom:6.6rem}.hsc p{font-size:.92rem}.hmeta{bottom:3.6rem}}

.hsun{background:radial-gradient(circle at 34% 28%,#c26a12 0%,#8a430c 55%,#5a2a0a 100%);box-shadow:0 0 0 1px rgba(255,200,120,.45),0 0 120px 26px rgba(245,166,35,.38)}
.hslide[data-s="0"] .eyebrow{display:none}

/* hero story v2: illustrated people */
.hp{position:absolute;bottom:0;left:0;height:var(--H);width:calc(var(--H)*var(--w));translate:-50% 1%;overflow:hidden;filter:drop-shadow(0 14px 18px rgba(40,14,0,.35))}
.hp img{position:absolute;max-width:none;height:calc(var(--H)*100/76);width:auto;top:calc(var(--H)*-12/76);left:calc(var(--H)*var(--x)*-1)}
.hcouch{position:absolute;bottom:0;left:0;height:calc(var(--H)*1.08);width:calc(var(--H)*1.08*124/97);translate:-50% 2%;overflow:hidden;filter:drop-shadow(0 14px 18px rgba(40,14,0,.35))}
.hcouch img{position:absolute;max-width:none;height:calc(var(--H)*1.08*149/97);width:auto;top:calc(var(--H)*1.08*-25/97);left:calc(var(--H)*1.08*-37/97)}
.hbone{position:absolute;left:0;top:0;width:calc(var(--H)*.11);height:auto;translate:-50% -50%;opacity:0}
.hdog img[data-p=sniff]{height:calc(var(--H)*.36)}
.hdog img[data-p=sleep]{height:calc(var(--H)*.2);scale:1 1}
.hdog img[data-p=jump]{height:calc(var(--H)*.5)}
.hsc p{font-family:var(--body);font-weight:500;font-size:clamp(.85rem,1.05vw,1rem);color:var(--lead)}

/* story v3: camera follows the dog */
.htrack{--S:34}
.hsc{left:0;will-change:transform}
.hdog img{height:auto;width:calc(var(--H)*.62);transition:none}
.hdog img[data-p=walk],.hdog img[data-p=run],.hdog img[data-p=ball],.hdog img[data-p=sniff],.hdog img[data-p=sit]{scale:-1 1}
.hdog img[data-p=stand],.hdog img[data-p=jump],.hdog img[data-p=sleep]{scale:1 1}
.hdog img[data-p=sit]{width:calc(var(--H)*.46);height:auto}
.hdog img[data-p=jump]{width:calc(var(--H)*.46);height:auto}
.hdog img[data-p=sleep]{width:calc(var(--H)*.46);height:auto}
.hdog img[data-p=sniff]{height:auto}
.hball{position:absolute;left:0;top:0;width:calc(var(--H)*.075);height:calc(var(--H)*.075);margin:calc(var(--H)*-.037) 0 0 calc(var(--H)*-.037);border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffe08a,#f5a623 60%,#d9760a)}
@media (max-width:900px){.htrack{--S:72}}

/* story v4: people drift past and leave, real walk frames */
.htrack{--S:50}
.hgrass{position:absolute;left:calc(var(--S)*-2vw);top:3px;width:calc(var(--S)*14vw);height:5px;background:repeating-linear-gradient(90deg,rgba(255,214,150,.55) 0 16px,transparent 16px 64px,rgba(255,214,150,.3) 64px 70px,transparent 70px 150px)}
[data-theme=light] .hgrass{background:repeating-linear-gradient(90deg,rgba(90,45,10,.45) 0 16px,transparent 16px 64px,rgba(90,45,10,.25) 64px 70px,transparent 70px 150px)}
.hdog img[data-p=walk]{scale:-1 1}
@media (max-width:900px){.htrack{--S:76}}

.hdog{z-index:2}.hleash{z-index:3;color:#ffcf75}.hbone,.hball{z-index:4}
.hgrass{width:calc(var(--S)*17vw)}

/* animated dog sprite */
.hspr{position:absolute;bottom:0;left:0;width:calc(var(--H)*.887);height:calc(var(--H)*.73);translate:-50% 1.5%;background:url(/img/dogspr.webp) 0 0/800% 500% no-repeat;filter:drop-shadow(0 12px 14px rgba(60,20,0,.35))}
.hslp{position:absolute;bottom:0;left:0;max-width:none;width:calc(var(--H)*.46);height:auto;translate:-50% 3%;opacity:0;filter:drop-shadow(0 12px 14px rgba(60,20,0,.35))}

/* ---- brand pass: black and mango ---- */
body{background:radial-gradient(80rem 50rem at 110% -10%,rgba(255,184,28,.10),transparent 60%),radial-gradient(60rem 40rem at -20% 40%,rgba(255,184,28,.05),transparent 60%),var(--ink)}
.it{background:linear-gradient(180deg,#ffd75a 0%,#ffb81c 55%,#f59a00 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.btn{background:linear-gradient(180deg,#ffd04a,#ffb000);color:#0a0a0a;box-shadow:0 10px 34px rgba(255,184,28,.3)}.btn i{background:#0a0a0a}
.btn.line{background:none;box-shadow:none;color:var(--cream)}.btn.line i{background:var(--amber)}
.btn.dark{background:#0a0a0a;color:#fbf1e2}.btn.dark i{background:var(--amber)}
.cta .btn.line{color:#0a0a0a}.cta .btn.line i{background:#0a0a0a}
.htrack{--S:50}
.hill{background:radial-gradient(70% 80% at var(--cx) var(--cy),#2a2103 0%,#141414 42%,#0a0a0a 80%)}
.hsun{background:radial-gradient(circle at 34% 28%,#2c2c2c 0%,#171717 60%,#0e0e0e 100%);box-shadow:0 0 0 2px #ffb81c,0 0 110px 18px rgba(255,184,28,.34)}
.hring{border-color:rgba(255,184,28,.4);border-left-color:transparent;border-bottom-color:transparent}
.hground{background:linear-gradient(90deg,transparent,rgba(255,184,28,.7) 20%,rgba(255,184,28,.7) 80%,transparent)}
.hgrass{background:repeating-linear-gradient(90deg,rgba(255,184,28,.7) 0 16px,transparent 16px 64px,rgba(255,184,28,.4) 64px 70px,transparent 70px 150px)}
.hshade{background:linear-gradient(90deg,rgba(0,0,0,.5) 0%,rgba(0,0,0,.14) 42%,rgba(0,0,0,0) 68%),linear-gradient(0deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,0) 42%)}
.hstage.onphoto .hslide h2,.hstage.onphoto .hslide .lead,.hstage.onphoto .hslide .eyebrow{text-shadow:0 2px 24px rgba(0,0,0,.55)}
.mq{background:#ffb81c;color:#0a0a0a;padding-block:clamp(1.6rem,3.5vw,2.8rem)}
.mq .rowm span:nth-child(even){color:transparent;-webkit-text-stroke:2px #0a0a0a}
.mq .rowm span::after{background:#0a0a0a}
.mq .also{color:#2a2000}.mq .also b{color:#0a0a0a;font-weight:700}
.ff.front.night2{background:linear-gradient(165deg,#222 0%,#0a0a0a 70%)}
.ff.front{background:linear-gradient(160deg,#fff3c9 0%,#ffd75a 55%,#ffb81c 100%)}
.fsun{background:radial-gradient(circle at 35% 30%,#fff,#ffe9a8 70%);opacity:.5}
.foot{background:#050505}
.st3:first-child{background:linear-gradient(170deg,rgba(255,184,28,.2),rgba(255,184,28,.04) 60%),var(--coal);border-color:rgba(255,184,28,.55)}
[data-theme=light] .hill{background:radial-gradient(70% 80% at var(--cx) var(--cy),#ffe08a 0%,#fff0c9 40%,#fdf5e8 80%)}
[data-theme=light] .hsun{background:radial-gradient(circle at 34% 28%,#fff 0%,#ffe9a8 55%,#ffcf4a 100%);box-shadow:0 0 0 2px #f59a00,0 0 120px 20px rgba(255,184,28,.45)}
[data-theme=light] .it{background:linear-gradient(180deg,#ffb81c 0%,#f08c00 55%,#c96f00 100%);-webkit-background-clip:text;background-clip:text}
[data-theme=light] .hstage.onphoto .it,[data-theme=light] .night .it{background:linear-gradient(180deg,#ffd75a 0%,#ffb81c 55%,#f59a00 100%);-webkit-background-clip:text;background-clip:text}
/* scroll-bar dog */
.runner .dg{width:84px;height:70px}
.rspr{position:absolute;left:50%;bottom:-2px;width:84px;height:69px;margin-left:-42px;background:url(/img/dogspr.webp) 0 0/800% 500% no-repeat;transform:scaleX(-1);filter:drop-shadow(0 6px 8px rgba(0,0,0,.5))}
.runner .dg img[data-p="sleep"]{height:30px}
.hstage.onphoto .hslide .it{filter:drop-shadow(0 2px 10px rgba(0,0,0,.65))}
.hstage.onphoto .hslide h2{filter:drop-shadow(0 2px 14px rgba(0,0,0,.45))}
.hstage.onphoto .hslide .it,[data-theme=light] .hstage.onphoto .hslide .it{background:none;-webkit-background-clip:border-box;background-clip:border-box;color:#ffb81c;filter:none;text-shadow:0 2px 4px rgba(0,0,0,.55),0 4px 26px rgba(0,0,0,.6)}
.hstage.onphoto .hslide h2{filter:none;text-shadow:0 2px 4px rgba(0,0,0,.45),0 4px 26px rgba(0,0,0,.55)}
