/* ── Reset & Base ────────────────────────────────── */
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; }
    body {
      font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
      color: #113533;
      background: #fff;
      line-height: 1.6;
      -webkit-font-smoothing: antialiased;
    }
    img { max-width: 100%; display: block; }
    a { color: inherit; text-decoration: none; }
    ul, ol { list-style: none; }

    /* ── Utilities ───────────────────────────────────── */
    .container { max-width: 1140px; margin: 0 auto; padding: 0 24px; }
    .section-title { font-size: 2rem; font-weight: 800; margin-bottom: 16px; letter-spacing: -0.02em; }
    .section-sub { max-width: 680px; color: #4b5563; font-size: 1.125rem; margin-bottom: 40px; }
    .prose p { color: #374151; font-size: 1.0625rem; line-height: 1.8; margin-bottom: 20px; }
    .prose p:last-child { margin-bottom: 0; }
    .max-prose { max-width: 740px; }
    .btn {
      display: inline-flex; align-items: center; justify-content: center;
      padding: 14px 32px; border-radius: 10px; font-weight: 600; font-size: 1rem;
      transition: all 0.2s ease; cursor: pointer; border: none;
    }
    .btn-primary { background: #1e5a6e; color: #fff; }
    .btn-primary:hover { background: #1c89ad; transform: translateY(-1px); box-shadow: 0 4px 14px rgb(70 163 229 / 40%); }
    .btn-outline { border: 2px solid #1e5a6e; color: #1e5a6e; background: transparent; }
    .btn-outline:hover { background: #1e5a6e; color: #fff; }
    .btn-white { background: #fff; color: #1e5a6e; }
    .btn-white:hover { background: #d3dce3; transform: translateY(-1px); }

    /* ── Animations ──────────────────────────────────── */
    @keyframes fadeUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }
    .fade-up { animation: fadeUp 0.6s ease forwards; }
    .fade-up-d1 { animation-delay: 0.1s; opacity: 0; }
    .fade-up-d2 { animation-delay: 0.2s; opacity: 0; }
    .fade-up-d3 { animation-delay: 0.3s; opacity: 0; }

    /* ── Header / Nav ───────────────────────────────── */
    header {
      position: sticky; top: 0; z-index: 100;
      background: rgba(255,255,255,0.92); backdrop-filter: blur(12px);
      border-bottom: 1px solid rgba(0,0,0,0.06);
    }
    nav {
      display: flex; align-items: center; gap: 8px;
      max-width: 1140px; margin: 0 auto; padding: 0 24px; height: 64px;
    }
    .nav-logo { font-size: 1.4rem; font-weight: 800; letter-spacing: -0.02em; color: #1e5a6e; margin-right: auto; }
    .nav-links { display: flex; align-items: center; gap: 32px; }
    .nav-links a { font-size: 0.9375rem; font-weight: 500; color: #4b5563; transition: color 0.15s; }
    .nav-links a:hover { color: #1e5a6e; }
    .nav-cta { display: flex; align-items: center; gap: 16px; margin-left: 24px; }
    .nav-cta .signin { font-size: 0.9375rem; font-weight: 500; color: #4b5563; }
    .nav-cta .signin:hover { color: #1e5a6e; }
    .nav-cta .btn { padding: 10px 24px; font-size: 0.9375rem; }
    .nav-toggle { display: none; background: none; border: none; cursor: pointer; padding: 8px; }
    .nav-toggle span { display: block; width: 22px; height: 2px; background: #1e1b4b; margin: 5px 0; border-radius: 2px; transition: 0.3s; }

    /* ── Page Hero ───────────────────────────────────── */
    .page-hero {
      background: linear-gradient(135deg, #1e5a6e 0%, #3595a5 40%, #1e5a6e 100%);
      color: #fff;
      padding: 100px 0 80px;
    }
    .page-hero h1 { font-size: 3rem; font-weight: 800; letter-spacing: -0.03em; line-height: 1.15; max-width: 820px; margin-bottom: 24px; }
    .page-hero p { font-size: 1.25rem; color: rgba(255,255,255,0.82); max-width: 620px; line-height: 1.7; margin-bottom: 40px; }
    .hero-actions { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
    .hero-small { font-size: 0.875rem; color: rgba(255,255,255,0.5); margin-top: 14px; }

    /* ── Content Sections ────────────────────────────── */
    .content-section { padding: 80px 0; }
    .section-alt { background: #f8f7ff; }

    /* ── Cost Cards (Section 1) ──────────────────────── */
    .cost-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; max-width: 760px; margin-top: 36px; }
    .cost-card {
      padding: 28px 24px; border-radius: 12px; background: #fff;
      border: 1px solid #e5e7eb; transition: border-color 0.2s;
    }
    .cost-card:hover { border-color: #a7c5cc; }
    .cost-label { display: inline-block; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: #9ca3af; margin-bottom: 10px; }
    .cost-card h3 { font-size: 1rem; font-weight: 700; margin-bottom: 10px; color: #113533; }
    .cost-card p { font-size: 0.9375rem; color: #4b5563; line-height: 1.7; margin: 0; }

    /* ── Honest Split (Section 2) ────────────────────── */
    .honest-split { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; max-width: 820px; margin-top: 40px; }
    .honest-card { padding: 36px 28px; border-radius: 14px; border: 2px solid #e5e7eb; }
    .honest-card.honest-sn { border-color: #e5e7eb; background: #fafafa; }
    .honest-card.honest-ev { border-color: #1e5a6e; background: #f0f7f9; }
    .honest-eyebrow { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: 12px; }
    .honest-sn .honest-eyebrow { color: #9ca3af; }
    .honest-ev .honest-eyebrow { color: #1e5a6e; }
    .honest-card h3 { font-size: 1.125rem; font-weight: 800; margin-bottom: 16px; }
    .honest-sn h3 { color: #374151; }
    .honest-ev h3 { color: #113533; }
    .honest-list li {
      display: flex; align-items: flex-start; gap: 10px;
      font-size: 0.9375rem; color: #4b5563; padding: 9px 0;
      border-bottom: 1px solid #e5e7eb; line-height: 1.5;
    }
    .honest-list li:last-child { border-bottom: none; }
    .honest-sn .honest-list li::before { content: '—'; color: #d1d5db; flex-shrink: 0; margin-top: 1px; }
    .honest-ev .honest-list li::before { content: '✓'; color: #059669; font-weight: 700; flex-shrink: 0; margin-top: 1px; }

    /* ── Qualify Cards (Section 3) ───────────────────── */
    .qualify-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; max-width: 760px; margin-top: 36px; }
    .qualify-card {
      padding: 28px 24px; border-radius: 12px; border: 1px solid #e5e7eb;
      background: #fff; transition: border-color 0.2s;
    }
    .qualify-card:hover { border-color: #a7c5cc; }
    .qualify-check { font-size: 1.25rem; margin-bottom: 12px; }
    .qualify-card h3 { font-size: 1rem; font-weight: 700; margin-bottom: 8px; color: #059669; }
    .qualify-card p { font-size: 0.9375rem; color: #4b5563; line-height: 1.7; margin: 0; }

    /* ── Comparison Table ────────────────────────────── */
    .comparison-wrap { max-width: 860px; margin-top: 48px; overflow-x: auto; }
    .comparison-table { width: 100%; border-collapse: collapse; font-size: 0.9375rem; }
    .comparison-table thead tr { background: #1e5a6e; color: #fff; }
    .comparison-table thead th { padding: 16px 20px; text-align: left; font-weight: 700; font-size: 0.875rem; text-transform: uppercase; letter-spacing: 0.04em; }
    .comparison-table thead th:first-child { border-radius: 12px 0 0 0; }
    .comparison-table thead th:last-child { border-radius: 0 12px 0 0; }
    .comparison-table tbody tr { border-bottom: 1px solid #e5e7eb; transition: background 0.15s; }
    .comparison-table tbody tr:last-child { border-bottom: none; }
    .comparison-table tbody tr:hover { background: #f8f7ff; }
    .comparison-table tbody td { padding: 16px 20px; color: #374151; vertical-align: top; }
    .comparison-table tbody td:first-child { font-weight: 600; color: #113533; width: 26%; }
    .comparison-table .col-sn { color: #6b7280; }
    .comparison-table .col-ev { color: #1e5a6e; font-weight: 600; }
    .comparison-table .col-both { color: #374151; }

    /* ── Fit Cards (Section 4) ───────────────────────── */
    .fit-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 40px; max-width: 860px; }
    .fit-card {
      padding: 32px 24px; border-radius: 14px; background: #fff;
      border: 1px solid #e5e7eb; transition: all 0.25s;
    }
    .fit-card:hover { border-color: #a7c5cc; transform: translateY(-3px); box-shadow: 0 10px 28px rgba(30,90,110,0.08); }
    .fit-icon { width: 44px; height: 44px; border-radius: 10px; background: #d3dce3; display: flex; align-items: center; justify-content: center; font-size: 1.25rem; margin-bottom: 16px; }
    .fit-card h3 { font-size: 1rem; font-weight: 700; margin-bottom: 10px; color: #113533; }
    .fit-card p { font-size: 0.9375rem; color: #6b7280; line-height: 1.6; margin: 0; }

    /* ── Pricing Callout ─────────────────────────────── */
    .pricing-callout {
      display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;
      max-width: 680px; margin-top: 40px;
    }
    .pricing-tier {
      padding: 28px 24px; border-radius: 12px; border: 2px solid #e5e7eb;
      text-align: center; background: #fff; transition: all 0.2s;
    }
    .pricing-tier.featured { border-color: #1e5a6e; }
    .pricing-tier h3 { font-size: 0.875rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: #6b7280; margin-bottom: 12px; }
    .pricing-tier .price { font-size: 2rem; font-weight: 800; color: #113533; letter-spacing: -0.02em; line-height: 1; margin-bottom: 4px; }
    .pricing-tier .price span { font-size: 0.875rem; font-weight: 500; color: #9ca3af; }
    .pricing-tier .users { font-size: 0.875rem; color: #6b7280; margin-bottom: 0; }

    /* ── Internal Links ──────────────────────────────── */
    .internal-links { display: flex; flex-direction: column; gap: 12px; margin-top: 32px; max-width: 640px; }
    .internal-link-item {
      display: flex; align-items: center; gap: 14px;
      padding: 16px 20px; border-radius: 10px; border: 1px solid #e5e7eb;
      background: #fff; transition: all 0.2s;
    }
    .internal-link-item:hover { border-color: #1e5a6e; background: #f0f7f9; }
    .internal-link-item .link-arrow { color: #1e5a6e; font-size: 1.125rem; flex-shrink: 0; }
    .internal-link-item .link-text { flex: 1; }
    .internal-link-item .link-title { font-size: 0.9375rem; font-weight: 600; color: #113533; display: block; margin-bottom: 2px; }
    .internal-link-item .link-desc { font-size: 0.8125rem; color: #6b7280; }

    /* ── FAQ ──────────────────────────────────────────── */
    .faq-list { max-width: 720px; margin-top: 8px; }
    .faq-item { border-bottom: 1px solid #e5e7eb; padding: 4px 0; }
    .faq-item summary { font-size: 1.0625rem; font-weight: 600; padding: 18px 0; cursor: pointer; color: #113533; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 16px; }
    .faq-item summary::after { content: '+'; font-size: 1.25rem; font-weight: 400; color: #9ca3af; flex-shrink: 0; }
    .faq-item[open] summary::after { content: '−'; }
    .faq-item p { padding: 0 0 20px; color: #6b7280; font-size: 0.9375rem; max-width: 620px; line-height: 1.75; }
    @keyframes faq-open { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
    .faq-item[open] p { animation: faq-open 0.22s ease forwards; }

    /* ── CTA Banner ──────────────────────────────────── */
    .cta-banner {
      background: linear-gradient(135deg, #1b434b 0%, #2e7081 40%, #1e626e 100%);
      color: #fff; text-align: center; padding: 80px 0; position: relative; overflow: hidden;
    }
    .cta-banner::before {
      content: ''; position: absolute; inset: 0;
      background: radial-gradient(circle at 30% 50%, rgb(99 241 189 / 30%) 0%, transparent 50%);
    }
    .cta-banner .container { position: relative; z-index: 1; }
    .cta-banner h2 { font-size: 2.25rem; font-weight: 800; margin-bottom: 16px; letter-spacing: -0.02em; }
    .cta-banner p { color: rgba(255,255,255,0.7); font-size: 1.125rem; margin-bottom: 32px; }
    .cta-banner small { display: block; margin-top: 16px; color: rgba(255,255,255,0.5); font-size: 0.875rem; }

    /* ── Footer ──────────────────────────────────────── */
    footer { padding: 48px 0; border-top: 1px solid #e5e7eb; background: #fafafa; }
    .footer-inner { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; }
    .footer-logo { font-size: 1.125rem; font-weight: 800; color: #1e5a6e; }
    .footer-links { display: flex; gap: 24px; }
    .footer-links a { font-size: 0.875rem; color: #6b7280; transition: color 0.15s; }
    .footer-links a:hover { color: #1e5a6e; }
    .footer-copy { font-size: 0.8125rem; color: #9ca3af; }

    /* ── Misc ────────────────────────────────────────── */
    .section-divider { border: none; border-top: 1px solid #e5e7eb; margin: 0; }
    .breadcrumb-bar { padding: 14px 0; background: #f8f7ff; border-bottom: 1px solid #e5e7eb; }
    .breadcrumb-bar nav { font-size: 0.875rem; color: #6b7280; }
    .breadcrumb-bar a { color: #1e5a6e; }
    .breadcrumb-bar a:hover { text-decoration: underline; }
    .breadcrumb-sep { margin: 0 8px; color: #9ca3af; }

    /* ── Responsive ──────────────────────────────────── */
    @media (max-width: 1024px) {
      .fit-grid { grid-template-columns: repeat(2, 1fr); }
    }
    @media (max-width: 768px) {
      .page-hero h1 { font-size: 2.25rem; }
      .page-hero { padding: 72px 0 56px; }
      .content-section { padding: 56px 0; }
      .section-title { font-size: 1.625rem; }
      .nav-links, .nav-cta { display: none; }
      .nav-links.open, .nav-cta.open {
        display: flex; flex-direction: column; position: absolute;
        top: 64px; left: 0; right: 0; background: #fff; padding: 24px;
        border-bottom: 1px solid #e5e7eb; box-shadow: 0 8px 24px rgba(0,0,0,0.08);
      }
      .nav-cta.open { top: auto; padding-top: 0; box-shadow: none; border-bottom: none; }
      .nav-toggle { display: block; }
      .cost-grid, .qualify-grid { grid-template-columns: 1fr; }
      .honest-split { grid-template-columns: 1fr; }
      .fit-grid { grid-template-columns: 1fr; }
      .pricing-callout { grid-template-columns: 1fr; max-width: 280px; }
      .hero-actions { flex-direction: column; }
      .hero-actions .btn { width: 100%; max-width: 300px; }
      .footer-inner { flex-direction: column; text-align: center; }
    }
