    :root {
      --cream: #f4efe6;
      --paper: #fbf8f2;
      --forest: #1b365d;
      --forest-deep: #12233f;
      --ink: #24332e;
      --muted: #5c6a64;
      --copper: #b07a55;
      --gold: #c4a36a;
      --line: rgba(30,58,50,.14);
      --serif: "Cormorant Garamond", Georgia, serif;
      --sans: "Outfit", "Helvetica Neue", sans-serif;
    }
    * { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; }
    body { font-family: var(--sans); background: var(--cream); color: var(--ink); line-height: 1.65; font-size: 17px; }
    img { max-width: 100%; display: block; }
    a { color: inherit; text-decoration: none; }
    .topbar {
      background: var(--forest-deep); color: #e8efe9;
      display: flex; justify-content: space-between; gap: 16px;
      padding: 9px 28px; font-size: 13px; letter-spacing: .02em;
    }
    .wrap { max-width: 1200px; margin: 0 auto; padding: 0 28px; }
    header.nav {
      position: sticky; top: 0; z-index: 50;
      background: rgba(251,248,242,.94); backdrop-filter: blur(16px);
      border-bottom: 1px solid var(--line);
    }
    .nav-inner { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 12px 28px; max-width: 1200px; margin: 0 auto; }
    .brand { display: flex; align-items: center; gap: 12px; }
    .brand svg { width: 54px; height: 54px; }
    .brand-name { font-family: var(--serif); font-size: 28px; line-height: 1; color: var(--forest); font-weight: 500; }
    .brand-sub { display: block; font-size: 10px; letter-spacing: .16em; text-transform: uppercase; color: var(--muted); margin-top: 3px; }
    .links { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
    .links a { padding: 8px 12px; font-size: 14.5px; color: var(--forest); }
    .btn {
      display: inline-flex; align-items: center; gap: 8px;
      background: var(--forest); color: #f7f3ea; border: 0;
      padding: 12px 18px; font: 500 14.5px var(--sans); cursor: pointer;
    }
    .btn:hover { background: var(--forest-deep); }
    .btn-ghost { background: transparent; color: var(--forest); border-bottom: 1px solid var(--forest); padding: 8px 0; }
    .hero { display: grid; grid-template-columns: 1fr 1fr; min-height: 640px; }
    .hero-copy { padding: 72px 36px 72px 8vw; display: flex; flex-direction: column; justify-content: center; }
    .kicker { color: var(--copper); letter-spacing: .2em; text-transform: uppercase; font-size: 12px; margin-bottom: 18px; }
    h1, h2, h3 { font-family: var(--serif); font-weight: 400; line-height: 1.08; color: var(--forest); }
    h1 { font-size: clamp(46px, 6.4vw, 78px); }
    h1 em { font-style: italic; color: var(--forest); }
    h2 { font-size: clamp(32px, 4.2vw, 52px); }
    h3 { font-size: 28px; }
    .lede { margin-top: 22px; max-width: 480px; color: var(--muted); font-size: 18px; }
    .hero-actions { display: flex; gap: 22px; align-items: center; margin-top: 32px; flex-wrap: wrap; }
    .hero-photo { position: relative; overflow: hidden; min-height: 520px; }
    .hero-photo img { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; }
    .motto {
      position: absolute; left: 0; bottom: 36px;
      background: var(--forest); color: #f3ead7; padding: 14px 36px;
      font-family: var(--serif); font-style: italic; font-size: 20px; letter-spacing: .08em;
    }
    .stats { display: grid; grid-template-columns: repeat(3,1fr); background: var(--paper); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
    .stat { padding: 28px; border-right: 1px solid var(--line); }
    .stat:last-child { border-right: 0; }
    .stat span { display: block; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--copper); margin-bottom: 8px; }
    .section { padding: 88px 0; }
    .split { display: grid; grid-template-columns: .9fr 1.1fr; gap: 64px; align-items: start; }
    .services { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-top: 40px; }
    .card { background: var(--paper); border: 1px solid var(--line); padding: 28px; }
    .num { font-family: var(--serif); color: var(--copper); font-size: 22px; }
    .card h3 { margin: 8px 0 10px; font-size: 26px; }
    .chips { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
    .chip { border: 1px solid var(--line); background: #fff; padding: 8px 14px; font-size: 14px; }
    .approach { background: var(--forest); color: #e7eee8; }
    .approach h2, .approach h3 { color: #f6f1e8; }
    .steps { display: grid; grid-template-columns: repeat(4,1fr); gap: 24px; margin-top: 40px; }
    .quote { font-family: var(--serif); font-style: italic; font-size: 26px; color: #f0d7b8; max-width: 720px; margin: 18px 0 8px; }
    .provider { display: grid; grid-template-columns: 280px 1fr; gap: 40px; align-items: center; }
    .avatar {
      width: 280px; height: auto; overflow: hidden; background: #f4efe6;
    }
    .avatar img { width: 100%; height: auto; display: block; object-fit: contain; object-position: top center; }
    .badges { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
    .badge { border: 1px solid var(--line); padding: 6px 12px; font-size: 13px; }
    .quiz { background: var(--paper); border: 1px solid var(--line); padding: 28px; margin-top: 24px; }
    .quiz label { display: block; margin: 14px 0 6px; font-size: 14px; }
    .quiz select, .quiz input, .quiz textarea {
      width: 100%; padding: 12px 14px; border: 1px solid var(--line);
      background: #fff; font: inherit;
    }
    .result { margin-top: 16px; padding: 16px; background: #efe6d6; display: none; }
    .faq details { border-bottom: 1px solid var(--line); padding: 16px 0; }
    .faq summary { cursor: pointer; font-weight: 500; color: var(--forest); }
    .faq p { margin-top: 8px; color: var(--muted); }
    footer { background: var(--forest-deep); color: #d5ddd8; padding: 56px 0 28px; }
    .foot-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 28px; }
    footer h4 { font-family: var(--serif); color: #f4efe6; font-size: 22px; margin-bottom: 10px; }
    .legal { margin-top: 28px; padding-top: 18px; border-top: 1px solid rgba(244,239,230,.15); font-size: 13px; opacity: .8; }

    .bleed {
      position: relative; min-height: 560px; display: grid; place-items: end start;
      background-size: cover; background-position: center; color: #f6f1e8;
    }
    .bleed:after {
      content: ""; position: absolute; inset: 0;
      background: linear-gradient(180deg, rgba(15,24,18,.25), rgba(15,24,18,.62));
    }
    .bleed .inner { position: relative; z-index: 1; max-width: 1200px; width: 100%; margin: 0 auto; padding: 72px 28px; }
    .bleed h2, .bleed p { color: #f6f1e8; }
    .bleed p { max-width: 720px; font-size: 18px; }
    .quote-band {
      background: #2a3a2e; color: #f3ead7; text-align: center; padding: 110px 28px;
    }
    .quote-band blockquote {
      font-family: var(--serif); font-style: italic; font-weight: 400;
      font-size: clamp(26px, 3.4vw, 40px); line-height: 1.35; max-width: 860px; margin: 0 auto 28px;
    }
    .quote-band cite {
      display: block; font-style: normal; letter-spacing: .22em; font-size: 13px; text-transform: uppercase; opacity: .8;
    }

    .access-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-top: 40px; }
    .access-grid .card p + p { margin-top: 10px; }
    .note { font-size: 14px; color: var(--muted); margin-top: 28px; }
    @media (max-width: 900px) { .access-grid { grid-template-columns: 1fr; } }
    .menu { display: none; background: none; border: 1px solid var(--forest); color: var(--forest); padding: 8px 12px; }
    .brand-board { margin-top: 48px; border: 1px solid var(--line); }
    .brand-board img { width: 100%; height: auto; }
    @media (max-width: 900px) {
      .hero, .split, .services, .steps, .provider, .stats, .foot-grid { grid-template-columns: 1fr; }
      .hero-copy { padding: 48px 24px; }
      .motto { position: static; }
      .links { display: none; }
      .links.open { display: flex; position: absolute; top: 100%; left: 0; right: 0; background: var(--paper); flex-direction: column; padding: 12px; border-bottom: 1px solid var(--line); }
      .menu { display: inline-block; }
      .topbar { flex-direction: column; text-align: center; }
      .avatar { width: min(100%, 360px); height: auto; }
    }

    .legal-links { display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:18px; font-size:13px; }
    .legal-links a { color:#e8efe9; opacity:.9; }
    .legal-links a:hover { text-decoration:underline; }
    .page-hero { padding:72px 0 20px; }
    .prose { max-width:760px; }
    .prose p { margin-top:14px; color:var(--muted); }
    .prose ul { margin:14px 0 0 20px; color:var(--muted); }
    .prose li { margin:6px 0; }
    footer a { color:#e8efe9; }

    .nav-tools { display:flex; align-items:center; gap:10px; }
    .drop { position:relative; }
    .drop > button {
      background:#fff; border:1px solid var(--line); color:var(--forest);
      padding:8px 14px; font:500 14.5px var(--sans); cursor:pointer;
    }
    .drop-panel {
      display:none; position:absolute; right:0; top:calc(100% + 6px);
      min-width:240px; background:#fff; border:1px solid var(--line);
      box-shadow:0 12px 40px rgba(18,35,63,.12); padding:8px 0; z-index:80;
    }
    .drop.open .drop-panel { display:block; }
    .drop-panel a { display:block; padding:10px 16px; font-size:14.5px; color:var(--forest); }
    .drop-panel a:hover { background:#f4efe6; }
    .links { display:none !important; }
    @media (max-width:900px) {
      .menu { display:none; }
    }

    .motto-line {
      margin: 10px 16px 6px; padding-top: 10px;
      border-top: 1px solid var(--line);
      font-family: var(--serif); font-style: italic;
      font-size: 14px; color: var(--forest);
    }

    .svc-hero { display:grid; grid-template-columns: 1fr 1fr; gap:48px; align-items:center; }
    .svc-photo { overflow:hidden; border-radius:28px 28px 8px 28px; background:#e8efe9; min-height:320px; }
    .svc-photo img { width:100%; height:100%; object-fit:cover; display:block; min-height:360px; }
    .svc-list { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:48px; }
    .svc-item { background:var(--paper); border:1px solid var(--line); padding:24px 26px; }
    .svc-item h3 { font-size:26px; margin-bottom:8px; }
    .svc-item p { color:var(--muted); }
    .svc-mark { font-family:var(--serif); color:var(--forest); font-size:20px; letter-spacing:.12em; }
    @media (max-width:900px) {
      .svc-hero, .svc-list { grid-template-columns:1fr; }
    }
