.saved-project-actions { flex-wrap: wrap; }
.workspace-panel.is-hidden, .home-only.is-hidden { display: none; }
.workspace-hero.is-hidden { display: none; }
.workspace-status, .plan-badge { display: none; }
.workspace-header { align-items: center; background: white; border-bottom: 1px solid var(--line); display: grid; gap: 22px; grid-template-columns: auto 1fr auto; padding: 16px max(28px, calc((100% - 1320px) / 2)); position: sticky; top: 0; z-index: 5; }
.workspace-tabs { align-items: center; display: flex; gap: 4px; justify-content: center; }.workspace-tabs a { border-radius: 8px; color: var(--muted); font-size: .78rem; font-weight: 700; padding: 10px 12px; text-decoration: none; white-space: nowrap; }.workspace-tabs a:hover, .workspace-tabs a.active { background: var(--soft-green); color: var(--green); }
.workspace-tabs a[href="#premium"] { color: #795548; font-weight: 800; }.workspace-tabs a[href="#premium"]:hover, .workspace-tabs a[href="#premium"].active { background: #f1e7df; color: #5d4037; }
.workspace-hero { align-items: end; background: var(--green); border-radius: 0 0 22px 22px; color: white; display: flex; justify-content: space-between; margin: 0 -28px 26px; padding: 54px max(28px, calc((100% - 1124px) / 2)); }.workspace-hero h1 { font-size: clamp(2.5rem, 5vw, 4.8rem); margin-bottom: 14px; }.workspace-hero p:not(.eyebrow) { color: #d6e0d8; margin: 0; max-width: 560px; }
.dashboard-hero { background: radial-gradient(circle at 78% 25%, rgba(217,240,106,0.15), transparent 26%), linear-gradient(135deg, #123c2e 0%, var(--green) 52%, #0f2d24 100%); box-shadow: 0 24px 60px rgba(12, 34, 27, 0.12); }
.workspace-hero-copy { max-width: 690px; }
.workspace-status { align-items: center; background: #2c6d52; border: 1px solid #58816a; border-radius: 14px; display: flex; gap: 12px; min-width: 150px; padding: 14px 16px; }.workspace-status strong, .workspace-status small { display: block; }.workspace-status small { color: #c8e0c9; font-size: .72rem; margin-top: 3px; }
.hub-actions { align-items: center; display: flex; gap: 12px; margin-top: 24px; }.hub-actions .button { margin-top: 0; }.button-outline { border: 1px solid #789786; color: white; }.button-outline:hover { background: #2c6d52; }
.dashboard-summary { display: grid; gap: 16px; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0 auto 24px; max-width: 1184px; }.summary-card { background: white; border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 12px 28px rgba(20,33,27,0.04); padding: 22px 22px 18px; }.summary-label { color: var(--muted); display: block; font-size: .72rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }.summary-card strong { color: var(--green); display: block; font-family: 'Space Grotesk', sans-serif; font-size: clamp(1.8rem, 3vw, 2.5rem); letter-spacing: -.06em; margin: 12px 0 8px; }.summary-card small { color: var(--muted); }
.dashboard-priority { align-items: stretch; display: grid; gap: 18px; grid-template-columns: 1.5fr .8fr; margin: 0 auto 26px; max-width: 1184px; }.priority-panel, .priority-mini { background: white; border: 1px solid var(--line); border-radius: 20px; padding: 28px; }
.priority-panel { box-shadow: 0 12px 28px rgba(20,33,27,0.04); }
.priority-panel h2 { font-size: clamp(1.8rem, 3vw, 2.8rem); letter-spacing: -.07em; line-height: 1.05; margin: 0 0 14px; }
.priority-panel p:not(.eyebrow) { color: var(--muted); margin: 0; max-width: 630px; }
.priority-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.priority-mini { display: grid; gap: 12px; }
.mini-metric { background: #f5f9f1; border: 1px solid var(--line); border-radius: 14px; padding: 18px; }
.mini-metric span { color: var(--muted); display: block; font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.mini-metric strong { display: block; font-size: 1.15rem; letter-spacing: -.04em; margin-top: 8px; }
.workspace-panel { background: white; border: 1px solid var(--line); border-radius: 20px; margin-top: 22px; padding: 34px; scroll-margin-top: 90px; }.analyzer-panel { padding: 42px; }.panel-heading { align-items: start; display: flex; justify-content: space-between; margin-bottom: 28px; }.panel-heading.compact { margin-bottom: 22px; }.panel-heading h2 { font-size: clamp(1.8rem, 3vw, 2.8rem); letter-spacing: -.06em; line-height: 1; margin: 0 0 12px; }.panel-heading p:not(.eyebrow) { color: var(--muted); margin: 0; max-width: 600px; }.form-progress-label { color: var(--muted); font-size: .78rem; font-weight: 700; }
.form-grid label.is-valid { color: var(--green); }.form-grid label.is-valid input { border-color: var(--green); box-shadow: 0 0 0 2px #dcebd9; }.form-grid label.is-invalid { color: #a13e2d; }.form-grid label.is-invalid input { border-color: #a13e2d; box-shadow: 0 0 0 2px #f5d5ce; }.form-grid label.is-invalid .term-tooltip { color: #a13e2d; }
.analysis-progress { align-items: center; color: var(--muted); display: grid; font-size: .78rem; font-weight: 700; gap: 8px; grid-template-columns: auto 1fr; margin: 14px 0 2px; }.analysis-progress[hidden] { display: none; }.analysis-progress .progress-dot { background: var(--green); border-radius: 50%; height: 8px; width: 8px; }.progress-track { background: var(--line); grid-column: 1 / -1; height: 4px; overflow: hidden; }.progress-track span { animation: analysis-progress 2.2s ease-in-out infinite; background: var(--green); display: block; height: 100%; width: 45%; }@keyframes analysis-progress { 0% { transform: translateX(-110%); } 100% { transform: translateX(245%); } }.term-tooltip { background: #fff; border: 1px solid currentColor; border-radius: 50%; color: inherit; cursor: help; font: inherit; font-size: .65rem; font-weight: 800; height: 16px; line-height: 1; margin-left: 5px; padding: 0; position: relative; vertical-align: middle; width: 16px; }.term-tooltip::after { background: var(--ink); border-radius: 4px; color: white; content: attr(data-tooltip); font-size: .75rem; font-weight: 500; left: 50%; line-height: 1.4; opacity: 0; padding: 9px 10px; pointer-events: none; position: absolute; text-align: left; top: calc(100% + 8px); transform: translateX(-50%); transition: opacity .15s; visibility: hidden; width: 220px; z-index: 4; }.term-tooltip:hover::after, .term-tooltip:focus-visible::after { opacity: 1; visibility: visible; }
.project-summary { align-items: baseline; border-top: 1px solid var(--line); display: flex; gap: 10px; margin-top: 24px; padding-top: 18px; }.project-summary strong { font-family: 'Space Grotesk', sans-serif; font-size: 2rem; }.project-summary span { color: var(--muted); font-size: .8rem; }.account-menu { align-items: center; display: flex; gap: 16px; }.account-menu > span { color: var(--muted); font-size: .78rem; }
.account-popover { position: relative; }.account-menu-button { align-items: center; background: none; border: 0; border-radius: 6px; cursor: pointer; display: flex; flex-direction: column; gap: 4px; height: 36px; justify-content: center; padding: 0; width: 40px; }.account-menu-button span { background: var(--ink); display: block; height: 2px; width: 16px; }.account-menu-button:hover, .account-menu-button[aria-expanded="true"] { background: var(--soft-green); }.account-menu-button:focus-visible { outline: 2px solid var(--green); outline-offset: 2px; }.account-menu-options { background: white; border: 1px solid var(--line); border-radius: 8px; box-shadow: 0 12px 28px rgba(20,33,27,.13); min-width: 190px; padding: 7px; position: absolute; right: 0; top: calc(100% + 8px); z-index: 10; }.account-menu-options button { background: none; border: 0; border-radius: 4px; color: var(--ink); cursor: pointer; display: block; font: inherit; font-size: .83rem; padding: 10px; text-align: left; width: 100%; }.account-menu-options button:hover { background: var(--soft-green); color: var(--green); }.account-menu-options hr { border: 0; border-top: 1px solid var(--line); margin: 6px 0; }.account-menu-options .account-signout { color: #a13e2d; font-weight: 700; }
@media (max-width: 980px) { .workspace-header { grid-template-columns: auto auto; }.workspace-tabs { grid-column: 1 / -1; grid-row: 2; justify-content: flex-start; overflow-x: auto; order: 3; }.account-menu { justify-content: end; }.workspace-hero { align-items: start; flex-direction: column; gap: 28px; } }
@media (max-width: 720px) { .workspace-header { padding: 14px 18px 10px; }.workspace-tabs a { font-size: .72rem; padding: 8px 9px; }.dashboard-shell { padding-left: 18px; padding-right: 18px; }.workspace-hero { margin-left: -18px; margin-right: -18px; padding-left: 18px; padding-right: 18px; }.workspace-panel, .analyzer-panel { padding: 24px 18px; }.panel-heading { flex-direction: column; gap: 14px; }.workspace-status { width: 100%; }.account-menu > span { display: none; } }
@media (max-width: 720px) { .settings-grid, .premium-grid { grid-template-columns: 1fr; }.saved-project { align-items: flex-start; flex-direction: column; gap: 14px; } }
.saved-projects-list { display: grid; gap: 10px; margin-top: 25px; }
.saved-project { align-items: center; background: white; border: 1px solid var(--line); border-radius: 14px; display: flex; flex-wrap: wrap; justify-content: space-between; padding: 18px 22px; }
.saved-project strong, .saved-project span { display: block; }
.saved-project span { color: var(--muted); font-size: .8rem; margin-top: 5px; }
.saved-project-actions, .result-actions { align-items: center; display: flex; gap: 18px; }
.comparison-heading { align-items: center; display: flex; justify-content: space-between; gap: 16px; }.comparison-heading h3 { margin: 0; }.comparison-heading > span, .comparison-note { color: var(--muted); font-size: .8rem; }.comparison-note { margin: 8px 0 18px; }.comparison-metrics { display: grid; gap: 10px; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 12px; }.comparison-metrics small { color: var(--ink); display: grid; gap: 3px; font-size: .78rem; }.comparison-metrics em { color: var(--muted); font-size: .67rem; font-style: normal; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.strategic-preview { align-items: center; background: #f5f8f1; border: 1px dashed #b9cbb8; border-radius: 12px; display: flex; gap: 20px; justify-content: space-between; margin-top: 18px; padding: 18px 20px; }.strategic-preview h4 { margin: 10px 0 5px; }.strategic-preview p { color: var(--muted); font-size: .82rem; margin: 0; max-width: 620px; }.strategic-preview .text-button { flex: 0 0 auto; }.strategic-preview .lock-mark { display: inline-block; }
.saved-project-actions input[type="checkbox"] { accent-color: var(--green); height: 16px; width: 16px; }.saved-project-actions .text-button:disabled { color: var(--muted); cursor: not-allowed; }
.document-list { border-top: 1px solid var(--line); display: grid; gap: 8px; margin-top: 16px; padding-top: 14px; width: 100%; }.document-row { align-items: center; display: flex; gap: 16px; justify-content: space-between; }.document-row > span { color: var(--muted); font-size: .82rem; margin: 0; overflow-wrap: anywhere; }.document-row > div { align-items: center; display: flex; flex: 0 0 auto; gap: 14px; }.pdf-document-button { align-items: center; background: #a13e2d; border-radius: 4px; color: white; display: inline-flex; font-size: .62rem; font-weight: 800; height: 22px; justify-content: center; letter-spacing: .04em; text-decoration: none; width: 28px; }
.settings-grid, .premium-grid { display: grid; gap: 16px; grid-template-columns: repeat(2, 1fr); margin-top: 25px; }.settings-card, .premium-card { background: white; border: 1px solid var(--line); border-radius: 16px; padding: 24px; }.settings-card h3, .premium-card h3 { margin-top: 0; }.settings-card label { color: var(--muted); display: flex; flex-direction: column; font-size: .85rem; font-weight: 700; gap: 8px; margin-bottom: 15px; }.settings-card .button { margin-top: 0; }.danger-button { background: none; border: 0; color: #a13e2d; cursor: pointer; display: block; font: inherit; font-weight: 800; margin-top: 10px; padding: 0; }.plan-badge, .lock-mark { background: #fff5df; border-radius: 99px; color: #91621f; font-size: .72rem; font-weight: 800; padding: 6px 10px; }.premium-grid { grid-template-columns: repeat(3, 1fr); }.premium-card { display: flex; flex-direction: column; min-height: 260px; position: relative; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }.premium-card:hover { border-color: #b5c8b8; box-shadow: 0 14px 30px rgba(20, 33, 27, .08); transform: translateY(-2px); }.premium-card p, .settings-card p { color: var(--muted); }.premium-card .lock-mark { display: inline-block; align-self: flex-start; }.premium-card button:disabled { color: var(--green); cursor: not-allowed; font-weight: 800; margin-top: auto; padding-top: 18px; }.card-kicker, .feature-label { color: var(--green); display: block; font-size: .68rem; font-weight: 800; letter-spacing: .08em; margin-bottom: 10px; text-transform: uppercase; }.feature-label { color: var(--muted); margin-top: 22px; }.security-status { align-items: center; color: var(--green); display: inline-flex; font-size: .78rem; font-weight: 800; gap: 8px; white-space: nowrap; }.security-status .status-dot { height: 8px; width: 8px; }.settings-card-danger { border-color: #eaded8; }.danger-zone { border-top: 1px solid #eaded8; display: grid; gap: 4px; margin-top: 24px; padding-top: 18px; }.danger-zone strong { font-size: .82rem; }.danger-zone small { color: var(--muted); }.premium-footer { align-items: center; border-top: 1px solid var(--line); color: var(--muted); display: flex; font-size: .78rem; gap: 16px; justify-content: space-between; margin-top: 20px; padding-top: 16px; }.premium-footer strong { color: var(--green); font-size: .78rem; }
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap');
:root { --ink: #14211b; --muted: #68736c; --paper: #f8f8f3; --green: #1f5d45; --lime: #d9f06a; --line: #dfe5dc; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: Inter, ui-sans-serif, system-ui, -apple-system, sans-serif; line-height: 1.5; opacity: 1; transition: opacity .22s ease, transform .22s ease; }
body.auth-page.is-loading { opacity: 0; }
body.dashboard-page.is-loading { opacity: 0; }
html.history-boundary body { opacity: 0; visibility: hidden; }
body.auth-page:not(.is-loading) { opacity: 1; }
body.is-transitioning, body.page-transitioning { opacity: 0; transform: translateY(-4px); }
.page-transition { background: var(--paper); inset: 0; opacity: 1; pointer-events: none; position: fixed; transition: opacity .18s ease; z-index: 9999; }
.page-transition.is-hidden { opacity: 0; }
body.page-transitioning .page-transition { opacity: 1; }
.site-header { align-items: center; background: rgba(248, 248, 243, 0.72); border-bottom: 1px solid rgba(21, 35, 28, 0.06); backdrop-filter: blur(14px); display: flex; justify-content: space-between; max-width: 1180px; margin: auto; padding: 22px 28px; position: sticky; top: 0; z-index: 20; }
.brand { color: var(--ink); font-size: 1.35rem; font-weight: 800; letter-spacing: -0.05em; text-decoration: none; }.brand span { color: var(--green); }.header-link, .text-button { color: var(--green); font-weight: 700; text-decoration: none; }
.hero { background: linear-gradient(135deg, #173f31 0%, var(--green) 52%, #103728 100%); color: white; display: grid; grid-template-columns: 1.2fr .8fr; gap: 60px; min-height: 470px; padding: 86px max(28px, calc((100% - 1124px) / 2)); }
.eyebrow { color: #8aa992; font-size: .72rem; font-weight: 800; letter-spacing: .15em; margin: 0 0 14px; text-transform: uppercase; }.hero .eyebrow { color: var(--lime); }
h1 { font-size: clamp(2.7rem, 7vw, 5.8rem); letter-spacing: -.08em; line-height: .97; margin: 0; max-width: 700px; }.hero-text { color: #d6e0d8; font-size: 1.15rem; margin: 28px 0; max-width: 530px; }
.button { border: 0; border-radius: 99px; cursor: pointer; display: inline-flex; font: inherit; font-weight: 800; gap: 20px; justify-content: space-between; padding: 15px 20px; text-decoration: none; transition: transform .15s ease, box-shadow .15s ease, opacity .15s ease; }.button:hover { transform: translateY(-1px); }.button-light { background: var(--lime); color: var(--ink); box-shadow: 0 12px 30px rgba(217,240,106,.25); }.button-secondary { background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.18); color: white; }.button-primary { background: var(--green); color: white; margin-top: 24px; }.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 8px; }.hero-card { align-self: center; background: rgba(44,109,82,.92); border: 1px solid rgba(255,255,255,.12); border-radius: 24px; box-shadow: 0 24px 60px rgba(8,25,18,.22); padding: 34px; transform: rotate(3deg); }.hero-card strong { display: block; font-size: 2.3rem; letter-spacing: -.06em; }.hero-card small { color: #c6d9ca; }.orb { align-items: center; background: var(--lime); border-radius: 50%; color: var(--ink); display: flex; font-size: 2rem; height: 70px; justify-content: center; margin-bottom: 70px; width: 70px; box-shadow: 0 10px 25px rgba(217,240,106,.35); }.mini-progress { background: #58816a; border-radius: 9px; height: 8px; margin: 20px 0 12px; }.mini-progress span { background: var(--lime); border-radius: inherit; display: block; height: 100%; width: 68%; }
.trust-bar { background: white; border: 1px solid var(--line); border-radius: 20px; display: grid; gap: 20px; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: -25px auto 0; max-width: 1180px; padding: 22px 28px; position: relative; box-shadow: 0 18px 35px rgba(20,33,27,.05); }.trust-bar div { align-items: start; display: flex; flex-direction: column; gap: 6px; }.trust-bar strong { color: var(--green); font-size: 1.2rem; letter-spacing: -.04em; }.trust-bar span { color: var(--muted); font-size: .8rem; }
.steps { display: grid; gap: 1px; grid-template-columns: repeat(3, 1fr); margin: auto; max-width: 1180px; padding: 58px 28px; }.steps article { border-left: 1px solid var(--line); padding: 0 28px; }.steps span { color: var(--green); font-weight: 800; }.steps h3 { font-size: 1.05rem; margin-bottom: 8px; }.steps p, .section-heading > p:last-child { color: var(--muted); margin-top: 0; }
.feature-band { background: #f5f9f1; margin: 0 auto; max-width: 1180px; padding: 18px 28px 68px; }
.section-heading { margin-bottom: 35px; max-width: 620px; }
.section-heading h2, .results h2 { font-size: clamp(2rem, 4vw, 3.2rem); letter-spacing: -.07em; line-height: 1; margin: 0 0 14px; }
.feature-grid { display: grid; gap: 22px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.feature-grid article { background: white; border: 1px solid var(--line); border-radius: 18px; padding: 28px 22px; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.feature-grid article:hover, .legal-grid article:hover, .proof-grid article:hover { transform: translateY(-3px); box-shadow: 0 18px 30px rgba(20,33,27,.05); border-color: rgba(31,93,69,.2); }
.feature-grid h3 { font-size: 1.2rem; letter-spacing: -.04em; margin-top: 0; }
.feature-grid p { color: var(--muted); margin-bottom: 0; }
.proof-band { background: #ffffff; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); margin: 0 auto; max-width: 1180px; padding: 52px 28px; }
.proof-copy { margin-bottom: 28px; max-width: 700px; }
.proof-copy h2 { font-size: clamp(2rem, 4vw, 3.1rem); letter-spacing: -.07em; line-height: 1; margin: 0 0 12px; }
.proof-copy p:last-child { color: var(--muted); margin: 0; }
.proof-grid { display: grid; gap: 20px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.proof-grid article { background: #f8faf5; border: 1px solid var(--line); border-radius: 20px; padding: 26px 22px; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.proof-grid strong { color: var(--green); display: block; font-size: clamp(1.6rem, 3vw, 2.3rem); letter-spacing: -.06em; margin-bottom: 12px; }
.proof-grid span { color: var(--muted); display: block; line-height: 1.5; }
.legal-band { margin: 0 auto; max-width: 1180px; padding: 0 28px 62px; }
.legal-grid { display: grid; gap: 22px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.legal-grid article { background: white; border: 1px solid var(--line); border-radius: 18px; padding: 28px 22px; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.legal-grid h3 { font-size: 1.15rem; letter-spacing: -.03em; margin-top: 0; }
.legal-grid p { color: var(--muted); margin-bottom: 0; }
.workspace { background: white; padding: 90px max(28px, calc((100% - 1000px) / 2)); }.form-card, .result-card { border: 1px solid var(--line); border-radius: 20px; padding: 28px; }.form-progress { color: var(--muted); display: flex; font-size: .8rem; font-weight: 700; justify-content: space-between; margin-bottom: 28px; }.form-grid { display: grid; gap: 20px; grid-template-columns: repeat(2, 1fr); }.form-grid label { color: var(--muted); display: flex; flex-direction: column; font-size: .85rem; font-weight: 700; gap: 8px; }.form-grid .wide { grid-column: span 2; }input { background: var(--paper); border: 1px solid var(--line); border-radius: 10px; color: var(--ink); font: inherit; padding: 13px; }input:focus { border-color: var(--green); outline: 3px solid #dcebd9; }.form-note { color: var(--muted); font-size: .75rem; margin-bottom: 0; }
.message { border-radius: 10px; margin-top: 20px; padding: 14px; }.error { background: #fff0ed; color: #a13e2d; }.results { margin-top: 80px; }.results-heading { align-items: end; display: flex; justify-content: space-between; }.text-button { background: none; border: 0; cursor: pointer; font: inherit; padding: 0; }.metrics { display: grid; gap: 12px; grid-template-columns: repeat(4, 1fr); margin: 28px 0; }.metrics article { background: var(--green); border-radius: 16px; color: white; padding: 22px; }.metrics span, .metrics small { color: #c7dccb; display: block; font-size: .75rem; }.metrics strong { display: block; font-size: 1.7rem; margin: 15px 0 4px; }.result-columns { display: grid; gap: 16px; grid-template-columns: 1fr 1fr; }.result-card h3 { margin-top: 0; }.result-card ul { list-style: none; margin: 0; padding: 0; }.result-card li { border-bottom: 1px solid var(--line); padding: 12px 0; }.result-card li::before { color: var(--green); content: "✓"; font-weight: 800; margin-right: 10px; }.marketing { background: #f1f6e8; }.marketing p:not(.eyebrow) { color: #415248; }.next-step { background: var(--lime); border-radius: 16px; display: flex; gap: 18px; margin-top: 16px; padding: 20px; }.next-step span { color: #465335; }
.site-footer { display: grid; gap: 16px; grid-template-columns: 1.4fr 1fr; margin: auto; max-width: 1180px; padding: 30px 28px 44px; color: var(--muted); font-size: .8rem; }
.site-footer .brand { display: inline-block; margin-bottom: 10px; }
.site-footer p { margin: 0; }
.footer-links { align-items: center; display: flex; flex-wrap: wrap; gap: 18px; justify-content: flex-end; }
.footer-links a { color: var(--muted); text-decoration: none; }
.footer-links a:hover { color: var(--green); }
.footer-meta { grid-column: 1 / -1; border-top: 1px solid var(--line); padding-top: 18px; }
.trust-panel { background: #fff; border: 1px solid var(--line); border-radius: 8px; margin-top: 16px; padding: 24px; }.trust-panel-heading { align-items: start; display: flex; gap: 20px; justify-content: space-between; }.trust-panel h3, .trust-panel h4 { margin: 0; }.confidence-badge { background: #fff5df; border-radius: 99px; color: #91621f; font-size: .75rem; padding: 6px 10px; white-space: nowrap; }.verified-location-map { color: var(--green); display: inline-block; font-weight: 700; margin-top: 18px; }.trust-grid { display: grid; gap: 26px; grid-template-columns: 1fr 1fr; margin-top: 20px; }.trust-grid ul { list-style: none; margin: 10px 0 0; padding: 0; }.trust-grid li { border-top: 1px solid var(--line); color: var(--muted); font-size: .86rem; padding: 10px 0; }.verification-verified::before { color: var(--green); content: 'Verified '; font-weight: 800; }.verification-pending::before { color: #91621f; content: 'Pending '; font-weight: 800; }.verification-assumption::before { color: #91621f; content: 'Assumption '; font-weight: 800; }.comparison-panel { border-top: 1px solid var(--line); margin-top: 24px; padding-top: 20px; }.comparison-panel h3 { margin: 0 0 14px; }.comparison-results { display: grid; gap: 10px; grid-template-columns: repeat(3, minmax(0, 1fr)); }.comparison-item { min-width: 0; border: 1px solid var(--line); border-radius: 8px; padding: 14px; }.comparison-item strong, .comparison-item span, .comparison-item b, .comparison-item small { display: block; }.comparison-item span, .comparison-item small { color: var(--muted); font-size: .78rem; }.comparison-item b { color: var(--green); margin: 10px 0 3px; }
@media (max-width: 720px) { .hero { display: block; padding-bottom: 55px; padding-top: 55px; }.hero-card { margin-top: 55px; }.steps, .result-columns, .feature-grid, .proof-grid, .legal-grid { grid-template-columns: 1fr; }.steps article { border-left: 0; border-top: 1px solid var(--line); padding: 22px 0; }.form-grid, .metrics { grid-template-columns: 1fr; }.form-grid .wide { grid-column: auto; }.results-heading, .site-footer, .next-step { align-items: start; flex-direction: column; gap: 12px; }.footer-links { justify-content: flex-start; } }

/* Product workspace refinements */
:root { --ink: #15231c; --muted: #6d7970; --green-deep: #123c2e; --soft-green: #edf4e9; --amber: #e9a83a; }
body { font-family: 'DM Sans', ui-sans-serif, sans-serif; }
h1, h2, h3, .brand, .metrics strong, .hero-card strong { font-family: 'Space Grotesk', 'DM Sans', sans-serif; }
.site-nav { align-items: center; display: flex; gap: 28px; }.site-nav a { color: var(--muted); font-size: .88rem; font-weight: 600; text-decoration: none; }.site-nav a:hover { color: var(--green); }.site-nav .header-link { border: 0; border-radius: 99px; color: var(--ink); padding: 9px 14px; }.site-nav .header-link span { color: var(--green); margin-left: 5px; }
.hero { background: radial-gradient(circle at 82% 26%, #34735a 0, transparent 27%), var(--green); position: relative; }.hero::after { border: 1px solid rgba(217,240,106,.18); border-radius: 50%; content: ''; height: 360px; position: absolute; right: -100px; top: -130px; width: 360px; }.hero-proof { color: #aec8b4; display: flex; flex-wrap: wrap; font-size: .75rem; gap: 18px; margin-top: 55px; }.hero-proof span::before { color: var(--lime); content: '•'; margin-right: 7px; }.hero-card { box-shadow: 0 18px 45px rgba(7,34,23,.18); position: relative; z-index: 1; }.status-line { color: #c8e0c9; font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }.status-dot { background: var(--lime); border-radius: 50%; display: inline-block; height: 7px; margin-right: 7px; width: 7px; }
.workflow-band { align-items: center; background: #f0f4e9; display: grid; gap: 50px; grid-template-columns: .7fr 1.3fr; padding: 52px max(28px, calc((100% - 1124px) / 2)); }.workflow-band h2 { font-size: clamp(1.7rem, 3vw, 2.5rem); letter-spacing: -.06em; line-height: 1.05; margin: 0; max-width: 320px; }.workflow-track { align-items: center; display: flex; justify-content: space-between; }.workflow-track span { color: #99a69d; font-size: .75rem; text-align: center; }.workflow-track span b { color: var(--ink); display: block; font-size: .82rem; margin-top: 6px; }.workflow-track .active { color: var(--green); font-weight: 800; }.workflow-track .active b { color: var(--green); }.workflow-track i { background: #c8d3c5; display: block; height: 1px; width: 12%; }
.workspace { padding-bottom: 120px; padding-top: 100px; }.section-heading { max-width: 620px; }.form-card { box-shadow: 0 12px 35px rgba(20,33,27,.05); }.form-card-heading, .card-heading { align-items: center; display: flex; justify-content: space-between; }.form-card-heading h3 { font-size: 1.45rem; letter-spacing: -.04em; margin: 4px 0 0; }.form-kicker { color: var(--green); font-size: .7rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }.secure-note { color: var(--muted); font-size: .75rem; }.secure-note::before { content: '◈'; margin-right: 6px; }.form-progress { border-bottom: 1px solid var(--line); padding-bottom: 18px; padding-top: 28px; }.results-subtitle { color: var(--muted); margin: 0; }.review-badge { background: #fff5df; border-radius: 99px; color: #91621f; font-size: .7rem; font-weight: 700; padding: 6px 9px; }.result-card h3 { font-size: 1.2rem; }.marketing { border-color: #dce8c9; }.next-step { align-items: center; }.next-step > div { display: flex; flex-direction: column; gap: 4px; }.next-icon { align-items: center; background: var(--ink); border-radius: 50%; color: var(--lime); display: flex; flex: 0 0 auto; font-size: 1.2rem; height: 34px; justify-content: center; width: 34px; }
@media (max-width: 720px) { .site-nav { gap: 12px; }.site-nav > a:not(.header-link) { display: none; }.workflow-band { display: block; }.workflow-track { margin-top: 35px; }.workflow-track i { width: 7%; }.hero::after { display: none; }.hero-proof { margin-top: 35px; }.dashboard-summary, .dashboard-priority { grid-template-columns: 1fr; }.priority-actions { flex-direction: column; align-items: stretch; }.strategic-preview { align-items: flex-start; flex-direction: column; } }

#comparison-results { display: grid; gap: 10px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.comparison-item { min-width: 0; }
.auth-panel label.password-match { color: var(--green); }.auth-panel label.password-match input { border-color: var(--green); box-shadow: 0 0 0 2px #dcebd9; }.auth-panel label.password-mismatch { color: #a13e2d; }.auth-panel label.password-mismatch input { border-color: #a13e2d; box-shadow: 0 0 0 2px #f5d5ce; }
.comparison-item strong, .comparison-item span, .comparison-item b, .comparison-item small { overflow-wrap: anywhere; }
@media (max-width: 980px) { #comparison-results { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 720px) { #comparison-results { grid-template-columns: 1fr; } }

.saved-projects-list { gap: 12px; }
.saved-project { align-items: stretch; gap: 22px; padding: 20px 22px; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.saved-project:hover { border-color: #b5c8b8; box-shadow: 0 10px 24px rgba(20, 33, 27, .07); transform: translateY(-1px); }
.saved-project > div:first-child { flex: 1 1 260px; min-width: 0; }
.saved-project > div:first-child strong { font-family: 'Space Grotesk', 'DM Sans', sans-serif; font-size: 1.02rem; }
.saved-project-actions { align-content: center; flex: 0 1 520px; gap: 8px 14px; justify-content: flex-end; }
.saved-project-actions .text-button { font-size: .78rem; white-space: nowrap; }
.comparison-panel { background: #fbfcf9; border: 1px solid var(--line); border-radius: 14px; padding: 22px; }
.comparison-panel .comparison-heading { margin-bottom: 2px; }
.comparison-item { background: white; box-shadow: 0 3px 12px rgba(20, 33, 27, .04); min-height: 148px; }
.comparison-item strong { font-family: 'Space Grotesk', 'DM Sans', sans-serif; font-size: .98rem; }
.comparison-metrics { border-top: 1px solid var(--line); padding-top: 12px; }
.strategic-preview { background: white; margin-top: 20px; }
.verified-mark { background: var(--soft-green); border: 1px solid #b9cbb8; border-radius: 99px; color: var(--green); font-size: .68rem; font-weight: 800; padding: 4px 8px; white-space: nowrap; }
.project-summary { margin-top: 26px; }
@media (max-width: 720px) { .saved-project { padding: 18px; }.saved-project-actions { flex: 1 1 100%; justify-content: flex-start; }.comparison-panel { padding: 18px; }.comparison-heading { align-items: flex-start; flex-direction: column; gap: 5px; } }

.auth-page { background: radial-gradient(circle at 10% 0, #edf4e9, transparent 32%), var(--paper); min-height: 100vh; }.auth-shell { margin: auto; max-width: 470px; padding: 55px 24px; }.auth-topbar { align-items: center; display: flex; justify-content: space-between; margin-bottom: 70px; }.auth-shell .brand { display: inline-block; }.back-link { color: var(--muted); font-size: .8rem; font-weight: 700; text-decoration: none; }.back-link:hover { color: var(--green); }.auth-panel { background: white; border: 1px solid var(--line); border-radius: 22px; box-shadow: 0 20px 50px rgba(20,33,27,.06); padding: 34px; transition: box-shadow .18s ease, transform .18s ease; }.auth-panel:hover { box-shadow: 0 26px 58px rgba(20,33,27,.08); transform: translateY(-2px); }.auth-heading h1 { font-size: 2.7rem; letter-spacing: -.08em; line-height: 1; margin: 0 0 14px; }.auth-heading > p:last-child { color: var(--muted); margin: 0 0 30px; }.auth-tabs { border-bottom: 1px solid var(--line); display: flex; gap: 22px; margin-bottom: 24px; }.auth-tabs button { background: none; border: 0; border-bottom: 2px solid transparent; color: var(--muted); cursor: pointer; font: inherit; font-weight: 700; padding: 0 0 12px; }.auth-tabs button.active { border-color: var(--green); color: var(--green); }.auth-panel label { color: var(--muted); display: flex; flex-direction: column; font-size: .85rem; font-weight: 700; gap: 8px; margin-bottom: 17px; }.auth-panel .button { width: 100%; }.password-field { position: relative; }.password-field input { padding-right: 62px; width: 100%; }.password-field button { background: none; border: 0; color: var(--green); cursor: pointer; font: inherit; font-size: .78rem; font-weight: 800; padding: 8px; position: absolute; right: 5px; top: 5px; }.auth-footnote { color: var(--muted); font-size: .73rem; margin: 20px 0 0; }.success { background: #edf7e6; color: var(--green); }.auth-panel .message { margin-top: 18px; }
.auth-panel select, .settings-card select { appearance: none; background: var(--paper) linear-gradient(45deg, transparent 50%, var(--green) 50%) calc(100% - 18px) 50% / 6px 6px no-repeat, linear-gradient(135deg, var(--green) 50%, transparent 50%) calc(100% - 12px) 50% / 6px 6px no-repeat; border: 1px solid var(--line); border-radius: 8px; color: var(--ink); font: inherit; line-height: 1.25; min-height: 46px; padding: 12px 42px 12px 13px; width: 100%; }.auth-panel select:focus, .settings-card select:focus { border-color: var(--green); outline: 3px solid #dcebd9; }.auth-panel label.password-match { color: var(--green); }.auth-panel label.password-match input { border-color: var(--green); box-shadow: 0 0 0 2px #dcebd9; }.auth-panel label.password-mismatch { color: #a13e2d; }.auth-panel label.password-mismatch input { border-color: #a13e2d; box-shadow: 0 0 0 2px #f5d5ce; }
.auth-panel label.field-invalid { color: #a13e2d; }.auth-panel label.field-invalid input, .auth-panel label.field-invalid select { border-color: #a13e2d; box-shadow: 0 0 0 2px #f5d5ce; }
.recovery-link { color: var(--green); display: block; font-size: .78rem; font-weight: 700; margin: -4px 0 22px; text-decoration: none; }.recovery-link[hidden] { display: none; }.recovery-link:hover { text-decoration: underline; }
.dashboard-page { background: #f5f7f1; min-height: 100vh; }.dashboard-header { max-width: 1240px; }.account-menu { align-items: center; display: flex; gap: 20px; }.account-menu > span { color: var(--muted); font-size: .85rem; }.dashboard-shell { margin: auto; max-width: 1184px; padding: 55px 28px 100px; }.dashboard-intro { align-items: end; display: flex; justify-content: space-between; margin-bottom: 55px; }.dashboard-intro h1 { font-size: clamp(2.6rem, 5vw, 4.5rem); letter-spacing: -.08em; line-height: .95; margin: 0 0 15px; }.dashboard-intro p:not(.eyebrow) { color: var(--muted); margin: 0; }.workspace-grid { display: grid; gap: 16px; grid-template-columns: 1.35fr .65fr; }.dashboard-card { background: white; border: 1px solid var(--line); border-radius: 20px; min-height: 240px; padding: 28px; }.primary-card { background: var(--green); color: white; }.card-label { color: var(--green); font-size: .7rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }.primary-card .card-label { color: var(--lime); }.dashboard-card h2 { font-size: 2rem; letter-spacing: -.06em; margin: 42px 0 10px; }.dashboard-card p { color: var(--muted); max-width: 450px; }.primary-card p { color: #d1e0d3; }.primary-card .text-button { color: var(--lime); }.empty-number { display: block; font-family: 'Space Grotesk', sans-serif; font-size: 4rem; letter-spacing: -.08em; margin-top: 40px; }.muted-small { color: var(--muted); font-size: .8rem; }.dashboard-section { margin-top: 90px; }.section-title h2 { font-size: 2.2rem; letter-spacing: -.07em; margin: 0; }.guide-grid { display: grid; gap: 1px; grid-template-columns: repeat(3, 1fr); margin-top: 25px; }.guide-grid article { border-left: 1px solid var(--line); padding: 0 25px; }.guide-grid span { color: var(--green); font-weight: 800; }.guide-grid h3 { margin-bottom: 5px; }.guide-grid p { color: var(--muted); margin: 0; }
@media (max-width: 720px) { .auth-shell { padding-top: 30px; }.auth-topbar { margin-bottom: 45px; }.dashboard-intro, .account-menu { align-items: start; flex-direction: column; gap: 20px; }.workspace-grid, .guide-grid { grid-template-columns: 1fr; }.guide-grid article { border-left: 0; border-top: 1px solid var(--line); padding: 22px 0; } }
.signed-out-shell { margin: auto; max-width: 560px; padding: 55px 24px; }.signed-out-shell > .brand { display: inline-block; margin-bottom: 100px; }.signed-out-panel { background: white; border: 1px solid var(--line); border-radius: 22px; box-shadow: 0 20px 50px rgba(20,33,27,.06); padding: 42px; text-align: center; }.signed-out-icon { align-items: center; background: var(--soft-green); border-radius: 50%; color: var(--green); display: flex; font-size: 1.4rem; font-weight: 800; height: 56px; justify-content: center; margin: 0 auto 24px; width: 56px; }.signed-out-panel h1 { font-size: clamp(2.2rem, 6vw, 3.4rem); letter-spacing: -.08em; line-height: 1; margin: 0 0 16px; }.signed-out-panel > p:not(.eyebrow) { color: var(--muted); margin: 0 auto 28px; max-width: 360px; }.signed-out-panel .button { width: auto; }
