@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&display=swap";:root{color-scheme:light;--ink: #20231e;--muted: #6d7169;--bg: #fbf8f1;--bg-wash-a: #f1ecdf;--bg-wash-b: #fbf8f1;--card-bg: #fffdf7;--border: #d8d2c5;--border-soft: #e7e2d3;--accent: #235f4a;--accent-hover: #174537;--accent-soft: #dfece3;--accent-ring: rgba(35, 95, 74, .18);--amber: #be6b35;--amber-soft: #f7e5d8;--success: #235f4a;--success-soft: #dfece3;--error: #813c24;--error-soft: #f9e6df;--shadow-sm: 0 1px 2px rgba(50, 45, 35, .06);--shadow-card: 0 24px 70px rgba(50, 45, 35, .1);--shadow-button: 0 8px 20px -8px rgba(35, 95, 74, .45);--shadow-button-hover: 0 12px 26px -8px rgba(35, 95, 74, .55);--radius-card: 20px;--radius-field: 12px;--radius-pill: 999px;--font-display: "Fraunces", Georgia, serif;--font-body: "DM Sans", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;font-family:var(--font-body);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);line-height:1.5;-webkit-font-smoothing:antialiased}.app-shell{min-height:100vh;background:radial-gradient(60% 50% at 50% -8%,var(--bg-wash-a) 0%,transparent 100%),var(--bg-wash-b)}.app{max-width:640px;margin:0 auto;padding:clamp(1.5rem,4vw,3rem) 1.25rem 4.5rem;display:flex;flex-direction:column;gap:1.75rem}.site-header{position:relative;display:flex;justify-content:center;align-items:center;padding-top:.25rem}.lang-switcher{position:absolute;right:0;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .55rem .3rem .6rem;border-radius:999px;border:1px solid #c9c4b8;background:#ffffffb8;color:var(--accent);transition:background .15s ease,border-color .15s ease}.lang-switcher:hover{background:#fff;border-color:var(--accent)}.lang-switcher-icon{width:16px;height:16px;flex:none}.lang-switcher-select{appearance:none;-webkit-appearance:none;border:none;background:transparent;font:inherit;font-size:.82rem;font-weight:600;color:#4a4e47;padding:0 .1rem;max-width:8.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.lang-switcher-select:focus-visible{outline:none;border-radius:6px;box-shadow:0 0 0 3px var(--accent-ring)}@media(max-width:460px){.lang-switcher{padding:.28rem .5rem}.lang-switcher-select{font-size:.76rem;max-width:6rem}}.theme-toggle{position:absolute;left:0;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border-radius:999px;border:1px solid #c9c4b8;background:#ffffffb8;color:var(--accent);cursor:pointer;transition:background .15s ease,border-color .15s ease}.theme-toggle:hover{background:#fff;border-color:var(--accent)}.theme-toggle:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-ring)}.theme-toggle-icon{width:16px;height:16px;flex:none}:root[data-theme=dark] .theme-toggle{background:#ffffff0f;border-color:#ffffff29}:root[data-theme=dark] .theme-toggle:hover{background:#ffffff1f;border-color:var(--accent)}.locale-loading-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#20231e6b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.locale-loading-card{display:flex;flex-direction:column;align-items:center;gap:.7rem;padding:1.6rem 2.2rem;border-radius:var(--radius-field);background:var(--paper, #fbf8f1);box-shadow:0 18px 50px #00000040}.locale-spinner{width:30px;height:30px;border-radius:50%;border:3px solid rgba(35,95,74,.22);border-top-color:var(--accent, #235f4a);animation:locale-spin .7s linear infinite}.locale-loading-text{font-family:var(--font-display);font-weight:600;font-size:1.05rem;color:var(--ink, #20231e)}.locale-loading-sub{font-size:.85rem;color:#6b6f67}@keyframes locale-spin{to{transform:rotate(360deg)}}.wordmark{display:inline-flex;align-items:center;gap:.5rem}.wordmark-icon{width:32px;height:32px;flex:none}.wordmark-text{font-family:var(--font-display);font-weight:600;font-size:1.1rem;letter-spacing:-.01em;color:var(--ink)}.hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.4rem;padding:.5rem 0 .75rem}.eyebrow{color:var(--accent);font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.6rem}.hero h1{margin:0;color:var(--ink);font-family:var(--font-display);font-weight:600;font-size:clamp(2rem,6vw,3rem);letter-spacing:-.03em;line-height:1.08}.hero h1 em{color:var(--accent);font-style:italic}.hero>p{margin:1.1rem auto 0;color:var(--muted);font-size:1rem;line-height:1.65;max-width:46ch}.trust-chips{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.trust-chip{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;font-weight:500;color:var(--accent);background:var(--accent-soft);border:1px solid rgba(35,95,74,.15);padding:.34rem .72rem;border-radius:var(--radius-pill)}.trust-chip svg{width:13px;height:13px;flex:none}.progress-steps{list-style:none;margin:0;padding:0;display:flex;align-items:flex-start;justify-content:center;gap:.5rem}.progress-step{display:flex;flex-direction:column;align-items:center;gap:.4rem;flex:1;max-width:140px;position:relative}.progress-step:before{content:"";position:absolute;top:15px;left:-50%;width:100%;height:1px;background:var(--border);z-index:0}.progress-step:first-child:before{display:none}.progress-step.is-done:before{background:var(--accent)}.progress-dot{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--card-bg);border:1px solid var(--border);color:var(--muted);font-family:var(--font-display);font-size:.85rem;font-weight:600;transition:background .2s ease,border-color .2s ease,color .2s ease}.progress-dot svg{width:14px;height:14px}.progress-step.is-current .progress-dot{border-color:var(--ink);background:var(--ink);color:#fff}.progress-step.is-done .progress-dot{border-color:transparent;background:var(--accent-soft);color:var(--accent)}.progress-label{font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#9a9b94;text-align:center}.progress-step.is-current .progress-label{color:var(--ink)}.progress-step.is-done .progress-label{color:var(--accent)}.card{background:linear-gradient(140deg,rgba(255,255,255,.6),transparent 42%),var(--card-bg);border:1px solid rgba(88,82,68,.13);border-radius:var(--radius-card);padding:clamp(1.5rem,4vw,2.5rem);box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:1.15rem;animation:card-in .35s ease both}@keyframes card-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.card-title{margin:0;font-family:var(--font-display);font-weight:600;font-size:1.4rem;letter-spacing:-.02em}.card-subtitle{margin:-.7rem 0 0;color:var(--muted);font-size:.92rem}.card-divider{height:1px;background:var(--border-soft);margin:.3rem 0;border:none}.field{display:flex;flex-direction:column;gap:.45rem;flex:1;min-width:0}.field-label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.field textarea,.field input,.field select{font:inherit;font-size:.98rem;padding:.8rem .9rem;border:1.5px solid var(--border);border-radius:var(--radius-field);background-color:#fff;color:var(--ink);transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease;width:100%;outline-offset:2px}.field textarea::placeholder,.field input::placeholder{color:#a2a39d}.field textarea:focus-visible,.field input:focus-visible,.field select:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring);background-color:#fff}.intent-textarea{resize:vertical;min-height:6.5rem;line-height:1.55}.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M4 6l4 4 4-4' stroke='%23235f4a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center;padding-right:2.4rem}.field-row{display:flex;flex-direction:column;gap:1rem}.target-list{display:flex;flex-direction:column;gap:.9rem}.target-row{display:flex;flex-direction:column;gap:.6rem;padding:1rem 1rem 1.1rem;background:var(--bg-wash-a);border:1px solid var(--border-soft);border-radius:var(--radius-field)}.target-fields{display:flex;gap:.8rem;flex-wrap:wrap}.target-fields .field{min-width:160px}.primary-button,.secondary-button{font:inherit;font-weight:700;font-size:.95rem;padding:.85rem 1.4rem;border-radius:var(--radius-field);border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;transition:transform .15s ease,box-shadow .2s ease,background .15s ease,opacity .15s ease}.primary-button{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:var(--shadow-button)}.primary-button:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:var(--shadow-button-hover);transform:translateY(-1px)}.primary-button:active:not(:disabled){transform:translateY(0)}.primary-button:focus-visible,.secondary-button:focus-visible,.link-button:focus-visible{outline:none;box-shadow:0 0 0 4px var(--accent-ring)}.primary-button:disabled{opacity:.45;cursor:not-allowed;transform:none}.secondary-button{background:transparent;border-color:#c9c4b8;color:#5f635c}.secondary-button:hover{background:#fff9}.locale-detect-button{align-self:flex-start;margin-top:.6rem;font-size:.85rem;padding:.55rem 1rem}.locale-detect-button:before{content:"🌐";font-size:.95rem}.locale-detect-button:disabled{opacity:.45;cursor:not-allowed}.voice-intake{display:flex;flex-direction:column;gap:.4rem;margin-top:.6rem}.voice-button{align-self:flex-start;font-size:.85rem;padding:.55rem 1rem;border-radius:var(--radius-pill)}.voice-button:disabled{opacity:.55;cursor:progress}.voice-button.is-recording{border-color:var(--amber);background:var(--amber-soft);color:var(--amber)}.voice-button.is-recording .btn-icon{animation:voice-pulse 1.4s ease-in-out infinite}@keyframes voice-pulse{0%,to{opacity:1}50%{opacity:.35}}.voice-hint{margin:0;font-size:.82rem;color:var(--muted)}.results-lang-toggle{align-self:flex-start;margin:0 0 1rem;font-size:.85rem;padding:.5rem .95rem}.results-lang-toggle:before{content:"🌐";font-size:.95rem}.button-row{display:flex;gap:.75rem;flex-wrap:wrap}.button-row .secondary-button{flex:0 0 auto}.button-row .primary-button{flex:1}.btn-icon{width:14px;height:14px;flex:none}.link-button{background:none;border:none;color:var(--accent);cursor:pointer;font:inherit;font-weight:700;font-size:.85rem;padding:.4rem .2rem;display:inline-flex;align-items:center;gap:.35rem;align-self:flex-start;border-radius:6px}.link-button:hover{color:var(--accent-hover);text-decoration:underline}.link-button-muted{color:var(--muted);align-self:flex-end}.link-button-muted:hover{color:var(--error)}.reassurance-note{display:flex;align-items:flex-start;gap:.65rem;padding:.9rem 1.05rem;background:var(--success-soft);border:1px solid #c7ddcf;border-radius:var(--radius-field);font-size:.88rem;color:var(--accent-hover)}.checkbox-field{cursor:pointer}.consent-field{background:var(--amber-soft);border-color:#e8c9ac;color:#7a4620}:root[data-theme=dark] .consent-field{border-color:#4a3a28;color:#e8c0a0}.field-hint{display:block;margin-top:.3rem;font-size:.8rem;font-weight:400;color:var(--muted);line-height:1.45}.checkbox-field input{margin:.15rem 0 0;width:18px;height:18px;accent-color:var(--accent);flex:none}.cue-icon{width:18px;height:18px;flex:none;color:var(--accent);margin-top:.05rem}.error{color:var(--error);background:var(--error-soft);border:1px solid #e5b9a7;border-radius:var(--radius-field);padding:.7rem .95rem;font-size:.88rem;margin:0}.plan-block{display:flex;flex-direction:column;gap:.4rem}.plan-block-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.plan-venues{margin:0;font-family:var(--font-display);font-size:1.1rem;font-weight:600}.plan-goal{margin:0;padding:.95rem 1.1rem;background:var(--accent-soft);border-inline-start:3px solid var(--accent);border-start-end-radius:var(--radius-field);border-end-end-radius:var(--radius-field);color:var(--ink);font-family:var(--font-display);font-size:1.1rem;font-style:normal;line-height:1.45}.plan-disclosure{margin:0;padding:.95rem 1.1rem;background:var(--bg-wash-a);border-radius:var(--radius-field);color:var(--ink);font-style:italic;line-height:1.5}.mode-note{margin:-.7rem 0 0;font-size:.72rem;font-weight:700;color:var(--amber);text-transform:uppercase;letter-spacing:.08em}.results-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.result-item{position:relative;border:1px solid var(--border-soft);border-radius:var(--radius-field);padding:1.15rem;display:flex;flex-direction:column;gap:.6rem;background:#fff}.result-item-best{border-color:var(--accent);background:var(--success-soft);box-shadow:0 6px 18px -8px #235f4a4d}.result-best-badge{display:inline-flex;align-items:center;gap:.3rem;align-self:flex-start;background:var(--accent);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.02em;padding:.25rem .65rem;border-radius:var(--radius-pill)}.result-best-badge svg{width:12px;height:12px;color:#fff}.result-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.result-venue{font-family:var(--font-display);font-size:1.1rem;font-weight:600}.outcome-chip{font-size:.72rem;font-weight:700;letter-spacing:.02em;padding:.28rem .75rem;border-radius:var(--radius-pill);background:var(--success-soft);color:var(--accent);text-transform:capitalize;white-space:nowrap}.outcome-chip.outcome-failed{background:var(--error-soft);color:var(--error)}.result-confidence{margin:0;font-size:.8rem;color:var(--muted)}.result-data{margin:0;display:grid;grid-template-columns:max-content minmax(0,1fr);gap:.3rem .85rem}.result-data-row{display:contents}.result-data dt{color:var(--muted);font-size:.85rem;text-transform:capitalize}.result-data dd{margin:0;font-size:.9rem;min-width:0;overflow-wrap:anywhere}@media(max-width:480px){.result-data{grid-template-columns:1fr;gap:.15rem 0}.result-data-row{display:flex;flex-direction:column;gap:.1rem;padding-bottom:.4rem}}.result-followup{margin:0;font-size:.85rem;color:var(--amber);font-weight:600}.result-evidence{margin:0;padding-left:1.1rem;font-size:.8rem;color:var(--muted)}@media(max-width:480px){.app{padding:1.25rem 1rem 3.5rem;gap:1.4rem}.hero h1{font-size:2rem}.hero>p{font-size:.92rem}.card{padding:1.25rem;border-radius:16px}.field-row,.target-fields{flex-direction:column}.progress-label{font-size:.6rem}.button-row{flex-direction:column-reverse}.button-row .secondary-button,.button-row .primary-button{width:100%}}:root[data-theme=dark]{color-scheme:dark;--ink: #ece9e0;--muted: #9aa39a;--bg: #17181a;--bg-wash-a: #1d211d;--bg-wash-b: #141516;--card-bg: #1e201c;--border: #33362f;--border-soft: #292b26;--accent: #4fae86;--accent-hover: #6bc39d;--accent-soft: #1f2f27;--accent-ring: rgba(79, 174, 134, .32);--amber: #d98a52;--amber-soft: #2c2319;--success: #4fae86;--success-soft: #1f2f27;--error: #e8887a;--error-soft: #2c1e1c;--shadow-card: 0 24px 60px rgba(0, 0, 0, .45);--shadow-button: 0 8px 20px -8px rgba(79, 174, 134, .35);--shadow-button-hover: 0 12px 26px -8px rgba(79, 174, 134, .45)}:root[data-theme=dark] .card{background:var(--card-bg)}:root[data-theme=dark] .field textarea,:root[data-theme=dark] .field input,:root[data-theme=dark] .field select{background-color:#23251f;border-color:var(--border);color:var(--ink)}:root[data-theme=dark] .field textarea::placeholder,:root[data-theme=dark] .field input::placeholder{color:#6f7568}:root[data-theme=dark] .field textarea:focus-visible,:root[data-theme=dark] .field input:focus-visible,:root[data-theme=dark] .field select:focus-visible{background-color:#23251f}:root[data-theme=dark] .field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M4 6l4 4 4-4' stroke='%234fae86' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center}:root[data-theme=dark] .lang-switcher{background:#ffffff0f;border-color:#ffffff29}:root[data-theme=dark] .lang-switcher:hover{background:#ffffff1f;border-color:var(--accent)}:root[data-theme=dark] .lang-switcher-select{color:var(--ink)}:root[data-theme=dark] .target-row,:root[data-theme=dark] .plan-disclosure{background:#23251f}:root[data-theme=dark] .primary-button{color:#10130f}:root[data-theme=dark] .progress-dot{background:var(--card-bg)}:root[data-theme=dark] .progress-step.is-current .progress-dot{background:var(--ink);color:#10130f}:root[data-theme=dark] .reassurance-note{color:#bfe0cd;border-color:#2f4536}:root[data-theme=dark] .result-item{background:#1e201c}.commitment-warning{display:flex;flex-direction:column;gap:.4rem;padding:.85rem 1rem;margin-bottom:.25rem;border:1.5px solid var(--error);border-radius:var(--radius-field);background:var(--error-soft);color:var(--error);font-size:.88rem}.commitment-warning p{margin:0;line-height:1.5}.commitment-warning-title{font-family:var(--font-display);font-size:.98rem;font-weight:700}.commitment-warning-quotes-label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;opacity:.8}.commitment-warning-quotes{margin:0;padding-inline-start:1.1rem;display:flex;flex-direction:column;gap:.25rem}.commitment-warning-quotes li{font-style:italic;line-height:1.45}.callback-card{border:1px dashed var(--border);border-radius:var(--radius-field);background:#ffffff80;padding:1.1rem 1.15rem;display:flex;flex-direction:column;gap:.55rem}.callback-title{margin:0;font-family:var(--font-display);font-weight:600;font-size:1.05rem;color:var(--ink)}.callback-subtitle{margin:0;font-size:.9rem;color:var(--muted)}.callback-row{display:flex;gap:.55rem;flex-wrap:wrap;align-items:center}.callback-input{flex:1 1 12rem;font:inherit;padding:.7rem .85rem;border-radius:var(--radius-field);border:1px solid var(--border);background:var(--card-bg);color:var(--ink)}.callback-input:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.callback-row .secondary-button{flex:0 0 auto}.callback-status{margin:0;font-size:.88rem;font-weight:500}.callback-status.is-ok{color:var(--success)}.callback-status.is-err{color:var(--error)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.locale-spinner{animation-duration:.7s!important;animation-iteration-count:infinite!important}}
