/* ============================================
   Sun Switch Solar — Stylesheet
   ============================================ */

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Segoe UI',Arial,sans-serif;background:#fff;color:#111;width:100%;overflow-x:hidden;}

/* NAV */
.nav{display:flex;align-items:center;justify-content:space-between;padding:18px 48px;position:absolute;top:0;left:0;right:0;z-index:20;}
.nav-logo{display:flex;align-items:center;gap:10px;color:#fff;font-size:17px;font-weight:800;letter-spacing:-0.01em;}
.nav-links{display:flex;gap:26px;}
.nav-links a{color:#fff;font-size:16px;font-weight:600;text-decoration:none;letter-spacing:0.02em;display:inline-block;overflow:hidden;position:relative;vertical-align:top;line-height:1.2em;height:1.2em;}
.nav-links a .split-wrap{display:flex;flex-direction:column;transition:transform 0.4s cubic-bezier(0.76,0,0.24,1);}
.nav-links a:hover .split-wrap{transform:translateY(-50%);}
.nav-links a .top-text,.nav-links a .bot-text{display:block;height:1.2em;line-height:1.2em;}
.nav-links a .bot-text{color:#7ed321;}
.nav-links a.active .top-text{color:#7ed321;}
.nav-links a.active .bot-text{color:#fff;}
@media(prefers-reduced-motion:reduce){.nav-links a .split-wrap{transition:none;}}
.nav-cta{background:transparent;border:1.5px solid #fff;color:#fff;padding:11px 28px;border-radius:99px;font-size:16px;font-weight:600;cursor:pointer;transition:background 0.2s,color 0.2s;display:inline-block;text-decoration:none;}
.nav-cta:hover{background:#7ed321;border-color:#7ed321;color:#111;}
.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:6px;}
.nav-toggle span{display:block;width:24px;height:2px;background:#fff;margin:5px 0;transition:0.3s;}

/* HERO */
.hero{position:relative;height:100vh;min-height:620px;overflow:hidden;display:flex;align-items:center;padding:80px 48px 100px;}
.hero-content{position:relative;z-index:2;flex:1;}
.hero-bg{position:absolute;inset:0;}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center 55%;}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(5,15,30,0.82) 0%,rgba(5,15,30,0.42) 55%,rgba(5,15,30,0.08) 100%);}
/* Right column — spans full height of hero, cards fill it evenly */
.hero-right-col{position:absolute;right:0;top:0;bottom:48px;z-index:4;display:flex;flex-direction:column;align-items:stretch;width:300px;gap:0;padding-top:90px;}
/* Stats vertical stack — flush, no gap, fills available height */
.hero-stats-overlay{display:flex;flex-direction:column;gap:0;flex:2.2;}
/* hso-box: flex-grow so all 6 cards fill the column height */
.hso-box{width:100%;padding:10px 18px;min-height:0;flex:1;cursor:default;border-radius:0;display:flex;flex-direction:column;justify-content:center;backdrop-filter:blur(5px) saturate(1.25);-webkit-backdrop-filter:blur(5px) saturate(1.25);box-shadow:none;border-bottom:1px solid rgba(255,255,255,0.1);transition:transform 0.25s,background 0.25s,border-color 0.25s,box-shadow 0.25s;}
.hso-box.g{background:rgba(126,211,33,0.62);border:1px solid rgba(126,211,33,0.78);color:#fff;border-bottom:1px solid rgba(126,211,33,0.4);}
.hso-box.l{background:rgba(255,255,255,0.30);border:1px solid rgba(255,255,255,0.48);color:#fff;border-bottom:1px solid rgba(255,255,255,0.2);}
.hso-lbl{font-size:12px;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;color:rgba(255,255,255,0.80);margin:0 0 5px;text-shadow:0 1px 10px rgba(4,14,28,0.45);}
.hso-val{font-size:26px;font-weight:800;line-height:1;color:#fff;text-shadow:0 1px 10px rgba(4,14,28,0.45);}
/* Service Cards — slightly bigger than stats cards */
.hero-cards{display:flex;flex-direction:column;gap:0;flex:1.4;}
.hso-box:hover,.hc:hover{transform:translateX(-8px);box-shadow:0 12px 34px rgba(3,12,24,0.45);}
.hso-box.l:hover,.hc.wh:hover{background:rgba(255,255,255,0.44);border-color:rgba(255,255,255,0.7);}
.hso-box.g:hover,.hc.gn:hover{background:rgba(126,211,33,0.82);border-color:rgba(126,211,33,1);}
.hc{width:100%;padding:10px 18px;min-height:0;flex:1;cursor:pointer;border-radius:0;display:flex;flex-direction:column;justify-content:center;backdrop-filter:blur(5px) saturate(1.25);-webkit-backdrop-filter:blur(5px) saturate(1.25);box-shadow:none;border-bottom:1px solid rgba(255,255,255,0.1);transition:transform 0.25s,background 0.25s,border-color 0.25s,box-shadow 0.25s;border:none;text-align:left;}
.hc.wh{background:rgba(255,255,255,0.30);border:1px solid rgba(255,255,255,0.48);color:#fff;border-bottom:1px solid rgba(255,255,255,0.2);}
.hc.gn{background:rgba(126,211,33,0.62);border:1px solid rgba(126,211,33,0.78);color:#fff;border-bottom:1px solid rgba(126,211,33,0.4);}
.hc p{font-size:12px;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;color:rgba(255,255,255,0.80);margin:0 0 5px;text-shadow:0 1px 10px rgba(4,14,28,0.45);}
.hc .ar{font-size:22px;font-weight:800;color:#fff;text-shadow:0 1px 10px rgba(4,14,28,0.45);}
.hero-title{font-size:clamp(48px,6vw,90px);font-weight:900;color:#fff;line-height:0.95;letter-spacing:-0.03em;margin-bottom:24px;}
.hero-sub{color:rgba(255,255,255,0.92);font-size:21px;max-width:640px;line-height:1.6;text-shadow:0 1px 12px rgba(4,14,28,0.4);margin-bottom:28px;}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;}
.hero-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 26px;border-radius:99px;font-size:14px;font-weight:700;text-decoration:none;letter-spacing:0.01em;transition:transform 0.2s,box-shadow 0.2s,background 0.2s;border:none;cursor:pointer;}
.hero-btn.primary{background:#7ed321;color:#0d1e35;box-shadow:0 8px 24px rgba(126,211,33,0.35);}
.hero-btn.primary:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(126,211,33,0.5);}
.hero-btn.ghost{background:rgba(255,255,255,0.08);color:#fff;border:1.5px solid rgba(255,255,255,0.5);backdrop-filter:blur(6px);}
.hero-btn.ghost:hover{background:rgba(255,255,255,0.18);transform:translateY(-2px);}
.hero-btn svg{width:18px;height:18px;flex-shrink:0;}
.hero-bottom{position:absolute;bottom:0;left:0;right:0;z-index:3;display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,0.2);padding:12px 48px;background:linear-gradient(to top,rgba(5,15,30,0.62),rgba(5,15,30,0));}
.hero-bottom span{color:rgba(255,255,255,0.95);font-size:15px;letter-spacing:0.08em;text-transform:uppercase;font-weight:600;text-shadow:0 1px 8px rgba(4,14,28,0.55);}
.hero-bottom a{color:inherit;text-decoration:none;}
.sl{font-size:13px;letter-spacing:0.13em;text-transform:uppercase;color:#7ed321;font-weight:700;margin-bottom:14px;}
.tagline-section{padding:80px 48px 0;text-align:center;}
.tagline-text{font-size:34px;font-weight:700;max-width:780px;margin:0 auto;line-height:1.35;color:#111;}
.tagline-text em{color:#7ed321;font-style:normal;}

/* 4 PANELS */
.panels{display:grid;grid-template-columns:repeat(4,1fr);margin-top:60px;height:420px;}
.panel{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:28px 26px;}
.pi{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.pnum{font-size:80px;font-weight:900;position:absolute;bottom:8px;right:16px;line-height:1;}
.panel::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(5,15,30,0.5) 0%,rgba(5,15,30,0.12) 38%,rgba(5,15,30,0.18) 60%,rgba(5,15,30,0.66) 100%);}
.pe{position:relative;z-index:2;font-size:11px;font-weight:800;letter-spacing:0.1em;text-transform:uppercase;color:#7ed321;}
.pe .pw{color:#fff;}
.ptt{position:relative;z-index:2;font-size:15px;font-weight:700;color:#fff;line-height:1.35;margin-bottom:10px;padding-right:60px;}
.ptt .pg{color:#7ed321;}
.p1{background:#0a1a2e;}
.p1 .pnum{color:rgba(255,255,255,0.15);}
.p2{background:#111;}
.p2 .pnum{color:rgba(255,255,255,0.15);}
.p3{background:#111;}
.p3 .pnum{color:rgba(255,255,255,0.15);}
.p4{background:#12344d;}
.p4 .pnum{color:rgba(255,255,255,0.1);}

/* SERVICES */
.services{padding:72px 48px 60px;}
.services h2{font-size:34px;font-weight:800;max-width:520px;line-height:1.3;margin-top:10px;margin-bottom:36px;}
.sdiv{width:100%;height:1px;background:#e8e8e8;margin-bottom:36px;}
.sgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.scard h3{font-size:19px;font-weight:700;margin-bottom:8px;}
.scard p{font-size:15px;color:#666;line-height:1.55;margin-bottom:12px;}
.rm{font-size:14px;font-weight:700;color:#111;text-decoration:none;display:flex;align-items:center;gap:6px;background:none;border:none;padding:0;cursor:pointer;font-family:inherit;}
.simg{width:100%;height:148px;border-radius:14px;overflow:hidden;margin-bottom:16px;position:relative;}
.simg img{width:100%;height:100%;object-fit:cover;}
.wa-fab{position:absolute;top:10px;right:10px;width:38px;height:38px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,0.3);z-index:2;transition:transform .15s;}
.wa-fab:hover{transform:scale(1.08);}
.scard-more{display:none;font-size:14px;color:#666;line-height:1.55;margin:-2px 0 12px;}
.scard-more.open{display:block;}

/* STATS */
.stats-dark{background:#0d1e35;padding:72px 48px;display:flex;align-items:center;gap:56px;}
.stats-left{flex:1;}
.stats-left h2{font-size:32px;font-weight:800;color:#fff;line-height:1.3;margin-top:10px;max-width:360px;}
.sboxes{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.sbox{padding:24px 22px;border-radius:14px;min-width:150px;}
.sbox.g{background:#7ed321;}
.sbox.l{background:#e8e8e0;}
.slbl2{font-size:11px;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:20px;color:rgba(0,0,0,0.45);}
.sval{font-size:42px;font-weight:900;color:#111;line-height:1;}

/* SERVICES LIST */
.svlist{display:flex;min-height:380px;}
.svlist-left{flex:1;min-width:0;padding:56px 48px;}
.svlist-left h2{font-size:26px;font-weight:800;margin:10px 0 28px;}
.svi{border-top:1px solid #ddd;padding:16px 0;display:flex;width:100%;justify-content:space-between;align-items:center;background:none;border-left:none;border-right:none;border-bottom:none;cursor:pointer;font:inherit;text-align:left;}
.svi:focus-visible{outline:2px solid #7ed321;outline-offset:2px;}
.svi span{font-size:17px;font-weight:700;color:#bbb;transition:color .2s,font-size .2s;}
.svi .svi-arr{color:#bbb;transition:color .2s,transform .2s;}
.svi.act span{color:#111;font-size:23px;}
.svi.act .svi-arr{color:#111;}
.svi-body{display:none;font-size:15px;line-height:1.6;color:#666;padding:0 0 18px;max-width:90%;}
.svi-body-open{display:block;}
.svlist-r{width:480px;max-width:46%;flex-shrink:0;overflow:hidden;background:#0d1e35;}
.svlist-r img{width:100%;height:100%;object-fit:contain;}

/* SPLIT */
.split-section{display:grid;grid-template-columns:1fr 1fr;min-height:400px;background:#0d1e35;}
.split-img{position:relative;overflow:hidden;}
.split-img img{width:100%;height:100%;object-fit:cover;}
.split-badges{position:absolute;bottom:24px;left:24px;display:flex;gap:10px;z-index:2;}
.sbadge{border-radius:12px;padding:16px 20px;min-width:130px;}
.sbadge.nv{background:#12344d;}
.sbadge.gn{background:#7ed321;}
.sblbl3{font-size:10px;font-weight:800;letter-spacing:0.07em;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-bottom:12px;}
.sbadge.gn .sblbl3{color:rgba(0,0,0,0.4);}
.sbval{font-size:30px;font-weight:900;color:#fff;}
.sbadge.gn .sbval{color:#111;}
.split-right{padding:48px 40px;display:flex;flex-direction:column;justify-content:center;}
.split-right h2{font-size:28px;font-weight:800;color:#fff;margin:10px 0 24px;line-height:1.35;}
.acc-item{border-top:1px solid rgba(255,255,255,0.12);padding:15px 0;display:flex;justify-content:space-between;align-items:center;cursor:pointer;background:none;width:100%;text-align:left;}
.at{font-size:18px;font-weight:700;color:#fff;}
.at.green{color:#7ed321;}
.arr2{color:rgba(255,255,255,0.4);font-size:14px;}
.acc-body{padding:10px 0 14px;color:rgba(255,255,255,0.55);font-size:15px;line-height:1.6;border-bottom:1px solid rgba(255,255,255,0.12);}

/* BRANDS */
.brands{padding:44px 48px;border-top:1px solid #eee;border-bottom:1px solid #eee;}
.brands-lbl{font-size:13px;letter-spacing:0.15em;text-transform:uppercase;color:#666;font-weight:700;text-align:center;margin-bottom:32px;}
.brands-row{display:flex;justify-content:center;align-items:center;gap:64px;flex-wrap:wrap;row-gap:28px;}
.brand-item{display:flex;align-items:center;justify-content:center;height:60px;}

/* MONITORING */
.monitoring{background:#060f1a;display:flex;min-height:440px;}
.mon-left{flex:1;min-width:0;padding:64px 48px;display:flex;flex-direction:column;justify-content:center;}
.mon-left h2{font-size:30px;font-weight:800;color:#fff;margin:10px 0 16px;line-height:1.35;}
.mon-left p{color:rgba(255,255,255,0.55);font-size:16px;line-height:1.65;max-width:360px;}
.mon-right{width:560px;max-width:46%;flex-shrink:0;padding:28px;display:flex;align-items:center;justify-content:center;}
.dmock{background:#111;border-radius:16px;padding:28px;width:100%;}
.dtitle{color:#fff;font-size:16px;font-weight:700;margin-bottom:20px;letter-spacing:0.03em;}
.dgrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;}
.dc{background:#1c1c1c;border-radius:10px;padding:18px 20px;}
.dclbl{font-size:11px;color:#777;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:10px;}
.dcval{font-size:28px;font-weight:800;color:#fff;}
.dcval.or{color:#e87c30;}
.dcval.gr{color:#7ed321;}
.dbars{display:flex;align-items:flex-end;gap:5px;height:34px;margin-top:8px;}
.dbar{background:#7ed321;border-radius:3px;flex:1;opacity:0.55;}
.dbar.hi{opacity:1;}
.dbot{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:12px;margin-top:12px;}
.dbc{background:#1c1c1c;border-radius:10px;padding:16px 18px;}

/* TESTI */
.testi{position:relative;overflow:hidden;min-height:380px;display:flex;}
.timg{position:absolute;left:0;top:0;bottom:0;width:52%;overflow:hidden;}
.timg img{width:100%;height:100%;object-fit:cover;object-position:center 40%;}
.tov{position:absolute;left:0;top:0;bottom:0;width:52%;background:rgba(5,18,36,0.52);}
.tbgtxt{position:absolute;left:24px;top:50%;transform:translateY(-50%);font-size:100px;font-weight:900;color:rgba(255,255,255,0.09);line-height:1;letter-spacing:-0.02em;}
.tbody{margin-left:52%;padding:56px 44px;flex:1;background:#0d1e35;display:flex;flex-direction:column;justify-content:center;}
.tq{font-size:18px;font-weight:700;color:#fff;line-height:1.55;margin:14px 0 18px;font-style:italic;}
.tn{font-size:14px;font-weight:700;color:#fff;}
.tr{font-size:11px;color:rgba(255,255,255,0.4);text-transform:uppercase;letter-spacing:0.09em;}
.avrow{display:flex;align-items:center;gap:8px;margin-top:20px;}
.av{width:30px;height:30px;border-radius:50%;background:#7ed321;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#111;border:2px solid #0d1e35;}
.happy{font-size:11px;color:rgba(255,255,255,0.42);text-transform:uppercase;letter-spacing:0.08em;}

/* CONTACT / GET IN TOUCH */
.contact{background:#fff;padding:80px 48px;}
.contact-wrap{display:grid;grid-template-columns:1fr 1fr;gap:56px;max-width:1180px;margin:0 auto;}
.contact-left h2{font-size:30px;font-weight:800;line-height:1.3;margin:10px 0 18px;}
.contact-left p{font-size:14px;color:#666;line-height:1.65;max-width:420px;margin-bottom:28px;}
.contact-info{display:flex;flex-direction:column;gap:18px;}
.contact-info-item{display:flex;align-items:center;gap:14px;}
.contact-info-icon{width:42px;height:42px;border-radius:50%;background:#f1f8e6;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#5ba515;}
.contact-info-text strong{display:block;font-size:16px;font-weight:700;}
.contact-info-text span{font-size:15px;color:#777;}
.contact-info-text a{color:#111;text-decoration:none;}
.contact-info-text a:hover{color:#5ba515;}
.contact-form{background:#f7f8f5;border-radius:18px;padding:32px;display:flex;flex-direction:column;gap:14px;}
.contact-form input,.contact-form textarea{width:100%;padding:13px 16px;border-radius:10px;border:1px solid #ddd;font-size:14px;font-family:inherit;background:#fff;}
.contact-form input:focus,.contact-form textarea:focus{outline:2px solid #7ed321;outline-offset:1px;border-color:#7ed321;}
.contact-form textarea{resize:vertical;min-height:100px;}
.contact-form button{margin-top:6px;background:#0d1e35;color:#fff;border:none;padding:14px;border-radius:10px;font-size:14px;font-weight:700;cursor:pointer;transition:background 0.2s;}
.contact-form button:hover{background:#193554;}
.contact-form-note{font-size:13px;color:#999;text-align:center;}

.ctype-group{display:flex;flex-direction:column;gap:8px;}
.ctype-label{font-size:13px;font-weight:700;color:#555;}
.ctype-options{display:flex;flex-wrap:wrap;gap:8px;}
.ctype-btn{flex:1;min-width:110px;padding:10px 12px;border-radius:10px;border:1px solid #ddd;background:#fff;font-size:13px;font-weight:600;font-family:inherit;color:#555;cursor:pointer;transition:all .15s;}
.ctype-btn:hover{border-color:#7ed321;}
.ctype-btn.active{background:#0d1e35;border-color:#0d1e35;color:#fff;}

.capacity-row{display:flex;gap:10px;}
.capacity-row input{flex:1;min-width:0;}
.unit-toggle{display:flex;border:1px solid #ddd;border-radius:10px;overflow:hidden;flex-shrink:0;}
.unit-btn{padding:0 16px;border:none;background:#fff;font-size:13px;font-weight:700;font-family:inherit;color:#777;cursor:pointer;transition:all .15s;}
.unit-btn.active{background:#7ed321;color:#0d1e35;}

.location-row{display:flex;gap:10px;}
.location-row input{flex:1;min-width:0;}
.loc-btn{flex-shrink:0;display:flex;align-items:center;gap:6px;padding:0 14px;border-radius:10px;border:1px solid #ddd;background:#fff;font-size:13px;font-weight:600;font-family:inherit;color:#555;cursor:pointer;white-space:nowrap;transition:all .15s;}
.loc-btn:hover{border-color:#7ed321;color:#0d1e35;}
.loc-btn.locating{opacity:.6;cursor:wait;}

@media (max-width:480px){
  .capacity-row,.location-row{flex-direction:column;}
  .unit-toggle{align-self:flex-start;}
}

/* FOOTER */
.footer{background:#0d1e35;padding:56px 48px 28px;}
.footer-top{display:flex;gap:72px;margin-bottom:40px;}
.fbrand{flex:1;}
.ftag{color:rgba(255,255,255,0.5);font-size:16px;line-height:1.6;margin-bottom:16px;}
.fmail{color:#fff;font-size:18px;font-weight:600;text-decoration:none;}
.fphone{color:#7ed321;font-size:24px;font-weight:800;margin-top:4px;text-decoration:none;display:inline-block;}
.flinks h4{color:rgba(255,255,255,0.38);font-size:12px;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:14px;}
.flinks a{display:block;width:fit-content;color:rgba(255,255,255,0.78);font-size:15px;margin-bottom:9px;text-decoration:none;padding:8px 16px;border-radius:11px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background 0.22s,border-color 0.22s,color 0.22s,transform 0.22s,box-shadow 0.22s;}
.flinks a:hover{background:rgba(93,185,255,0.13);border-color:rgba(93,185,255,0.6);color:#fff;transform:translateX(5px);box-shadow:0 4px 18px rgba(93,185,255,0.2);}
.fsub h4{color:rgba(255,255,255,0.38);font-size:12px;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:14px;}
.fsub p{color:rgba(255,255,255,0.45);font-size:15px;line-height:1.55;}
.fbot{border-top:1px solid rgba(255,255,255,0.1);padding-top:22px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;}
.flogo{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,0.32);font-size:26px;font-weight:900;letter-spacing:-0.01em;}
.fcopy{color:rgba(255,255,255,0.22);font-size:13px;}


/* ============================================
   RESPONSIVE
   ============================================ */
@media(max-width:1024px){
  .hero{height:auto;min-height:0;flex-direction:column;align-items:stretch;padding:90px 0 0;overflow:visible;background:#0d1e35;}
  .hero-bg{position:absolute;inset:0;height:max(70vh,420px);}
  .hero-overlay{height:max(70vh,420px);}
  .hero-content{position:relative;z-index:2;padding:0 22px 36px;min-height:max(70vh,420px);display:flex;flex-direction:column;justify-content:center;box-sizing:border-box;}
  .hero-right-col{
    position:relative;right:auto;top:auto;bottom:auto;
    width:100%;padding-top:0;z-index:2;
  }
  .hero-stats-overlay{display:grid;grid-template-columns:1fr 1fr;flex:none;}
  .hero-cards{display:grid;grid-template-columns:1fr 1fr;flex:none;gap:0;}
  .hso-box{min-height:104px;padding:16px 18px;}
  .hc{min-height:104px;}
  .hero-bottom{position:relative;}
  .svlist{flex-direction:column;}
  .svlist-r{width:100%;height:280px;}
  .split-section{grid-template-columns:1fr;}
  .split-img{height:320px;}
  .monitoring{flex-direction:column;}
  .mon-right{width:100%;}
  .contact-wrap{grid-template-columns:1fr;}
}

@media(max-width:900px){
  .panels{grid-template-columns:repeat(2,1fr);height:auto;}
  .panel{height:320px;}
  .sgrid{grid-template-columns:1fr;}
  .stats-dark{flex-direction:column;align-items:flex-start;gap:28px;}
  .timg,.tov{width:100%;height:220px;position:relative;}
  .testi{flex-direction:column;}
  .tbody{margin-left:0;}
  .footer-top{flex-direction:column;gap:32px;}
}

@media(max-width:768px){
  .nav{padding:16px 22px;}
  .nav-links{
    position:fixed;top:0;right:-280px;height:100vh;width:260px;
    background:#0d1e35;flex-direction:column;align-items:flex-start;
    padding:90px 28px;gap:22px;transition:right 0.3s ease;z-index:30;
  }
  .nav-links.open{right:0;}
  .nav-cta{display:none;}
  .nav-toggle{display:block;z-index:31;}
  .hero{padding-top:80px;}
  .hero-content{padding:0 22px 30px;}
  .hero-bottom{position:relative;padding:14px 22px;flex-direction:column;gap:4px;align-items:flex-start;background:#0d1e35;}
  .tagline-section{padding:56px 22px 0;}
  .tagline-text{font-size:25px;}
  .services,.stats-dark,.contact{padding:48px 22px;}
  .svlist-left{padding:40px 22px;}
  .split-right{padding:36px 22px;}
  .mon-left{padding:48px 22px;}
  .footer{padding:40px 22px 22px;}
}

@media(max-width:560px){
  .panels{grid-template-columns:1fr;}
  .hero-title{font-size:clamp(38px,12vw,56px);}
  .hero-sub{font-size:16px;}
  .hero-actions{flex-direction:column;align-items:stretch;}
  .hero-btn{justify-content:center;}
  .hso-box{min-height:118px;padding:14px 14px;}
  .hc{min-height:118px;padding:14px 14px;}
  .hso-lbl,.hc p{font-size:11px;}
  .hso-val{font-size:22px;}
}
/* ============================================
   PRELOADER
   ============================================ */
html.has-preloader,html.has-preloader body{overflow:hidden;height:100%;}

#preloader{
  position:fixed;inset:0;z-index:999999;
  display:flex;align-items:center;justify-content:center;
  transition:opacity 0.6s cubic-bezier(0.65,0,0.35,1),visibility 0.6s;
}
#preloader.pl-hide{opacity:0;visibility:hidden;pointer-events:none;}

.pl-bg{
  position:absolute;inset:0;
  background:radial-gradient(circle at 50% 38%,#13294a 0%,#0d1e35 55%,#081323 100%);
}

.pl-content{
  position:relative;z-index:2;
  display:flex;flex-direction:column;align-items:center;
  gap:22px;
  animation:pl-rise 0.7s cubic-bezier(0.22,1,0.36,1) both;
}

@keyframes pl-rise{
  from{opacity:0;transform:translateY(14px);}
  to{opacity:1;transform:translateY(0);}
}

/* Logo mark with rotating ring + sun rays */
.pl-mark{
  position:relative;width:108px;height:108px;
  display:flex;align-items:center;justify-content:center;
}

.pl-logo{
  width:54px;height:54px;object-fit:contain;border-radius:8px;
  position:relative;z-index:3;
  filter:drop-shadow(0 0 14px rgba(126,211,33,0.45));
  animation:pl-pulse 2.2s ease-in-out infinite;
}

@keyframes pl-pulse{
  0%,100%{transform:scale(1);}
  50%{transform:scale(1.06);}
}

.pl-ring{
  position:absolute;inset:0;width:100%;height:100%;
  transform:rotate(-90deg);
  z-index:2;
}
.pl-ring-track{
  fill:none;stroke:rgba(255,255,255,0.12);stroke-width:3;
}
.pl-ring-fill{
  fill:none;stroke:#7ed321;stroke-width:3;stroke-linecap:round;
  stroke-dasharray:327;stroke-dashoffset:327;
  filter:drop-shadow(0 0 6px rgba(126,211,33,0.7));
}

.pl-rays{
  position:absolute;inset:0;width:100%;height:100%;
  z-index:1;
  animation:pl-spin 12s linear infinite;
}
.pl-rays-g line{
  stroke:rgba(126,211,33,0.55);stroke-width:2.5;stroke-linecap:round;
}
@keyframes pl-spin{
  from{transform:rotate(0deg);}
  to{transform:rotate(360deg);}
}

.pl-word{
  display:flex;flex-direction:column;align-items:center;gap:6px;
}
.pl-name{
  font-family:'Segoe UI',Arial,sans-serif;
  font-size:24px;font-weight:800;letter-spacing:-0.01em;
  color:#fff;
}
.pl-name em{
  font-style:normal;color:#7ed321;
}
.pl-tag{
  font-size:12px;font-weight:600;letter-spacing:0.12em;
  text-transform:uppercase;color:rgba(255,255,255,0.55);
}

.pl-bar{
  width:160px;height:3px;border-radius:99px;
  background:rgba(255,255,255,0.12);overflow:hidden;
}
.pl-bar-fill{
  display:block;height:100%;width:0%;border-radius:99px;
  background:linear-gradient(90deg,#7ed321,#a8e85f);
  transition:width 0.25s ease-out;
}

.pl-brand{
  font-size:10px;font-weight:600;letter-spacing:0.1em;
  text-transform:uppercase;color:rgba(255,255,255,0.35);
  margin-top:2px;
}

@media(prefers-reduced-motion:reduce){
  .pl-logo,.pl-ring-fill,.pl-rays{animation:none;}
}

@media(max-width:560px){
  .pl-mark{width:88px;height:88px;}
  .pl-logo{width:44px;height:44px;}
  .pl-name{font-size:20px;}
  .pl-bar{width:130px;}
}