:root{--primary-50:#f0f9ff;--primary-100:#e0f2fe;--primary-200:#bae6fd;--primary-300:#7dd3fc;--primary-400:#38bdf8;--primary-500:#0ea5e9;--primary-600:#0284c7;--primary-700:#0369a1;--primary-800:#075985;--primary-900:#0c4a6e;--primary-950:#082f49;--accent-50:#fefce8;--accent-100:#fef9c3;--accent-200:#fef08a;--accent-300:#fde047;--accent-400:#facc15;--accent-500:#eab308;--accent-600:#ca8a04;--accent-700:#a16207;--accent-800:#854d0e;--accent-900:#713f12;--font-family:'Plus Jakarta Sans',sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{font-family:var(--font-family);color:var(--primary-900);background:#fff;line-height:1.6}h1,h2,h3,h4,h5,h6{font-weight:700;letter-spacing:-0.02em}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.container{max-width:1280px;margin:0 auto;padding:0 1rem}@media(min-width:640px){.container{padding:0 1.5rem}}@media(min-width:1024px){.container{padding:0 2rem}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;border-radius:0.5rem;font-weight:600;padding:0.75rem 1.5rem;transition:all .2s;cursor:pointer;border:none;font-size:inherit}
.btn-primary{background:var(--accent-500);color:#fff}.btn-primary:hover{background:var(--accent-600)}
.btn-secondary{background:var(--primary-800);color:#fff}.btn-secondary:hover{background:var(--primary-700)}
.btn-outline{border:2px solid var(--primary-200);color:var(--primary-800);background:transparent}.btn-outline:hover{border-color:var(--primary-300);background:var(--primary-50)}
.btn-wa{background:#25D366;color:#fff}.btn-wa:hover{background:#1da851}
.btn-emergency{background:#dc2626;color:#fff}.btn-emergency:hover{background:#b91c1c}
.card{border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:all .2s}.card:hover{box-shadow:0 10px 30px rgba(0,0,0,.1);border-color:var(--accent-200);transform:translateY(-2px)}
.section{padding:4rem 0}@media(min-width:1024px){.section{padding:6rem 0}}
.text-center{text-align:center}
.grid{display:grid;gap:1.5rem}
.grid-2{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.grid-3{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.grid-4{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
@media(min-width:640px){.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}.grid-4{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}}
.eyebrow{font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--accent-600);margin-bottom:.75rem;display:inline-block}
.h2{font-size:1.875rem;font-weight:700;color:var(--primary-900);line-height:1.2}@media(min-width:1024px){.h2{font-size:2.25rem}}
.h3{font-size:1.25rem;font-weight:700;color:var(--primary-900)}
.muted{color:var(--primary-500)}
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);box-shadow:0 1px 3px rgba(0,0,0,.05)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:5rem}
.logo{display:flex;align-items:center;gap:.5rem}
.logo-icon{width:2.5rem;height:2.5rem;border-radius:.5rem;background:var(--primary-900);display:flex;align-items:center;justify-content:center}
.logo-icon svg{width:1.25rem;height:1.25rem;color:var(--accent-400)}
.logo-text{font-size:1.125rem;font-weight:700;color:var(--primary-900)}
.logo-sub{font-size:.625rem;color:var(--primary-400);text-transform:uppercase;letter-spacing:.05em}
.nav{display:none;align-items:center;gap:.25rem}@media(min-width:1024px){.nav{display:flex}}
.nav a{padding:.5rem .75rem;font-size:.875rem;font-weight:500;border-radius:.5rem;color:var(--primary-700);transition:color .2s}.nav a:hover,.nav a.active{color:var(--accent-600);background:var(--accent-50)}
.header-cta{display:none;gap:.75rem}@media(min-width:1024px){.header-cta{display:flex}}
.header-mobile{display:flex;gap:.5rem;align-items:center}
@media(min-width:1024px){.header-mobile{display:none}}
.header-mobile .icon-btn{width:2.5rem;height:2.5rem;border-radius:.5rem;display:flex;align-items:center;justify-content:center;color:#fff}
.header-mobile .icon-btn.phone{background:var(--primary-900)}
.header-mobile .icon-btn.wa{background:#25D366}
.footer{background:var(--primary-950);color:var(--primary-200);padding:4rem 0}
.footer-grid{display:grid;gap:2.5rem;grid-template-columns:1fr}@media(min-width:768px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.footer-grid{grid-template-columns:repeat(4,1fr)}}
.footer a{color:var(--primary-300);font-size:.875rem}.footer a:hover{color:var(--accent-400)}
.footer h3{color:#fff;font-weight:600;margin-bottom:1rem}
.footer-bottom{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--primary-800);display:flex;flex-direction:column;align-items:center;gap:1rem}@media(min-width:640px){.footer-bottom{flex-direction:row;justify-content:space-between}}
.wa-float{position:fixed;bottom:1.25rem;right:1.25rem;z-index:40}
.wa-float a{width:3.5rem;height:3.5rem;border-radius:50%;background:#25D366;box-shadow:0 4px 12px rgba(37,211,102,.3);display:flex;align-items:center;justify-content:center;color:#fff;transition:transform .2s}.wa-float a:hover{transform:scale(1.05)}
.wa-float svg{width:1.75rem;height:1.75rem}
.mobile-cta{position:fixed;bottom:0;left:0;right:0;z-index:40;background:#fff;border-top:1px solid var(--primary-100);box-shadow:0 -2px 8px rgba(0,0,0,.05);display:grid;grid-template-columns:repeat(3,1fr)}@media(min-width:1024px){.mobile-cta{display:none}}
.mobile-cta a{display:flex;flex-direction:column;align-items:center;padding:.75rem;font-size:.75rem;font-weight:600}
.mobile-cta a.phone{color:var(--primary-800)}.mobile-cta a.wa{color:#1da851;border-left:1px solid var(--primary-100);border-right:1px solid var(--primary-100)}.mobile-cta a.quote{color:var(--accent-600)}
.mobile-cta svg{width:1.25rem;height:1.25rem;margin-bottom:.25rem}
.hero{position:relative;background:var(--primary-950);overflow:hidden}
.hero-bg{position:absolute;inset:0;opacity:.3;object-fit:cover;width:100%;height:100%}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom right,var(--primary-950),rgba(15,23,42,.9),rgba(15,23,42,.7))}
.hero-content{position:relative;padding:4rem 0;max-width:48rem}@media(min-width:1024px){.hero-content{padding:7rem 0}}
.hero h1{font-size:2.25rem;color:#fff;line-height:1.2;margin-bottom:1rem}@media(min-width:640px){.hero h1{font-size:3rem}}@media(min-width:1024px){.hero h1{font-size:3.75rem}}
.hero .subhead{font-size:1.25rem;color:var(--accent-300);font-weight:500;margin-bottom:1rem}@media(min-width:1024px){.hero .subhead{font-size:1.5rem}}
.hero p.desc{font-size:1.125rem;color:var(--primary-200);line-height:1.6;margin-bottom:2rem;max-width:42rem}
.hero .cta-row{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}
.hero .trust-line{font-size:.875rem;color:var(--primary-300);font-weight:500;margin-bottom:2rem}
.hero-contacts{display:grid;grid-template-columns:1fr;gap:1rem;max-width:48rem}@media(min-width:640px){.hero-contacts{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.hero-contacts{grid-template-columns:repeat(4,1fr)}}
.hero-contact{display:flex;align-items:center;gap:.625rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:.75rem;padding:.75rem 1rem;transition:background .2s}.hero-contact:hover{background:rgba(255,255,255,.1)}
.hero-contact svg{width:1rem;height:1rem;color:var(--accent-400);flex-shrink:0}
.hero-contact .label{font-size:.75rem;color:var(--primary-400)}
.hero-contact .value{font-size:.875rem;font-weight:600;color:#fff}
.trust-bar{background:var(--primary-900);border-top:1px solid var(--primary-800);padding:1.5rem 0}
.trust-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media(min-width:768px){.trust-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:1024px){.trust-grid{grid-template-columns:repeat(6,1fr)}}
.trust-item{display:flex;align-items:center;gap:.625rem}
.trust-item .ti-icon{width:2.25rem;height:2.25rem;border-radius:.5rem;background:var(--primary-800);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.trust-item .ti-icon svg{width:1.125rem;height:1.125rem;color:var(--accent-400)}
.trust-item span{font-size:.75rem;font-weight:500;color:var(--primary-200)}@media(min-width:1024px){.trust-item span{font-size:.875rem}}
.emergency{background:linear-gradient(to bottom right,#dc2626,#b91c1c);color:#fff;padding:3.5rem 0}@media(min-width:1024px){.emergency{padding:5rem 0}}
.emergency-grid{display:grid;gap:2.5rem;align-items:center;grid-template-columns:1fr}@media(min-width:1024px){.emergency-grid{grid-template-columns:2fr 1fr}}
.emergency-badge{display:inline-flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.15);border-radius:9999px;padding:.375rem 1rem;margin-bottom:1.25rem}
.emergency-badge svg{width:1rem;height:1rem;color:#fcd34d}
.emergency-badge span{font-size:.875rem;font-weight:600}
.emergency h2{font-size:1.875rem;color:#fff;margin-bottom:1rem}@media(min-width:1024px){.emergency h2{font-size:2.25rem}}
.emergency p{color:rgba(255,255,255,.9);font-size:1.125rem;line-height:1.6;margin-bottom:1.5rem}
.emergency .cta-row{display:flex;flex-wrap:wrap;gap:1rem}
.emergency-problems{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}
.emergency-problem{background:rgba(255,255,255,.1);border-radius:.75rem;padding:1rem;display:flex;align-items:center;gap:.625rem}
.emergency-problem .dot{width:.5rem;height:.5rem;border-radius:50%;background:#fcd34d;flex-shrink:0}
.emergency-problem span{font-size:.875rem;font-weight:500;color:#fff}
.service-card{display:flex;flex-direction:column;overflow:hidden;border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:all .2s}.service-card:hover{box-shadow:0 10px 30px rgba(0,0,0,.1);border-color:var(--accent-200);transform:translateY(-2px)}
.service-card .sc-img{height:11rem;overflow:hidden;position:relative}
.service-card .sc-img img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.service-card:hover .sc-img img{transform:scale(1.05)}
.service-card .sc-img .sc-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(13,22,35,.7),transparent)}
.service-card .sc-icon{position:absolute;bottom:.75rem;left:.75rem;width:2.25rem;height:2.25rem;border-radius:.5rem;background:var(--accent-500);display:flex;align-items:center;justify-content:center}
.service-card .sc-icon svg{width:1.25rem;height:1.25rem;color:#fff}
.service-card .sc-body{padding:1.25rem;flex:1;display:flex;flex-direction:column}
.service-card .sc-body h3{font-size:1.125rem;color:var(--primary-900);margin-bottom:.5rem}
.service-card .sc-body p{font-size:.875rem;color:var(--primary-500);line-height:1.5;flex:1}
.service-card .sc-link{margin-top:1rem;font-size:.875rem;font-weight:600;color:var(--accent-600)}
.benefit-card{padding:1.5rem;border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:all .2s}.benefit-card:hover{box-shadow:0 10px 30px rgba(0,0,0,.1);border-color:var(--accent-200);transform:translateY(-2px)}
.benefit-icon{width:3rem;height:3rem;border-radius:.75rem;background:linear-gradient(to bottom right,var(--accent-500),var(--accent-600));display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
.benefit-icon svg{width:1.5rem;height:1.5rem;color:#fff}
.benefit-card h3{font-size:1rem;color:var(--primary-900);margin-bottom:.5rem}
.benefit-card p{font-size:.875rem;color:var(--primary-500);line-height:1.5}
.step-card{padding:1.5rem;border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.step-num{font-size:1.875rem;font-weight:700;color:var(--primary-100)}
.step-icon{width:3rem;height:3rem;border-radius:.75rem;background:var(--accent-50);display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
.step-icon svg{width:1.5rem;height:1.5rem;color:var(--accent-600)}
.step-card h3{font-size:1.125rem;color:var(--primary-900);margin-bottom:.5rem}
.step-card p{font-size:.875rem;color:var(--primary-500);line-height:1.5}
.stat{text-align:center}
.stat-icon{width:3.5rem;height:3.5rem;border-radius:.75rem;background:var(--primary-800);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.stat-icon svg{width:1.75rem;height:1.75rem;color:var(--accent-400)}
.stat-value{font-size:1.875rem;font-weight:700;color:#fff;margin-bottom:.25rem}@media(min-width:1024px){.stat-value{font-size:2.25rem}}
.stat-label{font-size:.875rem;color:var(--primary-300)}
.district-card{display:flex;align-items:center;gap:.75rem;padding:1.25rem;border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:all .2s}.district-card:hover{box-shadow:0 10px 30px rgba(0,0,0,.1);border-color:var(--accent-200);transform:translateY(-2px)}
.district-card svg{width:1rem;height:1rem;color:var(--accent-600);flex-shrink:0}
.district-card .d-name{font-weight:600;color:var(--primary-900);font-size:.875rem}
.district-card .d-sub{font-size:.75rem;color:var(--primary-400)}
.testimonial{padding:1.5rem;border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:all .2s;display:flex;flex-direction:column}.testimonial:hover{box-shadow:0 10px 30px rgba(0,0,0,.1);border-color:var(--accent-200);transform:translateY(-2px)}
.testimonial .stars{display:flex;gap:.25rem;margin-bottom:1rem}
.testimonial .stars svg{width:1rem;height:1rem;color:#fbbf24;fill:#fbbf24}
.testimonial .quote-icon{width:2rem;height:2rem;color:var(--accent-200);margin-bottom:.75rem}
.testimonial p{font-size:.875rem;color:var(--primary-600);line-height:1.5;flex:1}
.testimonial .t-author{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--primary-100)}
.testimonial .t-author .t-name{font-weight:600;color:var(--primary-900)}
.testimonial .t-author .t-role{font-size:.875rem;color:var(--primary-400)}
.faq-item{border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);margin-bottom:.75rem;overflow:hidden}
.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem;text-align:left;font-weight:600;color:var(--primary-900);background:none;border:none;cursor:pointer;font-size:1rem;font-family:inherit}
.faq-q .chevron{width:1.25rem;height:1.25rem;color:var(--accent-600);transition:transform .2s;flex-shrink:0}
.faq-q.open .chevron{transform:rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .2s}
.faq-a.open{max-height:24rem}
.faq-a p{padding:0 1.25rem 1.25rem;font-size:.875rem;color:var(--primary-500);line-height:1.5}
.final-cta{background:var(--primary-900);position:relative;overflow:hidden;padding:4rem 0}@media(min-width:1024px){.final-cta{padding:6rem 0}}
.final-cta .glow1{position:absolute;top:0;left:25%;width:24rem;height:24rem;background:var(--accent-500);border-radius:50%;filter:blur(5rem);opacity:.1}
.final-cta .glow2{position:absolute;bottom:0;right:25%;width:24rem;height:24rem;background:var(--accent-400);border-radius:50%;filter:blur(5rem);opacity:.1}
.final-cta .fc-content{position:relative;text-align:center;max-width:48rem;margin:0 auto}
.final-cta h2{font-size:1.875rem;color:#fff;margin-bottom:1rem}@media(min-width:1024px){.final-cta h2{font-size:3rem}}
.final-cta p{font-size:1.125rem;color:var(--primary-200);margin-bottom:2rem;line-height:1.6}
.final-cta .cta-row{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:2rem}
.final-cta .fc-contacts{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;color:var(--primary-200)}
.final-cta .fc-contacts a{display:flex;align-items:center;gap:.5rem;color:var(--primary-200)}.final-cta .fc-contacts a:hover{color:var(--accent-400)}
.final-cta .fc-contacts svg{width:1rem;height:1rem}
.contact-info-card{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:all .2s}.contact-info-card:hover{border-color:var(--accent-200)}
.contact-info-card .ci-icon{width:3rem;height:3rem;border-radius:.75rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contact-info-card .ci-icon.phone{background:var(--primary-900)}.contact-info-card .ci-icon.wa{background:#25D366}.contact-info-card .ci-icon.mail{background:var(--accent-500)}.contact-info-card .ci-icon.loc{background:var(--primary-100)}
.contact-info-card .ci-icon svg{width:1.5rem;height:1.5rem;color:#fff}.contact-info-card .ci-icon.loc svg{color:var(--primary-600)}
.contact-info-card .ci-label{font-size:.875rem;color:var(--primary-400)}
.contact-info-card .ci-value{font-weight:600;color:var(--primary-900)}
.page-hero{background:var(--primary-900);padding:4rem 0;text-align:center}@media(min-width:1024px){.page-hero{padding:6rem 0}}
.page-hero h1{font-size:2.25rem;color:#fff;margin-bottom:1rem}@media(min-width:1024px){.page-hero h1{font-size:3rem}}
.page-hero p{font-size:1.125rem;color:var(--primary-200);max-width:42rem;margin:0 auto}
.service-detail-hero{position:relative;background:var(--primary-900);overflow:hidden;padding:4rem 0}@media(min-width:1024px){.service-detail-hero{padding:6rem 0}}
.service-detail-hero .sdh-bg{position:absolute;inset:0;opacity:.2;object-fit:cover;width:100%;height:100%}
.service-detail-hero .sdh-overlay{position:absolute;inset:0;background:linear-gradient(to bottom right,var(--primary-950),rgba(15,23,42,.85),rgba(15,23,42,.6))}
.service-detail-hero .sdh-content{position:relative}
.breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--primary-300);margin-bottom:1.5rem}.breadcrumb a:hover{color:var(--accent-400)}.breadcrumb .current{color:var(--accent-400)}
.sdh-title-row{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}
.sdh-icon{width:4rem;height:4rem;border-radius:1rem;background:var(--accent-500);display:flex;align-items:center;justify-content:center;flex-shrink:0}.sdh-icon svg{width:2rem;height:2rem;color:#fff}
.sdh-title{font-size:1.875rem;color:#fff}@media(min-width:1024px){.sdh-title{font-size:3rem}}
.sdh-desc{font-size:1.125rem;color:var(--primary-200);max-width:48rem;line-height:1.6;margin-bottom:2rem}
.sdh-cta{display:flex;flex-wrap:wrap;gap:1rem}
.sidebar-cta{padding:1.5rem;border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);position:sticky;top:6rem}
.sidebar-cta h3{font-size:1.125rem;color:var(--primary-900);margin-bottom:1rem}
.sidebar-cta p{font-size:.875rem;color:var(--primary-500);margin-bottom:1.5rem}
.sidebar-cta .btn{width:100%;margin-bottom:.75rem}
.sidebar-cta .sc-divider{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--primary-100)}
.sidebar-cta .sc-info-label{font-size:.875rem;color:var(--primary-400);margin-bottom:.25rem}.sidebar-cta .sc-info-label:not(:first-child){margin-top:.75rem}
.sidebar-cta .sc-info-val{font-size:.875rem;font-weight:600;color:var(--primary-900)}
.problem-list{list-style:none;padding:0;margin:0 0 2.5rem 0}
.problem-list li{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.75rem}
.problem-list .pl-dot{width:1.5rem;height:1.5rem;border-radius:50%;background:#fef2f2;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:.125rem}.problem-list .pl-dot span{width:.5rem;height:.5rem;border-radius:50%;background:#ef4444}
.problem-list li span:last-child{color:var(--primary-600)}
.how-list{margin-bottom:2.5rem}
.how-step{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}
.how-step .hs-num{width:2rem;height:2rem;border-radius:.5rem;background:var(--primary-900);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.875rem}
.how-step p{color:var(--primary-600);padding-top:.25rem}
.why-grid{display:grid;gap:.75rem;margin-bottom:2.5rem;grid-template-columns:1fr}@media(min-width:640px){.why-grid{grid-template-columns:repeat(2,1fr)}}
.why-item{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.why-item svg{width:1.25rem;height:1.25rem;color:#22c55e;flex-shrink:0;margin-top:.125rem}
.why-item span{font-size:.875rem;color:var(--primary-600)}
.related-service{display:flex;align-items:center;gap:.75rem;padding:1.5rem;border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:all .2s}.related-service:hover{box-shadow:0 10px 30px rgba(0,0,0,.1);border-color:var(--accent-200)}
.related-service .rs-icon{width:3rem;height:3rem;border-radius:.75rem;background:var(--accent-50);display:flex;align-items:center;justify-content:center;flex-shrink:0}.related-service .rs-icon svg{width:1.5rem;height:1.5rem;color:var(--accent-600)}
.related-service .rs-title{font-weight:700;color:var(--primary-900)}.related-service:hover .rs-title{color:var(--accent-600)}
.related-service .rs-desc{font-size:.875rem;color:var(--primary-500)}
.blog-card{display:flex;flex-direction:column;overflow:hidden;border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:all .2s}.blog-card:hover{box-shadow:0 10px 30px rgba(0,0,0,.1);border-color:var(--accent-200);transform:translateY(-2px)}
.blog-card .bc-img{height:12rem;overflow:hidden;position:relative}
.blog-card .bc-img img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.blog-card:hover .bc-img img{transform:scale(1.05)}
.blog-card .bc-cat{position:absolute;top:.75rem;left:.75rem;background:var(--accent-500);color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .75rem;border-radius:9999px}
.blog-card .bc-body{padding:1.25rem;flex:1;display:flex;flex-direction:column}
.blog-card .bc-meta{display:flex;gap:.75rem;font-size:.75rem;color:var(--primary-400);margin-bottom:.75rem}
.blog-card .bc-meta span{display:flex;align-items:center;gap:.25rem}
.blog-card .bc-meta svg{width:.875rem;height:.875rem}
.blog-card .bc-body h3{font-size:1.125rem;color:var(--primary-900);margin-bottom:.5rem}
.blog-card .bc-body p{font-size:.875rem;color:var(--primary-500);line-height:1.5;flex:1}
.blog-card .bc-link{margin-top:1rem;font-size:.875rem;font-weight:600;color:var(--accent-600)}
.form-card{padding:1.5rem;border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.form-grid{display:grid;gap:1rem;grid-template-columns:1fr}@media(min-width:640px){.form-grid{grid-template-columns:repeat(2,1fr)}}
.form-field{display:flex;flex-direction:column}
.form-field label{font-size:.875rem;font-weight:600;color:var(--primary-800);margin-bottom:.375rem}
.form-field input,.form-field select,.form-field textarea{border:1px solid var(--primary-200);border-radius:.5rem;padding:.625rem 1rem;color:var(--primary-900);font-family:inherit;font-size:.875rem;outline:none;transition:border-color .2s}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--accent-400);box-shadow:0 0 0 2px var(--accent-400)}
.form-field textarea{resize:none;min-height:6rem}
.form-full{grid-column:1/-1}
.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:50;background:var(--primary-900);padding:1.5rem;border-top-left-radius:1rem;border-top-right-radius:1rem;box-shadow:0 -4px 12px rgba(0,0,0,.15)}
.cookie-banner .cb-inner{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;max-width:1280px;margin:0 auto;padding:0 1rem}
@media(min-width:1024px){.cookie-banner .cb-inner{flex-direction:row;align-items:center}}
.cookie-banner .cb-text{display:flex;align-items:flex-start;gap:.75rem;flex:1}
.cookie-banner .cb-text svg{width:1.25rem;height:1.25rem;color:var(--accent-400);flex-shrink:0;margin-top:.125rem}
.cookie-banner .cb-text p{font-size:.875rem;color:var(--primary-200);line-height:1.5}
.cookie-banner .cb-btns{display:flex;flex-wrap:wrap;gap:.75rem;flex-shrink:0}
.cookie-banner .cb-btns .btn{font-size:.875rem;padding:.625rem 1.25rem}
.not-found{min-height:70vh;display:flex;align-items:center;justify-content:center;background:var(--primary-50);padding:5rem 0;text-align:center}
.nf-icon{width:5rem;height:5rem;border-radius:1rem;background:var(--primary-900);display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.nf-icon svg{width:2.5rem;height:2.5rem;color:var(--accent-400)}
.nf-404{font-size:4.5rem;font-weight:700;color:var(--accent-200);margin-bottom:1rem}
.nf-h1{font-size:1.875rem;font-weight:700;color:var(--primary-900);margin-bottom:1rem}
.nf-p{font-size:1.125rem;color:var(--primary-500);max-width:32rem;margin:0 auto 2rem}
.nf-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:2rem}
.nf-contact{font-size:.875rem;color:var(--primary-400)}.nf-contact a{color:var(--accent-600);font-weight:600}
.legal-content{max-width:48rem;margin:0 auto}
.legal-content h2{font-size:1.5rem;color:var(--primary-900);margin:1.5rem 0 1rem}
.legal-content p{color:var(--primary-600);line-height:1.6;margin-bottom:1.5rem}
.legal-content ul{padding-left:1.5rem;margin-bottom:1.5rem}
.legal-content li{color:var(--primary-600);margin-bottom:.5rem}
.legal-content a{color:var(--accent-600)}
.legal-date{font-size:.875rem;color:var(--primary-400);margin-bottom:2rem}
.blog-article{max-width:42rem}
.blog-article h2{font-size:1.5rem;color:var(--primary-900);margin:1.5rem 0 1rem}
.blog-article h3{font-size:1.25rem;color:var(--primary-900);margin:1.5rem 0 .75rem}
.blog-article p{color:var(--primary-600);line-height:1.6;margin-bottom:1rem}
.blog-article .article-cta{padding:1.5rem;border-radius:1rem;border:1px solid var(--primary-100);background:var(--primary-50);margin-top:2rem}
.blog-article .article-cta h3{margin-bottom:.5rem}
.blog-article .article-cta p{font-size:.875rem;margin-bottom:1rem}
.blog-sidebar .bs-card{padding:1.5rem;border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);margin-bottom:1.5rem}
.blog-sidebar .bs-card h3{font-size:1rem;color:var(--primary-900);margin-bottom:1rem}
.blog-sidebar .bs-link{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}
.blog-sidebar .bs-link .bsl-icon{width:2.5rem;height:2.5rem;border-radius:.5rem;background:var(--accent-50);display:flex;align-items:center;justify-content:center;flex-shrink:0}.blog-sidebar .bs-link .bsl-icon svg{width:1.25rem;height:1.25rem;color:var(--accent-600)}
.blog-sidebar .bs-link .bsl-title{font-size:.875rem;font-weight:600;color:var(--primary-900)}
.blog-sidebar .bs-contact{background:var(--primary-900);border-color:var(--primary-700)}
.blog-sidebar .bs-contact h3{color:#fff}.blog-sidebar .bs-contact p{font-size:.875rem;color:var(--primary-300);margin-bottom:1rem}
.blog-sidebar .bs-contact a{display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.blog-sidebar .bs-contact a.accent{color:var(--accent-400)}.blog-sidebar .bs-contact a.green{color:#4ade80}
.content-grid{display:grid;gap:2.5rem;grid-template-columns:1fr}@media(min-width:1024px){.content-grid{grid-template-columns:2fr 1fr}}
.map-frame{border-radius:1rem;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.05);border:1px solid var(--primary-100);min-height:300px}
.map-frame iframe{width:100%;height:100%;min-height:300px;border:0}
.contact-grid{display:grid;gap:2.5rem;grid-template-columns:1fr}@media(min-width:1024px){.contact-grid{grid-template-columns:3fr 2fr}}
.contact-cards{display:grid;gap:1rem;grid-template-columns:1fr}@media(min-width:640px){.contact-cards{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.contact-cards{grid-template-columns:repeat(4,1fr)}}
.cc-card{text-align:center;padding:1.5rem;border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:all .2s}.cc-card:hover{box-shadow:0 10px 30px rgba(0,0,0,.1);border-color:var(--accent-200)}
.cc-icon{width:3rem;height:3rem;border-radius:.75rem;display:flex;align-items:center;justify-content:center;margin:0 auto .75rem}.cc-icon.phone{background:var(--primary-900)}.cc-icon.wa{background:#25D366}.cc-icon.mail{background:var(--accent-500)}.cc-icon.loc{background:var(--primary-100)}
.cc-icon svg{width:1.5rem;height:1.5rem;color:#fff}.cc-icon.loc svg{color:var(--primary-600)}
.cc-label{font-size:.875rem;color:var(--primary-400);margin-bottom:.25rem}
.cc-value{font-weight:600;color:var(--primary-900);font-size:.875rem;word-break:break-all}
.contact-detail-card{display:flex;align-items:flex-start;gap:.75rem;padding:1.25rem;border-radius:1rem;border:1px solid var(--primary-100);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.05);margin-bottom:1rem;transition:all .2s}.contact-detail-card:hover{border-color:var(--accent-200)}
.contact-detail-card svg{width:1.25rem;height:1.25rem;color:var(--accent-600);margin-top:.25rem;flex-shrink:0}
.contact-detail-card .cd-label{font-size:.875rem;color:var(--primary-400);margin-bottom:.25rem}
.contact-detail-card .cd-value{font-weight:600;color:var(--primary-900);font-size:.875rem}
.contact-detail-card .cd-sub{font-size:.875rem;color:var(--primary-500)}
.pb-16{padding-bottom:4rem}@media(min-width:1024px){.pb-16{padding-bottom:0}}
.hidden{display:none}
.fade-in{animation:fadeIn .6s ease-out}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.fade-in-up{animation:fadeInUp .6s ease-out}
@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
