/* Blue Crescent: consistent discovery, keyboard access and patient journey. */
:root{--bc-nav-offset:100px;--bc-ink:#14384d;--bc-gold:#a67c32;--bc-line:#dce3e5}
html{scroll-padding-top:calc(var(--bc-nav-offset) + 20px)}
main [id]{scroll-margin-top:var(--bc-section-offset,calc(var(--bc-nav-offset) + 20px))}
html body :is(input,select,textarea):focus-visible{outline:3px solid #a67c32!important;outline-offset:3px;border-color:#a67c32!important}
html body .bc-access-skip{position:fixed;inset-block-start:8px;inset-inline-start:16px;transform:translateY(-180%);z-index:10000;background:#10334b;color:#fff;padding:12px 20px;border-radius:8px}
html body .bc-access-skip:focus{transform:none}
html body .site-header nav>a[aria-current="page"]{color:#805d22!important;text-decoration:underline;text-decoration-color:#b78a3c;text-underline-offset:8px}
html body .language-picker-links .language-code{display:block!important;width:auto!important;font-size:13px!important}
html body .site-header .mobile-menu nav>a,html body .language-picker-links>a{min-height:44px;display:flex;align-items:center}
html body.home-page .bc-section-nav{position:sticky;top:var(--bc-nav-offset);z-index:24;background:#fcfbf7f5;border-block:1px solid #d7d9d0;box-shadow:0 4px 12px #14384d08;backdrop-filter:blur(10px)}
html body.home-page .bc-section-nav>.container{display:flex;align-items:center;justify-content:center;gap:6px;padding-block:9px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#c7b78f transparent}
html body.home-page .bc-section-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;flex:0 0 auto;padding:8px 17px;border-radius:8px;color:#304f60;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap;border:1px solid transparent}
html body.home-page .bc-section-nav a:hover,html body.home-page .bc-section-nav a[aria-current="location"]{background:#13394e;color:#fff;border-color:#13394e}
html body.home-page .bc-quick-paths a{color:#36576a!important;border-color:#cbd6dc!important;background:#fff!important;opacity:1!important;min-height:40px;display:inline-flex;align-items:center;padding:6px 12px!important}
html body.home-page .bc-route-grid{align-items:stretch}
html body.home-page .bc-route-card{grid-template-columns:36px minmax(0,1fr) 16px!important;gap:14px!important;min-height:125px;box-shadow:0 6px 20px #17384d06!important}
html body.home-page .bc-route-card strong{line-height:1.85!important}
html body.home-page .bc-route-card small{color:#526873!important;line-height:1.9!important}
html body.home-page #bc-patient-start{padding-block:42px!important}
html body.home-page #bc-free-tools{margin-block:34px!important}
html body.home-page .bc-more-resources{background:#f6f7f8!important;border-block:1px solid #e0e5e7}
html body.home-page .bc-resource-groups{display:grid;gap:14px}
html body.home-page .bc-resource-group{border:1px solid #d9e0e3;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 4px 16px #17384d04}
html body.home-page .bc-resource-group>summary{display:grid;grid-template-columns:44px minmax(0,1fr) 28px;align-items:center;gap:18px;padding:22px 26px;cursor:pointer;list-style:none;color:#173c50;min-height:94px}
html body.home-page .bc-resource-group>summary::-webkit-details-marker{display:none}
html body.home-page .bc-resource-group>summary strong{display:block;font-size:18px;line-height:1.7}
html body.home-page .bc-resource-group>summary small{display:block;font-size:13px;color:#5d727c;line-height:1.8;margin-top:4px}
html body.home-page .bc-resource-index{font:600 15px/1.4 sans-serif;color:#9b752f;background:#f7f1e4;border-radius:10px;display:grid;place-items:center;width:44px;height:44px}
html body.home-page .bc-resource-plus{font:300 28px/1 sans-serif;text-align:center;color:#977132;transition:transform .2s}
html body.home-page .bc-resource-group[open]>.bc-resource-content{border-top:1px solid #e2e6e8}
html body.home-page .bc-resource-group[open]>summary{background:#fcfaf5}
html body.home-page .bc-resource-group[open]>summary .bc-resource-plus{transform:rotate(45deg)}
html body.home-page .bc-resource-content>.section{padding-block:36px!important;box-shadow:none!important;margin-block:0!important;border-radius:0!important}
html body.home-page .bc-resource-content>.section>.container{width:calc(100% - 48px)!important;max-width:1100px!important}
html body.home-page .bc-resource-content .section-heading h2{font-size:27px!important;line-height:1.65!important}
html body.home-page .bc-resource-content>.section+.section{border-top:1px solid #e1e7e9}
/* A restrained transparent India and medical-care atmosphere behind the emblem. */
html body #home.bc-integrated-hero .bc-care-atmosphere{position:absolute;inset:0;z-index:-2;pointer-events:none;overflow:hidden;direction:ltr}
html body #home.bc-integrated-hero .bc-care-backdrop{position:absolute;left:-3%;top:-4%;width:76%;height:108%;max-width:none!important;object-fit:contain;object-position:left center;opacity:.17;filter:saturate(.45) contrast(.9);border:0!important;border-radius:0!important;box-shadow:none!important;mask-image:radial-gradient(ellipse 78% 75% at 33% 48%,#000 38%,transparent 82%)}
@media(max-width:1100px){
 html body #home.bc-integrated-hero .bc-care-atmosphere{height:calc(clamp(220px,73vw,560px) - 45px);z-index:0}
 html body #home.bc-integrated-hero .bc-integrated-scene{z-index:1}
 html body #home.bc-integrated-hero .bc-care-backdrop{left:-5%;top:0;width:125%;height:105%;opacity:.15}
}
@media(max-width:700px){
 html body :is(input,select,textarea){font-size:16px!important}
 html body.home-page .bc-section-nav>.container{width:100%;justify-content:flex-start;padding-inline:16px;gap:4px}
 html body.home-page .bc-section-nav a{font-size:12px;padding-inline:13px;min-height:42px}
 html body.home-page .bc-route-grid{grid-template-columns:1fr!important;gap:12px!important}
 html body.home-page .bc-route-card{min-height:105px!important;padding:18px!important}
 html body.home-page .bc-home-discover{display:flex!important;flex-direction:column!important;gap:16px!important;align-items:stretch!important}
 html body.home-page .bc-search-home{width:100%!important;min-width:0!important;min-height:52px!important}
 html body.home-page .bc-quick-paths{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:8px!important}
 html body.home-page .bc-quick-paths a{font-size:12px!important;min-height:42px}
 html body.home-page .bc-resource-group>summary{grid-template-columns:36px minmax(0,1fr) 20px;gap:12px;padding:18px 15px}
 html body.home-page .bc-resource-index{width:36px;height:36px;font-size:12px}
 html body.home-page .bc-resource-group>summary strong{font-size:16px}
 html body.home-page .bc-resource-group>summary small{font-size:12px}
 html body.home-page .bc-resource-content>.section>.container{width:calc(100% - 28px)!important}
 html body.home-page .bc-resource-content .section-heading h2{font-size:23px!important}
 html body .filters{flex-wrap:wrap;gap:8px}
 html body .filters>button{min-height:44px}
 html body .bc-directory-search input{min-height:48px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}html body *,html body *::before,html body *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media print{.bc-section-nav,.bc-access-skip{display:none!important}.bc-resource-group>.bc-resource-content{display:block!important}.bc-care-atmosphere{display:none!important}}

html body.home-page #bc-patient-start .bc-route-card{display:grid!important;grid-template-columns:36px minmax(0,1fr) 16px!important;align-items:center!important}
html body.home-page #bc-patient-start .bc-route-card>span{flex:none!important;width:auto!important;min-width:0!important}
html body.home-page #bc-patient-start .bc-route-number{width:36px!important;height:36px!important}
html body.home-page #bc-patient-start .bc-route-arrow{width:16px!important}

/* Final responsive pass: menus remain usable in short or landscape viewports. */
html body .site-header .mobile-menu>nav,html body .site-header .language-picker-links{max-height:calc(100vh - var(--bc-nav-offset) - 28px);max-height:calc(100dvh - var(--bc-nav-offset) - 28px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
html body .site-header .mobile-menu>nav{max-width:calc(100vw - 36px)}
html body main:focus{outline:none}
html body .bc-page-index>summary{min-height:44px;display:flex;align-items:center}
