:root{--bg:#070b14;--bg2:#0b1222;--card:#0f1a2e;--line:#1d2a44;--navy:#063159;--blue:#2ea3f2;--orange:#4cc23a;--amber:#8fd14f;--lime:#ffb238;--green:#f79946;--text:#e8eef8;--muted:#a9b6cc;--r:16px;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,Inter,Arial,sans-serif}
img{max-width:100%;height:auto;display:block}a{color:var(--amber)}a:hover{color:#ffd27a}
h1,h2,h3{line-height:1.15;letter-spacing:-.02em;margin:0 0 .6em}h1{font-size:clamp(2.1rem,5.2vw,3.9rem);font-weight:800}h2{font-size:clamp(1.6rem,3.4vw,2.5rem);font-weight:800}h3{font-size:1.2rem}
p{margin:0 0 1em}.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px;top:0;background:var(--amber);color:#000;padding:10px 14px;z-index:99}.skip:focus{left:10px}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:6px}
.grad{background:linear-gradient(90deg,var(--orange),var(--amber));-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{display:inline-flex;gap:8px;align-items:center;font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--lime);margin-bottom:14px}
.eyebrow:before{content:"";width:22px;height:2px;background:var(--lime)}
.lead{font-size:1.15rem;color:var(--muted);max-width:640px}
/* header */
.hdr{position:sticky;top:0;z-index:50;background:rgba(7,11,20,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color .3s,background .3s}
.hdr.scrolled{border-color:var(--line);background:rgba(7,11,20,.95)}
.hdr .wrap{display:flex;align-items:center;gap:18px;height:74px}
.brand img{width:130px;height:auto}.nav{display:flex;gap:4px;margin-left:auto}
.nav a{white-space:nowrap;color:var(--text);text-decoration:none;font-weight:600;font-size:.93rem;padding:8px 10px;border-radius:8px}.nav a:hover,.nav a[aria-current=page]{background:var(--card);color:var(--amber)}
.hcta{display:flex;gap:10px;align-items:center}.tel{color:var(--text);text-decoration:none;font-weight:700;white-space:nowrap}.tel svg{vertical-align:-3px;margin-right:6px;color:var(--lime)}
.burger{display:none;margin-left:auto;background:none;border:1px solid var(--line);color:var(--text);border-radius:10px;width:44px;height:44px;cursor:pointer}
@media(max-width:1180px){.nav{display:none;position:absolute;top:74px;left:0;right:0;flex-direction:column;background:var(--bg2);padding:14px 20px 20px;border-bottom:1px solid var(--line)}.nav.open{display:flex}.nav a{padding:12px}.burger{display:block;margin-left:0;order:3}.hcta .btn{display:none}.hcta{margin-left:auto}.tel span{display:none}.tel svg{margin:0}.tel{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:10px}}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 22px;border-radius:12px;font-weight:800;text-decoration:none;border:0;cursor:pointer;font-size:1rem;transition:transform .2s,box-shadow .2s,background .2s}
.btn-p{background:linear-gradient(135deg,var(--orange),var(--amber));color:#1a0e00;box-shadow:0 8px 30px -8px rgba(76,194,58,.6)}.btn-p:hover{color:#1a0e00;transform:translateY(-2px);box-shadow:0 14px 34px -8px rgba(76,194,58,.75)}
.btn-g{background:transparent;color:var(--text);border:1.5px solid #34507e}.btn-g:hover{color:var(--text);border-color:var(--lime);transform:translateY(-2px)}
.btn-sm{padding:10px 16px;font-size:.92rem;white-space:nowrap}
/* hero */
.hero{position:relative;overflow:hidden;padding:90px 0 80px;isolation:isolate}
.hero:before{content:"";position:absolute;inset:-30%;z-index:-2;background:radial-gradient(40% 45% at 20% 30%,rgba(46,163,242,.28),transparent 70%),radial-gradient(35% 40% at 80% 20%,rgba(76,194,58,.22),transparent 70%),radial-gradient(35% 40% at 65% 85%,rgba(255,178,56,.14),transparent 70%);animation:drift 18s ease-in-out infinite alternate}
.hero:after{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(70% 70% at 50% 40%,#000,transparent)}
@keyframes drift{to{transform:translate3d(4%,3%,0) rotate(6deg)}}
.hero-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:48px;align-items:center}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 18px}.ticks{display:flex;flex-wrap:wrap;gap:8px 18px;list-style:none;padding:0;margin:0;color:var(--muted);font-size:.95rem}.ticks li:before{content:"✓";color:var(--lime);font-weight:900;margin-right:7px}
.hero-card{background:linear-gradient(160deg,rgba(15,26,46,.95),rgba(9,16,30,.95));border:1px solid var(--line);border-radius:22px;padding:26px;box-shadow:0 30px 80px -30px rgba(0,0,0,.8)}
.hero-card h2{font-size:1.35rem}.svc-mini{display:grid;gap:10px;margin:16px 0}.svc-mini a{display:flex;align-items:center;gap:14px;padding:13px 14px;border-radius:12px;background:rgba(255,255,255,.03);border:1px solid var(--line);text-decoration:none;color:var(--text);font-weight:700;transition:border-color .2s,transform .2s}.svc-mini a:hover{border-color:var(--orange);transform:translateX(4px)}.svc-mini small{display:block;color:var(--muted);font-weight:500}
.ic{flex:none;width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:rgba(46,163,242,.12);color:var(--blue)}.ic.o{background:rgba(76,194,58,.13);color:var(--orange)}.ic.l{background:rgba(255,178,56,.13);color:var(--lime)}.ic.a{background:rgba(143,209,79,.13);color:var(--amber)}
@media(max-width:900px){.hero{padding:56px 0}.hero-grid{grid-template-columns:1fr}}
/* sections */
section{padding:84px 0}.alt{background:var(--bg2);border-block:1px solid var(--line)}.center{text-align:center}.center .lead{margin-inline:auto}
.trust{padding:22px 0;background:#0a1120;border-block:1px solid var(--line)}.trust ul{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;list-style:none;margin:0;padding:0}.trust li{display:flex;gap:12px;align-items:center;font-weight:700}.trust small{display:block;color:var(--muted);font-weight:500;font-size:.85rem}
@media(max-width:820px){.trust ul{grid-template-columns:1fr 1fr}}@media(max-width:440px){.trust ul{grid-template-columns:1fr}}
.grid{display:grid;gap:20px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
@media(max-width:960px){.g3,.g4{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}}
.card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px;transition:transform .25s,border-color .25s,box-shadow .25s;overflow:hidden}
.card.hover:hover{transform:translateY(-5px);border-color:#2f4a76;box-shadow:0 20px 50px -25px rgba(46,163,242,.45)}
.card h3{margin-top:16px}.card p{color:var(--muted)}.card .more{font-weight:800;text-decoration:none}.card .more:after{content:" →";transition:margin .2s}.card:hover .more:after{margin-left:4px}
.card.svc:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--blue),var(--orange),var(--lime));opacity:0;transition:opacity .25s}.card.svc:hover:before{opacity:1}
.steps{counter-reset:s}.step{counter-increment:s}.step:before{content:counter(s,decimal-leading-zero);display:block;font-size:2.6rem;font-weight:900;line-height:1;background:linear-gradient(135deg,var(--orange),var(--amber));-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:6px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}@media(max-width:900px){.split{grid-template-columns:1fr;gap:32px}}
.checks{list-style:none;padding:0;margin:0 0 1.2em}.checks li{position:relative;padding-left:32px;margin:0 0 12px}.checks li:before{content:"";position:absolute;left:0;top:4px;width:20px;height:20px;border-radius:50%;background:rgba(255,178,56,.15) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffb238' stroke-width='3.5'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/12px no-repeat}
.towns{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:24px 0 0}.towns a{display:inline-block;padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--text);text-decoration:none;font-weight:600;transition:all .2s}.towns a:hover{border-color:var(--lime);color:var(--lime);transform:translateY(-2px)}
.stat{font-size:clamp(2.2rem,5vw,3.2rem);font-weight:900;line-height:1;color:var(--amber)}.stat+p{color:var(--muted);margin-top:8px}
/* faq */
.faq{max-width:860px;margin:30px auto 0}.faq details{border:1px solid var(--line);background:var(--card);border-radius:14px;margin-bottom:12px;overflow:hidden}.faq summary{cursor:pointer;list-style:none;padding:20px 56px 20px 22px;font-weight:700;position:relative}.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--orange);transition:transform .25s}.faq details[open] summary:after{transform:translateY(-50%) rotate(45deg)}.faq .a{padding:0 22px 18px;color:var(--muted)}
/* cta band */
.band{position:relative;overflow:hidden;border-radius:24px;padding:56px 44px;background:linear-gradient(120deg,#0b2a52,#08183a 55%,#2a1b0c);border:1px solid #234272;display:grid;grid-template-columns:1.4fr auto;gap:30px;align-items:center}.band:after{content:"";position:absolute;right:-80px;top:-80px;width:300px;height:300px;border-radius:50%;background:radial-gradient(rgba(76,194,58,.35),transparent 70%)}.band>*{position:relative;z-index:1}.band p{color:#c7d3e6}
@media(max-width:800px){.band{grid-template-columns:1fr;padding:38px 24px}}
/* page head */
.phead{padding:64px 0 44px;position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(50% 80% at 85% 0%,rgba(46,163,242,.16),transparent 70%),radial-gradient(40% 70% at 0% 100%,rgba(76,194,58,.12),transparent 70%)}
.crumbs{font-size:.88rem;color:var(--muted);margin-bottom:18px}.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0}.crumbs li+li:before{content:"/";margin-right:6px;opacity:.5}.crumbs a{color:var(--muted)}
.prose{max-width:760px}.prose h2{font-size:1.6rem;margin-top:1.6em}.prose p,.prose li{color:#c9d4e6}
.aside{position:sticky;top:96px}
/* form */
.form{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:28px}.form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:600px){.form .row{grid-template-columns:1fr}}
.fld{margin-bottom:14px}.fld label,.fld legend{display:block;font-weight:700;font-size:.92rem;margin-bottom:6px}.fld .opt{color:var(--muted);font-weight:500}
.fld input,.fld textarea,.fld select{width:100%;padding:13px 14px;border-radius:10px;border:1px solid #2a3b5c;background:#0a1324;color:var(--text);font:inherit}.fld input:focus,.fld textarea:focus,.fld select:focus{border-color:var(--amber);outline:2px solid rgba(143,209,79,.35)}
fieldset.fld{border:0;padding:0;margin:0 0 14px}.cbs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cbs label{display:flex;gap:10px;align-items:center;font-weight:600;padding:11px 12px;border:1px solid #2a3b5c;border-radius:10px;cursor:pointer;margin:0}.cbs input{width:18px;height:18px;accent-color:var(--orange)}.cbs label:has(input:checked){border-color:var(--orange);background:rgba(76,194,58,.08)}
.form .note{font-size:.85rem;color:var(--muted);margin:12px 0 0}.err{color:#ff9b9b;font-size:.88rem;min-height:1.2em}.form .btn{width:100%}
/* footer */
.ftr{background:#050810;border-top:1px solid var(--line);padding:64px 0 28px;color:var(--muted);font-size:.95rem}.ftr .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:30px}@media(max-width:860px){.ftr .cols{grid-template-columns:1fr 1fr}}@media(max-width:520px){.ftr .cols{grid-template-columns:1fr}}
.ftr h2{font-size:1rem;color:var(--text);margin-bottom:14px}.ftr ul{list-style:none;padding:0;margin:0}.ftr li{margin-bottom:8px}.ftr a{color:var(--muted);text-decoration:none}.ftr a:hover{color:var(--amber)}.legal{border-top:1px solid var(--line);margin-top:40px;padding-top:22px;display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between;font-size:.85rem}
/* mobile call bar + wa */
.mbar{display:none}@media(max-width:700px){.mbar{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:10px;background:rgba(5,8,16,.96);border-top:1px solid var(--line)}.mbar .btn{padding:12px}body{padding-bottom:72px}.wa{bottom:84px!important}}
.wa{position:fixed;right:20px;bottom:20px;z-index:55;width:56px;height:56px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 10px 30px -6px rgba(37,211,102,.6);transition:transform .2s}.wa:hover{transform:scale(1.08);color:#fff}
/* reveal */
.js .rv{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.js .rv.in{opacity:1;transform:none}.rv.d1{transition-delay:.08s}.rv.d2{transition-delay:.16s}.rv.d3{transition-delay:.24s}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js .rv{opacity:1;transform:none}}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* v2 richer visuals */
.hero{min-height:min(860px,100svh)}.hero-bg{position:absolute;inset:0;z-index:-3}.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.32;filter:saturate(.8);transform:scale(1.06);animation:kb 26s ease-in-out infinite alternate}
.hero-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,11,20,.96) 0%,rgba(7,11,20,.78) 45%,rgba(7,11,20,.55)),linear-gradient(0deg,var(--bg),transparent 40%)}
@keyframes kb{to{transform:scale(1.14) translate(-2%,-1%)}}
.aurora{position:absolute;inset:0;z-index:-2;overflow:hidden;filter:blur(60px);opacity:.75}.aurora i{position:absolute;width:42vw;height:42vw;border-radius:50%;mix-blend-mode:screen;animation:au 16s ease-in-out infinite alternate}
.aurora i:nth-child(1){background:rgba(46,163,242,.35);left:-10%;top:-10%}.aurora i:nth-child(2){background:rgba(76,194,58,.3);right:-8%;top:5%;animation-duration:20s;animation-delay:-5s}.aurora i:nth-child(3){background:rgba(255,178,56,.2);left:35%;bottom:-25%;animation-duration:24s}
@keyframes au{50%{transform:translate(8vw,6vh) scale(1.15)}100%{transform:translate(-4vw,10vh) scale(.9)}}
.lines{position:absolute;inset:0;width:100%;height:100%;z-index:-1;opacity:.5}.lines path{fill:none;stroke:url(#g);stroke:var(--amber);stroke-width:1.4;stroke-dasharray:6 14;animation:flow 6s linear infinite}.lines path+path{stroke:var(--blue);animation-duration:9s}
@keyframes flow{to{stroke-dashoffset:-200}}
.stagger span{display:inline-block;opacity:0;transform:translateY(.6em);animation:up .8s cubic-bezier(.2,.7,.2,1) forwards}.stagger span:nth-child(2){animation-delay:.08s}.stagger span:nth-child(3){animation-delay:.16s}.stagger span:nth-child(4){animation-delay:.24s}.stagger span:nth-child(5){animation-delay:.32s}.stagger span:nth-child(6){animation-delay:.4s}
@keyframes up{to{opacity:1;transform:none}}
.hero-copy>*:not(h1){animation:up .9s .45s cubic-bezier(.2,.7,.2,1) both}
.hero-side{position:relative;animation:up 1s .3s both}.float{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;padding:10px 14px 10px 10px;border-radius:14px;background:rgba(15,26,46,.88);border:1px solid #2a3d62;backdrop-filter:blur(8px);box-shadow:0 18px 40px -15px #000;font-size:.88rem;animation:bob 6s ease-in-out infinite}
.float .ic{width:34px;height:34px}.f1{left:-46px;top:40px}.f2{right:-30px;top:-22px;animation-delay:-2s}.f3{left:-34px;bottom:70px;animation-delay:-4s}
@keyframes bob{50%{transform:translateY(-12px)}}@media(max-width:1100px){.float{display:none}}
.pulse{position:relative}.pulse:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 0 0 rgba(143,209,79,.55);animation:pl 2.4s ease-out infinite}@keyframes pl{to{box-shadow:0 0 0 16px rgba(143,209,79,0)}}
.marquee{overflow:hidden;border-bottom:1px solid var(--line);background:#081020;padding:14px 0;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}.mq{display:flex;gap:44px;width:max-content;animation:mq 50s linear infinite}.mq span{font-weight:800;font-size:1.05rem;color:#9aabcb;white-space:nowrap}.mq span:before{content:"●";color:var(--orange);font-size:.6em;margin-right:14px;vertical-align:middle}
@keyframes mq{to{transform:translateX(-50%)}}
.cimg{margin:-26px -26px 18px;aspect-ratio:16/10;overflow:hidden;position:relative}.cimg img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.cimg:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,var(--card),transparent 60%)}.card.svc:hover .cimg img{transform:scale(1.08)}
.card.svc .ic{margin-top:-46px;position:relative;z-index:1}.card.svc:hover .ic svg{animation:wig .6s}@keyframes wig{30%{transform:rotate(-12deg) scale(1.15)}60%{transform:rotate(8deg)}}
.tilt{transform-style:preserve-3d;will-change:transform}.tilt:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(300px circle at var(--mx,50%) var(--my,50%),rgba(143,209,79,.12),transparent 60%);opacity:0;transition:opacity .3s}.tilt:hover:after{opacity:1}
.steps{position:relative}.conn{position:absolute;left:6%;right:6%;top:46px;height:2px;background:var(--line);overflow:hidden}.conn:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--orange),var(--amber),var(--lime));transform:scaleX(0);transform-origin:left;transition:transform 1.8s ease}.steps.in .conn:after{transform:none}.step{position:relative;z-index:1}@media(max-width:960px){.conn{display:none}}
.pimg{margin:0 0 1.6em;border-radius:18px;overflow:hidden;border:1px solid var(--line);position:relative;aspect-ratio:16/10}.pimg img{width:100%;height:118%;object-fit:cover;transform:translateY(var(--py,0))}.pimg:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,11,20,.55),transparent 50%)}
.phead.hasimg{padding:90px 0 64px}.pbg{position:absolute;inset:0;z-index:-1}.phead{isolation:isolate}.pbg img{width:100%;height:100%;object-fit:cover;opacity:.3}.pbg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 10%,rgba(7,11,20,.7) 60%,rgba(7,11,20,.5)),linear-gradient(0deg,var(--bg),transparent 50%)}
.wband{background:#0a1a14;border-color:#2f6b3f}.wband .bgimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.38;z-index:0}.wband:before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(5,16,12,.95),rgba(8,24,58,.75) 60%,rgba(40,22,6,.6))}
.snow{position:absolute!important;inset:-100px 0 0;z-index:0!important;pointer-events:none;background-image:radial-gradient(2px 2px at 20px 30px,#fff,transparent),radial-gradient(1.5px 1.5px at 90px 80px,#fff,transparent),radial-gradient(2px 2px at 160px 20px,rgba(255,255,255,.8),transparent),radial-gradient(1px 1px at 230px 110px,#fff,transparent),radial-gradient(2.5px 2.5px at 300px 60px,rgba(255,240,200,.9),transparent);background-size:320px 140px;opacity:.55;animation:snow 14s linear infinite}
@keyframes snow{to{background-position:40px 140px}}
.faq .a{overflow:hidden}
.js .rv.d1{transition-delay:.1s}.js .rv.d2{transition-delay:.2s}.js .rv.d3{transition-delay:.3s}
.force .rv{opacity:1!important;transform:none!important}
@media(prefers-reduced-motion:reduce){.stagger span,.hero-copy>*,.hero-side{opacity:1;transform:none}.conn:after{transform:none}}
.force .stagger span,.force .hero-copy>*,.force .hero-side{animation:none!important;opacity:1!important;transform:none!important}
.f1{left:-60px;top:auto;bottom:-22px}.f2{right:28px;top:-26px}.f3{right:-40px;left:auto;top:auto;bottom:-22px}
/* defensive image rules */
img{max-width:100%;height:auto;display:block}
.hero,.phead,.band,.card,.pimg,.cimg{overflow:hidden}
.hero-bg,.pbg{position:absolute;inset:0;overflow:hidden}.hero-bg img,.pbg img,.wband .bgimg{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none;object-fit:cover}
.cimg{aspect-ratio:16/10}.cimg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pimg{aspect-ratio:16/10}.pimg img{position:absolute;left:0;top:-9%;width:100%;height:118%;object-fit:cover}
.hero-side,.float{overflow:visible}.band{isolation:isolate}
.f1{left:-40px;bottom:-62px}.f3{right:-20px;bottom:-62px}
.sup .ic{transition:transform .4s}.sup:hover .ic{transform:translateY(-4px) scale(1.08)}
/* WhatsApp button v2 */
.wa{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(22px,calc(env(safe-area-inset-bottom) + 16px));z-index:55;width:60px;height:60px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 10px 28px -6px rgba(37,211,102,.55),0 4px 12px rgba(0,0,0,.35);transition:transform .25s,box-shadow .25s;animation:waBob 6s ease-in-out 2s infinite}
.wa:hover,.wa:focus-visible{color:#fff;transform:scale(1.1);box-shadow:0 16px 36px -6px rgba(37,211,102,.75),0 6px 16px rgba(0,0,0,.4);animation-play-state:paused}
.wa-ic{display:grid;place-items:center;position:relative;z-index:1}.wa-ic svg{width:32px;height:32px}
.wa-ring{position:absolute;inset:0;border-radius:50%;border:2px solid #25d366;animation:waRing 2.6s ease-out infinite}
@keyframes waRing{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.7);opacity:0}}
@keyframes waBob{0%,84%,100%{transform:none}87%{transform:rotate(-12deg) scale(1.05)}90%{transform:rotate(10deg) scale(1.05)}93%{transform:rotate(-6deg)}96%{transform:rotate(0) translateY(-4px)}}
.wa-tip{position:absolute;right:calc(100% + 12px);top:50%;transform:translate(10px,-50%);opacity:0;pointer-events:none;white-space:nowrap;background:#fff;color:#0b1222;font-weight:700;font-size:.9rem;padding:8px 14px;border-radius:999px;box-shadow:0 8px 24px rgba(0,0,0,.35);transition:opacity .3s,transform .3s}
.wa-tip:after{content:"";position:absolute;right:-5px;top:50%;width:10px;height:10px;background:#fff;transform:translateY(-50%) rotate(45deg)}
.wa:hover .wa-tip,.wa:focus-visible .wa-tip,.wa.peek .wa-tip{opacity:1;transform:translate(0,-50%)}
@media(hover:none){.wa:hover .wa-tip{opacity:0}}
@media(max-width:700px){.wa{width:54px;height:54px;right:max(14px,env(safe-area-inset-right));bottom:calc(84px + env(safe-area-inset-bottom))!important}.wa-ic svg{width:29px;height:29px}.mbar{padding-bottom:calc(10px + env(safe-area-inset-bottom))}body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.wa,.wa-ring{animation:none!important}.wa-ring{display:none}}
.wa.wa-hide{opacity:0;pointer-events:none;transform:scale(.6)}.wa{transition:transform .25s,box-shadow .25s,opacity .3s}
/* mascots */
.meet{position:relative;overflow:hidden;background:radial-gradient(50% 60% at 75% 60%,rgba(46,163,242,.14),transparent 70%),radial-gradient(40% 50% at 90% 20%,rgba(76,194,58,.12),transparent 70%)}
.meet-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:40px;align-items:center}
.meet-art{position:relative;display:flex;justify-content:center;align-items:flex-end;gap:10px;padding-top:90px;min-height:420px}
.meet-art:before{content:"";position:absolute;left:10%;right:10%;bottom:4px;height:40px;border-radius:50%;background:radial-gradient(rgba(0,0,0,.55),transparent 70%)}
.guy{margin:0;position:relative;width:46%;max-width:230px}.guy img{width:100%;height:auto;transform-origin:50% 100%;transition:transform .35s cubic-bezier(.3,1.6,.5,1)}
.guy:hover img{transform:rotate(-4deg) scale(1.04)}.guy-t:hover img{transform:rotate(4deg) scale(1.04)}
.guy figcaption{text-align:center;font-weight:800;color:var(--muted);font-size:.9rem;margin-top:6px}
.mfloat{animation:mf 5s ease-in-out infinite}.mfloat.d2{animation-delay:-2.5s}@keyframes mf{50%{translate:0 -8px}}
.bubble{position:absolute;top:-78px;z-index:2;background:#fff;color:#0b1222;font-weight:700;font-size:.95rem;line-height:1.35;padding:12px 16px;border-radius:16px;box-shadow:0 14px 30px -10px rgba(0,0,0,.6);width:max-content;max-width:210px}
.bubble strong{color:#e07a1f}.bubble:after{content:"";position:absolute;bottom:-8px;width:16px;height:16px;background:#fff;transform:rotate(45deg)}
.b-a{left:0}.b-a:after{left:34px}.b-t{right:0}.b-t:after{right:34px}
.js .bubble{opacity:0;transform:scale(.6) translateY(14px);transform-origin:30% 100%;transition:opacity .4s,transform .5s cubic-bezier(.3,1.6,.5,1)}.js .b-t{transform-origin:70% 100%;transition-delay:.35s}
.js .meet-art.in .bubble,.force .bubble{opacity:1;transform:none}
@media(max-width:900px){.meet-grid{grid-template-columns:1fr}.meet-art{min-height:0;padding-top:100px}}
@media(max-width:520px){.bubble{font-size:.82rem;max-width:150px;padding:10px 12px;top:-86px}.meet-art{padding-top:96px}}
.band-m{grid-template-columns:auto 1.4fr auto}.band-pair{width:170px;align-self:end;margin:-30px 0 -56px -10px}.band-pair img{width:100%;height:auto}
@media(max-width:900px){.band-m{grid-template-columns:1fr}.band-pair{display:none}}
.w-tony{position:absolute;right:26px;bottom:-6px;width:120px;z-index:1;pointer-events:none}.w-tony img{width:100%;height:auto}
.wband{padding-right:170px}.wband .ctas{position:relative;z-index:2}
@media(max-width:1000px){.w-tony{display:none}.wband{padding-right:24px}}
@media(prefers-reduced-motion:reduce){.mfloat{animation:none}.js .bubble{opacity:1;transform:none}}
/* polish v3 */
@font-face{font-family:"Inter";src:url(/assets/fonts/inter-var.woff2) format("woff2");font-weight:100 900;font-display:optional}
body{font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-feature-settings:"cv11","ss01"}
h1,h2,h3{text-wrap:balance}p,li{text-wrap:pretty}.lead{max-width:62ch}.prose{max-width:68ch}
section{padding:88px 0}@media(max-width:700px){section{padding:60px 0}}
.btn-lg{padding:17px 30px;font-size:1.08rem}
/* big steps */
.bigsteps{position:relative;padding:72px 0 80px;background:linear-gradient(180deg,var(--bg) 0%,#0a1428 100%);border-bottom:1px solid var(--line)}
.bs-wrap{position:relative;margin-top:44px}
.bslist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;position:relative;counter-reset:none}
.bline{position:absolute;left:12.5%;right:12.5%;top:38px;height:3px;border-radius:3px;background:var(--line);overflow:hidden;z-index:0}
.bline:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--orange),var(--amber),var(--lime));transform:scaleX(0);transform-origin:left;transition:transform 2s cubic-bezier(.3,.7,.2,1)}
.bigsteps.in .bline:after,.force .bline:after{transform:none}
.bstep{position:relative;z-index:1;text-align:center;background:linear-gradient(180deg,rgba(15,26,46,.9),rgba(11,18,34,.9));border:1px solid var(--line);border-radius:20px;padding:0 22px 26px;margin-top:0;transition:transform .3s,border-color .3s,box-shadow .3s}
.bstep:hover{transform:translateY(-6px);border-color:#34507e;box-shadow:0 22px 50px -25px rgba(76,194,58,.45)}
.bnum{display:grid;place-items:center;width:76px;height:76px;margin:0 auto 14px;transform:translateY(-0px);border-radius:50%;font-size:2rem;font-weight:900;color:#1a0e00;background:linear-gradient(135deg,var(--orange),var(--amber));box-shadow:0 0 0 8px var(--bg),0 12px 30px -8px rgba(76,194,58,.7)}
.bic{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:12px;background:rgba(255,178,56,.12);color:var(--lime);margin-bottom:10px;transition:transform .4s}
.bstep:hover .bic{transform:rotate(-8deg) scale(1.12)}
.bstep h3{font-size:1.15rem;margin-bottom:8px}.bstep p{color:var(--muted);margin:0;font-size:.97rem}
.bs-cta{margin-top:36px;display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.bs-cta .btn-g svg{width:22px;height:22px;color:#25d366}
.steps-alan{position:absolute;left:-150px;top:-30px;width:130px;z-index:2}.steps-alan img{width:100%;height:auto}
.sbub{position:absolute;top:-58px;left:40px;width:max-content;max-width:170px;background:#fff;color:#0b1222;font-weight:800;font-size:.85rem;padding:8px 12px;border-radius:14px;box-shadow:0 10px 24px -8px #000}
.sbub:after{content:"";position:absolute;left:24px;bottom:-6px;width:12px;height:12px;background:#fff;transform:rotate(45deg)}
@media(max-width:1500px){.steps-alan{display:none}}
@media(max-width:960px){.bslist{grid-template-columns:1fr 1fr}.bline{display:none}}
@media(max-width:560px){.bslist{grid-template-columns:1fr;gap:14px}.bstep{display:grid;grid-template-columns:56px 1fr;text-align:left;gap:4px 14px;padding:18px;align-items:start}.bnum{width:52px;height:52px;font-size:1.4rem;margin:0;grid-row:span 3;box-shadow:0 8px 20px -8px rgba(76,194,58,.7)}.bic{display:none}.bigsteps{padding:52px 0 56px}.bs-cta .btn{width:100%}}
/* compact steps */
.csteps{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:26px;margin:1.6em 0}
.csteps h2{font-size:1.35rem;margin-top:0}.csteps ol{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:14px}
.csteps li{display:flex;gap:14px;align-items:flex-start}.csteps li div{display:flex;flex-direction:column}.csteps li span:not(.cnum){color:var(--muted);font-size:.95rem}
.cnum{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;font-weight:900;color:#1a0e00;background:linear-gradient(135deg,var(--orange),var(--amber))}
.cs-cta{display:flex;flex-wrap:wrap;gap:10px;margin:0}
/* bill note */
.billnote{display:flex;gap:12px;align-items:flex-start;background:rgba(255,178,56,.07);border:1px dashed rgba(255,178,56,.4);border-radius:12px;padding:12px 14px;margin:4px 0 14px}
.billnote p{margin:0;font-size:.9rem;color:#c9d4e6}.billnote .ic{width:36px;height:36px}.billnote a{color:var(--lime)}
/* form validation */
.fld .msg{display:block;color:#ffaaaa;font-size:.83rem;margin-top:5px;min-height:0}
.fld input[aria-invalid=true]{border-color:#ff8080}
.fsuccess{text-align:center;padding:10px 4px}.fsuccess .ic{margin:0 auto 12px;width:56px;height:56px;background:rgba(255,178,56,.15);color:var(--lime)}
.fsuccess h2{font-size:1.4rem}.fsuccess p{color:var(--muted)}
.nav a:focus-visible,.btn:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
.card h3,.bstep h3{min-height:0}
.hero{min-height:0;padding:64px 0 72px}@media(max-width:900px){.hero{padding:44px 0 56px}}
h1,h2,h3,p,li,a,figcaption,.bubble,.sbub{overflow-wrap:break-word}a[href^="mailto:"],a[href^="https://wa.me"]{overflow-wrap:anywhere}.csteps li div{min-width:0}
@media(max-width:560px){.cs-cta .btn,.meet-copy .btn,.band .btn{width:100%}.csteps{padding:22px 18px}}
/* mobile hero v2 */
.mhero{display:none}
@media(max-width:700px){
.hero{padding:22px 0 40px}
.hero-bg img{opacity:.18}
.mhero{display:flex;flex-direction:column;align-items:center;text-align:center}
.hero-copy>*:not(h1){display:none!important}
.mh-art{position:relative;width:min(250px,68vw);margin:8px auto 4px}
.mh-art:before{content:"";position:absolute;left:8%;right:8%;bottom:-2px;height:22px;border-radius:50%;background:radial-gradient(rgba(0,0,0,.6),transparent 70%)}
.mh-art:after{content:"";position:absolute;inset:8% -8% 4%;z-index:-1;border-radius:50%;background:radial-gradient(circle,rgba(76,194,58,.35),rgba(46,163,242,.12) 55%,transparent 72%);animation:mhGlow 4s ease-in-out infinite alternate}
.mh-img{width:100%;height:auto;animation:mhIn .9s cubic-bezier(.2,1.4,.4,1) both,mf 5s ease-in-out 1s infinite}
.mh-bub{position:absolute;top:-6px;right:-14%;background:#fff;color:#0b1222;font-weight:800;font-size:.8rem;line-height:1.2;padding:8px 11px;border-radius:14px;max-width:132px;box-shadow:0 10px 24px -8px #000;animation:mhPop .5s .8s cubic-bezier(.3,1.6,.5,1) both}
.mh-bub:after{content:"";position:absolute;left:14px;bottom:-5px;width:10px;height:10px;background:#fff;transform:rotate(45deg)}
.mh-title{font-size:clamp(1.85rem,9vw,2.4rem);font-weight:900;line-height:1.08;letter-spacing:-.03em;margin:14px 0 8px;text-wrap:balance;animation:up .7s .25s both}
.mh-title span{display:block;background:linear-gradient(90deg,var(--orange),var(--amber));-webkit-background-clip:text;background-clip:text;color:transparent}
.mh-line{color:var(--muted);font-size:1rem;margin:0 0 18px;max-width:30ch;animation:up .7s .35s both}
.mh-cta{width:100%;font-size:1.1rem;padding:18px 20px;animation:up .7s .45s both}
.mh-wa{width:100%;margin-top:10px;background:rgba(37,211,102,.1);border:1.5px solid rgba(37,211,102,.55);color:#fff;animation:up .7s .55s both}.mh-wa svg{width:22px;height:22px;color:#25d366}.mh-wa:hover{color:#fff}
.mh-trust{list-style:none;padding:0;margin:16px 0 4px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;animation:up .7s .65s both}
.mh-trust li{font-size:.8rem;font-weight:700;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid var(--line);color:#d5deec}
.mh-trust li:before{content:"✓ ";color:var(--orange)}
.hero h1{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hero-side{margin-top:22px}
}
@keyframes mhIn{0%{opacity:0;transform:translateY(40px) scale(.85)}100%{opacity:1;transform:none}}
@keyframes mhPop{0%{opacity:0;transform:scale(.4) translateY(10px)}100%{opacity:1;transform:none}}
@keyframes mhGlow{to{opacity:.6;transform:scale(1.08)}}
@media(prefers-reduced-motion:reduce){.mh-img,.mh-bub,.mh-title,.mh-line,.mh-cta,.mh-wa,.mh-trust,.mh-art:after{animation:none!important;opacity:1;transform:none}}
.force .mh-img,.force .mh-bub,.force .mh-title,.force .mh-line,.force .mh-cta,.force .mh-wa,.force .mh-trust{animation:none!important;opacity:1!important;transform:none!important}
@media(max-width:700px){.mh-art{margin-top:40px}.mh-bub{top:-36px;right:-10%}}
@media(max-width:700px) and (max-height:780px){.mh-art{width:min(200px,56vw);margin-top:36px}.mh-title{font-size:1.8rem;margin-top:10px}.mh-line{margin-bottom:14px;font-size:.95rem}.mh-cta{padding:15px 18px}.mh-trust{margin-top:12px}}
.wa.wa-hide2{opacity:0;pointer-events:none;transform:scale(.6)}
@media(max-width:700px){.mh-art{margin-top:48px}.mh-bub{top:-50px;right:-12%}}
/* progress strip on forms */
.pstrip{list-style:none;margin:-4px 0 18px;padding:12px 10px;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;background:rgba(255,255,255,.03);border:1px solid var(--line);border-radius:14px;position:relative}
.pstrip:before{content:"";position:absolute;left:12.5%;right:12.5%;top:31px;height:2px;background:var(--line)}
.pstrip:after{content:"";position:absolute;left:12.5%;top:31px;height:2px;width:calc(75% * var(--pp,0));background:linear-gradient(90deg,var(--orange),var(--amber));transition:width .6s cubic-bezier(.3,.7,.2,1)}
.ps{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;min-width:0}
.psi{position:relative;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#0a1324;border:2px solid #2a3b5c;color:#7f90b0;transition:all .35s}
.psi svg{width:19px;height:19px}
.pst{position:absolute;inset:-2px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--orange),var(--amber));color:#06200a;font-weight:900;font-size:1.05rem;transform:scale(0);transition:transform .45s cubic-bezier(.3,1.7,.5,1)}
.psl{font-size:.74rem;font-weight:700;color:var(--muted);line-height:1.2}
.ps.is-active .psi{border-color:var(--orange);color:var(--orange);box-shadow:0 0 0 5px rgba(76,194,58,.14);animation:psPulse 2s ease-in-out infinite}
.ps.is-active .psl{color:var(--text)}
.ps.is-done .pst{transform:scale(1)}.ps.is-done .psl{color:var(--text)}.ps.is-done .psi{animation:none;border-color:transparent}
.ps.is-ready .psi{border-color:var(--amber);color:var(--amber)}
.psbar{display:block;width:70%;height:3px;border-radius:3px;background:var(--line);overflow:hidden}.psbar i{display:block;height:100%;width:calc(100% * var(--fp,0));background:var(--orange);transition:width .4s}
@keyframes psPulse{50%{box-shadow:0 0 0 9px rgba(76,194,58,0)}}
.fld.ok input{border-color:rgba(76,194,58,.6);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234cc23a' stroke-width='3'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:38px}
.fhint{transition:color .3s}.fhint.go{color:var(--amber)!important;font-weight:700}
@media(max-width:400px){.psl{font-size:.68rem}.psi{width:36px;height:36px}.pstrip:before,.pstrip:after{top:29px}.pstrip{padding:10px 6px}}
/* success */
.fsuccess .yay{position:relative;width:120px;margin:0 auto 6px}.fsuccess .yay img{width:100%;height:auto;animation:mhIn .8s cubic-bezier(.2,1.4,.4,1) both}
.fsuccess .pstrip{margin:0 0 16px}
.confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;border-radius:20px}
.confetti i{position:absolute;top:-10px;width:8px;height:12px;border-radius:2px;opacity:0;animation:cf 1.6s ease-out forwards}
@keyframes cf{0%{opacity:1;transform:translate(0,0) rotate(0)}100%{opacity:0;transform:translate(var(--dx),340px) rotate(540deg)}}
.form{position:relative}
@media(prefers-reduced-motion:reduce){.ps.is-active .psi{animation:none}.confetti{display:none}.pst,.pstrip:after,.psbar i{transition:none}}
.f2{top:-50px;right:-28px}a[href^="tel:"]{white-space:nowrap}
.visitopt{display:flex;gap:10px;align-items:flex-start;margin:2px 0 12px;padding:11px 12px;border:1px solid #2a3b5c;border-radius:10px;cursor:pointer;font-size:.9rem;color:#c9d4e6}
.visitopt input{width:18px;height:18px;flex:none;margin-top:2px;accent-color:var(--orange)}.visitopt:has(input:checked){border-color:var(--orange);background:rgba(76,194,58,.08)}
.psl{hyphens:auto;overflow-wrap:anywhere}
.statb{padding:40px 0}.statb-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 28px;text-align:center;background:linear-gradient(120deg,rgba(76,194,58,.12),rgba(46,163,242,.08));border:1px solid var(--line);border-radius:22px;padding:30px 24px}
.statb-n{font-size:clamp(3.2rem,12vw,5.5rem);font-weight:900;line-height:1;background:linear-gradient(135deg,var(--orange),var(--amber));-webkit-background-clip:text;background-clip:text;color:transparent}
.statb-in p{margin:0;font-size:1.2rem;font-weight:700;max-width:22ch;text-align:left}@media(max-width:560px){.statb-in p{text-align:center}}
.reviews{padding:56px 0}.stars{color:#fbbc04;letter-spacing:2px;font-size:1.05rem}
.rhead{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 10px;margin-top:10px;padding:10px 18px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.04)}
.rh-g{display:inline-flex;background:#fff;border-radius:50%;padding:4px}.rh-n{font-size:1.4rem;font-weight:900}.rh-t{color:#c9d4e6;font-weight:600}
.rgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:28px 0 22px}
.rvw{margin:0;display:flex;flex-direction:column;gap:12px;background:var(--card,#111b2e);border:1px solid var(--line);border-radius:18px;padding:20px;min-width:0;transition:transform .25s,border-color .25s}.rvw:hover{transform:translateY(-3px);border-color:rgba(76,194,58,.5)}
.rvw-top{display:flex;justify-content:space-between;align-items:center}.rvw blockquote{margin:0;flex:1}.rvw blockquote p{margin:0;color:#dbe4f3;font-size:.95rem;line-height:1.6;overflow-wrap:anywhere}
.rvw figcaption{display:flex;gap:10px;align-items:center}.rvw figcaption small{display:block;color:#9aabcb;font-size:.78rem}
.rav{width:36px;height:36px;flex:none;border-radius:50%;display:grid;place-items:center;font-weight:800;background:linear-gradient(135deg,var(--orange),var(--amber));color:#08111f}
@media(max-width:1100px){.rgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.rgrid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding:4px 2px 12px;margin-inline:-4px;scrollbar-width:thin}.rgrid .rvw{flex:0 0 84%;scroll-snap-align:start}}
.rstrip{padding:36px 0}.rs-in{border:1px solid var(--line);border-radius:20px;padding:22px;background:linear-gradient(120deg,rgba(76,194,58,.07),rgba(46,163,242,.05));text-align:center}
.rs-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;margin:18px 0 12px;text-align:left}.rs-link{font-weight:700}
.hdr .brand{flex:none}.hdr .brand img{flex:none;width:130px;height:auto}
@media(min-width:1181px) and (max-width:1380px){.nav a{padding-left:8px;padding-right:8px;font-size:.88rem}.hcta .tel span{font-size:.9rem}}
@media(max-width:700px){
.mh-line{margin:8px 0 10px;font-size:1rem;color:#dbe4f3}
.mh-svc{list-style:none;padding:0;margin:0 0 14px;width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.mh-svc a{display:flex;flex-direction:column;align-items:center;gap:6px;min-height:48px;padding:9px 2px 8px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.04);color:var(--text);text-decoration:none;font-size:.74rem;font-weight:700;line-height:1.15;text-align:center;transition:transform .2s,border-color .2s}
.mh-svc a:active,.mh-svc a:hover{transform:translateY(-2px);border-color:rgba(76,194,58,.6)}
.mh-svc .ic{width:36px;height:36px;border-radius:11px}.mh-svc .ic svg{width:20px;height:20px}
}
@media(max-width:370px){.mh-svc a{font-size:.68rem}}
/* contact page */
.ct-hero{padding:32px 0 24px;background:radial-gradient(700px 360px at 85% 30%,rgba(76,194,58,.14),transparent 70%)}
.ct-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:32px;align-items:center}
.ct-copy h1{font-size:clamp(2.4rem,6vw,3.6rem);margin:10px 0 10px;letter-spacing:-.03em}
.ct-lead{font-size:1.12rem;color:#c9d4e6;max-width:34ch;margin:0 0 22px}
.ct-btns{display:grid;gap:12px;max-width:440px}
.ctb{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:16px;text-decoration:none;color:#fff;font-size:1.05rem;min-height:64px;transition:transform .2s,box-shadow .2s;min-width:0}
.ctb svg{width:26px;height:26px;flex:none}.ctb span{display:flex;flex-direction:column;min-width:0}.ctb small{font-size:.92rem;opacity:.9;overflow-wrap:anywhere}
.ctb:hover{transform:translateY(-2px)}
.ctb-call{background:linear-gradient(135deg,var(--orange),var(--amber));color:#08111f}
.ctb-wa{background:#25d366;color:#062b14}
.ctb-mail{background:transparent;border:1.5px solid #3a4d73}
.ct-g{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid var(--line);color:#dbe4f3;text-decoration:none;font-size:.92rem}
.ct-g .gmark{background:#fff;border-radius:50%;padding:2px}
.ct-guys{display:flex;gap:14px;justify-content:center;align-items:flex-end}
.ct-guy{margin:0;flex:1;max-width:190px;display:flex;flex-direction:column;align-items:center;min-width:0}
.ct-guy img{width:100%;max-width:170px;height:auto}
.ct-guy figcaption{position:relative;margin-top:-8px;background:#fff;color:#0b1222;border-radius:14px;padding:10px 12px;font-size:.86rem;line-height:1.35;box-shadow:0 10px 24px -10px #000}
.ct-guy figcaption strong{display:block;color:#2f8f22;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em}
.ct-guy:nth-child(2){transform:translateY(18px)}
.ct-main{padding:40px 0 64px}
.ct-split{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}
.ct-side{display:grid;gap:16px}
.ct-box{border-left:4px solid var(--orange);padding:4px 0 4px 16px}.ct-box h2{font-size:1.25rem;margin:0 0 6px}.ct-box p{margin:0;color:#c9d4e6}
.ct-rev{margin:8px 0 0;padding:18px 20px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid var(--line)}
.ct-rev blockquote{margin:8px 0}.ct-rev p{margin:0;color:#dbe4f3;font-style:italic}.ct-rev figcaption{font-size:.85rem;color:#9aabcb}
@media(max-width:900px){.ct-grid,.ct-split{grid-template-columns:1fr}.ct-split .aside{order:-1}.ct-guys{margin-top:6px}}
@media(max-width:420px){.ct-guy figcaption{font-size:.8rem;padding:8px 10px}.ct-guys{gap:10px}}
/* ===== Comic speech bubbles ===== */
:root{--bub-ink:#0d1b3d;--bub-tail:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 24'%3E%3Cpath d='M3 0 C7 9 6 16 1 22 C11 20 19 12 23 0' fill='%23fffdf6' stroke='%230d1b3d' stroke-width='3' stroke-linejoin='round' stroke-linecap='round'/%3E%3C/svg%3E")}
.bubble,.mh-bub,.ct-guy figcaption{background:#fffdf6;color:var(--bub-ink);border:3px solid var(--bub-ink);border-radius:22px 26px 24px 20px/24px 20px 26px 22px;box-shadow:4px 5px 0 var(--orange),4px 5px 0 3px var(--bub-ink);font-weight:800;letter-spacing:-.005em;line-height:1.3}
.bubble:after,.mh-bub:after,.ct-guy figcaption:after{content:"";position:absolute;width:24px;height:22px;background:var(--bub-tail) no-repeat center/100% 100%;transform:none;border:0;bottom:-19px}
.bubble strong,.ct-guy figcaption strong{display:inline-block;background:var(--orange);color:#08111f;border:2px solid var(--bub-ink);border-radius:999px;padding:1px 9px;font-size:.72rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase;margin:0 6px 4px 0;line-height:1.4}
/* tails: Alan bubble left, tail curves down-left toward him; Tony's mirrored */
.b-a:after{left:30px;right:auto}
.b-t:after{right:30px;left:auto;transform:scaleX(-1)}
.mh-bub:after{left:16px;right:auto}
/* contact: bubble sits BELOW the guy, tail points up to his mouth */
.ct-guy figcaption{margin-top:14px;padding:12px 14px}
.ct-guy figcaption:after{bottom:auto;top:-19px;left:50%;margin-left:-12px;transform:scaleY(-1)}
.ct-guy:nth-child(2) figcaption:after{transform:scale(-1,-1)}
.ct-guy figcaption strong{display:table;margin:0 0 5px}
/* motion: pop-in, then gentle idle wobble (individual rotate prop so it never fights the entrance transform) */
@keyframes bubWob{0%,100%{rotate:0deg}50%{rotate:-1.6deg}}
@keyframes bubPop{0%{opacity:0;scale:.5;translate:0 12px}70%{opacity:1;scale:1.06;translate:0 -2px}100%{opacity:1;scale:1;translate:0 0}}
.mh-bub{animation:mhPop .5s .8s cubic-bezier(.3,1.6,.5,1) both,bubWob 4.5s 1.6s ease-in-out infinite}
.js .meet-art.in .bubble{animation:bubWob 5s 1s ease-in-out infinite}.js .meet-art.in .b-t{animation-delay:1.8s}
.ct-guy figcaption{transform-origin:50% 0;animation:bubPop .6s .4s cubic-bezier(.3,1.5,.5,1) both,bubWob 5s 1.4s ease-in-out infinite}
.ct-guy:nth-child(2) figcaption{animation-delay:.75s,2.2s}
@media(prefers-reduced-motion:reduce){.mh-bub,.bubble,.ct-guy figcaption{animation:none!important;opacity:1!important;rotate:none;scale:none;translate:none}}
.force .mh-bub,.force .bubble,.force .ct-guy figcaption{animation:none!important;opacity:1!important}
@media(max-width:520px){.bubble{max-width:156px;padding:9px 11px}.mh-bub{padding:7px 10px;font-size:.78rem}}
/* bubble placement fix: anchor bubbles above the head with room for the tail */
.bubble{top:auto;bottom:calc(100% + 24px)}
.meet-art{padding-top:128px}
@media(max-width:900px){.meet-art{padding-top:132px}}
@media(max-width:520px){.bubble{top:auto;bottom:calc(100% + 24px)}.meet-art{padding-top:124px}}
@media(max-width:700px){.mh-art{margin-top:0;padding-top:0}.mh-bub{top:auto;bottom:calc(100% + 22px)}.mhero{padding-top:88px}.mh-title{margin-top:10px}.mh-line{margin:6px 0 8px}.mh-svc{margin-bottom:10px}.mh-svc a{padding:7px 2px 6px}}
@media(max-width:700px){.mh-art{width:min(222px,60vw)}.mhero{padding-top:84px}}
/* Phones badge, top-left of the hero form card */
.f4{left:-28px;top:-50px;animation-delay:-3s}.f4 .ic svg{width:20px;height:20px}
.cbs input{flex:none}
/* Tony and Alan mobiles */
.ct-mob{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mobs{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px;margin:8px 0 0;font-size:.92rem}.mobs a{color:inherit;white-space:nowrap;text-decoration:underline;text-underline-offset:3px}
@media(max-width:380px){.ct-mob{grid-template-columns:1fr}}
.ct-mob .ctb{padding:12px;gap:10px}.ct-mob .ctb svg{width:22px;height:22px}.ct-mob .ctb small{white-space:nowrap;overflow-wrap:normal}@media(max-width:480px){.ct-mob .ctb{font-size:.95rem}.ct-mob .ctb small{font-size:.85rem}}
