/* Loaded for the system dark preference, or enabled by the saved theme choice. */
:root {
  color-scheme:dark;
  --paper:#241c18; --paper-deep:#30231c; --cream:#332720;
  --ink:#fff4df; --ink-soft:#d5bea8; --muted:#c5ad97;
  --yellow:#f5c94f; --yellow-deep:#ffda70; --yellow-soft:#49371e;
  --coral:#f0ad88; --coral-soft:#493029; --sage:#343c29;
  --grass:#afc980; --grass-soft:#343c29; --pink:#e4a5ac; --pink-soft:#493039;
  --lavender:#c1a9db; --lavender-soft:#3d3049; --line:#765e48;
  --shadow:0 1.25rem 3.5rem rgb(12 7 3 / 25%);
  --on-honey:#241c18; --surface:#332720; --honey-panel:#49371e;
  --color-ink:var(--ink); --color-ink-soft:var(--ink-soft); --color-mute:var(--muted);
  --color-paper:var(--paper); --color-paper-warm:var(--paper-deep); --color-cream:var(--cream);
  --color-rule:var(--line); --color-accent:var(--yellow); --color-accent-soft:var(--yellow-soft); --color-accent-strong:var(--coral);
}
:root body { background:var(--paper); }
:root body::before { background:radial-gradient(ellipse at 7% 18%,#f5c94f0c,transparent 55%); }
:root .site-header { background:linear-gradient(180deg,#30231c,#241c18); }
:root .nav-row { background:rgb(36 28 24 / 96%); }
:root .brand-stage::after { background:radial-gradient(circle,#f5c94f16,transparent 70%); }
:root .brand-logo-mask { background:var(--yellow); filter:none; }
:root .service-accent i { background:var(--yellow); mask:url('/katie-logo.png') center/contain no-repeat; filter:none; }
:root .hero, :root .page-hero { background:radial-gradient(ellipse at 85% 35%,#79501d66,transparent 60%),linear-gradient(120deg,#241c18,#30231c); }
:root .help-section, :root #process, :root .about-preview-section { background:linear-gradient(135deg,#241c18,#30251d); }
:root .approach-section, :root .section--peach, :root .faq-preview-section { background:radial-gradient(ellipse at 95% 20%,#70463740,transparent 65%),linear-gradient(125deg,#332720,#3d2e21); }
:root .consultation-section { background:radial-gradient(ellipse at 95% 45%,#79501d40,transparent 65%),var(--paper); }
:root .contact-section { background:radial-gradient(ellipse at 90% 20%,#93602040,transparent 65%),linear-gradient(125deg,#241c18,#39291d); color:var(--ink); }
:root .contact-page-intro { background:#241c18; color:var(--ink); }
:root .help-section::before, :root .faq-preview-section::before, :root .consultation-section::before { background:#f5c94f0d; border-color:#f5c94f33; }
:root .hero::before, :root .hero::after { opacity:.3; }
:root .editorial-note { color:var(--yellow); }
:root .page-hero .section-intro, :root .price-note { color:var(--ink-soft); }
:root .about-quote, :root .photo-label { color:var(--on-honey); }
:root .hero-meta span, :root .package-card, :root .problem-category, :root .process-flow-step, :root .price-grid,
:root .direct-contact-card, :root .email-chooser, :root .contact-section .form-container { background:var(--surface); color:var(--ink); border-color:var(--line); }
:root .package-card--recommended { background:linear-gradient(140deg,#49371e,#332720); border-color:var(--yellow); }
:root .approval-note, :root .review-packages .package-card .approval-note,
:root .help-contact, :root .price-currencies div, :root .service-topic--preventive { background:var(--honey-panel); color:var(--ink); }
:root .approval-note { border-left-color:var(--yellow); }
:root .service-topic--preventive { background:#30251d; }
:root .service-kicker { background:var(--yellow-soft); color:var(--yellow); }
:root .form-input, :root .form-textarea, :root .currency-select, :root .concern-picker,
:root .contact-section .form-input, :root .contact-section .form-textarea, :root .email-chooser input { background:#241c18; color:var(--ink); border-color:var(--line); }
:root .form-input, :root .form-textarea, :root .currency-select, :root .concern-picker,
:root .contact-section .form-input, :root .contact-section .form-textarea, :root .email-chooser input { border-color:#a08365; }
:root input::placeholder, :root textarea::placeholder { color:var(--muted); opacity:1; }
:root .concern-choice input { accent-color:var(--yellow); }
:root .concern-choice:has(input:checked) { background:#57401f; color:var(--ink); }
:root .concern-choice:has(input:focus-visible) { outline-color:var(--yellow); }
:root .button--primary, :root .button--yellow, :root .nav-contact, :root .contact-section .form-button,
:root .review-packages .package-recommendation, :root .back-to-top__badge, :root .skip-link, :root ::selection { background:var(--yellow); color:var(--on-honey); }
:root .button--primary:hover, :root .button--yellow:hover, :root .nav-contact:hover,
:root .contact-section .form-button:hover:not(:disabled), :root .back-to-top:hover .back-to-top__badge { background:var(--yellow-deep); color:var(--on-honey); }
:root .button--outline { background:var(--surface); color:var(--ink); border-color:var(--line); }
:root .button--outline:hover { border-color:var(--yellow); }
:root .approach-reassurance, :root .online-interlude { --ink:var(--on-honey); --ink-soft:#493621; --muted:#574229; color:var(--on-honey); }
:root .approach-reassurance p, :root .online-interlude .editorial-note { color:var(--on-honey); }
:root .approach-reassurance > span { background:var(--on-honey); color:var(--yellow); }
:root .process-number, :root .vet-note-icon { color:var(--on-honey); }
:root .process-step:nth-child(n+2) .process-number { color:var(--ink); }
:root .contact-copy > p:not(.eyebrow), :root .contact-direct span, :root .form-intro,
:root .contact-page-intro p:not(.eyebrow), :root .telegram-qr-hint { color:var(--ink-soft); }
:root .telegram-qr-arrow { color:var(--yellow); }
:root .credential-open { background:var(--surface); color:var(--ink); border-color:var(--line); }
:root .form-status.is-error, :root .form-field-error { color:#ffb1a1; }
:root .form-input-error { border-color:#ffb1a1 !important; }
:root .form-success, :root .contact-section .form-success { background:#303b25; color:#e0edc9; border-color:#afc980; }
:root .email-chooser::backdrop { background:rgb(16 10 6 / 75%); }
:root :focus-visible { outline:3px solid var(--yellow); outline-offset:4px; }
:root .theme-toggle { color:var(--yellow); }
:root .theme-toggle .theme-sun { display:block; }
:root .theme-toggle .theme-moon { display:none; }
