/* Shared approved palette and background architecture; no page layout changes. */
:root {
  --ink:#243D4B;
  --accent:#A64B38;
  --accent-hover:#8D402F;
  --accent-bright:#CFA89D;
  --accent-soft:#E3E7E9;
  --accent-pale:#FBECE5;
  --text-body:#52616B;
  --text-muted:#52616B;
  --text-on-dark:#E3E7E9;
  --surface-page:#FFFFFF;
  --surface-card:#FFFFFF;
  --surface-tint:#F5F4F2;
  --surface-accent-tint:#FFF8F4;
  --surface-warning:#FFFCF5;
  --surface-dark:#243D4B;
  --border:rgba(36,61,75,.16);
  --border-strong:#CFA89D;
}
body[data-palette="final"] .site-header,body[data-palette="final"] .site-footer { background:var(--surface-dark) !important; }
body[data-palette="final"] .site-header :is(.brand-name,.nav-link,.nav-phone-link,.mobile-toggle) { color:#fff !important; }
body[data-palette="final"] .site-header .brand-title { color:#E3E7E9 !important; }
body[data-palette="final"] .condition-menu { background:var(--surface-card) !important; }
body[data-palette="final"] .condition-menu :is(a,.condition-group-toggle) { color:#243D4B !important; }
body[data-palette="final"] .condition-menu a:hover { background:var(--surface-accent-tint) !important; }
body[data-palette="final"] .site-footer :is(a,h3,.brand-name,.footer-clinic-name) { color:#fff !important; }
body[data-palette="final"] .site-footer :is(p,span,.footer-clinic-loc,.footer-clinic-addr,.footer-timetable-row,.footer-timetable-title,.footer-contact-item) { color:#E3E7E9 !important; }
body[data-palette="final"] .site-footer :is(.footer-contact-item a[href^="tel:"],.footer-clinic-map-link) { color:#CFA89D !important; }
body[data-palette="final"] .site-footer :is(.footer-contact-item a[href^="tel:"],.footer-clinic-map-link):is(:hover,:focus-visible) { color:#fff !important; }
body[data-palette="final"] .btn { border-radius:8px !important; min-height:44px; line-height:1.5; }
body[data-palette="final"] :is(.btn-coral,.btn-navy,.btn-primary) { background:var(--accent) !important; color:#fff !important; border:1px solid var(--accent) !important; box-shadow:none !important; }
body[data-palette="final"] :is(.btn-coral,.btn-navy,.btn-primary):hover { background:var(--accent-hover) !important; border-color:var(--accent-hover) !important; }
body[data-palette="final"] :is(.site-header,.site-footer) :is(.btn-coral,.btn-navy,.btn-primary) { border-color:#FFF8F4 !important; }
body[data-palette="final"] .btn-outline { background:var(--surface-card) !important; color:var(--accent) !important; border:1px solid var(--accent) !important; }
body[data-palette="final"] .btn-outline:hover { background:var(--accent-pale) !important; }
body[data-palette="final"] .btn span { color:inherit !important; }
body[data-palette="final"] :is(a,button,summary):focus-visible { outline:3px solid #A64B38 !important; outline-offset:4px; }
body[data-palette="final"] :is(.site-header,.site-footer) :is(a,button):focus-visible { outline-color:#fff !important; }
body[data-palette="final"] .condition-menu :is(a,button):focus-visible { outline-color:#A64B38 !important; }
body[data-palette="final"] :is(.gallery-filter-btn,.review-filter-btn):is(.active,[aria-pressed="true"]) { background:var(--accent) !important; border-color:var(--accent) !important; color:#fff !important; }
body[data-palette="final"] :is(.gallery-filter-btn,.review-filter-btn):is(.active,[aria-pressed="true"]):hover { background:var(--accent-hover) !important; border-color:var(--accent-hover) !important; color:#fff !important; }
body[data-palette="final"] :is(.gallery-filter-btn,.review-filter-btn):is(.active,[aria-pressed="true"]) :is(.filter-count,.filter-badge-count) { background:rgba(255,255,255,.22) !important; color:#fff !important; }
body[data-palette="final"] .hero-trust-strip { display:flex; flex-wrap:wrap; align-items:center; gap:24px; }
body[data-palette="final"] .practice-fact { color:#52616B; font-size:.9375rem; }
body[data-palette="final"] .practice-fact strong { color:#243D4B; font-size:1.125rem; }
body[data-palette="final"] :is(.patient-home-choice,.patient-choice) .patient-choice-action { align-self:flex-start; display:inline-flex; align-items:center; gap:8px; border:1px solid var(--accent); border-radius:6px; background:var(--surface-card); color:var(--accent); padding:8px 12px; margin-top:auto; font-size:.875rem; line-height:1.5; text-decoration:none; }
body[data-palette="final"] :is(.patient-home-choice,.patient-choice):hover .patient-choice-action { background:var(--accent); color:#fff; }
body[data-palette="final"][data-page="about"] .qual-institution { color:var(--text-body) !important; font-weight:600 !important; }
body[data-palette="final"] a.patient-choice { border:1px solid var(--border-strong); background:var(--surface-accent-tint); }
body[data-palette="final"] a.patient-choice strong { color:#243D4B; }
body[data-palette="final"] :is(.hero-editorial-subheading,.about-lead,.concierge-desc) { text-align:left !important; }
body[data-palette="final"] .hero-editorial-subheading + .hero-editorial-subheading { margin-top:-8px; }
body[data-palette="final"] .condition-expertise ul { list-style:none; padding:0; display:grid; gap:12px; }
body[data-palette="final"] .condition-expertise li { margin:0; }
body[data-palette="final"] .condition-expertise a { display:flex; justify-content:space-between; align-items:center; gap:16px; min-height:48px; padding:16px; border:1px solid var(--border-strong); border-radius:8px; color:#243D4B; background:var(--surface-accent-tint); text-decoration:none; }
body[data-palette="final"] .condition-expertise a::after { content:'→'; color:#A64B38; }
body[data-palette="final"] .condition-expertise a:hover { background:var(--accent-pale); border-color:var(--accent); }
body[data-palette="final"] .patient-section-links a { border:1px solid var(--accent); color:var(--accent); background:var(--surface-card); border-radius:8px; font-weight:600; text-decoration:none; min-height:44px; }
body[data-palette="final"] .patient-section-links a:hover { background:var(--accent-pale); }
body[data-palette="final"] main p a:not(.btn) { color:#A64B38 !important; text-decoration:underline !important; text-underline-offset:3px; }
body[data-palette="final"] main .section-cta p a:not(.btn) { color:#fff !important; }
body[data-palette="final"][data-design="terracotta"] main .section-cta p a:not(.btn) { color:#A64B38 !important; }
body[data-palette="final"] .contact-action-detail { display:block; margin-top:8px; font-size:.9375rem; color:#52616B; }
body[data-palette="final"] .qual-institution { color:#52616B !important; }
@media(max-width:1199px) { body[data-palette="final"] .nav-menu { background:var(--surface-dark) !important; } }
@media(prefers-reduced-motion:reduce) { body[data-palette="final"] :is(a,button) { transition:none !important; } }

/* Page-role colour rhythm. Each long page alternates a calm reading field with clear content surfaces. */
body[data-palette="final"][data-page="condition-guide"] main > .section:first-child { background:var(--surface-tint) !important; }
body[data-palette="final"][data-page="condition-guide"] main > .section:nth-child(2) { background:var(--surface-page) !important; }
body[data-palette="final"][data-page="condition-directory"] main,
body[data-palette="final"][data-page="condition-directory"] main > .section { background:var(--surface-tint) !important; }
body[data-palette="final"][data-page="condition-directory"] .condition-group { background:var(--surface-card); box-shadow:0 10px 28px rgba(36,61,75,.05); }
body[data-palette="final"][data-page="specialty"] main > .section:nth-of-type(odd),
body[data-palette="final"][data-page="about"] main > .section:nth-of-type(odd),
body[data-palette="final"][data-page="contact"] main > .section:nth-of-type(odd) { background:var(--surface-tint) !important; }
body[data-palette="final"][data-page="specialty"] main > .specialty-hero { background:var(--surface-tint) !important; }
body[data-palette="final"][data-page="specialty"] main > .section:nth-of-type(even),
body[data-palette="final"][data-page="about"] main > .section:nth-of-type(even),
body[data-palette="final"][data-page="contact"] main > .section:nth-of-type(even) { background:var(--surface-page) !important; }
body[data-palette="final"][data-page="gallery"] main,
body[data-palette="final"][data-page="gallery"] main > section,
body[data-palette="final"][data-page="gallery"] main > .section,
body[data-palette="final"][data-page="gallery"] main > .page-header { background:var(--surface-dark) !important; }
body[data-palette="final"][data-page="gallery"] main :is(h1,h2,h3,.section-title,.section-tag) { color:#fff !important; }
body[data-palette="final"][data-page="gallery"] main :is(p,.section-subtitle,.breadcrumb,.breadcrumb a) { color:var(--text-on-dark) !important; }
body[data-palette="final"][data-page="legal"] main { background:var(--surface-page); }
