
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    :root {
      --navy:    #0D1B2A;
      --navy2:   #162336;
      --navy3:   #1e3a52;
      --gold:    #C49A3C;
      --gold-lt: #E8C97A;
      --gold-dim: rgba(196,154,60,0.15);
      --cream:   #F7F3EC;
      --cream2:  #EDE8DF;
      --cream3:  #E3DCCF;
      --text:    #1A2B3C;
      --muted:   #6B7C8D;
      --white:   #FFFFFF;
      --green:   #2E6B52;
      --radius:  10px;
      --max:     1100px;
    }

    html { scroll-behavior: smooth; }

    body {
      font-family: 'Jost', sans-serif;
      background: var(--cream);
      color: var(--text);
      min-height: 100vh;
      display: flex;
      flex-direction: column;
    }

    /* ─── SCROLLBAR ─── */
    ::-webkit-scrollbar { width: 6px; }
    ::-webkit-scrollbar-track { background: var(--cream2); }
    ::-webkit-scrollbar-thumb { background: var(--gold); border-radius: 3px; }

    /* ─── PAGE TRANSITIONS ─── */
    .page { display:block; flex:1; }
    .page.active { display:block; }
    @keyframes fadeUp {
      from { opacity: 0; transform: translateY(16px); }
      to   { opacity: 1; transform: translateY(0); }
    }

    /* ══════════════════════════════════
       HEADER / NAV
    ══════════════════════════════════ */
    header {
      background: var(--navy);
      border-bottom: 2px solid var(--gold);
      position: sticky;
      top: 0;
      z-index: 100;
    }

    .nav-inner {
      max-width: var(--max);
      margin: 0 auto;
      padding: 0 32px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      height: 84px;
    }

    .nav-logo img {
      height: 68px;
      width: auto;
      display: block;
    }

    nav { display: flex; gap: 4px; align-items: center; }

    nav a {
      font-size: 0.75rem;
      font-weight: 500;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.72);
      text-decoration: none;
      padding: 8px 16px;
      border-radius: 6px;
      transition: all 0.18s ease;
      cursor: pointer;
      border: none;
      background: none;
    }

    nav a:hover  { color: var(--gold-lt); background: rgba(196,154,60,0.1); }
    nav a.active { color: var(--gold-lt); }

    .nav-cta {
      margin-left: 8px;
      padding: 8px 18px !important;
      background: var(--gold) !important;
      color: var(--navy) !important;
      font-weight: 600 !important;
      border-radius: 6px;
    }

    .nav-cta:hover { background: var(--gold-lt) !important; }

    /* hamburger */
    .hamburger {
      display: none;
      flex-direction: column;
      gap: 5px;
      cursor: pointer;
      padding: 8px;
      border: none;
      background: none;
    }

    .hamburger span {
      display: block;
      width: 22px;
      height: 1.5px;
      background: var(--gold-lt);
      transition: all 0.2s;
    }

    .mobile-nav {
      display: none;
      flex-direction: column;
      background: var(--navy2);
      border-top: 1px solid rgba(196,154,60,0.2);
      padding: 12px 0 16px;
    }

    .mobile-nav.open { display: flex; }

    .mobile-nav a {
      padding: 11px 28px;
      font-size: 0.8rem;
      font-weight: 500;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.72);
      text-decoration: none;
      cursor: pointer;
      transition: color 0.15s;
    }

    .mobile-nav a:hover, .mobile-nav a.active { color: var(--gold-lt); }

    @media (max-width: 720px) {
      .hamburger { display: flex; }
      nav { display: none; }
      .nav-inner { height: 72px; }
    }

    /* ══════════════════════════════════
       SHARED LAYOUT
    ══════════════════════════════════ */
    .container {
      max-width: var(--max);
      margin: 0 auto;
      padding: 0 32px;
    }

    @media (max-width: 600px) { .container { padding: 0 20px; } }

    /* section labels */
    .eyebrow {
      font-size: 0.65rem;
      font-weight: 600;
      letter-spacing: 0.26em;
      text-transform: uppercase;
      color: var(--gold);
      display: block;
      margin-bottom: 12px;
    }

    h2.section-title {
      font-family: 'Cormorant Garamond', serif;
      font-size: clamp(1.9rem, 3.5vw, 2.6rem);
      font-weight: 500;
      color: var(--navy);
      line-height: 1.2;
    }

    h2.section-title em { font-style: italic; color: var(--gold); }

    .section-lead {
      font-size: 1rem;
      font-weight: 300;
      color: var(--muted);
      line-height: 1.75;
      max-width: 580px;
      margin-top: 14px;
    }

    .gold-rule {
      width: 48px;
      height: 2px;
      background: var(--gold);
      margin: 20px 0;
    }

    /* ══════════════════════════════════
       HERO (shared pattern)
    ══════════════════════════════════ */
    .hero {
      background: linear-gradient(140deg, var(--navy) 0%, var(--navy3) 100%);
      position: relative;
      overflow: hidden;
    }

    .hero::before {
      content: '';
      position: absolute;
      inset: 0;
      background: radial-gradient(ellipse 70% 90% at 60% 110%, rgba(196,154,60,0.13) 0%, transparent 65%);
      pointer-events: none;
    }

    /* compass watermark */
    .hero::after {
      content: '';
      position: absolute;
      right: -60px;
      top: 50%;
      transform: translateY(-50%);
      width: 480px;
      height: 480px;
      border-radius: 50%;
      border: 1px solid rgba(196,154,60,0.12);
      pointer-events: none;
    }

    .hero-inner {
      position: relative;
      z-index: 1;
      max-width: var(--max);
      margin: 0 auto;
      padding: 88px 32px 80px;
    }

    .hero-inner.center { text-align: center; }
    .hero-inner.center .section-lead { margin-inline: auto; }
    .hero-inner.center .gold-rule { margin-inline: auto; }

    .hero-inner h1 {
      font-family: 'Cormorant Garamond', serif;
      font-size: clamp(2.4rem, 5vw, 3.8rem);
      font-weight: 500;
      color: var(--white);
      line-height: 1.15;
    }

    .hero-inner h1 em { font-style: italic; color: var(--gold-lt); }

    .hero-inner .hero-lead {
      font-size: clamp(0.95rem, 1.8vw, 1.05rem);
      font-weight: 300;
      color: rgba(255,255,255,0.68);
      line-height: 1.8;
      max-width: 600px;
      margin-top: 18px;
    }

    .hero-inner.center .hero-lead { margin-inline: auto; }

    .hero-btns {
      display: flex;
      gap: 14px;
      flex-wrap: wrap;
      margin-top: 36px;
    }

    .hero-inner.center .hero-btns { justify-content: center; }

    .btn-primary {
      display: inline-block;
      padding: 14px 28px;
      background: var(--gold);
      color: var(--navy);
      text-decoration: none;
      border-radius: 7px;
      font-size: 0.78rem;
      font-weight: 600;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      transition: background 0.18s, transform 0.1s;
      cursor: pointer;
      border: none;
    }

    .btn-primary:hover { background: var(--gold-lt); }
    .btn-primary:active { transform: scale(0.98); }

    .btn-outline {
      display: inline-block;
      padding: 13px 28px;
      background: transparent;
      color: rgba(255,255,255,0.85);
      border: 1.5px solid rgba(255,255,255,0.35);
      text-decoration: none;
      border-radius: 7px;
      font-size: 0.78rem;
      font-weight: 500;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      transition: all 0.18s;
      cursor: pointer;
    }

    .btn-outline:hover { border-color: var(--gold-lt); color: var(--gold-lt); }

    @media (max-width: 600px) {
      .hero-inner { padding: 60px 20px 56px; }
    }

    /* ══════════════════════════════════
       HOME PAGE
    ══════════════════════════════════ */

    /* intro band */
    .intro-band {
      background: var(--white);
      padding: 72px 0;
    }

    .intro-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 64px;
      align-items: center;
    }

    @media (max-width: 760px) { .intro-grid { grid-template-columns: 1fr; gap: 36px; } }

    .intro-body p {
      font-size: 0.97rem;
      font-weight: 300;
      color: var(--text);
      line-height: 1.85;
      margin-bottom: 16px;
    }

    /* compass visual */
    .compass-visual {
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .compass-ring {
      position: relative;
      width: 260px;
      height: 260px;
      flex-shrink: 0;
      background: rgba(13,27,42,0.04);
      border-radius: 50%;
      border: 1px solid rgba(196,154,60,0.15);
    }

    .compass-ring svg { width: 100%; height: 100%; }

    /* services */
    .services-band {
      background: var(--cream);
      padding: 80px 0;
    }

    .services-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
      margin-top: 48px;
    }

    @media (max-width: 800px) { .services-grid { grid-template-columns: 1fr; } }
    @media (min-width: 801px) and (max-width: 1024px) { .services-grid { grid-template-columns: 1fr 1fr; } }

    .service-card {
      background: var(--white);
      border-radius: 12px;
      padding: 36px 30px;
      border: 1px solid var(--cream2);
      transition: box-shadow 0.2s, transform 0.2s;
    }

    .service-card:hover {
      box-shadow: 0 8px 32px rgba(13,27,42,0.08);
      transform: translateY(-3px);
    }

    .service-icon {
      width: 46px;
      height: 46px;
      background: var(--gold-dim);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 20px;
    }

    .service-icon svg { width: 22px; height: 22px; }

    .service-card h3 {
      font-family: 'Cormorant Garamond', serif;
      font-size: 1.3rem;
      font-weight: 600;
      color: var(--navy);
      margin-bottom: 10px;
    }

    .service-card p {
      font-size: 0.86rem;
      font-weight: 300;
      color: var(--muted);
      line-height: 1.75;
    }

    /* why band */
    .why-band {
      background: var(--navy);
      padding: 80px 0;
      position: relative;
      overflow: hidden;
    }

    .why-band::before {
      content: '';
      position: absolute;
      inset: 0;
      background: radial-gradient(ellipse 50% 80% at 90% 50%, rgba(196,154,60,0.08) 0%, transparent 70%);
      pointer-events: none;
    }

    .why-band .eyebrow { color: var(--gold-lt); }

    .why-band h2.section-title { color: var(--white); }
    .why-band h2.section-title em { color: var(--gold-lt); }
    .why-band .section-lead { color: rgba(255,255,255,0.6); }

    .why-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
      margin-top: 44px;
    }

    @media (max-width: 640px) { .why-grid { grid-template-columns: 1fr; } }

    .why-item {
      background: rgba(255,255,255,0.04);
      border: 1px solid rgba(196,154,60,0.15);
      border-radius: 10px;
      padding: 28px 26px;
      display: flex;
      gap: 18px;
      align-items: flex-start;
    }

    .why-num {
      font-family: 'Cormorant Garamond', serif;
      font-size: 1.8rem;
      font-weight: 600;
      color: var(--gold);
      line-height: 1;
      flex-shrink: 0;
      min-width: 32px;
    }

    .why-item h4 {
      font-size: 0.85rem;
      font-weight: 600;
      color: var(--white);
      letter-spacing: 0.06em;
      margin-bottom: 6px;
      text-transform: uppercase;
    }

    .why-item p {
      font-size: 0.83rem;
      font-weight: 300;
      color: rgba(255,255,255,0.58);
      line-height: 1.7;
    }

    /* cta band */
    .cta-band {
      background: var(--cream);
      padding: 80px 0;
      text-align: center;
    }

    .cta-band h2 {
      font-family: 'Cormorant Garamond', serif;
      font-size: clamp(1.8rem, 3vw, 2.4rem);
      font-weight: 500;
      color: var(--navy);
      margin-bottom: 14px;
    }

    .cta-band p {
      font-size: 0.95rem;
      font-weight: 300;
      color: var(--muted);
      max-width: 480px;
      margin: 0 auto 32px;
      line-height: 1.75;
    }

    .btn-dark {
      display: inline-block;
      padding: 14px 32px;
      background: var(--navy);
      color: var(--gold-lt);
      text-decoration: none;
      border-radius: 7px;
      font-size: 0.78rem;
      font-weight: 600;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      transition: background 0.18s;
      cursor: pointer;
      border: none;
    }

    .btn-dark:hover { background: #1a2f44; }

    /* ══════════════════════════════════
       OUR ETHOS PAGE
    ══════════════════════════════════ */
    .ethos-body {
      background: var(--white);
      padding: 72px 0;
    }

    .mission-vision {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 56px;
      align-items: start;
    }

    @media (max-width: 720px) { .mission-vision { grid-template-columns: 1fr; gap: 40px; } }

    .mv-block .eyebrow { margin-bottom: 8px; }

    .mv-block h3 {
      font-family: 'Cormorant Garamond', serif;
      font-size: 1.6rem;
      font-weight: 600;
      color: var(--navy);
      margin-bottom: 14px;
    }

    .mv-block p {
      font-size: 0.93rem;
      font-weight: 300;
      color: var(--text);
      line-height: 1.85;
    }

    /* founder */
    .founder-band {
      background: var(--cream);
      padding: 80px 0;
    }

    .founder-grid {
      display: grid;
      grid-template-columns: 260px 1fr;
      gap: 56px;
      align-items: start;
    }

    @media (max-width: 760px) { .founder-grid { grid-template-columns: 1fr; gap: 36px; } }

    .founder-photo {
      width: 100%;
      aspect-ratio: 1;
      border-radius: 12px;
      background: var(--cream2);
      overflow: hidden;
      border: 3px solid var(--white);
      box-shadow: 0 8px 32px rgba(13,27,42,0.10);
    }

    .founder-photo img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    .founder-content p {
      font-size: 0.93rem;
      font-weight: 300;
      color: var(--text);
      line-height: 1.85;
      margin-bottom: 16px;
    }

    .founder-quote {
      margin: 28px 0;
      padding: 24px 28px;
      background: var(--navy);
      border-radius: 10px;
      border-left: 4px solid var(--gold);
    }

    .founder-quote p {
      font-family: 'Cormorant Garamond', serif;
      font-size: 1.05rem;
      font-style: italic;
      color: rgba(255,255,255,0.88);
      line-height: 1.75;
      margin-bottom: 10px;
    }

    .founder-quote cite {
      font-size: 0.72rem;
      font-weight: 500;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      color: var(--gold-lt);
      font-style: normal;
    }

    /* ══════════════════════════════════
       PARTNERSHIP PAGE
    ══════════════════════════════════ */
    .partnership-body {
      background: var(--white);
      padding: 72px 0;
    }

    .tenets-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 24px;
      margin-top: 48px;
    }

    @media (max-width: 680px) { .tenets-grid { grid-template-columns: 1fr; } }

    .tenet-card {
      border-radius: 12px;
      padding: 34px 30px;
      border: 1px solid var(--cream2);
      background: var(--cream);
      position: relative;
      overflow: hidden;
      transition: box-shadow 0.2s, transform 0.2s;
    }

    .tenet-card:hover {
      box-shadow: 0 8px 28px rgba(13,27,42,0.08);
      transform: translateY(-2px);
    }

    .tenet-card::before {
      content: '';
      position: absolute;
      top: 0; left: 0;
      width: 4px;
      height: 100%;
      background: var(--gold);
    }

    .tenet-num {
      font-family: 'Cormorant Garamond', serif;
      font-size: 2.4rem;
      font-weight: 600;
      color: var(--gold);
      opacity: 0.35;
      line-height: 1;
      margin-bottom: 14px;
    }

    .tenet-card h3 {
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.22em;
      text-transform: uppercase;
      color: var(--navy);
      margin-bottom: 10px;
    }

    .tenet-card p {
      font-size: 0.88rem;
      font-weight: 300;
      color: var(--muted);
      line-height: 1.75;
    }

    /* who we serve */
    .serve-band {
      background: var(--cream);
      padding: 72px 0;
    }

    .serve-cols {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 40px;
      margin-top: 44px;
    }

    @media (max-width: 680px) { .serve-cols { grid-template-columns: 1fr; gap: 28px; } }

    .serve-col h3 {
      font-family: 'Cormorant Garamond', serif;
      font-size: 1.3rem;
      font-weight: 600;
      color: var(--navy);
      margin-bottom: 14px;
      padding-bottom: 10px;
      border-bottom: 1px solid var(--cream3);
    }

    .serve-col ul {
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: 10px;
    }

    .serve-col li {
      display: flex;
      align-items: flex-start;
      gap: 10px;
      font-size: 0.88rem;
      font-weight: 300;
      color: var(--text);
      line-height: 1.6;
    }

    .serve-col li::before {
      content: '';
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: var(--gold);
      flex-shrink: 0;
      margin-top: 7px;
    }

    /* ══════════════════════════════════
       CONTACT PAGE
    ══════════════════════════════════ */
    .contact-body {
      background: var(--white);
      padding: 72px 0;
    }

    .contact-grid {
      display: grid;
      grid-template-columns: 1fr 380px;
      gap: 64px;
      align-items: start;
    }

    @media (max-width: 860px) { .contact-grid { grid-template-columns: 1fr; gap: 44px; } }

    /* form */
    .contact-form { display: flex; flex-direction: column; gap: 18px; }

    .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
    @media (max-width: 520px) { .form-row { grid-template-columns: 1fr; } }

    .field { display: flex; flex-direction: column; gap: 6px; }

    .field label {
      font-size: 0.75rem;
      font-weight: 500;
      color: var(--text);
      letter-spacing: 0.04em;
    }

    .field input,
    .field textarea,
    .field select {
      font-family: 'Jost', sans-serif;
      font-size: 0.88rem;
      color: var(--text);
      background: var(--cream);
      border: 1.5px solid var(--cream2);
      border-radius: 7px;
      padding: 11px 14px;
      outline: none;
      transition: border-color 0.16s, background 0.16s;
      width: 100%;
    }

    .field input:focus,
    .field textarea:focus,
    .field select:focus { border-color: var(--gold); background: var(--white); }

    .field textarea { resize: vertical; min-height: 130px; }

    .form-submit {
      margin-top: 6px;
      padding: 14px;
      background: var(--navy);
      color: var(--gold-lt);
      border: none;
      border-radius: 7px;
      font-family: 'Jost', sans-serif;
      font-size: 0.78rem;
      font-weight: 600;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      cursor: pointer;
      transition: background 0.18s;
    }

    .form-submit:hover { background: #1a2f44; }

    /* contact info panel */
    .contact-info {
      background: var(--navy);
      border-radius: 14px;
      overflow: hidden;
    }

    .contact-info-header {
      background: var(--gold);
      padding: 22px 28px;
    }

    .contact-info-header h3 {
      font-family: 'Cormorant Garamond', serif;
      font-size: 1.3rem;
      font-weight: 600;
      color: var(--navy);
    }

    .contact-info-body { padding: 28px; }

    .info-block {
      margin-bottom: 28px;
    }

    .info-block:last-child { margin-bottom: 0; }

    .info-label {
      font-size: 0.63rem;
      font-weight: 600;
      letter-spacing: 0.22em;
      text-transform: uppercase;
      color: var(--gold-lt);
      margin-bottom: 8px;
    }

    .info-block p, .info-block a {
      font-size: 0.88rem;
      font-weight: 300;
      color: rgba(255,255,255,0.78);
      line-height: 1.7;
      text-decoration: none;
      display: block;
    }

    .info-block a:hover { color: var(--gold-lt); }

    .hours-row {
      display: flex;
      justify-content: space-between;
      font-size: 0.84rem;
      font-weight: 300;
      color: rgba(255,255,255,0.7);
      padding: 5px 0;
      border-bottom: 1px solid rgba(255,255,255,0.07);
    }

    .hours-row:last-child { border-bottom: none; }
    .hours-row span:last-child { color: rgba(255,255,255,0.45); }

    .calendly-btn {
      display: block;
      margin-top: 22px;
      padding: 13px 20px;
      background: var(--gold);
      color: var(--navy);
      text-align: center;
      text-decoration: none;
      border-radius: 7px;
      font-size: 0.75rem;
      font-weight: 600;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      transition: background 0.18s;
    }

    .calendly-btn:hover { background: var(--gold-lt); }

    /* ══════════════════════════════════
       FOOTER
    ══════════════════════════════════ */
    footer {
      background: var(--navy);
      border-top: 2px solid var(--gold);
    }

    .footer-inner {
      max-width: var(--max);
      margin: 0 auto;
      padding: 52px 32px 32px;
    }

    .footer-top {
      display: grid;
      grid-template-columns: 1.4fr 1fr 1fr 1fr;
      gap: 40px;
      padding-bottom: 40px;
      border-bottom: 1px solid rgba(255,255,255,0.08);
    }

    @media (max-width: 860px) {
      .footer-top { grid-template-columns: 1fr 1fr; gap: 32px; }
    }

    @media (max-width: 520px) {
      .footer-top { grid-template-columns: 1fr; gap: 28px; }
    }

    .footer-logo img { height: 38px; margin-bottom: 14px; }

    .footer-tagline {
      font-size: 0.8rem;
      font-weight: 300;
      color: rgba(255,255,255,0.45);
      line-height: 1.65;
      max-width: 220px;
    }

    .footer-col h4 {
      font-size: 0.65rem;
      font-weight: 600;
      letter-spacing: 0.22em;
      text-transform: uppercase;
      color: var(--gold-lt);
      margin-bottom: 14px;
    }

    .footer-col a,
    .footer-col p {
      display: block;
      font-size: 0.82rem;
      font-weight: 300;
      color: rgba(255,255,255,0.5);
      text-decoration: none;
      margin-bottom: 8px;
      cursor: pointer;
      transition: color 0.15s;
      line-height: 1.6;
    }

    .footer-col a:hover { color: var(--gold-lt); }

    .footer-bottom {
      padding-top: 24px;
      font-size: 0.68rem;
      font-weight: 300;
      color: rgba(255,255,255,0.28);
      line-height: 1.75;
      text-align: center;
    }

    .footer-bottom strong { color: rgba(255,255,255,0.45); }


    /* ═══ CALCULATOR STYLES ═══ */
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    
        :root {
          --navy:    #0D1B2A;
          --navy2:   #162336;
          --gold:    #C49A3C;
          --gold-lt: #E8C97A;
          --cream:   #F7F3EC;
          --cream2:  #EDE8DF;
          --text:    #1A2B3C;
          --muted:   #6B7C8D;
          --white:   #FFFFFF;
          --green:   #2E6B52;
          --red:     #8B2E2E;
          --radius:  10px;
        }
    
        html { scroll-behavior: smooth; }
    
        body {
          font-family: 'Jost', sans-serif;
          background: var(--cream);
          color: var(--text);
          min-height: 100vh;
        }
    
    
        /* ═══ HERO ═══ */
        .hero {
          background: linear-gradient(135deg, var(--navy2) 0%, #1e3a52 100%);
          padding: 50px 40px 42px;
          text-align: center;
          position: relative;
          overflow: hidden;
        }
    
        .hero::before {
          content: '';
          position: absolute;
          inset: 0;
          background: radial-gradient(ellipse 60% 80% at 50% 110%, rgba(196,154,60,0.15) 0%, transparent 70%);
        }
    
        .hero h1 {
          font-family: 'Cormorant Garamond', serif;
          font-size: clamp(1.9rem, 4vw, 2.8rem);
          font-weight: 500;
          color: var(--white);
          position: relative;
          line-height: 1.2;
        }
    
        .hero h1 em { font-style: italic; color: var(--gold-lt); }
    
        .hero p {
          margin-top: 12px;
          font-size: 0.93rem;
          color: rgba(255,255,255,0.7);
          max-width: 580px;
          margin-inline: auto;
          line-height: 1.7;
          position: relative;
        }
    
        /* ═══ TABS ═══ */
        .tab-row {
          display: flex;
          justify-content: center;
          flex-wrap: wrap;
          gap: 0;
          padding: 30px 20px 0;
          max-width: 860px;
          margin: 0 auto;
        }
    
        .tab-btn {
          font-family: 'Jost', sans-serif;
          font-size: 0.75rem;
          font-weight: 500;
          letter-spacing: 0.13em;
          text-transform: uppercase;
          padding: 12px 22px;
          border: 2px solid var(--navy);
          background: transparent;
          color: var(--navy);
          cursor: pointer;
          transition: all 0.2s ease;
          white-space: nowrap;
          display: flex;
          align-items: center;
          gap: 7px;
        }
    
        .tab-btn:first-child { border-radius: var(--radius) 0 0 var(--radius); }
        .tab-btn:last-child  { border-radius: 0 var(--radius) var(--radius) 0; }
        .tab-btn:not(:first-child) { border-left-width: 1px; }
        .tab-btn:not(:last-child)  { border-right-width: 1px; }
    
        .tab-btn.active { background: var(--navy); color: var(--gold-lt); }
        .tab-btn:not(.active):hover { background: var(--cream2); }
    
        .tab-icon { width: 14px; height: 14px; opacity: 0.75; }
        .tab-btn.active .tab-icon { opacity: 1; }
    
        @media (max-width: 640px) {
          .tab-row { gap: 8px; }
          .tab-btn { border-radius: var(--radius) !important; border-width: 2px !important; font-size: 0.7rem; padding: 10px 14px; }
        }
    
        /* ═══ CARD SHELL ═══ */
        .card-wrap {
          max-width: 820px;
          margin: 26px auto 60px;
          padding: 0 20px;
        }
    
        .calc-panel {
          display: none;
          background: var(--white);
          border-radius: 14px;
          box-shadow: 0 4px 32px rgba(13,27,42,0.10);
          overflow: hidden;
          animation: fadeUp 0.32s ease;
        }
    
        .calc-panel.active { display: block; }
    
        @keyframes fadeUp {
          from { opacity: 0; transform: translateY(12px); }
          to   { opacity: 1; transform: translateY(0); }
        }
    
        .panel-header {
          background: var(--navy);
          padding: 24px 36px 22px;
          display: flex;
          align-items: flex-start;
          gap: 18px;
        }
    
        .panel-icon {
          width: 40px; height: 40px;
          background: rgba(196,154,60,0.18);
          border-radius: 50%;
          display: flex; align-items: center; justify-content: center;
          flex-shrink: 0;
          margin-top: 2px;
        }
    
        .panel-icon svg { width: 20px; height: 20px; }
    
        .panel-header h2 {
          font-family: 'Cormorant Garamond', serif;
          font-size: 1.45rem;
          font-weight: 600;
          color: var(--white);
          line-height: 1.2;
        }
    
        .panel-header p {
          font-size: 0.8rem;
          color: rgba(255,255,255,0.6);
          margin-top: 5px;
          line-height: 1.55;
        }
    
        /* ═══ FORM BODY ═══ */
        .panel-body { padding: 32px 36px; }
    
        .section-label {
          font-size: 0.65rem;
          font-weight: 600;
          letter-spacing: 0.22em;
          text-transform: uppercase;
          color: var(--gold);
          margin: 24px 0 13px;
        }
    
        .section-label:first-child { margin-top: 0; }
    
        .field-grid {
          display: grid;
          grid-template-columns: 1fr 1fr;
          gap: 13px 18px;
        }
    
        .field { display: flex; flex-direction: column; gap: 5px; }
        .field.full { grid-column: 1 / -1; }
    
        label {
          font-size: 0.77rem;
          font-weight: 500;
          color: var(--text);
          display: flex;
          align-items: center;
          gap: 4px;
          flex-wrap: wrap;
        }
    
        .hint {
          font-weight: 300;
          color: var(--muted);
          font-size: 0.7rem;
        }
    
        .input-wrap {
          display: flex;
          align-items: center;
          border: 1.5px solid var(--cream2);
          border-radius: 7px;
          overflow: hidden;
          background: var(--cream);
          transition: border-color 0.18s;
        }
    
        .input-wrap:focus-within { border-color: var(--gold); background: var(--white); }
    
        .input-prefix, .input-suffix {
          padding: 0 10px;
          font-size: 0.8rem;
          color: var(--muted);
          background: transparent;
          user-select: none;
          flex-shrink: 0;
        }
    
        input[type="number"], select {
          flex: 1;
          border: none;
          background: transparent;
          padding: 10px 8px;
          font-family: 'Jost', sans-serif;
          font-size: 0.87rem;
          color: var(--text);
          outline: none;
          min-width: 0;
        }
    
        select { cursor: pointer; }
    
        /* ═══ BADGES ═══ */
        .badge-group { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 2px; }
    
        .badge {
          padding: 6px 14px;
          border-radius: 30px;
          font-size: 0.72rem;
          font-weight: 500;
          border: 1.5px solid var(--cream2);
          color: var(--muted);
          cursor: pointer;
          transition: all 0.18s;
          background: var(--cream);
          user-select: none;
        }
    
        .badge.selected { background: var(--navy); color: var(--gold-lt); border-color: var(--navy); }
        .badge:not(.selected):hover { border-color: var(--gold); color: var(--text); }
    
        /* ═══ CALC BUTTON ═══ */
        .calc-btn {
          margin-top: 26px;
          width: 100%;
          padding: 14px;
          background: var(--navy);
          color: var(--gold-lt);
          border: none;
          border-radius: 8px;
          font-family: 'Jost', sans-serif;
          font-size: 0.78rem;
          font-weight: 600;
          letter-spacing: 0.18em;
          text-transform: uppercase;
          cursor: pointer;
          transition: background 0.2s, transform 0.1s;
          display: flex;
          align-items: center;
          justify-content: center;
          gap: 10px;
        }
    
        .calc-btn:hover { background: #1a2f44; }
        .calc-btn:active { transform: scale(0.99); }
    
        /* ═══ RESULTS ═══ */
        .result-box { display: none; margin-top: 26px; border-radius: 10px; overflow: hidden; animation: fadeUp 0.3s ease; }
        .result-box.visible { display: block; }
    
        .result-top {
          background: var(--navy);
          padding: 24px 30px;
        }
    
        .result-label {
          font-size: 0.66rem;
          letter-spacing: 0.2em;
          text-transform: uppercase;
          color: var(--gold-lt);
          font-weight: 500;
        }
    
        .result-number {
          font-family: 'Cormorant Garamond', serif;
          font-size: clamp(1.9rem, 5vw, 2.7rem);
          font-weight: 600;
          color: var(--white);
          line-height: 1.1;
          margin-top: 4px;
        }
    
        .result-sub {
          font-size: 0.73rem;
          color: rgba(255,255,255,0.5);
          margin-top: 4px;
        }
    
        .result-breakdown {
          background: var(--cream);
          padding: 20px 30px;
        }
    
        .breakdown-title {
          font-size: 0.65rem;
          font-weight: 600;
          letter-spacing: 0.2em;
          text-transform: uppercase;
          color: var(--muted);
          margin-bottom: 12px;
        }
    
        .breakdown-row {
          display: flex;
          justify-content: space-between;
          align-items: center;
          padding: 7px 0;
          border-bottom: 1px solid var(--cream2);
          font-size: 0.82rem;
          gap: 12px;
        }
    
        .breakdown-row:last-child { border-bottom: none; }
    
        .breakdown-row .lbl { color: var(--muted); display: flex; align-items: center; gap: 4px; }
        .breakdown-row .val { font-weight: 600; color: var(--text); white-space: nowrap; }
        .breakdown-row .val.deduct { color: var(--green); }
        .breakdown-row .val.total { color: var(--navy); font-size: 0.93rem; }
        .breakdown-row .val.warn { color: var(--red); }
        .breakdown-divider { margin: 8px 0; border-top: 2px solid var(--cream2); padding-top: 10px; }
    
        .result-cta {
          background: var(--gold);
          padding: 18px 30px;
          display: flex;
          align-items: center;
          justify-content: space-between;
          gap: 14px;
          flex-wrap: wrap;
        }
    
        .result-cta p { font-size: 0.83rem; font-weight: 500; color: var(--navy); line-height: 1.4; }
    
        .cta-btn {
          display: inline-block;
          padding: 10px 22px;
          background: var(--navy);
          color: var(--gold-lt);
          text-decoration: none;
          border-radius: 6px;
          font-size: 0.72rem;
          font-weight: 600;
          letter-spacing: 0.14em;
          text-transform: uppercase;
          white-space: nowrap;
          transition: background 0.2s;
        }
    
        .cta-btn:hover { background: #1a2f44; }
    
        .disclaimer {
          padding: 16px 30px;
          background: #f9f7f4;
          font-size: 0.68rem;
          color: var(--muted);
          line-height: 1.65;
          border-top: 1px solid var(--cream2);
        }
    
        /* ═══ TOOLTIPS ═══ */
        .tip {
          display: inline-flex;
          align-items: center;
          justify-content: center;
          width: 14px; height: 14px;
          border-radius: 50%;
          background: var(--gold);
          color: var(--navy);
          font-size: 0.55rem;
          font-weight: 700;
          cursor: pointer;
          flex-shrink: 0;
          position: relative;
          vertical-align: middle;
          transition: background 0.15s;
          font-family: 'Jost', sans-serif;
        }
    
        .tip:hover { background: var(--gold-lt); }
    
        #tooltip-box {
          position: fixed;
          z-index: 9999;
          max-width: 280px;
          background: var(--navy);
          color: rgba(255,255,255,0.9);
          font-family: 'Jost', sans-serif;
          font-size: 0.77rem;
          line-height: 1.6;
          padding: 12px 16px;
          border-radius: 8px;
          border-left: 3px solid var(--gold);
          box-shadow: 0 8px 28px rgba(0,0,0,0.25);
          pointer-events: none;
          opacity: 0;
          transition: opacity 0.18s ease;
        }
    
        #tooltip-box.visible { opacity: 1; }
    
        #tooltip-box strong {
          display: block;
          font-size: 0.7rem;
          letter-spacing: 0.1em;
          text-transform: uppercase;
          color: var(--gold-lt);
          margin-bottom: 4px;
        }
    
        /* ═══ HIGHLIGHT STAT BLOCKS ═══ */
        .stat-row {
          display: grid;
          grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
          gap: 12px;
          margin: 16px 0 0;
        }
    
        .stat-card {
          background: var(--navy);
          border-radius: 8px;
          padding: 14px 18px;
          text-align: center;
        }
    
        .stat-card .sc-label {
          font-size: 0.63rem;
          letter-spacing: 0.15em;
          text-transform: uppercase;
          color: rgba(255,255,255,0.55);
          margin-bottom: 4px;
        }
    
        .stat-card .sc-value {
          font-family: 'Cormorant Garamond', serif;
          font-size: 1.45rem;
          font-weight: 600;
          color: var(--gold-lt);
        }
    
        .stat-card .sc-sub {
          font-size: 0.65rem;
          color: rgba(255,255,255,0.4);
          margin-top: 2px;
        }
    
        /* ═══ FOOTER ═══ */
        footer {
          background: var(--navy);
          text-align: center;
          padding: 26px 20px;
          font-size: 0.67rem;
          color: rgba(255,255,255,0.38);
          line-height: 1.75;
          letter-spacing: 0.03em;
        }
    
        footer strong { color: rgba(255,255,255,0.55); }
    
        @media (max-width: 560px) {
          .field-grid { grid-template-columns: 1fr; }
          .panel-body { padding: 22px 18px; }
          .panel-header { padding: 18px 18px 16px; }
          .result-breakdown { padding: 16px 18px; }
          .result-top { padding: 20px 18px; }
          .result-cta { padding: 16px 18px; }
          .disclaimer { padding: 14px 18px; }
        }
  

    /* ═══ VERSION 2 ENHANCEMENTS ═══ */
    header { box-shadow: 0 4px 18px rgba(0,0,0,.14); }
    .nav-inner { height: 96px; }
    .nav-logo img { height: 80px; }
    .nav-meeting { margin-left: 8px; }
    .audience-band { background: var(--white); padding: 34px 0; border-bottom: 1px solid var(--cream2); }
    .audience-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
    .audience-card { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:24px 26px; border:1px solid var(--cream2); border-radius:12px; background:var(--cream); cursor:pointer; transition:.2s ease; }
    .audience-card:hover { transform:translateY(-2px); box-shadow:0 8px 26px rgba(13,27,42,.08); border-color:rgba(196,154,60,.45); }
    .audience-card h3 { font-family:'Cormorant Garamond',serif; font-size:1.35rem; color:var(--navy); margin-bottom:4px; }
    .audience-card p { color:var(--muted); font-size:.83rem; line-height:1.55; }
    .audience-arrow { color:var(--gold); font-size:1.5rem; flex-shrink:0; }
    .credibility-strip { background:var(--navy2); padding:19px 0; }
    .credibility-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; text-align:center; }
    .credibility-item { color:rgba(255,255,255,.78); font-size:.72rem; letter-spacing:.11em; text-transform:uppercase; padding:5px 10px; }
    .credibility-item strong { color:var(--gold-lt); display:block; font-family:'Cormorant Garamond',serif; font-size:1.2rem; letter-spacing:0; text-transform:none; margin-bottom:2px; }
    .process-band { background:var(--white); padding:80px 0; }
    .process-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:44px; }
    .process-step { position:relative; padding:28px 24px; border:1px solid var(--cream2); border-radius:12px; background:var(--cream); }
    .process-step:not(:last-child)::after { content:'→'; position:absolute; right:-15px; top:50%; transform:translateY(-50%); color:var(--gold); font-size:1.25rem; z-index:2; }
    .process-num { color:var(--gold); font-family:'Cormorant Garamond',serif; font-size:1.8rem; font-weight:600; }
    .process-step h3 { font-size:.78rem; text-transform:uppercase; letter-spacing:.14em; color:var(--navy); margin:8px 0; }
    .process-step p { color:var(--muted); font-size:.82rem; line-height:1.65; }
    .career-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:28px; }
    .career-card { background:var(--white); border:1px solid var(--cream2); border-radius:10px; padding:18px; }
    .career-card strong { display:block; color:var(--gold); font-family:'Cormorant Garamond',serif; font-size:1.18rem; margin-bottom:5px; }
    .career-card span { font-size:.78rem; color:var(--muted); line-height:1.5; }
    .tool-intro-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; margin:30px auto 0; max-width:1040px; padding:0 20px; }
    .tool-jump { background:var(--white); border:1px solid var(--cream2); border-radius:10px; padding:16px 12px; text-align:center; cursor:pointer; font-size:.72rem; font-weight:600; color:var(--navy); letter-spacing:.05em; transition:.18s; }
    .tool-jump:hover { border-color:var(--gold); transform:translateY(-2px); }
    .typeform-panel { padding:0; min-height:650px; background:var(--white); }
    .typeform-copy { padding:30px 36px 10px; }
    .typeform-copy p { color:var(--muted); line-height:1.7; font-size:.9rem; }
    .typeform-embed { min-height:560px; }
    .about-summary { font-size:1.02rem !important; color:var(--navy) !important; }
    @media(max-width:900px){ .process-grid,.career-grid{grid-template-columns:1fr 1fr}.tool-intro-grid{grid-template-columns:repeat(2,1fr)}.credibility-grid{grid-template-columns:1fr 1fr} }
    @media(max-width:720px){ .nav-inner{height:78px}.nav-logo img{height:64px}.audience-grid,.process-grid,.career-grid{grid-template-columns:1fr}.process-step:not(:last-child)::after{content:'↓';right:50%;top:auto;bottom:-22px;transform:translateX(50%)}.tool-intro-grid{grid-template-columns:1fr}.credibility-grid{grid-template-columns:1fr 1fr} }

  
.logo-lockup{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff;min-width:220px}.logo-mark{width:46px;height:46px;flex:0 0 46px}.logo-words{line-height:1}.logo-name{display:block;font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:600;letter-spacing:.04em;color:#fff}.logo-sub{display:block;margin-top:4px;font-size:.55rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-lt)}@media(max-width:720px){.logo-lockup{min-width:0}.logo-name{font-size:1.15rem}.logo-sub{font-size:.48rem}.logo-mark{width:40px;height:40px;flex-basis:40px}}


/* Final cross-device QA refinements */
img, svg { max-width: 100%; }
button, a { -webkit-tap-highlight-color: transparent; }
.audience-card { cursor: pointer; }
.audience-card:focus-visible, a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid var(--gold-lt);
  outline-offset: 3px;
}
@media (max-width: 900px) {
  .services-grid[style] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 720px) {
  body { overflow-x: hidden; }
  .nav-inner { padding: 0 18px; }
  .mobile-nav { max-height: calc(100vh - 78px); overflow-y: auto; }
  .mobile-nav a { min-height: 44px; display: flex; align-items: center; }
  .services-grid[style] { grid-template-columns: 1fr !important; }
  .hero-btns > * { width: 100%; text-align: center; }
  .audience-card { padding: 25px 22px; }
  .credibility-grid { grid-template-columns: 1fr !important; }
  .footer-inner { padding-left: 20px; padding-right: 20px; }
  .footer-top { grid-template-columns: 1fr !important; }
  .footer-logo .logo-lockup { max-width: 260px; }
  .tab-row { padding-left: 16px; padding-right: 16px; }
  .tab-btn { flex: 1 1 calc(50% - 8px); justify-content: center; white-space: normal; text-align: center; min-height: 48px; }
  .panel-header { align-items: center; }
  .result-cta { align-items: stretch; }
  .result-cta .cta-btn { width: 100%; text-align: center; }
  .typeform-embed { min-height: 520px; }
}
@media (max-width: 420px) {
  .logo-name { font-size: 1.02rem; }
  .logo-sub { letter-spacing: .16em; }
  .logo-mark { width: 36px; height: 36px; flex-basis: 36px; }
  .container { padding-left: 18px; padding-right: 18px; }
  .hero-inner { padding-left: 18px; padding-right: 18px; }
  .tab-btn { flex-basis: 100%; }
}

/* V4 polish */
html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.brand-logo{display:block;width:clamp(190px,18vw,260px);height:auto;object-fit:contain}.footer-logo .brand-logo{width:220px;max-width:100%}a,button,.service-card,.path-card,.tool-tab{transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #E8C97A;outline-offset:3px}.service-card:hover,.path-card:hover{transform:translateY(-3px)}header{backdrop-filter:saturate(140%) blur(10px);-webkit-backdrop-filter:saturate(140%) blur(10px)}img{max-width:100%;height:auto}.hero-inner,.section-inner,.footer-inner{width:min(1180px,calc(100% - 40px));margin-inline:auto}@media(max-width:900px){.brand-logo{width:205px}.nav-inner{min-height:76px}.hero-inner,.section-inner,.footer-inner{width:min(100% - 28px,760px)}.mobile-nav a{min-height:48px;display:flex;align-items:center}.btn-primary,.btn-outline,.nav-cta{min-height:46px;display:inline-flex;align-items:center;justify-content:center}}@media(max-width:520px){.brand-logo{width:180px}.hero h1{font-size:clamp(2.45rem,13vw,3.8rem);line-height:.98}.hero-lead{font-size:1rem}.hero-btns{display:grid;grid-template-columns:1fr;gap:12px}.hero-btns a{width:100%}.calc-tabs{display:grid;grid-template-columns:1fr 1fr}.tool-tab{white-space:normal;min-height:52px}.form-grid{grid-template-columns:1fr!important}.result-actions{display:grid;grid-template-columns:1fr}.result-actions a{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* 3.5.4 authoritative deployment rules */
.logo-lockup{display:flex;align-items:center;text-decoration:none;flex:0 0 auto;min-width:0;margin-right:34px}
.brand-logo{display:block;width:238px;max-width:238px;height:auto;max-height:68px;object-fit:contain;object-position:left center}
header .nav-inner{max-width:1240px;height:88px;min-height:88px;padding:0 28px}
header nav{margin-left:auto;gap:2px}
.footer-logo .brand-logo{width:225px;max-width:100%;max-height:none}

/* One consistent compact hero system across all pages */
.hero{background:linear-gradient(140deg,var(--navy) 0%,var(--navy3) 100%);position:relative;overflow:hidden;min-height:0}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 90% at 60% 110%,rgba(196,154,60,.13) 0%,transparent 65%);pointer-events:none}
.hero::after{content:'';position:absolute;right:-30px;top:50%;transform:translateY(-50%);width:260px;height:260px;border-radius:50%;border:1px solid rgba(196,154,60,.10);pointer-events:none}
.hero-inner{position:relative;z-index:1;max-width:var(--max);width:auto;margin:0 auto;padding:48px 32px 42px!important}
.hero-inner h1,.hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(2.15rem,4.2vw,3.15rem)!important;line-height:1.08;margin:0;color:var(--white)}
.hero-inner .hero-lead,.hero p{font-size:1rem;line-height:1.65;max-width:660px;margin-top:14px}
.hero-inner.center .hero-lead{margin-left:auto;margin-right:auto}
.hero-btns{margin-top:24px}

@media(max-width:960px){
  .brand-logo{width:210px;max-width:210px;max-height:61px}
  .logo-lockup{margin-right:18px}
  header .nav-inner{height:80px;min-height:80px;padding:0 20px}
  nav a{padding:8px 10px;font-size:.7rem}
}
@media(max-width:720px){
  .brand-logo{width:196px;max-width:196px;max-height:57px}
  .logo-lockup{margin-right:0}
  header .nav-inner{height:76px;min-height:76px;padding:0 16px}
  .hero-inner{padding:38px 20px 34px!important}
  .hero::after{width:190px;height:190px;right:-70px}
}
@media(max-width:390px){.brand-logo{width:178px;max-width:178px}}

/* v3.5 final consistency pass */
.footer-role{margin-top:10px;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.services-grid{grid-template-columns:repeat(5,1fr)}
.audience-band .section-title{margin-bottom:38px}
.audience-grid{grid-template-columns:repeat(3,1fr)}
.hero-inner{max-width:920px}
.hero-lead{max-width:780px;margin-left:auto;margin-right:auto}
@media(max-width:1100px){.services-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.services-grid,.audience-grid{grid-template-columns:1fr}.hero h1 br{display:none}}

/* v3.5 final brand integration */
.logo-lockup { display:inline-flex; align-items:center; text-decoration:none; min-width:0; }
.brand-logo { width:clamp(270px, 30vw, 390px); height:auto; max-height:66px; display:block; }
.footer-logo .brand-logo { width:min(100%, 360px); max-height:none; }
header { box-shadow:0 10px 30px rgba(5,16,28,.14); }
.nav-inner { max-width:1240px; }
.hero-inner { padding-top:96px; padding-bottom:88px; }
.hero-lead { text-wrap:balance; }
.service-card, .audience-card, .why-item, .process-step, .career-card, .tool-card { transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.service-card:hover, .audience-card:hover, .career-card:hover, .tool-card:hover { transform:translateY(-3px); box-shadow:0 16px 40px rgba(13,27,42,.08); border-color:rgba(196,154,60,.5); }
.btn-primary, .btn-dark, .btn-outline, .nav-cta { transition:transform .18s ease, background .18s ease, color .18s ease, border-color .18s ease; }
.btn-primary:hover, .btn-dark:hover, .btn-outline:hover, .nav-cta:hover { transform:translateY(-1px); }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible { outline:3px solid var(--gold-lt); outline-offset:3px; }
@media (prefers-reduced-motion: reduce) { html{scroll-behavior:auto} *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important} }
@media (max-width:980px) {
  .brand-logo { width:280px; }
  nav a { padding:8px 10px; letter-spacing:.1em; }
  .nav-cta { margin-left:2px; padding-inline:12px!important; }
}
@media (max-width:720px) {
  .brand-logo { width:245px; max-height:55px; }
  .hero-inner { padding:72px 20px 66px; }
  .mobile-nav a:last-child { color:var(--navy); background:var(--gold); margin:8px 20px 0; border-radius:6px; text-align:center; }
}
@media (max-width:390px) { .brand-logo { width:220px; } }

/* ══════════════════════════════════
   QR MAILER LANDING PAGE
══════════════════════════════════ */
.landing-hero {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #fbf8f2 0%, var(--cream) 55%, #efe7d9 100%);
  border-bottom: 1px solid rgba(196,154,60,.35);
}
.landing-hero::after {
  content: '';
  position: absolute;
  width: 560px;
  height: 560px;
  right: -170px;
  top: 50%;
  transform: translateY(-50%);
  border: 1px solid rgba(196,154,60,.12);
  border-radius: 50%;
}
.landing-hero-inner {
  position: relative;
  z-index: 1;
  max-width: var(--max);
  margin: 0 auto;
  min-height: 650px;
  padding: 92px 32px 84px;
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(220px, .65fr);
  gap: 60px;
  align-items: center;
}
.landing-copy h1 {
  font-family: 'Cormorant Garamond', serif;
  color: var(--navy);
  font-size: clamp(2.7rem, 5.2vw, 4.6rem);
  line-height: 1.02;
  font-weight: 500;
  letter-spacing: -.02em;
  max-width: 820px;
}
.landing-copy h1 em { color: var(--gold); font-weight: 500; }
.landing-intro {
  margin-top: 26px;
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(1.35rem, 2.4vw, 1.75rem);
  line-height: 1.35;
  color: var(--navy3);
}
.landing-points { display: grid; gap: 17px; margin-top: 30px; max-width: 690px; }
.landing-points > div { display: grid; grid-template-columns: 24px 1fr; gap: 12px; align-items: start; }
.landing-points span { color: var(--gold); font-size: 1rem; line-height: 1.7; }
.landing-points p { color: var(--muted); line-height: 1.55; font-weight: 300; }
.landing-points strong { color: var(--navy); font-weight: 500; }
.landing-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.primary-btn, .secondary-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 22px;
  border-radius: 6px;
  text-decoration: none;
  font-size: .76rem;
  font-weight: 600;
  letter-spacing: .13em;
  text-transform: uppercase;
  transition: all .18s ease;
}
.primary-btn { background: var(--gold); color: var(--navy); }
.primary-btn:hover { background: var(--gold-lt); transform: translateY(-1px); }
.secondary-btn { border: 1px solid rgba(13,27,42,.28); color: var(--navy); background: rgba(255,255,255,.45); }
.secondary-btn:hover { border-color: var(--gold); color: var(--gold); transform: translateY(-1px); }
.landing-mark { display: flex; justify-content: center; opacity: .95; }
.landing-mark img { width: min(300px, 100%); height: auto; filter: drop-shadow(0 12px 28px rgba(13,27,42,.08)); }
.landing-connect { padding: 92px 0; background: var(--white); }
.landing-connect-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 76px; align-items: start; }
.landing-contact-note { margin-top: 30px; padding-top: 24px; border-top: 1px solid var(--cream3); display: grid; gap: 6px; }
.landing-contact-note strong { color: var(--navy); font-weight: 500; }
.landing-contact-note a { color: var(--gold); text-decoration: none; }
.landing-form { background: var(--cream); border: 1px solid var(--cream3); border-top: 3px solid var(--gold); padding: 34px; border-radius: var(--radius); box-shadow: 0 18px 45px rgba(13,27,42,.07); }
.form-privacy { margin-top: 12px; color: var(--muted); font-size: .78rem; text-align: center; }
.landing-trust { background: var(--navy); padding: 25px 0; text-align: center; border-top: 2px solid var(--gold); }
.landing-trust p { color: var(--gold-lt); font-family: 'Cormorant Garamond', serif; font-size: 1.2rem; font-style: italic; letter-spacing: .03em; }
@media (max-width: 820px) {
  .landing-hero-inner { grid-template-columns: 1fr; min-height: auto; padding-top: 68px; gap: 35px; }
  .landing-mark { display: none; }
  .landing-connect-grid { grid-template-columns: 1fr; gap: 42px; }
}
@media (max-width: 600px) {
  .landing-hero-inner { padding: 56px 20px 60px; }
  .landing-copy h1 { font-size: 2.65rem; }
  .landing-actions { flex-direction: column; }
  .primary-btn, .secondary-btn { width: 100%; }
  .landing-connect { padding: 64px 0; }
  .landing-form { padding: 24px 18px; }
}


/* Footer clarity and alignment fix */
.footer-top > div:first-child {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.footer-logo {
  width:100%;
  margin-bottom:14px;
}
.footer-logo .logo-lockup {
  display:inline-flex;
  max-width:250px;
}
.footer-logo .brand-logo {
  width:250px;
  max-width:100%;
  height:auto;
  margin:0;
}
.footer-tagline {
  max-width:290px;
  margin:0;
  text-align:left;
}
@media (max-width:520px) {
  .footer-top > div:first-child { align-items:flex-start; }
  .footer-logo .logo-lockup,
  .footer-logo .brand-logo { width:225px; max-width:100%; }
}
