
:root{
  --logo:url(logo.png);
  --bg:#05070E; --bg-2:#080D1A; --panel:#0D1524; --panel-2:#111B2E;
  --ink:#EAF1FB; --head:#fff; --soft:#B9C7DD; --muted:#8296B4; --faint:#5C6E8C;
  --cyan:#37C6F2; --sky:#29A9EE; --blue:#2A6BFF; --blue-deep:#0B3FD1;
  --gold:#FDB833; --orange:#FF7A1A; --red:#F5361B;
  --line:rgba(255,255,255,.09); --line-2:rgba(255,255,255,.14);
  --grad-cold:linear-gradient(135deg,#37C6F2,#2A6BFF);
  --grad-hot:linear-gradient(135deg,#FDB833,#FF7A1A 55%,#F5361B);
  --grad-thermal:linear-gradient(115deg,#37C6F2 0%,#2A6BFF 40%,#FF7A1A 74%,#F5361B 100%);
  --maxw:1220px;
  --disp:"Saira",system-ui,sans-serif; --body:"Inter",system-ui,sans-serif; --mono:"IBM Plex Mono",monospace;
  --sh:0 20px 60px rgba(0,0,0,.5);
  --glow-cold:0 0 40px rgba(42,107,255,.35); --glow-hot:0 0 40px rgba(255,122,26,.35);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--body);background:var(--bg);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
h1,h2,h3,h4{font-family:var(--disp);line-height:1.04;font-weight:800;letter-spacing:-.01em}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.logo-img{background:var(--logo) left center/contain no-repeat}
.eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan);font-weight:500;display:inline-flex;align-items:center;gap:.6em}
.eyebrow::before{content:"";width:26px;height:2px;border-radius:2px;background:var(--grad-hot)}
.g-cold{background:var(--grad-cold);-webkit-background-clip:text;background-clip:text;color:transparent}
.g-hot{background:var(--grad-hot);-webkit-background-clip:text;background-clip:text;color:transparent}
.thermal-line{height:2px;border:0;background:var(--grad-thermal);opacity:.85}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:.6em;font-family:var(--disp);font-weight:700;font-size:1rem;padding:.9em 1.6em;border-radius:11px;cursor:pointer;border:1.5px solid transparent;transition:transform .18s,box-shadow .18s,background .18s,border-color .18s;white-space:nowrap}
.btn svg{width:18px;height:18px}
.btn-hot{background:var(--grad-hot);color:#150a02;box-shadow:0 10px 26px rgba(255,90,20,.4)}
.btn-hot:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(255,90,20,.55)}
.btn-cold{background:var(--grad-cold);color:#03121f;box-shadow:0 10px 26px rgba(42,107,255,.4)}
.btn-cold:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(42,107,255,.55)}
.btn-glass{background:rgba(255,255,255,.05);color:var(--head);border-color:var(--line-2);backdrop-filter:blur(8px)}
.btn-glass:hover{border-color:var(--cyan);background:rgba(55,198,242,.1);transform:translateY(-2px)}
.btn-ghost{background:transparent;border-color:var(--line-2);color:var(--ink)}
.btn-ghost:hover{border-color:var(--cyan);color:var(--cyan)}

/* ===== TOP BAR ===== */
.topbar{background:#03060C;border-bottom:1px solid var(--line);position:relative}
.topbar::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--grad-thermal);opacity:.6}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:38px;flex-wrap:wrap}
.tb-left{display:flex;gap:20px;flex-wrap:wrap}
.tb-item{font-family:var(--mono);font-size:.72rem;letter-spacing:.03em;color:var(--soft);display:inline-flex;align-items:center;gap:.5em}
.tb-item svg{width:13px;height:13px;color:var(--orange)}
.live{width:7px;height:7px;border-radius:50%;background:#32e08f;box-shadow:0 0 0 0 rgba(50,224,143,.5);animation:pulse 2.2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(50,224,143,.5)}70%{box-shadow:0 0 0 7px rgba(50,224,143,0)}100%{box-shadow:0 0 0 0 rgba(50,224,143,0)}}
.tb-right{display:flex;gap:18px;align-items:center}
.tb-right a{font-family:var(--mono);font-size:.72rem;color:var(--soft);display:inline-flex;gap:.5em;align-items:center}
.tb-right a:hover{color:var(--head)}
.tb-right svg{width:13px;height:13px;color:var(--cyan)}

/* ===== HEADER ===== */
.header{position:sticky;top:0;z-index:60;background:rgba(6,9,17,.72);backdrop-filter:blur(16px) saturate(140%);border-bottom:1px solid var(--line);transition:padding .2s,background .2s}
.header.scrolled{background:rgba(5,7,14,.92);box-shadow:0 10px 30px rgba(0,0,0,.4)}
.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:84px;transition:min-height .2s}
.header.scrolled .wrap{min-height:68px}
.brand{display:flex;align-items:center}
.brand .logo-img{width:172px;height:52px;transition:width .2s,height .2s;filter:drop-shadow(0 2px 10px rgba(42,107,255,.35))}
.header.scrolled .brand .logo-img{width:150px;height:46px}
.nav{display:flex;align-items:center;gap:2px;list-style:none}
.nav>li{position:relative}
.nav>li>a{display:inline-flex;align-items:center;gap:.4em;font-family:var(--disp);font-weight:600;font-size:.98rem;padding:.6em .85em;border-radius:9px;color:var(--soft);transition:color .15s,background .15s}
.nav>li>a:hover{color:var(--head);background:rgba(255,255,255,.05)}
.nav .caret{width:11px;height:11px;transition:transform .2s}
.nav>li:hover .caret{transform:rotate(180deg)}
.mega{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%) translateY(8px);width:360px;background:rgba(13,21,36,.98);border:1px solid var(--line-2);border-radius:16px;box-shadow:var(--sh);padding:10px;opacity:0;visibility:hidden;transition:.18s;backdrop-filter:blur(14px)}
.nav>li:hover .mega{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.mega::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.mega a{display:flex;gap:12px;align-items:center;padding:11px 12px;border-radius:11px;transition:background .15s}
.mega a:hover{background:rgba(255,255,255,.05)}
.mi-ic{width:38px;height:38px;flex:none;border-radius:10px;background:rgba(42,107,255,.14);display:grid;place-items:center;color:var(--cyan);border:1px solid var(--line)}
.mi-ic svg{width:19px;height:19px}
.mega a:hover .mi-ic{background:var(--grad-cold);color:#03121f}
.mi-t{font-family:var(--disp);font-weight:600;font-size:.94rem;color:var(--head)}
.mi-d{font-size:.75rem;color:var(--muted)}
.header-cta{display:flex;align-items:center;gap:14px}
.h-phone{display:flex;align-items:center;gap:10px}
.h-phone .ic{width:40px;height:40px;border-radius:11px;background:rgba(255,122,26,.12);border:1px solid var(--line);display:grid;place-items:center;color:var(--orange)}
.h-phone .ic svg{width:19px;height:19px}
.h-phone .lbl{font-family:var(--mono);font-size:.6rem;letter-spacing:.14em;color:var(--muted);text-transform:uppercase;display:block}
.h-phone .num{font-family:var(--disp);font-weight:700;font-size:1.05rem;color:var(--head)}
.burger{display:none;width:46px;height:46px;border:1px solid var(--line-2);border-radius:11px;background:rgba(255,255,255,.04);cursor:pointer;place-items:center}
.burger span,.burger span::before,.burger span::after{display:block;width:20px;height:2px;background:#fff;border-radius:2px;transition:.2s}
.burger span{position:relative}
.burger span::before,.burger span::after{content:"";position:absolute;left:0}
.burger span::before{top:-6px}.burger span::after{top:6px}
body.menu-open .burger span{background:transparent}
body.menu-open .burger span::before{top:0;transform:rotate(45deg)}
body.menu-open .burger span::after{top:0;transform:rotate(-45deg)}

/* ===== HERO ===== */
.hero{position:relative;overflow:hidden;background:var(--bg)}
.blob{position:absolute;border-radius:50%;filter:blur(90px);opacity:.5;pointer-events:none}
.blob.c1{width:520px;height:520px;background:radial-gradient(circle,#2a6bff,transparent 70%);top:-140px;right:-80px;animation:float1 14s ease-in-out infinite}
.blob.c2{width:460px;height:460px;background:radial-gradient(circle,#ff5a1e,transparent 70%);bottom:-160px;left:-100px;opacity:.4;animation:float2 16s ease-in-out infinite}
.blob.c3{width:340px;height:340px;background:radial-gradient(circle,#37c6f2,transparent 70%);top:40%;left:44%;opacity:.28;animation:float1 18s ease-in-out infinite}
@keyframes float1{0%,100%{transform:translate(0,0)}50%{transform:translate(-30px,30px)}}
@keyframes float2{0%,100%{transform:translate(0,0)}50%{transform:translate(40px,-24px)}}
.hero-grid{position:absolute;inset:0;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:52px 52px;mask-image:radial-gradient(1000px 560px at 60% 30%,#000,transparent 78%);pointer-events:none}
.hero .wrap{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center;padding:70px 24px 130px}
.hero-badges{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:22px}
.hb{font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;padding:.5em .8em;border:1px solid var(--line-2);border-radius:999px;color:var(--soft);display:inline-flex;align-items:center;gap:.5em;background:rgba(255,255,255,.03)}
.hb svg{width:13px;height:13px;color:var(--orange)}
.hero h1{font-size:clamp(2.6rem,5.6vw,4.5rem);font-weight:900;letter-spacing:-.025em}
.hero-lead{font-size:1.14rem;color:var(--soft);margin:22px 0 32px;max-width:40ch}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.hero-stats{margin-top:40px;display:flex;gap:30px;flex-wrap:wrap}
.hs b{font-family:var(--disp);font-size:1.8rem;font-weight:800;display:block;line-height:1}
.hs.cold b{color:var(--cyan)}.hs.hot b{color:var(--orange)}
.hs span{font-family:var(--mono);font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
/* hero visual */
.hero-visual{position:relative}
.hv-frame{position:relative;border-radius:22px;overflow:hidden;padding:2px;background:var(--grad-thermal);box-shadow:0 30px 80px rgba(0,0,0,.55)}
.hv-img{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:4/4.4;background:linear-gradient(150deg,#0b2a4a,#0a1526)}
.hv-img img{width:100%;height:100%;object-fit:cover;opacity:.92}
.hv-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,7,14,0) 40%,rgba(5,7,14,.65))}
.hv-badge{position:absolute;left:18px;bottom:18px;z-index:2;background:rgba(6,10,18,.72);border:1px solid var(--line-2);border-radius:14px;padding:14px 16px;backdrop-filter:blur(10px);display:flex;align-items:center;gap:12px}
.hv-badge .g{width:44px;height:44px;flex:none}
.hv-badge b{font-family:var(--disp);font-size:1.05rem;display:block;line-height:1}
.hv-badge span{font-family:var(--mono);font-size:.64rem;letter-spacing:.06em;color:var(--cyan);text-transform:uppercase}
.hv-chip{position:absolute;right:-14px;top:26px;z-index:2;background:rgba(6,10,18,.82);border:1px solid var(--line-2);border-radius:14px;padding:12px 16px;backdrop-filter:blur(10px);box-shadow:var(--sh)}
.hv-chip b{font-family:var(--disp);font-size:1.6rem;color:var(--orange);display:block;line-height:1}
.hv-chip span{font-family:var(--mono);font-size:.6rem;letter-spacing:.06em;color:var(--muted);text-transform:uppercase}

/* ===== FLOATING CREDS (relocated top strip) ===== */
.creds{position:relative;margin-top:-84px;z-index:5}
.creds .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.cred{background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line-2);border-radius:16px;padding:22px 22px;display:flex;gap:14px;align-items:center;box-shadow:0 18px 40px rgba(0,0,0,.4);transition:transform .2s,border-color .2s}
.cred:hover{transform:translateY(-4px);border-color:rgba(55,198,242,.4)}
.cred-ic{width:46px;height:46px;flex:none;border-radius:12px;display:grid;place-items:center;color:#03121f}
.cred:nth-child(odd) .cred-ic{background:var(--grad-cold)}
.cred:nth-child(even) .cred-ic{background:var(--grad-hot)}
.cred-ic svg{width:23px;height:23px}
.cred b{font-family:var(--disp);font-weight:700;font-size:1rem;display:block;line-height:1.15}
.cred span{font-size:.8rem;color:var(--muted)}

/* ===== SECTION SHELL ===== */
.section{padding:96px 0;position:relative}
.section-head{max-width:640px;margin:0 auto 52px;text-align:center}
.section-head h2{font-size:clamp(2rem,4vw,3rem);margin:16px 0 14px}
.section-head p{color:var(--soft);font-size:1.06rem}
.section.alt{background:linear-gradient(180deg,var(--bg),var(--bg-2))}

/* marquee */
.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#03060C;overflow:hidden;padding:18px 0}
.mq-track{display:flex;gap:48px;white-space:nowrap;animation:mq 28s linear infinite;width:max-content}
.mq-track span{font-family:var(--disp);font-weight:700;font-size:1.05rem;color:var(--faint);display:inline-flex;align-items:center;gap:14px;text-transform:uppercase;letter-spacing:.04em}
.mq-track span::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--grad-hot)}
@keyframes mq{to{transform:translateX(-50%)}}

/* ===== ABOUT ===== */
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.about h2{font-size:clamp(1.9rem,3.6vw,2.7rem);margin:16px 0 18px}
.about p{color:var(--soft);margin-bottom:16px}
.about .ilist{list-style:none;display:grid;gap:12px;margin:22px 0 28px}
.about .ilist li{display:flex;gap:11px;align-items:flex-start;font-weight:500;color:var(--ink)}
.about .ilist svg{width:22px;height:22px;flex:none;color:var(--cyan);margin-top:1px}
.media{position:relative;border-radius:20px;overflow:hidden;padding:2px;background:var(--grad-cold);box-shadow:var(--sh)}
.media .m-inner{border-radius:18px;overflow:hidden;aspect-ratio:4/3.2;background:linear-gradient(150deg,#0b2a4a,#0a1526);position:relative}
.media img{width:100%;height:100%;object-fit:cover}
.media .m-note{position:absolute;left:12px;bottom:12px;font-family:var(--mono);font-size:.62rem;color:rgba(255,255,255,.6);background:rgba(0,0,0,.4);padding:.35em .7em;border-radius:6px}
.stat-float{position:absolute;right:-1px;top:22px;background:rgba(6,10,18,.85);border:1px solid var(--line-2);border-left:3px solid var(--orange);border-radius:12px 0 0 12px;padding:14px 18px;backdrop-filter:blur(8px);z-index:2}
.stat-float b{font-family:var(--disp);font-size:2rem;color:var(--orange);display:block;line-height:1}
.stat-float span{font-family:var(--mono);font-size:.62rem;letter-spacing:.06em;color:var(--muted);text-transform:uppercase}

/* ===== SERVICES ===== */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.svc-card{position:relative;border-radius:18px;padding:2px;background:var(--line);transition:transform .2s}
.svc-card:hover{transform:translateY(-6px)}
.svc-card::before{content:"";position:absolute;inset:0;border-radius:18px;padding:2px;background:var(--grad-thermal);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .25s}
.svc-card:hover::before{opacity:1}
.svc-inner{position:relative;background:linear-gradient(180deg,var(--panel-2),var(--panel));border-radius:16px;padding:28px 26px;height:100%}
.svc-num{position:absolute;top:22px;right:24px;font-family:var(--mono);font-size:.72rem;color:var(--faint)}
.svc-ic{width:54px;height:54px;border-radius:14px;background:rgba(42,107,255,.12);border:1px solid var(--line);display:grid;place-items:center;color:var(--cyan);margin-bottom:18px;transition:.25s}
.svc-card:hover .svc-ic{background:var(--grad-thermal);color:var(--head);border-color:transparent;box-shadow:var(--glow-cold)}
.svc-ic svg{width:27px;height:27px}
.svc-inner h3{font-size:1.24rem;margin-bottom:9px;color:var(--head)}
.svc-inner p{color:var(--muted);font-size:.92rem;margin-bottom:16px}
.svc-link{font-family:var(--disp);font-weight:600;font-size:.9rem;color:var(--cyan);display:inline-flex;align-items:center;gap:.4em;transition:gap .2s}
.svc-card:hover .svc-link{gap:.75em}
.svc-link svg{width:15px;height:15px}

/* ===== OUR WORK GALLERY ===== */
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.gal{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:1/1;background:linear-gradient(150deg,#0b2a4a,#0a1526);border:1px solid var(--line)}
.gal img{width:100%;height:100%;object-fit:cover;transition:transform .4s;opacity:.9}
.gal:hover img{transform:scale(1.08)}
.gal::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(5,7,14,.8))}
.gal cap,.gal .cap{position:absolute;left:14px;bottom:12px;z-index:2;font-family:var(--disp);font-weight:600;font-size:.92rem;color:var(--head)}
.gal .cap::before{content:"";display:block;width:22px;height:2px;background:var(--grad-hot);margin-bottom:7px;border-radius:2px}

/* ===== EMERGENCY ===== */
.emergency{position:relative;overflow:hidden;background:var(--grad-hot)}
.emergency::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(0,0,0,.06) 0 16px,transparent 16px 32px)}
.emergency .wrap{position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:44px 24px;flex-wrap:wrap}
.em-l{display:flex;align-items:center;gap:20px}
.em-ring{width:62px;height:62px;flex:none;border-radius:50%;background:rgba(0,0,0,.18);display:grid;place-items:center;animation:ring 2s infinite}
@keyframes ring{0%{box-shadow:0 0 0 0 rgba(0,0,0,.28)}70%{box-shadow:0 0 0 16px rgba(0,0,0,0)}100%{box-shadow:0 0 0 0 rgba(0,0,0,0)}}
.em-ring svg{width:30px;height:30px;color:#160a02}
.emergency h3{font-size:clamp(1.4rem,3vw,2.1rem);color:#160a02;line-height:1.05}
.emergency p{font-family:var(--mono);font-size:.8rem;color:rgba(22,10,2,.75);margin-top:5px}
.btn-dark{background:#0A0E1A;color:var(--head);font-size:1.1rem;padding:1em 1.7em}
.btn-dark:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.4)}

/* ===== WHY + TABLE ===== */
.why-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:56px;align-items:center}
.why h2{font-size:clamp(1.9rem,3.6vw,2.6rem);margin:16px 0 28px}
.why-points{list-style:none;display:grid;gap:20px}
.why-points li{display:flex;gap:16px}
.why-ic{width:48px;height:48px;flex:none;border-radius:12px;background:rgba(55,198,242,.1);border:1px solid var(--line);color:var(--cyan);display:grid;place-items:center}
.why-ic svg{width:23px;height:23px}
.why-points h4{font-family:var(--disp);font-size:1.12rem;color:var(--head);margin-bottom:3px}
.why-points p{color:var(--muted);font-size:.92rem}
.resp{border-radius:20px;padding:2px;background:var(--grad-thermal);box-shadow:var(--sh)}
.resp-in{background:var(--panel);border-radius:18px;overflow:hidden}
.rc-top{padding:22px 26px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}
.rc-top b{font-family:var(--disp);font-size:1.15rem;color:var(--head)}
.rc-top .tag{font-family:var(--mono);font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:#32e08f;border:1px solid rgba(50,224,143,.4);padding:.35em .7em;border-radius:999px}
.resp-row{display:flex;align-items:center;justify-content:space-between;padding:15px 26px;border-bottom:1px solid var(--line);gap:14px}
.resp-row:last-child{border-bottom:0}
.r-svc{font-weight:500;font-size:.92rem;color:var(--soft)}
.r-time{font-family:var(--mono);font-size:.85rem;color:var(--orange);font-weight:600;white-space:nowrap}
.r-time.now{color:#32e08f}

/* ===== MAINTENANCE ===== */
.maint .split{gap:56px}
.maint h2{font-size:clamp(1.9rem,3.6vw,2.7rem);margin:16px 0 16px}
.maint>.wrap>.split>div>p{color:var(--soft);margin-bottom:24px}
.plan-list{display:grid;gap:14px;margin-bottom:30px}
.plan{display:flex;gap:14px;align-items:flex-start;background:rgba(255,255,255,.03);border:1px solid var(--line);border-radius:13px;padding:16px 18px}
.plan svg{width:24px;height:24px;flex:none;color:var(--orange);margin-top:2px}
.plan b{font-family:var(--disp);font-weight:600;color:var(--head);display:block;margin-bottom:2px}
.plan span{font-size:.86rem;color:var(--muted)}

/* ===== REVIEWS ===== */
.stars{display:inline-flex;gap:3px;margin-bottom:14px}
.stars svg{width:20px;height:20px;fill:url(#starGrad)}
.rev-track{position:relative;min-height:200px}
.rev-slide{position:absolute;inset:0;opacity:0;transform:translateY(10px);transition:.5s;pointer-events:none}
.rev-slide.active{opacity:1;transform:none;pointer-events:auto;position:relative}
.rev-quote{font-family:var(--disp);font-weight:500;font-size:clamp(1.3rem,2.7vw,1.85rem);line-height:1.35;max-width:900px;margin:0 auto 22px;color:var(--head)}
.rev-quote::before{content:"\201C";color:var(--orange);font-size:1.1em;line-height:0;vertical-align:-.2em;margin-right:.05em}
.rev-meta b{font-family:var(--disp);font-size:1.02rem;color:var(--head)}
.rev-meta span{display:block;font-family:var(--mono);font-size:.7rem;letter-spacing:.06em;color:var(--muted);text-transform:uppercase;margin-top:3px}
.rev-dots{display:flex;gap:9px;justify-content:center;margin-top:30px}
.rev-dots button{width:9px;height:9px;border-radius:50%;border:0;background:var(--faint);cursor:pointer;padding:0;transition:.2s}
.rev-dots button.on{width:26px;border-radius:999px;background:var(--grad-hot)}

/* ===== AREAS ===== */
.areas-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}
.areas h2{font-size:clamp(1.9rem,3.6vw,2.6rem);margin:16px 0 14px}
.areas p{color:var(--soft)}
.area-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.area-tags span{font-size:.9rem;font-weight:500;padding:.5em .95em;border:1px solid var(--line-2);border-radius:999px;background:rgba(255,255,255,.03);color:var(--soft);display:inline-flex;align-items:center;gap:.5em;transition:.15s}
.area-tags span:hover{border-color:var(--cyan);color:var(--head)}
.area-tags span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--grad-hot)}
.map-card{aspect-ratio:5/4;border-radius:20px;background:radial-gradient(circle at 46% 60%,#123a63,#0a1526);border:1px solid var(--line-2);position:relative;overflow:hidden;box-shadow:var(--sh)}
.map-card .hero-grid{mask-image:radial-gradient(500px 400px at 46% 60%,#000,transparent 80%);opacity:.5}
.pin{position:absolute;width:18px;height:18px}
.pin span{position:absolute;inset:0;border-radius:50% 50% 50% 0;background:var(--orange);transform:rotate(-45deg);box-shadow:0 3px 8px rgba(255,90,20,.5)}
.pin.hq span{background:var(--cyan)}
.pulse{position:absolute;width:18px;height:18px;border-radius:50%;background:rgba(55,198,242,.4);animation:mp 2.4s infinite}
@keyframes mp{0%{transform:scale(.6);opacity:.8}100%{transform:scale(3.4);opacity:0}}

/* ===== BLOG ===== */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post{border-radius:16px;overflow:hidden;background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line);transition:transform .2s,border-color .2s}
.post:hover{transform:translateY(-5px);border-color:rgba(55,198,242,.35)}
.post-img{aspect-ratio:16/10;position:relative;background:linear-gradient(150deg,#0b2a4a,#0a1526);overflow:hidden}
.post-img img{width:100%;height:100%;object-fit:cover;opacity:.9}
.post-cat{position:absolute;top:12px;left:12px;z-index:2;font-family:var(--mono);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;background:var(--grad-hot);color:#160a02;padding:.4em .7em;border-radius:7px;font-weight:600}
.post-body{padding:20px 22px 24px}
.post-date{font-family:var(--mono);font-size:.68rem;letter-spacing:.05em;color:var(--muted);text-transform:uppercase}
.post h3{font-size:1.14rem;margin:9px 0 10px;color:var(--head);line-height:1.2}
.post p{color:var(--muted);font-size:.88rem;margin-bottom:14px}

/* ===== CONTACT ===== */
.contact{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--bg-2),var(--bg))}
.contact .blob.c1{opacity:.3}.contact .blob.c2{opacity:.28}
.contact .wrap{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:56px;padding:96px 24px;align-items:start}
.contact h2{font-size:clamp(2rem,3.8vw,3rem);margin:16px 0 16px}
.contact-lead{color:var(--soft);font-size:1.05rem;margin-bottom:30px;max-width:44ch}
.ci-list{display:grid;gap:16px}
.ci{display:flex;gap:15px;align-items:center}
.ci-ic{width:48px;height:48px;flex:none;border-radius:12px;background:rgba(255,122,26,.1);border:1px solid var(--line);display:grid;place-items:center;color:var(--orange)}
.ci-ic svg{width:22px;height:22px}
.ci b{font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:3px}
.ci a,.ci p{font-family:var(--disp);font-weight:600;font-size:1.06rem;color:var(--head)}
.form-card{border-radius:20px;padding:2px;background:var(--grad-thermal);box-shadow:var(--sh)}
.form-in{background:var(--panel);border-radius:18px;padding:30px}
.form-in h3{font-size:1.4rem;color:var(--head);margin-bottom:6px}
.form-in .sub{color:var(--muted);font-size:.9rem;margin-bottom:20px}
.field{margin-bottom:13px}
.field label{display:block;font-family:var(--mono);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.field input,.field select{width:100%;font-family:var(--body);font-size:.95rem;padding:.75em .85em;border:1.5px solid var(--line-2);border-radius:10px;background:rgba(255,255,255,.03);color:var(--head);transition:.15s}
.field input::placeholder{color:var(--faint)}
.field input:focus,.field select:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px rgba(55,198,242,.18)}
.field select option{background:#0D1524}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-note{font-size:.74rem;color:var(--muted);margin-top:12px;text-align:center;display:flex;align-items:center;justify-content:center;gap:.5em}
.form-note svg{width:13px;height:13px;color:#32e08f}
.form-ok{display:none;text-align:center;padding:16px;background:rgba(50,224,143,.12);border:1px solid rgba(50,224,143,.4);color:#7ff0b6;border-radius:10px;font-weight:500;margin-top:8px}
.form-ok.show{display:block}

/* ===== FOOTER ===== */
.footer{background:#03060C;border-top:1px solid var(--line);padding:64px 0 0;position:relative}
.footer::before{content:"";position:absolute;top:-1px;left:0;right:0;height:2px;background:var(--grad-thermal);opacity:.7}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:46px;border-bottom:1px solid var(--line)}
.foot-brand .logo-img{width:210px;height:64px;margin-bottom:16px;filter:drop-shadow(0 2px 12px rgba(42,107,255,.35))}
.foot-brand p{font-size:.9rem;color:var(--muted);max-width:34ch;margin-bottom:20px}
.foot-socials{display:flex;gap:10px}
.foot-socials a{width:42px;height:42px;border-radius:11px;background:rgba(255,255,255,.05);border:1px solid var(--line);display:grid;place-items:center;color:var(--soft);transition:.18s}
.foot-socials a:hover{background:var(--grad-hot);color:#160a02;transform:translateY(-2px);border-color:transparent}
.foot-socials svg{width:18px;height:18px}
.foot-col h4{font-family:var(--disp);color:var(--head);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px}
.foot-col ul{list-style:none;display:grid;gap:11px}
.foot-col a{font-size:.9rem;color:var(--muted);transition:.15s}
.foot-col a:hover{color:var(--cyan);padding-left:4px}
.foot-contact .fc{display:flex;gap:11px;margin-bottom:15px;font-size:.9rem;color:var(--soft)}
.foot-contact svg{width:17px;height:17px;flex:none;color:var(--orange);margin-top:3px}
.foot-bar{display:flex;align-items:center;justify-content:space-between;padding:22px 0;gap:16px;flex-wrap:wrap}
.foot-bar p{font-family:var(--mono);font-size:.72rem;color:var(--faint)}
.foot-bar .fbl{display:flex;gap:20px}
.foot-bar .fbl a{font-size:.78rem;color:var(--muted)}

/* reveal */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

/* mobile panel */
.m-backdrop{position:fixed;inset:0;background:rgba(3,6,12,.7);z-index:75;opacity:0;visibility:hidden;transition:.3s;backdrop-filter:blur(4px)}
body.menu-open .m-backdrop{opacity:1;visibility:visible}
.m-panel{position:fixed;inset:0 0 0 auto;width:min(88vw,360px);background:#080D1A;border-left:1px solid var(--line-2);z-index:80;transform:translateX(100%);transition:transform .3s cubic-bezier(.2,.7,.2,1);overflow-y:auto;padding:22px}
body.menu-open .m-panel{transform:none}
.mp-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.mp-head .logo-img{width:150px;height:44px}
.mp-close{width:40px;height:40px;border:1px solid var(--line-2);border-radius:10px;background:rgba(255,255,255,.04);color:var(--head);font-size:1.4rem;cursor:pointer}
.mp-nav{list-style:none;display:grid;gap:2px}
.mp-nav>li>a,.mp-sub-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;font-family:var(--disp);font-weight:600;font-size:1.06rem;padding:14px 6px;color:var(--head);border:0;background:none;cursor:pointer;text-align:left}
.mp-sub{list-style:none;display:none;padding:2px 0 10px 8px;border-left:2px solid var(--line-2)}
.mp-sub.open{display:grid;gap:2px}
.mp-sub a{display:block;padding:10px 12px;font-size:.94rem;color:var(--muted)}
.mp-sub a:hover{color:var(--cyan)}
.mp-toggle-caret{transition:transform .2s}
.mp-sub-toggle.open .mp-toggle-caret{transform:rotate(180deg)}
.mp-cta{margin-top:22px;display:grid;gap:12px}
.mp-cta .btn{justify-content:center}

/* ===== RESPONSIVE ===== */
@media(max-width:1080px){
  .nav,.h-phone{display:none}
  .burger{display:grid}
  .hero .wrap{grid-template-columns:1fr;gap:44px;padding:52px 24px 120px}
  .hero-visual{max-width:520px}
  .split,.why-grid,.areas-grid,.contact .wrap,.maint .split{grid-template-columns:1fr;gap:40px}
  .svc-grid,.blog-grid{grid-template-columns:1fr 1fr}
  .creds .wrap{grid-template-columns:1fr 1fr}
  .gallery{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .tb-item.hide-sm{display:none}
  .tb-right a.hide-sm{display:none}
}
@media(max-width:620px){
  .section{padding:64px 0}
  .contact .wrap{padding:64px 24px}
  .svc-grid,.blog-grid,.creds .wrap,.gallery{grid-template-columns:1fr}
  .row2{grid-template-columns:1fr}
  .hero-stats{gap:22px}
  .emergency .wrap{flex-direction:column;align-items:flex-start;text-align:left}
  .creds{margin-top:-40px}
}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}

/* ===== INNER PAGES ===== */
.page-hero{position:relative;overflow:hidden;background:var(--bg);border-bottom:1px solid var(--line)}
.page-hero .wrap{position:relative;padding:66px 24px 60px}
.breadcrumb{font-family:var(--mono);font-size:.72rem;letter-spacing:.06em;color:var(--muted);margin-bottom:16px;text-transform:uppercase}
.breadcrumb a:hover{color:var(--cyan)}
.breadcrumb b{color:var(--orange);font-weight:500}
.page-hero h1{font-size:clamp(2rem,4.6vw,3.2rem);max-width:22ch;margin-top:6px}
.page-hero .ph-lead{color:var(--soft);margin-top:14px;max-width:56ch;font-size:1.08rem}
.content{padding:80px 0}
.svc-layout{display:grid;grid-template-columns:1.5fr .9fr;gap:52px;align-items:start}
.content-media{border-radius:18px;overflow:hidden;border:1px solid var(--line-2);aspect-ratio:16/8;background:linear-gradient(150deg,#0b2a4a,#0a1526);margin-bottom:30px;position:relative}
.content-media img{width:100%;height:100%;object-fit:cover;opacity:.92}
.content-media .m-note{position:absolute;left:12px;bottom:12px;font-family:var(--mono);font-size:.62rem;color:rgba(255,255,255,.6);background:rgba(0,0,0,.4);padding:.35em .7em;border-radius:6px}
.prose>p{color:var(--soft);margin-bottom:18px;font-size:1.05rem}
.prose h2{font-size:clamp(1.6rem,3vw,2.1rem);margin:6px 0 16px;color:var(--head)}
.prose h3{font-size:1.3rem;margin:32px 0 12px;color:var(--head)}
.feature-list{list-style:none;display:grid;gap:12px;margin:16px 0 26px}
.feature-list li{display:flex;gap:11px;align-items:flex-start;font-weight:500;color:var(--ink)}
.feature-list svg{width:22px;height:22px;flex:none;color:var(--cyan);margin-top:1px}
.side-card{position:sticky;top:100px;display:grid;gap:18px}
.side-media{border-radius:16px;overflow:hidden;border:1px solid var(--line);aspect-ratio:4/3.4;background:linear-gradient(150deg,#0b2a4a,#0a1526)}
.side-media img{width:100%;height:100%;object-fit:cover}
.side-help{border-radius:16px;padding:2px;background:var(--grad-thermal)}
.side-help-in{background:var(--panel);border-radius:14px;padding:24px}
.side-help h4{font-family:var(--disp);font-size:1.12rem;color:var(--head);margin-bottom:8px}
.side-help p{font-size:.9rem;color:var(--muted);margin-bottom:16px}
.side-help .btn{width:100%;justify-content:center;margin-bottom:10px}
.side-help .btn:last-child{margin-bottom:0}
@media(max-width:960px){.svc-layout{grid-template-columns:1fr}.side-card{position:static}}
.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.stat-box{background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line);border-radius:14px;padding:26px 20px;text-align:center}
.stat-box b{font-family:var(--disp);font-size:2.3rem;display:block;line-height:1}
.stat-box:nth-child(odd) b{color:var(--cyan)}.stat-box:nth-child(even) b{color:var(--orange)}
.stat-box span{font-family:var(--mono);font-size:.63rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:8px;display:block}
@media(max-width:720px){.stat-row{grid-template-columns:1fr 1fr}}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:900px){.values-grid{grid-template-columns:1fr}}
.value-card{background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line);border-radius:15px;padding:26px 24px}
.value-card .vic{width:52px;height:52px;border-radius:13px;background:rgba(42,107,255,.12);border:1px solid var(--line);display:grid;place-items:center;color:var(--cyan);margin-bottom:14px}
.value-card .vic svg{width:26px;height:26px}
.value-card h3{font-size:1.15rem;color:var(--head);margin-bottom:8px}
.value-card p{color:var(--muted);font-size:.92rem}
.contact-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:start}
@media(max-width:960px){.contact-page-grid{grid-template-columns:1fr}}
.hours-card{background:rgba(255,255,255,.03);border:1px solid var(--line);border-radius:14px;padding:22px 24px;margin-top:24px}
.hours-card h4{font-family:var(--disp);color:var(--head);font-size:1rem;margin-bottom:12px}
.hours-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px dashed var(--line);font-size:.9rem;color:var(--soft)}
.hours-row:last-child{border-bottom:0}
.hours-row span:last-child{font-family:var(--mono);font-size:.82rem;color:var(--cyan)}
.map-embed{border-radius:18px;overflow:hidden;border:1px solid var(--line-2);aspect-ratio:16/7;background:radial-gradient(circle at 46% 60%,#123a63,#0a1526);position:relative;margin-top:26px}
.map-embed .hero-grid{mask-image:radial-gradient(500px 300px at 46% 60%,#000,transparent 80%);opacity:.5}

/* ===== THEME TOGGLE ===== */
.theme-toggle{width:44px;height:44px;flex:none;border:1px solid var(--line-2);border-radius:11px;background:rgba(255,255,255,.04);color:var(--soft);display:grid;place-items:center;cursor:pointer;transition:border-color .18s,color .18s,background .18s}
.theme-toggle:hover{border-color:var(--cyan);color:var(--cyan)}
.theme-toggle svg{width:20px;height:20px}
.ic-moon{display:none}
[data-theme="light"] .ic-sun{display:none}
[data-theme="light"] .ic-moon{display:block}
.hv-badge b{color:#fff}
.btn-dark{color:#fff}
.hv-chip span,.stat-float span{color:#9fb2c9}

/* ================= LIGHT THEME ================= */
[data-theme="light"]{
  --bg:#EEF4FA; --bg-2:#E3ECF5; --panel:#FFFFFF; --panel-2:#F5F9FD;
  --ink:#0A1C2E; --head:#0A1C2E; --soft:#3B4E66; --muted:#5B7091; --faint:#93A6C0;
  --line:rgba(10,28,46,.10); --line-2:rgba(10,28,46,.16);
  --cyan:#0C86C2; --sky:#1493D6; --blue:#1E5BE6; --gold:#E29A08; --orange:#E8600C; --red:#E23B1E;
  --grad-cold:linear-gradient(135deg,#12A0DA,#1E5BE6);
  --grad-hot:linear-gradient(135deg,#F79A16,#FF6A16 55%,#EE3113);
  --grad-thermal:linear-gradient(115deg,#12A0DA 0%,#1E5BE6 40%,#FF7A1A 74%,#F5361B 100%);
  --sh:0 20px 50px rgba(20,50,90,.14);
  --glow-cold:0 0 40px rgba(30,91,230,.22); --glow-hot:0 0 40px rgba(255,110,20,.22);
}
[data-theme="light"] body{background:var(--bg)}
[data-theme="light"] .logo-img{background-color:#0A1220;border:1px solid rgba(10,28,46,.14);border-radius:12px;padding:8px 12px}
[data-theme="light"] .header{background:rgba(238,244,250,.82)}
[data-theme="light"] .header.scrolled{background:rgba(238,244,250,.95);box-shadow:0 10px 30px rgba(20,50,90,.1)}
[data-theme="light"] .topbar{background:#E4EDF6}
[data-theme="light"] .marquee{background:#E4EDF6}
[data-theme="light"] .mq-track span{color:var(--muted)}
[data-theme="light"] .footer{background:#E4EDF6}
[data-theme="light"] .burger,[data-theme="light"] .mp-close,[data-theme="light"] .theme-toggle{background:rgba(10,28,46,.04)}
[data-theme="light"] .burger span,[data-theme="light"] .burger span::before,[data-theme="light"] .burger span::after{background:var(--ink)}
[data-theme="light"] body.menu-open .burger span{background:transparent}
[data-theme="light"] .mega{background:rgba(255,255,255,.98);border-color:var(--line-2)}
[data-theme="light"] .mega a:hover{background:#EEF4FA}
[data-theme="light"] .mi-ic{background:rgba(30,91,230,.1)}
[data-theme="light"] .m-panel{background:#fff;border-color:var(--line-2)}
[data-theme="light"] .blob.c1{opacity:.20}
[data-theme="light"] .blob.c2{opacity:.16}
[data-theme="light"] .blob.c3{opacity:.12}
[data-theme="light"] .hero-grid{background-image:linear-gradient(rgba(10,28,46,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(10,28,46,.05) 1px,transparent 1px)}
[data-theme="light"] .hb{background:rgba(10,28,46,.03)}
[data-theme="light"] .btn-glass{background:rgba(10,28,46,.04)}
[data-theme="light"] .hv-frame{box-shadow:0 24px 60px rgba(20,50,90,.18)}
[data-theme="light"] .cred{box-shadow:0 14px 30px rgba(20,50,90,.1)}
[data-theme="light"] .plan{background:rgba(10,28,46,.03)}
[data-theme="light"] .area-tags span{background:#fff}
[data-theme="light"] .hours-card{background:#F5F9FD}
[data-theme="light"] .field input,[data-theme="light"] .field select{background:#F5F9FD;color:var(--ink)}
[data-theme="light"] .field input::placeholder{color:var(--faint)}
[data-theme="light"] .field select option{background:#fff}
[data-theme="light"] .foot-socials a{background:rgba(10,28,46,.05)}
[data-theme="light"] .hv-img,[data-theme="light"] .m-inner,[data-theme="light"] .gal,[data-theme="light"] .post-img,[data-theme="light"] .side-media,[data-theme="light"] .content-media{background:linear-gradient(150deg,#cfe0f0,#b9cee3)}
[data-theme="light"] .map-card,[data-theme="light"] .map-embed{background:radial-gradient(circle at 46% 60%,#cddff0,#e8f1fa)}
