html,body,#root{width:100%;min-height:100%;margin:0;padding:0}*{box-sizing:border-box}html,body,#root{color:#18181b;background:#fafafa;min-height:100%;margin:0;font-family:Arial,Helvetica,sans-serif}button,input,textarea{font:inherit}img{max-width:100%;display:block}.app-shell{background:#fafafa;min-height:100vh}.container{width:min(1120px,92%);margin:0 auto}.site-header{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;border-bottom:1px solid #e4e4e7;position:sticky;top:0}.header-inner{flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;padding:16px 0;display:flex}.logo{width:auto;height:48px}.nav{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.nav-btn{color:#3f3f46;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:10px 16px}.nav-btn:hover{color:#1d4ed8;background:#eff6ff}.nav-btn.active{color:#18181b;background:#facc15}.main-content{padding:32px 0 48px}.hero{text-align:center;max-width:850px;margin:0 auto;padding:8px 0 24px}.hero h1,.section h1{margin:0 0 20px;font-size:clamp(2rem,5vw,3.75rem);line-height:1.08}.hero-copy{white-space:pre-line;color:#52525b;font-size:1.05rem;line-height:1.9}.hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px;display:flex}.primary-btn,.secondary-btn{cursor:pointer;border:1px solid #0000;border-radius:999px;padding:14px 22px}.primary-btn{color:#18181b;background:#facc15}.primary-btn:hover{background:#eab308}.secondary-btn{color:#1d4ed8;background:0 0;border-color:#bfdbfe}.secondary-btn:hover{background:#eff6ff}.section{padding:24px 0}.section-intro{margin-bottom:24px}.section-intro h2{margin:0 0 10px;font-size:2rem}.section-intro p{color:#52525b;max-width:820px;margin:0}.eyebrow{text-transform:uppercase;letter-spacing:.2em;margin:0 0 10px;font-size:.8rem;font-weight:700}.eyebrow.blue{color:#1d4ed8}.eyebrow.yellow{color:#ca8a04}.slideshow{background:#fff;border:1px solid #e4e4e7;border-radius:28px;position:relative;overflow:hidden;box-shadow:0 10px 28px #00000012}.slide-frame{height:500px}@media (width>=640px){.slide-frame{height:400px}}@media (width>=1024px){.slide-frame{height:550px}}.slide-image{object-fit:cover;object-position:center;width:100%;height:100%}.slide-arrow{color:#18181b;cursor:pointer;background:#ffffffd9;border:1px solid #ffffff8c;border-radius:999px;place-items:center;width:42px;height:42px;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.slide-arrow.left{left:14px}.slide-arrow.right{right:14px}.card{background:#fff;border:1px solid #e4e4e7;border-radius:24px;box-shadow:0 6px 18px #0000000a}.card.blue-tint{background:#eff6ff}.card-body{padding:24px}.card h2,.card h3{margin-top:0}.muted{color:#52525b}.services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.service-card{overflow:hidden}.service-image-wrap{height:220px;overflow:hidden}.service-image{object-fit:cover;object-position:center;width:100%;height:100%}.service-card h3{margin:0 0 10px}.service-card p{color:#52525b;margin:0;line-height:1.7}.contact-layout{grid-template-columns:1.1fr .9fr;gap:24px;display:grid}.contact-form{gap:14px;margin-top:24px;display:grid}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.contact-form input,.contact-form textarea{color:#18181b;background:#fff;border:1px solid #e4e4e7;border-radius:12px;width:100%;padding:14px 16px}.contact-form textarea{resize:vertical;min-height:150px}.contact-details{gap:18px;margin-top:28px;display:grid}.contact-line{color:#3f3f46;align-items:flex-start;gap:12px;display:flex}.contact-line strong,.contact-line span{display:block}.about-page{gap:28px;display:grid}.about-image-wrap{background:#fff;border:1px solid #e4e4e7;border-radius:28px;overflow:hidden}.about-image{object-fit:cover;object-position:center;width:100%;height:420px}.about-copy p{color:#52525b;margin-top:0;margin-bottom:18px;line-height:1.9}.contact-header{text-align:left}.site-footer{background:#fff;border-top:1px solid #e4e4e7}.footer-inner{color:#71717a;flex-wrap:wrap;justify-content:space-between;gap:14px;padding:26px 0;font-size:.95rem;display:flex}@media (width<=960px){.services-grid{grid-template-columns:1fr 1fr}.contact-layout{grid-template-columns:1fr}}@media (width<=640px){.logo{height:42px}.main-content{padding-top:22px}.slide-frame{height:240px}.services-grid,.form-row{grid-template-columns:1fr}.about-image{height:260px}}
