
:root {
  --text-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);
  --text-sm: clamp(0.875rem, 0.8rem + 0.35vw, 1rem);
  --text-base: clamp(1rem, 0.95rem + 0.25vw, 1.125rem);
  --text-lg: clamp(1.125rem, 1rem + 0.75vw, 1.5rem);
  --text-xl: clamp(1.5rem, 1.2rem + 1.25vw, 2.25rem);
  --text-2xl: clamp(2rem, 1.2rem + 2.5vw, 3.5rem);
  --text-3xl: clamp(2.5rem, 1rem + 4vw, 5rem);
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;
  --radius-sm: 0.375rem;
  --radius-md: 0.75rem;
  --radius-lg: 1.25rem;
  --radius-xl: 1.75rem;
  --shadow-sm: 0 8px 24px rgba(17, 23, 29, 0.08);
  --shadow-md: 0 18px 48px rgba(17, 23, 29, 0.14);
  --content: 1180px;
  --font-display: 'Quicksand', sans-serif;
  --font-body: 'Quicksand', sans-serif;
}
*,:before,:after{box-sizing:border-box}
html{-webkit-text-size-adjust:none;text-size-adjust:none;scroll-behavior:smooth}
body{margin:0;min-height:100vh;font-family:var(--font-body);font-size:var(--text-base);line-height:1.65;color:#10222c;background:#fefdff}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}
p{max-width:72ch}
h1,h2,h3{line-height:1.05;margin:0;font-family:var(--font-display)}
p{margin:0}
.skip-link{position:absolute;left:-9999px;top:0}.skip-link:focus{left:var(--space-4);top:var(--space-4);background:#fff;padding:var(--space-3) var(--space-4);z-index:999;border-radius:var(--radius-sm)}
.site-header{position:sticky;top:0;z-index:100;background:rgba(254,253,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(16,34,44,.1)}
.nav-shell{max-width:var(--content);margin:0 auto;padding:var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}
.brand{display:flex;align-items:center;gap:var(--space-3);min-height:44px}.brand img{width:min(220px,42vw)}
.menu{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.menu a{min-height:44px;display:inline-flex;align-items:center;padding:0.8rem 1rem;border-radius:999px;font-size:var(--text-sm);font-weight:700;color:#10222c}.menu a[aria-current="page"],.menu a:hover,.menu a:focus-visible{background:#8eb1c7;color:#10222c}
main{overflow:hidden}.section,.hero{padding:clamp(var(--space-12),8vw,var(--space-24)) var(--space-4)}.container{max-width:var(--content);margin:0 auto}.hero-grid,.split-grid,.contact-grid{display:grid;gap:var(--space-8);align-items:center}.hero-grid{grid-template-columns:1.15fr .85fr}.split-grid,.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);padding:0.45rem 0.9rem;border-radius:999px;background:rgba(142,177,199,.16);color:#10222c;font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.hero h1{font-size:var(--text-3xl);letter-spacing:-0.04em;max-width:11ch}.hero p.lead,.intro p{font-size:var(--text-lg);max-width:38ch;color:rgba(16,34,44,.82)}.hero-copy,.stack{display:flex;flex-direction:column;gap:var(--space-6)}
.cta-row{display:flex;flex-wrap:wrap;gap:var(--space-3)}.btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:0.9rem 1.25rem;border-radius:999px;font-weight:700;border:1px solid transparent;box-shadow:var(--shadow-sm)}.btn-primary{background:#eb4511;color:#fefdff}.btn-primary:hover,.btn-primary:focus-visible{background:#b02e0c}.btn-secondary{background:transparent;border-color:rgba(16,34,44,.14);color:#10222c;box-shadow:none}.btn-secondary:hover,.btn-secondary:focus-visible{border-color:#10222c;background:rgba(142,177,199,.12)}
.hero-card,.panel,.quote-card,.contact-card{border-radius:var(--radius-xl);background:#fff;box-shadow:var(--shadow-md);border:1px solid rgba(16,34,44,.08)}.hero-card{padding:var(--space-8);background:linear-gradient(145deg,#10222c 0%, #b02e0c 58%, #eb4511 100%);color:#fefdff;position:relative;isolation:isolate}.hero-card:before{content:"";position:absolute;inset:auto -15% -20% auto;width:220px;height:220px;background:#8eb1c7;border-radius:50%;opacity:.16;filter:blur(5px)}
.stat-list{display:grid;gap:var(--space-4);position:relative;z-index:1}.stat{padding-bottom:var(--space-4);border-bottom:1px solid rgba(254,253,255,.18)}.stat:last-child{padding-bottom:0;border-bottom:none}.stat strong{display:block;font-size:var(--text-xl)}
.section-title{font-size:var(--text-2xl);letter-spacing:-0.03em;max-width:14ch}.section-head{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-8)}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}.panel{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4);background:linear-gradient(180deg,#ffffff 0%, #f7fafc 100%)}.panel strong{font-size:var(--text-lg)}
.kicker{font-size:var(--text-sm);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#b02e0c}.list{display:grid;gap:var(--space-3);padding:0;list-style:none}.list li{padding-left:1.1rem;position:relative}.list li:before{content:"";position:absolute;left:0;top:.72em;width:.5rem;height:.5rem;border-radius:50%;background:#eb4511}
.band{background:#10222c;color:#fefdff}.band .panel{background:rgba(254,253,255,.08);color:#fefdff;border-color:rgba(254,253,255,.12);box-shadow:none}.band .panel p,.band .intro p{color:rgba(254,253,255,.82)}.band .kicker{color:#8eb1c7}.quote-card,.contact-card{padding:var(--space-8)}.quote-card p{font-size:var(--text-xl);max-width:20ch}.quote-card span{display:block;margin-top:var(--space-4);font-size:var(--text-sm);font-weight:700;color:#b02e0c;text-transform:uppercase;letter-spacing:.06em}
.accent-strip{height:12px;border-radius:999px;background:linear-gradient(90deg,#8eb1c7 0 33%,#b02e0c 33% 66%,#eb4511 66% 100%)}.mail-link{font-size:var(--text-lg);font-weight:700;color:#b02e0c;word-break:break-word}
.site-footer{padding:var(--space-8) var(--space-4);border-top:1px solid rgba(16,34,44,.1);background:#f7f4f0}.footer-shell{max-width:var(--content);margin:0 auto;display:flex;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;color:rgba(16,34,44,.72);font-size:var(--text-sm)}
@media (max-width:980px){.hero-grid,.split-grid,.contact-grid,.cards{grid-template-columns:1fr}.hero h1{max-width:13ch}}
@media (max-width:700px){.nav-shell{align-items:flex-start;flex-direction:column}.brand img{width:min(200px,58vw)}.menu{width:100%;justify-content:flex-start}.hero-card,.panel,.quote-card,.contact-card{padding:var(--space-6)}}
