/* The media page's approved visual language, applied to the other site pages.
   Behaviour, clinical content and the media page remain in their existing files. */
body.brand-editorial {
  --primary: #326b91;
  --primary-deep: #1d4568;
  --ink: #1d4568;
  --bg: #fffdf8;
  --cream: #f2ebdc;
  --surface: #fffdf8;
  --line: #dfded5;
  --text: #344954;
  --text-soft: #596a73;
  --gold: #c9a05c;
  --gold-soft: #dbbe8a;
  --gold-text: #785a2b;
  --radius: 12px;
  --radius-sm: 8px;
  --shadow: 0 3px 14px rgba(29,69,104,.035);
  --shadow-lift: 0 6px 18px rgba(29,69,104,.08);
  background: var(--bg);
}
.brand-editorial .site-header {background: #fffdf8; box-shadow:none; border-bottom-color:var(--line)}
.brand-editorial .nav-wrap {max-width:1280px; padding-block:14px}
.brand-editorial .brand {letter-spacing:.06em}
.brand-editorial .nav-links a:not(.nav-cta) {border-radius:6px}
.brand-editorial .nav-links a:not(.nav-cta):hover,
.brand-editorial .nav-links a:not(.nav-cta)[aria-current] {background:#edf1f3; box-shadow:none}
.brand-editorial .nav-cta {background:#1d4568; color:#fffdf8!important; border-color:#1d4568; border-radius:8px; box-shadow:none}
.brand-editorial .nav-cta:hover {background:#28597d; transform:none; box-shadow:none}
.brand-editorial .site-nav-toggle {border-radius:8px}
.brand-editorial .btn {display:inline-flex; align-items:center; justify-content:center; min-height:50px; border-radius:8px; padding:12px 24px; line-height:1.6; text-align:center; box-shadow:none; transition:background-color .18s,color .18s,border-color .18s}
.brand-editorial .btn-primary {background:#1d4568; border:1px solid #1d4568; color:#fffdf8}
.brand-editorial .btn-primary:hover {background:#28597d; transform:none; box-shadow:none}
.brand-editorial .btn-ghost {border:1px solid #1d4568; background:transparent; color:#1d4568}
.brand-editorial .btn-ghost:hover {background:#edf1f3; transform:none; box-shadow:none}
.brand-editorial .hero {padding:0 24px; background:#1d4568; border:0; color:#fffdf8}
.brand-editorial .hero-inner {max-width:1200px}
.brand-editorial .hero-grid {grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:48px; min-height:588px; align-items:stretch}
.brand-editorial .hero-text {align-self:center; padding:54px 0}
.brand-editorial .hero h1 {color:#fffdf8; font-size:clamp(2rem,3.4vw,3.3rem); line-height:1.55; letter-spacing:.015em; margin-bottom:24px}
.brand-editorial .hero h1 .hl {color:#f2d49d; border:0}
.brand-editorial .hero p.lead {color:#e8eef2; font-size:1rem; line-height:1.95; max-width:610px; margin-bottom:26px}
.brand-editorial .credential-primary {width:auto; display:flex; flex-wrap:wrap; gap:10px 22px}
.brand-editorial .credential-primary li {justify-content:flex-start; background:none; color:#f2d49d; border:0; border-radius:0; padding:0; min-height:28px; font-weight:600}
.brand-editorial .credential-secondary {color:#e8eef2; font-size:.82rem; margin-top:8px}
.brand-editorial .credential-secondary a {color:#e8eef2}
.brand-editorial .hero-photo {max-width:none; width:100%; align-self:stretch; justify-self:end; min-width:0}
.brand-editorial .hero-photo img {width:100%; height:100%; max-height:650px; object-fit:cover; object-position:center 16%; border-radius:0; border:0; outline:0; box-shadow:none}
.brand-editorial :is(.hero,.local-hero-panel,.local-cta-panel) .btn-primary {background:#fffdf8; color:#1d4568; border-color:#fffdf8}
.brand-editorial :is(.hero,.local-hero-panel,.local-cta-panel) .btn-primary:hover {background:#f2ebdc; border-color:#f2ebdc}
.brand-editorial :is(.hero,.local-hero-panel) .btn-ghost {background:transparent; color:#f2d49d; border-color:#9cb0bf}
.brand-editorial :is(.hero,.local-hero-panel) .btn-ghost:hover {background:#28597d; color:#fffdf8}
.brand-editorial :is(.hero,.local-hero-panel,.policy-hero) a:focus-visible {outline-color:#f2d49d}
.brand-editorial .notice-bar {max-width:none; margin:0; padding:0 24px; border-bottom:1px solid var(--line); background:var(--surface)}
.brand-editorial .notice-inner {max-width:1200px; margin:auto; padding:16px 0; border:0; border-radius:0; box-shadow:none; gap:12px 22px}
.brand-editorial .notice-tag {background:none; border-radius:0; padding:0; color:var(--gold-text); letter-spacing:.08em}
.brand-editorial .notice-inner a {display:inline-flex; align-items:center; min-height:44px; line-height:1.7}
.brand-editorial .section,.brand-editorial .section-alt-inner {max-width:1200px; padding:64px 24px}
.brand-editorial .section-alt {border:0; background:var(--cream)}
.brand-editorial .section-title {font-size:clamp(1.55rem,2.6vw,2rem); text-align:left; letter-spacing:.03em; padding-top:0; margin-bottom:14px}
.brand-editorial .section-title::before {content:none}
.brand-editorial .section-title-en {text-align:left; letter-spacing:.18em; margin-bottom:10px}
.brand-editorial .section-sub {text-align:left; margin:0 0 30px; max-width:760px; line-height:1.9}
.brand-editorial .message-photo img {border-radius:8px; border:0; outline:0; box-shadow:none}
.brand-editorial .message-photo::before,.brand-editorial .message-photo::after {content:none}
.brand-editorial .message-text h2 {font-size:1.75rem}
.brand-editorial .icon-circle {border:1px solid var(--line); border-radius:12px; background:var(--surface); box-shadow:none}
.brand-editorial .icon-item:hover .icon-circle {transform:none; box-shadow:none; border-color:#1d4568}
.brand-editorial .breadcrumb {font-size:.8rem; margin-bottom:24px; line-height:1.8}
.brand-editorial .breadcrumb a {display:inline-flex; align-items:center; min-height:44px}
.brand-editorial .local-hero-panel {background:#1d4568; border:0; border-radius:10px; padding:40px; box-shadow:none; grid-template-columns:minmax(0,1fr) 260px; gap:36px; color:#fffdf8; margin-bottom:32px}
.brand-editorial .local-hero-panel > div {min-width:0}
.brand-editorial .local-hero-panel h1 {color:#fffdf8; font-size:clamp(1.8rem,3.2vw,2.8rem); font-weight:700; line-height:1.55; text-wrap:pretty; margin-bottom:20px; letter-spacing:.015em}
.brand-editorial .local-hero-panel .local-kicker {color:#f2d49d; font-size:.82rem; letter-spacing:.08em; margin-bottom:14px}
.brand-editorial .local-hero-panel .local-reading-meta {margin-bottom:14px}
.brand-editorial .local-hero-panel .local-reading-meta span {background:none; border:0; border-left:1px solid #8dabbf; border-radius:0; color:#d8e4ec; padding:0 10px; font-size:.78rem}
.brand-editorial .local-hero-panel .local-lead,.brand-editorial .local-hero-panel .local-lead strong {color:#e8eef2; line-height:1.9}
.brand-editorial .local-hero-panel .local-hero-actions {margin-top:24px; gap:12px}
.brand-editorial .local-hero-panel .btn-ghost {margin-left:0}
.brand-editorial .local-doctor-visual {max-width:none; width:100%; border:0; outline:0; border-radius:4px; box-shadow:none; aspect-ratio:3/4; background:#dbe3e8}
.brand-editorial .local-doctor-visual img {object-position:center 12%}
.brand-editorial .local-doctor-visual figcaption {background:#173a58; padding:12px 8px; position:static}
.brand-editorial .local-doctor-visual {display:flex; flex-direction:column}
.brand-editorial .local-doctor-visual img {min-height:0; flex:1; height:0; object-fit:cover}
.brand-editorial .local-doctor-visual figcaption strong {font-size:.94rem}
.brand-editorial .local-doctor-visual figcaption span {color:#dbbe8a; font-size:.72rem}
.brand-editorial .health-article .local-hero-panel {grid-template-columns:minmax(0,1fr) 144px; gap:26px; padding:30px; align-items:center; margin-bottom:24px}
.brand-editorial .health-article .local-hero-panel h1 {font-size:clamp(1.55rem,2.65vw,2.1rem); line-height:1.6; letter-spacing:0; margin-bottom:12px; text-wrap:pretty}
.brand-editorial .health-article .local-doctor-visual {width:144px; max-width:144px; aspect-ratio:3/4}
.brand-editorial .health-article .local-doctor-visual figcaption {padding:7px 4px}
.brand-editorial .health-article .local-doctor-visual figcaption strong {font-size:.83rem}
.brand-editorial .health-article .local-doctor-visual figcaption span {font-size:.65rem}
.brand-editorial .health-article .local-hero-actions {gap:10px; margin-top:20px}
.brand-editorial .health-article .local-hero-actions .btn {min-height:46px; padding:10px 16px; font-size:.87rem}
.brand-editorial .health-article .local-hero-panel .local-kicker {font-size:.78rem; margin-bottom:10px}
.brand-editorial .policy-hero {padding:40px; border:0; border-radius:10px; background:#1d4568; box-shadow:none; color:#fffdf8}
.brand-editorial .policy-hero h1 {color:#fffdf8; line-height:1.5; font-size:clamp(1.8rem,3.2vw,2.7rem)}
.brand-editorial .policy-hero .local-kicker {color:#f2d49d}
.brand-editorial .policy-lead,.brand-editorial .policy-reviewed {color:#e1eaf0}
.brand-editorial .policy-trust-list li {background:transparent; color:#f2d49d; border:0; border-radius:0; padding:4px 14px 4px 0}
.brand-editorial .policy-doctor img {width:180px; height:220px; border-radius:4px; border:0; outline:0; box-shadow:none; object-position:center 12%}
.brand-editorial .policy-doctor figcaption strong {color:#fffdf8}
.brand-editorial .policy-doctor figcaption span {color:#dbbe8a}
.brand-editorial .local-cta-panel,.brand-editorial .policy-contact {background:#1d4568; border-radius:10px; box-shadow:none}
.brand-editorial .local-cta-panel :is(h2,h3) {color:#fffdf8}
.brand-editorial .footer {background:#173a58}
.brand-editorial footer {border-top:0}
.brand-editorial.brand-recovery main {min-height:60vh; padding-bottom:72px}
.brand-editorial.brand-recovery h1 {font-size:clamp(2rem,4vw,3rem); line-height:1.5}
@media (min-width:1100px) {
  .brand-editorial .local-treatment-wrap.article-sidebar-wrap {max-width:1120px}
}
@media (min-width:821px) {
  .brand-editorial.brand-utility .local-hero-panel,.brand-editorial.brand-hub .local-hero-panel {min-height:430px}
  .brand-editorial.brand-service .local-hero-panel {min-height:430px}
}
@media (max-width:1099px) and (min-width:761px) {
  .brand-editorial .hero-grid {gap:28px; min-height:550px}
  .brand-editorial .hero-text {padding-block:42px}
  .brand-editorial .hero h1 {font-size:2rem}
}
@media (max-width:820px) {
  .brand-editorial .local-hero-panel {grid-template-columns:minmax(0,1fr) 190px; padding:28px; gap:24px}
  .brand-editorial .local-hero-panel h1 {font-size:1.85rem}
  .brand-editorial .policy-hero {padding:28px}
}
@media (max-width:760px) {
  .brand-editorial .hero {padding:0 20px}
  .brand-editorial .hero-grid {display:flex; flex-direction:column; gap:0; min-height:0}
  .brand-editorial .hero-text {padding:42px 0 28px}
  .brand-editorial .hero h1 {font-size:clamp(1.7rem,6.7vw,2.4rem); margin-bottom:20px; line-height:1.65}
  .brand-editorial .hero p.lead {font-size:.94rem; margin-bottom:22px}
  .brand-editorial .credentials {margin-bottom:24px}
  .brand-editorial .credential-secondary {font-size:.77rem}
  .brand-editorial .hero-photo {max-width:390px; align-self:center; aspect-ratio:1.13}
  .brand-editorial .hero-photo img {height:100%; max-height:none; object-position:center 14%; border-radius:6px 6px 0 0}
  .brand-editorial .hero .btn {padding-inline:16px; font-size:.87rem; margin-bottom:10px}
  .brand-editorial .hero .btn-ghost {margin-left:6px}
  .brand-editorial .notice-bar {padding-inline:20px}
  .brand-editorial .notice-inner {gap:4px; align-items:flex-start; flex-direction:column; padding:16px 0}
  .brand-editorial .notice-inner a {font-size:.88rem}
  .brand-editorial .section,.brand-editorial .section-alt-inner {padding:38px 20px}
  .brand-editorial .section-sub {font-size:.91rem; margin-bottom:24px}
}
@media (max-width:640px) {
  .brand-editorial .nav-wrap {padding:10px 16px}
  .brand-editorial .brand {font-size:1.1rem}
  .brand-editorial .article-wrap {padding-right:20px; padding-left:20px}
  .brand-editorial .breadcrumb {font-size:.74rem; margin-bottom:18px}
  .brand-editorial .local-hero-panel {display:flex; flex-direction:column; align-items:stretch; padding:25px 22px 0; gap:24px; margin-bottom:26px; border-radius:8px}
  .brand-editorial .local-hero-panel h1 {font-size:1.7rem; line-height:1.65}
  .brand-editorial .local-hero-panel .local-lead {font-size:.96rem}
  .brand-editorial .local-hero-panel .local-hero-actions {gap:10px; margin-top:22px}
  .brand-editorial .local-hero-panel .btn {padding-inline:16px; font-size:.88rem}
  .brand-editorial .local-doctor-visual {max-width:280px!important; width:100%!important; align-self:center; aspect-ratio:1.17; border-radius:4px 4px 0 0}
  .brand-editorial .local-doctor-visual img {object-position:center 12%}
  .brand-editorial .health-article .local-hero-panel {display:block; padding:24px 20px; margin-bottom:24px}
  .brand-editorial .health-article .local-hero-panel h1 {font-size:1.55rem; line-height:1.65}
  .brand-editorial .health-article .local-doctor-visual {width:100%!important; max-width:none!important; aspect-ratio:auto; display:flex; flex-direction:row; align-items:center; gap:12px; border-radius:0; background:none; border-top:1px solid #54738a; margin-top:24px; padding-top:18px}
  .brand-editorial .health-article .local-doctor-visual img {flex:0 0 58px; width:58px; height:68px; border-radius:4px; object-fit:cover; object-position:center 14%}
  .brand-editorial .health-article .local-doctor-visual figcaption {background:none; text-align:left; padding:0}
  .brand-editorial .health-article .local-doctor-visual figcaption strong {font-size:.95rem}
  .brand-editorial .health-article .local-doctor-visual figcaption span {font-size:.76rem}
  .brand-editorial .policy-hero {padding:26px 22px; border-radius:8px; gap:22px}
  .brand-editorial .policy-hero h1 {font-size:1.7rem}
  .brand-editorial .policy-doctor img {width:130px; height:158px; margin-bottom:10px}
}
@media (prefers-reduced-motion:reduce) {
  .brand-editorial .btn {transition:none}
}
@media print {
  body.brand-editorial {background:#fff; color:#000}
  .brand-editorial .hero,.brand-editorial .local-hero-panel,.brand-editorial .policy-hero {background:#fff; color:#000; border:1px solid #aaa}
  .brand-editorial :is(.hero,.local-hero-panel,.policy-hero) :is(h1,p,strong,span,a,li) {color:#000}
  .brand-editorial .hero-photo,.brand-editorial .local-doctor-visual,.brand-editorial .policy-doctor {display:none!important}
  .brand-editorial .local-hero-panel {display:block}
}
