/* Drone Exterior Solutions Ltd — Into The Wild Studios */
:root{
	--n950:#070d18;--n900:#0c1524;--n850:#101b2e;--n800:#15223a;--n700:#1f2f4a;--slate:#2e3a4f;--s500:#5e6f89;--s400:#8595ad;--s300:#b3bfd0;
	--ice:#f2f5fa;--ice2:#e7edf5;--line:#dfe6f0;--ink:#0f1829;--body:#3d4a60;
	--gold:#f5b922;--gold2:#ffd766;--gold3:#e09b0a;
	--grad-gold:linear-gradient(100deg,#ffe08a 0%,#f5b922 45%,#e89a0c 100%);
	--r:18px;--r-sm:12px;--sh:0 20px 50px -20px rgba(9,18,36,.35);--sh-lg:0 40px 90px -30px rgba(4,10,22,.6);
	--fd:"Barlow Condensed",Impact,sans-serif;--fb:"Manrope",system-ui,sans-serif;--fm:"JetBrains Mono",ui-monospace,monospace;
	--wrap:1240px;--ease:cubic-bezier(.2,.8,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--fb);font-size:17px;line-height:1.65;color:var(--body);background:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
p{margin:0 0 1.05em}
h1,h2,h3,h4{margin:0;color:var(--ink);font-weight:700;line-height:1.1}
ul,ol{margin:0;padding:0;list-style:none}
button{font:inherit;cursor:pointer}
.ico{width:1.15em;height:1.15em;flex:none}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 24px}
.narrow{max-width:900px}
.center{text-align:center;margin-top:44px}
.skip{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--ink);padding:10px 16px;z-index:1000}
.skip:focus{left:10px}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.hl{background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.grad{background:linear-gradient(100deg,#fff 0%,#ffe08a 35%,#f5b922 70%,#e89a0c 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 6s ease-in-out infinite}
@keyframes shine{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}

/* Eyebrow + headings */
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--fm);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold3);margin:0 0 16px;font-weight:500}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--grad-gold);border-radius:2px}
.shead{max-width:760px;margin:0 0 50px}
.shead--c{margin-left:auto;margin-right:auto;text-align:center}
.shead--c .eyebrow{justify-content:center}
.shead__title,.h2{font-family:var(--fd);font-weight:700;font-size:clamp(34px,4.4vw,56px);letter-spacing:-.005em;text-transform:uppercase;line-height:1;margin-bottom:18px}
.shead__lead{font-size:18.5px;color:var(--s500);margin:0}
.shead--dark .shead__title,.h2--light{color:#fff}
.shead--dark .shead__lead{color:var(--s300)}
.shead--dark .eyebrow,.drone-sec .eyebrow,.dronecall .eyebrow,.hero .eyebrow,.phero .eyebrow,.cta-band .eyebrow,.quote .eyebrow{color:var(--gold)}
.h4{font-family:var(--fd);text-transform:uppercase;font-size:24px;letter-spacing:.02em;margin:28px 0 14px}

/* Buttons */
.btn{--bh:52px;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:var(--bh);padding:0 26px;border-radius:999px;font-weight:700;font-size:15.5px;letter-spacing:.01em;border:1.5px solid transparent;transition:transform .35s var(--ease),box-shadow .35s var(--ease),background .3s,color .3s,border-color .3s;white-space:nowrap;position:relative;overflow:hidden;isolation:isolate}
.btn .ico{transition:transform .35s var(--ease)}
.btn:hover .ico:last-child{transform:translateX(3px)}
.btn--gold{background:var(--grad-gold);color:var(--n900);box-shadow:0 12px 30px -10px rgba(245,185,34,.65),inset 0 1px 0 rgba(255,255,255,.5)}
.btn--gold::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.65) 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s var(--ease);z-index:-1}
.btn--gold:hover{transform:translateY(-2px);box-shadow:0 18px 40px -12px rgba(245,185,34,.8)}
.btn--gold:hover::after{transform:translateX(120%)}
.btn--glass{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.22);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.btn--glass:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.45);transform:translateY(-2px)}
.btn--navy{background:var(--n800);color:#fff;box-shadow:var(--sh)}
.btn--navy:hover{background:var(--n700);transform:translateY(-2px)}
.btn--line{background:#fff;color:var(--ink);border-color:var(--line)}
.btn--line:hover{border-color:var(--gold);transform:translateY(-2px)}
.btn--sm{--bh:44px;padding:0 20px;font-size:14.5px}
.btn--lg{--bh:58px;padding:0 32px;font-size:16.5px}
.btn--block{width:100%}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.shead--c + .btn-row,.cta-band .btn-row{justify-content:center}

/* Topbar */
.topbar{background:var(--n950);color:var(--s300);font-size:13.5px;border-bottom:1px solid rgba(255,255,255,.06)}
.topbar__in{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:42px}
.topbar__tag{margin:0;display:flex;align-items:center;gap:10px;font-family:var(--fm);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.topbar__tag img{width:34px;height:auto}
.topbar__sep{opacity:.3}
.topbar__ccc{color:var(--gold)}
.topbar__links{display:flex;gap:22px}
.topbar__links a{display:inline-flex;align-items:center;gap:7px;transition:color .2s}
.topbar__links a:hover{color:var(--gold)}
.topbar__links .ico{color:var(--gold)}

/* Header */
.hdr{position:sticky;top:0;z-index:100;background:rgba(10,18,32,.72);backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);border-bottom:1px solid rgba(255,255,255,.07);transition:background .35s,box-shadow .35s}
.hdr.is-scrolled{background:rgba(9,16,29,.94);box-shadow:0 14px 40px -18px rgba(0,0,0,.7)}
.hdr__in{display:flex;align-items:center;gap:26px;min-height:84px;transition:min-height .35s}
.hdr.is-scrolled .hdr__in{min-height:70px}
.brand{flex:none;display:block}
.brand img{width:250px;max-width:none;height:auto;transition:width .35s}
.nav__link,.hdr__call span{white-space:nowrap}
.nav__ico{width:17px;height:17px;color:var(--gold);margin-right:3px;transition:transform .35s var(--ease)}
.nav__link:hover .nav__ico,.nav__item:focus-within>.nav__link .nav__ico{transform:translateY(-2px) scale(1.12)}
.sub a{display:flex!important;align-items:center;gap:12px}
.sub__ico{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(245,185,34,.1);border:1px solid rgba(245,185,34,.22);color:var(--gold);transition:all .25s}
.sub__ico .ico{width:18px;height:18px}
.sub a:hover .sub__ico{background:var(--grad-gold);color:var(--n900);border-color:transparent}
/* Header sizing — keeps logo, menu and CTA on one line at every desktop width */
.hdr .wrap{max-width:1440px}
.hdr__cta{flex:none}
@media (max-width:1100px){.hdr__cta{margin-left:auto}}
.nav{min-width:0}
.nav__link{padding:10px 10px;font-size:15px}
@media (max-width:1560px) and (min-width:1101px){
	.nav__link{padding:9px 7px;font-size:14.5px}
	.nav__ico{width:15px;height:15px;margin-right:1px}
	.brand img,.hdr.is-scrolled .brand img{width:215px}
	.hdr__in{gap:14px}
	.hdr__cta .btn{padding:0 18px;font-size:14px}
}
@media (max-width:1380px) and (min-width:1101px){.nav__ico{display:none}.nav__car{width:12px}}
@media (max-width:1200px) and (min-width:1101px){.nav__link{padding:8px 5px;font-size:14px}.brand img,.hdr.is-scrolled .brand img{width:185px}.hdr__cta .btn{padding:0 14px;font-size:13.5px}}
@media (max-width:1100px){.nav__ico{width:20px;height:20px;margin-right:8px}}
body.admin-bar .hdr{top:32px}
body.admin-bar .subnav{top:102px}
@media (max-width:1100px){body.admin-bar .nav{padding-top:190px}}
.hdr.is-scrolled .brand img{width:220px}
.nav{margin-left:auto}
.nav__list{display:flex;align-items:center;gap:4px}
.nav__item{position:relative}
.nav__link{display:flex;align-items:center;gap:5px;padding:10px 12px;color:#e6ecf5;font-weight:600;font-size:15px;border-radius:10px;transition:color .2s,background .2s}
.nav__link:hover,.nav__item:focus-within>.nav__link{color:var(--gold);background:rgba(255,255,255,.05)}
.nav__car{width:14px;height:14px;opacity:.7;transition:transform .3s}
.nav__item:hover .nav__car{transform:rotate(180deg)}
.nav__tog{display:none}
.sub{position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,8px);min-width:250px;background:rgba(12,21,36,.97);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:10px;opacity:0;visibility:hidden;transition:all .3s var(--ease);box-shadow:var(--sh-lg)}
.sub::before{content:"";position:absolute;top:-12px;left:0;right:0;height:12px}
.is-mega .sub{min-width:560px;display:grid;grid-template-columns:1fr 1fr;gap:2px}
.nav__item:hover>.sub,.nav__item:focus-within>.sub{opacity:1;visibility:visible;transform:translate(-50%,0)}
.sub a{display:block;padding:10px 14px;color:#cfd8e6;font-size:14.5px;font-weight:500;border-radius:10px;transition:all .2s}
.sub a:hover{background:rgba(245,185,34,.1);color:var(--gold);padding-left:18px}
.hdr__cta{display:flex;align-items:center;gap:14px}
.hdr__call{display:flex;align-items:center;gap:10px;color:#fff;font-weight:700;font-size:15px}
.hdr__call .ico{width:40px;height:40px;padding:10px;border-radius:50%;background:rgba(245,185,34,.14);color:var(--gold);border:1px solid rgba(245,185,34,.35)}
.hdr__call small{display:block;font-size:11px;font-weight:600;color:var(--s400);text-transform:uppercase;letter-spacing:.1em;line-height:1.2}
.hdr__call span{line-height:1.25}
.burger{display:none;width:46px;height:46px;border-radius:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);flex-direction:column;align-items:center;justify-content:center;gap:5px}
.burger span{width:20px;height:2px;background:#fff;border-radius:2px;transition:transform .35s var(--ease),opacity .25s}
.nav-open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-open .burger span:nth-child(2){opacity:0}
.nav-open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nav__mob{display:none}

/* Grid lines / meshes */
.grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(ellipse 80% 70% at 50% 40%,#000 30%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 40%,#000 30%,transparent 80%);pointer-events:none}

/* Hero */
.hero{position:relative;overflow:hidden;background:var(--n900);color:#fff;padding:90px 0 110px;margin-top:-84px;padding-top:180px;isolation:isolate}
.hero__mesh{position:absolute;inset:-20%;z-index:-1;background:
	radial-gradient(40% 45% at 78% 30%,rgba(245,185,34,.22),transparent 60%),
	radial-gradient(45% 50% at 12% 20%,rgba(64,106,170,.45),transparent 65%),
	radial-gradient(50% 55% at 60% 100%,rgba(46,58,79,.95),transparent 70%),
	linear-gradient(160deg,#0a1322 0%,#13213a 55%,#0b1424 100%);animation:mesh 18s ease-in-out infinite alternate}
@keyframes mesh{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(-3%,2%,0) scale(1.06)}}
.hero__drops i{position:absolute;top:-20px;left:var(--x);width:2px;height:60px;background:linear-gradient(180deg,transparent,rgba(160,200,255,.35));border-radius:2px;animation:drop var(--t) linear var(--dl) infinite;opacity:.5}
@keyframes drop{0%{transform:translateY(-10vh)}100%{transform:translateY(120vh)}}
.hero__in{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center;position:relative}
.badge{display:inline-flex;align-items:center;gap:10px;padding:8px 16px 8px 12px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);font-size:13px;font-weight:600;color:#dfe7f2;margin:0 0 26px;backdrop-filter:blur(6px)}
.badge b{color:var(--gold)}
.dot-live{width:8px;height:8px;border-radius:50%;background:#3ee07f;box-shadow:0 0 0 0 rgba(62,224,127,.6);animation:ping 2s infinite;flex:none}
@keyframes ping{0%{box-shadow:0 0 0 0 rgba(62,224,127,.55)}70%{box-shadow:0 0 0 10px rgba(62,224,127,0)}100%{box-shadow:0 0 0 0 rgba(62,224,127,0)}}
.hero__title{font-family:var(--fd);text-transform:uppercase;font-weight:800;font-size:clamp(50px,7.2vw,98px);line-height:.9;letter-spacing:-.01em;color:#fff;margin-bottom:20px}
.hero__title .grad{display:block}
.hero__ccc{display:flex;align-items:center;gap:14px;font-family:var(--fm);font-size:14px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:22px}
.hero__ccc i{width:6px;height:6px;background:var(--gold);transform:rotate(45deg)}
.hero__lead{font-size:19px;color:#c3cedf;max-width:600px}
.hero__lead strong{color:#fff}
.hero__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:42px;border-top:1px solid rgba(255,255,255,.1);padding-top:24px;max-width:620px}
.hero__stats li{padding-right:14px;border-right:1px solid rgba(255,255,255,.08);padding-left:14px}
.hero__stats li:first-child{padding-left:0}
.hero__stats li:last-child{border:0}
.hero__stats strong{display:block;font-family:var(--fd);font-size:36px;color:#fff;line-height:1}
.hero__stats span{font-size:12.5px;color:var(--s400);line-height:1.3;display:block;margin-top:6px}
.hero__vis{position:relative;height:620px;perspective:1200px;transform-style:preserve-3d}
.hero__main{position:absolute;right:30px;top:0;width:74%;height:88%;transform:rotateY(-6deg) rotateX(2deg);transition:transform .6s var(--ease)}
.hero__main img{width:100%;height:100%;object-fit:cover}
.hero__sub{position:absolute;left:0;bottom:0;width:48%;aspect-ratio:4/3;margin:0;border-radius:var(--r);overflow:hidden;border:4px solid rgba(255,255,255,.9);box-shadow:var(--sh-lg);animation:bob 7s ease-in-out infinite}
.hero__sub img{width:100%;height:100%;object-fit:cover}
.hud{position:absolute;display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;background:rgba(11,19,34,.78);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);font-family:var(--fm);font-size:12px;letter-spacing:.04em;color:#e6edf7;box-shadow:var(--sh-lg);white-space:nowrap}
.hud .ico{color:var(--gold)}
.hud--1{top:40px;left:4%;animation:bob 6s ease-in-out infinite}
.hud--2{top:44%;right:-10px;animation:bob 7s ease-in-out .8s infinite}
.hud--3{bottom:6%;right:12%;animation:bob 8s ease-in-out 1.4s infinite}
.hero__drone{position:absolute;top:-34px;right:-10px;width:150px;filter:drop-shadow(0 16px 20px rgba(0,0,0,.45));animation:hover 5s ease-in-out infinite}
@keyframes hover{0%,100%{transform:translate(0,0) rotate(-2deg)}50%{transform:translate(-14px,-16px) rotate(2deg)}}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.float{animation:hover 5s ease-in-out infinite}
.hero__scroll{position:absolute;left:50%;bottom:26px;width:26px;height:42px;border:2px solid rgba(255,255,255,.3);border-radius:14px;transform:translateX(-50%)}
.hero__scroll span{position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;background:var(--gold);border-radius:2px;animation:scrolly 1.8s infinite}
@keyframes scrolly{0%{opacity:0;transform:translateY(0)}40%{opacity:1}100%{opacity:0;transform:translateY(14px)}}

/* HUD frame */
.hud-frame{position:relative;margin:0;border-radius:var(--r);overflow:hidden;box-shadow:var(--sh-lg);background:var(--n800)}
.hud-frame>img{width:100%;height:100%;object-fit:cover}
.hud-frame>i{position:absolute;width:26px;height:26px;border:2.5px solid var(--gold);z-index:2}
.hud-frame>i:nth-of-type(1){top:14px;left:14px;border-right:0;border-bottom:0;border-top-left-radius:6px}
.hud-frame>i:nth-of-type(2){top:14px;right:14px;border-left:0;border-bottom:0;border-top-right-radius:6px}
.hud-frame>i:nth-of-type(3){bottom:14px;left:14px;border-right:0;border-top:0;border-bottom-left-radius:6px}
.hud-frame>i:nth-of-type(4){bottom:14px;right:14px;border-left:0;border-top:0;border-bottom-right-radius:6px}
.scan{position:absolute;left:0;right:0;height:120px;top:-120px;background:linear-gradient(180deg,transparent,rgba(245,185,34,.18) 85%,rgba(255,215,102,.8) 100%);animation:scan 4.5s cubic-bezier(.6,0,.4,1) infinite;z-index:1;mix-blend-mode:screen}
@keyframes scan{0%{top:-120px}100%{top:100%}}
.hud-tag{position:absolute;left:18px;bottom:18px;z-index:3;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:10px;background:rgba(11,19,34,.8);color:#fff;font-family:var(--fm);font-size:12px;backdrop-filter:blur(8px)}

/* Trust marquee */
.trust{background:var(--grad-gold);color:var(--n900);overflow:hidden;position:relative;z-index:2}
.trust__track{display:flex;width:max-content;animation:marq 38s linear infinite}
.trust:hover .trust__track{animation-play-state:paused}
.trust__item{display:inline-flex;align-items:center;gap:10px;padding:18px 26px;font-weight:800;font-size:15px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;font-family:var(--fd);font-size:19px}
.trust__dot{display:flex;align-items:center;opacity:.45;font-size:10px}
@keyframes marq{to{transform:translateX(-50%)}}

/* Sections */
.sec-pad{padding:110px 0;position:relative}
.sec-pad--tint{background:linear-gradient(180deg,var(--ice) 0%,#fff 100%)}
.sec-pad--dark{background:radial-gradient(60% 80% at 80% 0%,rgba(245,185,34,.12),transparent 60%),linear-gradient(180deg,var(--n900),var(--n850));color:var(--s300);overflow:hidden}
.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.split__text>p{font-size:17.5px}
.split__media{position:relative}
.split__media .hud-frame{aspect-ratio:4/4.3}
.float-card{position:absolute;left:-28px;bottom:36px;display:flex;align-items:center;gap:14px;background:#fff;padding:16px 20px;border-radius:16px;box-shadow:var(--sh-lg);animation:bob 6s ease-in-out infinite;max-width:300px}
.float-card--b{left:auto;right:-24px;bottom:-24px}
.float-card .ico{width:42px;height:42px;padding:9px;border-radius:12px;background:var(--ice);color:var(--gold3)}
.float-card strong{display:block;color:var(--ink);font-size:15.5px;line-height:1.2}
.float-card span{font-size:13.5px;color:var(--s500)}
.ticks{display:grid;gap:12px;margin:22px 0}
.ticks--2{grid-template-columns:1fr 1fr}
.ticks li{display:flex;gap:10px;align-items:flex-start;font-weight:600;color:var(--ink);font-size:15.5px;line-height:1.4}
.ticks .ico{width:22px;height:22px;padding:4px;border-radius:50%;background:rgba(245,185,34,.18);color:var(--gold3);stroke-width:3;margin-top:-1px}
.note{display:flex;gap:14px;padding:20px 22px;border-radius:var(--r-sm);background:var(--ice);border-left:4px solid var(--gold);margin-top:24px}
.note .ico{width:28px;height:28px;color:var(--gold3)}
.note p{margin:0;font-size:15.5px}
.note strong{color:var(--ink)}

/* Paths */
.paths{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.path{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:500px;border-radius:24px;overflow:hidden;color:#fff;isolation:isolate;box-shadow:var(--sh);transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.path__img{position:absolute;inset:0;background-size:cover;background-position:center;z-index:-2;transition:transform 1.2s var(--ease)}
.path__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(9,16,29,.35) 0%,rgba(9,16,29,.55) 35%,rgba(9,16,29,.88) 60%,rgba(9,16,29,.98) 100%)}
.path__title,.path__text{text-shadow:0 2px 12px rgba(0,0,0,.55)}
.path:hover{transform:translateY(-8px);box-shadow:var(--sh-lg)}
.path:hover .path__img{transform:scale(1.08)}
.path__tag{position:absolute;top:20px;left:20px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(8px);font-family:var(--fm);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase}
.path__body{padding:30px;display:flex;flex-direction:column;gap:8px}
.path__ico .ico{width:52px;height:52px;padding:12px;border-radius:16px;background:var(--grad-gold);color:var(--n900);margin-bottom:6px}
.path__kicker{font-family:var(--fm);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.path__title{font-family:var(--fd);font-size:36px;font-weight:700;text-transform:uppercase;line-height:1}
.path__text{color:#c9d3e2;font-size:15.5px;line-height:1.55}
.path__go{display:inline-flex;align-items:center;gap:8px;font-weight:700;margin-top:10px;color:var(--gold)}
.path:hover .path__go .ico{transform:translateX(4px)}
.path__go .ico{transition:transform .3s}

/* Residential services */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.svc{position:relative;padding:32px 30px 30px;border-radius:22px;background:#fff;border:1px solid var(--line);transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .3s;overflow:hidden}
.svc::before{content:"";position:absolute;inset:0;background:radial-gradient(120% 80% at 100% 0%,rgba(245,185,34,.14),transparent 55%);opacity:0;transition:opacity .4s}
.svc:hover{transform:translateY(-6px);box-shadow:var(--sh);border-color:rgba(245,185,34,.5)}
.svc:hover::before{opacity:1}
.svc__ico .ico{width:58px;height:58px;padding:14px;border-radius:18px;background:linear-gradient(145deg,var(--n800),var(--slate));color:var(--gold);margin-bottom:22px;box-shadow:0 12px 24px -12px rgba(15,24,41,.6);position:relative}
.svc__title{font-family:var(--fd);font-size:26px;text-transform:uppercase;margin-bottom:10px;position:relative}
.svc__text{font-size:15.5px;color:var(--s500);position:relative}
.svc__go{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--ink);font-size:15px;position:relative}
.svc__go .ico{color:var(--gold3);transition:transform .3s}
.svc:hover .svc__go .ico{transform:translateX(4px)}

/* Sectors */
.sec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.sec{position:relative;display:block;aspect-ratio:3/3.6;border-radius:20px;overflow:hidden;isolation:isolate;box-shadow:var(--sh);transition:transform .45s var(--ease)}
.sec__img{position:absolute;inset:0;background-size:cover;background-position:center;z-index:-2;transition:transform 1s var(--ease),filter .6s}
.sec::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(9,16,29,.35) 0%,rgba(9,16,29,.6) 45%,rgba(9,16,29,.97) 100%);transition:background .5s}
.sec__title{text-shadow:0 2px 12px rgba(0,0,0,.6)}
.sec:hover{transform:translateY(-6px)}
.sec:hover .sec__img{transform:scale(1.1)}
.sec:hover::after{background:linear-gradient(180deg,rgba(9,16,29,.2) 0%,rgba(20,32,54,.95) 100%)}
.sec__body{position:absolute;left:0;right:0;bottom:0;padding:22px;display:flex;align-items:flex-end;gap:12px;color:#fff}
.sec__ico .ico{width:42px;height:42px;padding:10px;border-radius:12px;background:rgba(245,185,34,.95);color:var(--n900)}
.sec__title{font-family:var(--fd);font-size:22px;text-transform:uppercase;font-weight:700;line-height:1.05;flex:1}
.sec__go .ico{width:36px;height:36px;padding:9px;border-radius:50%;border:1px solid rgba(255,255,255,.35);transition:all .35s}
.sec:hover .sec__go .ico{background:var(--gold);color:var(--n900);border-color:var(--gold);transform:rotate(-45deg)}

.sec--cta{background:radial-gradient(90% 70% at 100% 0%,rgba(245,185,34,.25),transparent 60%),linear-gradient(160deg,var(--n800),var(--n950));border:1px solid rgba(245,185,34,.35)}
.sec--cta::after{display:none}
.sec__body--cta{top:0;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;padding:26px}
.sec__body--cta img{width:80px}
.sec__text{font-size:14.5px;color:#c3cedf;line-height:1.5}
.sec--cta .btn{margin-top:4px}
.sec.is-current{outline:3px solid var(--gold);outline-offset:3px}
.sec.is-current .sec__title::after{content:" · You are here";font-family:var(--fm);font-size:11px;letter-spacing:.08em;color:var(--gold);display:block;margin-top:4px}

/* Drone section */
.drone-sec{position:relative;overflow:hidden;background:var(--n950);color:var(--s300);padding:120px 0;isolation:isolate}
.drone-sec__mesh{position:absolute;inset:0;z-index:-1;background:radial-gradient(50% 60% at 90% 10%,rgba(245,185,34,.18),transparent 60%),radial-gradient(60% 60% at 0% 100%,rgba(58,96,160,.35),transparent 60%),linear-gradient(180deg,#08101d,#0f1a2d)}
.drone-sec__top{display:grid;grid-template-columns:1fr 1.05fr;gap:60px;align-items:center;margin-bottom:70px}
.drone-sec__lead{font-size:18.5px;color:#c3cedf}
.drone-sec__lead strong{color:var(--gold)}
.mosaic{display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:1fr 1fr;gap:14px;height:460px}
.mosaic img{width:100%;height:100%;object-fit:cover;border-radius:18px;box-shadow:var(--sh-lg);transition:transform .6s var(--ease)}
.mosaic img:first-child{grid-row:span 2}
.mosaic img:hover{transform:scale(1.03)}
.hud-frame__media{width:100%;border-radius:20px;box-shadow:var(--sh-lg)}
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;counter-reset:s;position:relative}
.steps::before{content:"";position:absolute;top:50px;left:6%;right:6%;height:2px;background:repeating-linear-gradient(90deg,rgba(245,185,34,.55) 0 10px,transparent 10px 20px);animation:dash 2s linear infinite}
@keyframes dash{to{background-position:40px 0}}
.step{position:relative;padding:26px 22px;border-radius:20px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);backdrop-filter:blur(6px);transition:transform .4s var(--ease),border-color .3s,background .3s}
.step:hover{transform:translateY(-6px);border-color:rgba(245,185,34,.5);background:rgba(255,255,255,.07)}
.step__n{position:absolute;top:18px;right:20px;font-family:var(--fm);font-size:12px;color:var(--s400)}
.step__ico .ico{width:52px;height:52px;padding:13px;border-radius:50%;background:var(--n800);border:2px solid var(--gold);color:var(--gold);margin-bottom:18px;position:relative;z-index:1;box-shadow:0 0 0 6px var(--n950)}
.step__title{font-family:var(--fd);text-transform:uppercase;font-size:21px;color:#fff;margin-bottom:8px}
.step__text{font-size:14.5px;color:var(--s400);margin:0;line-height:1.55}
.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:44px}
.benefits div{display:grid;grid-template-columns:auto 1fr;column-gap:14px;align-items:center;padding:20px;border-radius:16px;background:linear-gradient(135deg,rgba(245,185,34,.12),rgba(245,185,34,.02));border:1px solid rgba(245,185,34,.22)}
.benefits .ico{grid-row:span 2;width:40px;height:40px;color:var(--gold)}
.benefits strong{color:#fff;font-size:15.5px}
.benefits span{font-size:13.5px;color:var(--s400)}

/* Drone callout */
.dronecall{position:relative;overflow:hidden;background:linear-gradient(120deg,var(--n900),var(--n700));color:#c3cedf;padding:90px 0}
.dronecall__in{display:grid;grid-template-columns:300px 1fr;gap:60px;align-items:center;position:relative}
.dronecall__icon{position:relative;display:grid;place-items:center;height:260px}
.dronecall__icon img{width:220px;position:relative;z-index:1}
.radar{position:absolute;width:240px;height:240px;border-radius:50%;border:1px solid rgba(245,185,34,.35);background:conic-gradient(from 0deg,rgba(245,185,34,.25),transparent 30%);animation:spin 5s linear infinite}
.radar::before,.radar::after{content:"";position:absolute;inset:30px;border-radius:50%;border:1px dashed rgba(255,255,255,.14)}
.radar::after{inset:70px}
@keyframes spin{to{transform:rotate(360deg)}}

/* Method cards */
.cards4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.mcard{padding:30px 26px;border-radius:20px;background:#fff;border:1px solid var(--line);position:relative;overflow:hidden;transition:transform .4s var(--ease),box-shadow .4s}
.mcard::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--grad-gold);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.mcard:hover{transform:translateY(-6px);box-shadow:var(--sh)}
.mcard:hover::after{transform:scaleX(1)}
.mcard__n{font-family:var(--fd);font-size:54px;font-weight:800;line-height:1;background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;color:transparent;display:block;margin-bottom:12px}
.mcard h3{font-family:var(--fd);text-transform:uppercase;font-size:23px;margin-bottom:8px}
.mcard p{margin:0;font-size:15px;color:var(--s500)}

/* Why */
.why{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.why__item{padding:30px;border-radius:20px;border:1px solid var(--line);background:linear-gradient(180deg,#fff,var(--ice));transition:transform .4s var(--ease),box-shadow .4s}
.why__item:hover{transform:translateY(-5px);box-shadow:var(--sh)}
.why__ico .ico{width:50px;height:50px;padding:12px;border-radius:14px;background:var(--grad-gold);color:var(--n900);margin-bottom:18px}
.why__item h3{font-family:var(--fd);text-transform:uppercase;font-size:23px;margin-bottom:8px}
.why__item p{margin:0;font-size:15.5px;color:var(--s500)}

/* Gallery */
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.gal__item{position:relative;display:block;aspect-ratio:4/3;border-radius:18px;overflow:hidden;box-shadow:var(--sh);background:var(--n800)}
.gal__item img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease),filter .5s}
.gal__item:hover img{transform:scale(1.08);filter:brightness(.8)}
.gal__cap{position:absolute;left:14px;right:14px;bottom:14px;padding:10px 14px;border-radius:12px;background:rgba(11,19,34,.82);color:#fff;font-size:13.5px;font-weight:600;backdrop-filter:blur(6px);transform:translateY(12px);opacity:0;transition:all .45s var(--ease)}
.gal__item:hover .gal__cap{transform:none;opacity:1}
.gal-empty{text-align:center;max-width:720px;margin:0 auto;padding:56px 36px;border-radius:24px;border:2px dashed var(--line);background:#fff}
.gal-empty img{margin:0 auto 18px;width:96px}
.gal-empty h3{font-family:var(--fd);text-transform:uppercase;font-size:30px;margin-bottom:10px}
.gal-empty .btn-row{justify-content:center}
.gal-hub{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.gal-note{text-align:center;font-size:13.5px;color:var(--s400);margin-top:24px}

/* Lightbox */
.lb{position:fixed;inset:0;z-index:999;background:rgba(5,10,20,.94);display:grid;place-items:center;padding:30px}
.lb[hidden]{display:none}
.lb figure{margin:0;max-width:1200px;text-align:center}
.lb img{max-height:80vh;width:auto;margin:0 auto;border-radius:14px}
.lb figcaption{color:#cfd8e6;margin-top:14px;font-size:15px}
.lb button{position:absolute;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:50%;width:52px;height:52px;display:grid;place-items:center;font-size:30px}
.lb__x{top:20px;right:20px}.lb__p{left:20px;top:50%}.lb__n{right:20px;top:50%}

/* Reviews */
.rv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.rv{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:28px 24px;border-radius:20px;background:#fff;border:1px solid var(--line);transition:transform .4s var(--ease),box-shadow .4s,border-color .3s}
.rv:hover{transform:translateY(-6px);box-shadow:var(--sh);border-color:var(--gold)}
.rv__logo{width:44px;height:44px}
.rv__stars{display:flex;gap:2px;color:var(--gold)}
.ico--star{fill:currentColor;stroke:none;width:18px;height:18px}
.rv__name{font-family:var(--fd);text-transform:uppercase;font-size:26px;font-weight:700;color:var(--ink)}
.rv__cta{display:inline-flex;align-items:center;gap:6px;font-size:14.5px;font-weight:700;color:var(--gold3);margin-top:auto}
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}
.fq{margin:0;padding:28px;border-radius:20px;background:var(--ice)}
.fq blockquote{margin:12px 0;font-size:16px;color:var(--ink)}
.fq figcaption{font-weight:700;color:var(--ink)}
.fq figcaption span{color:var(--s500);font-weight:500}

/* Areas */
.areas-sec{padding:110px 0}
.areas{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;position:relative}
.area{padding:28px;border-radius:22px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(6px)}
.area__county{display:flex;align-items:center;gap:10px;font-family:var(--fd);font-size:30px;text-transform:uppercase;font-weight:700;color:#fff;margin-bottom:18px}
.area__county .ico{color:var(--gold)}
.area__county .ico:last-child{margin-left:auto;width:36px;height:36px;padding:9px;border-radius:50%;border:1px solid rgba(255,255,255,.25);transition:all .3s}
.area__county:hover .ico:last-child{background:var(--gold);color:var(--n900);border-color:var(--gold)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips--center{justify-content:center}
.chip{display:inline-flex;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);font-size:14px;font-weight:600;color:#dfe7f2;transition:all .25s}
.chip:hover{background:var(--gold);border-color:var(--gold);color:var(--n900)}
.chips--light .chip,.chip--light{background:var(--ice);border-color:var(--line);color:var(--ink)}
.chip--static{pointer-events:none}
.areas__note{text-align:center;margin:30px 0 0;color:var(--s300)}
.areas__note a{color:var(--gold);font-weight:700;border-bottom:1px solid}
.towncard{padding:32px;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh)}
.towncard h3{display:flex;align-items:center;gap:10px;font-family:var(--fd);text-transform:uppercase;font-size:26px;margin-bottom:18px}
.towncard h3 .ico{color:var(--gold3)}
.towncard__s{font-size:14.5px;color:var(--s500);margin:18px 0 0}
.towncard__label{font-family:var(--fm);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--s500);margin:18px 0 10px}
.facts{margin:0;display:grid;gap:10px}
.facts div{display:flex;justify-content:space-between;gap:20px;padding-bottom:10px;border-bottom:1px dashed var(--line)}
.facts dt{color:var(--s500);font-size:14.5px}
.facts dd{margin:0;font-weight:700;color:var(--ink);text-align:right;font-size:14.5px}
.facts a{color:var(--gold3)}
.map{margin-top:20px;border-radius:16px;overflow:hidden;aspect-ratio:16/10;background:var(--ice)}
.map iframe{width:100%;height:100%;border:0;filter:saturate(.8)}

/* FAQ */
.faq{display:grid;gap:12px}
.faq__item{border:1px solid var(--line);border-radius:16px;background:#fff;transition:box-shadow .3s,border-color .3s}
.faq__item[open]{box-shadow:var(--sh);border-color:rgba(245,185,34,.6)}
.faq__item summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;font-weight:700;color:var(--ink);font-size:17px;cursor:pointer}
.faq__item summary::-webkit-details-marker{display:none}
.faq__plus .ico{width:32px;height:32px;padding:7px;border-radius:50%;background:var(--ice);transition:transform .35s var(--ease),background .3s}
.faq__item[open] .faq__plus .ico{transform:rotate(45deg);background:var(--gold)}
.faq__a{padding:0 24px 20px;color:var(--s500)}
.faq__a p{margin:0}

/* Page hero */
.phero{position:relative;overflow:hidden;color:#fff;padding:190px 0 110px;margin-top:-84px;isolation:isolate;min-height:560px;display:flex;align-items:flex-end}
.phero__bg{position:absolute;inset:-4%;background-size:cover;background-position:center;z-index:-3;animation:kb 22s ease-in-out infinite alternate}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.1) translate(-1%,-1%)}}
.phero__shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(8,14,26,.96) 0%,rgba(10,18,32,.88) 50%,rgba(10,18,32,.55) 100%),linear-gradient(0deg,rgba(8,14,26,.85),transparent 55%)}
.phero .grid-lines{z-index:-1}
.phero__inner{position:relative}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:13.5px;color:var(--s300);margin-bottom:26px}
.crumbs a:hover{color:var(--gold)}
.crumbs span{opacity:.4}
.crumbs em{font-style:normal;color:var(--gold)}
.phero__title{font-family:var(--fd);font-weight:800;text-transform:uppercase;font-size:clamp(44px,6vw,82px);line-height:.92;color:#fff;max-width:900px;margin-bottom:22px}
.phero__title span{background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.phero__lead{font-size:19px;color:#c9d4e4;max-width:720px}

/* CTA band */
.cta-band{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--n900),var(--n700));padding:100px 0;text-align:center;isolation:isolate}
.cta-band__glow{position:absolute;inset:0;z-index:-1;background:radial-gradient(40% 60% at 50% 0%,rgba(245,185,34,.3),transparent 70%)}
.cta-band__icon{width:120px;margin:0 auto 18px}
.cta-band .eyebrow{justify-content:center}
.cta-band__title{font-family:var(--fd);text-transform:uppercase;font-size:clamp(34px,4.6vw,58px);color:#fff;max-width:900px;margin:0 auto 14px;line-height:1}
.cta-band__text{color:#c3cedf;max-width:640px;margin:0 auto;font-size:18px}

/* Quote */
.quote{position:relative;overflow:hidden;padding:110px 0;background:var(--n900);isolation:isolate;scroll-margin-top:80px}
.quote__mesh{position:absolute;inset:0;z-index:-1;background:radial-gradient(45% 60% at 0% 0%,rgba(245,185,34,.18),transparent 60%),radial-gradient(50% 60% at 100% 100%,rgba(64,106,170,.35),transparent 60%),linear-gradient(160deg,#0a1322,#13213a)}
.quote__inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start}
.quote__title{font-family:var(--fd);text-transform:uppercase;font-size:clamp(40px,5vw,64px);color:#fff;line-height:.95;margin-bottom:18px}
.quote__lead{color:#c3cedf;font-size:17.5px}
.quote .ticks li{color:#e6edf7}
.quote__direct{display:grid;gap:12px;margin-top:30px}
.quote__direct a{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#fff;font-weight:700;transition:all .3s;word-break:break-all}
.quote__direct a:hover{border-color:var(--gold);background:rgba(245,185,34,.08);transform:translateX(4px)}
.quote__direct .ico{width:44px;height:44px;padding:11px;border-radius:12px;background:var(--grad-gold);color:var(--n900);flex:none}
.quote__direct small{display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--s400);font-weight:600}
.quote__card{background:#fff;border-radius:26px;padding:10px;box-shadow:0 50px 100px -30px rgba(0,0,0,.7)}
.tabs{position:relative;display:grid;grid-template-columns:1fr 1fr;background:var(--ice);border-radius:18px;padding:6px}
.tab{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;border:0;background:none;font-weight:700;color:var(--s500);border-radius:14px;transition:color .3s;font-size:15px}
.tab.is-active{color:var(--n900)}
.tabs__ink{position:absolute;top:6px;bottom:6px;left:6px;width:calc(50% - 6px);background:var(--grad-gold);border-radius:14px;box-shadow:0 10px 20px -10px rgba(224,155,10,.8);transition:transform .45s var(--ease)}
.tabs.is-com .tabs__ink{transform:translateX(100%)}
.tabpanel{display:none;padding:26px 22px 20px}
.tabpanel.is-active{display:block;animation:fadeUp .5s var(--ease)}
@keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.qform__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 16px;margin-bottom:20px}
.field{display:flex;flex-direction:column;gap:7px;margin:0;border:0;padding:0;min-width:0}
.field--full{grid-column:1/-1}
.field label,.label{font-weight:700;font-size:14px;color:var(--ink)}
.field label b,.label b{color:var(--gold3)}
.label em{font-weight:500;color:var(--s400);font-style:normal}
.field input,.field select,.field textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--ice);border:1.5px solid transparent;border-radius:12px;padding:13px 15px;transition:border-color .25s,background .25s,box-shadow .25s;appearance:none;-webkit-appearance:none}
.field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='%235e6f89' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:18px;padding-right:40px}
.field input:focus,.field select:focus,.field textarea:focus{outline:0;border-color:var(--gold);background:#fff;box-shadow:0 0 0 4px rgba(245,185,34,.18)}
.field.is-bad input,.field.is-bad select,.field.is-bad textarea{border-color:#e0493b;background:#fff5f4}
.drop{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:24px;border:2px dashed #c8d3e2;border-radius:16px;background:var(--ice);text-align:center;cursor:pointer;transition:all .3s}
.drop:hover,.drop.is-over{border-color:var(--gold);background:#fffaf0}
.drop .ico{width:34px;height:34px;color:var(--gold3);margin-bottom:6px}
.drop__t{font-size:15px;color:var(--ink)}
.drop__s{font-size:13px;color:var(--s400)}
.drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.thumbs{display:flex;flex-wrap:wrap;gap:8px}
.thumbs span{width:64px;height:64px;border-radius:10px;background-size:cover;background-position:center;box-shadow:0 4px 10px -4px rgba(0,0,0,.3)}
.pills{display:flex;flex-wrap:wrap;gap:10px}
.pill{position:relative}
.pill input{position:absolute;opacity:0;width:1px;height:1px;left:0;top:0}
.pill span{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:999px;background:var(--ice);border:1.5px solid transparent;font-weight:700;font-size:14.5px;color:var(--s500);cursor:pointer;transition:all .25s}
.pill input:checked+span{background:var(--n800);color:#fff;border-color:var(--n800)}
.pill input:checked+span .ico{color:var(--gold)}
.pill input:focus-visible+span{outline:3px solid var(--gold)}
.check{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;color:var(--body);cursor:pointer}
.check input{width:20px;height:20px;accent-color:var(--gold3);flex:none;margin-top:2px}
.check a{color:var(--gold3);text-decoration:underline}
.qform__note{display:flex;align-items:center;justify-content:center;gap:8px;font-size:13.5px;color:var(--s400);margin:14px 0 0}
.qform__note .ico{color:#2eaa62}
.qform__err{margin:12px 0 0;padding:12px 14px;border-radius:12px;background:#fff1ef;color:#b32f22;font-weight:600;font-size:14.5px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.qform .btn.is-loading{pointer-events:none;opacity:.8}
.qform .btn.is-loading span::after{content:"…"}
.alert{padding:16px 20px;border-radius:14px;background:#fff1ef;color:#b32f22;font-weight:700;margin-bottom:20px}

/* Prose */
.copy{max-width:860px}
.copy h2{font-family:var(--fd);text-transform:uppercase;font-size:34px;margin:40px 0 14px}
.copy h3{font-size:21px;margin:28px 0 10px}
.copy ul{list-style:disc;padding-left:22px;margin:0 0 1em}
.copy a{color:var(--gold3);text-decoration:underline}

/* Residential detail */
.res-block{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:70px 0;border-bottom:1px solid var(--line);scroll-margin-top:110px}
.res-block:nth-child(even) .res-block__media{order:-1}
.res-block__media{position:relative}
.res-block__media .hud-frame{aspect-ratio:5/4}
.res-block__ico .ico{width:60px;height:60px;padding:15px;border-radius:18px;background:linear-gradient(145deg,var(--n800),var(--slate));color:var(--gold);margin-bottom:18px}
.res-block h2{font-family:var(--fd);text-transform:uppercase;font-size:clamp(32px,3.6vw,46px);line-height:1;margin-bottom:14px}
.res-block .btn-row{margin-top:10px}
.subnav{position:sticky;top:70px;z-index:40;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.subnav__in{display:flex;gap:6px;overflow-x:auto;padding:12px 0;scrollbar-width:none}
.subnav__in::-webkit-scrollbar{display:none}
.subnav a{flex:none;padding:9px 16px;border-radius:999px;font-weight:700;font-size:14px;color:var(--s500);background:var(--ice);transition:all .25s}
.subnav a:hover,.subnav a.is-on{background:var(--n800);color:#fff}

/* Stats band */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:10px}
.stat{padding:30px 24px;border-radius:20px;background:#fff;border:1px solid var(--line);text-align:center}
.stat strong{display:block;font-family:var(--fd);font-size:54px;line-height:1;background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat span{font-weight:700;color:var(--ink);font-size:15px}

/* Commercial credentials */
.creds{position:relative;overflow:hidden;margin-top:46px;padding:34px;border-radius:26px;background:radial-gradient(70% 90% at 100% 0%,rgba(245,185,34,.18),transparent 60%),linear-gradient(150deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(245,185,34,.3);display:grid;grid-template-columns:.8fr 1.6fr;gap:30px;align-items:center}
.creds__title{font-family:var(--fd);text-transform:uppercase;font-size:clamp(26px,2.6vw,34px);color:#fff;line-height:1;margin-bottom:12px}
.creds__line{font-family:var(--fm);font-size:12.5px;letter-spacing:.06em;color:var(--gold);margin:0;line-height:1.7}
.creds__list{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.creds__list li{display:flex;align-items:center;gap:10px;padding:12px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1)}
.creds__list .ico{width:36px;height:36px;padding:8px;border-radius:10px;background:var(--grad-gold);color:var(--n900);flex:none}
.creds__list strong{display:block;color:#fff;font-size:14px;line-height:1.2}
.creds__list small{display:block;color:var(--s400);font-size:12px;line-height:1.3;margin-top:2px}
.creds--light{background:radial-gradient(70% 90% at 100% 0%,rgba(245,185,34,.25),transparent 60%),linear-gradient(150deg,var(--n850),var(--n700));border-color:transparent;box-shadow:var(--sh-lg)}
/* Hot water + authorisation */
.hotwater,.authorisation{display:grid;grid-template-columns:260px 1fr;gap:50px;align-items:center;padding:44px;border-radius:28px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh)}
.hotwater__ico{position:relative;display:grid;place-items:center;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#ffb347 0%,#f5781f 45%,#b8360b 100%);box-shadow:0 30px 60px -20px rgba(245,120,31,.6)}
.hotwater__ico .ico{width:46%;height:46%;color:#fff;position:relative;z-index:1}
.hotwater__glow{position:absolute;inset:-14px;border-radius:50%;border:2px dashed rgba(245,120,31,.45);animation:spin 18s linear infinite}
.authorisation{border:0;background:transparent;box-shadow:none;padding:0 0 10px}
.authorisation__badge{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 50% 30%,var(--n700),var(--n900));box-shadow:var(--sh-lg),inset 0 0 0 8px rgba(245,185,34,.18),inset 0 0 0 10px rgba(245,185,34,.6);color:#fff;text-align:center;padding:24px}
.authorisation__badge img{width:90px}
.authorisation__badge strong{font-family:var(--fd);font-size:54px;line-height:1;background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.authorisation__badge span{font-family:var(--fm);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.steps--full{grid-template-columns:repeat(4,1fr)}
.steps--full::before{display:none}
.benefits--5{grid-template-columns:repeat(5,1fr)}
.benefits--5 div{grid-template-columns:1fr;row-gap:6px;align-content:start}
.benefits--5 .ico{grid-row:auto}
.svc-grid>:last-child:nth-child(3n+1){grid-column:2}
.field label em.opt{font-weight:500;font-style:normal;color:var(--s400)}
@media (max-width:1100px){.creds{grid-template-columns:1fr}.creds__list{grid-template-columns:repeat(2,1fr)}.hotwater,.authorisation{grid-template-columns:1fr;gap:28px}.hotwater__ico,.authorisation__badge{max-width:220px;margin:0 auto;width:100%}.steps--full,.benefits--5{grid-template-columns:1fr 1fr}.svc-grid>:last-child:nth-child(3n+1){grid-column:auto}.svc-grid>:last-child:nth-child(odd){grid-column:1/-1}}
@media (max-width:720px){.creds{padding:24px}.creds__list,.steps--full,.benefits--5{grid-template-columns:1fr}.hotwater{padding:26px}.svc-grid>:last-child:nth-child(odd){grid-column:auto}}

/* Compare */
.compare{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.compare__col{padding:40px 36px;border-radius:26px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh)}
.compare__col h3{font-family:var(--fd);text-transform:uppercase;font-size:32px;margin-bottom:10px}
.compare__col--dark{background:radial-gradient(80% 60% at 100% 0%,rgba(245,185,34,.2),transparent 60%),linear-gradient(160deg,var(--n850),var(--n700));color:var(--s300);border-color:transparent}
.compare__col--dark h3,.compare__col--dark .ticks li{color:#fff}
.compare__ico .ico{width:56px;height:56px;padding:14px;border-radius:16px;background:var(--grad-gold);color:var(--n900);margin-bottom:20px}
.compare__s{font-size:14.5px;color:var(--s500);margin:0}
.who{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.who span{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:#fff;font-weight:700}
.who .ico{color:var(--gold)}
.vid{margin-bottom:24px;border-radius:22px;overflow:hidden;box-shadow:var(--sh-lg)}
.vid video{width:100%}
/* Pillars */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pillar{position:relative;padding:40px 32px;border-radius:24px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);overflow:hidden;transition:transform .4s var(--ease),border-color .3s}
.pillar:hover{transform:translateY(-6px);border-color:rgba(245,185,34,.5)}
.pillar__n{position:absolute;right:18px;top:6px;font-family:var(--fd);font-size:110px;font-weight:800;color:rgba(255,255,255,.05);line-height:1}
.pillar h3{font-family:var(--fd);text-transform:uppercase;font-size:44px;color:#fff;margin-bottom:12px}
.pillar h3::after{content:"";display:block;width:44px;height:3px;background:var(--grad-gold);margin-top:10px;border-radius:3px}
.pillar p{margin:0}
/* Award */
.award{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;aspect-ratio:1;max-width:440px;margin:0 auto;border-radius:50%;background:radial-gradient(circle at 50% 30%,var(--n700),var(--n900));box-shadow:var(--sh-lg),inset 0 0 0 10px rgba(245,185,34,.2),inset 0 0 0 12px rgba(245,185,34,.6);color:#fff;padding:40px}
.award img{width:140px;margin-bottom:12px}
.award__y{font-family:var(--fd);font-size:72px;font-weight:800;line-height:1;background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.award strong{font-family:var(--fd);text-transform:uppercase;font-size:30px;letter-spacing:.04em}
.award em{font-style:normal;color:var(--gold);font-family:var(--fm);font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-top:6px}
/* Contact cards */
.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ccard{display:flex;flex-direction:column;align-items:center;gap:6px;padding:36px 24px;border-radius:22px;border:1px solid var(--line);background:#fff;text-align:center;transition:all .4s var(--ease);word-break:break-all}
.ccard:hover{transform:translateY(-6px);box-shadow:var(--sh);border-color:var(--gold)}
.ccard .ico{width:60px;height:60px;padding:15px;border-radius:50%;background:var(--grad-gold);color:var(--n900);margin-bottom:10px}
.ccard strong{font-family:var(--fd);text-transform:uppercase;font-size:26px;color:var(--ink)}
.ccard span{color:var(--s500)}
/* Thank you */
.thanks{position:relative;overflow:hidden;min-height:80vh;display:flex;align-items:center;background:var(--n900);color:#fff;padding:180px 0 110px;margin-top:-84px;isolation:isolate;text-align:center}
.thanks__in{display:flex;flex-direction:column;align-items:center}
.thanks__icon{width:160px;margin-bottom:26px}
.thanks .btn-row{justify-content:center}
.gal-tabs{margin-bottom:36px}
.chip.is-on{background:var(--n800);border-color:var(--n800);color:#fff}
@media (max-width:1100px){.compare,.pillars{grid-template-columns:1fr}}
.quote__direct a,.ccard{word-break:normal;overflow-wrap:anywhere}
.ftr__cl{word-break:normal;overflow-wrap:break-word}
.badge__2{display:contents}
@media (max-width:720px){.contact-cards{grid-template-columns:1fr}.quote__direct{display:none}.badge__2{display:none}.quote__inner{gap:34px}.compare__col{padding:30px 22px}.thanks{padding:130px 0 80px;margin-top:-70px}}

/* Footer */
.ftr{position:relative;overflow:hidden;background:var(--n950);color:var(--s400);padding:90px 0 0;font-size:15px;isolation:isolate}
.ftr__glow{position:absolute;inset:0;z-index:-1;background:radial-gradient(40% 50% at 10% 0%,rgba(245,185,34,.12),transparent 60%),radial-gradient(40% 50% at 100% 100%,rgba(64,106,170,.2),transparent 60%)}
.ftr__grid{display:grid;grid-template-columns:1.35fr 1fr 1.15fr .85fr 1.55fr;gap:36px}
.ftr__brand img{width:220px;margin-bottom:12px}
.ftr__ccc{font-family:var(--fm);letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-size:12.5px}
.ftr__ccc i{font-style:normal;opacity:.5}
.ftr__about{font-size:14.5px}
.ftr__badges{display:grid;gap:8px;margin-top:16px}
.ftr__badges li{display:flex;align-items:center;gap:10px;font-size:13.5px;color:#cfd8e6}
.ftr__badges .ico{color:var(--gold)}
.ftr h3{font-family:var(--fd);text-transform:uppercase;letter-spacing:.04em;font-size:20px;color:#fff;margin-bottom:16px}
.ftr__h2{margin-top:26px}
.ftr__col ul{display:grid;gap:9px}
.ftr__col a{transition:color .2s}
.ftr__col a:hover{color:var(--gold)}
.ftr__cl{display:flex;align-items:center;gap:12px;margin-bottom:14px;color:#fff;font-weight:700;word-break:break-all}
.ftr__cl .ico{width:40px;height:40px;padding:10px;border-radius:12px;background:rgba(245,185,34,.12);color:var(--gold);flex:none;transition:background .3s}
.ftr__cl:hover .ico{background:var(--gold);color:var(--n900)}
.ftr__cl span{font-size:13.5px;line-height:1.35}
.ftr__cl small{display:block;color:var(--s400);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.1em}
.socials{display:flex;gap:10px;margin-top:10px}
.socials a{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;border:1px solid rgba(255,255,255,.14);color:#fff;transition:all .3s}
.socials a:hover{background:var(--gold);color:var(--n900);border-color:var(--gold);transform:translateY(-3px)}
.ftr__base{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:26px 24px;margin-top:60px;border-top:1px solid rgba(255,255,255,.08);font-size:13.5px}
.ftr__base p{margin:0}
.ftr__base a{color:#cfd8e6}
.ftr__base a:hover{color:var(--gold)}

/* Floating & dock */
.wa-float{position:fixed;right:22px;bottom:22px;z-index:90;width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;box-shadow:0 14px 30px -8px rgba(37,211,102,.7);transition:transform .3s}
.wa-float .ico{width:30px;height:30px}
.wa-float::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #25d366;animation:ring 2.4s infinite}
@keyframes ring{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.6);opacity:0}}
.wa-float:hover{transform:scale(1.08)}
.dock{display:none}

/* Reveal */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--d,0ms)}
.reveal.is-in{opacity:1;transform:none}
.load{opacity:0;transform:translateY(24px);animation:loadIn 1s var(--ease) forwards;animation-delay:var(--d,0ms)}
@keyframes loadIn{to{opacity:1;transform:none}}
.no-js .reveal{opacity:1;transform:none}

/* Responsive */
.hero__stats strong span{display:inline;font-size:inherit;color:inherit;margin:0;line-height:inherit}
.is-mega .sub{min-width:640px}
@media (min-width:1101px){.sub{min-width:300px}.sub a{white-space:nowrap}}
@media (max-width:1900px){
	.hdr__call{display:none}
	.hdr__in{gap:18px}
}

@media (max-width:1100px){
	.topbar__links a:last-child{display:none}
	.burger{display:flex}
	.hdr__cta .btn{display:none}
	.nav{position:fixed;top:0;right:0;bottom:0;width:100%;left:0;background:var(--n900);padding:140px 22px 110px;opacity:0;visibility:hidden;transform:translateY(-10px);pointer-events:none;transition:opacity .3s ease,transform .3s ease,visibility 0s linear .3s;overflow-y:auto;margin:0;z-index:-1;box-shadow:-30px 0 60px rgba(0,0,0,.5)}
	body.nav-open .nav{opacity:1;visibility:visible;transform:none;pointer-events:auto;transition:opacity .3s ease,transform .3s ease,visibility 0s}
	.nav__list{max-width:520px;margin:0 auto}
	.nav__mob{max-width:520px;margin-left:auto;margin-right:auto}
	.nav-open .dock,.nav-open .wa-float{display:none!important}
	.nav-open .hdr{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--n900)}
	.nav-open{overflow:hidden}
	.nav__list{flex-direction:column;align-items:stretch;gap:0}
	.nav__item{border-bottom:1px solid rgba(255,255,255,.07);display:flex;flex-wrap:wrap;align-items:center}
	.nav__link{flex:1;padding:16px 4px;font-size:18px;font-family:var(--fd);text-transform:uppercase;letter-spacing:.03em}
	.nav__car{display:none}
	.nav__tog{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:10px;background:rgba(255,255,255,.06);color:#fff}
	.nav__tog svg{width:18px;height:18px;transition:transform .3s}
	.nav__item.is-open .nav__tog svg{transform:rotate(180deg)}
	.sub,.is-mega .sub{position:static;transform:none;opacity:1;visibility:visible;min-width:0;width:100%;display:none;background:none;border:0;box-shadow:none;padding:0 0 12px;grid-template-columns:1fr}
	.nav__item:hover>.sub,.nav__item:focus-within>.sub{transform:none}
	.nav__item.is-open>.sub{display:block}
	.nav__mob{display:block;margin-top:26px}
	.nav__mobrow{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}
	.nav__mobrow a{display:flex;align-items:center;justify-content:center;gap:6px;padding:12px;border-radius:12px;background:rgba(255,255,255,.07);color:#fff;font-weight:700;font-size:14px}
	.nav__mobrow .ico{color:var(--gold)}
	.hero__in,.split,.drone-sec__top,.quote__inner,.res-block{grid-template-columns:1fr}
	.res-block:nth-child(even) .res-block__media{order:0}
	.hero__vis{height:auto;perspective:none;max-width:540px;margin:10px auto 0;width:100%}
	.hero__main{position:relative;right:auto;top:auto;width:100%;height:auto;aspect-ratio:4/4.2;transform:none!important}
	.hero__main img{object-position:50% 0}
	.hero__sub,.hud--2,.hud--3{display:none}
	.hud--1{top:auto;bottom:18px;left:18px}
	.hero__drone{top:-30px;right:-10px;translate:none!important}
	.paths,.svc-grid,.why{grid-template-columns:1fr 1fr}
	.sec-grid,.rv-grid,.gal-hub{grid-template-columns:repeat(2,1fr)}
	.steps{grid-template-columns:1fr 1fr}
	.steps::before{display:none}
	.benefits,.cards4,.stats{grid-template-columns:1fr 1fr}
	.areas{grid-template-columns:1fr}
	.ftr__grid{grid-template-columns:1fr 1fr 1fr}
	.ftr__brand{grid-column:1/-1}
	.dronecall__in{grid-template-columns:1fr;text-align:left}
	.dronecall__icon{height:200px}
	.paths>:last-child:nth-child(odd){grid-column:1/-1;min-height:380px}
	.steps>:last-child:nth-child(odd){grid-column:1/-1}
	.float-card{left:12px}
	.float-card--b{right:12px}
}
@media (max-width:720px){
	body{font-size:16px;padding-bottom:70px}
	.wrap{padding:0 18px}
	.topbar__tag .topbar__sep,.topbar__tag .topbar__ccc{display:none}
	.topbar__links{display:none}
	.topbar__in{justify-content:center;min-height:36px}
	.hdr__in{min-height:70px}
	.brand img,.hdr.is-scrolled .brand img{width:190px}
	.hero{padding-top:130px;padding-bottom:80px;margin-top:-70px}
	.phero{padding:150px 0 70px;margin-top:-70px;min-height:0}
	.hero__lead{font-size:17px}
	.hero__stats{grid-template-columns:1fr 1fr;gap:10px;max-width:none;border-top:0;padding-top:0;margin-top:30px}
	.hero__stats li,.hero__stats li:first-child,.hero__stats li:last-child{padding:16px 10px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.05);text-align:center}
	.hero__stats strong{font-size:32px}
	.hero__in{gap:36px}
	.hero__vis{height:auto;perspective:none;max-width:420px;margin:0 auto}
	.hero__main{position:relative;right:auto;top:auto;width:100%;height:auto;aspect-ratio:4/4.4;transform:none!important}
	.hero__main img{object-position:50% 0}
	.hero__sub,.hud--2,.hud--3,.hero__scroll{display:none}
	.hud--1{top:auto;bottom:16px;left:16px}
	.hero__drone{width:96px;top:-26px;right:-6px;translate:none!important}
	.btn-row .btn{flex:1 1 100%}
	.sec-pad,.drone-sec,.quote,.areas-sec{padding:76px 0}
	.shead{margin-bottom:36px}
	.paths,.svc-grid,.why,.sec-grid,.rv-grid,.gal,.gal-hub,.steps,.benefits,.cards4,.quotes,.stats{grid-template-columns:1fr}
	.sec{aspect-ratio:16/10}
	.sec--cta{aspect-ratio:auto;min-height:280px}
	.paths>:last-child:nth-child(odd){min-height:420px}
	.path{min-height:420px}
	.mosaic{height:340px}
	.ticks--2{grid-template-columns:1fr}
	.qform__grid{grid-template-columns:1fr}
	.tabpanel{padding:22px 12px 14px}
	.tab{font-size:13.5px;gap:6px}
	.quote__card{border-radius:22px;padding:8px}
	.ftr__grid{grid-template-columns:1fr 1fr;gap:30px}
	.ftr__contact{grid-column:1/-1}
	.ftr__base{flex-direction:column;padding-bottom:20px}
	.float-card,.float-card--b{position:relative;left:auto;right:auto;bottom:auto;margin:-30px auto 0;width:fit-content;max-width:calc(100% - 24px);animation:none;text-align:left}
	.float-card--b{right:0}
	.wa-float{display:none}
	.dock{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:95;background:rgba(9,16,29,.97);backdrop-filter:blur(12px);border-top:1px solid rgba(255,255,255,.1);padding:6px 6px calc(6px + env(safe-area-inset-bottom))}
	.dock a{display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 2px;color:#dfe7f2;font-size:11.5px;font-weight:700;border-radius:12px}
	.dock .ico{width:22px;height:22px;color:var(--gold)}
	.dock__q{background:var(--grad-gold);color:var(--n900)!important}
	.dock__q .ico{color:var(--n900)}
	.cta-band{padding:76px 0}
	.res-block{padding:50px 0;gap:30px}
}
@media (prefers-reduced-motion:reduce){
	*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
	.reveal,.load{opacity:1;transform:none}
}
