/* Strata Match — Match page styles, ported from handoff with preview refinements. */
  .intake{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;}
  .sit{position:relative;isolation:isolate;display:flex;flex-direction:column;text-align:left;cursor:pointer;background:var(--navy-900);color:var(--paper);
    border:1px solid var(--hairline-ink);padding:0;overflow:hidden;min-height:320px;transition:box-shadow var(--dur-med) var(--ease-out),transform var(--dur-med) var(--ease-out);}
  .sit:hover{transform:translateY(-3px);box-shadow:var(--shadow-card);}
  .sit-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3;transition:transform var(--dur-slow) var(--ease-out);}
  .sit:hover .sit-img{transform:scale(1.04);}
  .sit-scrim{position:absolute;inset:0;z-index:-2;background:
    linear-gradient(90deg,rgba(5,13,30,.92) 0%,rgba(5,13,30,.78) 50%,rgba(5,13,30,.38) 100%),
    linear-gradient(180deg,rgba(5,13,30,.10),rgba(5,13,30,.76));}
  .sit .top{height:4px;background:var(--line);position:relative;z-index:2;}
  .sit .in{position:relative;z-index:2;padding:28px;display:flex;flex-direction:column;flex:1;}
  .sit.sel{box-shadow:0 0 0 2px var(--line), var(--shadow-card);}
  .sit .eyebrow{color:var(--paper);}
  .sit .way-marker{box-shadow:0 8px 24px rgba(5,13,30,.28);}
  .sit-title{font-family:var(--font-display);font-size:clamp(28px,2.6vw,36px);line-height:.98;letter-spacing:-.02em;color:var(--paper);max-width:11ch;text-shadow:0 2px 22px rgba(5,13,30,.44);}
  .sit-copy{margin-top:16px;font-size:15px;line-height:1.5;color:#F0EADF;max-width:32ch;flex:1;text-shadow:0 1px 14px rgba(5,13,30,.52);}
  /* Unselected "Selected" label: opacity:.4 over --line-deep computed to ~1.97:1
     (axe fail). Use --fg-subtle at full opacity (AA-pass), and the deep brand
     colour on the selected card — distinction preserved without dimming. */
  .sit .chk{margin-top:22px;display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);
    font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--on-ink-muted-warm);}
  .sit.sel .chk{color:var(--paper);}

  .field{margin-bottom:24px;}
  .field .lbl{display:block;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.18em;
    text-transform:uppercase;color:var(--fg-muted);margin-bottom:8px;}
  .field input,.field select,.field textarea{width:100%;border:1px solid var(--border-strong);background:var(--bg-elevated);
    padding:14px 16px;font-family:var(--font-body);font-size:17px;color:var(--fg);outline:none;transition:border-color var(--dur-fast),box-shadow var(--dur-fast);}
  .field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(212,106,46,.16);}
  .seg{display:flex;flex-wrap:wrap;gap:8px;}
  .seg button{font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;padding:12px 16px;cursor:pointer;
    border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--fg-muted);transition:all var(--dur-fast);}
  .seg button:hover{border-color:var(--accent);}
  .seg button.on{background:var(--t-600);color:#fff;border-color:var(--t-600);}
  .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;}
  /* form + "what happens next" aside split. The handoff set this inline (7fr/5fr)
     with no mobile rule, so phones overflowed (390px viewport → 427px document).
     Moved to a class so it can collapse to one column at the page breakpoint. */
  .match-form-grid{display:grid;grid-template-columns:7fr 5fr;gap:40px;align-items:start;}
  @media(max-width:780px){.intake{grid-template-columns:1fr;}.form-grid{grid-template-columns:1fr;}.match-form-grid{grid-template-columns:1fr;}}
  .success{display:none;}
