/* KLIA NY Visual System V2.2.2 — global service/page polish */
:root{--radius:20px}
html{scroll-padding-top:94px}
section[id],main[id],div[id]{scroll-margin-top:94px}
body{color:#13243a;background:#fff}
header{background:rgba(255,255,255,.96);box-shadow:0 1px 0 rgba(15,23,42,.02)}
.header{min-height:72px;gap:18px}
.brand{min-width:172px;gap:10px}.brand img{width:48px;height:48px;border-radius:13px}.brand b{font-size:15px}.brand small{font-size:12px}
.nav{gap:13px}.nav a{font-size:13px;font-weight:700;white-space:nowrap}.header-actions{gap:12px}.phone{font-size:14px}
.btn{border-radius:13px;padding:12px 20px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}.btn:hover{transform:translateY(-1px)}.primary{box-shadow:0 10px 24px rgba(20,103,217,.18)}
.hero{padding:30px 0 24px;background:radial-gradient(circle at 85% 10%,rgba(20,103,217,.10),transparent 31rem),linear-gradient(180deg,#f8fbff 0%,#f2f6fb 100%)}
.hero-grid{gap:24px}.hero-grid>div:first-child{padding:34px 36px;border-radius:20px;border-color:rgba(148,163,184,.28);box-shadow:0 16px 48px rgba(19,36,58,.045)}
h1{font-size:clamp(42px,4.3vw,58px);line-height:1.01;letter-spacing:-.045em;margin-bottom:16px}h2{font-size:clamp(30px,3vw,40px);line-height:1.08;letter-spacing:-.032em}h3{font-size:20px;line-height:1.25}.lead{font-size:18px;line-height:1.55}
.hero-image{min-height:520px;border-radius:20px;box-shadow:0 18px 48px rgba(15,23,42,.11)}.hero-badge{left:18px;top:18px;padding:12px 15px;border-radius:13px;font-size:13px}
.price-row{margin:22px 0;border-radius:15px}.price-row>div{padding:15px 17px}.price-row b{font-size:25px}.price-row span{font-size:12px}.trust-row{margin-top:17px;font-size:12.5px}
.section{padding:64px 0}.cards{gap:16px}.card{padding:23px;border-radius:16px;box-shadow:0 8px 24px rgba(19,36,58,.035);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.card:hover{transform:translateY(-2px);border-color:#cbd8ea;box-shadow:0 14px 34px rgba(19,36,58,.07)}
.gallery{gap:14px}.gallery figure{border-radius:16px}.gallery img{height:250px}.gallery figcaption{padding:11px 13px}
.form-layout{gap:36px}.lead-form{border-radius:20px;padding:25px}.lead-form input,.lead-form select,.lead-form textarea{border-radius:11px}.photo-upload-control input[type=file],.lead-form input[type=file][hidden]{display:none!important}
.faq{gap:12px}.faq details{border-radius:14px;padding:15px 16px}.faq details[open]{box-shadow:0 8px 24px rgba(19,36,58,.04)}
.footer{gap:28px;padding:38px 0}.footer a{transition:color .18s ease}.footer a:hover{color:var(--blue)}
.estimator{gap:22px}.estimate-card{border-radius:18px;top:96px}.estimate-number{font-size:42px}
@media(max-width:1100px){.nav{gap:9px}.nav a{font-size:12px}.header{gap:12px}}
@media(max-width:980px){
 html{scroll-padding-top:82px}section[id],main[id],div[id]{scroll-margin-top:82px}
 .hero{padding-top:20px}.hero-grid{gap:18px}.hero-grid>div:first-child{padding:30px}.hero-image{min-height:440px}.section{padding:58px 0}
 .form-layout{gap:26px}
}
@media(max-width:640px){
 body{padding-bottom:72px}.container{width:min(100% - 24px,1180px)}.header{min-height:68px}.brand img{width:44px;height:44px}.brand b{font-size:14px}
 .hero{padding:12px 0 18px}.hero-grid{gap:12px}.hero-grid>div:first-child{padding:23px 21px;border-radius:17px}
 h1{font-size:clamp(35px,10.8vw,43px);line-height:1.02;margin-bottom:14px}h2{font-size:clamp(28px,8vw,34px)}.lead{font-size:17px}
 .hero-image{min-height:360px;border-radius:17px}.hero-badge{left:12px;top:12px;padding:10px 12px}
 .price-row{margin:18px 0}.price-row>div{padding:13px 15px}.price-row b{font-size:23px}.hero-buttons{display:grid;grid-template-columns:1fr}.hero-buttons .btn{width:100%}.trust-row{gap:8px 13px}
 .section{padding:48px 0}.cards,.gallery,.grid-2,.faq,.footer{grid-template-columns:1fr}.card{padding:20px}.gallery img{height:235px}
 .form-section{padding-top:48px}.form-layout{gap:22px}.lead-form{padding:20px;border-radius:17px}.check{font-size:13px}.check .field-error{margin-left:0}
 .footer{padding:32px 0 36px}.mobile-cta{padding:8px 10px}.mobile-cta a{border-radius:12px}
}
/* Unified footer carried over from approved Homepage V2.2.2 */
.site-footer{background:#0f1b2b;color:#d8e2ef;margin-top:0}.footer-v2{display:grid;grid-template-columns:1.2fr .9fr .9fr .9fr;padding:48px 0 44px;gap:34px}.footer-v2 b{color:#fff}.footer-v2 p{color:#aebdce;max-width:330px;font-size:14px}.footer-v2 a,.footer-v2 span,.footer-v2 small{color:#becada;font-size:13px}.footer-v2 a:hover{color:#fff}.footer-title{display:block;margin-bottom:12px;font-size:13px;text-transform:uppercase;letter-spacing:.07em}.footer-trust{display:block;margin-top:10px}.footer-legal{display:flex;gap:12px;flex-wrap:wrap;margin-top:13px}.footer-legal a{font-size:12px}
@media(max-width:980px){.footer-v2{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.footer-v2{grid-template-columns:1fr;gap:24px;padding:38px 0 92px}.footer-v2>div{padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.08)}.footer-v2>div:last-child{border-bottom:0}}
