*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;line-height:1.6;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:#1e293b;background:#fff}
img{max-width:100%;height:auto;display:block}
a{color:#2563eb;text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
header{background:#fff;border-bottom:1px solid #e2e8f0;padding:1rem 0}
header .container{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.logo{font-size:1.25rem;font-weight:700;color:#0f172a}
nav ul{list-style:none;display:flex;gap:1.5rem;flex-wrap:wrap}
nav a{color:#475569;font-weight:500;font-size:0.9375rem}
nav a:hover{color:#2563eb}
.has-dropdown{position:relative}
.dropdown-menu{display:none;position:absolute;top:100%;left:0;background:#fff;border:1px solid #e2e8f0;border-radius:0.375rem;min-width:200px;padding:0.5rem 0;box-shadow:0 4px 6px -1px rgba(0,0,0,0.1);z-index:100;flex-direction:column;gap:0}
.has-dropdown:hover>.dropdown-menu{display:flex}
.dropdown-menu li{width:100%}
.dropdown-menu a{display:block;padding:0.5rem 1rem;white-space:nowrap}
.dropdown-menu a:hover{background:#f1f5f9}
.hamburger-toggle{display:none;background:none;border:none;cursor:pointer;padding:0.5rem;flex-direction:column;gap:4px}
.hamburger-toggle span{display:block;width:24px;height:2px;background:#0f172a;transition:transform 0.3s,opacity 0.3s}
.hamburger-toggle.active span:nth-child(1){transform:rotate(45deg) translate(4px,4px)}
.hamburger-toggle.active span:nth-child(2){opacity:0}
.hamburger-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(4px,-4px)}
main{min-height:60vh}
footer{background:#0f172a;color:#94a3b8;padding:3rem 0 1.5rem;margin-top:4rem}
footer a{color:#cbd5e1}
footer .container{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between}
.footer-bottom{border-top:1px solid #1e293b;margin-top:2rem;padding-top:1rem;text-align:center;font-size:0.875rem}
.hero{padding:4rem 0;background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 100%)}
.hero h1{font-size:2.5rem;font-weight:800;color:#0f172a;margin-bottom:1rem;line-height:1.2}
.hero p{font-size:1.125rem;color:#475569;max-width:640px}
.section{padding:3rem 0}
.section h2{font-size:1.75rem;font-weight:700;color:#0f172a;margin-bottom:1.5rem}
.section h3{font-size:1.25rem;font-weight:600;color:#1e293b;margin-bottom:0.75rem}
.section p{color:#475569;margin-bottom:1rem}
.grid{display:grid;gap:1.5rem}
.grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.grid-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:#fff;border:1px solid #e2e8f0;border-radius:0.5rem;padding:1.5rem}
.btn{display:inline-block;padding:0.75rem 1.5rem;border-radius:0.375rem;font-weight:600;font-size:0.9375rem;text-align:center;cursor:pointer;border:none;transition:background 0.2s}
.btn-primary{background:#2563eb;color:#fff}
.btn-primary:hover{background:#1d4ed8;text-decoration:none}
.btn-outline{background:transparent;border:2px solid #2563eb;color:#2563eb}
.btn-outline:hover{background:#2563eb;color:#fff;text-decoration:none}
.breadcrumb{padding:0.75rem 0;font-size:0.875rem;color:#64748b}
.breadcrumb a{color:#475569}
.breadcrumb span{margin:0 0.5rem}
ul.list{list-style:disc;padding-left:1.5rem;margin-bottom:1rem}
ul.list li{margin-bottom:0.5rem;color:#475569}
.faq-item{border-bottom:1px solid #e2e8f0;padding:1rem 0}
.faq-item h3{cursor:pointer;font-size:1.0625rem}
.faq-item p{margin-top:0.5rem;display:none}
.faq-item.open p{display:block}
.cta-section{background:#2563eb;color:#fff;padding:3rem 0;text-align:center}
.cta-section h2{color:#fff}
.cta-section p{color:rgba(255,255,255,0.9);margin-bottom:1.5rem}
.cta-section .btn{background:#fff;color:#2563eb}
.testimonial{padding:1.5rem;border-left:3px solid #2563eb;background:#f8fafc;margin-bottom:1rem}
.testimonial cite{display:block;margin-top:0.5rem;font-style:normal;font-weight:600;color:#0f172a}
.map-embed{width:100%;height:400px;border:none;border-radius:0.5rem}
.contact-info p{margin-bottom:0.5rem}
table{width:100%;border-collapse:collapse;margin-bottom:1.5rem}
th,td{padding:0.75rem;text-align:left;border-bottom:1px solid #e2e8f0}
th{background:#f8fafc;font-weight:600;color:#0f172a}
@media(max-width:768px){
.hero h1{font-size:1.75rem}
.section h2{font-size:1.375rem}
.hamburger-toggle{display:flex}
.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid #e2e8f0;padding:1rem;z-index:99}
.main-nav.nav-open{display:block}
.main-nav ul{flex-direction:column;gap:0.5rem}
.has-dropdown:hover>.dropdown-menu{display:none}
.has-dropdown.open>.dropdown-menu{display:flex}
.dropdown-menu{position:static;border:none;box-shadow:none;padding-left:1rem;min-width:0}
nav ul{gap:0.75rem}
.container{padding:0 1rem}
}