:root{--blue:#0D7CC0;--sky:#1CA9E8;--navy:#103B66;--orange:#F58220;--light:#F5F9FC;--text:#263445;--bs-primary:#0D7CC0}
html{scroll-behavior:smooth;scroll-padding-top:80px}body{font-family:Inter,system-ui,sans-serif;color:var(--text);overflow-x:hidden}
h1,h2,h3,h4,h5,h6{color:var(--navy);font-weight:700;letter-spacing:-.01em}h2{font-size:clamp(1.6rem,3vw,2.2rem);margin-bottom:.5rem}
a{color:var(--blue)}img{max-width:100%;height:auto}
.skip{position:absolute;left:-999px;background:#fff;padding:.5rem 1rem;z-index:2000}.skip:focus{left:8px;top:8px}
:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.site-header{background:#fff;box-shadow:0 1px 0 rgba(16,59,102,.08);z-index:1030}
.navbar-brand{display:flex;align-items:center;gap:.6rem;font-weight:800;color:var(--navy)}.nav-link{font-weight:500;color:var(--navy)}.nav-link:hover{color:var(--blue)}
.btn{border-radius:999px;font-weight:600}.btn-primary{--bs-btn-bg:var(--blue);--bs-btn-border-color:var(--blue);--bs-btn-hover-bg:var(--navy);--bs-btn-hover-border-color:var(--navy)}
.btn-outline-primary{--bs-btn-color:var(--blue);--bs-btn-border-color:var(--blue);--bs-btn-hover-bg:var(--blue);--bs-btn-hover-border-color:var(--blue)}
.btn-cta{background:var(--orange);border-color:var(--orange);color:#1b1100}.btn-cta:hover{background:#d96d0e;border-color:#d96d0e;color:#fff}
.hero,.page-hero{background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff}.hero{padding:4rem 0}.page-hero{padding:3rem 0}
.hero h1,.page-hero h1{color:#fff;font-size:clamp(2rem,5vw,3.4rem);font-weight:800}.page-hero h1{font-size:clamp(1.7rem,4vw,2.6rem)}.hero .lead,.page-hero .lead{color:#e6f3fb;max-width:40rem}
.breadcrumb{--bs-breadcrumb-divider-color:#cfe6f5}.breadcrumb a{color:#cfe6f5}.breadcrumb-item.active{color:#fff}
.highlights{list-style:none;padding:0;margin:1.5rem 0 0;display:flex;flex-wrap:wrap;gap:.6rem}.highlights li{background:rgba(255,255,255,.14);border-radius:999px;padding:.4rem .9rem;font-size:.9rem}
.hero img{border-radius:24px;box-shadow:0 24px 60px rgba(0,0,0,.3)}
.section{padding:4.5rem 0}.section.alt{background:var(--light)}
.form-card{background:#fff;border-radius:24px;padding:2rem;box-shadow:0 12px 40px rgba(16,59,102,.12);margin-top:-5.5rem;position:relative}
.form-control,.form-select{border-radius:12px;padding:.65rem .9rem}.form-label{font-weight:600;font-size:.9rem;color:var(--navy)}
.is-invalid~.err{display:block}.form-status{margin-top:1rem;font-weight:600}.form-status.error{color:#b42318}.form-status.ok{color:#0a6b3a}
.card{border:0;border-radius:20px;overflow:hidden;box-shadow:0 6px 24px rgba(16,59,102,.09);transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(16,59,102,.15)}
.card-link{text-decoration:none;color:inherit;display:block;height:100%}.card h3 a{text-decoration:none;color:var(--navy)}.more{color:var(--blue);font-weight:600}
.why{padding:1.5rem;background:#fff;border-radius:20px;height:100%;box-shadow:0 6px 24px rgba(16,59,102,.07)}.why i{font-size:1.8rem;color:var(--blue)}
.gal-item{border:0;padding:0;background:none;border-radius:16px;overflow:hidden;width:100%;display:block}.gal-item img{transition:transform .3s}.gal-item:hover img{transform:scale(1.04)}
.side-card{border-radius:24px;overflow:hidden;box-shadow:0 12px 40px rgba(16,59,102,.12);position:sticky;top:90px}
.tick{list-style:none;padding:0}.tick li{padding-left:2rem;margin:.5rem 0;position:relative}.tick li:before{content:"\F26A";font-family:bootstrap-icons;position:absolute;left:0;color:var(--blue)}
.steps li{margin:.5rem 0}.note{background:var(--light);border-left:4px solid var(--sky);padding:.8rem 1rem;border-radius:8px}
.chips{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.chips a{display:inline-block;padding:.4rem .9rem;border-radius:999px;background:var(--light);text-decoration:none;font-weight:500}.chips a:hover{background:var(--blue);color:#fff}
.accordion{--bs-accordion-btn-focus-box-shadow:0 0 0 3px rgba(245,130,32,.4)}.accordion-button:not(.collapsed){color:var(--navy);background:var(--light)}
.contact-list{font-style:normal}.contact-list i{color:var(--blue);margin-right:.4rem}.map iframe{border:0;border-radius:20px}
.site-footer{background:var(--navy);color:#cfe0ee;padding:3.5rem 0 1.5rem}.site-footer h2{color:#fff;font-size:1rem}.site-footer ul{list-style:none;padding:0}.site-footer li{margin:.35rem 0}.site-footer a{color:#cfe0ee;text-decoration:none}.site-footer a:hover{color:#fff;text-decoration:underline}.site-footer address{font-size:.95rem}
.site-footer .btn-cta{color:#1b1100}.copy{border-top:1px solid rgba(255,255,255,.15);margin:2rem 0 0;padding-top:1rem;font-size:.9rem}
.wa-float{position:fixed;right:18px;bottom:18px;width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;font-size:1.9rem;box-shadow:0 8px 24px rgba(0,0,0,.3);z-index:1040;text-decoration:none}.wa-float:hover{color:#fff;transform:scale(1.06)}
dialog.lightbox{border:0;border-radius:16px;padding:0;max-width:min(92vw,900px);background:#fff}dialog.lightbox::backdrop{background:rgba(10,25,45,.8)}dialog.lightbox img{display:block;width:100%;height:auto}dialog.lightbox button{position:absolute;top:8px;right:8px;border:0;border-radius:50%;width:40px;height:40px;background:#fff;font-size:1.2rem}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}