/* Implant-center: navy / silver / white, matched to the approved logo.
   Final screen-only layer. Keep photographs, print layout and functionality intact. */
@media screen {
  :root {
    --ink: #10283e;
    --blue: #16466b;
    --muted: #53616e;
    --ice: #eef1f3;
    --pale: #f6f7f8;
    --border: #d7dee3;
    --brand-navy: #102f49;
    --brand-hover: #0a2840;
    --brand-silver: #e4e9ed;
  }
  body { background: #fff; }
  .header { border-bottom-color: var(--border); }
  .header-phone, .footer-phone, .director-copy .director-role { color: var(--blue); }
  h1, h2, h3 { color: var(--ink); }
  .assistant-header h2 { color: #fff; }
  .brand-name { color: var(--ink); }
  .button { background: var(--brand-navy); }
  .button:hover { background: var(--brand-hover); box-shadow: 0 4px 14px #10283e14; }
  .button-light { background: #fff; color: var(--brand-navy); }
  .button-light:hover { background: var(--ice); color: var(--brand-navy); }
  :is(button,a,summary,input,select,textarea):focus-visible {
    outline-color: var(--blue); box-shadow: 0 0 0 3px #fff;
  }

  /* Quiet light first screen; the doctor's real portrait keeps its original colours. */
  .hero.hero-fullarch.blue-hero {
    color: var(--ink);
    background: linear-gradient(110deg, #f7f8f9 0%, #eef1f3 55%, #e0e6eb 100%);
    border-bottom: 1px solid var(--border);
  }
  .blue-hero-inner::before { border-color: #b5c3ce; border-top-color: transparent; border-left-color: transparent; border-width: 1px; }
  .blue-hero .eyebrow { color: var(--muted); }
  .blue-hero h1 { color: var(--ink); font-weight: 750; }
  .blue-hero-services { color: #2d4e68; }
  .blue-hero-services > span { color: #72828f; }
  .blue-hero .hero-actions .button { color: #fff; background: var(--brand-navy); font-weight: 650; }
  .blue-hero .hero-actions .button:hover { background: var(--brand-hover); }
  .blue-hero-contacts > a { color: var(--ink); }
  .blue-hero-contacts small { color: var(--muted); }
  .blue-hero .hero-doctor figcaption { background: #102f49ed; border: 1px solid #ffffff35; }
  .blue-hero .hero-doctor figcaption strong,
  .blue-hero .hero-doctor figcaption span { color: #fff; }

  .consultation-benefits { background: #f6f7f8; border-bottom: 1px solid var(--border); }
  .benefits-grid article + article { border-color: var(--border); }
  .benefit-icon { background: var(--brand-silver); color: var(--blue); }
  .method-number { background: var(--ice); color: var(--blue); }
  .implant-grid .blue-method-card { border-color: var(--border); }
  .implant-grid .blue-method-card:hover { background: #f6f7f8; border-color: #9caeba; }
  .blue-method-card .circle-arrow { color: var(--blue); border-color: var(--border); }
  .implant-grid--primary .service-card.featured .card-top { color: var(--blue); }
  .service-help, .clinic-section { background: var(--pale); }
  .approach-list article > span { background: var(--ice); color: var(--blue); }
  .service-shortcuts a { border-color: var(--border); background: var(--pale); color: var(--blue); }
  .service-shortcuts a:hover { background: var(--brand-silver); }
  .service-shortcuts a.is-primary { background: var(--brand-navy); border-color: var(--brand-navy); color: #fff; }

  .system-section { background: var(--brand-navy); }
  .system-section h2, .system-section h2 em, .system-section h3 { color: #fff; }
  .system-section .eyebrow, .system-origin { color: #d7e1e8; }
  .system-section p:not(.eyebrow):not(.system-origin) { color: #e4e9ed; }
  .system-section .button { background: #fff; color: var(--brand-navy); }
  .system-section .button:hover { background: var(--ice); }
  .visit-with-background { background: var(--brand-navy); }
  .visit-with-background::after { background: linear-gradient(90deg, #102f49f2, #102f49d9) !important; }
  .visit-section h2, .visit-section h2 em, .visit-section h3, .visit-section .eyebrow { color: #fff; }
  .visit-section .steps p { color: #e4e9ed; }
  .visit-section .steps article { border-color: #ffffff40; }
  .step-num { color: #c6d3dd; }
  .faq-list summary span { color: var(--blue); }
  .contact-section { background: var(--ice); }
  .contact-with-background { background: var(--ice); }
  .contact-with-background .abstract-scene { opacity: .18; }
  .contact-aside > div { border-color: var(--border); }

  /* All service, patient and contact pages share the same restrained palette. */
  .breadcrumbs { color: var(--muted); }
  .page-hero { background: #eef1f3; color: var(--ink); border: 1px solid var(--border); }
  .page-hero h1 { color: var(--ink); }
  .page-hero .eyebrow { color: var(--blue); }
  .page-hero .eyebrow::before { background: #9caeba; }
  .page-hero .page-lead { color: #465967; }
  .page-lead a { text-decoration-color: #91a3b1; }
  .page-hero-actions .button { background: var(--brand-navy); border-color: var(--brand-navy); color: #fff; }
  .page-hero-actions .button:hover { background: var(--brand-hover); border-color: var(--brand-hover); }
  .page-hero-actions .text-link { color: var(--blue); }
  .page-hero-figure, .page-hero-figure.image-consultation { background: var(--brand-silver); }
  .page-hero-figure::after { background: none; }
  .page-aside { background: var(--pale); border-color: var(--border); border-top-color: var(--blue); }
  .page-aside nav a { border-color: var(--border); color: #435766; }
  .page-aside nav a:hover, .page-aside .text-link, .aside-note a { color: var(--blue); }
  .aside-note { color: var(--muted); }
  .content-section, .content-section li, .page-story-photo, .page-related { border-color: var(--border); }
  .content-section p, .content-section li { color: #435460; }
  .content-section li::before,
  .content-section a:not(.button),
  .director-profile .director-copy p a { color: var(--blue); }
  .article-note { color: var(--blue); border-color: #adbcc8; }
  .directory-grid > a, .related-grid > a { border-color: var(--border); }
  .directory-grid > a:hover, .related-grid > a:hover { background: var(--pale); border-color: #9caeba; }
  .directory-grid > a > span, .directory-grid p, .related-grid p { color: var(--muted); }
  .directory-grid b, .related-grid > a > span { color: var(--blue); }
  .card-photo { background: var(--ice); }
  .page-content .director-profile { border-color: var(--border); }
  .director-profile .director-copy .eyebrow, .director-profile .director-role { color: var(--blue); }
  .contact-facts > div { background: var(--pale); border-color: var(--border); }
  .contact-facts dt, .contact-facts small { color: var(--muted); }
  .contact-facts dd > a[href^="tel:"], .contact-actions .text-link { color: var(--blue); }
  .page-cta { background: var(--brand-navy); }
  .page-cta-figure { opacity: .06; }
  .page-cta-figure::after { background: #102f4966; }
  .page-cta h2, .page-cta p a { color: #fff; }
  .page-cta p { color: #e4e9ed; }
  .page-cta .button { background: #fff; color: var(--brand-navy); border-color: #fff; }
  .page-cta .button:hover { background: var(--ice); border-color: var(--ice); }

  .clinic-real-photo, .clinic-photo-card img { background: var(--ice); }
  .clinic-photo-card, .clinic-document-card { border-color: var(--border); background: var(--pale); }
  .clinic-photo-card figcaption { color: var(--ink); }
  .clinic-photo-intro, .clinic-document-card small { color: var(--muted); }
  .clinic-photo-card figcaption span, .clinic-document-card .text-link { color: var(--blue); }
  .clinic-document-card { border-left-color: var(--blue); }
  .clinic-photo-card a:focus-visible { outline-color: var(--blue); }
  .content-section.clinic-route .clinic-route-kicker,
  .content-section.clinic-route .clinic-route-download { color: var(--blue); }
  .clinic-route-media { border-color: var(--border); background: var(--pale); }
  .clinic-route-media video { background: var(--ink); }
  .clinic-route-media figcaption, .content-section.clinic-route .clinic-route-steps li { color: #435460; }
  .clinic-route-directions h3, .clinic-route-steps strong { color: var(--ink); }
  .content-section.clinic-route .clinic-route-steps li::before { background: var(--ice); color: var(--blue); }
  .content-section.clinic-route .clinic-route-note { background: var(--pale); border-left-color: var(--blue); }
  .clinic-route-download span { color: var(--muted); }
  .clinic-route a:focus-visible, .clinic-route video:focus-visible { outline-color: var(--blue); }
}
