/* ============================================================
   FUNDORA SOLUTIONS — APPLY PAGE STYLES
   Role: Page-specific styles for apply.html
   ============================================================ */


    /* ─────────────────────────────────────────
       NAV BRAND LOCKUP
    ───────────────────────────────────────── */

    .nav__logo-text {
      display: flex;
      flex-direction: column;
      line-height: 1.1;
    }

    .nav__logo-name {
      font-family: var(--font-head);
      font-weight: 800;
      font-size: 15px;
      color: var(--c-text);
      letter-spacing: -0.01em;
    }

    .nav__logo-sub {
      font-family: var(--font-mono);
      font-size: 9px;
      font-weight: 400;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--c-text-4);
    }

    /* ─────────────────────────────────────────
       01 — PAGE HERO
    ───────────────────────────────────────── */

    .apply-hero {
      padding: calc(var(--nav-h) + 80px) 0 80px;
      position: relative;
      overflow: hidden;
      text-align: center;
    }

    .apply-hero::before {
      content: '';
      position: absolute;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%);
      width: 600px;
      height: 1px;
      background: linear-gradient(to right, transparent, var(--c-border), transparent);
    }

    .apply-hero__eyebrow {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      font-family: var(--font-mono);
      font-size: 11px;
      font-weight: 500;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--c-text-3);
      margin-bottom: var(--s-6);
    }

    .apply-hero__eyebrow-dot {
      width: 4px;
      height: 4px;
      border-radius: 50%;
      background: var(--c-green);
    }

    .apply-hero__headline {
      font-family: var(--font-head);
      font-size: clamp(2.4rem, 5vw, 4rem);
      font-weight: 800;
      letter-spacing: -0.03em;
      line-height: 1.08;
      color: var(--c-text);
      max-width: 760px;
      margin: 0 auto var(--s-6);
    }

    .apply-hero__sub {
      font-size: clamp(1rem, 2vw, 1.125rem);
      color: var(--c-text-2);
      line-height: 1.7;
      max-width: 50ch;
      margin: 0 auto var(--s-8);
    }

    .apply-hero__meta {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: var(--s-6);
      flex-wrap: wrap;
    }

    .apply-hero__meta-item {
      display: flex;
      align-items: center;
      gap: 6px;
      font-family: var(--font-mono);
      font-size: 11px;
      letter-spacing: 0.10em;
      text-transform: uppercase;
      color: var(--c-text-4);
    }

    .apply-hero__meta-dot {
      width: 4px;
      height: 4px;
      border-radius: 50%;
      background: var(--c-green);
    }

    /* ─────────────────────────────────────────
       02 — QUALIFICATION CRITERIA
    ───────────────────────────────────────── */

    .criteria-section {
      background: var(--c-bg-1);
    }

    .criteria-section .section-label {
      text-align: center;
    }

    .criteria-section .section-title {
      text-align: center;
      max-width: 640px;
      margin-left: auto;
      margin-right: auto;
    }

    .criteria-section .section-sub {
      text-align: center;
      max-width: 52ch;
      margin: 0 auto var(--s-12);
    }

    .criteria-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
      gap: var(--s-5);
    }

    .criteria-card {
      background: var(--c-bg);
      border: 1px solid var(--c-border);
      border-radius: var(--r-lg);
      padding: var(--s-7);
      display: flex;
      flex-direction: column;
      gap: var(--s-4);
      transition: border-color 0.2s ease;
    }

    .criteria-card:hover {
      border-color: rgba(76, 185, 68, 0.25);
    }

    .criteria-card__icon {
      width: 36px;
      height: 36px;
      border-radius: var(--r-sm);
      background: rgba(76, 185, 68, 0.08);
      border: 1px solid rgba(76, 185, 68, 0.15);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .criteria-card__icon svg {
      width: 16px;
      height: 16px;
      stroke: var(--c-green);
      fill: none;
      stroke-width: 1.6;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .criteria-card__title {
      font-family: var(--font-head);
      font-size: var(--t-lg);
      font-weight: 700;
      color: var(--c-text);
      letter-spacing: -0.01em;
    }

    .criteria-card__body {
      font-size: var(--t-base);
      color: var(--c-text-3);
      line-height: 1.7;
    }

    .criteria-note {
      margin-top: var(--s-10);
      padding: var(--s-6) var(--s-7);
      background: rgba(76, 185, 68, 0.04);
      border: 1px solid rgba(76, 185, 68, 0.12);
      border-radius: var(--r-md);
      display: flex;
      align-items: flex-start;
      gap: var(--s-4);
    }

    .criteria-note__icon {
      width: 18px;
      height: 18px;
      flex-shrink: 0;
      margin-top: 2px;
    }

    .criteria-note__icon svg {
      width: 18px;
      height: 18px;
      stroke: var(--c-green);
      fill: none;
      stroke-width: 1.6;
      stroke-linecap: round;
    }

    .criteria-note__text {
      font-size: var(--t-sm);
      color: var(--c-text-3);
      line-height: 1.65;
    }

    .criteria-note__text strong {
      color: var(--c-text-2);
      font-weight: 600;
    }

    /* ─────────────────────────────────────────
       03 — INTAKE FORM
    ───────────────────────────────────────── */

    .form-section {
      background: var(--c-bg);
    }

    .form-section .section-label {
      text-align: center;
    }

    .form-section .section-title {
      text-align: center;
      max-width: 560px;
      margin-left: auto;
      margin-right: auto;
    }

    .form-section .section-sub {
      text-align: center;
      max-width: 50ch;
      margin: 0 auto var(--s-12);
    }

    .form-card {
      max-width: 680px;
      margin: 0 auto;
      background: var(--c-bg-1);
      border: 1px solid var(--c-border);
      border-radius: var(--r-xl);
      padding: clamp(var(--s-8), 5vw, var(--s-12));
    }

    .form-card__header {
      display: flex;
      align-items: center;
      gap: var(--s-3);
      margin-bottom: var(--s-8);
      padding-bottom: var(--s-6);
      border-bottom: 1px solid var(--c-border);
    }

    .form-card__header-dot {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: var(--c-green);
      box-shadow: 0 0 10px rgba(76, 185, 68, 0.5);
      flex-shrink: 0;
    }

    .form-card__header-label {
      font-family: var(--font-mono);
      font-size: 11px;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--c-text-4);
    }

    /* Form layout */
    .form-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: var(--s-5);
    }

    .form-group {
      display: flex;
      flex-direction: column;
      gap: var(--s-2);
      margin-bottom: var(--s-5);
    }

    .form-group:last-of-type {
      margin-bottom: 0;
    }

    .form-label {
      font-family: var(--font-mono);
      font-size: 11px;
      font-weight: 500;
      letter-spacing: 0.10em;
      text-transform: uppercase;
      color: var(--c-text-4);
    }

    .form-label span {
      color: var(--c-green);
      margin-left: 2px;
    }

    .form-input,
    .form-select,
    .form-textarea {
      background: var(--c-bg);
      border: 1px solid var(--c-border);
      border-radius: var(--r-md);
      padding: 12px var(--s-4);
      font-family: var(--font-body);
      font-size: var(--t-base);
      color: var(--c-text);
      outline: none;
      transition: border-color 0.2s ease, box-shadow 0.2s ease;
      width: 100%;
      box-sizing: border-box;
      -webkit-appearance: none;
      appearance: none;
    }

    .form-input::placeholder,
    .form-textarea::placeholder {
      color: var(--c-text-4);
    }

    .form-input:focus,
    .form-select:focus,
    .form-textarea:focus {
      border-color: rgba(76, 185, 68, 0.4);
      box-shadow: 0 0 0 3px rgba(76, 185, 68, 0.07);
    }

    .form-select {
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%23555' stroke-width='1.5' stroke-linecap='round' fill='none'/%3E%3C/svg%3E");
      background-repeat: no-repeat;
      background-position: right 14px center;
      padding-right: 40px;
      cursor: pointer;
    }

    .form-select option {
      background: #1A1A1A;
      color: var(--c-text);
    }

    .form-textarea {
      resize: vertical;
      min-height: 110px;
      line-height: 1.65;
    }

    .form-divider {
      height: 1px;
      background: var(--c-border);
      margin: var(--s-7) 0;
    }

    .form-submit {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: var(--s-3);
      margin-top: var(--s-7);
    }

    .form-disclaimer {
      text-align: center;
      font-size: var(--t-xs);
      color: var(--c-text-4);
      line-height: 1.6;
      margin-top: var(--s-4);
    }

    /* ─────────────────────────────────────────
       04 — WHATSAPP ALTERNATE ENTRY
    ───────────────────────────────────────── */

    .alt-entry-section {
      background: var(--c-bg-1);
    }

    .alt-entry-inner {
      max-width: 640px;
      margin: 0 auto;
      text-align: center;
    }

    .alt-entry__divider {
      display: flex;
      align-items: center;
      gap: var(--s-5);
      margin-bottom: var(--s-10);
    }

    .alt-entry__divider-line {
      flex: 1;
      height: 1px;
      background: var(--c-border);
    }

    .alt-entry__divider-label {
      font-family: var(--font-mono);
      font-size: 11px;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--c-text-4);
      white-space: nowrap;
    }

    .alt-entry__card {
      background: var(--c-bg);
      border: 1px solid var(--c-border);
      border-radius: var(--r-xl);
      padding: var(--s-8) var(--s-8);
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: var(--s-5);
    }

    .alt-entry__wa-icon {
      width: 48px;
      height: 48px;
      border-radius: 50%;
      background: rgba(37, 211, 102, 0.08);
      border: 1px solid rgba(37, 211, 102, 0.15);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .alt-entry__wa-icon svg {
      width: 22px;
      height: 22px;
      fill: #25D366;
    }

    .alt-entry__heading {
      font-family: var(--font-head);
      font-size: var(--t-xl);
      font-weight: 700;
      color: var(--c-text);
      letter-spacing: -0.015em;
    }

    .alt-entry__body {
      font-size: var(--t-base);
      color: var(--c-text-3);
      line-height: 1.7;
      max-width: 38ch;
    }

    .alt-entry__btn {
      display: inline-flex;
      align-items: center;
      gap: var(--s-3);
      padding: 14px var(--s-7);
      border-radius: var(--r-md);
      background: rgba(37, 211, 102, 0.1);
      border: 1px solid rgba(37, 211, 102, 0.25);
      font-family: var(--font-head);
      font-size: var(--t-base);
      font-weight: 600;
      color: #25D366;
      text-decoration: none;
      letter-spacing: -0.01em;
      transition: background 0.2s ease, border-color 0.2s ease;
    }

    .alt-entry__btn:hover {
      background: rgba(37, 211, 102, 0.16);
      border-color: rgba(37, 211, 102, 0.4);
    }

    .alt-entry__note {
      font-size: var(--t-xs);
      color: var(--c-text-4);
      line-height: 1.55;
    }

    /* ─────────────────────────────────────────
       FOOTER (shared)
    ───────────────────────────────────────── */

    .footer__brand-mark {
      display: flex;
      align-items: center;
      gap: var(--s-4);
      margin-bottom: var(--s-5);
    }

    .footer__brand-mark-text { display: flex; flex-direction: column; gap: 3px; }

    .footer__brand-name {
      font-family: var(--font-head);
      font-weight: 800;
      font-size: 16px;
      color: var(--c-text);
      letter-spacing: -0.01em;
    }

    .footer__brand-tagline {
      font-family: var(--font-mono);
      font-size: 10px;
      color: var(--c-text-4);
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    /* Full-width brand identity strip at base of footer */
    .footer__identity {
      border-top: 1px solid var(--c-border);
      margin-top: var(--s-8);
      padding-top: var(--s-5);
      display: flex;
      align-items: center;
      gap: var(--s-3);
    }

    .footer__identity-mark { opacity: 0.35; }

    .footer__identity-text {
      font-family: var(--font-mono);
      font-size: 10px;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--c-text-4);
    }

    /* ─────────────────────────────────────────
       RESPONSIVE
    ───────────────────────────────────────── */

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

      .form-card {
        border-radius: var(--r-lg);
      }

      .criteria-grid {
        grid-template-columns: 1fr;
      }

      .alt-entry__card {
        padding: var(--s-7) var(--s-6);
      }
    }

  