@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600&family=Source+Sans+3:wght@400;500;600&display=swap";:root{color-scheme:light;--navy: #0f3360;--navy-dark: #061b3a;--ink: #09162a;--muted: #4c5a74;--sand: #eef2f9;--paper: #ffffff;--accent: #cdd7ea;--success: #3a9c74}*{box-sizing:border-box}body{margin:0;font-family:"Source Sans 3",system-ui,sans-serif;background-color:var(--sand);min-height:100vh;color:var(--ink)}.app{max-width:960px;margin:0 auto;padding:40px 20px 80px}.hero{text-align:center;padding:40px 0 30px;color:var(--ink)}.hero h1{font-family:Playfair Display,serif;font-size:clamp(2.5rem,4vw,3.4rem);margin:12px 0}.hero .eyebrow{letter-spacing:.35rem;text-transform:uppercase;font-size:.9rem;color:var(--navy)}.hero .subheadline{max-width:620px;margin:0 auto;color:var(--muted)}.tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));border-radius:999px;background:#ffffffd9;padding:6px;box-shadow:0 10px 40px #071a371a;margin-bottom:32px}.tab{border:none;background:transparent;border-radius:999px;padding:14px 18px;font-size:.95rem;font-weight:600;color:var(--muted);cursor:pointer;transition:background .3s,color .3s,transform .3s}.tab:hover:not(:disabled){color:var(--ink)}.tab:disabled{opacity:.35;cursor:not-allowed}.tab.active{background:var(--navy);color:#fff;box-shadow:0 8px 20px #0a275233;transform:translateY(-1px)}.card{background:var(--paper);border-radius:24px;padding:32px;margin-bottom:32px;box-shadow:0 18px 45px #06152b1f}.card h2{margin:0 0 12px;font-family:Playfair Display,serif;font-size:2rem;color:var(--ink)}.card-lede{margin:0 0 24px;color:var(--muted)}.form-grid{display:grid;gap:18px}label{display:flex;flex-direction:column;gap:6px;font-weight:600;color:var(--ink)}label span{font-size:.9rem;letter-spacing:.02em}input,select,textarea{border:1px solid rgba(9,22,42,.15);border-radius:16px;padding:12px 16px;font-size:1rem;font-family:inherit;background:#fff;transition:border .2s,box-shadow .2s;color:var(--ink)}.multiselect{height:auto;min-height:120px;border-radius:18px;padding:8px 12px}.multiselect option{padding:6px 4px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px #0f336033}textarea{resize:vertical;min-height:120px;line-height:1.4}.field-group{display:flex;flex-direction:column;gap:10px;color:var(--ink)}.pill-options{display:flex;gap:10px}.pill-options button{flex:1;border-radius:999px;padding:12px 16px;border:1px solid rgba(9,22,42,.15);background:#fff;cursor:pointer;font-weight:600;transition:all .2s;color:var(--ink)}.pill-options button.selected{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 8px 20px #09162a33}.checkbox{flex-direction:row;align-items:center;gap:12px;font-weight:500;color:var(--ink)}.checkbox input{width:20px;height:20px}.companion{background:var(--sand);border-radius:20px;padding:24px;border:1px dashed rgba(9,22,42,.2)}.companion h3{margin-top:0;font-family:Playfair Display,serif;color:var(--ink)}.two-up{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:12px}.primary{border:none;border-radius:999px;padding:16px 24px;background:var(--ink);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}.primary:disabled{opacity:.65;cursor:progress}.primary:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 15px 30px #09162a33}.error{background:#09162a14;border-left:4px solid var(--navy);padding:12px 16px;border-radius:12px;color:var(--navy-dark)}.card.info ul{list-style:none;padding:0;margin:0;display:grid;gap:12px;color:var(--ink)}.card.info li{padding:12px 16px;background:var(--sand);border-radius:16px;border:1px solid rgba(9,22,42,.08)}.card.info strong{font-weight:700;margin-right:6px}.card.muted{background:var(--paper);border:1px solid rgba(9,22,42,.08)}.card.success{text-align:center}.card.success button{margin-top:20px;padding:12px 24px;border-radius:999px;border:none;background:var(--success);color:#fff;font-weight:600;cursor:pointer}.scroll-hint{display:inline-flex;align-items:center;gap:10px;margin-top:24px;color:var(--navy);font-weight:600;text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;animation:float 2s ease-in-out infinite}.scroll-hint svg{color:inherit}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(4px)}to{transform:translateY(0)}}@media(max-width:640px){.card{padding:24px}.tabs{border-radius:20px;grid-template-columns:1fr;gap:6px;padding:4px}.pill-options{flex-direction:column}}
