:root {
  --ink: #18313a;
  --ink-2: #425b64;
  --brand: #177d79;
  --brand-dark: #0f5f5c;
  --brand-soft: #e8f4f2;
  --warm: #f7f6f1;
  --line: #dce5e4;
  --white: #ffffff;
  --shadow: 0 14px 34px rgba(24,49,58,.08);
  --radius: 18px;
  --max: 1180px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--ink); background: var(--white); line-height: 1.65; }
a { color: inherit; }
img { max-width: 100%; display: block; }
.container { width: min(calc(100% - 40px), var(--max)); margin: 0 auto; }
.skip-link { position:absolute; left:-999px; top:0; background:#fff; padding:10px 14px; z-index:9999; }
.skip-link:focus { left:12px; top:12px; }
.site-header { position: sticky; top:0; z-index:50; background: rgba(255,255,255,.96); backdrop-filter: blur(12px); border-bottom:1px solid rgba(220,229,228,.9); }
.nav-wrap { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:flex; align-items:center; gap:12px; text-decoration:none; font-weight:800; letter-spacing:-.02em; font-size:1.18rem; }
.brand-mark { width:38px; height:38px; border-radius:11px; background:var(--brand); color:#fff; display:grid; place-items:center; font-weight:800; }
.nav { display:flex; align-items:center; gap:8px; }
.nav a, .dropbtn { text-decoration:none; padding:10px 12px; border-radius:10px; font-weight:650; font-size:.95rem; background:none; border:0; color:var(--ink); cursor:pointer; font-family:inherit; }
.nav a:hover, .nav a:focus-visible, .dropbtn:hover, .dropbtn:focus-visible { background:var(--brand-soft); outline:none; }
.dropdown { position:relative; }
.dropdown-menu { display:none; position:absolute; right:0; top:100%; min-width:285px; background:#fff; border:1px solid var(--line); border-radius:14px; padding:8px; box-shadow:var(--shadow); }
.dropdown:hover .dropdown-menu, .dropdown:focus-within .dropdown-menu, .dropdown.open .dropdown-menu { display:block; }
.dropdown-menu a { display:block; }
.menu-toggle { display:none; background:none; border:1px solid var(--line); border-radius:10px; padding:9px 11px; font-size:1.15rem; }
.hero { padding:92px 0 76px; background:linear-gradient(180deg, #f4faf9 0%, #fff 100%); }
.eyebrow { color:var(--brand-dark); font-weight:800; text-transform:uppercase; letter-spacing:.1em; font-size:.76rem; }
h1,h2,h3 { line-height:1.12; letter-spacing:-.035em; margin:0 0 18px; }
h1 { font-size:clamp(2.55rem, 5vw, 4.65rem); max-width:930px; }
h2 { font-size:clamp(2rem, 3vw, 3rem); }
h3 { font-size:1.3rem; }
.lead { font-size:clamp(1.12rem, 1.8vw, 1.35rem); color:var(--ink-2); max-width:780px; }
.actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.btn { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 20px; border-radius:12px; text-decoration:none; font-weight:800; border:1px solid transparent; }
.btn-primary { background:var(--brand); color:#fff; }
.btn-primary:hover { background:var(--brand-dark); }
.btn-secondary { border-color:var(--line); background:#fff; }
.btn-secondary:hover { background:var(--warm); }
.section { padding:78px 0; }
.section-soft { background:var(--warm); }
.section-brand { background:var(--ink); color:#fff; }
.section-brand .lead, .section-brand p { color:#dce7ea; }
.section-head { max-width:760px; margin-bottom:34px; }
.grid { display:grid; gap:20px; }
.cards { grid-template-columns:repeat(3, minmax(0,1fr)); }
.card { border:1px solid var(--line); border-radius:var(--radius); padding:26px; background:#fff; box-shadow:0 6px 20px rgba(24,49,58,.04); }
.card.featured { border-color:#9bc9c5; background:linear-gradient(180deg,#fff,#f3faf9); }
.card p { color:var(--ink-2); }
.card-link { color:var(--brand-dark); text-decoration:none; font-weight:800; }
.two-col { display:grid; grid-template-columns:1.05fr .95fr; gap:48px; align-items:start; }
.pill-grid { display:flex; flex-wrap:wrap; gap:10px; }
.pill { padding:9px 13px; border:1px solid var(--line); border-radius:999px; background:#fff; font-weight:650; font-size:.93rem; }
.flow { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:28px; }
.flow-item { background:#fff; color:var(--ink); padding:18px 14px; border-radius:14px; text-align:center; font-weight:800; }
.page-hero { padding:68px 0 48px; background:#f4faf9; border-bottom:1px solid var(--line); }
.page-hero h1 { font-size:clamp(2.4rem,4.5vw,4rem); }
.prose { max-width:850px; }
.prose h2 { margin-top:48px; font-size:clamp(1.75rem,3vw,2.4rem); }
.prose h3 { margin-top:34px; }
.prose p, .prose li { color:var(--ink-2); }
.prose ul { padding-left:1.25rem; }
.callout { border-left:4px solid var(--brand); background:var(--brand-soft); padding:20px 24px; border-radius:0 14px 14px 0; margin:30px 0; }
.related { margin-top:54px; padding-top:30px; border-top:1px solid var(--line); }
.resource-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.resource-card { border:1px solid var(--line); border-radius:16px; padding:24px; background:#fff; }
.resource-card small { color:var(--brand-dark); font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.resource-card h3 { margin-top:8px; }
.form-wrap { max-width:760px; }
form { display:grid; gap:18px; }
label { display:grid; gap:7px; font-weight:750; }
input, select, textarea { width:100%; font:inherit; padding:13px 14px; border:1px solid #bfcfcd; border-radius:11px; background:#fff; color:var(--ink); }
input:focus, select:focus, textarea:focus { outline:3px solid rgba(23,125,121,.16); border-color:var(--brand); }
textarea { min-height:180px; resize:vertical; }
.form-note { font-size:.9rem; color:var(--ink-2); }
.form-status { display:none; background:var(--brand-soft); border-radius:12px; padding:14px 16px; font-weight:700; }
.site-footer { padding:42px 0; border-top:1px solid var(--line); background:#fbfcfb; }
.footer-grid { display:flex; justify-content:space-between; align-items:flex-start; gap:30px; }
.footer-links { display:flex; flex-wrap:wrap; gap:16px; }
.footer-links a { text-decoration:none; color:var(--ink-2); }
.muted { color:var(--ink-2); }
@media (max-width: 900px) {
  .cards { grid-template-columns:repeat(2, minmax(0,1fr)); }
  .two-col { grid-template-columns:1fr; }
  .flow { grid-template-columns:repeat(2,1fr); }
  .menu-toggle { display:block; }
  .nav { display:none; position:absolute; left:20px; right:20px; top:70px; background:#fff; border:1px solid var(--line); border-radius:16px; box-shadow:var(--shadow); padding:10px; flex-direction:column; align-items:stretch; }
  .nav.open { display:flex; }
  .dropdown-menu { position:static; box-shadow:none; border:0; padding-left:16px; min-width:0; }
  .nav a, .dropbtn { width:100%; text-align:left; }
}
@media (max-width: 620px) {
  .container { width:min(calc(100% - 28px),var(--max)); }
  .hero { padding:68px 0 58px; }
  .section { padding:58px 0; }
  .cards, .resource-grid { grid-template-columns:1fr; }
  .flow { grid-template-columns:1fr; }
  .footer-grid { flex-direction:column; }
  .actions .btn { width:100%; }
}

.hp-field { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
