
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
--bk:#08090a;--ch:#141419;
--lime:#c4ff2b;--lime-dk:#95cc00;--lime-gl:rgba(196,255,43,.12);
--hot:#ff2d6a;--hot-dk:#d41a52;
--blue:#3d5afe;
--cream:#faf9f5;
--txt:#15151a;--txt-m:#4a4a5a;--txt-l:#8a8a9a;
--foot:#0d7a38;--foot-bg:#e8f5e9;--foot-a:#34d058;
--bask:#c41830;--bask-bg:#fef2f2;--bask-a:#ff5c6e;
--rugb:#9a5c1e;--rugb-bg:#fdf3e0;--rugb-lt:#fbe4b8;--rugb-a:#e8a235;
--ff-h:'Bricolage Grotesque',sans-serif;
--ff-b:'Urbanist',sans-serif;
--ff-hand:'Gloria Hallelujah',cursive;
}

/* ═══ FIXED SIDE GRAPHICS — visible whole page ═══ */
.sg{position:fixed;pointer-events:none;z-index:50}
.sg svg{overflow:visible}
.sg path{fill:none;stroke-linecap:round}
/* Left dashed line */
.sg-l1{left:14px;top:15%;width:3px;height:140px;background:repeating-linear-gradient(to bottom,var(--lime) 0,var(--lime) 8px,transparent 8px,transparent 16px);opacity:.09;border-radius:2px;animation:sgSlide 10s ease-in-out infinite}
/* Left bounce trail SVG */
.sg-l2{left:8px;top:32%;opacity:.06}
.sg-l2 path{stroke:var(--foot-a);stroke-width:2.5;stroke-dasharray:8 6;animation:sgDash 2s linear infinite}
.sg-l2-dot{position:absolute;bottom:0;left:10px;width:10px;height:10px;background:var(--foot-a);border-radius:50%;filter:blur(3px);animation:sgPulse 2.5s ease-in-out infinite}
/* Left dots */
.sg-l3{left:18px;top:55%;width:8px;height:8px;background:var(--lime);border-radius:50%;opacity:.08;animation:sgPulse 3.5s ease-in-out infinite}
.sg-l4{left:10px;top:72%;width:28px;height:28px;border:2px solid var(--hot);border-radius:50%;opacity:.04;animation:sgRing 22s linear infinite}
.sg-l5{left:20px;top:85%;width:6px;height:6px;background:var(--bask-a);border-radius:50%;opacity:.06;animation:sgPulse 4s ease-in-out infinite .5s}
/* Right dashed line */
.sg-r1{right:14px;top:22%;width:3px;height:110px;background:repeating-linear-gradient(to bottom,var(--hot) 0,var(--hot) 6px,transparent 6px,transparent 14px);opacity:.07;border-radius:2px;animation:sgSlide 13s ease-in-out infinite 2s}
/* Right bounce trail SVG */
.sg-r2{right:8px;top:48%;opacity:.06}
.sg-r2 path{stroke:var(--bask-a);stroke-width:2.5;stroke-dasharray:8 6;animation:sgDash 2.5s linear infinite}
.sg-r2-dot{position:absolute;bottom:0;right:8px;width:10px;height:10px;background:var(--bask-a);border-radius:50%;filter:blur(3px);animation:sgPulse 2s ease-in-out infinite .3s}
/* Right dots */
.sg-r3{right:18px;top:68%;width:10px;height:10px;background:var(--lime);border-radius:50%;opacity:.06;animation:sgPulse 5s ease-in-out infinite 1s}
.sg-r4{right:10px;top:12%;width:24px;height:24px;border:2px solid var(--lime);border-radius:50%;opacity:.04;animation:sgRing 28s linear infinite reverse}
.sg-r5{right:16px;top:88%;width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:12px solid var(--rugb-a);opacity:.05;animation:sgRing 16s linear infinite}
/* Right large bounce trail */
.sg-r6{right:6px;top:35%;opacity:.04}
.sg-r6 path{stroke:var(--lime);stroke-width:3;stroke-dasharray:10 7;animation:sgDash 3s linear infinite}

@keyframes sgSlide{0%,100%{transform:translateY(0);opacity:.09}50%{transform:translateY(-25px);opacity:.14}}
@keyframes sgDash{to{stroke-dashoffset:-28}}
@keyframes sgPulse{0%,100%{transform:scale(1);opacity:.07}50%{transform:scale(1.8);opacity:.14}}
@keyframes sgRing{to{transform:rotate(360deg)}}

html{overflow-x:hidden;scroll-behavior:smooth}
body{font-family:var(--ff-b);background:var(--cream);color:var(--txt);overflow-x:hidden;cursor:none}
a{text-decoration:none;color:inherit}

#cur{position:fixed;width:18px;height:18px;border:2px solid var(--hot);border-radius:50%;pointer-events:none;z-index:10000;transform:translate(-50%,-50%);mix-blend-mode:difference;transition:width .22s,height .22s,background .22s}
#cur.big{width:60px;height:60px;background:var(--lime-gl);border-color:var(--lime)}
#dot{position:fixed;width:5px;height:5px;background:var(--hot);border-radius:50%;pointer-events:none;z-index:10001;transform:translate(-50%,-50%)}
body::after{content:'';position:fixed;inset:0;pointer-events:none;z-index:9998;opacity:.018;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.5rem 4vw;display:flex;align-items:center;justify-content:space-between;transition:all .4s}
.nav.solid{background:rgba(8,9,10,.94);backdrop-filter:blur(18px);padding:.9rem 4vw}
.logo{font-family:var(--ff-h);font-weight:800;font-size:1.35rem;color:#fff;letter-spacing:-.04em}
.logo em{color:var(--lime);font-style:normal}
.navl{display:flex;gap:2rem;align-items:center}
.navl a{font-family:var(--ff-b);font-size:.75rem;font-weight:700;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.12em;transition:color .3s}
.navl a:hover{color:#fff}
.nav-cta{font-family:var(--ff-h)!important;font-weight:700;font-size:.7rem!important;background:var(--lime);color:var(--bk);padding:.55rem 1.3rem;border-radius:50px;transition:all .3s cubic-bezier(.34,1.56,.64,1)}
.nav-cta:hover{transform:scale(1.08);box-shadow:0 0 25px var(--lime-gl)}

/* HERO */
.hero{min-height:100vh;background:var(--bk);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.hero__mesh{position:absolute;inset:0;background:radial-gradient(ellipse at 18% 48%,rgba(196,255,43,.07),transparent 52%),radial-gradient(ellipse at 82% 22%,rgba(255,45,106,.05),transparent 42%),radial-gradient(ellipse at 52% 82%,rgba(61,90,254,.04),transparent 48%);pointer-events:none}
.hero__dots{position:absolute;inset:0;background:radial-gradient(circle,rgba(255,255,255,.025) 1px,transparent 1px);background-size:26px 26px;pointer-events:none}
.hero__ball{position:absolute;right:-6vw;top:50%;transform:translateY(-50%);width:min(54vw,660px);height:min(54vw,660px);border-radius:50%;background:radial-gradient(circle at 36% 30%,rgba(255,255,255,.22),transparent 48%),radial-gradient(circle at 72% 75%,rgba(0,0,0,.14),transparent 44%),conic-gradient(from 0deg,#fff 0deg,#eee 60deg,#fff 120deg,#f0f0f0 180deg,#fff 240deg,#eee 300deg,#fff 360deg);box-shadow:inset 0 -30px 60px rgba(0,0,0,.12),0 0 100px rgba(196,255,43,.05),0 45px 85px rgba(0,0,0,.5);z-index:1;transition:transform .14s ease-out}
.hero__ball::before{content:'';position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 50% 22%,var(--bk) 15%,transparent 16%),radial-gradient(circle at 22% 54%,var(--bk) 12%,transparent 13%),radial-gradient(circle at 78% 54%,var(--bk) 12%,transparent 13%),radial-gradient(circle at 35% 84%,var(--bk) 11%,transparent 12%),radial-gradient(circle at 65% 84%,var(--bk) 11%,transparent 12%);opacity:.7}
.hero__ball::after{content:'';position:absolute;top:8%;left:14%;width:34%;height:25%;border-radius:50%;background:radial-gradient(ellipse,rgba(255,255,255,.42),transparent 58%);transform:rotate(-28deg)}
.orb{position:absolute;border-radius:50%;z-index:2;pointer-events:none}
.orb--1{width:95px;height:95px;top:16%;right:10%;background:linear-gradient(140deg,var(--hot),var(--hot-dk));border:2px solid rgba(255,255,255,.12);animation:o1 8s ease-in-out infinite}
.orb--2{width:85px;height:52px;bottom:23%;right:35%;background:linear-gradient(140deg,#c07830,#8a5520);border:2px solid rgba(255,255,255,.08);transform:rotate(-18deg);animation:o2 10s ease-in-out infinite}
.orb--3{width:48px;height:48px;top:70%;right:8%;background:linear-gradient(140deg,var(--blue),#2a3fc7);border:2px solid rgba(255,255,255,.08);animation:o3 7s ease-in-out infinite}
.geo{position:absolute;z-index:2;pointer-events:none;opacity:.1}
.g1{width:0;height:0;border-left:18px solid transparent;border-right:18px solid transparent;border-bottom:30px solid var(--lime);top:22%;left:6%;animation:gS 14s linear infinite}
.g2{width:22px;height:22px;border:3px solid var(--hot);border-radius:50%;bottom:30%;left:4%;animation:gS 18s linear infinite reverse}
.g3{width:18px;height:18px;border:3px solid var(--lime);top:12%;left:20%;transform:rotate(45deg);animation:gF 12s ease-in-out infinite}
@keyframes o1{0%,100%{transform:translate(0,0)}50%{transform:translate(-22px,-28px) rotate(10deg)}}
@keyframes o2{0%,100%{transform:rotate(-18deg) translate(0,0)}50%{transform:rotate(-12deg) translate(20px,-16px)}}
@keyframes o3{0%,100%{transform:translate(0,0)}50%{transform:translate(-14px,16px)}}
@keyframes gS{to{transform:rotate(360deg)}}
@keyframes gF{0%,100%{transform:translateY(0) rotate(45deg)}50%{transform:translateY(-16px) rotate(55deg)}}

.hero__c{position:relative;z-index:5;text-align:center;max-width:800px;padding:0 4vw}
.hero__ey{font-family:var(--ff-hand);font-size:clamp(1rem,1.5vw,1.3rem);color:var(--lime);display:block;margin-bottom:1rem;opacity:0;animation:pop .6s .3s cubic-bezier(.34,1.56,.64,1) forwards}
@keyframes pop{from{opacity:0;transform:scale(.7) rotate(-4deg)}to{opacity:1;transform:scale(1) rotate(0)}}
.hero__t{font-family:var(--ff-h);font-weight:800;font-size:clamp(3.5rem,9vw,9rem);color:#fff;line-height:.82;letter-spacing:-.05em;margin-bottom:2rem}
.hero__t .ln{display:block;overflow:hidden}
.hero__t .ln span{display:inline-block;opacity:0;animation:sU .7s var(--d,.5s) cubic-bezier(.16,1,.3,1) forwards}
.hero__t .pop{color:var(--lime)}.hero__t .stk{-webkit-text-stroke:2px #fff;color:transparent}.hero__t .hot{color:var(--hot)}
@keyframes sU{from{opacity:0;transform:translateY(115%)}to{opacity:1;transform:translateY(0)}}
.hero__sub{font-size:clamp(.9rem,1.3vw,1.1rem);color:rgba(255,255,255,.38);font-weight:300;line-height:1.85;max-width:520px;margin:0 auto 2.5rem;opacity:0;animation:fU .8s 1.1s ease forwards}
@keyframes fU{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.hero__btns{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;opacity:0;animation:fU .8s 1.4s ease forwards}
.hero__scroll{position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);z-index:10;opacity:0;animation:fU .8s 2s ease forwards}
.hero__scroll span{font-family:var(--ff-hand);font-size:.9rem;color:rgba(255,255,255,.18)}
.sline{width:1px;height:42px;margin:.3rem auto 0;background:linear-gradient(rgba(255,255,255,.3),transparent);animation:sPulse 2s ease-in-out infinite}
@keyframes sPulse{0%,100%{opacity:.3;transform:scaleY(1)}50%{opacity:.7;transform:scaleY(1.4)}}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--ff-h);font-weight:700;font-size:.85rem;padding:1.05rem 2.4rem;border-radius:60px;cursor:none;border:none;white-space:nowrap;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.34,1.56,.64,1)}
.btn::before{content:'';position:absolute;top:0;left:-75%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);transform:skewX(-20deg)}
.btn:hover::before{animation:shine .6s ease}
@keyframes shine{to{left:125%}}
.btn::after{content:'';position:absolute;border-radius:50%;background:rgba(255,255,255,.1);width:0;height:0;left:50%;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s,opacity .6s}
.btn:hover::after{width:400px;height:400px;opacity:0}
.btn--lime{background:var(--lime);color:var(--bk);box-shadow:0 4px 20px var(--lime-gl);animation:btnFloat 3s ease-in-out infinite}
.btn--lime:hover{transform:scale(1.12) translateY(-4px) rotate(-2deg);box-shadow:0 12px 40px var(--lime-gl),0 0 0 4px rgba(196,255,43,.15);animation:none}
@keyframes btnFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.btn--glass{background:rgba(255,255,255,.04);color:#fff;border:1.5px solid rgba(255,255,255,.1);backdrop-filter:blur(6px)}
.btn--glass:hover{transform:scale(1.1) translateY(-4px);border-color:rgba(255,255,255,.3)}
.btn--dark{background:var(--bk);color:#fff;border:2px solid rgba(255,255,255,.06);box-shadow:0 4px 25px rgba(0,0,0,.2);animation:btnGlow 4s ease-in-out infinite}
.btn--dark:hover{transform:scale(1.12) translateY(-5px) rotate(1deg);box-shadow:0 15px 50px rgba(0,0,0,.35),0 0 0 3px rgba(255,45,106,.12);animation:none}
@keyframes btnGlow{0%,100%{box-shadow:0 4px 25px rgba(0,0,0,.2)}50%{box-shadow:0 6px 30px rgba(0,0,0,.3),0 0 0 2px rgba(255,45,106,.05)}}
.btn--pop{font-size:.85rem;border:3px solid var(--bk);box-shadow:6px 6px 0 var(--bk);background:var(--lime);color:var(--bk);animation:btnWiggle 5s ease-in-out infinite}
.btn--pop:hover{transform:translate(-6px,-6px) rotate(-3deg) scale(1.1);box-shadow:12px 12px 0 var(--bk);animation:none}
@keyframes btnWiggle{0%,85%,100%{transform:rotate(0)}88%{transform:rotate(-2deg)}91%{transform:rotate(2deg)}94%{transform:rotate(-1deg)}}
.cat--foot .btn--pop{background:var(--foot-a);border-color:var(--foot);box-shadow:6px 6px 0 var(--foot);color:#fff}.cat--foot .btn--pop:hover{box-shadow:12px 12px 0 var(--foot)}
.cat--bask .btn--pop{background:var(--bask-a);border-color:var(--bask);box-shadow:6px 6px 0 var(--bask);color:#fff}.cat--bask .btn--pop:hover{box-shadow:12px 12px 0 var(--bask)}
.cat--rugb .btn--pop{background:var(--rugb-a);border-color:var(--rugb);box-shadow:6px 6px 0 var(--rugb);color:#fff}.cat--rugb .btn--pop:hover{box-shadow:12px 12px 0 var(--rugb)}


/* ═══ EXTRA ANIMATIONS ═══ */
/* Scroll progress bar */
#progress{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--lime),var(--hot),var(--lime));z-index:200;width:0}
/* Animated gradient on hero title keyword */
.hero__t .pop{background:linear-gradient(90deg,var(--lime),#e0ff80,var(--lime));background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:gradShift 4s ease-in-out infinite}
@keyframes gradShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
/* Permanent gentle float on balls */
.ball--foot{animation:ballFloat 6s ease-in-out infinite}
.ball--bask{animation:ballFloat 7s ease-in-out infinite .5s}
.ball--rugb{animation:ballFloatR 8s ease-in-out infinite}
@keyframes ballFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-18px) rotate(3deg)}}
@keyframes ballFloatR{0%,100%{transform:translateY(0) rotate(-14deg)}50%{transform:translateY(-15px) rotate(-10deg)}}
/* Sticker enhanced wobble */
.stk{animation:stkW 3s ease-in-out infinite!important}
@keyframes stkW{0%,100%{transform:translateY(0) rotate(var(--r,8deg)) scale(1)}25%{transform:translateY(-6px) rotate(calc(var(--r,8deg) + 4deg)) scale(1.05)}50%{transform:translateY(-2px) rotate(calc(var(--r,8deg) - 3deg))}75%{transform:translateY(-8px) rotate(calc(var(--r,8deg) + 2deg)) scale(1.03)}}
/* Tags bounce in on reveal */
.prod-tags .tag{opacity:0;transform:translateY(12px) scale(.8);transition:all .4s cubic-bezier(.34,1.56,.64,1)}
.rv.v .prod-tags .tag{opacity:1;transform:translateY(0) scale(1)}
.rv.v .prod-tags .tag:nth-child(1){transition-delay:.3s}
.rv.v .prod-tags .tag:nth-child(2){transition-delay:.42s}
.rv.v .prod-tags .tag:nth-child(3){transition-delay:.54s}
.rv.v .prod-tags .tag:nth-child(4){transition-delay:.66s}
/* Pop button pulsing glow */
.btn--pop{position:relative}
.btn--pop::after{content:'';position:absolute;inset:-4px;border-radius:60px;background:inherit;opacity:0;z-index:-1;animation:btnPG 3s ease-in-out infinite}
@keyframes btnPG{0%,100%{opacity:0;transform:scale(1)}50%{opacity:.12;transform:scale(1.08)}}
/* Section title directional slide */
.cat--foot .prod-title,.cat--rugb .prod-title{opacity:0;transform:translateX(-60px);transition:all 1s cubic-bezier(.16,1,.3,1)}
.cat--bask .prod-title{opacity:0;transform:translateX(60px);transition:all 1s cubic-bezier(.16,1,.3,1)}
.rv.v .prod-title{opacity:1!important;transform:translateX(0)!important}
/* Stats entrance */
.st{opacity:0;transform:translateY(30px);transition:all .7s cubic-bezier(.34,1.56,.64,1)}
.st.v{opacity:1;transform:translateY(0)}
/* Quote emoji bounce-in */
.quote__emoji{opacity:0;transform:scale(.3) rotate(-30deg);transition:all 1.2s cubic-bezier(.34,1.56,.64,1)}
.quote__vis.v .quote__emoji{opacity:1;transform:scale(1) rotate(0)}
/* Process icons pop */
.zz__ic{opacity:0;transform:scale(0) rotate(-20deg);transition:all .6s cubic-bezier(.34,1.56,.64,1)}
.rv.v .zz__ic{opacity:1;transform:scale(1) rotate(0)}
/* CTA scale entrance */
.cta__title{opacity:0;transform:scale(.85);transition:all 1s cubic-bezier(.16,1,.3,1)}
.cta__title.v{opacity:1;transform:scale(1)}
/* Refs card staggered entrance */
.rc{opacity:0;transition:all .8s cubic-bezier(.34,1.56,.64,1)}
.rc.v{opacity:1}
/* Side bounce trails on categories */
.cat .st-l,.cat .st-r{position:absolute;pointer-events:none;z-index:1;opacity:.06}
.cat .st-l svg,.cat .st-r svg{overflow:visible}
.cat .st-l path,.cat .st-r path{fill:none;stroke-linecap:round;stroke-dasharray:8 6;animation:sgDash 2s linear infinite}
.cat .st-l .td,.cat .st-r .td{position:absolute;border-radius:50%;filter:blur(3px);animation:sgPulse 2.5s ease-in-out infinite}
.cat .sd{position:absolute;pointer-events:none;z-index:1;width:3px;border-radius:2px;opacity:.08}
.cat .sc{position:absolute;pointer-events:none;z-index:1;border-radius:50%;opacity:.05;animation:sgRing 22s linear infinite}
/* Scattered cards extra shimmer on hover */
.scard::before{content:'';position:absolute;inset:0;border-radius:20px;background:linear-gradient(135deg,transparent 40%,rgba(255,255,255,.06) 50%,transparent 60%);opacity:0;transition:opacity .4s;z-index:5;pointer-events:none}
.scard:hover::before{opacity:1}

/* ═══ REFERENCES ═══ */
.refs{position:relative;padding:10rem 0 8rem;background:var(--bk);overflow:hidden}
.refs__mesh{position:absolute;inset:0;background:radial-gradient(ellipse at 20% 30%,rgba(196,255,43,.08),transparent 50%),radial-gradient(ellipse at 80% 70%,rgba(255,45,106,.06),transparent 50%);pointer-events:none}
.refs__ghost{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-6deg);font-family:var(--ff-h);font-weight:800;font-size:clamp(10rem,28vw,26rem);text-transform:uppercase;-webkit-text-stroke:1px rgba(255,255,255,.012);color:transparent;white-space:nowrap;pointer-events:none}
.refs__d{position:absolute;pointer-events:none;z-index:1}
.refs__d--1{top:10%;left:5%;width:60px;height:60px;border:2px solid var(--lime);border-radius:50%;opacity:.05;animation:gS 30s linear infinite}
.refs__d--2{bottom:12%;right:5%;width:80px;height:4px;background:var(--hot);opacity:.04;border-radius:2px}
.refs__d--3{top:30%;right:7%;width:0;height:0;border-left:18px solid transparent;border-right:18px solid transparent;border-bottom:30px solid var(--lime);opacity:.04;animation:gS 22s linear infinite reverse}
.refs__d--4{bottom:25%;left:8%;width:22px;height:22px;background:var(--hot);border-radius:50%;opacity:.04;animation:bA 4s ease-in-out infinite}
.refs__head{text-align:center;margin-bottom:5rem;position:relative;z-index:2}
.refs__label{font-family:var(--ff-hand);font-size:clamp(1.3rem,2vw,1.8rem);color:var(--lime);display:block}
.refs__title{font-family:var(--ff-h);font-weight:800;font-size:clamp(3rem,7vw,6rem);color:#fff;letter-spacing:-.05em;line-height:.82}
.refs__title em{color:var(--hot);font-style:normal}
.refs__sub{font-size:1.1rem;color:rgba(255,255,255,.25);font-weight:300;margin-top:1.2rem}
.refs__scatter{position:relative;max-width:1100px;margin:0 auto;height:520px;z-index:2}
.rc{position:absolute;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:20px;padding:1.5rem 2.5rem;font-family:var(--ff-h);font-weight:800;text-transform:uppercase;letter-spacing:-.02em;color:rgba(255,255,255,.12);transition:all .6s cubic-bezier(.34,1.56,.64,1);backdrop-filter:blur(8px);white-space:nowrap}
.rc::before{content:'';position:absolute;inset:-1px;border-radius:20px;background:linear-gradient(var(--a,135deg),var(--c1,rgba(196,255,43,.12)),transparent 50%,transparent 50%,var(--c2,rgba(255,45,106,.08)));z-index:-1;opacity:0;transition:opacity .5s}
.rc:hover{color:#fff;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);z-index:10}
.rc:hover::before{opacity:1}
.rc--1{top:0;left:5%;font-size:2.4rem;transform:rotate(-8deg)}.rc--1:hover{transform:rotate(-2deg) scale(1.1) translateY(-10px)}
.rc--2{top:5%;right:8%;font-size:1.7rem;transform:rotate(5deg);--c1:rgba(255,45,106,.12);--a:200deg}.rc--2:hover{transform:rotate(0) scale(1.12) translateY(-8px)}
.rc--3{top:35%;left:12%;font-size:3rem;transform:rotate(3deg);padding:2rem 3.5rem}.rc--3:hover{transform:rotate(-1deg) scale(1.08) translateY(-12px)}
.rc--4{top:28%;right:3%;font-size:1.4rem;transform:rotate(-12deg);--c1:rgba(61,90,254,.1)}.rc--4:hover{transform:rotate(-5deg) scale(1.15) translateY(-8px)}
.rc--5{bottom:18%;left:2%;font-size:1.9rem;transform:rotate(7deg)}.rc--5:hover{transform:rotate(2deg) scale(1.1) translateY(-10px)}
.rc--6{bottom:5%;left:32%;font-size:3.4rem;transform:rotate(-4deg);padding:2rem 4rem}.rc--6:hover{transform:rotate(0) scale(1.06) translateY(-14px)}
.rc--7{bottom:22%;right:5%;font-size:1.6rem;transform:rotate(10deg)}.rc--7:hover{transform:rotate(4deg) scale(1.12) translateY(-8px)}
.rc--8{top:62%;left:48%;font-size:1.2rem;transform:rotate(-6deg)}.rc--8:hover{transform:rotate(-1deg) scale(1.15) translateY(-8px)}
.rd{width:10px;height:10px;border-radius:50%;display:inline-block;margin-right:.7rem;vertical-align:middle}
.rc:nth-child(odd) .rd{background:var(--lime);box-shadow:0 0 14px var(--lime-gl)}
.rc:nth-child(even) .rd{background:var(--hot);box-shadow:0 0 14px rgba(255,45,106,.15)}

/* SEP */
.sep{width:100%;overflow:hidden;line-height:0;position:relative;z-index:3}.sep svg{display:block;width:100%}

/* CATEGORIES */
.cat{position:relative;overflow:hidden;padding:7rem 0 6rem}
.cat--foot{background:var(--foot-bg)}.cat--bask{background:var(--bask-bg)}.cat--rugb{background:var(--rugb-bg)}
.cat__pat{position:absolute;inset:0;pointer-events:none;z-index:0}
.cat--foot .cat__pat{opacity:.025;background:radial-gradient(circle,var(--foot) 1px,transparent 1px);background-size:16px 16px}
.cat--bask .cat__pat{opacity:.018;background:repeating-linear-gradient(45deg,var(--bask) 0,var(--bask) 1px,transparent 1px,transparent 15px)}
.cat--rugb .cat__pat{opacity:.02;background:repeating-linear-gradient(-45deg,var(--rugb) 0,var(--rugb) 1px,transparent 1px,transparent 18px),repeating-linear-gradient(45deg,var(--rugb) 0,var(--rugb) 1px,transparent 1px,transparent 18px)}
.cat__glow{position:absolute;width:500px;height:500px;border-radius:50%;filter:blur(130px);opacity:.08;pointer-events:none;z-index:0}
.bel{position:absolute;pointer-events:none;z-index:1;opacity:.07}
@keyframes bA{0%,100%{transform:translateY(0)}40%{transform:translateY(-30px)}60%{transform:translateY(-10px)}80%{transform:translateY(-18px)}}
@keyframes bB{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(12px,-25px) scale(1.4)}}
@keyframes bC{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(10deg)}}
/* Bounce trail inside categories */
.trail{position:absolute;pointer-events:none;z-index:1}
.trail svg{overflow:visible}
.trail path{fill:none;stroke-linecap:round;stroke-dasharray:8 6}
.trail--anim path{animation:sgDash 2s linear infinite}
.trail-dot{position:absolute;border-radius:50%;filter:blur(3px);animation:sgPulse 2s ease-in-out infinite}

.ctn{max-width:1300px;margin:0 auto;padding:0 4vw}
.prod-row{display:grid;grid-template-columns:1fr 1.15fr;gap:4rem;align-items:center;position:relative;z-index:2}
.prod-row--flip{grid-template-columns:1.15fr 1fr}.prod-row--flip .prod-vis{order:2}.prod-row--flip .prod-txt{order:1;text-align:right}
.prod-row--flip .prod-tags{justify-content:flex-end}.prod-row--flip .prod-big{margin-left:auto}
.prod-vis{position:relative;display:flex;align-items:center;justify-content:center;min-height:450px;padding:2rem}
.prod-txt{padding:2rem 0;position:relative;z-index:2}
.prod-ey{font-family:var(--ff-hand);font-size:clamp(1.1rem,1.6vw,1.4rem);display:block;margin-bottom:.4rem}
.cat--foot .prod-ey{color:var(--foot)}.cat--bask .prod-ey{color:var(--bask)}.cat--rugb .prod-ey{color:var(--rugb)}
.prod-title{font-family:var(--ff-h);font-weight:800;font-size:clamp(2.5rem,5vw,4.5rem);color:var(--txt);letter-spacing:-.04em;line-height:.85;margin-bottom:1.5rem}
.prod-big{font-size:clamp(1.1rem,1.5vw,1.3rem);color:var(--txt-m);font-weight:300;line-height:1.9;margin-bottom:2rem;max-width:480px}
.prod-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2.5rem}
.tag{font-family:var(--ff-h);font-weight:600;font-size:.55rem;text-transform:uppercase;letter-spacing:.06em;padding:.4rem 1rem;border-radius:50px;transition:all .3s}
.cat--foot .tag{border:2px solid rgba(13,122,56,.15);color:var(--foot)}.cat--foot .tag:hover{background:var(--foot);color:#fff;transform:translateY(-4px)}
.cat--bask .tag{border:2px solid rgba(196,24,48,.12);color:var(--bask)}.cat--bask .tag:hover{background:var(--bask);color:#fff;transform:translateY(-4px)}
.cat--rugb .tag{border:2px solid rgba(154,92,30,.12);color:var(--rugb)}.cat--rugb .tag:hover{background:var(--rugb);color:#fff;transform:translateY(-4px)}

/* Balls */
.ball{position:relative;border-radius:50%;transition:transform .6s cubic-bezier(.34,1.56,.64,1);filter:drop-shadow(0 35px 70px rgba(0,0,0,.22))}
.ball:hover{transform:scale(1.08) rotate(-5deg)}
.ball--foot{width:min(36vw,400px);height:min(36vw,400px);background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.26),transparent 50%),radial-gradient(circle at 72% 75%,rgba(0,0,0,.1),transparent 42%),linear-gradient(160deg,#fff,#f0f0f0)}
.ball--foot::before{content:'';position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 50% 22%,var(--foot) 15%,transparent 16%),radial-gradient(circle at 22% 54%,var(--foot) 12%,transparent 13%),radial-gradient(circle at 78% 54%,var(--foot) 12%,transparent 13%),radial-gradient(circle at 35% 84%,var(--foot) 11%,transparent 12%),radial-gradient(circle at 65% 84%,var(--foot) 11%,transparent 12%);opacity:.8}
.ball--foot::after{content:'';position:absolute;top:8%;left:13%;width:35%;height:26%;border-radius:50%;background:radial-gradient(ellipse,rgba(255,255,255,.42),transparent 58%);transform:rotate(-28deg)}
.ball--bask{width:min(34vw,380px);height:min(34vw,380px);background:radial-gradient(circle at 33% 28%,rgba(255,255,255,.2),transparent 48%),linear-gradient(160deg,var(--bask-a),var(--bask))}
.ball--bask::before{content:'';position:absolute;inset:0;border-radius:50%;background:linear-gradient(to right,transparent 47%,rgba(0,0,0,.1) 47%,rgba(0,0,0,.1) 53%,transparent 53%),linear-gradient(to bottom,transparent 47%,rgba(0,0,0,.08) 47%,rgba(0,0,0,.08) 53%,transparent 53%)}
.ball--bask::after{content:'';position:absolute;top:8%;left:17%;width:28%;height:20%;border-radius:50%;background:radial-gradient(ellipse,rgba(255,255,255,.2),transparent 58%);transform:rotate(-28deg)}
.ball--rugb{width:min(38vw,420px);height:min(22vw,230px);border-radius:50%;background:radial-gradient(circle at 33% 28%,rgba(255,255,255,.14),transparent 48%),linear-gradient(160deg,var(--rugb-a),var(--rugb));transform:rotate(-14deg)}
.ball--rugb:hover{transform:rotate(-8deg) scale(1.08)}
.ball--rugb::before{content:'';position:absolute;top:44%;left:18%;right:18%;height:3px;background:rgba(255,255,255,.3)}
.ball--rugb::after{content:'';position:absolute;top:10%;left:22%;width:25%;height:28%;border-radius:50%;background:radial-gradient(ellipse,rgba(255,255,255,.12),transparent 58%);transform:rotate(-10deg)}
.lace{position:absolute;top:33%;left:45%;width:10%;height:28%;display:flex;flex-direction:column;justify-content:space-between;z-index:2}.lace span{display:block;width:100%;height:2px;background:rgba(255,255,255,.4);border-radius:1px}
.mini-ball{position:absolute;border-radius:50%;z-index:3;pointer-events:none;opacity:.6}
.mb1{animation:mb1 6s ease-in-out infinite}.mb2{animation:mb2 8s ease-in-out infinite}.mb3{animation:mb1 7s ease-in-out infinite reverse}
@keyframes mb1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(18px,-30px) scale(1.15)}}
@keyframes mb2{0%,100%{transform:translate(0,0)}50%{transform:translate(-25px,18px) rotate(18deg)}}
.stk{position:absolute;font-family:var(--ff-h);font-weight:700;font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;padding:.45rem 1.1rem;border-radius:50px;z-index:10;white-space:nowrap;animation:sF 5s ease-in-out infinite}
.stk--f{background:var(--foot-a);color:#fff;box-shadow:3px 3px 0 var(--foot)}.stk--r{background:var(--rugb-a);color:#fff;box-shadow:3px 3px 0 var(--rugb)}
@keyframes sF{0%,100%{transform:translateY(0) rotate(var(--r,8deg))}50%{transform:translateY(-8px) rotate(calc(var(--r,8deg) - 3deg))}}

/* Scattered 4-cards */
.scattered{position:relative;max-width:1100px;margin:4rem auto 0;padding:0 4vw;height:360px;z-index:2}
.scard{position:absolute;border-radius:20px;overflow:hidden;transition:all .5s cubic-bezier(.34,1.56,.64,1);width:235px}
.scard:hover{z-index:10}
.scard__img{height:120px;display:flex;align-items:center;justify-content:center;font-size:2.8rem}
.scard__body{padding:.9rem 1.1rem}
.scard__name{font-family:var(--ff-h);font-weight:700;font-size:.72rem;text-transform:uppercase}
.scard__sub{font-size:.75rem;color:var(--txt-m);font-weight:300;margin-top:.15rem}
.scard--f{background:#fff;border:3px solid var(--foot);box-shadow:6px 6px 0 var(--foot)}.scard--f:hover{box-shadow:12px 16px 0 var(--foot)}
.scard--f .scard__img{background:linear-gradient(135deg,var(--foot-a),var(--foot))}.scard--f .scard__name{color:var(--foot)}
.scard--f:nth-child(1){left:0;top:25px;transform:rotate(-6deg)}.scard--f:nth-child(1):hover{transform:rotate(-1deg) scale(1.08) translateY(-14px)}
.scard--f:nth-child(2){left:24%;top:55px;transform:rotate(4deg)}.scard--f:nth-child(2):hover{transform:rotate(0) scale(1.08) translateY(-14px)}
.scard--f:nth-child(3){right:22%;top:10px;transform:rotate(-3deg);width:215px}.scard--f:nth-child(3):hover{transform:rotate(0) scale(1.1) translateY(-12px)}
.scard--f:nth-child(4){right:0;top:65px;transform:rotate(7deg);width:210px}.scard--f:nth-child(4):hover{transform:rotate(2deg) scale(1.1) translateY(-12px)}
.scard--b{background:var(--ch);border:2px solid var(--bask-a);box-shadow:0 0 20px rgba(255,92,110,.06)}.scard--b:hover{box-shadow:0 0 45px rgba(255,92,110,.14)}
.scard--b .scard__img{background:linear-gradient(135deg,var(--bask-a),var(--bask))}.scard--b .scard__name{color:var(--bask-a)}.scard--b .scard__sub{color:rgba(255,255,255,.3)}
.scard--b:nth-child(1){left:2%;top:45px;transform:rotate(5deg)}.scard--b:nth-child(1):hover{transform:rotate(1deg) scale(1.08) translateY(-14px)}
.scard--b:nth-child(2){left:26%;top:0;transform:rotate(-4deg)}.scard--b:nth-child(2):hover{transform:rotate(0) scale(1.08) translateY(-14px)}
.scard--b:nth-child(3){right:20%;top:58px;transform:rotate(6deg);width:220px}.scard--b:nth-child(3):hover{transform:rotate(2deg) scale(1.1) translateY(-12px)}
.scard--b:nth-child(4){right:0;top:18px;transform:rotate(-7deg);width:205px}.scard--b:nth-child(4):hover{transform:rotate(-2deg) scale(1.1) translateY(-12px)}
.scard--r{background:var(--rugb-lt);border:3px solid var(--rugb);box-shadow:6px 6px 0 var(--rugb)}.scard--r:hover{box-shadow:12px 16px 0 var(--rugb)}
.scard--r .scard__img{background:linear-gradient(135deg,var(--rugb-a),var(--rugb))}.scard--r .scard__name{color:var(--rugb)}
.scard--r:nth-child(1){left:0;top:38px;transform:rotate(-5deg)}.scard--r:nth-child(1):hover{transform:rotate(-1deg) scale(1.08) translateY(-14px)}
.scard--r:nth-child(2){left:25%;top:5px;transform:rotate(4deg)}.scard--r:nth-child(2):hover{transform:rotate(0) scale(1.08) translateY(-14px)}
.scard--r:nth-child(3){right:21%;top:52px;transform:rotate(-3deg);width:215px}.scard--r:nth-child(3):hover{transform:rotate(0) scale(1.1) translateY(-12px)}
.scard--r:nth-child(4){right:0;top:12px;transform:rotate(8deg);width:205px}.scard--r:nth-child(4):hover{transform:rotate(3deg) scale(1.1) translateY(-12px)}

/* STATS */
.stats-wrap{background:var(--cream);padding:2rem 0 5rem}
.stats{position:relative;max-width:1050px;margin:0 auto;height:220px;padding:0 4vw}
.st{position:absolute;background:#fff;border:3px solid var(--bk);border-radius:18px;box-shadow:6px 6px 0 var(--bk);padding:1.8rem 2.2rem;text-align:center;transition:all .5s cubic-bezier(.34,1.56,.64,1)}
.st:hover{transform:rotate(0) scale(1.12)!important;box-shadow:10px 14px 0 var(--bk);z-index:5}
.st__n{font-family:var(--ff-h);font-weight:800;font-size:2.8rem;line-height:1;letter-spacing:-.03em}
.st--1 .st__n{color:var(--foot-a)}.st--2 .st__n{color:var(--hot)}.st--3 .st__n{color:var(--blue)}.st--4 .st__n{color:var(--rugb-a)}
.st__l{font-family:var(--ff-hand);font-size:1rem;color:var(--txt-l);margin-top:.3rem}
.st--1{top:0;left:2%;transform:rotate(-7deg)}.st--2{top:8%;right:7%;transform:rotate(5deg)}.st--3{bottom:0;left:22%;transform:rotate(-3deg)}.st--4{bottom:5%;right:3%;transform:rotate(8deg)}

/* PROCESS */
.proc{padding:8rem 0;background:var(--cream)}
.proc__head{text-align:center;margin-bottom:4.5rem}
.proc__label{font-family:var(--ff-hand);font-size:clamp(1.2rem,1.7vw,1.6rem);color:var(--hot);display:block}
.proc__title{font-family:var(--ff-h);font-weight:800;font-size:clamp(2.2rem,5vw,4.5rem);color:var(--txt);letter-spacing:-.04em;line-height:.85}
.proc__title em{color:var(--lime-dk);font-style:normal}
.zigzag{max-width:780px;margin:0 auto;padding:0 4vw}
.zz{display:flex;gap:2.5rem;margin-bottom:4.5rem;position:relative;align-items:flex-start}
.zz:nth-child(even){flex-direction:row-reverse;text-align:right}.zz:nth-child(even) .zz__txt{align-items:flex-end}
.zz:not(:last-child)::after{content:'';position:absolute;bottom:-2.5rem;left:50%;width:3px;height:2rem;background:repeating-linear-gradient(to bottom,var(--lime-dk) 0,var(--lime-dk) 4px,transparent 4px,transparent 8px)}
.zz__ic{width:105px;height:105px;border-radius:50%;background:#fff;border:3px solid var(--bk);box-shadow:5px 5px 0 var(--bk);display:flex;align-items:center;justify-content:center;font-size:2.5rem;flex-shrink:0;transition:all .5s cubic-bezier(.34,1.56,.64,1)}
.zz:hover .zz__ic{transform:rotate(-15deg) scale(1.15);box-shadow:8px 12px 0 var(--bk);background:var(--lime)}
.zz__txt{display:flex;flex-direction:column}
.zz__num{font-family:var(--ff-h);font-weight:700;font-size:.6rem;color:var(--hot);text-transform:uppercase;letter-spacing:.15em}
.zz__name{font-family:var(--ff-h);font-weight:800;font-size:1rem;text-transform:uppercase;color:var(--txt);margin:.3rem 0}
.zz__desc{font-size:.9rem;color:var(--txt-m);line-height:1.65;max-width:300px;font-weight:300}

/* QUOTE */
.quote{display:grid;grid-template-columns:1fr 1fr;min-height:480px}
.quote__vis{background:linear-gradient(160deg,var(--lime),var(--lime-dk));display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.quote__vis::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 35% 40%,rgba(255,255,255,.1),transparent 55%);pointer-events:none}
.quote__emoji{font-size:min(18vw,220px);filter:drop-shadow(0 18px 45px rgba(0,0,0,.15));animation:qF 8s ease-in-out infinite}
@keyframes qF{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px) rotate(4deg)}}
.quote__txt{background:var(--bk);display:flex;flex-direction:column;justify-content:center;padding:4rem 5vw}
.quote__q{font-size:clamp(1.1rem,1.8vw,1.6rem);color:rgba(255,255,255,.8);font-weight:300;line-height:1.7;margin-bottom:1.5rem}
.quote__q strong{color:var(--lime);font-weight:700}
.quote__attr{font-family:var(--ff-hand);font-size:1.2rem;color:var(--hot)}

/* CTA */
.cta{padding:9rem 0;text-align:center;position:relative;overflow:hidden;background:var(--cream)}
.cta__ghost{font-family:var(--ff-h);font-weight:800;font-size:clamp(6rem,20vw,18rem);text-transform:uppercase;color:transparent;-webkit-text-stroke:1.5px rgba(21,21,26,.02);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);white-space:nowrap;pointer-events:none}
.cta__title{font-family:var(--ff-h);font-weight:800;font-size:clamp(2.2rem,5.5vw,5rem);color:var(--txt);letter-spacing:-.04em;line-height:.85;margin-bottom:1.2rem;position:relative;z-index:2}
.cta__title em{color:var(--hot);font-style:normal}
.cta__sub{font-size:1.1rem;color:var(--txt-m);font-weight:300;margin-bottom:2.5rem;position:relative;z-index:2}
.cta__btns{display:flex;gap:1.2rem;justify-content:center;flex-wrap:wrap;position:relative;z-index:2}
.cta-ball{position:absolute;pointer-events:none;z-index:1;opacity:.12}
.cta-ball:nth-child(1){left:6%;bottom:8%;font-size:3rem;animation:ctaB1 2.5s ease-in-out infinite}
.cta-ball:nth-child(2){right:8%;bottom:5%;font-size:2.5rem;animation:ctaB2 3s ease-in-out infinite .3s}
.cta-ball:nth-child(3){left:16%;top:6%;font-size:2rem;opacity:.08;animation:ctaB1 2.8s ease-in-out infinite .6s}
.cta-ball:nth-child(4){right:18%;top:10%;font-size:3.5rem;opacity:.06;animation:ctaB2 2.2s ease-in-out infinite .9s}
.cta-ball:nth-child(5){left:33%;bottom:2%;font-size:1.8rem;opacity:.1;animation:ctaB3 3.5s ease-in-out infinite 1.2s}
.cta-ball:nth-child(6){right:30%;bottom:12%;font-size:2.8rem;opacity:.07;animation:ctaB3 2.6s ease-in-out infinite}
@keyframes ctaB1{0%,100%{transform:translateY(0)}30%{transform:translateY(-70px) rotate(18deg)}50%{transform:translateY(-10px)}70%{transform:translateY(-40px) rotate(-12deg)}}
@keyframes ctaB2{0%,100%{transform:translateY(0) scale(1)}25%{transform:translateY(-50px) scale(1.1) rotate(22deg)}50%{transform:translateY(-5px) scale(.95)}75%{transform:translateY(-35px) scale(1.05) rotate(-18deg)}}
@keyframes ctaB3{0%,100%{transform:translate(0,0)}33%{transform:translate(18px,-55px) rotate(28deg)}66%{transform:translate(-12px,-22px) rotate(-12deg)}}

/* FOOTER */
.ft{background:var(--bk);color:rgba(255,255,255,.28);padding:4rem 4vw 1.5rem}
.ft__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2.5rem;max-width:1200px;margin:0 auto}
.ft__brand{font-family:var(--ff-h);font-weight:800;font-size:1.15rem;color:#fff;margin-bottom:.7rem}.ft__brand em{color:var(--lime);font-style:normal}
.ft__col-t{font-family:var(--ff-h);font-weight:700;font-size:.58rem;text-transform:uppercase;letter-spacing:.12em;color:#fff;padding-bottom:.4rem;border-bottom:2px solid var(--lime-dk);display:inline-block;margin-bottom:.6rem}
.ft a{display:block;padding:.2rem 0;font-size:.8rem;transition:color .2s}.ft a:hover{color:var(--lime)}
.ft__bot{max-width:1200px;margin:2rem auto 0;padding-top:1rem;border-top:1px solid rgba(255,255,255,.04);display:flex;justify-content:space-between;font-size:.72rem}

.rv{opacity:0;transform:translateY(50px);transition:opacity .9s ease,transform .9s cubic-bezier(.16,1,.3,1)}.rv.v{opacity:1;transform:translateY(0)}
.d1{transition-delay:.12s}.d2{transition-delay:.25s}.d3{transition-delay:.38s}.d4{transition-delay:.5s}

@media(max-width:1024px){
body{cursor:auto}#cur,#dot,.sg,.bel,.mini-ball,.trail,.orb,.geo,.st-l,.st-r,.sd,.sc{display:none}
.prod-row,.prod-row--flip{grid-template-columns:1fr;text-align:center}
.prod-row--flip .prod-txt{order:unset;text-align:center}.prod-row--flip .prod-tags{justify-content:center}.prod-row--flip .prod-big{margin:0 auto}
.prod-vis{min-height:280px}
.ball{width:min(55vw,260px)!important;height:min(55vw,260px)!important}.ball--rugb{width:min(60vw,300px)!important;height:min(34vw,160px)!important}
.prod-txt{text-align:center;display:flex;flex-direction:column;align-items:center}
.prod-big{margin:0 auto 2rem!important}.prod-tags{justify-content:center!important}
.scattered{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.scard{position:relative!important;transform:none!important;width:100%!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important}
.refs__scatter{height:auto;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}
.rc{position:relative!important;transform:none!important;font-size:1rem!important;padding:1rem 1.5rem!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important}
.st{position:relative!important;transform:none!important;inset:auto!important}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem;height:auto;padding:0 4vw}
.quote{grid-template-columns:1fr}.quote__vis{min-height:240px}
.zz{flex-direction:column!important;align-items:center;text-align:center}.zz:nth-child(even) .zz__txt{align-items:center}
.navl{display:none}.ft__grid{grid-template-columns:1fr 1fr}
.cta-ball{display:none}
}
@media(max-width:600px){.hero__t{font-size:2.8rem}.stats{grid-template-columns:1fr}.ft__grid{grid-template-columns:1fr}.ft__bot{flex-direction:column;gap:.4rem;text-align:center}.scattered{grid-template-columns:1fr}}


/* ═══ SUB-PAGES ═══ */
.page-hero{min-height:55vh;background:var(--bk);display:flex;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden;padding:8rem 4vw 5rem}
.page-hero__mesh{position:absolute;inset:0;pointer-events:none}
.page-hero__ey{font-family:var(--ff-hand);font-size:clamp(1rem,1.5vw,1.3rem);color:var(--lime);display:block;margin-bottom:.8rem}
.page-hero__t{font-family:var(--ff-h);font-weight:800;font-size:clamp(3rem,7vw,7rem);color:#fff;letter-spacing:-.05em;line-height:.85;margin-bottom:1.2rem}
.page-hero__t em{font-style:normal}
.page-hero__t .pop{color:var(--lime)}.page-hero__t .hot{color:var(--hot)}.page-hero__t .foot-c{color:var(--foot-a)}.page-hero__t .bask-c{color:var(--bask-a)}.page-hero__t .rugb-c{color:var(--rugb-a)}
.page-hero__sub{font-size:clamp(.95rem,1.3vw,1.15rem);color:rgba(255,255,255,.35);font-weight:300;line-height:1.8;max-width:560px;margin:0 auto}
.page-section{padding:6rem 0;position:relative}
.page-section:nth-child(odd){background:var(--cream)}
.page-section:nth-child(even){background:#fff}
.page-ctn{max-width:1000px;margin:0 auto;padding:0 4vw}
.page-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}
@media(max-width:768px){.page-grid{grid-template-columns:1fr}}
.page-card{background:#fff;border:3px solid var(--bk);border-radius:20px;box-shadow:6px 6px 0 var(--bk);padding:2rem;transition:all .4s cubic-bezier(.34,1.56,.64,1)}
.page-card:hover{transform:translate(-4px,-4px);box-shadow:10px 10px 0 var(--bk)}
.page-card__emoji{font-size:2.5rem;margin-bottom:.8rem}
.page-card__title{font-family:var(--ff-h);font-weight:800;font-size:1.1rem;text-transform:uppercase;margin-bottom:.5rem}
.page-card__desc{font-size:.9rem;color:var(--txt-m);line-height:1.7;font-weight:300}
.page-card--f{border-color:var(--foot);box-shadow:6px 6px 0 var(--foot)}.page-card--f:hover{box-shadow:10px 10px 0 var(--foot)}
.page-card--f .page-card__title{color:var(--foot)}
.page-card--b{border-color:var(--bask);box-shadow:6px 6px 0 var(--bask)}.page-card--b:hover{box-shadow:10px 10px 0 var(--bask)}
.page-card--b .page-card__title{color:var(--bask)}
.page-card--r{border-color:var(--rugb);box-shadow:6px 6px 0 var(--rugb)}.page-card--r:hover{box-shadow:10px 10px 0 var(--rugb)}
.page-card--r .page-card__title{color:var(--rugb)}
.section-head{text-align:center;margin-bottom:3.5rem}
.section-head__label{font-family:var(--ff-hand);font-size:clamp(1.1rem,1.5vw,1.4rem);color:var(--hot);display:block}
.section-head__title{font-family:var(--ff-h);font-weight:800;font-size:clamp(2rem,4.5vw,3.8rem);color:var(--txt);letter-spacing:-.04em;line-height:.88}
.section-head__title em{color:var(--lime-dk);font-style:normal}
/* Product detail grid */
.prod-detail{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;margin-bottom:5rem}
.prod-detail:nth-child(even){direction:rtl}.prod-detail:nth-child(even) > *{direction:ltr}
@media(max-width:900px){.prod-detail{grid-template-columns:1fr}}
.prod-detail__vis{text-align:center;font-size:6rem}
.prod-detail__name{font-family:var(--ff-h);font-weight:800;font-size:clamp(1.5rem,3vw,2.4rem);letter-spacing:-.03em;margin-bottom:.6rem}
.prod-detail__desc{font-size:1rem;color:var(--txt-m);line-height:1.8;font-weight:300;margin-bottom:1.5rem}
.prod-detail__specs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}
/* Form */
.form-wrap{max-width:680px;margin:0 auto}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-bottom:1.2rem}
@media(max-width:600px){.form-row{grid-template-columns:1fr}}
.form-group{display:flex;flex-direction:column;gap:.3rem}
.form-group--full{grid-column:1/-1}
.form-label{font-family:var(--ff-h);font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--txt-m)}
.form-input,.form-select,.form-textarea{font-family:var(--ff-b);font-size:.95rem;padding:.85rem 1.2rem;border:2px solid rgba(21,21,26,.08);border-radius:14px;background:#fff;color:var(--txt);transition:all .3s;outline:none}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--lime-dk);box-shadow:0 0 0 3px var(--lime-gl)}
.form-textarea{min-height:140px;resize:vertical}
.form-submit{display:flex;justify-content:center;margin-top:2rem}
/* Timeline */
.timeline{position:relative;max-width:700px;margin:0 auto}
.timeline::before{content:'';position:absolute;left:20px;top:0;bottom:0;width:3px;background:repeating-linear-gradient(to bottom,var(--lime-dk) 0,var(--lime-dk) 8px,transparent 8px,transparent 16px);border-radius:2px}
.tl-item{display:flex;gap:2rem;margin-bottom:3rem;position:relative;padding-left:50px}
.tl-item__dot{position:absolute;left:12px;top:.3rem;width:20px;height:20px;border-radius:50%;background:var(--lime);border:3px solid var(--bk);z-index:2}
.tl-item__year{font-family:var(--ff-h);font-weight:800;font-size:.65rem;color:var(--hot);text-transform:uppercase;letter-spacing:.12em}
.tl-item__title{font-family:var(--ff-h);font-weight:800;font-size:1rem;text-transform:uppercase;margin:.2rem 0 .4rem}
.tl-item__desc{font-size:.9rem;color:var(--txt-m);line-height:1.7;font-weight:300}
/* Article cards */
.article-card{background:#fff;border-radius:20px;overflow:hidden;border:2px solid rgba(21,21,26,.04);transition:all .4s cubic-bezier(.34,1.56,.64,1)}
.article-card:hover{transform:translateY(-8px);box-shadow:0 20px 50px rgba(0,0,0,.06)}
.article-card__img{height:180px;display:flex;align-items:center;justify-content:center;font-size:4rem}
.article-card__img--f{background:linear-gradient(135deg,var(--foot-a),var(--foot))}
.article-card__img--b{background:linear-gradient(135deg,var(--bask-a),var(--bask))}
.article-card__img--r{background:linear-gradient(135deg,var(--rugb-a),var(--rugb))}
.article-card__body{padding:1.5rem}
.article-card__date{font-family:var(--ff-hand);font-size:.85rem;color:var(--hot)}
.article-card__title{font-family:var(--ff-h);font-weight:800;font-size:1rem;margin:.3rem 0 .5rem}
.article-card__excerpt{font-size:.85rem;color:var(--txt-m);line-height:1.65;font-weight:300}
/* Legal */
.legal-content{max-width:780px;margin:0 auto;padding:0 4vw}
.legal-content h2{font-family:var(--ff-h);font-weight:800;font-size:1.3rem;margin:2.5rem 0 .8rem;color:var(--txt)}
.legal-content p{font-size:.92rem;color:var(--txt-m);line-height:1.8;font-weight:300;margin-bottom:1rem}
/* Refs grid */
.refs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem}
.ref-card{background:#fff;border:2px solid rgba(21,21,26,.04);border-radius:18px;padding:2rem;text-align:center;transition:all .4s cubic-bezier(.34,1.56,.64,1)}
.ref-card:hover{transform:translateY(-8px) rotate(-2deg);box-shadow:0 16px 45px rgba(0,0,0,.06);border-color:var(--lime-dk)}
.ref-card__name{font-family:var(--ff-h);font-weight:800;font-size:1.2rem;margin-top:.8rem}
.ref-card__type{font-family:var(--ff-hand);font-size:.9rem;color:var(--txt-l);margin-top:.2rem}
