/* Shared alignment across medical and wellness pages. */
body .icon { vertical-align: middle; flex-shrink: 0; }
body :is(.ic,.rd-ico,.meta-pill-icon,.detail-card-icon,.doctor-avatar,.rd-step-dot,.massvaa-care-badge,.medical-paper-holder) {
  display: inline-flex; align-items: center; justify-content: center;
}
body #main :is(.medical-paper-holder,.medical-care-paper) { object-fit: contain; }
body #main :is(.rd-card,.rd-brand-card,.medical-stage,.medical-topic-card,.rd-step,.rd-flow-card) > :is(.ic,.medical-paper-holder,.medical-care-paper,.rd-step-dot) {
  display: flex; margin-inline: auto;
}
body #main .medical-paper-holder > img { display: block; object-fit: contain; margin: auto; }
body #main :is(.btn-primary,.btn-outline,.btn-outline-teal,.rd-btn,.rd-btn-line,.rd-btn-ghost,.form-submit,.wl-btn,.wl-ghost) {
  align-items: center; justify-content: center; gap: 8px; text-align: center;
}
body #main :is(.doctor-hospital,.hospital-location) { display: flex; align-items: center; gap: 6px; }
body #main .doctor-hospital { justify-content: center; }
body #main .doctor-card .doctor-spec-pill { line-height: 1.45; }
body #main .doctor-card > div:last-child { margin-top: auto; padding-top: 14px; }
body #main .medical-quote-action { padding: 0 !important; border: 0; background: transparent; box-shadow: none; }
/* Secondary information should read as links rather than competing buttons. */
body #main .massvaa-care-links { grid-template-columns: repeat(2,minmax(0,1fr)); }
@media (max-width: 480px) {
  body #main .massvaa-care-links { grid-template-columns: minmax(0,1fr); }
}

/* A text underline gives navigation feedback without a rectangular hover fill. */
body #navbar.nav-reference .nav-primary > li > a:is(:hover,:focus-visible,.active,.medical-nav-current),
body #navbar.nav-reference .nav-primary > li > .nav-guide > summary:is(:hover,:focus-visible) {
  background: transparent !important; box-shadow: none; border-radius: 0;
}
body #navbar.nav-reference .nav-primary > li > a { transition: color .2s ease; }
body #navbar.nav-reference .nav-primary > li > a::after { pointer-events: none; }
body.wl #navbar .nav-links > li > a:not(.rd-switch,.nav-cta,.nav-wa-btn,.telegram-link,.nav-search-link):is(:hover,:focus-visible) {
  background: transparent !important;
  text-decoration: underline;
  text-underline-offset: 6px;
}
body #navbar.nav-reference :is(.nav-search-link,.medical-nav-whatsapp,.wellness-nav-whatsapp) {
  display: inline-flex; align-items: center; justify-content: center;
}
/* Keep keyboard focus visible while avoiding browser click-focus boxes. */
body :is(a,button,summary):focus-visible { outline: 3px solid #1683a5; outline-offset: 4px; }
body :is(a,button,summary):focus:not(:focus-visible) { outline: none; }
@media (prefers-reduced-motion: reduce) {
  body *,body *::before,body *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* Center page content with 8% breathing room on each desktop side. */
body { --page-gutter: 8vw; }
@media (max-width: 1024px) { body { --page-gutter: 20px; } }
@media (max-width: 600px) { body { --page-gutter: 12px; } }
body #main :is(.rd-wrap,.section-inner,.rd-hero-inner,.medical-support-wrap),
body.medical-aligned-guide #main > section > :is(.rd-wrap,.section-inner) {
  width: 100% !important;
  max-width: none !important;
  margin-inline: auto !important;
  padding-inline: var(--page-gutter) !important;
  box-sizing: border-box;
}
/* Nested wrappers share their parent's gutter instead of adding another one. */
body #main :is(.rd-wrap,.section-inner) :is(.rd-wrap,.section-inner,.medical-support-wrap) {
  padding-inline: 0 !important;
}
body #main > section:has(> :is(.rd-wrap,.section-inner)) { padding-inline: 0 !important; }
body #main :is(.medical-profile-content,.medical-guide-content,.rd-contact-main,.rd-faq,
  .medical-section-menu,.provider-evidence,.rd-est-grid,.wl-page-grid,
  .provider-toolbar,.medical-treatment-toolbar,.search-page-form,
  .rd-prose,.medical-policy,.rd-readable,.medical-readable:not(p)) {
  width: 100%; max-width: none !important; margin-inline: 0;
}
/* Limit prose line length without narrowing card grids, forms or whole sections. */
body #main :is(.rd-prose,.medical-policy,.rd-readable,.premium-structured-content) > p {
  max-width: 90ch;
}
body #navbar .nav-inner,
body #navbar.nav-reference :is(.nav-inner,.nav-utility-inner) {
  width: 100% !important; max-width: none !important; margin-inline: 0;
  padding-inline: var(--page-gutter) !important;
}
body footer :is(.footer-assurance,.footer-inner,.footer-countries,.footer-bottom) {
  width: 100% !important; max-width: none !important; margin-inline: 0;
  padding-inline: var(--page-gutter) !important;
}
/* Wellness swipe rails previously bled by a fixed 24px beyond their container. */
@media (max-width: 700px) {
  body.wl :is(.wl-trads,.wl-progs,.wl-section .wl-cards,.wl-aud) {
    margin-inline: calc(-1 * var(--page-gutter));
    padding-inline: var(--page-gutter);
    scroll-padding-inline: var(--page-gutter);
    max-width: calc(100% + 2 * var(--page-gutter));
  }
}

/* Each care mode is an independent destination with a clear current state. */
.rd-switch.care-mode-switch{display:inline-flex;align-items:center;gap:3px;padding:3px;border-radius:999px;background:#edf2f2;}
.rd-switch.care-mode-switch>a{display:inline-flex!important;align-items:center;justify-content:center;gap:6px;padding:5px 13px!important;border:0!important;border-radius:999px;color:#234754!important;background:transparent!important;text-decoration:none!important;line-height:1.35;font-size:13px;}
.rd-switch.care-mode-switch>a[aria-current="page"]{background:#173e50!important;color:#fff!important;}
.rd-switch.care-mode-switch>a>span{padding:0!important;background:transparent!important;color:inherit!important;}
.rd-switch.care-mode-switch .lotus{width:18px;height:18px;object-fit:contain;}
.enquiry-context{padding:12px 16px;background:#edf5f5;border-radius:10px;line-height:1.5;}
.rd-cform fieldset{scroll-margin-top:145px;}
.rd-prose p a,.rd-prose li a,.medical-readable p a{ text-decoration:underline;text-underline-offset:3px;}
.rd-lang-notice{color:#37535b!important;}
@media(max-width:768px){
 .rd-contact-hero .rd-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
 .rd-contact-hero .rd-quick-card{display:flex;flex-direction:column;gap:6px;text-align:center;padding:12px 6px;min-width:0;}
 .rd-contact-hero .rd-quick-card small{font-size:10px;overflow-wrap:anywhere;}
 .rd-contact-hero .rd-quick-card svg{width:22px;height:22px;}
 .provider-toolbar input,.medical-filterbar input{min-width:0;}
 .medical-paper-scene{max-height:220px;overflow:hidden;}
 .rd-cardgrid .medical-wide-paper{max-height:170px;object-fit:contain;}
}
.provider-hospital-filter{min-width:250px;flex:1;}
.provider-hospital-filter select{width:100%;max-width:none;}
.estimate-exclusions{font-size:.84rem;color:#425b65;line-height:1.5;margin:10px 0 18px;max-width:65ch;}
.rd-dodont{align-items:start;}
.rd-flow-arrow{color:#355c2e!important;}
.rd-step small,.rd-step .label{color:#955015;}
.wl-more>a{color:#734e17!important;text-decoration:underline;}
body.medical-page-medical-visa h4{color:#835218!important;}
@media(max-width:768px){
 body #main .provider-doctor-card{display:grid!important;grid-template-columns:66px minmax(0,1fr);gap:7px 14px;padding:20px;text-align:start;align-items:start;}
 body #main .provider-doctor-card[style*="display: none"]{display:none!important;}
 body #main .provider-doctor-card .doctor-avatar{grid-column:1;grid-row:1 / span 4;width:66px;height:76px;margin:0;}
 body #main .provider-doctor-card>:not(.doctor-avatar){grid-column:2;max-width:100%;}
 body #main .provider-doctor-card .doctor-name{font-size:1.12rem;line-height:1.35;}
 body #main .provider-doctor-card .doctor-spec-pill{font-size:.7rem;justify-self:start;}
 body #main .provider-doctor-card .doctor-hospital{justify-content:flex-start;font-size:.78rem;}
 body #main .provider-doctor-card .provider-experience{font-size:.73rem;justify-self:start;}
 body #main .provider-doctor-card>div:last-child{grid-column:1 / -1;padding-top:8px;}
 body #main .provider-doctor-card.provider-page-hidden{display:none!important;}
 .provider-hospital-filter{min-width:0;width:100%;}
 .rd-toc>details>summary{font-weight:700;cursor:pointer;padding:12px 0;}
}
body[data-medical-page="medical-visa"] h4{color:#835218!important;}
.lang-notice-cta{background:#225c70!important;color:#fff!important;}
.rd-toc summary{font-weight:700;color:#193e50;cursor:pointer;}
.provider-hospital-filter .medical-select{width:100%;max-width:none;}
body #main .rd-step-n{color:#955015;}
body.wl .wl-prog-body>p{color:#5e5a50!important;}
body.wl .wl-tags>span{color:#44573f!important;}
body.wl .wl-go{color:#8a4d36!important;}
body:not(.wl) #main .provider-hospital-filter .medical-select{display:block;width:100%!important;max-width:none!important;}
body:not(.wl) #main .provider-hospital-filter .medical-select-trigger{width:100%!important;max-width:none!important;}
body:not(.wl) #main .provider-hospital-filter .medical-select-value{white-space:normal;overflow-wrap:anywhere;}

/* Shared directory controls: compact search and aligned filter fields. */
body:not(.wl) #main .directory-toolbar-slim,
body:not(.wl) #main .directory-toolbar-slim:has(:is(.provider-city-filter,.provider-hospital-filter)) {
  grid-template-columns: minmax(0, 4fr) minmax(0, 3fr);
  max-width: none;
  gap: 8px 12px;
  align-items: end;
}
body:not(.wl) #main .directory-toolbar-slim:has(:is(.provider-city-filter,.provider-hospital-filter)) {
  grid-template-columns: minmax(0, 4fr) minmax(0, 3fr) minmax(0, 3fr);
}
body:not(.wl) #main .directory-toolbar-slim > :is(.filter-bar,.provider-city-filter,.provider-hospital-filter,.medical-treatment-specialty) {
  grid-column: auto;
  grid-row: auto;
  min-width: 0;
  margin: 0;
}
body:not(.wl) #main .directory-toolbar-slim > .filter-bar { order: 0; }
body:not(.wl) #main .directory-toolbar-slim > :is(.provider-city-filter,.provider-hospital-filter) { order: 1; }
body:not(.wl) #main .directory-toolbar-slim > .medical-treatment-specialty { order: 2; }
body:not(.wl) #main .directory-toolbar-slim > .medical-result-status {
  order: 3;
  grid-column: 1 / -1;
}
body:not(.wl) #main .directory-toolbar-slim :is(.provider-city-filter,.provider-hospital-filter) label {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0;
}
body:not(.wl) #main .directory-toolbar-slim :is(.search-input-wrap,.medical-select-trigger,select) {
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px;
  box-sizing: border-box;
}
body:not(.wl) #main .directory-toolbar-slim .search-input-wrap .icon {
  width: 16px; height: 16px; flex: 0 0 16px;
}
body:not(.wl) #main .directory-toolbar-slim > [hidden] { display: none !important; }
@media (max-width: 768px) {
  body:not(.wl) #main .directory-toolbar-slim,
  body:not(.wl) #main .directory-toolbar-slim:has(:is(.provider-city-filter,.provider-hospital-filter)) {
    grid-template-columns: minmax(0, 1fr);
  }
  body:not(.wl) #main .directory-toolbar-slim > :is(.filter-bar,.provider-city-filter,.provider-hospital-filter,.medical-treatment-specialty,.medical-result-status),
  body:not(.wl) #main .directory-toolbar-slim:has(:is(.provider-city-filter,.provider-hospital-filter)) > :is(.provider-city-filter,.provider-hospital-filter,.medical-treatment-specialty,.medical-result-status) {
    grid-column: 1 / -1;
    grid-row: auto;
  }
}


body:not(.wl) #main .directory-toolbar-slim .provider-hospital-filter { min-width:0; margin:0; }
