/* Shared navigation and finishing touches across all public pages. */
        /* Top navigation bar */
        .site-topbar {
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            z-index: 1000;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 0.85rem 1.5rem;
            background: rgba(42, 148, 133, 0.4);
            backdrop-filter: blur(16px);
            -webkit-backdrop-filter: blur(16px);
            border-bottom: 1px solid rgba(255,255,255,0.08);
        }

        .topbar-inner {
            display: flex;
            align-items: center;
            justify-content: space-between;
            width: 100%;
            max-width: 1000px;
            position: relative;
        }

        .topbar-brand {
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            display: flex;
            align-items: center;
            gap: 0.5rem;
            text-decoration: none;
            color: var(--text-light);
            font-weight: 400;
            font-size: 1.25rem;
        
            font-family: 'Caprasimo', cursive;
        }

        .topbar-brand img {
            width: 34px;
            height: 34px;
        }

        .topbar-left-links {
            flex: 1;
            display: flex;
            align-items: center;
            gap: 0.25rem;
        }

        .topbar-right {
            flex: 1;
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 0.5rem;
        }

        .topbar-link {
            color: var(--highlight);
            text-decoration: none;
            font-size: 0.85rem;
            font-weight: 500;
            opacity: 0.85;
            transition: all 0.2s ease;
            padding: 0.4rem 0.85rem;
            border-radius: 6px;
        }

        .topbar-link:hover {
            opacity: 1;
            background: rgba(255,255,255,0.08);
        }

        .topbar-quiz-btn {
            color: #2A332E;
            background: #57BCAB;
            text-decoration: none;
            font-size: 0.82rem;
            font-weight: 600;
            padding: 0.45rem 1.1rem;
            border-radius: 8px;
            transition: all 0.2s ease;
            display: flex;
            align-items: center;
            gap: 0.35rem;
        }

        .topbar-quiz-btn:hover {
            background: #7dd3c0;
            transform: translateY(-1px);
        }

        .topbar-prompts-btn {
            white-space: nowrap;
            color: #2A332E;
            background: #57BCAB;
            text-decoration: none;
            font-size: 0.82rem;
            font-weight: 600;
            padding: 0.45rem 1.1rem;
            border-radius: 8px;
            transition: all 0.2s ease;
            display: flex;
            align-items: center;
            gap: 0.35rem;
        }

        .topbar-prompts-btn:hover {
            background: #7dd3c0;
            transform: translateY(-1px);
        }

        .topbar-hamburger {
            display: none;
            background: none;
            border: none;
            color: #fff;
            font-size: 1.2rem;
            cursor: pointer;
            padding: 0.3rem;
        }

        .topbar-dropdown {
            display: none;
            position: absolute;
            top: 100%;
            left: 0;
            right: 0;
            background: rgba(42, 148, 133, 0.95);
            backdrop-filter: blur(16px);
            -webkit-backdrop-filter: blur(16px);
            border-bottom: 1px solid rgba(255,255,255,0.08);
            padding: 0.5rem 1rem;
            flex-direction: column;
            gap: 0.25rem;
        }

        .topbar-dropdown.open { display: flex; }
        .topbar-dropdown .topbar-prompts-btn,
        .topbar-dropdown .topbar-quiz-btn {
            display: inline-flex;
            width: auto;
            align-self: flex-start;
            font-size: 0.8rem;
            padding: 0.4rem 1rem;
            margin-top: 0.15rem;
        }

        .topbar-dropdown .topbar-link {
            display: block;
            padding: 0.6rem 0.75rem;
            border-radius: 8px;
        }

        @media (max-width: 768px) {
            .site-topbar { padding: 0.6rem 0.75rem; }
            .topbar-left-links .topbar-link { display: none; }
            .topbar-right { display: none; }
            .topbar-hamburger { display: block; }
            .topbar-brand { font-size: 1.2rem; }
            .topbar-brand img { width: 24px; height: 24px; }
            .topbar-left-links { flex: none; }
        }

        
:root { --site-paper: #fbf8ef; --site-ink: #243f35; --site-muted: #52655a; --site-line: #d6dfcc; }
html { background: #f4f1e8 !important; }
body[data-site-refresh] { height: auto; min-height: 100vh; overflow-y: visible; }
[data-site-refresh] .site-topbar { background: rgba(28,69,57,.97); border-bottom: 1px solid #456659; }
[data-site-refresh] .topbar-brand { color: #fff; }
[data-site-refresh] .topbar-link { color: #f1f5eb; opacity: 1; }
[data-site-refresh] .topbar-dropdown { background: #1c4539; }
[data-site-refresh] .topbar-prompts-btn, [data-site-refresh] .topbar-quiz-btn { background: #deead7; color: #244c3b; border-radius: 30px; }
[data-site-refresh] .topbar-hamburger { width: 44px; min-height: 44px; }
[data-site-refresh] :focus-visible { outline: 3px solid #a85c2f; outline-offset: 4px; }
[data-site-refresh] :is(button,a,summary,input) { -webkit-tap-highlight-color: #afc39b44; }
[data-site-refresh] :is(button,summary,[role="button"]) { touch-action: manipulation; }
[data-site-refresh] :is(button,a.button,.cta-button,.home-primary,.home-secondary,.feature-card,.quiz-card-link,.filter-pill) { transition: scale 160ms ease, transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease, border-color 180ms ease; }
[data-site-refresh] :is(button:not(:disabled),a.button,.cta-button,.home-primary,.home-secondary,.feature-card,.quiz-card-link,.filter-pill):is(:active,.is-pressed) { scale: .98; }
[data-site-refresh] [id] { scroll-margin-top: 90px; }
[data-site-refresh] .skip-link { position: fixed; top: -90px; left: 1rem; z-index: 2100; padding: .8rem 1.2rem; background: #fff; color: #243f35; border-radius: 12px; }
[data-site-refresh] .skip-link:focus { top: .75rem; }
[data-site-refresh] .no-fouc { opacity: 1; }

/* Reading, help and policy pages. */
body[data-site-refresh="policy"], body[data-site-refresh="support"], body[data-site-refresh="quiz"], body[data-site-refresh="campaign"], body[data-site-refresh="companion"], body[data-site-refresh="prompts"] {
    --highlight: #52655a; --text-light: #243f35; --text-dark: #243f35; --accent-color: #466f4e;
    display: block; padding: 0; color: #243f35; background: radial-gradient(ellipse at 100% 0, #e2eadc 0, transparent 650px), #f4f1e8;
}
[data-site-refresh] :is(.policy-container,.support-container,.privacy-document) { width: calc(100% - 48px); max-width: 970px; margin: 100px auto 48px; padding: 48px 64px 32px; background: #fbf8ef; border: 1px solid #e2e1d5; border-radius: 28px; box-shadow: 0 18px 65px #233d390d; }
[data-site-refresh] :is(.policy-container,.support-container,.privacy-document) :is(p,li,span,h1,h2,h3,h4,strong) { color: #243f35 !important; opacity: 1; }
[data-site-refresh] :is(.policy-container,.support-container,.privacy-document) a { color: #25664e !important; text-underline-offset: 4px; overflow-wrap: anywhere; }
[data-site-refresh] :is(.policy-header,.support-header) { text-align: left; margin-bottom: 2rem; }
[data-site-refresh] :is(.policy-header,.support-header,.privacy-document) h1 { font: 500 clamp(2.2rem,4.4vw,3.45rem)/1.16 'Playfair Display', Georgia, serif; text-align: left; letter-spacing: -.035em; margin-bottom: 1rem; }
[data-site-refresh] :is(.policy-content,.privacy-document) :is(h2,h3), [data-site-refresh] .support-card h2 { font-family: 'Playfair Display', Georgia, serif; line-height: 1.4; font-weight: 500; }
[data-site-refresh] :is(.policy-content,.privacy-document) h2 { font-size: 1.7rem; border-color: #dce1d2; }
[data-site-refresh] :is(.policy-content,.privacy-document,.support-card) p { font-size: 1rem; line-height: 1.85; }
[data-site-refresh] :is(.support-card,.contact-box,.step-box) { background: #edf1e5; border: 1px solid #d6dfcb; border-radius: 20px; padding: 1.6rem; }
[data-site-refresh] .support-card { margin-bottom: 1.2rem; }
[data-site-refresh] .crisis-card { background: #f4e9d6; border: 1px solid #dfc69f; border-radius: 20px; }
[data-site-refresh] .helpline { border-color: #dfd3bd; gap: .75rem; flex-wrap: wrap; }
[data-site-refresh] :is(.support-footer,.policy-footer,.privacy-document footer) { opacity: 1; border-color: #d7dfce; }
[data-site-refresh] .privacy-document .subtitle { text-align: left; border-color: #d7dfce; }

/* Quiz discovery, questions, results and the email dialog. */
[data-site-refresh="quiz"] { --card-bg: #fffdf7; --card-border: #d6dfcc; --primary-color: #fbf8ef; }
[data-site-refresh="quiz"] .quiz-page::before { display: none; }
[data-site-refresh="quiz"] .quiz-page { padding-top: 110px; padding-bottom: 48px; }
[data-site-refresh="quiz"] .quiz-header h1 { font: 500 clamp(2.3rem,5vw,3.7rem)/1.13 'Playfair Display', Georgia, serif; letter-spacing: -.035em; color: #243f35; }
[data-site-refresh="quiz"] .quiz-header p { color: #52655a; text-shadow: none; opacity: 1; line-height: 1.8; }
[data-site-refresh="quiz"] :is(.quiz-meta,.progress-text,.quiz-card-meta,.question-number,.likert-labels) { color: #52655a; opacity: 1; }
[data-site-refresh="quiz"] .quiz-card { background: #fffdf7; border: 1px solid #d6dfcc; border-radius: 22px; box-shadow: 0 4px 15px #293e2d09; }
[data-site-refresh="quiz"] .quiz-card:hover { background: #f9fbf3; border-color: #7e9980; box-shadow: 0 12px 28px #293e2d14; }
[data-site-refresh="quiz"] .quiz-card :is(h2,h3) { font-family: 'Playfair Display', Georgia, serif; color: #243f35; font-weight: 500; }
[data-site-refresh="quiz"] .quiz-card p { color: #52655a; opacity: 1; }
[data-site-refresh="quiz"] .quiz-card-badge { background: #e7eee0; color: #3f6648; }
[data-site-refresh="quiz"] .question-card { background: #fffdf7; border: 1px solid #d6dfcc; border-radius: 22px; box-shadow: 0 12px 32px #233d3908; }
[data-site-refresh="quiz"] .question-text { color: #243f35; font-size: 1.25rem; }
[data-site-refresh="quiz"] :is(.option-btn,.likert-btn,.btn-prev) { background: #f7f7ef; color: #243f35; border: 1px solid #cbd8c1; }
[data-site-refresh="quiz"] :is(.option-btn,.likert-btn):hover { background: #e8efdf; border-color: #6f8d61; }
[data-site-refresh="quiz"] .option-btn.selected { background: #e2ecd7; border-color: #466f4e; box-shadow: 0 0 0 1px #466f4e; padding-right: 3.2rem; }
[data-site-refresh="quiz"] .likert-btn.selected { background: #305740; color: #fff; }
[data-site-refresh="quiz"] :is(.btn-start,.btn-next,.btn-unlock,.email-modal button[type="submit"]) { background: #305740; color: #fff; border-radius: 30px; box-shadow: none; min-height: 44px; }
[data-site-refresh="quiz"] .btn-next.glow { animation: none; box-shadow: 0 0 0 3px #d6e3cb; }
[data-site-refresh="quiz"] .btn-next:disabled { background: #dde4d6; color: #52655a; opacity: 1; }
[data-site-refresh="quiz"] .quiz-actions { background: #f8f6ecf2; border-color: #d6dfcc; }
[data-site-refresh="quiz"] .progress-bar-bg { background: #dfe7d7; }
[data-site-refresh="quiz"] .progress-bar-fill { background: #557b50; }
[data-site-refresh="quiz"] .results-container :is(p,h2,h3,h4,li,span,strong,em) { color: #243f35 !important; }
[data-site-refresh="quiz"] :is(.results-stat-value,.results-type-code) { color: #243f35; }
[data-site-refresh="quiz"] :is(.results-type-badge,.trait-tag) { color: #243f35; background: #e5eddb; box-shadow: none; }
[data-site-refresh="quiz"] .results-type-badge::after { display: none; }
[data-site-refresh="quiz"] .results-score-number { color: #243f35; text-shadow: none; }
[data-site-refresh="quiz"] .results-score-circle::before { background: #fbf8ef; }
[data-site-refresh="quiz"] .results-container a:not(.share-btn) { color: #25664e; }
[data-site-refresh="quiz"] .email-modal { background: #fbf8ef; border-color: #d6dfcc; border-radius: 24px; max-height: calc(100dvh - 3rem); overflow-y: auto; }
[data-site-refresh="quiz"] .email-modal h3 { color: #243f35; padding-right: 1.5rem; }
[data-site-refresh="quiz"] .email-modal-close { color: #243f35; opacity: 1; width: 44px; height: 44px; top: .4rem; right: .4rem; }
[data-site-refresh="quiz"] .email-modal input { background: #fff; border-color: #bbcbb1; color: #243f35; min-height: 48px; font-size: 1rem; }
[data-site-refresh="quiz"] .email-modal input::placeholder { color: #61705e; opacity: 1; }

/* Inner Prompts keeps its playful companion and topic selection. */
body[data-site-refresh="prompts"] { background-color: #728558; background-image: none; }
[data-site-refresh="prompts"] .prompts-page { width: 100%; max-width: 1050px; margin: 0 auto; min-height: 100svh; height: auto; overflow: visible; padding: 104px 24px 40px; }
[data-site-refresh="prompts"] .page-title { color: #243f35; text-shadow: none; font-size: clamp(2.2rem,5vw,3.6rem); font-weight: 500; }
[data-site-refresh="prompts"] :is(.page-subtitle,.category-label,.tap-hint,.question-counter) { color: #52655a; text-shadow: none; opacity: 1; }
[data-site-refresh="prompts"] :is(.category-label,.tap-hint,.question-counter) { color: #fffdf7; text-shadow: 0 1px 4px #203d2e80; }
[data-site-refresh="prompts"] .category-pill { background: #fffdf7; color: #395747; border: 1px solid #cfdbcb; min-height: 44px; }
[data-site-refresh="prompts"] .category-pill.active { background: #2e543f; color: #fff; border-color: #2e543f; box-shadow: none; }
[data-site-refresh="prompts"] .thought-bubble { background: #fffdf7; color: #243f35; border: 1px solid #d6dfcc; box-shadow: 0 10px 32px #293e2d0d; animation: none; }
[data-site-refresh="prompts"] .thought-bubble::after { border-top-color: #fffdf7; }
[data-site-refresh="prompts"] .action-btn { color: #2e543f; background: #fffdf7; border-color: #bdcdb3; box-shadow: none; min-height: 44px; }
[data-site-refresh="prompts"] .action-btn.primary { background: #2e543f; color: #fff; }
[data-site-refresh="prompts"] .category-pills.open { background: #fbf8ef; border-color: #d6dfcc; box-shadow: 0 12px 30px #233d3922; }

/* Gift, invitation and download landing pages. */
[data-site-refresh="campaign"] :is(.bg-path,.home-hero-bg) { display: none; }
[data-site-refresh="campaign"] :is(.gift-page,.winter-page,.gem-page,.find-page) { padding-top: 110px; padding-bottom: 48px; }
[data-site-refresh="campaign"] :is(.gift-container,.winter-container,.gem-container,.find-container) { max-width: 660px; padding: 36px; background: #fbf8ef; border: 1px solid #d6dfcc; border-radius: 28px; box-shadow: 0 18px 65px #233d390d; }
[data-site-refresh="campaign"] :is(.gift-title,.offer-line,.founders-title) { color: #243f35; text-shadow: none; font-family: 'Playfair Display', Georgia, serif; white-space: normal; }
[data-site-refresh="campaign"] :is(p,.step,.steps-title,.footer-note,.founders-text,.gem-description,.gem-subtext,.redirect-msg) { color: #52655a; opacity: 1; text-shadow: none; }
[data-site-refresh="campaign"] :is(strong,.gem-question,.step strong) { color: #243f35; }
[data-site-refresh="campaign"] :is(.gift-letter,.founders-gift,.steps-section,.redeem-steps,.claim-form) { background: #edf1e5; border-color: #d6dfcc; border-radius: 20px; }
[data-site-refresh="campaign"] :is(.mascot-bubble,.code-box,.status-bar) { background: #f2e9d4; color: #344a34; border-color: #d9ceaf; box-shadow: none; }
[data-site-refresh="campaign"] :is(.store-link,.claim-btn,.founders-cta,.download-btn) { background: #2e543f; color: #fff; border-radius: 30px; min-height: 44px; }
[data-site-refresh="campaign"] .claim-input { background: #fffdf7; color: #243f35; border-color: #bdcdb3; }
[data-site-refresh="campaign"] .claim-input::placeholder { color: #61705e; opacity: 1; }
[data-site-refresh="campaign"] .step-num { background: #2e543f; color: #fff; }

/* The companion world remains illustrated; reading sections use warm paper. */
[data-site-refresh="companion"] .deco-shapes { display: none; }
[data-site-refresh="companion"] .companion-page :is(h2,h3,p,li,summary,strong,span) { color: #243f35; opacity: 1; }
[data-site-refresh="companion"] .companion-page h2 { font-family: 'Playfair Display', Georgia, serif; font-size: 2rem; font-weight: 500; }
[data-site-refresh="companion"] .page-explore a { color: #305740; background: #edf1e5; border-color: #cbd8c1; }
[data-site-refresh="companion"] :is(.warmth-card,.magic-section,.testimonial-card,.faq-item) { background: #eaf0e2; border: 1px solid #d1dec5; border-radius: 22px; box-shadow: none; }
[data-site-refresh="companion"] .faq-item[open] { background: #e2ecd8; }
[data-site-refresh="companion"] :is(.gentle-list li,.pain-list li,.trust-section li) { border-color: #d6dfcc; }
[data-site-refresh="companion"] .article-footer { border-color: #d6dfcc; }
[data-site-refresh="companion"] .article-footer a { color: #25664e; }
[data-site-refresh="companion"] .sticky-cta { background: #244b3d; color: #fff; }
[data-site-refresh="companion"] .sticky-cta-text { color: #fff7e8; }
[data-site-refresh="companion"] .hero-card :is(h1,p,span) { color: #fff7e8; }
[data-site-refresh="companion"] .hero-card .hero-eyebrow { color: #f5dfac; }
[data-site-refresh="companion"] .section-divider { background: #d6dfcc; }
[data-site-refresh="companion"] .crisis-note a { color: #25664e; }

/* The guide retains its search, settings and optional dark mode. */
body[data-site-refresh="guide"] { --accent-color: #466f4e; --text-primary: #243f35; --text-secondary: #52655a; --bg-light: #edf1e5; --bg-white: #fbf8ef; --border-color: #d6dfcc; --gradient-primary: linear-gradient(135deg,#466f4e,#284e3e); --gradient-accent: linear-gradient(90deg,#466f4e,#7c926b); --gradient-background: linear-gradient(135deg,#f4f1e8,#e9eedf); --glow-color: #466f4e22; --font-family: 'Raleway', sans-serif; font-family: 'Raleway', sans-serif; color: var(--text-primary); background: #f4f1e8; }
[data-theme="dark"] body[data-site-refresh="guide"], body[data-site-refresh="guide"][data-theme="dark"] { --accent-color: #b1c89e; --text-primary: #f4f3e7; --text-secondary: #c7d4bf; --bg-light: #263f33; --bg-white: #1e3329; --border-color: #4b634c; --gradient-background: linear-gradient(135deg,#1e3329,#263f33); background: #172b22; }
[data-site-refresh="guide"] :is(h1,h2,.disorder-title,.section-title) { font-family: 'Playfair Display', Georgia, serif; font-weight: 500; color: var(--text-primary); background: none; -webkit-text-fill-color: currentColor; text-shadow: none; animation: none; }
[data-site-refresh="guide"] :is(.container,.disorder-article,.category,.settings-content,.export-content) { background: var(--bg-white); border: 1px solid var(--border-color); border-radius: 24px; box-shadow: 0 10px 35px #233d3909; }
[data-site-refresh="guide"] :is(.controls-bar,.site-header) { background: var(--bg-white); border-color: var(--border-color); }
[data-site-refresh="guide"] :is(.intro-section,.step,.feature,.disorder-header,.symptom-group,.treatment-option,.related-disorder-card) { background: var(--bg-light); border-color: var(--border-color); border-radius: 16px; }
[data-site-refresh="guide"] :is(.intro-section,.how-to-use,.features-grid,.disclaimer) { color: var(--text-primary); }
[data-site-refresh="guide"] :is(.intro-section h3,.feature h4,.step-content strong) { color: var(--text-primary) !important; }
[data-site-refresh="guide"] :is(.feature p,.step-content) { color: var(--text-secondary) !important; }
[data-site-refresh="guide"] .content-section { opacity: 1; transform: none; animation: none; }
[data-site-refresh="guide"] .section-title { font-size: 1.8rem; border-bottom: 1px solid var(--border-color); }
[data-site-refresh="guide"] :is(.section-title::after,.container::before,header::before,header::after,.intro-section::before,.positive-note::before) { display: none; }
[data-site-refresh="guide"] .category-header { background: var(--bg-light); color: var(--text-primary); }
[data-site-refresh="guide"] .disorder-category-badge { background: #305740; color: #fff; border-radius: 30px; box-shadow: none; }
[data-site-refresh="guide"] .positive-note { background: var(--bg-light); color: var(--text-primary); border-color: var(--border-color); }
[data-site-refresh="guide"] .logo-text { color: var(--text-primary); background: none; -webkit-text-fill-color: currentColor; }
[data-site-refresh="guide"] .site-footer { background: var(--bg-light); color: var(--text-secondary); }
[data-site-refresh="guide"] .related-navigation:not(:has(.related-disorder-card)) :is(.related-title,.related-disorders) { display: none; }
[data-site-refresh="guide"] .related-navigation:not(:has(.related-disorder-card)) .navigation-actions { margin-top: 0; }

[data-site-refresh="get"] { background: #f4f1e8; }
[data-site-refresh="get"] .download-fallback { background: #fbf8ef !important; color: #243f35 !important; }
[data-site-refresh="get"] img[alt="InnerPiece"] { background: #284e3f; padding: 10px; border-radius: 18px; }

@media (max-width: 768px) {
    [data-site-refresh] :is(.policy-container,.support-container,.privacy-document) { width: 100%; margin: 68px auto 0; padding: 32px 22px; border: 0; border-radius: 0; box-shadow: none; }
    [data-site-refresh="quiz"] .quiz-page { padding-top: 92px; }
    [data-site-refresh="campaign"] :is(.gift-page,.winter-page,.gem-page,.find-page) { padding: 90px 18px 32px; }
    [data-site-refresh="campaign"] :is(.gift-container,.winter-container,.gem-container,.find-container) { padding: 26px 20px; }
    [data-site-refresh="prompts"] .prompts-page { padding: 92px 20px 32px; }
    [data-site-refresh="guide"] .disorder-title { font-size: clamp(1.8rem,7vw,2.5rem); overflow-wrap: anywhere; }
    [data-site-refresh="guide"] .disorder-content { padding: 22px; }
}
@media (prefers-reduced-motion: no-preference) {
    @view-transition { navigation: auto; }
    ::view-transition-old(root) { animation: site-fade-out 110ms ease both; }
    ::view-transition-new(root) { animation: site-fade-in 180ms ease both; }
    @keyframes site-fade-out { to { opacity: 0; } }
    @keyframes site-fade-in { from { opacity: 0; } to { opacity: 1; } }
    [data-site-refresh] details[open] > :not(summary) { animation: site-detail-in 200ms ease both; }
    @keyframes site-detail-in { from { opacity: .4; translate: 0 -3px; } to { opacity: 1; translate: 0 0; } }
}
@media (prefers-reduced-motion: reduce) {
    @view-transition { navigation: none; }
    [data-site-refresh], [data-site-refresh] *, [data-site-refresh] *::before, [data-site-refresh] *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
    [data-site-refresh="guide"] :is(.content-section,.category) { opacity: 1; transform: none; }
}
@media print {
    [data-site-refresh] .site-topbar { display: none; }
    [data-site-refresh] :is(.policy-container,.support-container,.privacy-document) { margin: 0; border: 0; box-shadow: none; }
}

/* Final contrast adjustments for text that previously had inline light colours. */
body[data-site-refresh="policy"] { font-family: 'Raleway', sans-serif; }
[data-site-refresh="companion"] .companion-guides :is(h2,p,span) { color: #243f35 !important; opacity: 1 !important; }
[data-site-refresh="companion"] .companion-guides a { background: #fbf8ef !important; border-color: #d6dfcc !important; border-radius: 16px !important; }
[data-site-refresh="quiz"] .quiz-intro strong, [data-site-refresh="quiz"] .quiz-page > p { color: #243f35 !important; }
[data-site-refresh="campaign"] .gift-container > p { color: #52655a !important; }
[data-site-refresh="campaign"] p.founders-cta { color: #243f35; background: transparent; }
[data-site-refresh="home"] .postcard-modal { background: #fbf8ef; color: #243f35; border: 1px solid #d6dfcc; box-shadow: 0 20px 60px #142b3266; border-radius: 24px; }
[data-site-refresh="home"] .postcard-modal-meta { color: #52655a; opacity: 1; padding-right: 2rem; }
[data-site-refresh="home"] .postcard-modal-close { background: #e3ebdc; color: #254632; width: 44px; height: 44px; border-radius: 12px; }
[data-site-refresh="quiz"] .quiz-library-cta p { color: #243f35 !important; opacity: 1 !important; }
[data-site-refresh="quiz"] .quiz-library-cta a { background: #305740 !important; color: #fff !important; border-radius: 30px !important; }
[data-site-refresh="guide"] .guide-breadcrumb { padding: 1rem 0; font-size: .85rem; }
[data-site-refresh="guide"] .guide-breadcrumb a { color: var(--accent-color); }
[data-site-refresh="guide"] .controls-center { flex: 1; min-width: 0; }
[data-site-refresh="guide"] .search-container { max-width: 360px; }
[data-site-refresh="guide"] .search-input { min-width: 0; }
@media (max-width: 580px) {
    [data-site-refresh="guide"] .site-header { padding: 10px; }
    [data-site-refresh="guide"] .controls-bar { flex-wrap: wrap; box-shadow: none; }
    [data-site-refresh="guide"] .controls-left { flex: 1; justify-content: flex-start; }
    [data-site-refresh="guide"] .controls-center { order: 4; flex: 1 0 100%; }
    [data-site-refresh="guide"] .controls-right { order: 2; }
    [data-site-refresh="guide"] .search-container { width: 100%; max-width: none; }
    [data-site-refresh="guide"] .search-input { width: 100%; }
    [data-site-refresh="guide"] .section-title { flex-direction: row; align-items: center; font-size: 1.6rem; }
}
[data-site-refresh="quiz"] .share-btn { color: #305740; background: #e5eddb; border-color: #cbd8c1; width: 44px; height: 44px; }
[data-site-refresh="quiz"] .share-btn:hover { color: #243f35; background: #d8e5cb; }
[data-site-refresh="quiz"] .quiz-cta .cta-btn { color: #fff !important; background: #305740; border-radius: 30px; }
[data-site-refresh="quiz"] .quiz-disclaimer { opacity: 1; }
[data-site-refresh="guide"] .app-logo { text-decoration: none; }
[data-site-refresh="prompts"] .category-pills.expanded { background: #fbf8ef; border: 1px solid #d6dfcc; box-shadow: 0 12px 30px #233d3922; }
[data-site-refresh="prompts"] .category-pills.expanded::before { display: none; }

/* Keep the prompt hint and actions in document flow, including short laptops. */
[data-site-refresh="prompts"] .question-area { flex: none; justify-content: flex-start; margin-top: 1.25rem; }
[data-site-refresh="prompts"] .tap-hint { display: block; margin: .25rem 0 0; line-height: 1.6; }
[data-site-refresh="prompts"] .action-buttons { position: static; flex-wrap: wrap; margin: 1rem 0 0; padding: 0; width: 100%; }
@media (min-width: 769px) and (max-height: 800px) {
    [data-site-refresh="prompts"] .prompts-page { padding-top: 90px; }
    [data-site-refresh="prompts"] .page-title { font-size: 2.7rem; }
    [data-site-refresh="prompts"] .mascot-img { width: 180px; height: 180px; }
    [data-site-refresh="prompts"] .thought-bubble { padding: 1.25rem 2rem; }
}
@media (prefers-reduced-motion: no-preference) {
    [data-site-refresh] .topbar-dropdown.open { animation: site-detail-in 180ms ease both; }
}
