/* Glide to Market — approved Modern handoff, light by default. */
:root {
  --glide-bg:#f7f3eb; --glide-surface:#fffdf8; --glide-soft:#eee9de;
  --glide-ink:#262923; --glide-muted:#68705f; --glide-line:#dcd7cb;
  --glide-accent:#b64e1b; --glide-orange:#ed792a; --glide-tint:#f8ede1;
  --glide-tint-line:#e7ccb7; --glide-success:#34674f; --glide-success-bg:#eaf2e9;
  --glide-warning:#825e28; --glide-warning-bg:#f6f0e3;
  --ink:var(--glide-ink); --muted:var(--glide-muted); --line:var(--glide-line);
  --paper:var(--glide-bg); --wash:var(--glide-bg); --accent:var(--glide-accent);
  --accent-dark:#a74516; --giraffe-orange:var(--glide-orange); --giraffe-ink:var(--glide-ink);
  color-scheme:light; color:var(--glide-ink); background:var(--glide-bg);
  font-family:Arial,Helvetica,sans-serif;
}
:root[data-theme="dark"] {
  --glide-bg:#191a19; --glide-surface:#22241f; --glide-soft:#292c24;
  --glide-ink:#fff4df; --glide-muted:#b2b6a8; --glide-line:#41443a;
  --glide-accent:#f5a06a; --glide-tint:#352a21; --glide-tint-line:#6b4932;
  --glide-success:#a1cfb6; --glide-success-bg:#25372c;
  --glide-warning:#e4c28c; --glide-warning-bg:#332f23;
  --accent-dark:#ffb381; color-scheme:dark;
}
body.reach-landing,body.reach-results {
  --paper:var(--glide-bg); --wash:var(--glide-bg); --line:var(--glide-line);
  color:var(--glide-ink); background:var(--glide-bg); font-family:Arial,Helvetica,sans-serif;
}
body .brand.giraffe-brand {color:var(--glide-ink);gap:12px;font-family:Arial,Helvetica,sans-serif;font-size:32px;font-weight:750;letter-spacing:-1.5px;line-height:.9}
body .giraffe-brand .giraffe-mark {width:60px;height:68px;object-fit:contain}
body .giraffe-wordmark>span {font-size:9px;letter-spacing:2px;text-transform:uppercase;font-weight:600;margin-top:9px}
body .legacy-brand .giraffe-mark,body .loading-giraffe {width:60px;height:68px;object-fit:contain}
body .site-footer .giraffe-brand {font-size:28px}
body .site-footer .giraffe-mark {width:50px;height:58px}
body .reach-scene .reach-art {aspect-ratio:3/2;overflow:hidden}
body .reach-art img {object-fit:contain;mix-blend-mode:normal}
body .reach-art img.reach-dark {display:none}
html[data-theme="dark"] .reach-art img.reach-light {display:none}
html[data-theme="dark"] .reach-art img.reach-dark {display:block}
body .reach-scene.compact .reach-art {aspect-ratio:2/1}
body .reach-scene.compact .reach-art img {object-fit:cover}
body .reach-scene figcaption {color:var(--glide-muted)}
body .theme-toggle {display:inline-flex;flex:none;align-items:center;justify-content:center;gap:7px;min-width:70px;min-height:38px;padding:9px 11px;border:1px solid var(--glide-line);border-radius:6px;background:var(--glide-surface);color:var(--glide-ink);font:500 11px Arial,Helvetica,sans-serif;cursor:pointer;white-space:nowrap}
body .theme-toggle:hover {border-color:var(--glide-accent);background:var(--glide-tint)}
.theme-toggle svg {display:block;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
body .theme-toggle:focus-visible {outline:3px solid var(--glide-orange);outline-offset:3px}
body .theme-toggle[aria-pressed="true"] {border-color:var(--glide-tint-line)}

/* Landing: the approved concept's proportions, with the real example preserved. */
body.reach-landing .site-header {height:104px;background:var(--glide-bg);border-color:var(--glide-line)}
body.reach-landing .header-inner nav {gap:24px;color:var(--glide-ink)}
body.reach-landing .nav-cta {background:transparent;color:var(--glide-ink);border-color:var(--glide-line)}
body.reach-landing .nav-cta:hover {background:var(--glide-tint);border-color:var(--glide-accent)}
body.reach-landing .hero {grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);gap:24px;min-height:645px;padding-block:64px 52px}
body.reach-landing .hero h1 {font-size:clamp(54px,5.6vw,78px);line-height:.99;font-weight:650;letter-spacing:-4px}
body.reach-landing .hero h1>span {color:var(--glide-accent)}
body.reach-landing .hero-description {font-size:15px;max-width:390px;line-height:1.75;color:var(--glide-muted)}
body.reach-landing .hero-description strong {color:var(--glide-ink)}
body.reach-landing .hero .eyebrow {color:var(--glide-accent);letter-spacing:2px;font-size:11px}
body.reach-landing .status-dot {width:22px;height:1px;border-radius:0;box-shadow:none;background:var(--glide-accent)}
body.reach-landing .hero .website-form {max-width:456px}
body.reach-landing .website-form label {font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:500}
body.reach-landing .input-box {background:var(--glide-surface);border-color:var(--glide-line);box-shadow:none}
body.reach-landing .input-box:focus-within {border-color:var(--glide-accent)}
body.reach-landing .input-box input {color:var(--glide-ink)}
body.reach-landing .input-box input::placeholder {color:var(--glide-muted)}
body.reach-landing .website-form .button {background:var(--glide-orange);color:#231e16;border-radius:4px;font-size:12px}
body.reach-landing .website-form .button:hover {background:#fa914b}
body.reach-landing .hero-reach {margin-right:-20px}
body.reach-landing .hero-reach .reach-art {aspect-ratio:3/2}
body.reach-landing .hero-reach figcaption {justify-content:flex-end;text-align:right;font-size:10px;letter-spacing:1px;text-transform:uppercase;padding-right:20px;margin-top:10px}
body.reach-landing .hero-reach figcaption:before {display:none}
body.reach-landing .hero-assurance {color:var(--glide-muted);font-size:10px}
body.reach-landing :is(.form-note,.section-heading>p,.process-step>p,.deliverable-copy>p:not(.eyebrow),.included-row p,.coverage-note,.faq>div>p,.questions details p,.site-footer p,.next-steps p) {color:var(--glide-muted)}
body.reach-landing :is(.proof-band,.deliverable) {background:var(--glide-soft);border-color:var(--glide-line)}
body.reach-landing :is(.proof-source p:last-child,.proof-number>span,.proof-delivery,.mini-label,.section-heading .eyebrow) {color:var(--glide-muted)}
body.reach-landing :is(.proof-symbol,.step-example,.audience-example>span,.buyer-preview,.buyer-row,.preview-footer button) {background:var(--glide-surface);border-color:var(--glide-line);color:var(--glide-ink)}
body.reach-landing :is(.buyer-preview,.input-box) {box-shadow:0 4px 20px #281e1004}
body.reach-landing :is(.search-context,.audience-example,.preview-header,.preview-footer) {background:var(--glide-surface);border-color:var(--glide-line);color:var(--glide-muted)}
body.reach-landing :is(.buyer-row,.list-column-labels,.preview-label,.preview-footer strong,.run-intro,.preview-footnote,.preview-footnote strong) {border-color:var(--glide-line);color:var(--glide-muted)}
body.reach-landing .buyer-row strong {color:var(--glide-ink)}
body.reach-landing .buyer-row small {color:var(--glide-muted)}
body.reach-landing .buyer-row:hover {background:var(--glide-soft)}
body.reach-landing .buyer-row.is-selected {background:var(--glide-tint)}
body.reach-landing .real-run .avatar {background:var(--glide-soft);color:var(--glide-muted)}
body.reach-landing .real-run .is-selected .avatar {background:var(--glide-orange);color:#231e16}
body.reach-landing .real-run .buyer-detail {background:var(--glide-soft);color:var(--glide-ink);border:1px solid var(--glide-line)}
body.reach-landing .real-run .buyer-detail>p {color:var(--glide-ink)}
body.reach-landing .real-run .buyer-detail .detail-assumption {color:var(--glide-muted);border-color:var(--glide-orange)}
body.reach-landing :is(.detail-topline,.detail-bottom,.evidence-links a) {color:var(--glide-muted);border-color:var(--glide-line)}
body.reach-landing .detail-topline>span:first-child {color:var(--glide-accent)}
body.reach-landing :is(.run-badge,.chapter-status.available) {background:var(--glide-tint);border-color:var(--glide-tint-line);color:var(--glide-accent)}
body.reach-landing :is(.section-heading h2>span,.final-copy>p,.final-benefits,.final-section .form-note) {color:var(--glide-muted)}
body.reach-landing :is(.final-section,.site-footer,.next-steps article,.platform-teaser) {background:var(--glide-bg);border-color:var(--glide-line);color:var(--glide-ink)}
body.reach-landing .final-section {background:var(--glide-soft)}
body.reach-landing .final-copy h2 {color:var(--glide-ink)}
body.reach-landing .final-copy h2>span {color:var(--glide-accent)}
body.reach-landing :is(.teaser-label>span,.chapter-status,.faq details p) {color:var(--glide-muted)}
body.reach-landing .teaser-art {background:var(--glide-soft);color:var(--glide-muted)}
body.reach-landing :is(.teaser-art>span,.export-example) {background:var(--glide-surface);color:var(--glide-muted);border-color:var(--glide-line)}
body.reach-landing .preview-stage:before {opacity:.35}
body.reach-landing :is(.included-row,.step-line,.next-steps article,.questions details,.footer-inner) {border-color:var(--glide-line)}

/* Private workspace: consistent surfaces, legible fit notes and saved states. */
body.reach-results {--header:88px}
body.reach-results .app-header {background:var(--glide-bg);border-color:var(--glide-line)}
body.reach-results :is(.button,.result-summary,.people-panel,.detail-pane,.library-card,.progress-card,.error-card,.recommendation-card,.export-dialog) {background:var(--glide-surface);border-color:var(--glide-line);color:var(--glide-ink)}
body.reach-results :is(.button:hover:not(:disabled),.icon-button:hover,.person-row:hover) {background:var(--glide-soft);border-color:var(--glide-line)}
body.reach-results .button.primary {background:var(--glide-orange);border-color:var(--glide-orange);color:#231e16}
body.reach-results .button.primary:hover:not(:disabled) {background:#fa914b;border-color:#fa914b}
body.reach-results :is(.product-glyph,.summary-icon,.dialog-symbol) {background:var(--glide-tint);color:var(--glide-accent);border-color:var(--glide-tint-line)}
body.reach-results :is(.ready-label,.reviewed-button.is-reviewed) {background:var(--glide-success-bg);color:var(--glide-success);border-color:var(--glide-line)}
body.reach-results .reviewed-dot {color:var(--glide-success)}
body.reach-results :is(.summary-icon.amber,.saved-button,.save-star:hover) {background:var(--glide-warning-bg);color:var(--glide-warning);border-color:var(--glide-line)}
body.reach-results .save-star.is-saved {color:var(--glide-warning)}
body.reach-results :is(.recommendations,.coverage-callout,.pending-card,.list-labels,.person-kind,.empty-symbol,.request-target) {background:var(--glide-soft);border-color:var(--glide-line);color:var(--glide-muted)}
body.reach-results :is(.recommendation-count,.recommendation-reason,.person-kind.is-recommended,.person-recommendation,.person-row.is-active) {background:var(--glide-tint);border-color:var(--glide-tint-line);color:var(--glide-ink)}
body.reach-results :is(.recommendation-mark,.recommendation-open,.recommendations-heading .eyebrow,.recommendation-reason .section-label,.person-recommendation,.recommendation-count) {color:var(--glide-accent)}
body.reach-results :is(.recommendation-company,.recommendation-card>p,.recommendations-disclosure,.recommendation-reason small,.assumption-panel small,.results-bottom,.detail-nav,.detail-nav .icon-button,.person-facts dt,.person-facts dd small,.notes-heading>span,.note-footer small,.detail-bottom,.source-details summary,.export-dialog>small,.library-section-title,.library-metrics small,.library-card-footer small,.progress-footer small,.eyebrow,.person-company strong) {color:var(--glide-muted)}
body.reach-results .detail-nav {background:var(--glide-surface)}
body.reach-results .assumption-panel {background:var(--glide-warning-bg);border-color:var(--glide-line)}
body.reach-results :is(.assumption-panel h3,.assumption-panel p) {color:var(--glide-warning)}
body.reach-results .fit-panel {background:var(--glide-soft);border-color:var(--glide-line)}
body.reach-results :is(.fit-panel p,.section-label) {color:var(--glide-ink)}
body.reach-results .fit-panel small {color:var(--glide-muted)}
body.reach-results :is(.search-box input,select,textarea) {background:var(--glide-surface);border-color:var(--glide-line);color:var(--glide-ink)}
body.reach-results :is(.search-box input,textarea)::placeholder {color:var(--glide-muted)}
body.reach-results .filter-tabs button>span {background:var(--glide-soft);color:var(--glide-muted)}
body.reach-results .filter-tabs button[aria-pressed="true"]>span {background:var(--glide-tint);color:var(--glide-accent)}
body.reach-results progress {background:var(--glide-soft)}
body.reach-results progress::-webkit-progress-bar {background:var(--glide-soft)}
body.reach-results progress::-webkit-progress-value {background:var(--glide-orange)}
body.reach-results .recommendation-open {border-color:var(--glide-line)}
body.reach-results .avatar {background:var(--glide-tint);color:var(--glide-accent)}
body.reach-results .tone-1 {background:var(--glide-success-bg);color:var(--glide-success)}
body.reach-results .tone-3 {background:var(--glide-soft);color:var(--glide-ink)}
body.reach-results .tone-4 {background:var(--glide-soft);color:var(--glide-muted)}
body.reach-results .connection-notice {background:var(--glide-warning-bg);border-color:var(--glide-line);color:var(--glide-warning)}
body.reach-results .save-error {color:var(--glide-accent)}
body.reach-results .intro-side {width:310px}
body.reach-results .library-side {width:310px}
body.reach-results .person-row {border-color:var(--glide-line)}

/* Entry screens and public platform preview share the selected preference. */
body.owner-login {background:var(--glide-bg);color:var(--glide-ink)}
.owner-login main {position:relative;background:var(--glide-surface);border-color:var(--glide-line);padding-top:70px}
.owner-login .theme-toggle {position:absolute;right:20px;top:18px;width:auto}
.owner-login input,.founder-header~main input {background:var(--glide-surface);color:var(--glide-ink);border-color:var(--glide-line)}
.owner-login form button {background:var(--glide-orange);color:#231e16}
html[data-theme="dark"] body:not(.reach-landing):not(.reach-results) {background:var(--glide-bg);color:var(--glide-ink)}
html[data-theme="dark"] :is(.founder-header,.founder-card,.auth-card,.start-card,.intro-card,.preview-shell,.preview-window,.preview-card,.feature-card) {background:var(--glide-surface);border-color:var(--glide-line);color:var(--glide-ink)}

@media(max-width:1100px) {
 body.reach-landing .header-inner nav {gap:16px}
 body.reach-landing .nav-preview {display:none}
 body.reach-landing .hero {gap:16px;min-height:590px}
 body.reach-landing .hero h1 {font-size:61px;letter-spacing:-3.4px}
 body.reach-results .intro-side,body.reach-results .library-side {width:260px}
}
@media(max-width:780px) {
 body .brand.giraffe-brand {font-size:27px;gap:9px}
 body .giraffe-brand .giraffe-mark {width:47px;height:58px}
 body .giraffe-wordmark>span {font-size:8px;letter-spacing:1.6px;margin-top:7px}
 body.reach-landing .site-header {height:89px}
 body.reach-landing .header-inner nav {gap:9px}
 body.reach-landing .nav-how {display:none}
 body.reach-landing .nav-cta {font-size:10px;padding:10px 11px;gap:7px}
 body.reach-landing .nav-cta .icon {display:none}
 body .theme-toggle {min-width:36px;width:36px;min-height:36px;padding:8px}
 body .theme-toggle span {display:none}
 body.reach-landing .hero {grid-template-columns:1fr;gap:16px;min-height:0;padding-block:42px 30px}
 body.reach-landing .hero h1 {font-size:clamp(45px,10.8vw,66px);line-height:1.02;letter-spacing:-2.7px}
 body.reach-landing .hero-description {font-size:14px;max-width:430px}
 body.reach-landing .hero-reach {margin:0 -12px;width:calc(100% + 24px);max-width:620px}
 body.reach-landing .hero-reach .reach-art {aspect-ratio:3/2}
 body.reach-landing .hero-reach figcaption {justify-content:center;text-align:center;font-size:8px;padding-right:0}
 body.reach-landing .website-form .button {font-size:11px}
 body.reach-results {--header:78px}
 body.reach-results .app-header-inner {gap:12px}
 body.reach-results .app-header-inner nav {gap:12px}
 body.reach-results .workspace-label {display:none}
}
@media(max-width:700px) {
 body.reach-results .intro-side,body.reach-results .library-side {width:100%}
 body.reach-results .intro-side .reach-scene,body.reach-results .library-side .reach-scene {width:190px}
}
@media(max-width:450px) {
 body.reach-landing .header-inner {gap:10px}
 body.reach-landing .nav-cta {font-size:9px;padding:10px 8px}
 body.reach-results .app-header-inner {padding-inline:16px;gap:8px}
 body.reach-results .app-header-inner nav {gap:8px}
 body.reach-results .app-header-inner nav .button {font-size:10px;padding:9px}
 body.reach-results .app-header-inner nav>a:first-child {display:none}
 body.reach-results .intro-side .reach-scene,body.reach-results .library-side .reach-scene {width:155px}
 body .site-footer .giraffe-brand {font-size:24px}
}
@media(prefers-reduced-motion:reduce) {html{scroll-behavior:auto}}

/* Private pages stay covered while a returning browser session is checked. */
.session-shield{max-width:600px;margin:90px auto;padding:32px;border:1px solid var(--glide-line);border-radius:14px;background:var(--glide-surface);color:var(--glide-ink);font-size:14px;line-height:1.7}.session-shield h2{font-size:26px;letter-spacing:-.7px;margin:0 0 12px}.session-shield p{color:var(--glide-muted);margin:0 0 20px}.session-shield[hidden],main[hidden]{display:none!important}
body:not(.reach-landing):not(.reach-results) .login-layout .form-card{background:var(--glide-surface);border-color:var(--glide-line)}
body:not(.reach-landing):not(.reach-results) .login-layout :is(input,.button){background:var(--glide-surface);border-color:var(--glide-line);color:var(--glide-ink)}
body:not(.reach-landing):not(.reach-results) .login-layout .button.primary{background:var(--glide-orange);border-color:var(--glide-orange);color:#231e16}.login-layout .form-message{color:var(--glide-success)}.login-layout .form-error{color:var(--glide-accent)}.login-layout .login-story h1>span{color:var(--glide-accent)}
@media(max-width:600px){.session-shield{margin:36px 20px;padding:24px}.session-shield h2{font-size:24px}}

.founder-header{background:var(--glide-bg);border-color:var(--glide-line)}.founder-header .quiet-link{color:var(--glide-muted)}
@media(max-width:600px){.founder-header nav .quiet-link{display:none}}
.login-layout :is(.eyebrow,.login-steps b){color:var(--glide-accent)}.login-layout .privacy-note>span{color:var(--glide-success)}
