:root{--navy:#111c2d;--navy-2:#1a2b43;--gold:#e89d38;--gold-dark:#c97d19;--ink:#263344;--muted:#647184;--light:#f5f7fa;--line:#dfe5ec;--white:#fff;--wa:#128c4a;--shadow:0 16px 40px rgba(17,28,45,.10);--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);line-height:1.65;background:#fff;overflow-x:hidden}img{max-width:100%;height:auto}a{color:var(--navy-2);text-decoration:none}a:hover{color:var(--gold-dark)}.skip-link{position:absolute;left:-999px;top:8px;z-index:9999;background:#fff;padding:.75rem 1rem;border-radius:8px}.skip-link:focus{left:8px}.topbar{background:var(--navy);color:#dbe2ec;font-size:.88rem}.topbar a{color:#fff}.topbar-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.site-header{position:sticky;top:0;z-index:1030;background:rgba(255,255,255,.98);border-bottom:1px solid rgba(17,28,45,.08);transition:.2s box-shadow}.site-header.scrolled{box-shadow:0 8px 24px rgba(17,28,45,.10)}.navbar{padding:.7rem 0}.navbar-brand{display:flex;align-items:center;gap:.7rem;min-width:230px}.brand-logo{width:52px;height:52px;object-fit:contain}.brand-title{display:block;color:var(--navy);font-weight:800;line-height:1.1;font-size:1.03rem}.brand-subtitle{display:block;color:var(--muted);font-size:.72rem;margin-top:.2rem}.navbar-nav .nav-link{font-weight:650;font-size:.93rem;color:#25344a;padding:.7rem .65rem!important}.navbar-nav .nav-link:hover,.navbar-nav .nav-link.active{color:var(--gold-dark)}.btn{font-weight:750;border-radius:12px;padding:.72rem 1.05rem}.btn-brand{background:var(--gold);border-color:var(--gold);color:#16120c}.btn-brand:hover{background:var(--gold-dark);border-color:var(--gold-dark);color:#fff}.btn-darkbrand{background:var(--navy);border-color:var(--navy);color:#fff}.btn-darkbrand:hover{background:var(--navy-2);border-color:var(--navy-2);color:#fff}.btn-wa{background:var(--wa);border-color:var(--wa);color:#fff}.btn-wa:hover{background:#0f713c;border-color:#0f713c;color:#fff}.btn-outline-brand{border:2px solid var(--gold);color:var(--navy);background:#fff}.btn-outline-brand:hover{background:var(--gold);color:#111}.icon{vertical-align:-.2em}.hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#f7f8fb 0%,#fff 55%,#f4ede2 100%);padding:4.6rem 0 3.6rem}.hero:before{content:"";position:absolute;width:400px;height:400px;border:80px solid rgba(232,157,56,.09);border-radius:50%;right:-150px;top:-180px}.eyebrow{display:inline-flex;align-items:center;gap:.45rem;color:var(--gold-dark);font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.hero h1,.page-hero h1{color:var(--navy);font-weight:900;line-height:1.08;letter-spacing:-.035em}.hero h1{font-size:clamp(2.35rem,5vw,4.5rem);max-width:760px}.hero .lead{font-size:clamp(1.05rem,2vw,1.26rem);color:#425066;max-width:720px}.hero-note{display:flex;align-items:flex-start;gap:.7rem;color:#425066;font-size:.95rem}.hero-media{position:relative;max-width:540px;margin-left:auto}.hero-media img{width:100%;height:620px;object-fit:cover;border-radius:28px;box-shadow:var(--shadow)}.hero-badge{position:absolute;left:-36px;bottom:34px;background:#fff;border-radius:16px;padding:1rem 1.1rem;box-shadow:var(--shadow);max-width:240px;border-left:5px solid var(--gold)}.hero-badge strong{display:block;color:var(--navy)}.trust-strip{margin-top:-1px;background:var(--navy);color:#fff}.trust-item{display:flex;align-items:center;gap:.85rem;padding:1.3rem .4rem}.trust-item svg{color:var(--gold);flex:0 0 auto}.trust-item strong{display:block}.trust-item span{display:block;color:#cbd3df;font-size:.84rem}.section{padding:5rem 0}.section-sm{padding:3.5rem 0}.section-light{background:var(--light)}.section-dark{background:var(--navy);color:#fff}.section-title{color:var(--navy);font-weight:900;letter-spacing:-.025em}.section-dark .section-title{color:#fff}.section-intro{max-width:760px;color:var(--muted);font-size:1.04rem}.section-dark .section-intro{color:#ced6e2}.service-card{height:100%;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.45rem;transition:transform .2s,box-shadow .2s,border-color .2s}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:rgba(232,157,56,.45)}.service-icon{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:#fff4e4;color:var(--gold-dark);margin-bottom:1rem}.service-card h3{font-size:1.15rem;color:var(--navy);font-weight:850}.service-card p{color:var(--muted);font-size:.93rem}.card-actions{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:auto}.card-actions .btn{padding:.55rem .72rem;font-size:.83rem}.image-panel{position:relative}.image-panel img{width:100%;min-height:460px;object-fit:cover;border-radius:24px;box-shadow:var(--shadow)}.image-panel:after{content:"";position:absolute;inset:20px -16px -16px 20px;border:3px solid var(--gold);border-radius:24px;z-index:-1}.check-list{list-style:none;padding:0;margin:0}.check-list li{display:flex;gap:.7rem;margin:.8rem 0}.check-list svg{color:var(--gold-dark);flex:0 0 auto;margin-top:.2rem}.district-chip{display:inline-flex;align-items:center;gap:.4rem;background:#fff;border:1px solid var(--line);border-radius:999px;padding:.65rem .9rem;margin:.25rem;font-weight:700;font-size:.9rem}.district-chip:hover{border-color:var(--gold);background:#fff9ef}.process-card{position:relative;background:#fff;border-radius:18px;padding:1.35rem;border:1px solid var(--line);height:100%}.process-no{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--gold);font-weight:900;color:#17110a;margin-bottom:1rem}.project-card{border:0;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 8px 26px rgba(17,28,45,.09);height:100%;cursor:pointer}.project-card img{width:100%;height:300px;object-fit:cover;transition:transform .35s}.project-card:hover img{transform:scale(1.035)}.project-card-body{padding:1rem 1.1rem}.project-card h3{font-size:1.05rem;font-weight:850;color:var(--navy);margin:0}.project-card p{margin:.3rem 0 0;color:var(--muted);font-size:.86rem}.gallery-modal-img{max-height:76vh;width:100%;object-fit:contain;background:#0d1420}.accordion-item{border:1px solid var(--line)!important;border-radius:14px!important;overflow:hidden;margin-bottom:.75rem}.accordion-button{font-weight:800;color:var(--navy);padding:1.1rem 1.2rem}.accordion-button:not(.collapsed){background:#fff8ed;color:var(--navy);box-shadow:none}.accordion-button:focus{box-shadow:0 0 0 .2rem rgba(232,157,56,.2)}.cta-band{background:linear-gradient(135deg,var(--navy),#223a5e);border-radius:26px;padding:2.2rem;color:#fff;box-shadow:var(--shadow)}.cta-band h2{font-weight:900}.page-hero{background:linear-gradient(135deg,#f5f7fa,#fff7eb);padding:3.6rem 0 3rem}.page-hero h1{font-size:clamp(2.1rem,4vw,3.65rem)}.page-hero .lead{color:#506075}.page-hero img{width:100%;height:410px;object-fit:cover;border-radius:24px;box-shadow:var(--shadow)}.breadcrumb{font-size:.9rem}.breadcrumb-item a{color:var(--gold-dark);font-weight:700}.content-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.5rem}.content-card h2{color:var(--navy);font-weight:880;font-size:1.55rem}.content-card h3{color:var(--navy);font-weight:820;font-size:1.15rem}.content-card p:last-child{margin-bottom:0}.toc{position:sticky;top:120px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.1rem}.toc strong{display:block;color:var(--navy);margin-bottom:.6rem}.toc a{display:block;padding:.45rem .2rem;color:#536277;font-size:.9rem}.toc a:hover{color:var(--gold-dark)}.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.info-pill{display:flex;align-items:flex-start;gap:.65rem;padding:.9rem;background:var(--light);border-radius:13px}.info-pill svg{color:var(--gold-dark);flex:0 0 auto}.number-list{counter-reset:steps;list-style:none;padding:0}.number-list li{counter-increment:steps;position:relative;padding:0 0 1.2rem 3.2rem}.number-list li:before{content:counter(steps);position:absolute;left:0;top:0;width:2.2rem;height:2.2rem;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#17110a;font-weight:900}.district-section{scroll-margin-top:120px}.contact-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:1.5rem;height:100%}.form-control,.form-select{border-radius:11px;border-color:#cfd7e2;padding:.78rem .9rem}.form-control:focus,.form-select:focus{border-color:var(--gold);box-shadow:0 0 0 .2rem rgba(232,157,56,.18)}.form-label{font-weight:700;color:var(--navy)}.footer{background:#0c1523;color:#c8d1de;padding:4rem 0 1rem}.footer h2,.footer h3{color:#fff;font-weight:850}.footer a{color:#d7dfeb}.footer a:hover{color:var(--gold)}.footer-logo{width:64px;height:64px}.footer-list{list-style:none;padding:0}.footer-list li{margin:.5rem 0}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:2rem;padding-top:1.2rem;font-size:.86rem}.floating-contact{position:fixed;right:18px;bottom:22px;z-index:1020;display:flex;flex-direction:column;gap:.65rem}.float-btn{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:#fff;box-shadow:0 10px 28px rgba(0,0,0,.25)}.float-phone{background:var(--gold-dark)}.float-wa{background:var(--wa)}.float-btn:hover{color:#fff;transform:translateY(-2px)}.mobile-contact{display:none;position:fixed;bottom:0;left:0;right:0;z-index:1050;background:#fff;border-top:1px solid var(--line);box-shadow:0 -8px 25px rgba(17,28,45,.12);padding:.55rem}.mobile-contact .btn{flex:1;padding:.8rem .5rem}.legal-content h2{font-size:1.35rem;color:var(--navy);font-weight:850;margin-top:2rem}.not-found{min-height:72vh;display:grid;place-items:center;text-align:center;background:linear-gradient(135deg,#fff,#f3f6fa)}.not-found-code{font-size:clamp(6rem,20vw,13rem);font-weight:950;line-height:.8;color:var(--navy);opacity:.08}.focus-ring:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(232,157,56,.8);outline-offset:3px}
@media(max-width:1199.98px){.nav-actions{display:none}.navbar-nav .nav-link{padding:.65rem .5rem!important}.hero-media img{height:540px}}
@media(max-width:991.98px){.navbar-collapse{padding:1rem 0}.navbar-nav{border-top:1px solid var(--line);margin-top:.6rem;padding-top:.6rem}.hero{padding:3.2rem 0}.hero-media{margin:2.2rem auto 0}.hero-media img{height:500px}.hero-badge{left:14px}.trust-item{padding:1rem 0}.image-panel:after{display:none}.page-hero img{margin-top:2rem}.toc{position:static}.section{padding:4rem 0}}
@media(max-width:767.98px){body{padding-bottom:70px}.topbar .topbar-inner{justify-content:center}.topbar .service-text{display:none}.brand-logo{width:46px;height:46px}.brand-title{font-size:.93rem}.brand-subtitle{font-size:.65rem}.navbar-brand{min-width:0}.hero{padding-top:2.4rem}.hero .btn{width:100%}.hero-media img{height:420px}.hero-badge{right:12px;left:12px;bottom:16px;max-width:none}.section{padding:3.4rem 0}.section-sm{padding:2.8rem 0}.project-card img{height:240px}.info-grid{grid-template-columns:1fr}.floating-contact{display:none}.mobile-contact{display:flex;gap:.5rem}.cta-band{padding:1.5rem}.page-hero{padding:2.6rem 0}.page-hero .btn{width:100%}.page-hero img{height:340px}.footer{padding-top:3rem}.content-card{padding:1.2rem}}
@media(max-width:420px){.brand-subtitle{display:none}.hero-media img{height:360px}.project-card img{height:220px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}


/* Responsive layout corrections */
.navbar-brand{flex-shrink:0}
.navbar-nav .nav-link,.nav-actions .btn{white-space:nowrap}
.nav-actions .btn{padding:.65rem .85rem;font-size:.86rem}
.image-panel img{height:560px;min-height:0}

@media(min-width:1400px){
  .site-header .container{max-width:1520px}
  .navbar-brand{min-width:215px}
  .navbar-nav .nav-link{font-size:.88rem;padding:.65rem .5rem!important}
}
@media(max-width:1399.98px){
  .nav-actions{display:none!important}
}
@media(max-width:1199.98px){
  .navbar-collapse{padding:1rem 0}
  .navbar-nav{border-top:1px solid var(--line);margin-top:.6rem;padding-top:.6rem}
  .navbar-nav .nav-link{padding:.65rem .25rem!important}
}
@media(max-width:767.98px){
  .topbar-inner{min-height:34px}
  .navbar{padding:.45rem 0}
  .hero{padding:1.9rem 0 2.5rem}
  .hero .row{--bs-gutter-y:1.5rem}
  .hero h1{font-size:clamp(2rem,9vw,2.4rem)}
  .hero .lead{font-size:1rem;line-height:1.55;margin-top:.8rem!important}
  .hero .text-muted{font-size:.92rem;line-height:1.55}
  .hero-actions{margin-top:1.1rem!important}
  .hero-actions .btn{padding:.72rem .75rem;font-size:.98rem}
  .hero-note{margin-top:1rem!important;font-size:.84rem;line-height:1.45}
  .hero-media{margin-top:1.5rem}
  .hero-media img{height:320px}
  .hero-badge{padding:.8rem .9rem;bottom:12px}
  .image-panel img{height:380px;min-height:0}
  .mobile-contact .btn{font-size:.9rem;white-space:nowrap}
}
@media(max-width:420px){
  .brand-title{font-size:.86rem}
  .hero-media img{height:290px}
}
