:root{
  --bg:#ffffff;
  --text:#17202a;
  --muted:#65717f;
  --line:#e9edf2;
  --dark:#101820;
  --blue:#0b4f8a;
  --blue-2:#0f72bd;
  --accent:#f7a600;
  --soft:#f4f8fc;
  --shadow:0 22px 60px rgba(16,24,32,.13);
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}
a{color:inherit;text-decoration:none}
.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px clamp(18px,4vw,58px);background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.2px}.brand-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,var(--blue),var(--dark));color:#fff;box-shadow:0 12px 28px rgba(11,79,138,.24)}.brand-text{font-size:1rem}.nav{display:flex;align-items:center;gap:22px;font-size:.95rem;color:var(--muted);font-weight:700}.nav a:hover{color:var(--blue)}.top-cta{background:var(--dark);color:#fff;padding:12px 18px;border-radius:999px;font-weight:800}
.section{padding:clamp(48px,7vw,92px) clamp(18px,5vw,76px)}.hero{min-height:78vh;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(30px,5vw,80px);background:radial-gradient(circle at 85% 18%, rgba(15,114,189,.14), transparent 32%),linear-gradient(135deg,#fff 0%,#f7fbff 100%)}.eyebrow{display:inline-flex;margin:0 0 14px;padding:8px 14px;border-radius:999px;background:#eaf4ff;color:var(--blue);font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.hero h1{margin:0;font-size:clamp(2.5rem,7vw,5.8rem);line-height:.94;letter-spacing:-.07em;color:var(--dark)}.hero-text{max-width:650px;margin:24px 0 0;font-size:clamp(1.08rem,2vw,1.35rem);color:var(--muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:15px 22px;font-weight:900;transition:.2s ease}.btn.primary{background:linear-gradient(135deg,var(--blue),var(--blue-2));color:#fff;box-shadow:0 16px 34px rgba(15,114,189,.26)}.btn.secondary{background:#fff;border:1px solid var(--line);color:var(--dark)}.btn:hover{transform:translateY(-2px)}.wide{width:100%;margin-top:20px}.hero-card{position:relative;min-height:460px;border-radius:42px;background:linear-gradient(145deg,var(--dark),#17324a);overflow:hidden;box-shadow:var(--shadow);display:flex;align-items:flex-end;padding:34px;color:#fff}.hero-card:before{content:"";position:absolute;inset:24px;border:1px solid rgba(255,255,255,.16);border-radius:32px}.hero-card-content{position:relative;z-index:2}.hero-card-content span{display:block;color:#b9d9f5;font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.8rem}.hero-card-content strong{display:block;margin-top:8px;font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.05}.gear-wrap{position:absolute;inset:0;opacity:.92}.gear{position:absolute;border-radius:50%;border:34px solid rgba(247,166,0,.9);box-shadow:inset 0 0 0 28px rgba(255,255,255,.08),0 0 0 12px rgba(255,255,255,.04)}.gear:before{content:"";position:absolute;inset:38px;border-radius:50%;background:rgba(255,255,255,.12)}.gear-one{width:260px;height:260px;right:70px;top:72px;animation:spin 18s linear infinite}.gear-two{width:170px;height:170px;left:54px;top:170px;border-width:24px;animation:spinReverse 14s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes spinReverse{to{transform:rotate(-360deg)}}
.intro{padding-top:32px}.intro-box{max-width:1080px;margin:auto;padding:36px;border-radius:var(--radius);background:#fff;border:1px solid var(--line);box-shadow:0 16px 40px rgba(16,24,32,.08)}.intro-box h2,.section-title h2,.location h2,.contact-panel h2{margin:0;color:var(--dark);font-size:clamp(1.9rem,4vw,3.2rem);line-height:1.05;letter-spacing:-.045em}.intro-box p{margin:16px 0 0;color:var(--muted);font-size:1.08rem}.services{background:var(--soft)}.section-title{text-align:center;max-width:860px;margin:0 auto 34px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1180px;margin:auto}.service-card{position:relative;min-height:270px;padding:30px;border-radius:var(--radius);background:#fff;border:1px solid var(--line);box-shadow:0 16px 38px rgba(16,24,32,.07);overflow:hidden}.service-card:after{content:"";position:absolute;width:130px;height:130px;border-radius:50%;right:-38px;bottom:-44px;background:linear-gradient(135deg,rgba(15,114,189,.16),rgba(247,166,0,.2))}.icon{display:grid;place-items:center;width:54px;height:54px;border-radius:18px;background:var(--dark);color:#fff;font-weight:900}.service-card h3{margin:22px 0 10px;font-size:1.35rem;line-height:1.15;color:var(--dark)}.service-card p{margin:0;color:var(--muted)}.location{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px}.location-card,.contact-panel{border-radius:var(--radius);padding:36px;border:1px solid var(--line);box-shadow:0 16px 40px rgba(16,24,32,.08)}.location-card{background:linear-gradient(145deg,#fff,#f7fbff)}.location-card p:not(.eyebrow),.contact-panel p:not(.eyebrow){color:var(--muted);font-size:1.08rem}.contact-panel{background:var(--dark);color:#fff}.contact-panel h2{color:#fff}.contact-list{display:grid;gap:10px;margin-top:22px}.contact-list a,.contact-list span{display:block;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);font-weight:800}.footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;padding:26px clamp(18px,4vw,58px);background:#f8fafc;border-top:1px solid var(--line);color:var(--muted)}.footer strong{color:var(--dark)}
@media (max-width:900px){.topbar{position:relative;align-items:flex-start;flex-direction:column}.nav{flex-wrap:wrap;gap:12px}.hero,.location{grid-template-columns:1fr}.hero{min-height:auto}.hero-card{min-height:360px}.service-grid{grid-template-columns:1fr}.top-cta{display:none}}
@media (max-width:560px){.section{padding-left:16px;padding-right:16px}.hero h1{font-size:3rem}.hero-actions .btn{width:100%}.brand-text{font-size:.9rem}.hero-card{border-radius:28px;padding:24px}.gear-one{right:-10px}.gear-two{left:12px}.footer{display:block}.footer span{display:block;margin-top:8px}}
