
  :root {
    --cobalt: #245CC5;
    --terra: #B85042;
    --cream: #F4EEE3;
    --white: #FFFFFF;
    --charcoal: #1F2421;
    --mid: #5A5A5A;
    --light: #8A8A8A;
    --border: rgba(0,0,0,0.08);
    --serif: 'DM Serif Display', Georgia, serif;
    --sans: 'Inter', system-ui, sans-serif;
    --mono: 'JetBrains Mono', monospace;
    --max: 1080px;
    --pad: clamp(1.25rem, 5vw, 4rem);
    --v: clamp(3.5rem, 7vw, 5rem);
  }

  *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
  html { scroll-behavior: smooth; }

  body {
    font-family: var(--sans);
    background: var(--cream);
    color: var(--charcoal);
    font-size: 1rem;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
  }

  /* ── NAV ── */
  nav {
    position: sticky;
    top: 0;
    z-index: 100;
    background: rgba(244,238,227,0.95);
    backdrop-filter: blur(12px);
    border-bottom: 0.5px solid var(--border);
  }
  .nav-inner {
    max-width: var(--max);
    margin: 0 auto;
    padding: 0 var(--pad);
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .nav-logo {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    line-height: 1;
  }
  .nav-logo img {
    height: 26px;
    width: auto;
    display: block;
  }
  .nav-links {
    display: flex;
    gap: 2rem;
    list-style: none;
    align-items: center;
  }
  .nav-links a {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--mid);
    text-decoration: none;
    transition: color 0.15s;
  }
  .nav-links a:hover { color: var(--charcoal); }
  .nav-cta {
    border: 0.5px solid var(--cobalt) !important;
    color: var(--cobalt) !important;
    padding: 0.4375rem 1.125rem;
    border-radius: 6px;
    font-weight: 500 !important;
    background: transparent !important;
    transition: background 0.15s !important;
  }
  .nav-cta:hover { background: rgba(36,92,197,0.06) !important; }
  @media (max-width: 768px) {
    .nav-links { display: none; }
    .nav-mobile-cta {
      display: block;
      border: 0.5px solid var(--cobalt);
      color: var(--cobalt);
      padding: 0.4375rem 1rem;
      border-radius: 6px;
      font-size: 0.8125rem;
      font-weight: 500;
      text-decoration: none;
    }
  }
  @media (min-width: 769px) { .nav-mobile-cta { display: none; } }

  /* ── BUTTONS ── */
  .btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--terra);
    color: #fff;
    font-family: var(--sans);
    font-size: 0.9375rem;
    font-weight: 500;
    padding: 0.75rem 1.375rem;
    border-radius: 6px;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: opacity 0.15s, transform 0.1s;
  }
  .btn-primary:hover { opacity: 0.88; transform: translateY(-1px); }
  .btn-secondary {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: transparent;
    color: var(--cobalt);
    font-family: var(--sans);
    font-size: 0.9375rem;
    font-weight: 500;
    padding: 0.75rem 1.375rem;
    border-radius: 6px;
    border: 0.5px solid var(--cobalt);
    text-decoration: none;
    cursor: pointer;
    transition: background 0.15s;
  }
  .btn-secondary:hover { background: rgba(36,92,197,0.05); }
  .btn-white {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--white);
    color: var(--cobalt);
    font-family: var(--sans);
    font-size: 0.9375rem;
    font-weight: 500;
    padding: 0.75rem 1.375rem;
    border-radius: 6px;
    text-decoration: none;
    transition: opacity 0.15s, transform 0.1s;
  }
  .btn-white:hover { opacity: 0.9; transform: translateY(-1px); }

  /* ── SECTION SCAFFOLDING ── */
  .bg-cream { background: var(--cream); }
  .bg-white { background: var(--white); }
  .bg-dark  { background: var(--charcoal); color: var(--white); }
  .bg-cobalt { background: var(--cobalt); color: var(--white); }

  .section {
    padding: var(--v) var(--pad);
    max-width: var(--max);
    margin: 0 auto;
  }
  .section-label {
    font-family: var(--sans);
    font-size: 0.6875rem;
    font-weight: 500;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--terra);
    margin-bottom: 1rem;
  }
  .section-heading {
    font-family: var(--serif);
    font-size: clamp(2rem, 3.5vw, 3rem);
    font-weight: 500;
    line-height: 1.2;
    color: var(--charcoal);
    margin-bottom: 1.125rem;
    text-wrap: pretty;
  }
  .bg-dark .section-heading,
  .bg-cobalt .section-heading { color: var(--white); }
  .section-sub {
    font-size: 1rem;
    color: var(--mid);
    max-width: none;
    line-height: 1.65;
    text-wrap: pretty;
    margin-bottom: 3rem;
  }
  .bg-dark .section-sub { color: rgba(255,255,255,0.55); }
  .bg-cobalt .section-sub { color: rgba(255,255,255,0.7); }

  /* ── HERO ── */
  .hero {
    padding: clamp(4rem, 9vw, 8rem) var(--pad) clamp(3rem, 7vw, 6rem);
    max-width: var(--max);
    margin: 0 auto;
  }
  .hero-eyebrow {
    font-family: var(--sans);
    font-size: 0.6875rem;
    font-weight: 500;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--terra);
    margin-bottom: 1.25rem;
  }
  .hero h1 {
    font-family: var(--serif);
    font-size: clamp(2.75rem, 5.5vw, 4.75rem);
    font-weight: 500;
    line-height: 1.15;
    color: var(--charcoal);
    max-width: 15em;
    text-wrap: pretty;
    margin-bottom: 1.75rem;
  }
  .hero h1 em {
    font-style: italic;
    color: var(--cobalt);
  }
  .hero-numbers {
    display: flex;
    flex-wrap: wrap;
    gap: 0 3rem;
    margin-bottom: 1.75rem;
    padding: 1.5rem 0;
    border-top: 0.5px solid var(--border);
    border-bottom: 0.5px solid var(--border);
  }
  .hero-num { display: flex; flex-direction: column; padding: 0.25rem 0; }
  .hero-num strong {
    font-family: var(--mono);
    font-size: 1.375rem;
    font-weight: 500;
    color: var(--cobalt);
    line-height: 1.1;
  }
  .hero-num span {
    font-size: 0.75rem;
    color: var(--mid);
    margin-top: 0.25rem;
  }
  .hero-num-divider {
    width: 0.5px;
    background: var(--border);
    align-self: stretch;
    margin: 0;
  }
  .hero-sub {
    font-size: clamp(1rem, 1.5vw, 1.0625rem);
    color: var(--mid);
    max-width: none;
    line-height: 1.65;
    text-wrap: pretty;
    margin-bottom: 2.5rem;
  }
  .hero-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
  }
  .hero-note {
    font-size: 0.8125rem;
    color: var(--light);
  }

  /* ── TRUST STRIP ── */
  .trust {
    border-top: 0.5px solid var(--border);
    border-bottom: 0.5px solid var(--border);
    background: var(--white);
    padding: 1.75rem var(--pad);
  }
  .trust-inner {
    max-width: var(--max);
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 2.5rem;
    flex-wrap: wrap;
  }
  .trust-label {
    font-size: 0.6875rem;
    font-weight: 500;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--light);
    white-space: nowrap;
  }
  .trust-logos {
    display: flex;
    align-items: center;
    gap: 2.5rem;
    flex-wrap: wrap;
    flex: 1;
  }
  .logo-placeholder {
    height: 26px;
    background: #EBE4D8;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 1rem;
    font-size: 0.625rem;
    font-family: var(--mono);
    color: var(--light);
    white-space: nowrap;
    letter-spacing: 0.05em;
    border: 0.5px solid var(--border);
  }
  .trust-stat {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding-left: 2rem;
    border-left: 0.5px solid var(--border);
    white-space: nowrap;
  }
  .trust-stat strong {
    font-family: var(--mono);
    font-size: 1.125rem;
    font-weight: 500;
    color: var(--cobalt);
  }
  .trust-stat span {
    font-size: 0.75rem;
    color: var(--mid);
    line-height: 1.4;
  }

  /* ── SERVICE vs SOFTWARE ── */
  .service-panels {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 1.5rem;
    align-items: stretch;
  }
  @media (max-width: 768px) {
    .service-panels { grid-template-columns: 1fr; }
    .service-vs { display: none; }
  }
  .service-panel {
    background: var(--cream);
    border: 0.5px solid rgba(244,238,227,0.18);
    border-radius: 8px;
    padding: 1.75rem;
    color: var(--charcoal);
    display: flex;
    flex-direction: column;
  }
  .service-panel.highlight {
    background: var(--cobalt);
    border-color: transparent;
    color: rgba(255,255,255,0.95);
  }
  .service-panel.highlight h3 {
    color: #fff;
  }
  .service-panel-label {
    font-size: 0.625rem;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--mid);
    margin-bottom: 0.75rem;
  }
  .service-panel.highlight .service-panel-label {
    color: rgba(255,255,255,0.7);
  }
  .service-panel h3 {
    font-family: var(--serif);
    font-size: 1.375rem;
    font-weight: 500;
    line-height: 1.2;
    margin-bottom: 1.5rem;
  }
  .service-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
  }
  .service-list li {
    font-size: 0.9rem;
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    line-height: 1.45;
  }
  .service-list li::before {
    content: '';
    width: 16px;
    height: 16px;
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 2px;
  }
  .service-panel:not(.highlight) .service-list li::before {
    background: rgba(31,36,33,0.06);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8h8' stroke='rgba(31,36,33,0.55)' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
  }
  .service-panel.highlight .service-list li::before {
    background: rgba(255,255,255,0.2);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8l3 3 7-7' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
  }
  .service-vs {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .service-vs span {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 0.5px solid rgba(255,255,255,0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.6875rem;
    font-weight: 500;
    color: rgba(255,255,255,0.35);
    letter-spacing: 0.05em;
  }

  /* ── COUNTRIES ── */
  .countries {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
    margin-top: 0.5rem;
  }
  @media (max-width: 768px) { .countries { grid-template-columns: 1fr; } }
  .country-card {
    border: 0.5px solid var(--border);
    border-radius: 8px;
    overflow: hidden;
    background: var(--white);
  }
  .country-header {
    padding: 1.5rem 1.75rem 1.375rem;
    border-bottom: 0.5px solid var(--border);
  }
  .country-flag { font-size: 1.375rem; margin-bottom: 0.625rem; display: block; }
  .country-header h3 {
    font-family: var(--serif);
    font-size: 1.625rem;
    font-weight: 500;
    margin-bottom: 0.375rem;
  }
  .country-header p { font-size: 0.875rem; color: var(--mid); line-height: 1.55; }
  .country-body { padding: 1.5rem 1.75rem; }
  .country-roles { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-bottom: 1.5rem; }
  .role-chip {
    background: #EBE4D8;
    border-radius: 20px;
    padding: 0.25rem 0.75rem;
    font-size: 0.8rem;
    color: var(--charcoal);
    font-weight: 400;
  }
  .stack-group { margin-bottom: 1.125rem; }
  .stack-group:last-child { margin-bottom: 0; }
  .stack-label {
    font-size: 0.625rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--light);
    margin-bottom: 0.4rem;
  }
  .stack-chips { display: flex; flex-wrap: wrap; gap: 0.35rem; }
  .stack-chip {
    background: #EBE4D8;
    color: var(--charcoal);
    border: 0.5px solid var(--border);
    border-radius: 4px;
    padding: 0.2rem 0.5rem;
    font-size: 0.75rem;
    font-family: var(--mono);
    letter-spacing: 0.01em;
  }
  .country-price {
    margin-top: 1.375rem;
    padding-top: 1.375rem;
    border-top: 0.5px solid var(--border);
  }
  .country-price p { font-size: 0.75rem; color: var(--light); margin-bottom: 0.2rem; }
  .country-price strong {
    font-family: var(--mono);
    font-size: 1.125rem;
    font-weight: 500;
    color: var(--cobalt);
  }
  .price-unit { font-size: 0.8125rem; color: var(--mid); font-weight: 400; }

  /* ── HOW IT WORKS ── */
  .steps {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
    position: relative;
  }
  @media (max-width: 900px) { .steps { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 500px) { .steps { grid-template-columns: 1fr; } }
  .step { position: relative; }
  .step-num {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--cobalt);
    color: var(--white);
    font-family: var(--mono);
    font-size: 0.8125rem;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.125rem;
    position: relative;
    z-index: 1;
  }
  .step-connector {
    position: absolute;
    top: 15px;
    left: 32px;
    right: -1.5rem;
    height: 0.5px;
    background: var(--border);
    z-index: 0;
  }
  .step:last-child .step-connector { display: none; }
  @media (max-width: 900px) {
    .step:nth-child(2) .step-connector,
    .step:nth-child(4) .step-connector { display: none; }
  }
  .step h4 {
    font-family: var(--serif);
    font-size: 1.125rem;
    font-weight: 500;
    margin-bottom: 0.5rem;
    color: var(--charcoal);
  }
  .step p { font-size: 0.875rem; color: var(--mid); line-height: 1.6; }
  .step-time {
    display: inline-block;
    margin-top: 0.75rem;
    font-family: var(--mono);
    font-size: 0.6875rem;
    font-weight: 400;
    letter-spacing: 0.06em;
    color: var(--cobalt);
    background: rgba(36,92,197,0.07);
    padding: 0.2rem 0.5rem;
    border-radius: 3px;
  }

  /* ── PRICING ── */
  .pricing-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
  }
  @media (max-width: 900px) { .pricing-grid { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 500px) { .pricing-grid { grid-template-columns: 1fr; } }
  .price-card {
    border: 0.5px solid var(--border);
    border-radius: 8px;
    padding: 1.5rem 1.375rem;
    background: var(--white);
    display: flex;
    flex-direction: column;
  }
  .price-flag { font-size: 1.125rem; margin-bottom: 0.625rem; }
  .price-role {
    font-size: 0.625rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--light);
    margin-bottom: 0.4rem;
  }
  .price-title {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 500;
    margin-bottom: 1.25rem;
    line-height: 1.35;
    color: var(--charcoal);
  }
  .price-amount {
    margin-top: auto;
    padding-top: 1.125rem;
    border-top: 0.5px solid var(--border);
  }
  .price-from { font-size: 0.6875rem; color: var(--light); margin-bottom: 0.125rem; }
  .price-number {
    font-family: var(--mono);
    font-size: 1.75rem;
    font-weight: 500;
    color: var(--cobalt);
    line-height: 1;
  }
  .pricing-note {
    margin-top: 1.5rem;
    padding: 1.125rem 1.375rem;
    background: #EBE4D8;
    border-radius: 6px;
    font-size: 0.875rem;
    color: var(--mid);
    line-height: 1.65;
    border: 0.5px solid var(--border);
  }

  /* ── PROOF ── */
  .stats-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem 4rem;
    margin-bottom: 3.5rem;
    padding-bottom: 3rem;
    border-bottom: 0.5px solid var(--border);
  }
  .stat-number {
    font-family: var(--serif);
    font-size: 2.75rem;
    font-weight: 500;
    line-height: 1;
    color: var(--cobalt);
    margin-bottom: 0.25rem;
  }
  .stat-label { font-size: 0.875rem; color: var(--mid); }
  .testimonials {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
  }
  @media (max-width: 900px) { .testimonials { grid-template-columns: 1fr; } }
  .testimonial {
    border: 0.5px solid var(--border);
    border-radius: 8px;
    padding: 1.75rem;
    background: var(--cream);
  }
  .testimonial blockquote {
    font-family: var(--serif);
    font-size: 1.0625rem;
    font-weight: 500;
    line-height: 1.6;
    color: var(--charcoal);
    font-style: italic;
    margin-bottom: 1.375rem;
  }
  .testimonial-author { display: flex; align-items: center; gap: 0.75rem; }
  .author-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #EBE4D8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.5625rem;
    font-family: var(--mono);
    color: var(--light);
    flex-shrink: 0;
    border: 0.5px solid var(--border);
  }
  .author-name { font-size: 0.8125rem; font-weight: 500; color: var(--charcoal); margin-bottom: 0.1rem; }
  .author-title { font-size: 0.75rem; color: var(--light); }

  /* ── FAQ ── */
  .faq-list {
    display: flex;
    flex-direction: column;
    border: 0.5px solid var(--border);
    border-radius: 8px;
    overflow: hidden;
    background: var(--white);
  }
  .faq-item { border-bottom: 0.5px solid var(--border); }
  .faq-item:last-child { border-bottom: none; }
  .faq-q {
    width: 100%;
    padding: 1.25rem 1.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: none;
    border: none;
    cursor: pointer;
    font-family: var(--sans);
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--charcoal);
    text-align: left;
    gap: 1rem;
    transition: background 0.15s;
  }
  .faq-q:hover { background: #F9F5EE; }
  .faq-q svg { flex-shrink: 0; transition: transform 0.25s; color: var(--cobalt); }
  .faq-q[aria-expanded="true"] svg { transform: rotate(45deg); }
  .faq-a {
    display: none;
    padding: 0 1.5rem 1.375rem;
    font-size: 0.9rem;
    color: var(--mid);
    line-height: 1.7;
  }
  .faq-a p + p { margin-top: 0.625rem; }

  /* ── FOUNDER ── */
  .founder-grid {
    display: grid;
    grid-template-columns: 380px 1fr;
    gap: 5rem;
    align-items: center;
  }
  @media (max-width: 900px) { .founder-grid { grid-template-columns: 1fr; gap: 2.5rem; } }
  .founder-photo {
    aspect-ratio: 4/5;
    border-radius: 8px;
    overflow: hidden;
    background: #EBE4D8;
    position: relative;
    border: 0.5px solid var(--border);
  }
  .photo-placeholder {
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(
      135deg,
      rgba(0,0,0,0.04) 0,
      rgba(0,0,0,0.04) 1px,
      transparent 1px,
      transparent 12px
    );
    display: flex;
    align-items: flex-end;
    padding: 1.25rem;
    font-size: 0.625rem;
    font-family: var(--mono);
    color: var(--light);
    text-transform: uppercase;
    letter-spacing: 0.06em;
  }
  .founder-content h2 {
    font-family: var(--serif);
    font-size: clamp(1.875rem, 3vw, 2.5rem);
    font-weight: 500;
    line-height: 1.2;
    color: var(--charcoal);
    margin-bottom: 0.25rem;
  }
  .founder-title {
    font-size: 0.8125rem;
    color: var(--cobalt);
    font-weight: 500;
    margin-bottom: 1.75rem;
  }
  .founder-bio {
    font-size: 0.9375rem;
    color: var(--mid);
    line-height: 1.7;
    margin-bottom: 1rem;
  }
  .founder-creds {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 1.75rem;
  }
  .cred-tag {
    background: #EBE4D8;
    padding: 0.3rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    color: var(--charcoal);
    border: 0.5px solid var(--border);
  }

  /* ── FINAL CTA ── */
  .final-cta {
    text-align: center;
    max-width: var(--max);
    margin: 0 auto;
    padding: clamp(4rem, 8vw, 7rem) var(--pad);
  }
  .final-cta h2 {
    font-family: var(--serif);
    font-size: clamp(2rem, 4vw, 3.125rem);
    font-weight: 500;
    line-height: 1.2;
    color: var(--white);
    margin-bottom: 1rem;
  }
  .final-cta p {
    font-size: 1rem;
    color: rgba(255,255,255,0.65);
    line-height: 1.65;
    margin-bottom: 2.5rem;
  }
  .final-note {
    margin-top: 1.125rem;
    font-size: 0.75rem;
    color: rgba(255,255,255,0.4);
  }

  /* ── FOOTER ── */
  footer {
    background: var(--charcoal);
    color: rgba(255,255,255,0.45);
    padding: 3rem var(--pad) 2.5rem;
  }
  .footer-inner {
    max-width: var(--max);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 3rem;
  }
  @media (max-width: 768px) { .footer-inner { grid-template-columns: 1fr 1fr; gap: 2rem; } }
  @media (max-width: 480px) { .footer-inner { grid-template-columns: 1fr; } }
  .footer-brand .nav-logo img { height: 28px; }
  .footer-brand p { font-size: 0.8125rem; line-height: 1.65; margin-top: 0.875rem; max-width: none; }
  .footer-col h5 {
    font-size: 0.625rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.25);
    margin-bottom: 0.875rem;
  }
  .footer-col ul { list-style: none; display: flex; flex-direction: column; gap: 0.5rem; }
  .footer-col a {
    font-size: 0.8125rem;
    color: rgba(255,255,255,0.45);
    text-decoration: none;
    transition: color 0.15s;
  }
  .footer-col a:hover { color: rgba(255,255,255,0.8); }
  .footer-bottom {
    max-width: var(--max);
    margin: 2.5rem auto 0;
    padding-top: 1.75rem;
    border-top: 0.5px solid rgba(255,255,255,0.07);
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
    font-size: 0.75rem;
  }

  /* ── MISC ── */
  .section-divider {
    max-width: var(--max);
    margin: 0 auto;
    border: none;
    border-top: 0.5px solid var(--border);
  }

  /* Two-service homepage extension. Preserve the original brand palette. */
  :root { --light: #656565; }
  [id] { scroll-margin-top: 85px; }
  a:focus-visible, button:focus-visible { outline: 3px solid var(--terra); outline-offset: 5px; }
  .hero { padding-top: clamp(3.5rem, 7vw, 6rem); }
  .hero h1 { max-width: 14em; }
  .nav-links { gap: 1.35rem; }
  .service-paths { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin-top: 2.5rem; }
  .service-path { display: flex; flex-direction: column; padding: 1.75rem; background: var(--white); border: 1px solid var(--border); border-top: 3px solid var(--cobalt); border-radius: 6px; text-decoration: none; color: var(--charcoal); }
  .service-path:hover { border-color: var(--cobalt); }
  .path-label { font-size: .875rem; color: var(--mid); display: block; margin-bottom: .8rem; }
  .service-path h2 { font-family: var(--serif); font-size: 2rem; font-weight: 400; line-height: 1.2; margin-bottom: 1rem; }
  .service-path p { color: var(--mid); margin-bottom: 1.5rem; }
  .path-link { color: var(--cobalt); font-weight: 500; margin-top: auto; }
  .search-outline { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; margin: 2.5rem 0; }
  .search-outline > div { border-top: 1px solid #707572; padding-top: 1.5rem; }
  .search-outline .path-label, .search-outline p, .bg-dark .section-sub { color: #cbd0cc; }
  .search-outline h3 { font-family: var(--serif); font-size: 1.5rem; font-weight: 400; margin-bottom: .75rem; }
  .search-note { color: #cbd0cc; margin-top: 1rem; font-size: .875rem; }
  .bg-dark .section-label { color: #e7a295; }
  .final-cta p, .final-note { color: #e1e8f5; }
  @media (max-width: 768px) { .service-paths, .search-outline { grid-template-columns: 1fr; } }
  @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { transition: none !important; } }


  .search-markets { display: grid; grid-template-columns: 1.15fr 1fr; gap: 1.5rem; margin: 2.5rem 0; align-items: stretch; }
  .search-market { padding: 2rem; border: 1px solid #646a65; border-radius: 8px; display: flex; flex-direction: column; }
  .search-market-primary { background: var(--cobalt); border-color: var(--cobalt); }
  .search-market .path-label { color: #d9dfed; }
  .search-market h3 { font-family: var(--serif); font-size: clamp(1.65rem, 2.5vw, 2rem); font-weight: 400; line-height: 1.2; margin-bottom: 1.25rem; }
  .search-market > p:not(.path-label) { color: #e1e5e2; margin-bottom: 1.75rem; }
  .search-market a { margin-top: auto; align-self: flex-start; }
  .search-text-link { color: white; text-underline-offset: .3em; padding: .75rem 0; }
  @media (max-width: 768px) { .search-markets { grid-template-columns: 1fr; } }

  .hero-search-note { margin-top: 1.5rem; font-size: .9375rem; color: var(--mid); }
  .hero-search-note a { color: var(--cobalt); text-underline-offset: .25em; }

  /* Keep every destination available as the header narrows. */
  .nav-inner { max-width: 1320px; padding-inline: 1.5rem; gap: 1.5rem; position: relative; }
  .nav-links { gap: 1.25rem; }
  .nav-links a { font-size: .875rem; white-space: nowrap; }
  .nav-compact { display: none; }
  @media (max-width: 1150px) {
    .nav-links { display: none; }
    .nav-compact { display: flex; align-items: center; gap: .75rem; }
    .nav-compact .nav-mobile-cta { display: block; border: 1px solid var(--cobalt); color: var(--cobalt); padding: .5rem .75rem; border-radius: 6px; font-size: .875rem; text-decoration: none; }
    .nav-menu summary { cursor: pointer; padding: .6rem .5rem; font-size: .875rem; color: var(--cobalt); }
    .nav-menu summary:focus-visible { outline: 3px solid var(--terra); outline-offset: 3px; }
    .nav-menu ul { position: absolute; right: 1rem; left: 1rem; top: 60px; max-height: calc(100dvh - 80px); overflow-y: auto; list-style: none; background: var(--cream); border: 1px solid var(--border); border-radius: 6px; padding: .5rem; box-shadow: 0 12px 24px #1f24211a; }
    .nav-menu a { display: block; padding: .75rem 1rem; color: var(--charcoal); text-decoration: none; font-size: 1rem; }
    .nav-menu a:hover { background: white; }
  }
  @media (max-width: 380px) {
    .nav-inner { padding-inline: .75rem; gap: .5rem; }
    .nav-inner .nav-logo img { height: 23px; }
    .nav-compact { gap: .25rem; }
  }

  .search-intro { max-width: none; color: #cbd0cc; font-size: 1rem; line-height: 1.7; margin-bottom: 2.5rem; }

  /* Contained executive-search feature, secondary to the EOR journey. */
  .executive-box { background: var(--charcoal); color: white; border: 1px solid #414a43; border-top: 5px solid var(--cobalt); border-radius: 12px; padding: clamp(1.5rem, 4vw, 3rem); }
  .executive-box .section-label { color: #e7a295; }
  .executive-box .section-heading { color: white; }
  .executive-box .section-sub, .executive-box .search-intro { max-width: none; color: #d4dad6; margin-bottom: 1.5rem; }
  .executive-box h3 { font-family: var(--serif); font-size: 1.5rem; line-height: 1.25; font-weight: 400; margin-bottom: 1rem; }
  .executive-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5rem; border-top: 1px solid #58625b; padding-top: 2rem; margin-top: 2rem; }
  .executive-detail-grid p, .executive-criteria { color: #d4dad6; font-size: 1rem; line-height: 1.7; }
  .executive-detail-grid p + p { margin-top: 1rem; }
  .executive-criteria { padding-left: 1.25rem; }
  .executive-criteria li + li { margin-top: .875rem; }
  .executive-criteria strong { color: white; font-weight: 500; }
  .executive-process { border-top: 1px solid #58625b; margin-top: 2.5rem; padding-top: 2rem; }
  .executive-steps { list-style: none; display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.75rem 2.5rem; margin-top: 1.5rem; }
  .executive-steps .path-label { color: #b6c9f6; }
  .executive-steps h4 { font-size: 1rem; font-weight: 500; margin-bottom: .5rem; }
  .executive-steps p { color: #d4dad6; font-size: 1rem; line-height: 1.7; }
  .executive-close { border-top: 1px solid #58625b; margin-top: 2.5rem; padding-top: 2rem; display: flex; align-items: center; flex-wrap: wrap; gap: 1.5rem; }
  .executive-close > div { flex: 1 1 280px; }
  .executive-close p { color: #d4dad6; }
  .executive-close h3 { margin-bottom: .5rem; }
  .executive-box .search-note { margin-top: 1.5rem; }
  @media (max-width: 768px) { .executive-detail-grid, .executive-steps { grid-template-columns: 1fr; gap: 1.5rem; } }


/* Shared five-page navigation and editorial layout. */
.site-header{position:sticky;top:0;z-index:100;background:var(--cream);border-bottom:1px solid var(--border)}
.site-nav{position:static;background:none;backdrop-filter:none;border:0;max-width:1180px;margin:auto;min-height:76px;padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.brand img{width:168px;height:auto;display:block}.desktop-navigation{display:flex;align-items:center;gap:2rem}.desktop-navigation a{font-size:.9375rem;color:var(--charcoal);text-decoration:none}.desktop-navigation a[aria-current=page]{color:var(--cobalt);text-decoration:underline;text-underline-offset:.4em}.nav-service{display:flex;align-items:center;gap:.4rem}.service-dropdown{position:relative}.service-dropdown summary{cursor:pointer;padding:.5rem;list-style:none}.dropdown-panel{position:absolute;top:100%;left:-130px;width:230px;background:white;padding:.75rem;border:1px solid var(--border);border-radius:8px;box-shadow:0 10px 30px #0001}.dropdown-panel a{display:block;padding:.7rem}.desktop-navigation .nav-contact{border:1px solid var(--cobalt);padding:.6rem 1rem;border-radius:6px;color:var(--cobalt)}
.mobile-navigation{display:none}.skip-link{position:absolute;top:-100px;left:1rem;z-index:300;background:white;padding:1rem}.skip-link:focus{top:0}.site-header summary:focus-visible{outline:3px solid var(--terra);outline-offset:3px}
.hero{padding-top:clamp(3.5rem,7vw,6rem)}.hero-baseline{display:flex;gap:1rem 2rem;flex-wrap:wrap;border-top:1px solid var(--border);margin-top:3rem;padding-top:1.25rem;font-size:.875rem;color:var(--mid)}
.two-columns,.quote-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.three-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin:2rem 0}.three-columns h3,.market-summary h3,.search-process h3{font-family:var(--serif);font-weight:400;font-size:1.5rem;line-height:1.25;margin:0 0 1rem}.three-columns p,.market-summary p,.search-process p{font-size:1rem;color:var(--mid);line-height:1.7}.number{display:block;font-family:var(--mono);color:var(--cobalt);margin-bottom:1rem;font-size:1rem}.market-summary{background:white;border:1px solid var(--border);border-radius:8px;padding:2rem}.text-link{display:inline-block;color:var(--cobalt);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:.25rem;margin-top:1.5rem;font-weight:500}
.search-bridge{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:2rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:2.5rem 0}.search-bridge>div{flex:1 1 500px}.search-bridge p{color:var(--mid)}.search-bridge .section-heading{font-size:2rem}.search-bridge .btn-secondary{flex-shrink:0}
.local-navigation{display:flex;gap:1rem 2rem;flex-wrap:wrap;max-width:var(--max);padding:1.25rem var(--pad);margin:auto;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.local-navigation a{font-size:.9375rem;color:var(--cobalt);text-decoration:none}
.question-list details{background:white;border-bottom:1px solid var(--border);padding:1.25rem 0}.question-list summary{font-size:1rem;cursor:pointer;font-weight:500}.question-list p{padding-top:1rem;color:var(--mid);font-size:1rem}.question-list a{color:var(--cobalt)}
.quote-grid figure{background:var(--cream);padding:2rem;border-radius:8px}.quote-grid blockquote{font-family:var(--serif);font-size:1.5rem;line-height:1.4;margin-bottom:1.5rem}.quote-grid figcaption{font-size:1rem;font-weight:500}.quote-grid figcaption span{display:block;font-size:.875rem;font-weight:400;color:var(--mid)}.quote-source{font-size:.875rem;margin-top:1rem;color:var(--mid)}.quote-source a{color:var(--cobalt)}
.closing p{margin-bottom:2rem;color:#e1e8f5;font-size:1rem}.search-process article{display:grid;grid-template-columns:60px 1fr;gap:1.5rem;border-top:1px solid var(--border);padding:2rem 0}.bg-dark .section-label{color:#e7a295}.bg-dark .section-sub,.bg-dark .three-columns p{color:#d4dad6}.bg-dark .text-link{color:white}.contact-options{margin-top:2.5rem}.contact-options h2{font-family:var(--serif);font-size:1.8rem;font-weight:400;line-height:1.25;margin-bottom:1rem}.contact-options a{margin-top:1.5rem}.contact-direct{margin-top:2rem;color:var(--mid)}.contact-direct a{color:var(--cobalt)}.contact-options article.selected{border:2px solid var(--cobalt)}
.footer-col h2{font-size:.875rem;color:white;font-family:var(--sans);font-weight:500;margin-bottom:1rem}.footer-col a{display:block;color:#c8ceca;font-size:.875rem;margin-bottom:.5rem;overflow-wrap:anywhere}.footer-brand p,.footer-bottom{color:#c8ceca}.section-label,.hero-eyebrow,.path-label,.stack-label,.price-role,.price-from{font-size:.8125rem}.step p,.country-header p,.faq-a{font-size:1rem}.hero-sub,.section-sub,.search-intro{max-width:none}.price-title{font-size:1.125rem}.section-heading{overflow-wrap:break-word}p{overflow-wrap:break-word}
@media(max-width:850px){.desktop-navigation{display:none}.mobile-navigation{display:block}.mobile-navigation summary{padding:.75rem;cursor:pointer}.mobile-panel{position:absolute;left:1rem;right:1rem;top:76px;background:white;padding:1rem;border:1px solid var(--border);border-radius:8px;max-height:calc(100dvh - 100px);overflow:auto}.mobile-panel a{display:block;padding:.6rem;color:var(--charcoal);text-decoration:none}.mobile-sub{border-left:2px solid var(--border);margin-left:.75rem;padding-left:.5rem}.mobile-sub a{font-size:.875rem}.three-columns{grid-template-columns:1fr}.site-nav{padding:1rem 1.25rem}.footer-inner{grid-template-columns:1fr 1fr}.search-process article{grid-template-columns:35px 1fr}}
@media(max-width:600px){.two-columns,.quote-grid{grid-template-columns:1fr}.market-summary{padding:1.5rem}.footer-inner{grid-template-columns:1fr}.local-navigation{gap:.75rem 1.25rem}.hero-actions a{justify-content:center}.search-process article{gap:1rem}}

/* About Us: practical company information, with a supporting founder note. */
.about-intro{padding-bottom:3rem}.about-practices article{display:grid;grid-template-columns:50px 1fr;gap:1.5rem;border-top:1px solid var(--border);padding:1.75rem 0}.about-practices h3,.about-responsibilities h3{font-family:var(--serif);font-weight:400;font-size:1.5rem;margin-bottom:.75rem}.about-practices p,.about-responsibilities li{color:var(--mid);font-size:1rem;line-height:1.7}.about-responsibilities article{border-top:2px solid var(--cobalt);padding-top:1.5rem}.about-responsibilities ul{padding-left:1.25rem}.about-responsibilities li+li{margin-top:.75rem}.company-origin{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border);color:var(--mid)}.company-origin strong{font-weight:500;color:var(--charcoal)}
@media(max-width:600px){.about-practices article{grid-template-columns:30px 1fr;gap:1rem}}

/* Refined archipelago wordmark; contain transparent asset within navigation. */
.brand img{width:210px;height:40px;object-fit:cover;object-position:center}
.footer-brand>a>img{width:190px;height:38px;object-fit:cover;object-position:center;filter:brightness(0) invert(1)}
@media(max-width:380px){.brand img{width:180px;height:36px}}

/* Vector logo: preserve its natural proportions without raster cropping. */
.brand img{width:210px;height:auto;object-fit:contain}
.footer-brand>a>img{width:190px;height:auto;object-fit:contain;filter:none}
@media(max-width:380px){.brand img{width:180px;height:auto}}

/* Vector logo: preserve its natural proportions without raster cropping. */
.brand img{width:210px;height:auto;object-fit:contain}
.footer-brand>a>img{width:190px;height:auto;object-fit:contain;filter:none}
@media(max-width:380px){.brand img{width:180px;height:auto}}

.personnel-profile{display:grid;grid-template-columns:240px 1fr;gap:3rem;align-items:start}.personnel-profile img{width:100%;max-width:240px;height:auto}.personnel-profile h3{font-family:var(--serif);font-size:1.8rem;line-height:1.25;margin-bottom:.5rem}.personnel-profile p{margin-bottom:1.25rem}.personnel-role{color:var(--mid)}.company-origin h3{margin-bottom:1rem}.company-origin .text-link{margin-top:1rem}@media(max-width:640px){.personnel-profile{grid-template-columns:1fr;gap:1.5rem}.personnel-profile img{max-width:180px}}


/* Keep the related About Us paragraphs together. */
.relationships-intro{margin-bottom:1.25rem}

/* Align corresponding content across the contact cards. */
.contact-options{row-gap:0}
.contact-options article{display:grid;grid-template-rows:subgrid;grid-row:span 4;border:2px solid transparent}
.contact-options article.selected{border-color:var(--cobalt)}
.contact-options article>a{align-self:end;justify-self:start}
@media(max-width:600px){.contact-options{row-gap:1.5rem}}

.hero-search-link{margin-top:1.75rem;font-size:1rem;color:var(--mid);line-height:1.7}.hero-search-link a{color:var(--cobalt);font-weight:500;text-underline-offset:4px;white-space:normal}

/* Client marks retain their proportions in an accessible, static grid. */
.clients-section .section{padding-top:3rem;padding-bottom:3rem}.clients-section .section-heading{font-size:2rem;margin-bottom:2rem}.client-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}.client-logo{display:flex;align-items:center;justify-content:center;gap:.6rem;min-height:112px;padding:1.25rem;border:1px solid var(--border);border-radius:8px;background:white;transition:border-color .15s,box-shadow .15s}.client-logo:hover{border-color:var(--cobalt);box-shadow:0 3px 12px #1f242110}.client-logo:focus-visible{outline:3px solid var(--cobalt);outline-offset:4px}.client-logo img{display:block;width:100%;height:56px;object-fit:contain}.client-logo.mono img{filter:brightness(0)}.client-logo.totem img{width:39px;height:28px;filter:brightness(0)}.client-logo.totem span{font-weight:600;font-size:1.25rem;color:var(--charcoal)}.client-logo.dgr img{width:100px;height:52px}@media(max-width:900px){.client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-logo{padding:1rem;min-height:100px}}

/* Process steps stack vertically on small screens. */
@media (max-width: 500px) { .step .step-connector { display: none; } }
