@import url("https://fonts.googleapis.com/css2?family=Kiwi+Maru:wght@400;500&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
@font-face{font-family:"Shippori Mincho";src:url("fonts/shippori-mincho-400.woff") format("woff");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Shippori Mincho";src:url("fonts/shippori-mincho-500.woff") format("woff");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:"Shippori Mincho";src:url("fonts/shippori-mincho-600.woff") format("woff");font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:"Shippori Mincho";src:url("fonts/shippori-mincho-700.woff") format("woff");font-style:normal;font-weight:700;font-display:swap}
:root{--navy:#001e62;--deep:#001e62;--blue:#001e62;--sky:#e9f3f8;--red:#CC0000;--ink:#172436;--muted:#657285;--line:#dbe4eb;--white:#fff;--serif:"Shippori Mincho","Yu Mincho","Hiragino Mincho ProN",serif;--sans:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;--rounded:"Kiwi Maru","Noto Sans JP",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--sans);font-size:16px;font-weight:400;line-height:1.85;background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.topbar{height:36px;background:var(--deep);color:#dfe8f1;font-size:.78rem}.topbar .wrap{display:flex;align-items:center;justify-content:space-between;height:100%}.lang{letter-spacing:.08em}.header{background:rgba(255,255,255,.98);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-row{height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:14px}
.brand-image{flex:0 0 auto;min-width:0}
.brand-image img{display:block;width:350px;max-width:none;height:auto;object-fit:contain;object-position:left center}.brand-mark{width:43px;height:43px;border:2px solid var(--navy);display:grid;place-items:center;color:var(--navy);font-family:Georgia,serif;font-size:1.4rem;font-weight:700;transform:rotate(45deg)}.brand-mark span{transform:rotate(-45deg)}.brand-title{font-family:var(--serif);font-size:1.2rem;font-weight:800;line-height:1.35;color:var(--navy)}.brand-en{font:600 .68rem/1.2 Georgia,serif;letter-spacing:.08em;color:var(--muted)}.nav{display:flex;align-items:center;gap:20px;font-size:.88rem;font-weight:700}.nav a{padding:30px 0 27px;border-bottom:3px solid transparent;white-space:nowrap}.nav a:hover,.nav a[aria-current="page"]{color:var(--red);border-color:var(--red)}.nav .contact{padding:11px 17px;border:1px solid var(--navy)}.menu-button{display:none;border:0;background:none;font-size:1.6rem;color:var(--navy)}
.hero{min-height:620px;position:relative;display:grid;align-items:end;color:#fff;overflow:hidden;background:var(--navy)}.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,20,39,.9) 0%,rgba(5,20,39,.58) 48%,rgba(5,20,39,.12) 78%),url('hospital.jpg') center/cover}.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:8px;background:linear-gradient(90deg,var(--red) 0 34%,#c7a246 34% 66%,var(--navy) 66%)}.hero-inner{position:relative;padding:90px 0 92px}.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;font:700 .74rem/1 var(--sans);letter-spacing:.18em}.eyebrow::before{content:"";width:44px;height:2px;background:#c7a246}.hero h1{font:600 clamp(2.35rem,6vw,4.8rem)/1.3 var(--serif);letter-spacing:.07em;margin:25px 0 22px;text-shadow:0 2px 18px rgba(0,0,0,.3)}.hero p{max-width:640px;font-size:1.08rem;margin:0 0 32px;color:#e8eef5}.actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:52px;padding:0 22px;font-weight:700;font-size:.9rem;border:1px solid rgba(255,255,255,.55)}.btn.primary{background:var(--red);border-color:var(--red)}.btn::after{content:"→"}.btn.light{background:#fff;color:var(--navy);border-color:#fff}
.quick{position:relative;margin-top:-37px;z-index:3}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);box-shadow:0 14px 45px rgba(21,49,72,.15)}.quick a{background:#fff;padding:27px 30px;border-right:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.quick a:last-child{border:0}.quick small{display:block;color:var(--red);font-size:.68rem;font-weight:800;letter-spacing:.12em}.quick strong{font-family:var(--serif);font-weight:800;font-size:1.08rem;color:var(--navy)}.quick i{font-style:normal;font-size:1.3rem;color:#92a0ae}.section{padding:92px 0}.section.tint{background:#f4f8fb}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px}.section-kicker{color:var(--red);font:800 .72rem/1 var(--sans);letter-spacing:.15em;text-transform:uppercase}.section h2,.page-hero h1{font:600 clamp(2rem,4vw,3.15rem)/1.35 var(--serif);color:var(--navy);margin:12px 0 0}.more{font-weight:700;font-size:.88rem;color:var(--blue);border-bottom:1px solid currentColor}.news-list{border-top:1px solid var(--line)}.news-item{display:grid;grid-template-columns:120px 110px 1fr 28px;gap:18px;align-items:center;padding:23px 4px;border-bottom:1px solid var(--line)}.news-date{font:700 .82rem/1 Georgia,serif;color:var(--muted)}.tag{display:inline-block;text-align:center;border:1px solid #b9cad8;color:var(--blue);font-size:.7rem;padding:2px 8px}.news-title{font-weight:650}.news-arrow{color:var(--red)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.feature{background:#fff;min-height:280px;padding:30px;position:relative;border-top:4px solid var(--navy);box-shadow:0 8px 30px rgba(18,43,72,.08)}.feature-num{font:italic 2.5rem/1 Georgia,serif;color:#d9e4ec}.feature h3{font:700 1.45rem/1.5 var(--serif);color:var(--navy);margin:22px 0 12px}.feature p{font-size:.91rem;color:var(--muted)}.feature a{position:absolute;bottom:26px;color:var(--red);font-weight:700;font-size:.85rem}.message{display:grid;grid-template-columns:.9fr 1.1fr;gap:68px;align-items:center}.portrait{aspect-ratio:4/5;background:linear-gradient(140deg,#dbe9f1,#a9c2d1);position:relative;overflow:hidden}.portrait::after{content:"鳴海 覚志\A 小児科学教室 教授・教室主任\A 慶應義塾大学病院 副病院長\A 公益社団法人 日本小児科学会 理事";white-space:pre;position:absolute;left:28px;right:28px;bottom:28px;background:rgba(0,30,98,.9);color:#fff;padding:18px 20px;font-family:var(--serif);font-weight:500;font-size:.88rem;line-height:1.65}.quote{font:600 1.75rem/1.75 var(--serif);color:var(--navy);margin:20px 0}.message p{color:var(--muted)}.metrics{display:grid;grid-template-columns:repeat(3,1fr);margin-top:35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.metric{padding:22px 16px;border-right:1px solid var(--line)}.metric:last-child{border:0}.metric strong{display:block;font:600 1.55rem/1.2 Georgia,serif;color:var(--red)}.metric span{font-size:.75rem;color:var(--muted)}
.page-hero{padding:70px 0 62px}.breadcrumb{font-size:.75rem;color:var(--muted);margin-bottom:28px}.page-layout{display:grid;grid-template-columns:230px 1fr;gap:64px;padding:72px 0 100px}.side{border-top:3px solid var(--navy)}.side a{display:block;padding:15px 10px;border-bottom:1px solid var(--line);font-size:.85rem}.side a.active{color:var(--red);font-weight:700}.content h2{font:700 1.8rem/1.5 var(--serif);color:var(--navy);border-left:4px solid var(--red);padding-left:18px;margin:0 0 28px}.content h3{font:700 1.25rem/1.5 var(--serif);color:var(--navy);margin-top:40px}.content p{color:#49586a}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.card{border:1px solid var(--line);padding:25px}.card h3{margin:0 0 8px}.card p{font-size:.9rem;margin:0}.footer{background:var(--deep);color:#e5edf4;padding:58px 0 28px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(2,1fr);gap:56px}.footer h4{font-family:var(--serif);font-weight:800;font-size:1.05rem;margin:0 0 16px}.footer a{display:block;color:#afbecd;font-size:.82rem;margin:7px 0}.footer address{font-style:normal;color:#afbecd;font-size:.82rem}.copyright{border-top:1px solid #27405a;margin-top:40px;padding-top:22px;color:#8294a6;font-size:.7rem}
@media(max-width:900px){.nav{display:none}.menu-button{display:block}.nav.open{display:flex;position:absolute;left:0;right:0;top:88px;flex-direction:column;align-items:stretch;gap:0;background:#fff;padding:10px 24px 24px;box-shadow:0 15px 30px rgba(0,0,0,.13)}.nav.open a{padding:14px 0}.hero{min-height:570px}.quick-grid,.feature-grid{grid-template-columns:1fr}.quick{margin-top:0}.quick a{border-right:0;border-bottom:1px solid var(--line)}.message{grid-template-columns:1fr}.portrait{max-height:450px}.page-layout{grid-template-columns:1fr}.side{display:none}}
@media(max-width:600px){.topbar{display:none}.header-row{height:72px}.brand-title{font-size:.98rem}.brand-en{display:none}.brand-mark{width:36px;height:36px}.brand-image img{width:245px;max-width:calc(100vw - 90px)}.nav.open{top:72px}.wrap{width:min(100% - 28px,1160px)}.hero{min-height:530px}.hero::before{background:linear-gradient(rgba(5,20,39,.63),rgba(5,20,39,.85)),url('hospital.jpg') center/cover}.hero-inner{padding:70px 0 65px}.hero h1{font-size:2.25rem}.hero p{font-size:.96rem}.section{padding:68px 0}.section-head{align-items:start;flex-direction:column}.news-item{grid-template-columns:90px 1fr}.news-title{grid-column:1/3}.news-arrow{display:none}.cards{grid-template-columns:1fr}.metrics{grid-template-columns:1fr}.metric{border-right:0;border-bottom:1px solid var(--line)}.footer-grid{grid-template-columns:1fr;gap:30px}}

/* Staff directory */
.director-portrait{background:url('images/narumi-index-portrait.jpg') center 22%/cover no-repeat}
.staff-page-hero p{max-width:660px;margin:18px 0 0}
.page-eyebrow{color:var(--red);font:800 .72rem/1 var(--sans);letter-spacing:.15em;text-transform:uppercase}
.staff-main{padding:54px 0 100px;background:linear-gradient(#fff,#f7fafc)}
.staff-toolbar{position:sticky;top:88px;z-index:10;display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:64px;padding:18px 22px;background:rgba(255,255,255,.96);border:1px solid var(--line);box-shadow:0 10px 30px rgba(18,43,72,.08);backdrop-filter:blur(8px)}
.staff-toolbar label{display:block;flex:1;max-width:610px}.staff-toolbar label span{display:block;margin-bottom:6px;color:var(--navy);font-size:.78rem;font-weight:800;letter-spacing:.05em}.staff-toolbar input{width:100%;min-height:48px;padding:0 16px;border:1px solid #aebfcd;border-radius:0;background:#fff;color:var(--ink);font:inherit;font-size:1rem;outline:none}.staff-toolbar input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(27,90,143,.14)}
.staff-toolbar p{margin:0;color:var(--muted);white-space:nowrap}.staff-toolbar strong{color:var(--red);font:600 1.8rem/1 Georgia,serif}
.staff-lead,.staff-group{margin-bottom:84px}.staff-group-head{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:28px;padding-bottom:17px;border-bottom:1px solid var(--line)}
.staff-group-head span{display:block;color:var(--red);font:800 .7rem/1 var(--sans);letter-spacing:.15em;text-transform:uppercase}.staff-group-head h2{margin:8px 0 0;color:var(--navy);font:700 clamp(1.6rem,3vw,2.2rem)/1.35 var(--serif)}
.staff-section-intro{max-width:590px;margin:0;color:var(--muted);font-size:.9rem}
.staff-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.staff-card{min-width:0;background:#fff;border:1px solid var(--line);box-shadow:0 8px 25px rgba(18,43,72,.06);transition:transform .2s ease,box-shadow .2s ease}.staff-card:hover{transform:translateY(-3px);box-shadow:0 13px 36px rgba(18,43,72,.11)}
.staff-photo-wrap{position:relative;overflow:hidden;background:#edf3f7}.staff-photo{width:100%;aspect-ratio:1;object-fit:cover;object-position:center 35%;filter:saturate(.9)}
.staff-card-body{padding:22px}.staff-position{min-height:1.5em;margin:0 0 5px;color:var(--red);font-size:.74rem;font-weight:800;letter-spacing:.04em}.staff-card h3{margin:0;color:var(--navy);font:700 1.45rem/1.35 var(--serif)}
.staff-specialty{min-height:3.5em;margin:11px 0 18px;color:#526176;font-size:.88rem;line-height:1.7}
.staff-details{border-top:1px solid var(--line)}.staff-details summary{padding:14px 2px 0;cursor:pointer;color:var(--blue);font-size:.78rem;font-weight:800;list-style:none}.staff-details summary::-webkit-details-marker{display:none}.staff-details summary::after{content:"＋";float:right;color:var(--red)}.staff-details[open] summary::after{content:"−"}.staff-details dl{margin:16px 0 0}.staff-detail-row{padding:13px 0;border-top:1px solid #edf1f4}.staff-detail-row dt{margin:0 0 5px;color:var(--navy);font-size:.72rem;font-weight:800}.staff-detail-row dd{margin:0;color:#5c6979;font-size:.78rem;line-height:1.75}
.staff-card-featured{display:grid;grid-template-columns:minmax(280px,.72fr) 1.28fr;max-width:920px;background:var(--navy);border:0;color:#fff;box-shadow:0 18px 48px rgba(11,39,69,.2)}.staff-card-featured:hover{transform:none;box-shadow:0 18px 48px rgba(11,39,69,.2)}.staff-card-featured .staff-card-body{padding:46px}.staff-card-featured .staff-position{color:#e5c771}.staff-card-featured h3{color:#fff;font-size:2.15rem}.staff-card-featured .staff-specialty{min-height:0;color:#d6e2eb;font-size:1rem}.staff-card-featured .staff-details{border-color:#536a80}.staff-card-featured .staff-details summary{color:#fff}.staff-card-featured .staff-detail-row{border-color:#3b556d}.staff-card-featured .staff-detail-row dt{color:#e5c771}.staff-card-featured .staff-detail-row dd{color:#d6e2eb}.staff-lead-badge{position:absolute;left:0;bottom:0;padding:10px 15px;background:var(--red);color:#fff;font:800 .65rem/1 var(--sans);letter-spacing:.12em}
.staff-source{margin:12px 0 0;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:.78rem}.staff-source a{color:var(--blue);text-decoration:underline}.staff-empty{padding:40px;text-align:center;background:#fff;border:1px solid var(--line);color:var(--muted)}
@media(max-width:1200px) and (min-width:901px){.nav{gap:14px;font-size:.8rem}.nav .contact{padding-left:12px;padding-right:12px}.brand-title{font-size:1.05rem}.brand-image img{width:320px}}
@media(max-width:900px){.staff-toolbar{top:88px}.staff-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-card-featured{grid-template-columns:minmax(240px,.8fr) 1.2fr}.staff-card-featured .staff-card-body{padding:32px}.staff-group-head{align-items:start;flex-direction:column;gap:12px}.staff-section-intro{max-width:none}}
@media(max-width:600px){.staff-main{padding:34px 0 70px}.staff-toolbar{top:72px;align-items:stretch;flex-direction:column;gap:10px;margin-bottom:48px;padding:14px}.staff-toolbar label{max-width:none}.staff-toolbar p{text-align:right;font-size:.78rem}.staff-grid{grid-template-columns:1fr;gap:18px}.staff-card-featured{display:block}.staff-card-featured .staff-card-body{padding:26px}.staff-card-featured h3{font-size:1.8rem}.staff-photo{aspect-ratio:4/3;object-position:center 30%}.staff-card-featured .staff-photo{aspect-ratio:1}.staff-card-body{padding:20px}.staff-specialty{min-height:0}.staff-lead,.staff-group{margin-bottom:62px}}

/* Education and recruitment */
.recruit-subnav{position:sticky;top:88px;z-index:18;display:flex;justify-content:center;background:rgba(0,30,98,.96);box-shadow:0 6px 20px rgba(0,30,98,.14)}
.recruit-subnav a{padding:13px 28px;color:#cbd7e2;font-size:.78rem;font-weight:700;border-bottom:3px solid transparent;white-space:nowrap}
.recruit-subnav a:hover,.recruit-subnav a[aria-current="page"]{color:#fff;border-color:#d1aa4e}
.recruit-hero{min-height:610px;display:grid;align-items:end;position:relative;color:#fff;background:var(--navy) url('recruit/hero-team.webp') center 38%/cover no-repeat}
.recruit-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,30,98,.92),rgba(0,30,98,.64) 52%,rgba(0,30,98,.12))}
.recruit-hero-inner{position:relative;padding:100px 0 88px}
.recruit-kicker{display:block;color:#e5c771;font:800 .72rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase}
.recruit-hero h1{margin:20px 0 22px;font:600 clamp(2.8rem,6vw,5.2rem)/1.28 var(--serif);letter-spacing:.04em;text-shadow:0 3px 25px rgba(0,0,0,.28)}
.recruit-hero p{max-width:680px;margin:0 0 32px;font-size:1.08rem;color:#e4ecf3}
.recruit-facts{background:var(--deep);color:#fff}
.recruit-fact-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.recruit-fact-grid>div{padding:34px 26px;border-right:1px solid #294158}
.recruit-fact-grid>div:last-child{border:0}
.recruit-fact-grid strong{font:500 2.8rem/1 Georgia,serif;color:#e5c771}.recruit-fact-grid strong span{margin-left:4px;font:700 .82rem/1 var(--sans)}
.recruit-fact-grid p{margin:12px 0 0;color:#c4d0dc;font-size:.78rem;line-height:1.55}
.recruit-section{padding:96px 0}.recruit-tint{background:#f3f7fa}
.recruit-section-head{max-width:850px;margin-bottom:38px}.recruit-section-head>span,.recruit-entry-head span,.recruit-cta span{color:var(--red);font:800 .7rem/1 var(--sans);letter-spacing:.17em;text-transform:uppercase}
.recruit-section-head h2,.recruit-entry-head h2,.recruit-cta h2{margin:13px 0 0;color:var(--navy);font:600 clamp(2rem,4vw,3.05rem)/1.45 var(--serif)}
.recruit-section-head p{color:var(--muted)}
.recruit-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.recruit-intro-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}
.recruit-lead{margin-top:0;color:var(--navy)!important;font:600 1.4rem/1.8 var(--serif)}
.recruit-text-link{display:inline-block;margin-top:18px;color:var(--red);font-weight:700;border-bottom:1px solid currentColor}
.recruit-path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.recruit-path-grid>a{min-height:330px;padding:34px;background:#fff;border-top:4px solid var(--navy);box-shadow:0 10px 35px rgba(12,40,68,.07);transition:.2s}.recruit-path-grid>a:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(12,40,68,.12)}
.recruit-path-grid span{font:italic 2.4rem/1 Georgia,serif;color:#d5e1e9}.recruit-path-grid h3{margin:26px 0 14px;color:var(--navy);font:700 1.35rem/1.5 var(--serif)}.recruit-path-grid p{color:var(--muted);font-size:.9rem}.recruit-path-grid b{display:block;margin-top:24px;color:var(--red);font-size:.82rem}
.recruit-chair{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.recruit-chair>img{width:100%;max-height:590px;object-fit:cover;object-position:center top}.recruit-chair blockquote{margin:30px 0;padding:22px 26px;border-left:3px solid #c7a246;background:#f6f2e9;color:var(--navy);font:600 1.2rem/1.8 var(--serif)}.recruit-sign{text-align:right;font-weight:700;color:var(--navy)}
.recruit-cta{padding:66px 0;background:linear-gradient(110deg,var(--navy),var(--deep));color:#fff}.recruit-cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:50px}.recruit-cta span{color:#e5c771}.recruit-cta h2{color:#fff;font-size:2rem}.recruit-cta p{margin-bottom:0;color:#cbd7e2}.recruit-cta .btn{flex:none}
.recruit-source-note{padding:24px 0 40px;color:var(--muted);font-size:.72rem}.recruit-source-note a{text-decoration:underline;color:var(--blue)}
.recruit-page-hero{padding:82px 0}.recruit-page-hero .breadcrumb{margin-bottom:25px}.recruit-page-hero h1{margin:14px 0 12px;color:var(--navy);font:600 clamp(2.3rem,5vw,4rem)/1.35 var(--serif)}.recruit-page-hero p{max-width:700px;color:#58687a}
.recruit-program-ratio{display:grid;grid-template-columns:1fr 5fr;overflow:hidden;margin:36px 0 26px;border-radius:2px;color:#fff}.recruit-program-ratio div{padding:22px}.recruit-program-ratio div:first-child{background:var(--red)}.recruit-program-ratio div:last-child{background:var(--navy)}.recruit-program-ratio strong{display:block;font:700 1.4rem/1.2 var(--serif)}.recruit-program-ratio span{font-size:.75rem;color:#e0e8ef}
.recruit-wide-figure{margin:38px 0}.recruit-wide-figure img{width:100%;border:1px solid var(--line)}.recruit-wide-figure figcaption,.recruit-photo-grid figcaption{padding-top:10px;color:var(--muted);font-size:.75rem}
.recruit-photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:38px 0}.recruit-photo-grid figure{margin:0}.recruit-photo-grid img{width:100%;aspect-ratio:16/9;object-fit:cover}
.recruit-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:35px}.recruit-pillar{padding:28px;border:1px solid var(--line);background:#fff}.recruit-pillar span{color:var(--red);font:700 1.8rem/1 Georgia,serif}.recruit-pillar h3{color:var(--navy);font-family:var(--serif);font-weight:800}.recruit-pillar p{color:var(--muted);font-size:.88rem}
.recruit-facility-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:start}.recruit-facility-layout img{width:100%;border:1px solid var(--line)}.recruit-facility-list{columns:2;column-gap:28px;margin:0;padding:0;list-style:none;counter-reset:facility}.recruit-facility-list li{break-inside:avoid;padding:8px 0;border-bottom:1px solid var(--line);font-size:.82rem;counter-increment:facility}.recruit-facility-list li::before{content:counter(facility,decimal-leading-zero);margin-right:9px;color:var(--red);font:700 .7rem/1 Georgia,serif}
.recruit-diversity-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}.recruit-stat-card{padding:32px;background:#fff;border:1px solid var(--line)}.recruit-stat-card img{width:100%;margin-top:20px}.recruit-stat-card h3{color:var(--navy);font-family:var(--serif);font-weight:800}
.recruit-research{display:grid;grid-template-columns:.65fr 1.35fr;gap:55px;align-items:center}.recruit-research-number{padding:55px 20px;text-align:center;background:var(--navy);color:#fff}.recruit-research-number strong{display:block;color:#e5c771;font:500 5rem/1 Georgia,serif}.recruit-research-number span{font-size:.82rem}
.recruit-career-options{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:32px}.recruit-career-options div{padding:24px 18px;background:#eef5f8;color:var(--navy);text-align:center;font:700 1rem/1.5 var(--serif)}
.voice-list{display:grid;gap:36px}.voice-card{display:grid;grid-template-columns:300px 1fr;align-items:start;background:#fff;border:1px solid var(--line);box-shadow:0 10px 30px rgba(14,41,68,.06);overflow:hidden}.voice-card img{display:block;width:100%;height:auto;aspect-ratio:10/13;object-fit:cover;object-position:center top}.voice-card-body{padding:34px 36px}.voice-card-role{color:var(--red);font-size:.72rem;font-weight:700}.voice-card h2{margin:6px 0 18px;color:var(--navy);font:700 1.8rem/1.45 var(--serif)}.voice-card details,.faq-item{border-top:1px solid var(--line)}.voice-card summary,.faq-item summary{padding:14px 30px 14px 0;cursor:pointer;color:var(--navy);font-weight:700;position:relative}.voice-card summary::after,.faq-item summary::after{content:"＋";position:absolute;right:4px;color:var(--red)}.voice-card details[open] summary::after,.faq-item[open] summary::after{content:"−"}.voice-answer,.faq-answer{padding:0 0 18px;color:#566679;font-size:.9rem}
.career-story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.career-story{padding:30px;border-top:4px solid var(--red);background:#fff}.career-story h3{color:var(--navy);font:700 1.25rem/1.5 var(--serif)}.career-story p{color:var(--muted);font-size:.88rem}
.recruit-entry{display:grid;grid-template-columns:280px 1fr;gap:48px}.recruit-entry-head{padding-right:30px;border-right:1px solid var(--line)}.recruit-entry-head h2{font-size:2rem}.recruit-entry-table{margin:0}.recruit-entry-table>div{display:grid;grid-template-columns:150px 1fr;padding:17px 0;border-bottom:1px solid var(--line)}.recruit-entry-table dt{color:var(--navy);font-weight:700}.recruit-entry-table dd{margin:0;color:#526176}.recruit-official-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.recruit-official-links a{padding:12px 18px;border:1px solid var(--navy);color:var(--navy);font-size:.82rem;font-weight:700}
.faq-layout{display:grid;grid-template-columns:220px 1fr;gap:45px}.faq-categories{position:sticky;top:160px;align-self:start}.faq-categories a{display:block;padding:11px 8px;border-bottom:1px solid var(--line);color:var(--muted);font-size:.8rem}.faq-category{scroll-margin-top:170px;margin-bottom:54px}.faq-category h2{margin:0 0 10px;color:var(--navy);font:700 1.55rem/1.5 var(--serif)}.faq-item{margin:0}.faq-item summary{padding:18px 42px 18px 40px}.faq-item summary::before{content:"Q";position:absolute;left:4px;color:var(--red);font:700 1.15rem/1 Georgia,serif}.faq-answer{padding:2px 18px 22px 40px}
@media(max-width:900px){.recruit-subnav{top:88px;justify-content:flex-start;overflow-x:auto}.recruit-subnav a{padding-left:20px;padding-right:20px}.recruit-fact-grid{grid-template-columns:repeat(2,1fr)}.recruit-fact-grid>div:nth-child(2){border-right:0}.recruit-intro-grid,.recruit-chair,.recruit-facility-layout,.recruit-research{grid-template-columns:1fr}.recruit-path-grid,.recruit-pillars,.career-story-grid{grid-template-columns:1fr}.recruit-career-options{grid-template-columns:repeat(2,1fr)}.recruit-cta .wrap{align-items:flex-start;flex-direction:column}.voice-card{grid-template-columns:240px 1fr}.recruit-entry,.faq-layout{grid-template-columns:1fr}.recruit-entry-head{padding-right:0;border-right:0}.faq-categories{display:none}}
@media(max-width:600px){.recruit-subnav{top:72px}.recruit-subnav a{padding:11px 16px;font-size:.7rem}.recruit-hero{min-height:560px;background-position:58% center}.recruit-hero::before{background:linear-gradient(rgba(0,30,98,.48),rgba(0,30,98,.93))}.recruit-hero-inner{padding:120px 0 60px}.recruit-hero h1{font-size:2.55rem}.recruit-hero p{font-size:.92rem}.recruit-fact-grid>div{padding:26px 16px}.recruit-fact-grid strong{font-size:2.2rem}.recruit-section{padding:68px 0}.recruit-intro-grid{gap:30px}.recruit-path-grid>a{min-height:0}.recruit-chair{gap:35px}.recruit-cta h2{font-size:1.65rem}.recruit-photo-grid,.recruit-diversity-grid{grid-template-columns:1fr}.recruit-facility-list{columns:1}.recruit-career-options{grid-template-columns:1fr 1fr}.voice-card{display:block}.voice-card img{width:min(100%,280px);height:auto;aspect-ratio:10/13;margin:24px auto 0;object-fit:cover}.voice-card-body{padding:24px 25px 28px}.recruit-entry-table>div{grid-template-columns:1fr;gap:5px}.recruit-page-hero{padding:58px 0}.recruit-program-ratio{grid-template-columns:1fr 3fr}}

/* Unified navy page heroes */
.page-hero,
.staff-page-hero,
.recruit-page-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 84% 20%,rgba(199,162,70,.16) 0 1px,transparent 2px) 0 0/28px 28px,
    linear-gradient(115deg,#00184f 0%,#001e62 58%,#00266b 100%);
  color:#fff;
  border-bottom:0;
}
.page-hero::before,
.staff-page-hero::before,
.recruit-page-hero::before{
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  right:-105px;
  top:-215px;
  border:1px solid rgba(255,255,255,.16);
  transform:rotate(45deg);
  pointer-events:none;
}
.page-hero::after,
.staff-page-hero::after,
.recruit-page-hero::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:4px;
  background:linear-gradient(90deg,var(--red) 0 34%,#c7a246 34% 66%,var(--navy) 66%);
}
.page-hero .wrap,
.staff-page-hero .wrap,
.recruit-page-hero .wrap{
  position:relative;
  z-index:2;
}
.page-hero .breadcrumb,
.staff-page-hero .breadcrumb,
.recruit-page-hero .breadcrumb,
.page-hero .breadcrumb a,
.staff-page-hero .breadcrumb a,
.recruit-page-hero .breadcrumb a{
  color:#aebfd0;
}
.page-hero .section-kicker,
.staff-page-hero .page-eyebrow,
.recruit-page-hero> .wrap > span{
  color:#e5c771;
}
.page-hero h1,
.staff-page-hero h1,
.recruit-page-hero h1{
  color:#fff;
  text-shadow:0 2px 18px rgba(0,0,0,.18);
}
.staff-page-hero p,
.recruit-page-hero p{
  color:#d6e2eb;
}

@media(max-width:600px){
  .page-hero,
  .recruit-page-hero{padding:56px 0 50px}
}

/* About: professor message portrait */
.about-message{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
  gap:56px;
  align-items:start;
  margin-bottom:54px;
}
.about-message-copy h2{margin-top:0}
.about-message-copy p{margin-top:0;margin-bottom:1.2em}
.about-message-portrait{margin:0;position:sticky;top:118px}
.about-message-portrait img{
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center top;
  border:1px solid var(--line);
  box-shadow:0 14px 38px rgba(18,43,72,.12);
}
.about-message-portrait figcaption{
  padding-top:10px;
  text-align:right;
  color:var(--navy);
  font:700 .9rem/1.5 var(--serif);
}
@media(max-width:900px){
  .about-message{grid-template-columns:1fr;gap:30px}
  .about-message-portrait{position:static;max-width:420px}
}
@media(max-width:600px){
  .about-message{gap:22px;margin-bottom:42px}
  .about-message-portrait{max-width:none}
}

/* Kiwi Maru accent font */
.quick strong,
.feature h3,
.content h3,
.card h3,
.staff-card h3,
.recruit-path-grid h3,
.recruit-pillar h3,
.career-story h3,
.voice-card h2,
.faq-category h2 {
  font-family: var(--rounded);
  font-weight: 500;
}

/* === Hero photos for subpages === */
.about-hero,
.care-hero,
.research-hero,
.contact-hero,
.staff-hero,
.training-hero,
.voices-photo-hero,
.recruit-hero-photo{
  background-repeat:no-repeat;
  background-size:cover;
}

.about-hero{
  background:
    radial-gradient(circle at 84% 20%,rgba(199,162,70,.16) 0 1px,transparent 2px) 0 0/28px 28px,
    linear-gradient(90deg,rgba(0,30,98,.88) 0%,rgba(0,30,98,.70) 48%,rgba(0,30,98,.45) 100%),
    url('heroes/hero-about2.jpg') center 40%/cover no-repeat;
}
.care-hero{
  background:
    radial-gradient(circle at 84% 20%,rgba(199,162,70,.16) 0 1px,transparent 2px) 0 0/28px 28px,
    linear-gradient(90deg,rgba(0,30,98,.90) 0%,rgba(0,30,98,.68) 45%,rgba(0,30,98,.28) 100%),
    url('heroes/hero-care.jpg') center 40%/cover no-repeat;
}
.center-hero{
  background:
    radial-gradient(circle at 84% 20%,rgba(199,162,70,.16) 0 1px,transparent 2px) 0 0/28px 28px,
    linear-gradient(90deg,rgba(0,30,98,.86) 0%,rgba(0,30,98,.58) 43%,rgba(0,30,98,.18) 100%),
    url('heroes/hero-perinatal-center.jpg') center 48%/cover no-repeat;
}
.research-hero{
  background:
    radial-gradient(circle at 84% 20%,rgba(199,162,70,.16) 0 1px,transparent 2px) 0 0/28px 28px,
    linear-gradient(90deg,rgba(0,30,98,.92) 0%,rgba(0,30,98,.74) 44%,rgba(0,30,98,.30) 100%),
    url('heroes/hero-research2.jpg') center center/cover no-repeat;
}
.contact-hero{
  background:
    radial-gradient(circle at 84% 20%,rgba(199,162,70,.16) 0 1px,transparent 2px) 0 0/28px 28px,
    linear-gradient(90deg,rgba(0,30,98,.90) 0%,rgba(0,30,98,.72) 46%,rgba(0,30,98,.32) 100%),
    url('heroes/hero-contact.jpg') center 36%/cover no-repeat;
}
.staff-hero{
  background:
    radial-gradient(circle at 84% 20%,rgba(199,162,70,.16) 0 1px,transparent 2px) 0 0/28px 28px,
    linear-gradient(90deg,rgba(0,30,98,.90) 0%,rgba(0,30,98,.70) 48%,rgba(0,30,98,.34) 100%),
    url('heroes/hero-staff.jpg') center 30%/cover no-repeat;
}
.training-hero{
  background:
    radial-gradient(circle at 84% 20%,rgba(199,162,70,.16) 0 1px,transparent 2px) 0 0/28px 28px,
    linear-gradient(90deg,rgba(0,30,98,.92) 0%,rgba(0,30,98,.74) 46%,rgba(0,30,98,.34) 100%),
    url('heroes/hero-training.jpg') center 34%/cover no-repeat;
}
.voices-photo-hero{
  background:
    radial-gradient(circle at 84% 20%,rgba(199,162,70,.16) 0 1px,transparent 2px) 0 0/28px 28px,
    linear-gradient(90deg,rgba(0,30,98,.92) 0%,rgba(0,30,98,.74) 45%,rgba(0,30,98,.34) 100%),
    url('heroes/hero-voices.jpg') center 35%/cover no-repeat;
}
.recruit-hero-photo{
  background:
    radial-gradient(circle at 84% 20%,rgba(199,162,70,.16) 0 1px,transparent 2px) 0 0/28px 28px,
    linear-gradient(90deg,rgba(0,30,98,.92) 0%,rgba(0,30,98,.74) 48%,rgba(0,30,98,.36) 100%),
    url('heroes/hero-recruit.jpg') center 35%/cover no-repeat;
}
.education-hero{
  background:var(--navy) url('heroes/hero-education.jpg') center 42%/cover no-repeat;
}
.education-hero::before{
  background:linear-gradient(90deg,rgba(0,30,98,.92),rgba(0,30,98,.66) 52%,rgba(0,30,98,.18));
}

@media(max-width:900px){
  .about-hero,
  .care-hero,
  .research-hero,
  .contact-hero,
  .staff-hero,
  .training-hero,
  .voices-photo-hero,
  .recruit-hero-photo{
    background-position:center center;
  }
  .education-hero{background-position:58% center}
}

@media(max-width:600px){
  .about-hero,
  .care-hero,
  .research-hero,
  .contact-hero,
  .staff-hero,
  .training-hero,
  .voices-photo-hero,
  .recruit-hero-photo{
    background:
      linear-gradient(rgba(0,30,98,.70),rgba(0,30,98,.88)),
      var(--hero-mobile-image,none);
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
  }
  .about-hero{--hero-mobile-image:url('heroes/hero-about2.jpg')}
  .care-hero{--hero-mobile-image:url('heroes/hero-care.jpg')}
  .center-hero{--hero-mobile-image:url('heroes/hero-perinatal-center.jpg')}
  .research-hero{--hero-mobile-image:url('heroes/hero-research2.jpg')}
  .contact-hero{--hero-mobile-image:url('heroes/hero-contact.jpg')}
  .staff-hero{--hero-mobile-image:url('heroes/hero-staff.jpg')}
  .training-hero{--hero-mobile-image:url('heroes/hero-training.jpg')}
  .voices-photo-hero{--hero-mobile-image:url('heroes/hero-voices.jpg')}
  .recruit-hero-photo{--hero-mobile-image:url('heroes/hero-recruit.jpg')}
}
/* Shared institutional links and highlighted training CTA */
.topbar a{color:inherit;text-decoration:none}
.topbar a:hover{text-decoration:underline}
.btn.training-cta{background:var(--navy);border-color:var(--navy);color:#fff}
.btn.training-cta:hover{filter:brightness(1.08)}
/* Publications */
.publication-layout{display:grid;grid-template-columns:230px 1fr;gap:64px;padding:72px 0 100px}.publication-side{align-self:start;position:static;top:auto;background:#f7f9fb;border:1px solid var(--line);border-top:3px solid var(--navy);padding:8px 14px}.publication-content{min-width:0}.publication-intro{margin-bottom:30px}.publication-intro h2{font:700 clamp(1.8rem,3vw,2.45rem)/1.45 var(--serif);color:var(--navy);margin:12px 0 14px}.publication-intro p{max-width:820px;color:var(--muted);margin:0}.publication-summary{display:grid;grid-template-columns:1.35fr repeat(5,minmax(88px,1fr));margin:34px 0;border:1px solid var(--line);background:#fff}.publication-summary>div{padding:22px 24px;border-right:1px solid var(--line)}.publication-summary>div:last-child{border-right:0}.publication-summary strong{display:block;color:var(--navy);font:600 1.9rem/1 Georgia,serif}.publication-summary span{display:block;margin-top:8px;color:var(--muted);font-size:.72rem;letter-spacing:.04em}.publication-filter{display:grid;grid-template-columns:repeat(4,minmax(125px,1fr)) 1.35fr auto;gap:10px;align-items:end;padding:18px;background:#f3f7fa;border:1px solid var(--line);margin-bottom:16px}.publication-filter label span{display:block;margin:0 0 6px;color:var(--navy);font-size:.7rem;font-weight:800}.publication-filter select,.publication-filter input{width:100%;height:42px;border:1px solid #b9c7d3;background:#fff;color:var(--ink);padding:0 10px;font:inherit;font-size:.8rem}.publication-filter button{height:42px;padding:0 16px;border:1px solid var(--navy);background:var(--navy);color:#fff;font:700 .78rem/1 var(--sans);cursor:pointer}.publication-result{margin:16px 0 34px;color:var(--muted);font-size:.78rem;text-align:right}.publication-result strong{color:var(--navy);font-size:1rem}.publication-year{margin-bottom:58px}.publication-year-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:6px;padding-bottom:13px;border-bottom:3px solid var(--navy)}.publication-year-head h2{margin:0;color:var(--navy);font:600 2rem/1 Georgia,serif}.publication-year-head span{color:var(--muted);font-size:.75rem}.publication-item{padding:24px 4px 25px;border-bottom:1px solid var(--line)}.publication-item h3{margin:0 0 10px;color:var(--ink);font:500 1.06rem/1.65 var(--sans)}.pub-authors{margin:0 0 5px;color:#536274;font-size:.82rem;line-height:1.65}.pub-meta{margin:0 0 10px;color:var(--navy);font-size:.8rem;font-weight:700}.pub-summary{margin:0 0 14px;padding:12px 14px;background:#f7f9fb;border-left:3px solid #c8d5e0;color:#34465a;font-size:.84rem;line-height:1.85}.pub-tags{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}.pub-tag{display:inline-flex;align-items:center;min-height:25px;padding:2px 9px;border-radius:999px;font-size:.68rem;line-height:1.3}.pub-group{color:#263445;font-weight:700;border:1px solid rgba(23,36,54,.10)}
.publication-item[data-group="代謝内分泌班"] .pub-group{background:#D8CFF0}
.publication-item[data-group="感染班"] .pub-group{background:#C9D8C5}
.publication-item[data-group="心臓班"] .pub-group{background:#F6D1B1}
.publication-item[data-group="新生児班"] .pub-group{background:#FFF6E9}
.publication-item[data-group="血液・腫瘍班"] .pub-group{background:#F8C8DC}
.publication-item[data-group="神経班"] .pub-group{background:#BFB8B2}
.publication-item[data-group="呼吸器班"] .pub-group{background:#CFE8FF}
.publication-item[data-group="免疫・アレルギー班"] .pub-group{background:#CDEEE3}
.publication-item[data-group="腎臓班"] .pub-group{background:#B8C4E3}
.publication-item[data-group="精神保健班"] .pub-group{background:#F9E79F}
.publication-item[data-group="遺伝班"] .pub-group{background:#C6A4FF}
.publication-item[data-group="急性期・集中治療班"] .pub-group{background:#6C8CFF;color:#fff;border-color:transparent}.publication-item[data-group="無所属"] .pub-group{background:#EEF1F4;color:#596675}.pub-type{border:1px solid #bdcbd7;color:#506173;background:#fff}.pub-author{border:1px solid #e6d8ab;color:#776021;background:#fffaf0}.pub-links{display:flex;gap:16px;flex-wrap:wrap;align-items:center;font-size:.76rem}.pub-pmid{color:var(--red);font-weight:800;border-bottom:1px solid currentColor}.pub-pmid::after{content:" ↗";font-size:.75em}.pub-doi{color:var(--muted)}.publication-item[hidden],.publication-year[hidden]{display:none!important}@media(max-width:1100px){.publication-filter{grid-template-columns:repeat(2,1fr)}.publication-search{grid-column:1/2}.publication-filter button{grid-column:2/3}}@media(max-width:900px){.publication-layout{grid-template-columns:1fr;gap:0;padding-top:48px}.publication-side{display:none}}@media(max-width:600px){.publication-layout{padding:36px 0 70px}.publication-summary{grid-template-columns:repeat(2,1fr)}.publication-summary>div{border-bottom:1px solid var(--line)}.publication-summary>div:nth-child(2n){border-right:0}.publication-filter{grid-template-columns:1fr}.publication-search,.publication-filter button{grid-column:auto}.publication-item{padding:21px 2px}.publication-item h3{font-size:1rem}.pub-doi{overflow-wrap:anywhere}}


/* Publication left navigation pane: static to avoid overlap while scrolling */
.publication-side.side{border-top:3px solid var(--navy)}
.publication-side a{padding:13px 8px;text-align:left}

/* Clinical/research group palette */
.group-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.group-card{min-height:82px;padding:18px 20px;display:flex;align-items:center;background:#fff;border:2px solid var(--line)}
.group-card h3{margin:0;font-size:1.05rem}
.group-card[data-group="代謝内分泌班"]{border-color:#D8CFF0;background:#F5F2FB}
.group-card[data-group="感染班"]{border-color:#C9D8C5;background:#F2F6F1}
.group-card[data-group="心臓班"]{border-color:#F6D1B1;background:#FDF6F0}
.group-card[data-group="新生児班"]{border-color:#FFF0DA;background:#FFFBF6}
.group-card[data-group="血液・腫瘍班"]{border-color:#F8C8DC;background:#FDF3F7}
.group-card[data-group="神経班"]{border-color:#BFB8B2;background:#F4F2F1}
.group-card[data-group="呼吸器班"]{border-color:#CFE8FF;background:#F2F8FE}
.group-card[data-group="免疫・アレルギー班"]{border-color:#CDEEE3;background:#F1FAF7}
.group-card[data-group="腎臓班"]{border-color:#B8C4E3;background:#F0F3F9}
.group-card[data-group="精神保健班"]{border-color:#F9E79F;background:#FFFBEF}
.group-card[data-group="遺伝班"]{border-color:#C6A4FF;background:#F5F0FF}
.group-card[data-group="急性期・集中治療班"]{border-color:#6C8CFF;background:#EEF2FF}
@media(max-width:900px){.group-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.group-cards{grid-template-columns:1fr}.group-card{min-height:68px}}


/* Approved research projects */
.approved-projects{margin-top:68px;padding-top:8px}
.approved-projects h2{margin-bottom:12px}
.approved-projects-intro{margin:0 0 24px;color:var(--muted);font-size:.9rem}
.approved-list{border-top:1px solid var(--line)}
.approved-item{display:grid;grid-template-columns:112px 1fr;gap:22px;padding:16px 4px;border-bottom:1px solid var(--line);align-items:start}
.approved-id{color:var(--navy);font:700 .82rem/1.6 Georgia,serif;letter-spacing:.03em}
.approved-title{color:#435267;font-size:.9rem;line-height:1.7}
@media(max-width:600px){.approved-item{grid-template-columns:1fr;gap:4px;padding:14px 2px}.approved-id{font-size:.78rem}}

/* Facilities */
.facility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:30px}.facility-card{padding:20px 22px;border:1px solid var(--line);background:#fff}.facility-card h3{margin:0 0 7px;color:var(--navy);font:500 1.05rem/1.5 var(--rounded)}.facility-card p{margin:0 0 8px;color:var(--muted);font-size:.82rem}.facility-card a{color:var(--red);font-size:.78rem;font-weight:700;border-bottom:1px solid currentColor}@media(max-width:700px){.facility-grid{grid-template-columns:1fr}}
/* Keep publication navigation as a true left pane on desktop */
.publication-layout.page-layout{grid-template-columns:230px minmax(0,1fr)}
.publication-layout .publication-side{display:block;position:static;align-self:start}
@media(max-width:900px){.publication-layout.page-layout{grid-template-columns:1fr}.publication-layout .publication-side{display:none}}

.facility-badge{display:inline-block;margin:-2px 0 10px;padding:3px 8px;border:1px solid rgba(0,30,98,.22);background:#f2f6fb;color:var(--navy);font-size:.68rem;font-weight:700;letter-spacing:.02em;line-height:1.4}

/* === September 2026 refinement pass === */
/* Home: compact evidence band below the three primary entry points */
.home-facts{background:#fff;border-bottom:1px solid var(--line)}
.home-facts-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.home-facts a{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:15px;align-items:center;padding:25px 30px;border-right:1px solid var(--line);transition:background .18s ease}
.home-facts a:last-child{border-right:0}.home-facts a:hover{background:#f6f9fb}
.home-facts strong{grid-row:1/3;color:var(--navy);font:600 2.15rem/1 Georgia,serif}
.home-facts span{color:var(--navy);font-family:var(--rounded);font-size:.94rem;font-weight:500;line-height:1.4}
.home-facts small{color:var(--muted);font-size:.7rem;line-height:1.5}

/* Research section: one navigation system across Research / Publications / Ethics */
.research-layout{grid-template-columns:230px minmax(0,1fr)}
.research-side{align-self:start;position:static;background:#f8fafc;border:1px solid var(--line);border-top:3px solid var(--navy);padding:8px 14px}
.research-side a{padding:13px 8px;text-align:left}
.research-side a.active{background:rgba(0,30,98,.045)}
.publication-layout,.publication-side{position:static!important;top:auto!important}

/* More compact group cards on small screens while preserving the 3 x 4 desktop grid */
.group-card{transition:transform .16s ease,box-shadow .16s ease}
.group-card:hover{transform:translateY(-2px);box-shadow:0 7px 20px rgba(18,43,72,.08)}

/* Facilities: long hospital names and addresses remain readable */
.facility-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.facility-card h3{overflow-wrap:anywhere}
.facility-card p{line-height:1.65}
.facility-card .facility-badge{order:3}
.facility-card a{order:4;margin-top:2px}

@media(max-width:900px){
  .home-facts-grid{grid-template-columns:1fr 1fr 1fr}
  .home-facts a{padding:20px 16px;column-gap:10px}
  .home-facts strong{font-size:1.8rem}
  /* Keep research navigation available instead of hiding it with the generic .side rule */
  .research-layout{display:block;padding-top:38px}
  .research-layout .research-side{display:flex;overflow-x:auto;gap:0;margin:0 0 30px;padding:0;background:#fff;border:0;border-bottom:1px solid var(--line);scrollbar-width:thin;-webkit-overflow-scrolling:touch}
  .research-layout .research-side a{flex:0 0 auto;padding:12px 18px;border:0;border-bottom:3px solid transparent;white-space:nowrap;font-size:.8rem}
  .research-layout .research-side a.active{color:var(--navy);background:transparent;border-bottom-color:var(--red)}
  .facility-grid{grid-template-columns:1fr}
}

@media(max-width:600px){
  .home-facts-grid{grid-template-columns:1fr}
  .home-facts a{grid-template-columns:58px 1fr;padding:17px 14px;border-right:0;border-bottom:1px solid var(--line)}
  .home-facts a:last-child{border-bottom:0}
  .home-facts strong{font-size:1.65rem;text-align:center}
  .home-facts span{font-size:.9rem}.home-facts small{font-size:.68rem}

  /* Hero copy stays readable even when 16:9 photos crop to a portrait viewport */
  .page-hero,.recruit-page-hero{min-height:235px;display:flex;align-items:flex-end}
  .about-hero{background-position:50% center}
  .staff-hero{background-position:50% center}
  .care-hero{background-position:58% center}
  .research-hero{background-position:52% center}
  .training-hero{background-position:50% center}
  .voices-photo-hero{background-position:55% center}
  .recruit-hero-photo{background-position:50% center}

  /* Two cards per row is substantially shorter on modern phones; fall back below 430 px */
  .group-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .group-card{min-height:72px;padding:13px 12px}
  .group-card h3{font-size:.88rem;line-height:1.45}

  /* Publication filters: compact 2-column control panel */
  .publication-filter{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:14px}
  .publication-search{grid-column:1/-1}
  .publication-filter button{grid-column:1/-1}
  .publication-filter select,.publication-filter input{font-size:.76rem;padding-left:8px;padding-right:8px}
  .publication-summary>div{padding:17px 14px}
  .publication-summary strong{font-size:1.55rem}
  .publication-year{margin-bottom:44px}
  .publication-year-head h2{font-size:1.7rem}
  .publication-result{text-align:left}

  .facility-card{padding:17px 18px}
  .facility-card h3{font-size:1rem}
  .facility-card p{font-size:.79rem}
}

@media(max-width:430px){
  .group-cards{grid-template-columns:1fr}
  .publication-filter{grid-template-columns:1fr}
  .publication-search,.publication-filter button{grid-column:auto}
}

/* === Clinical group details === */
.group-card{position:relative;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;color:inherit;text-decoration:none}
.group-card span{font-size:.68rem;color:var(--muted);font-weight:700;letter-spacing:.02em}
.group-card:hover span{color:var(--navy)}
.clinical-group-list{margin-top:58px}
.clinical-detail-heading{margin-bottom:8px!important}
.clinical-detail-intro{margin:0 0 26px;color:var(--muted)!important;font-size:.9rem}
.clinical-group-detail{scroll-margin-top:125px;border:1px solid var(--line);border-left:5px solid var(--line);background:#fff;margin:0 0 14px}
.clinical-group-detail>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;list-style:none;padding:18px 22px;color:var(--navy);font-family:var(--rounded);font-weight:500}
.clinical-group-detail>summary::-webkit-details-marker{display:none}
.clinical-group-detail>summary::after{content:"＋";flex:none;color:var(--red);font-family:var(--sans);font-weight:800}
.clinical-group-detail[open]>summary::after{content:"−"}
.clinical-group-name{font-size:1.15rem}
.clinical-summary-note{margin-left:auto;color:var(--muted);font:700 .72rem/1.4 var(--sans)}
.clinical-group-body{display:grid;grid-template-columns:240px minmax(0,1fr);gap:38px;padding:4px 24px 28px;border-top:1px solid var(--line)}
.clinical-members{padding-top:23px}
.clinical-members h4,.clinical-copy h4{margin:0 0 10px;color:var(--navy);font:600 .95rem/1.5 var(--sans)}
.clinical-members ul{margin:0;padding:0;list-style:none}
.clinical-members li{padding:6px 0;border-bottom:1px solid #edf1f4;color:#516173;font-size:.8rem;line-height:1.55}
.clinical-description{min-width:0}
.clinical-copy{padding-top:23px}
.clinical-copy+.clinical-copy{margin-top:2px;border-top:1px solid #edf1f4}
.clinical-copy p{margin:0 0 12px;color:#49586a;font-size:.9rem;line-height:1.9}
.clinical-copy ul,.clinical-copy ol{margin:0 0 14px;padding-left:1.4em;color:#49586a;font-size:.9rem;line-height:1.85}
.clinical-copy h5{margin:17px 0 4px;color:#34475a;font-size:.86rem}
.clinical-disease-list{columns:2;column-gap:30px}
.clinical-disease-list li{break-inside:avoid;margin-bottom:5px}
.clinical-group-detail[data-group="代謝内分泌班"]{border-left-color:#D8CFF0;background:#FCFBFE}
.clinical-group-detail[data-group="感染班"]{border-left-color:#C9D8C5;background:#FBFCFB}
.clinical-group-detail[data-group="心臓班"]{border-left-color:#F6D1B1;background:#FFFCFA}
.clinical-group-detail[data-group="新生児班"]{border-left-color:#FFF0DA;background:#FFFEFC}
.clinical-group-detail[data-group="血液・腫瘍班"]{border-left-color:#F8C8DC;background:#FFFBFD}
.clinical-group-detail[data-group="神経班"]{border-left-color:#BFB8B2;background:#FCFBFB}
.clinical-group-detail[data-group="呼吸器班"]{border-left-color:#CFE8FF;background:#FBFDFF}
.clinical-group-detail[data-group="免疫・アレルギー班"]{border-left-color:#CDEEE3;background:#FBFEFD}
.clinical-group-detail[data-group="腎臓班"]{border-left-color:#B8C4E3;background:#FAFBFD}
.clinical-group-detail[data-group="精神保健班"]{border-left-color:#F9E79F;background:#FFFEFA}
.clinical-group-detail[data-group="遺伝班"]{border-left-color:#C6A4FF;background:#FCFAFF}
.clinical-group-detail[data-group="急性期・集中治療班"]{border-left-color:#6C8CFF;background:#FAFBFF}
@media(max-width:900px){
  .clinical-group-body{grid-template-columns:1fr;gap:6px}
  .clinical-members{padding-top:20px}
  .clinical-members ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
  .clinical-disease-list{columns:1}
}
@media(max-width:600px){
  .clinical-group-list{margin-top:42px}
  .clinical-group-detail{scroll-margin-top:92px}
  .clinical-group-detail>summary{padding:15px 16px}
  .clinical-summary-note{display:none}
  .clinical-group-name{font-size:1rem}
  .clinical-group-body{padding:2px 16px 22px}
  .clinical-members ul{grid-template-columns:1fr}
  .clinical-copy p,.clinical-copy ul,.clinical-copy ol{font-size:.86rem}
}


/* Clinical group icons */
.group-card{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:14px;color:inherit;text-decoration:none;padding:16px 18px;min-height:96px}
.group-card-icon{width:62px;height:62px;flex:0 0 62px;display:grid;place-items:center;border-radius:16px;background:rgba(255,255,255,.72);box-shadow:0 4px 12px rgba(18,43,72,.06)}
.group-card-icon img{display:block;max-width:52px;max-height:52px;width:52px;height:52px;object-fit:contain}
.group-card-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.group-card-copy h3{margin:0;font-size:1.02rem;line-height:1.35}
.group-card-note{font-size:.68rem;color:var(--muted);font-weight:700;letter-spacing:.02em}
.group-card:hover .group-card-note{color:var(--navy)}
@media(max-width:600px){.group-card{gap:10px;min-height:74px;padding:12px}.group-card-icon{width:50px;height:50px;flex-basis:50px;border-radius:14px}.group-card-icon img{width:42px;height:42px}.group-card-copy h3{font-size:.88rem}.group-card-note{font-size:.63rem}}


/* staff group badges */
.staff-group-badge{display:inline-flex;align-items:center;gap:10px;margin:12px 0 18px;padding:10px 12px;border-radius:16px;border:1.5px solid var(--line);background:#f8fafc;color:var(--navy)}
.staff-group-badge img{display:block;width:36px;height:36px;object-fit:contain;flex:0 0 36px}
.staff-group-badge-copy{display:flex;flex-direction:column;gap:2px;line-height:1.2}
.staff-group-badge strong{font-size:.9rem;font-weight:800;color:inherit}
.staff-card-featured .staff-group-badge{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff}
.staff-card-featured .staff-group-badge[data-group="代謝内分泌班"]{border-color:#D8CFF0;background:#F5F2FB}
.staff-group-badge[data-group="感染班"]{border-color:#C9D8C5;background:#F2F6F1}
.staff-group-badge[data-group="心臓班"]{border-color:#F6D1B1;background:#FDF6F0}
.staff-group-badge[data-group="新生児班"]{border-color:#FFF0DA;background:#FFFBF6}
.staff-group-badge[data-group="血液・腫瘍班"]{border-color:#F8C8DC;background:#FDF3F7}
.staff-group-badge[data-group="神経班"]{border-color:#BFB8B2;background:#F4F2F1}
.staff-group-badge[data-group="呼吸器班"]{border-color:#CFE8FF;background:#F2F8FE}
.staff-group-badge[data-group="免疫・アレルギー班"]{border-color:#CDEEE3;background:#F1FAF7}
.staff-group-badge[data-group="腎臓班"]{border-color:#B8C4E3;background:#F0F3F9}
.staff-group-badge[data-group="精神保健班"]{border-color:#F9E79F;background:#FFFBEF}
.staff-group-badge[data-group="遺伝班"]{border-color:#C6A4FF;background:#F5F0FF}
.staff-group-badge[data-group="急性期・集中治療班"]{border-color:#6C8CFF;background:#EEF2FF}
.staff-card-featured .staff-group-badge[data-group]{color:var(--navy)}
.staff-card-featured .staff-group-badge[data-group] strong{color:var(--navy)}
.staff-card-featured .staff-group-badge[data-group] @media(max-width:600px){.staff-group-badge{padding:9px 10px;gap:8px}.staff-group-badge img{width:32px;height:32px}.staff-group-badge strong{font-size:.84rem}}


/* E-Learning page */
.elearning-page{padding:72px 0 100px;max-width:980px}
.elearning-content{max-width:860px;margin:0 auto}
.elearning-content>p{font-size:1rem;line-height:2}
.elearning-cta{margin:38px 0 54px;padding:25px 30px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px;font:700 1.08rem/1.4 var(--sans);box-shadow:0 10px 26px rgba(0,30,98,.16);transition:transform .16s ease,box-shadow .16s ease}
.elearning-cta:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(0,30,98,.22)}
.elearning-cta span:last-child{font-size:1.3rem}
.elearning-notes{padding-top:34px;border-top:1px solid var(--line)}
.elearning-notes h3{margin:0 0 24px;font-size:1.2rem}
.elearning-notes p{font-size:.88rem;line-height:1.9;color:#5a6675}
@media(max-width:600px){.elearning-page{padding:48px 0 72px}.elearning-cta{margin:30px 0 42px;padding:20px 22px}.elearning-notes p{font-size:.84rem}}


/* E-learning hero */
.elearning-hero{
  background:
    linear-gradient(90deg,rgba(0,30,98,.90) 0%,rgba(0,30,98,.64) 48%,rgba(0,30,98,.26) 100%),
    url('heroes/hero-e-learning.jpg') center 48%/cover no-repeat;
}
@media(max-width:900px){.elearning-hero{background-position:62% center}}
@media(max-width:600px){.elearning-hero{background:linear-gradient(rgba(0,30,98,.66),rgba(0,30,98,.86)),url('heroes/hero-e-learning.jpg') 68% center/cover no-repeat}}


/* Research group profiles */
.research-link-note{margin:10px 0 28px;color:var(--muted);font-size:.85rem}
.research-overview-cards{margin-bottom:52px}
.research-group-card{scroll-margin-top:120px}
.research-profiles{display:flex;flex-direction:column;gap:22px}
.research-profile{scroll-margin-top:118px;border:1px solid var(--line);border-left:6px solid var(--line);background:#fff;padding:0 28px 27px;box-shadow:0 5px 20px rgba(18,43,72,.035)}
.research-profile-head{display:flex;align-items:center;gap:16px;padding:23px 0 17px;border-bottom:1px solid rgba(129,151,170,.18)}
.research-profile-icon{width:58px;height:58px;flex:0 0 58px;display:grid;place-items:center;border-radius:16px;background:rgba(255,255,255,.8);box-shadow:0 4px 13px rgba(18,43,72,.07)}
.research-profile-icon img{display:block;width:49px;height:49px;object-fit:contain}
.research-profile-kicker{display:block;color:var(--red);font-size:.62rem;font-weight:800;letter-spacing:.12em;margin-bottom:3px}
.content .research-profile h3{margin:0;color:var(--navy);font:600 1.45rem/1.35 var(--rounded)}
.research-profile-body{padding-top:19px}
.research-profile-body p{margin:0 0 15px;color:#455568;font-size:.91rem;line-height:1.95}
.research-profile-body p:last-child{margin-bottom:0}
.research-citation{color:var(--navy);font-weight:750;text-decoration:none;border-bottom:1px solid rgba(0,30,98,.28);white-space:normal}
.research-citation:hover{color:var(--red);border-bottom-color:currentColor}
.research-publication-link{display:flex;justify-content:flex-end;margin-top:32px}
.research-publication-link a{display:inline-flex;align-items:center;padding:13px 18px;border:1px solid var(--navy);color:var(--navy);font-size:.82rem;font-weight:800}
.research-publication-link a:hover{background:var(--navy);color:#fff}
.research-profile[data-group="代謝内分泌班"]{border-left-color:#D8CFF0;background:#FCFBFE}
.research-profile[data-group="感染班"]{border-left-color:#C9D8C5;background:#FBFCFB}
.research-profile[data-group="心臓班"]{border-left-color:#F6D1B1;background:#FFFCFA}
.research-profile[data-group="新生児班"]{border-left-color:#FFF0DA;background:#FFFEFC}
.research-profile[data-group="血液・腫瘍班"]{border-left-color:#F8C8DC;background:#FFFBFD}
.research-profile[data-group="神経班"]{border-left-color:#BFB8B2;background:#FCFBFB}
.research-profile[data-group="呼吸器班"]{border-left-color:#CFE8FF;background:#FBFDFF}
.research-profile[data-group="免疫・アレルギー班"]{border-left-color:#CDEEE3;background:#FBFEFD}
.research-profile[data-group="腎臓班"]{border-left-color:#B8C4E3;background:#FAFBFD}
.research-profile[data-group="精神保健班"]{border-left-color:#F9E79F;background:#FFFEFA}
.research-profile[data-group="遺伝班"]{border-left-color:#C6A4FF;background:#FCFAFF}
.research-profile[data-group="急性期・集中治療班"]{border-left-color:#6C8CFF;background:#FAFBFF}
@media(max-width:600px){
  .research-overview-cards{margin-bottom:38px}
  .research-profile{padding:0 17px 20px}
  .research-profile-head{padding:18px 0 14px;gap:12px}
  .research-profile-icon{width:50px;height:50px;flex-basis:50px;border-radius:14px}
  .research-profile-icon img{width:42px;height:42px}
  .content .research-profile h3{font-size:1.2rem}
  .research-profile-body{padding-top:15px}
  .research-profile-body p{font-size:.86rem;line-height:1.85}
  .research-publication-link{justify-content:stretch}.research-publication-link a{width:100%;justify-content:center}
}


/* === News & Achievements === */
.section-lead{margin:12px 0 0;color:var(--muted);font-size:.9rem}
.home-achievements{background:#fff}
.achievement-highlight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.achievement-highlight-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid var(--line);box-shadow:0 8px 28px rgba(18,43,72,.07);transition:transform .18s ease,box-shadow .18s ease}
.achievement-highlight-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(18,43,72,.12)}
.achievement-highlight-image{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:center 34%;background:#edf2f6}
.achievement-highlight-card[data-person="阿部清美"] .achievement-highlight-image{object-position:center 35%}
.achievement-highlight-card[data-person="今野麻里絵"] .achievement-highlight-image{object-position:center 33%}
.achievement-highlight-card[data-person="井口智洋"] .achievement-highlight-image{object-position:center 46%}
.achievement-highlight-card[data-person="山本一希"] .achievement-highlight-image{object-position:center 16%}
.achievement-highlight-body{display:flex;flex-direction:column;flex:1;padding:20px 21px 22px}
.achievement-meta{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:11px;color:var(--muted);font-size:.69rem;font-weight:700}
.achievement-meta time{font-family:Georgia,serif;letter-spacing:.03em}
.achievement-tag{padding:2px 8px;border:1px solid rgba(204,0,0,.28);color:var(--red);background:#fffafa}
.achievement-group{color:var(--navy)}
.achievement-highlight-card h3{margin:0 0 10px;color:var(--navy);font:500 1.05rem/1.6 var(--rounded)}
.achievement-highlight-card p{margin:0 0 18px;color:#59687a;font-size:.82rem;line-height:1.75}
.achievement-highlight-card .achievement-more{margin-top:auto;color:var(--red);font-size:.78rem;font-weight:800}

.achievements-hero{background:linear-gradient(90deg,rgba(0,30,98,.88) 0%,rgba(0,30,98,.62) 46%,rgba(0,30,98,.18) 78%),url('images/hero-news.jpg') center 43%/cover no-repeat}
.achievement-hero-copy{max-width:760px;margin:17px 0 0;color:#d8e3ec;font-size:.96rem}
.achievements-page{background:linear-gradient(#fff,#f7fafc)}
.achievements-intro{max-width:850px;margin-bottom:28px}
.achievements-intro h2{font:600 clamp(1.75rem,3vw,2.45rem)/1.45 var(--serif);color:var(--navy);margin:11px 0 14px}
.achievements-intro p{margin:0;color:var(--muted)}
.achievement-year-nav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 44px;padding:0 0 18px;border-bottom:1px solid var(--line)}
.achievement-year-nav a{display:inline-flex;align-items:center;justify-content:center;min-width:76px;padding:8px 14px;border:1px solid var(--line);background:#fff;color:var(--navy);font:700 .8rem/1 var(--sans)}
.achievement-year-nav a:hover{border-color:var(--navy)}
.achievement-timeline{display:flex;flex-direction:column;gap:54px}
.achievement-year{scroll-margin-top:120px}
.achievement-year-head{display:flex;align-items:center;gap:18px;margin-bottom:20px}
.achievement-year-head h2{margin:0;color:var(--navy);font:700 2rem/1 var(--serif)}
.achievement-year-head::after{content:"";height:1px;flex:1;background:var(--line)}
.achievement-article{scroll-margin-top:120px;display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:38px;padding:28px;margin-bottom:22px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--navy);box-shadow:0 9px 30px rgba(18,43,72,.06)}
.achievement-article:last-child{margin-bottom:0}
.achievement-article-figure{margin:0}
.achievement-article-figure img{width:100%;height:auto;max-height:560px;object-fit:contain;object-position:center;background:#f5f7f9}
.achievement-article[data-person="井口智洋"] .achievement-article-figure img{object-position:center 45%}
.achievement-article-figure figcaption{padding:8px 2px 0;color:var(--muted);font-size:.69rem;line-height:1.6}
.achievement-article-copy{min-width:0}
.achievement-article-copy h3{margin:7px 0 17px;color:var(--navy);font:500 clamp(1.35rem,2.4vw,1.85rem)/1.5 var(--rounded)}
.achievement-article-copy p{margin:0 0 1em;color:#49586a;font-size:.91rem;line-height:1.95}
.achievement-article-copy p:last-child{margin-bottom:0}
.achievement-article-copy .achievement-meta{margin-bottom:5px}

@media(max-width:900px){
  .achievement-highlight-grid{grid-template-columns:1fr 1fr}
  .achievement-article{grid-template-columns:1fr;gap:24px}
  .achievement-article-figure{max-width:560px}
}
@media(max-width:600px){
  .achievement-highlight-grid{grid-template-columns:1fr}
  .home-achievements .section-head{gap:12px}
  .achievement-highlight-image{aspect-ratio:16/9}
  .achievement-year-nav{margin-bottom:34px}
  .achievement-year-head h2{font-size:1.65rem}
  .achievement-article{padding:17px;gap:18px}
  .achievement-article-copy h3{font-size:1.18rem}
  .achievement-article-copy p{font-size:.86rem;line-height:1.85}
}

@media(max-width:1200px){.publication-summary{grid-template-columns:repeat(3,1fr)}.publication-summary>div:nth-child(3n){border-right:0}}


/* Care landing: two pillars */
.care-branch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:38px 0 74px}
.care-branch-card{display:flex;flex-direction:column;min-height:100%;border:1px solid var(--line);background:#fff;box-shadow:0 12px 36px rgba(18,43,72,.08);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}
.care-branch-card:hover{transform:translateY(-3px);box-shadow:0 16px 44px rgba(18,43,72,.13)}
.care-branch-photo{height:245px;overflow:hidden}.care-branch-photo img{width:100%;height:100%;object-fit:cover}
.care-branch-iconwall{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;align-content:center;padding:27px 28px;height:245px;background:linear-gradient(135deg,#f5f8fb,#eef3f7)}
.care-branch-iconwall img{width:100%;aspect-ratio:1;object-fit:contain;border-radius:13px}
.care-branch-body{display:flex;flex-direction:column;flex:1;padding:26px 28px 28px}.care-branch-body h3{margin:7px 0 13px;font:700 1.5rem/1.45 var(--serif);color:var(--navy)}
.care-branch-body p{margin:0 0 24px;line-height:1.9}.care-branch-kicker{color:var(--red);font-size:.68rem;font-weight:800;letter-spacing:.13em}.care-branch-link{margin-top:auto;color:var(--navy);font-weight:800;font-size:.82rem}
.subspecialty-intro{scroll-margin-top:120px;margin:0 0 28px}.subspecialty-intro h2{margin-top:12px!important}.subspecialty-intro p{max-width:820px}

/* Perinatal & Pediatric Center */
.center-lead-copy{font-size:1rem!important;line-height:2!important;max-width:900px}.center-section{margin-top:72px}.center-section>h2{margin-top:12px!important}
.center-overview-media{display:grid;grid-template-columns:340px minmax(0,1fr);gap:36px;align-items:center;margin-top:32px;padding:28px;background:#f6f9fb;border:1px solid var(--line)}
.center-overview-media img{width:100%;aspect-ratio:4/3;object-fit:cover}.center-overview-media h3{margin:0 0 12px!important}.center-overview-media p{margin:0 0 12px;line-height:1.9}
.floor-concept{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:30px;padding:22px;background:#f6f9fb;border:1px solid var(--line)}
.floor-unit{position:relative;min-height:150px;padding:22px 18px;border-radius:10px;background:#fff;border:1px solid #dbe4eb;box-shadow:0 6px 18px rgba(18,43,72,.05)}
.floor-unit span{display:inline-block;margin-bottom:16px;color:var(--red);font:800 .72rem/1 var(--sans);letter-spacing:.08em}.floor-unit strong{display:block;color:var(--navy);font:700 1.06rem/1.4 var(--serif)}.floor-unit small{display:block;margin-top:8px;color:var(--muted);line-height:1.6}.floor-unit.picu{border:2px solid var(--navy);box-shadow:0 10px 28px rgba(0,30,98,.13)}.floor-unit.picu::after{content:"CENTER";position:absolute;top:13px;right:13px;color:var(--navy);font-size:.6rem;font-weight:900;letter-spacing:.12em}
.picu-hub-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:40px;align-items:center}.center-photo-card{margin:0;background:#fff;border:1px solid var(--line);box-shadow:0 10px 30px rgba(18,43,72,.08)}.center-photo-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.center-photo-card figcaption{padding:12px 15px;color:var(--muted);font-size:.72rem;line-height:1.6}
.team-section{padding:42px;background:linear-gradient(135deg,#f5f8fb,#fff);border:1px solid var(--line)}.team-profession-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:26px}.team-profession-grid>div{padding:18px;border:1px solid #dce5ec;background:#fff}.team-profession-grid strong{display:block;color:var(--navy);font-size:.92rem}.team-profession-grid span{display:block;margin-top:6px;color:var(--muted);font-size:.76rem;line-height:1.6}
.center-care-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px}.center-care-card{display:grid;grid-template-columns:190px minmax(0,1fr);border:1px solid var(--line);background:#fff;overflow:hidden}.center-care-card img{width:100%;height:100%;min-height:175px;object-fit:cover}.center-care-card>div{padding:22px}.center-care-card h3{margin:0 0 9px!important;color:var(--navy)}.center-care-card p{margin:0;font-size:.86rem;line-height:1.8}
.center-family{padding:42px;background:var(--navy);color:#fff}.center-family h2{color:#fff!important;border-left-color:#fff!important}.center-family .section-kicker{color:#fff}.center-family p{color:#e1e8f1!important;max-width:880px}.center-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.center-actions a{display:inline-flex;align-items:center;min-height:46px;padding:0 18px;font-weight:800;font-size:.8rem}.center-primary-link{background:#fff;color:var(--navy)}.center-secondary-link{border:1px solid rgba(255,255,255,.55);color:#fff}
@media(max-width:900px){.care-branch-grid{grid-template-columns:1fr}.center-overview-media,.picu-hub-grid{grid-template-columns:1fr}.center-overview-media{padding:20px}.floor-concept{grid-template-columns:repeat(2,1fr)}.team-profession-grid{grid-template-columns:repeat(2,1fr)}.center-care-card{grid-template-columns:150px 1fr}}
@media(max-width:600px){.care-branch-grid{margin-bottom:52px}.care-branch-photo,.care-branch-iconwall{height:190px}.care-branch-iconwall{grid-template-columns:repeat(4,1fr);padding:20px}.care-branch-body{padding:22px}.center-section{margin-top:54px}.floor-concept,.team-profession-grid,.center-care-grid{grid-template-columns:1fr}.team-section,.center-family{padding:28px 22px}.center-care-card{grid-template-columns:1fr}.center-care-card img{height:210px}.center-overview-media{gap:22px}.center-overview-media img{aspect-ratio:16/10}}

/* Care continuum: photo-forward full-width layout */
.care-continuum-section{margin-top:72px}
.care-continuum-lead{max-width:900px;margin:0 0 30px;line-height:1.9}
.care-continuum-list{display:grid;gap:28px}
.care-continuum-card{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.8fr);min-height:330px;border:1px solid var(--line);background:#fff;overflow:hidden;box-shadow:0 12px 34px rgba(18,43,72,.07)}
.care-continuum-card.care-continuum-reverse{grid-template-columns:minmax(280px,.8fr) minmax(0,1.55fr)}
.care-continuum-reverse .care-continuum-media{order:2}
.care-continuum-reverse .care-continuum-copy{order:1}
.care-continuum-media{display:grid;min-height:330px;background:#eef3f8;overflow:hidden}
.care-media-two{grid-template-columns:1fr 1fr;gap:3px}
.care-media-triptych{grid-template-columns:1.45fr .8fr;grid-template-rows:1fr 1fr;gap:3px}
.care-media-triptych .care-media-main{grid-row:1 / span 2}
.care-continuum-media img{display:block;width:100%;height:100%;min-height:0;object-fit:cover}
.care-continuum-copy{display:flex;flex-direction:column;justify-content:center;padding:34px 34px 36px}
.care-continuum-label{font-size:.72rem;letter-spacing:.13em;font-weight:700;color:var(--red);margin-bottom:8px}
.care-continuum-copy h3{font-size:1.42rem;margin:0 0 13px!important;color:var(--navy)}
.care-continuum-copy p{margin:0;font-size:.93rem;line-height:1.9}
@media(max-width:900px){
  .care-continuum-card,.care-continuum-card.care-continuum-reverse{grid-template-columns:1fr}
  .care-continuum-reverse .care-continuum-media,.care-continuum-reverse .care-continuum-copy{order:initial}
  .care-continuum-media{min-height:300px}
}
@media(max-width:600px){
  .care-continuum-list{gap:22px}
  .care-continuum-media{min-height:235px}
  .care-continuum-copy{padding:24px 22px 26px}
  .care-continuum-copy h3{font-size:1.25rem}
  .care-continuum-copy p{font-size:.9rem}
}

/* Contact action cards */
.contact-link-card{display:block;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.contact-link-card:hover{transform:translateY(-2px);border-color:#9eb2c4;box-shadow:0 10px 28px rgba(18,43,72,.10)}
.contact-link-card h3::after{content:' ↗';font:700 .75em/1 var(--sans);color:var(--red)}


/* Rich site directory footer */
.footer-directory{padding:54px 0 26px;background-color:var(--deep);background-image:linear-gradient(90deg,rgba(5,20,39,.80) 0%,rgba(5,20,39,.66) 36%,rgba(0,30,98,.48) 72%,rgba(0,30,98,.56) 100%),linear-gradient(180deg,rgba(7,29,73,.16) 0%,rgba(5,20,39,.35) 100%),url('images/footer-keio-dusk.jpg');background-position:center center,center center,center 58%;background-size:auto,auto,cover;background-repeat:no-repeat;color:#e8eef5}
.footer-identity{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;padding-bottom:34px;border-bottom:1px solid rgba(255,255,255,.16)}
.footer-dept{font:700 1.35rem/1.4 var(--serif);color:#fff;letter-spacing:.02em}
.footer-en{margin-top:5px;color:#9eb0c3;font-size:.74rem;letter-spacing:.07em;text-transform:uppercase}
.footer-identity address{max-width:420px;text-align:right;line-height:1.8;color:#bdcad7}
.footer-directory-grid{display:grid;grid-template-columns:.9fr 1fr 1.55fr 1fr;margin-top:34px;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.footer-directory-col{padding:26px 30px 28px;border-right:1px solid rgba(255,255,255,.16)}
.footer-directory-col:first-child{padding-left:0}
.footer-directory-col:last-child{padding-right:0;border-right:0}
.footer-directory h4{margin:0 0 15px;color:#fff;font:700 1rem/1.45 var(--sans);letter-spacing:.02em}
.footer-directory a{position:relative;display:block;margin:0;padding:6px 0 6px 14px;color:#c6d2de;font-size:.82rem;line-height:1.5;transition:color .18s ease,transform .18s ease}
.footer-directory a::before{content:'–';position:absolute;left:0;color:#7089a4}
.footer-directory a:hover{color:#fff;transform:translateX(2px)}
.footer-mini-heading{margin:19px 0 5px;color:#fff;font-weight:700;font-size:.92rem}
.footer-residency-links a{font-size:.8rem;padding-top:4px;padding-bottom:4px}
.footer-directory .copyright{border-top:0;margin-top:25px;padding-top:0;color:#7f93a8;font-size:.7rem}

@media(max-width:900px){
  .footer-identity{align-items:flex-start;flex-direction:column;gap:14px}
  .footer-identity address{text-align:left}
  .footer-directory-grid{grid-template-columns:1fr 1fr}
  .footer-directory-col{padding:24px 26px;border-bottom:1px solid rgba(255,255,255,.14)}
  .footer-directory-col:nth-child(2){border-right:0}
  .footer-directory-col:nth-child(3){padding-left:0}
  .footer-directory-col:nth-child(3),.footer-directory-col:nth-child(4){border-bottom:0}
}
@media(max-width:600px){
  .footer-directory{padding-top:42px}
  .footer-directory-grid{grid-template-columns:1fr;border-top:0}
  .footer-directory-col,.footer-directory-col:first-child,.footer-directory-col:nth-child(3),.footer-directory-col:last-child{padding:22px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}
  .footer-directory-col:last-child{border-bottom:0}
  .footer-dept{font-size:1.12rem}
  .footer-identity address{font-size:.78rem}
}


/* === 2026-09-21 UI refinements === */
/* PubMed citations in About: visibly clickable without overpowering the prose */
.about-message ~ h3 + p .pubmed-link,
.content .pubmed-link{
  color:var(--navy);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  text-decoration-color:rgba(0,30,98,.45);
  white-space:normal;
}
.about-message ~ h3 + p .pubmed-link::after,
.content .pubmed-link::after{
  content:"↗";
  display:inline-block;
  margin-left:.18em;
  color:#C63527;
  font-size:.78em;
  font-weight:700;
  text-decoration:none;
  transform:translateY(-.12em);
}
.about-message ~ h3 + p .pubmed-link:hover,
.content .pubmed-link:hover{
  color:#C63527;
  text-decoration-color:#C63527;
}

/* A restrained Keio-red vertical accent in the blue header/footer fields */
.topbar .wrap{position:relative;padding-left:14px}
.topbar .wrap::before{
  content:"";
  position:absolute;
  left:0;
  top:9px;
  bottom:9px;
  width:3px;
  border-radius:3px;
  background:#C63527;
}
.footer-identity>div:first-child{position:relative;padding-left:17px}
.footer-identity>div:first-child::before{
  content:"";
  position:absolute;
  left:0;
  top:3px;
  bottom:3px;
  width:3px;
  border-radius:3px;
  background:#C63527;
}

/* Recruit: official training-center CTA */
.entry-summary .btn.primary{color:#fff !important}

/* Recruit FAQ: two balanced columns on desktop */
.faq-layout{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:38px 46px;
  align-items:start;
}
.faq-layout>.faq-category{
  min-width:0;
  margin-bottom:0;
}
@media(max-width:900px){
  .faq-layout{grid-template-columns:1fr;gap:34px}
}
@media(max-width:600px){
  .topbar .wrap{padding-left:0}
  .topbar .wrap::before{display:none}
}

/* === Training page refinement 2026-09-21 === */
.training-prose-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:0 0 34px}.training-prose-grid>div,.nexus-grid article,.training-support-grid>div{padding:28px 30px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 26px rgba(18,43,72,.05)}.training-prose-grid h3,.nexus-grid h3,.training-support-grid h3,.training-research-expanded h3{margin:0 0 12px;color:var(--navy);font:700 1.2rem/1.55 var(--serif)}.training-prose-grid p,.nexus-grid p,.training-support-grid p,.training-long-copy,.training-career-copy p,.training-research-expanded p,.training-final-message p{color:#516174;line-height:1.95}.recruit-program-ratio{grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.recruit-program-ratio div{padding:24px 26px}.recruit-program-ratio div:first-child{background:var(--navy)}.recruit-program-ratio div:last-child{background:#173d6d}.recruit-program-ratio strong{display:block;color:#fff;font:700 1.25rem/1.4 var(--serif)}.recruit-program-ratio span{display:block;margin-top:6px;color:#dbe6ef;font-size:.82rem;line-height:1.65}.recruit-program-figure{display:block;width:100%;height:auto;margin:34px auto 0;border:1px solid var(--line)}.nexus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 36px}.nexus-grid article>span{display:inline-block;margin-bottom:16px;color:var(--red);font:700 1.8rem/1 Georgia,serif}.training-long-copy{max-width:960px;margin:0 0 30px}.training-figure-70{display:block;width:70%;height:auto;margin:34px auto 0;object-fit:contain}.training-caption{text-align:center;margin:10px auto 0;color:var(--muted);font-size:.76rem;line-height:1.65}.training-diversity-compact{gap:28px;align-items:start}.training-diversity-compact figure{margin:0;text-align:center}.training-diversity-compact img{display:block;width:92%;aspect-ratio:16/9;height:auto;margin:0 auto;object-fit:contain;background:#fff}.training-diversity-compact figcaption{margin-top:10px;color:var(--muted);font-size:.78rem}.training-support-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.training-research-expanded{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:28px;align-items:stretch}.training-research-note{padding:30px;background:var(--navy);color:#fff;display:flex;flex-direction:column;justify-content:center}.training-research-note strong{font:700 1.35rem/1.4 var(--serif);color:#fff}.training-research-note p{color:#dbe5ef!important;margin:14px 0 0}.training-career-options{margin-top:28px}.training-career-options span{padding:16px 14px;background:#eef5f8;color:var(--navy);text-align:center;font:700 .88rem/1.4 var(--serif)}.training-career-copy{max-width:980px;margin:30px auto 0}.training-final-message{max-width:920px}.training-final-phrase{margin-top:24px!important;color:var(--navy)!important;font:700 1.35rem/1.7 var(--serif)}@media(max-width:900px){.training-prose-grid,.nexus-grid,.training-support-grid,.training-research-expanded{grid-template-columns:1fr}.training-figure-70{width:88%}.training-diversity-compact img{width:96%}}@media(max-width:600px){.training-prose-grid>div,.nexus-grid article,.training-support-grid>div{padding:22px}.training-figure-70,.training-diversity-compact img{width:100%}.recruit-program-ratio{grid-template-columns:1fr}.training-career-options{grid-template-columns:1fr 1fr}.training-final-phrase{font-size:1.15rem}}
.training-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:38px 0}.training-photo-grid figure{margin:0}.training-photo-grid img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.training-photo-grid figcaption{padding-top:10px;color:var(--muted);font-size:.75rem;line-height:1.6}.training-diversity-compact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.training-career-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}@media(max-width:600px){.training-photo-grid,.training-diversity-compact{grid-template-columns:1fr}.training-career-options{grid-template-columns:1fr 1fr}}

/* Publication history + SemanticCite citation badges */
.publication-summary-history>div:first-child,.publication-summary-history>div:last-child{background:#f7f9fb}
.citation-key{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 18px;padding:14px 16px;border:1px solid var(--line);background:#fff}
.citation-key-copy{display:flex;flex-direction:column;gap:3px}.citation-key-copy strong{color:var(--navy);font-size:.78rem}.citation-key-copy span{color:var(--muted);font-size:.7rem}
.citation-key-scale{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.publication-era{margin-top:42px}.publication-era+.publication-era{margin-top:86px;padding-top:58px;border-top:1px solid var(--line)}
.publication-era-head{margin:0 0 34px;padding:22px 24px;border-left:4px solid var(--navy);background:linear-gradient(90deg,#f2f6fa 0%,#fff 86%)}
.publication-era-historical .publication-era-head{border-left-color:#C63527;background:linear-gradient(90deg,#fbf3f1 0%,#fff 86%)}
.publication-era-head h2{margin:7px 0 7px;color:var(--navy);font:700 clamp(1.55rem,2.4vw,2rem)/1.45 var(--serif)}.publication-era-head p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.75}
.publication-year-head h3{margin:0;color:var(--navy);font:600 2rem/1 Georgia,serif}
.pub-group{gap:5px}.pub-group-icon{width:18px;height:18px;object-fit:contain;display:block;flex:0 0 18px}
.pub-citation{display:inline-flex;align-items:center;gap:5px;min-height:25px;padding:2px 9px;border-radius:999px;border:1px solid #cfd7df;background:#f4f6f8;color:#586675;font-size:.67rem;line-height:1.25;white-space:nowrap}
.pub-citation strong{font-size:.72rem}.pub-citation small{font-size:.60rem;opacity:.78}.pub-citation-label{font-weight:700}
.pub-citation.citation-30{background:#E8F3F8;border-color:#9FC5D7;color:#2B6178}.pub-citation.citation-100{background:#DFE7F8;border-color:#8DA6D8;color:#173E7A}
.pub-citation.citation-300{background:#F8E2DD;border-color:#D88779;color:#8E2D22}.pub-citation.citation-1000{background:#C63527;border-color:#C63527;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}
.publication-item[data-group="その他"] .pub-group,.publication-item[data-group="無所属"] .pub-group{background:#EEF1F4;color:#596675}
@media(max-width:800px){.citation-key{align-items:flex-start;flex-direction:column}.citation-key-scale{justify-content:flex-start}.publication-era+.publication-era{margin-top:58px;padding-top:42px}.publication-era-head{padding:18px}}



/* NEWS hero image mobile refinement */
@media(max-width:600px){.achievements-hero{background:linear-gradient(rgba(0,30,98,.70),rgba(0,30,98,.88)),url('images/hero-news.jpg') 54% center/cover no-repeat}}


/* 100th anniversary content enrichment */
.facility-grid{grid-template-columns:1fr;gap:18px}
.facility-card{padding:24px 28px}
.facility-card h3{font-size:1.18rem;margin-bottom:8px}
.facility-card>p:first-of-type{margin-bottom:8px}
.facility-summary{order:3;width:100%;margin:14px 0 8px;padding:15px 17px;background:#f7f9fb;border-left:3px solid var(--navy)}
.facility-summary h4{margin:0 0 7px;color:var(--navy);font:600 .9rem/1.5 var(--sans)}
.facility-summary p{margin:0;color:#455568;font-size:.88rem;line-height:1.85}
.facility-responsible{order:4!important;width:100%;margin:4px 0 10px!important;color:#647184!important;font-size:.78rem!important;line-height:1.65!important}
.facility-responsible strong{color:#34475a}
.facility-card .facility-badge{order:2;margin:2px 0 3px}
.facility-card a{order:5;margin-top:2px}
.facility-source-note{margin-top:-4px!important;padding:11px 14px;background:#fff8ea;border:1px solid #f1dfb7;color:#6a5a39!important;font-size:.78rem!important;line-height:1.7!important}
.clinical-history{background:#f8fafc;margin:13px -2px 0;padding:18px 18px 7px!important;border-left:3px solid #bdc9d5;border-top:0!important}
.clinical-history h4{color:#526a80}
.research-history-block{margin:0 0 20px;padding:17px 19px;background:rgba(243,247,250,.82);border-left:3px solid #aebdca}
.research-history-block h4{margin:0 0 8px;color:var(--navy);font:600 .92rem/1.5 var(--sans)}
.research-profile-body .research-history-block p{margin:0;color:#566779;font-size:.88rem;line-height:1.9}
@media(max-width:700px){.facility-card{padding:19px 18px}.facility-summary{padding:13px 14px}.clinical-history{margin-left:0;margin-right:0}}


/* 2026-09-22 anniversary image + facility profile update */
.facility-grid{display:grid;grid-template-columns:1fr;gap:22px;margin-top:30px}
.facility-card{display:grid;grid-template-columns:300px minmax(0,1fr);gap:0;padding:0;border:1px solid var(--line);background:#fff;overflow:hidden;box-shadow:0 8px 24px rgba(18,43,72,.05)}
.facility-card-media{min-height:220px;background:#edf2f6;overflow:hidden}
.facility-card-media img{display:block;width:100%;height:100%;min-height:220px;object-fit:cover}
.facility-card-content{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:24px 28px}
.facility-card-content h3{margin:0 0 6px;color:var(--navy);font:600 1.18rem/1.5 var(--rounded)}
.facility-address{margin:0 0 9px!important;color:var(--muted)!important;font-size:.78rem!important}
.facility-card-content .facility-badge{order:initial;margin:0 0 3px}
.facility-card-content .facility-summary{order:initial;width:100%;margin:14px 0 9px;padding:14px 17px;background:#f7f9fb;border-left:3px solid var(--navy)}
.facility-card-content .facility-responsible{order:initial!important;width:100%;margin:4px 0 12px!important;color:#596b7e!important;font-size:.8rem!important;line-height:1.75!important}
.facility-card-content>a{order:initial;margin-top:auto;color:var(--red);font-size:.78rem;font-weight:700;border-bottom:1px solid currentColor}
.anniversary-group-photo{float:right;width:min(42%,360px);margin:0 0 22px 26px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 24px rgba(18,43,72,.06)}
.anniversary-group-photo img{display:block;width:100%;height:auto;max-height:290px;object-fit:cover}
.anniversary-group-photo figcaption{padding:7px 10px;color:var(--muted);font-size:.68rem;line-height:1.5;text-align:right}
.research-anniversary-photo{width:min(38%,340px)}
.clinical-description::after,.research-profile-body::after{content:"";display:block;clear:both}
@media(max-width:850px){.facility-card{grid-template-columns:230px minmax(0,1fr)}.facility-card-media,.facility-card-media img{min-height:210px}.anniversary-group-photo,.research-anniversary-photo{float:none;width:100%;max-width:520px;margin:0 auto 20px}}
@media(max-width:620px){.facility-card{grid-template-columns:1fr}.facility-card-media,.facility-card-media img{min-height:0;aspect-ratio:16/9}.facility-card-content{padding:20px 18px}.facility-card-content h3{font-size:1.08rem}}


/* facility metadata block */
.facility-meta-list{width:100%;margin:2px 0 6px;padding:11px 14px;border:1px solid #e5eaf0;background:#fff}
.facility-meta{margin:0 0 4px!important;color:#516274!important;font-size:.8rem!important;line-height:1.75!important}
.facility-meta:last-child{margin-bottom:0!important}
.facility-meta strong{color:#34475a}


/* About page inline education photo */
.about-section-photo{margin:34px 0 26px}
.about-section-photo img{display:block;width:100%;border:1px solid var(--line);box-shadow:0 14px 38px rgba(18,43,72,.10)}
@media(max-width:600px){.about-section-photo{margin:26px 0 18px}}


/* Perinatal center interviews */
.team-interviews{display:grid;gap:28px;margin-top:34px}
.team-interview-profile{background:#fff;border:1px solid #dce5ec;box-shadow:0 8px 24px rgba(18,43,72,.04)}
.team-interview-head{padding:23px 26px 20px;border-bottom:1px solid #e7edf2;background:linear-gradient(135deg,#fbfcfe,#f5f8fb)}
.team-interview-role{display:block;margin-bottom:5px;color:var(--red);font-size:.74rem;font-weight:700;letter-spacing:.05em}
.team-interview-head h3{margin:0;color:var(--navy);font-size:1.3rem;line-height:1.5}
.team-interview-body{padding:25px 28px 29px}
.team-interview-body h4{margin:27px 0 10px;padding-left:13px;border-left:3px solid var(--navy);color:var(--navy);font:600 1rem/1.65 var(--rounded)}
.team-interview-body h4:first-child{margin-top:0}
.team-interview-body p{margin:0 0 1.15em;color:#425366;font-size:.9rem;line-height:1.95}
.team-interview-body p:last-child{margin-bottom:0}
@media(max-width:600px){.team-interview-head{padding:20px 20px 17px}.team-interview-body{padding:21px 20px 24px}.team-interview-head h3{font-size:1.16rem}.team-interview-body p{font-size:.86rem;line-height:1.9}}


/* About professor profile */
.professor-profile{margin:58px 0 66px;padding:36px 40px 34px;background:#f7f9fb;border-top:3px solid var(--navy);border-bottom:1px solid var(--line)}
.professor-profile>h2{margin:0 0 8px}
.professor-profile-lead{margin:0 0 26px!important;color:var(--navy)!important;font:700 1.02rem/1.7 var(--serif)!important}
.professor-profile-summary{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:30px}
.professor-profile-box{padding:20px 22px;background:#fff;border:1px solid var(--line)}
.professor-profile-box h3,.professor-profile-detail h3{margin:0 0 10px;color:var(--navy);font-size:.98rem}
.professor-profile-box p{margin:0!important;color:#46586b!important;font-size:.84rem!important;line-height:1.85!important}
.professor-profile-box span{color:#687789;font-size:.78rem}
.professor-profile>h3{margin:30px 0 12px}
.professor-timeline{display:grid;grid-template-columns:92px minmax(0,1fr);margin:0;padding:0;background:#fff;border:1px solid var(--line)}
.professor-timeline dt,.professor-timeline dd{margin:0;padding:9px 14px;border-bottom:1px solid #e9edf1;font-size:.83rem;line-height:1.65}
.professor-timeline dt{color:var(--navy);font-weight:700;background:#fbfcfd}
.professor-timeline dd{color:#485a6c}
.professor-timeline dt:nth-last-of-type(1),.professor-timeline dd:last-child{border-bottom:0}
.professor-profile-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px}
.professor-profile-detail ul{margin:0;padding-left:1.15em}
.professor-profile-detail li{margin:0 0 7px;color:#4e6072;font-size:.82rem;line-height:1.65}
.professor-profile-link{margin:26px 0 0!important;text-align:right}
.professor-profile-link a{color:var(--red);font-size:.82rem;font-weight:700;border-bottom:1px solid currentColor}
@media(max-width:760px){.professor-profile{padding:28px 22px 26px}.professor-profile-summary,.professor-profile-detail-grid{grid-template-columns:1fr}.professor-timeline{grid-template-columns:78px minmax(0,1fr)}.professor-profile-detail-grid{gap:22px}}


/* Footer department logo */
.footer-dept-brand{display:flex;align-items:center;gap:16px;position:relative;padding-left:17px}
.footer-dept-brand::before{content:'';position:absolute;left:0;top:4px;bottom:4px;width:3px;background:var(--red);border-radius:2px}
.footer-dept-logo{width:62px;height:auto;display:block;flex:0 0 auto}
.footer-dept-copy{min-width:0}
@media(max-width:600px){.footer-dept-brand{gap:12px}.footer-dept-logo{width:52px}}


/* Affiliated facility network map */
.facility-network-section{margin:38px 0 52px;padding:28px 30px 24px;background:#f8fafc;border:1px solid #dfe6ed}
.facility-network-section h3{margin:0 0 12px;color:var(--navy);font:600 1.3rem/1.5 var(--rounded)}
.facility-network-section>p{margin:0 0 22px;color:#526477;line-height:1.9}
.facility-network-map{margin:0}
.facility-network-map img{display:block;width:100%;height:auto;background:#fff;border:1px solid #e0e6ec}
.facility-network-map figcaption{margin-top:12px;color:#718094;font-size:.73rem;line-height:1.75}
@media(max-width:700px){.facility-network-section{margin:28px 0 40px;padding:20px 16px 18px}.facility-network-section h3{font-size:1.15rem}.facility-network-map{overflow-x:auto}.facility-network-map img{min-width:860px}}

/* Larger affiliated-hospital map on training page */
#facility-map{width:88%;max-width:1180px}
@media(max-width:900px){#facility-map{width:96%}}
@media(max-width:600px){#facility-map{width:100%}}


/* === 2026-09-26 Hero card unification (all pages) === */
.hero-card{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:#edf4f8 !important;
  width:min(calc(100% - 32px),1480px);
  margin:16px auto 0;
  border-radius:34px;
  box-shadow:0 18px 52px rgba(12,40,68,.14);
}
.hero-card::before{
  content:"" !important;
  position:absolute;
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  left:0 !important;
  width:auto !important;
  height:auto !important;
  border:0 !important;
  z-index:0;
  background:var(--hero-image) var(--hero-position,center center)/cover no-repeat !important;
  filter:saturate(1.03) brightness(1.03);
  transform:scale(1.01) !important;
}
.hero-card::after{content:none !important;}
.hero-card>.wrap,
.hero-card>.hero-inner,
.hero-card .hero-inner,
.hero-card .recruit-hero-inner{
  position:relative;
  z-index:4;
}
.hero-card .hero-edge-blur{
  position:absolute;
  inset:-16px;
  z-index:1;
  pointer-events:none;
  background:var(--hero-image) var(--hero-position,center center)/cover no-repeat;
  filter:blur(10px) saturate(1.02) brightness(1.04);
  transform:scale(1.03);
  opacity:.92;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 8%,transparent 16%,transparent 84%,#000 92%,#000 100%);
  mask-image:linear-gradient(to bottom,#000 0%,#000 8%,transparent 16%,transparent 84%,#000 92%,#000 100%);
}
.hero-card .hero-accent{
  position:absolute;
  left:0;right:0;bottom:0;
  height:8px;
  z-index:3;
  background:linear-gradient(90deg,var(--red) 0 34%,#c7a246 34% 66%,var(--navy) 66%);
}
.hero-card .breadcrumb,
.hero-card .breadcrumb a{
  color:rgba(255,255,255,.92) !important;
  text-shadow:0 2px 8px rgba(0,0,0,.32);
}
.hero-card .breadcrumb{
  display:inline-block;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(4,26,61,.16);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}
.hero-card .section-kicker,
.hero-card .page-eyebrow,
.hero-card .recruit-kicker,
.hero-card> .wrap > span{
  color:#f6d98b !important;
  text-shadow:0 2px 8px rgba(0,0,0,.28);
}
.hero-card h1,
.hero-card p,
.hero-card .achievement-hero-copy,
.hero-card .eyebrow{
  color:#fff !important;
}
.hero-card .eyebrow{ text-shadow:0 2px 8px rgba(0,0,0,.28); }
.hero-card h1{
  text-shadow:0 3px 14px rgba(0,0,0,.34) !important;
}
.hero-card p,
.hero-card .achievement-hero-copy{
  text-shadow:0 2px 10px rgba(0,0,0,.30);
}
.hero-card .btn{
  box-shadow:0 6px 18px rgba(0,0,0,.10);
}
.hero-card.hero{ --hero-image:url('images/hero-index-bright.jpg'); --hero-position:center center; }
.hero-card.about-hero{ --hero-image:url('heroes/hero-about2.jpg'); --hero-position:center 40%; }
.hero-card.care-hero{ --hero-image:url('heroes/hero-care.jpg'); --hero-position:center 40%; }
.hero-card.center-hero{ --hero-image:url('heroes/hero-perinatal-center.jpg'); --hero-position:center 48%; }
.hero-card.research-hero{ --hero-image:url('heroes/hero-research2.jpg'); --hero-position:center center; }
.hero-card.contact-hero{ --hero-image:url('heroes/hero-contact.jpg'); --hero-position:center 36%; }
.hero-card.staff-hero{ --hero-image:url('heroes/hero-staff.jpg'); --hero-position:center 30%; }
.hero-card.training-hero{ --hero-image:url('heroes/hero-training.jpg'); --hero-position:center 34%; }
.hero-card.voices-photo-hero{ --hero-image:url('heroes/hero-voices.jpg'); --hero-position:center 35%; }
.hero-card.recruit-hero-photo{ --hero-image:url('heroes/hero-recruit.jpg'); --hero-position:center 35%; }
.hero-card.education-hero{ --hero-image:url('heroes/hero-education.jpg'); --hero-position:center 42%; }
.hero-card.elearning-hero{ --hero-image:url('heroes/hero-e-learning.jpg'); --hero-position:center 48%; }
.hero-card.achievements-hero{ --hero-image:url('images/hero-news.jpg'); --hero-position:center 43%; }

@media(max-width:900px){
  .hero-card{width:min(calc(100% - 24px),1480px);margin-top:12px;border-radius:28px}
  .hero-card .hero-edge-blur{inset:-12px;filter:blur(8px) saturate(1.02) brightness(1.04);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 9%,transparent 18%,transparent 82%,#000 91%,#000 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 9%,transparent 18%,transparent 82%,#000 91%,#000 100%)}
}
@media(max-width:600px){
  .hero-card{width:calc(100% - 16px);margin-top:8px;border-radius:22px}
  .hero-card .hero-edge-blur{inset:-10px;filter:blur(6px) saturate(1.02) brightness(1.03);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 11%,transparent 20%,transparent 80%,#000 89%,#000 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 11%,transparent 20%,transparent 80%,#000 89%,#000 100%)}
  .hero-card .breadcrumb{padding:6px 10px;font-size:.72rem}
}

.hero-card.page-hero{padding:70px 0 62px;min-height:300px;}
.hero-card.staff-page-hero,.hero-card.recruit-page-hero{padding:82px 0;min-height:320px;}
.hero-card.recruit-hero{min-height:620px;display:grid;align-items:end;}
.hero-card .wrap{position:relative;z-index:4;}
@media(max-width:600px){.hero-card.page-hero{padding:58px 0;min-height:240px}.hero-card.staff-page-hero,.hero-card.recruit-page-hero{padding:58px 0;min-height:250px}.hero-card.recruit-hero{min-height:530px}}


/* 2026-09-26 index hero readability: A plan (shadow only) */
.hero-card.hero .eyebrow{
  text-shadow:0 2px 6px rgba(0,20,55,.65),0 0 14px rgba(0,20,55,.28) !important;
}
.hero-card.hero h1{
  text-shadow:0 3px 8px rgba(0,18,50,.68),0 7px 22px rgba(0,18,50,.34) !important;
}
.hero-card.hero p{
  text-shadow:0 2px 6px rgba(0,18,50,.72),0 4px 16px rgba(0,18,50,.28) !important;
}

/* 2026-09-26 rotating top hero — robust IMG implementation */
.hero-card.hero-rotating{
  background:#dfeaf1 url('images/hero-index-bright.jpg') center/cover no-repeat !important;
}
.hero-card.hero-rotating::before{display:none !important}
.hero-rotating .hero-slideshow{
  position:absolute;inset:0;z-index:0;overflow:hidden;border-radius:inherit;pointer-events:none;
}
.hero-rotating .hero-slide{
  position:absolute;inset:0;opacity:0;transition:opacity 1.0s ease-in-out;will-change:opacity;
}
.hero-rotating .hero-slide.is-active{opacity:1}
.hero-rotating .hero-slide-main,
.hero-rotating .hero-slide-blur{
  position:absolute;display:block;width:100%;height:100%;max-width:none;object-fit:cover;
}
.hero-rotating .hero-slide-main{
  inset:0;z-index:0;filter:saturate(1.03) brightness(1.03);transform:scale(1.01);
}
.hero-rotating .hero-slide-blur{
  inset:-16px;width:calc(100% + 32px);height:calc(100% + 32px);z-index:1;
  filter:blur(10px) saturate(1.02) brightness(1.04);transform:scale(1.03);opacity:.92;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 8%,transparent 16%,transparent 84%,#000 92%,#000 100%);
  mask-image:linear-gradient(to bottom,#000 0%,#000 8%,transparent 16%,transparent 84%,#000 92%,#000 100%);
}
.hero-rotating>.hero-edge-blur{display:none !important}
.hero-card.hero-rotating .hero-inner{z-index:4}
.hero-card.hero-rotating .eyebrow{
  text-shadow:0 1px 2px rgba(0,0,0,.98),0 2px 6px rgba(0,0,0,.90),0 0 15px rgba(0,0,0,.78),0 0 30px rgba(0,0,0,.52) !important;
}
.hero-card.hero-rotating h1{
  text-shadow:0 1px 2px rgba(0,0,0,1),0 3px 7px rgba(0,0,0,.94),0 7px 18px rgba(0,0,0,.76),0 0 34px rgba(0,0,0,.60) !important;
}
.hero-card.hero-rotating p{
  text-shadow:0 1px 2px rgba(0,0,0,1),0 2px 6px rgba(0,0,0,.92),0 5px 15px rgba(0,0,0,.72),0 0 28px rgba(0,0,0,.56) !important;
}
@media(max-width:900px){
  .hero-rotating .hero-slide-blur{inset:-12px;width:calc(100% + 24px);height:calc(100% + 24px);filter:blur(8px) saturate(1.02) brightness(1.04);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 9%,transparent 18%,transparent 82%,#000 91%,#000 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 9%,transparent 18%,transparent 82%,#000 91%,#000 100%)}
}
@media(max-width:600px){
  .hero-rotating .hero-slide-blur{inset:-10px;width:calc(100% + 20px);height:calc(100% + 20px);filter:blur(6px) saturate(1.02) brightness(1.03);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 11%,transparent 20%,transparent 80%,#000 89%,#000 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 11%,transparent 20%,transparent 80%,#000 89%,#000 100%)}
}
@media(prefers-reduced-motion:reduce){.hero-rotating .hero-slide{transition:none}}


/* 2026-09-26 rotating hero copy layout: CTAs above, headline at bottom */
.hero-card.hero-rotating .hero-inner{
  min-height:620px;
  padding:58px 0 54px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.hero-card.hero-rotating .hero-top-actions{
  margin-top:24px;
}
.hero-card.hero-rotating .hero-top-actions .btn{
  background:rgba(255,255,255,.94);
  color:var(--navy);
  border-color:rgba(255,255,255,.96);
  box-shadow:0 6px 20px rgba(0,0,0,.16);
  text-shadow:none;
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
.hero-card.hero-rotating .hero-top-actions .btn.primary{
  background:var(--red);
  color:#fff;
  border-color:var(--red);
}
.hero-card.hero-rotating h1{
  margin-top:auto !important;
  margin-bottom:0 !important;
  max-width:900px;
}
@media(max-width:900px){
  .hero-card.hero-rotating .hero-inner{min-height:570px;padding:48px 0 46px}
}
@media(max-width:600px){
  .hero-card.hero-rotating .hero-inner{min-height:530px;padding:36px 0 38px}
  .hero-card.hero-rotating .hero-top-actions{margin-top:18px;gap:8px}
  .hero-card.hero-rotating .hero-top-actions .btn{min-height:46px;padding:0 15px;font-size:.8rem}
  .hero-card.hero-rotating h1{font-size:2.15rem;line-height:1.32}
}


/* 2026-09-26 rotating hero title line + Keio blue training CTA */
.hero-card.hero-rotating h1{
  max-width:none !important;
  width:100%;
}
.hero-card.hero-rotating .hero-title-line{
  display:block;
}
.hero-card.hero-rotating .hero-title-line-nowrap{
  white-space:nowrap;
}
.hero-card.hero-rotating .hero-top-actions .btn.training-cta{
  background:var(--navy) !important;
  color:#fff !important;
  border-color:var(--navy) !important;
}
.hero-card.hero-rotating .hero-top-actions .btn.training-cta:hover{
  filter:brightness(1.08);
}
@media(max-width:760px){
  .hero-card.hero-rotating .hero-title-line-nowrap{
    white-space:normal;
  }
}

.footer-directory{box-shadow:inset 0 1px 0 rgba(255,255,255,.04);}

#mvv{scroll-margin-top:125px}


/* 2026-09-27 index hero compact height */
@media(min-width:901px){
  .hero-card.hero-rotating{min-height:580px;}
  .hero-card.hero-rotating .hero-inner{min-height:580px;padding:50px 0 42px;}
}


/* 2026-09-27 subpage hero readability + breadcrumb cleanup */
.hero-card:not(.hero-rotating) h1{
  text-shadow:0 1px 2px rgba(0,0,0,1),0 3px 7px rgba(0,0,0,.94),0 7px 18px rgba(0,0,0,.76),0 0 34px rgba(0,0,0,.60) !important;
}
.hero-card:not(.hero-rotating) p,
.hero-card:not(.hero-rotating) .achievement-hero-copy{
  text-shadow:0 1px 2px rgba(0,0,0,1),0 2px 6px rgba(0,0,0,.92),0 5px 15px rgba(0,0,0,.72),0 0 28px rgba(0,0,0,.56) !important;
}
.hero-card:not(.hero-rotating) .section-kicker,
.hero-card:not(.hero-rotating) .page-eyebrow,
.hero-card:not(.hero-rotating) .recruit-kicker,
.hero-card:not(.hero-rotating) > .wrap > span{
  text-shadow:0 1px 2px rgba(0,0,0,.98),0 2px 6px rgba(0,0,0,.90),0 0 15px rgba(0,0,0,.78),0 0 30px rgba(0,0,0,.52) !important;
}
/* Breadcrumbs are intentionally removed from all pages. */
.breadcrumb{display:none !important;}


/* 2026-09-27 iPad/Safari slideshow fallback + staff hero copy position */
/* CSS fallback rotates even if an external JS file is not executed by a local/mobile browser. */
.hero-rotating:not(.hero-js-active) .hero-slide{
  animation-name:hero-fallback-cycle;
  animation-duration:81s;
  animation-iteration-count:infinite;
  animation-timing-function:linear;
}
.hero-rotating:not(.hero-js-active) .hero-slide:nth-child(1){animation-name:hero-fallback-first;animation-delay:0s}
.hero-rotating:not(.hero-js-active) .hero-slide:nth-child(2){animation-delay:4s}
.hero-rotating:not(.hero-js-active) .hero-slide:nth-child(3){animation-delay:9.5s}
.hero-rotating:not(.hero-js-active) .hero-slide:nth-child(4){animation-delay:15s}
.hero-rotating:not(.hero-js-active) .hero-slide:nth-child(5){animation-delay:20.5s}
.hero-rotating:not(.hero-js-active) .hero-slide:nth-child(6){animation-delay:26s}
.hero-rotating:not(.hero-js-active) .hero-slide:nth-child(7){animation-delay:31.5s}
.hero-rotating:not(.hero-js-active) .hero-slide:nth-child(8){animation-delay:37s}
.hero-rotating:not(.hero-js-active) .hero-slide:nth-child(9){animation-delay:42.5s}
.hero-rotating:not(.hero-js-active) .hero-slide:nth-child(10){animation-delay:48s}
.hero-rotating:not(.hero-js-active) .hero-slide:nth-child(11){animation-delay:53.5s}
.hero-rotating:not(.hero-js-active) .hero-slide:nth-child(12){animation-delay:59s}
.hero-rotating:not(.hero-js-active) .hero-slide:nth-child(13){animation-delay:64.5s}
.hero-rotating:not(.hero-js-active) .hero-slide:nth-child(14){animation-delay:70s}
.hero-rotating:not(.hero-js-active) .hero-slide:nth-child(15){animation-delay:75.5s}
.hero-rotating.hero-js-active .hero-slide{animation:none !important}
@keyframes hero-fallback-cycle{
  0%{opacity:0}
  1.235%{opacity:1}
  6.790%{opacity:1}
  8.025%,100%{opacity:0}
}
@keyframes hero-fallback-first{
  0%{opacity:1}
  4.938%{opacity:1}
  6.173%,100%{opacity:0}
}
@media(prefers-reduced-motion:reduce){
  .hero-rotating:not(.hero-js-active) .hero-slide{animation-timing-function:steps(1,end)}
  .hero-rotating.hero-js-active .hero-slide{transition:none !important}
}

/* Staff photo contains faces across the middle; anchor the copy to the lower edge
   so it sits over white coats/steps rather than over faces. */
.hero-card.staff-page-hero{
  display:flex;
  align-items:flex-end;
  min-height:320px;
  padding:0 0 30px !important;
}
.hero-card.staff-page-hero>.wrap{
  width:min(1160px,calc(100% - 40px));
  margin:0 auto;
}
@media(max-width:600px){
  .hero-card.staff-page-hero{min-height:250px;padding:0 0 22px !important}
  .hero-card.staff-page-hero>.wrap{width:min(100% - 28px,1160px)}
}


/* 2026-09-27 move all subpage hero copy toward the lower edge */
.hero-card.page-hero,
.hero-card.staff-page-hero,
.hero-card.recruit-page-hero{
  display:flex;
  align-items:flex-end;
  padding:0 0 28px !important;
}
.hero-card.page-hero>.wrap,
.hero-card.staff-page-hero>.wrap,
.hero-card.recruit-page-hero>.wrap{
  width:min(1160px,calc(100% - 40px));
  margin:0 auto;
}
/* The dedicated residency top hero is already bottom-aligned; reduce bottom padding
   so its copy also sits closer to the lower edge. */
.hero-card.recruit-hero .recruit-hero-inner{
  padding:86px 0 38px !important;
}
@media(max-width:600px){
  .hero-card.page-hero,
  .hero-card.staff-page-hero,
  .hero-card.recruit-page-hero{
    padding:0 0 20px !important;
  }
  .hero-card.page-hero>.wrap,
  .hero-card.staff-page-hero>.wrap,
  .hero-card.recruit-page-hero>.wrap{
    width:min(100% - 28px,1160px);
  }
  .hero-card.recruit-hero .recruit-hero-inner{
    padding:92px 0 28px !important;
  }
}


/* 2026-09-27 Education hero: CTAs at the top, title at the very bottom */
.education-hero{
  align-items:stretch !important;
}
.education-hero .recruit-hero-inner{
  position:relative;
  min-height:620px;
  padding:0 !important;
}
.education-hero .recruit-kicker{
  position:absolute;
  top:24px;
  left:0;
  margin:0;
}
.education-hero .education-hero-actions{
  position:absolute;
  top:52px;
  left:0;
  margin:0;
  gap:12px;
}
.education-hero .education-hero-copy{
  position:absolute;
  left:0;
  right:0;
  bottom:14px;
  max-width:780px;
}
.education-hero .education-hero-copy h1{
  position:static;
  margin:0 !important;
  line-height:1.24;
}
.education-hero .education-hero-copy p{
  margin:14px 0 0;
  max-width:720px;
  color:#fff !important;
  font-size:1rem;
  line-height:1.7;
  text-shadow:0 2px 4px rgba(0,0,0,.88),0 0 10px rgba(0,0,0,.78),0 0 20px rgba(0,0,0,.58);
}
.education-hero .education-visit-btn{
  background:var(--navy) !important;
  border-color:var(--navy) !important;
  color:#fff !important;
}
.education-hero .education-visit-btn:hover{
  background:#00184f !important;
  border-color:#00184f !important;
}
@media(max-width:900px){
  .education-hero .recruit-hero-inner{min-height:570px}
  .education-hero .recruit-kicker{top:20px}
  .education-hero .education-hero-actions{top:48px}
  .education-hero .education-hero-copy{bottom:12px}
}
@media(max-width:600px){
  .education-hero .recruit-hero-inner{min-height:530px}
  .education-hero .recruit-kicker{top:16px}
  .education-hero .education-hero-actions{top:42px;gap:8px;flex-wrap:wrap}
  .education-hero .education-hero-actions .btn{min-height:46px;padding:0 14px;font-size:.8rem}
  .education-hero .education-hero-copy{bottom:10px}.education-hero .education-hero-copy p{font-size:.86rem;line-height:1.6;margin-top:9px;max-width:94%}
}


/* 2026-09-27 Training hero: keep copy clear of faces by anchoring it at the lower edge */
.hero-card.training-hero{
  display:flex !important;
  align-items:flex-end !important;
  padding:0 0 8px !important;
}
.hero-card.training-hero>.wrap{
  width:min(1160px,calc(100% - 40px));
  margin:0 auto;
}
.hero-card.training-hero h1{
  margin:8px 0 0 !important;
  max-width:720px;
  line-height:1.18;
}
@media(max-width:900px){
  .hero-card.training-hero{padding-bottom:8px !important}
}
@media(max-width:600px){
  .hero-card.training-hero{padding-bottom:8px !important}
  .hero-card.training-hero>.wrap{width:min(100% - 28px,1160px)}
  .hero-card.training-hero h1{margin-top:6px !important}
}


/* 2026-09-27: keep only the rotating index hero title at the original Shippori weight */
.hero-card.hero-rotating h1{font-weight:500 !important;}

/* 2026-09-27: subtle white-to-pale-blue gradient for the rotating index hero title */
.hero-card.hero-rotating h1{
  color:#fff !important; /* fallback */
}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  .hero-card.hero-rotating h1{
    background:linear-gradient(90deg,#F7DCE6 0%,#FFFFFF 50%,#DDEFF7 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    color:transparent !important;
  }
}


/* 2026-09-27: fix gradient title shadow.
   text-shadow shows through transparent clipped text, so use drop-shadow instead. */
.hero-card.hero-rotating h1{
  text-shadow:none !important;
  filter:
    drop-shadow(0 2px 2px rgba(0,0,0,.82))
    drop-shadow(0 4px 7px rgba(0,0,0,.62))
    drop-shadow(0 8px 16px rgba(0,0,0,.42));
}


/* 2026-09-27: white hero title with a cyan-to-pink gradient glow */
.hero-card.hero-rotating h1{
  background:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  -webkit-text-fill-color:#fff !important;
  color:#fff !important;
  filter:none !important;
  text-shadow:0 2px 3px rgba(0,0,0,.72),0 5px 12px rgba(0,0,0,.40) !important;
  overflow:visible;
}
.hero-card.hero-rotating .hero-title-line{
  position:relative;
  z-index:1;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  isolation:isolate;
}
.hero-card.hero-rotating .hero-title-line::before{
  content:attr(data-glow-text);
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  color:transparent;
  -webkit-text-fill-color:transparent;
  background:linear-gradient(90deg,#48C8F5 0%,#E86EAA 100%);
  -webkit-background-clip:text;
  background-clip:text;
  filter:blur(11px);
  opacity:.95;
  transform:translateZ(0);
}

/* 2026-09-27: requested index hero title gradient with original black glow */
.hero-card.hero-rotating h1{
  background:none !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  text-shadow:none !important;
  filter:none !important;
}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  .hero-card.hero-rotating .hero-title-line{
    display:block;
    background:linear-gradient(90deg,#FFFFFF 0%,#FFFFFF 15%,#F8D4E6 30%,#FFFFFF 50%,#D7F3FD 70%,#FFFFFF 85%,#FFFFFF 100%) !important;
    -webkit-background-clip:text !important;
    background-clip:text !important;
    -webkit-text-fill-color:transparent !important;
    color:transparent !important;
    filter:
      drop-shadow(0 2px 2px rgba(0,0,0,.82))
      drop-shadow(0 4px 7px rgba(0,0,0,.62))
      drop-shadow(0 8px 16px rgba(0,0,0,.42)) !important;
  }
}
.hero-card.hero-rotating .hero-title-line::before{
  content:none !important;
  display:none !important;
}


/* 2026-09-27: smooth iPad/Safari hero cross-fade
   Keep the dissolve on touch devices as well as desktop. */
.hero-rotating .hero-slide{
  -webkit-transition:opacity 1.55s ease-in-out !important;
  transition:opacity 1.55s ease-in-out !important;
  -webkit-transform:translateZ(0);
  transform:translateZ(0);
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  will-change:opacity;
}
@media(prefers-reduced-motion:reduce){
  .hero-rotating.hero-js-active .hero-slide{
    -webkit-transition:opacity 1.55s ease-in-out !important;
    transition:opacity 1.55s ease-in-out !important;
  }
}
.hero-rotating .hero-slide.is-active{z-index:1;opacity:1}
.hero-rotating .hero-slide.is-leaving{z-index:2;opacity:0}


/* === 2026-09-27 Cluster care page === */
.cluster-content{min-width:0}
.cluster-intro{
  position:relative;
  overflow:hidden;
  margin:0 0 34px;
  padding:38px 40px 36px;
  border:1px solid #dce7ee;
  border-radius:24px;
  background:linear-gradient(135deg,#f7fbfd 0%,#fff 56%,#fbf5f7 100%);
}
.cluster-intro::after{
  content:"";
  position:absolute;
  right:-46px;top:-54px;
  width:190px;height:190px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(0,30,98,.08),rgba(0,30,98,0) 68%);
  pointer-events:none;
}
.cluster-intro h2{
  margin:13px 0 24px;
  font-size:clamp(1.85rem,3.2vw,2.55rem);
  line-height:1.48;
}
.cluster-intro p{margin:0 0 15px;line-height:2}
.cluster-hospital-link{
  display:inline-flex;
  align-items:center;
  margin-top:8px;
  color:var(--navy);
  font-weight:750;
  font-size:.88rem;
  border-bottom:1px solid rgba(0,30,98,.35);
}
.cluster-jump{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:0 0 34px;
}
.cluster-jump a{
  min-height:50px;
  padding:12px 15px;
  border:1px solid var(--line);
  border-radius:14px;
  display:flex;
  align-items:center;
  gap:12px;
  background:#fff;
  color:#33475a;
  font-size:.84rem;
  font-weight:700;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.cluster-jump a:hover{
  transform:translateY(-2px);
  border-color:#a9bdcd;
  box-shadow:0 8px 18px rgba(18,43,72,.08);
}
.cluster-jump a span{
  flex:0 0 auto;
  width:28px;height:28px;
  display:grid;place-items:center;
  border-radius:50%;
  background:#eef4f8;
  color:var(--red);
  font:700 .72rem/1 Georgia,serif;
}
.cluster-list{display:grid;gap:22px}
.cluster-card{
  scroll-margin-top:118px;
  position:relative;
  padding:30px 32px 27px;
  border:1px solid #dbe5ec;
  border-radius:22px;
  background:#fff;
  box-shadow:0 9px 26px rgba(18,43,72,.055);
}
.cluster-card::before{
  content:"";
  position:absolute;
  left:0;top:22px;bottom:22px;
  width:4px;
  border-radius:0 4px 4px 0;
  background:linear-gradient(180deg,var(--red),var(--navy));
}
.cluster-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  margin-bottom:17px;
}
.cluster-card-no{
  display:block;
  margin-bottom:7px;
  color:#8b99a8;
  font:800 .67rem/1 var(--sans);
  letter-spacing:.14em;
}
.cluster-card h3{
  margin:0;
  font-size:1.48rem;
  line-height:1.5;
}
.cluster-official-link{
  flex:0 0 auto;
  margin-top:15px;
  color:var(--navy);
  font-size:.78rem;
  font-weight:750;
  border-bottom:1px solid rgba(0,30,98,.28);
  white-space:nowrap;
}
.cluster-card-copy{
  margin:0;
  line-height:2.02;
  color:#49586a;
}
.cluster-groups{
  display:grid;
  grid-template-columns:180px 1fr;
  align-items:center;
  gap:18px;
  margin-top:23px;
  padding-top:20px;
  border-top:1px solid #e5ebf0;
}
.cluster-groups-label{
  color:#68798b;
  font-size:.74rem;
  font-weight:750;
  line-height:1.6;
}
.cluster-group-chips{display:flex;flex-wrap:wrap;gap:10px}
.cluster-group-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:42px;
  padding:6px 12px 6px 7px;
  border:1px solid #dce6ed;
  border-radius:999px;
  background:#f8fbfd;
  color:#263e55;
  font-size:.78rem;
  font-weight:750;
}
.cluster-group-chip img{
  width:30px;height:30px;
  object-fit:contain;
  border-radius:50%;
  background:#fff;
}
.care-cluster-callout{
  display:grid;
  grid-template-columns:1fr 245px;
  align-items:center;
  gap:32px;
  margin:26px 0 70px;
  padding:30px 32px;
  border:1px solid #d8e3eb;
  border-radius:22px;
  background:linear-gradient(115deg,#f7fbfd 0%,#fff 58%,#fbf4f7 100%);
  box-shadow:0 8px 26px rgba(18,43,72,.055);
}
.care-cluster-copy h3{
  margin:7px 0 11px;
  font-size:1.48rem;
}
.care-cluster-copy p{margin:0 0 12px;line-height:1.9}
.care-cluster-icons{
  display:grid;
  grid-template-columns:repeat(3,58px);
  justify-content:end;
  gap:13px;
}
.care-cluster-icons img{
  width:58px;height:58px;
  padding:8px;
  object-fit:contain;
  border-radius:18px;
  background:#fff;
  border:1px solid #e0e8ee;
  box-shadow:0 5px 14px rgba(18,43,72,.06);
}
@media(max-width:900px){
  .cluster-card{scroll-margin-top:92px}
  .cluster-intro{padding:30px 28px}
  .care-cluster-callout{grid-template-columns:1fr 210px}
  .care-cluster-icons{grid-template-columns:repeat(3,52px)}
  .care-cluster-icons img{width:52px;height:52px}
}
@media(max-width:650px){
  .cluster-pc-break{display:none}
  .cluster-intro{padding:26px 20px 24px;border-radius:18px}
  .cluster-intro h2{font-size:1.75rem}
  .cluster-jump{grid-template-columns:1fr}
  .cluster-card{padding:25px 20px 22px;border-radius:18px}
  .cluster-card-head{display:block}
  .cluster-official-link{display:inline-block;margin-top:12px}
  .cluster-groups{grid-template-columns:1fr;gap:10px}
  .cluster-group-chip{font-size:.76rem}
  .care-cluster-callout{grid-template-columns:1fr;padding:25px 20px;margin-bottom:54px}
  .care-cluster-icons{justify-content:start;grid-template-columns:repeat(6,44px);gap:7px}
  .care-cluster-icons img{width:44px;height:44px;border-radius:13px;padding:6px}
}
@media(max-width:390px){
  .care-cluster-icons{grid-template-columns:repeat(3,46px)}
}


/* ==========================================================
   2026-09-27 / Prototype: Five clinical strengths
   ========================================================== */
.strengths-layout{
  display:grid;
  grid-template-columns:210px minmax(0,1fr);
  gap:58px;
  padding:72px 0 110px;
}
.strengths-side{
  position:sticky;
  top:145px;
  align-self:start;
  border-top:3px solid var(--navy);
}
.strengths-side-title{
  padding:14px 10px 10px;
  color:var(--navy);
  font-size:.76rem;
  font-weight:850;
  letter-spacing:.08em;
}
.strengths-side>a{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 10px;
  border-bottom:1px solid var(--line);
  color:#536477;
  font-size:.79rem;
  line-height:1.45;
}
.strengths-side>a span{
  color:var(--red);
  font:700 .68rem/1 Georgia,serif;
}
.strengths-side>a:hover{color:var(--navy);background:#f7fafc}
.strengths-side-links{
  margin-top:19px;
  padding:15px 14px;
  background:#f5f8fa;
  border-radius:12px;
}
.strengths-side-links a{
  display:block;
  padding:5px 0;
  color:var(--navy);
  font-size:.72rem;
  font-weight:700;
}
.strengths-main{min-width:0}
.strengths-intro{
  position:relative;
  overflow:hidden;
  padding:45px 48px 52px;
  border-radius:28px;
  background:
    radial-gradient(circle at 91% 12%,rgba(215,243,253,.75),transparent 26%),
    radial-gradient(circle at 8% 90%,rgba(248,212,230,.63),transparent 28%),
    linear-gradient(135deg,#fbfdff,#fff 52%,#fbfcfd);
  border:1px solid #dce7ee;
}
.strengths-intro h2{
  margin:12px 0 20px;
  color:var(--navy);
  font:700 clamp(2.15rem,4.4vw,3.35rem)/1.52 var(--serif);
  letter-spacing:.02em;
}
.strengths-lead{
  max-width:760px;
  margin:0;
  color:#45576a;
  font-size:1rem;
  line-height:2.05;
}
.strengths-system{
  position:relative;
  height:485px;
  max-width:760px;
  margin:44px auto 0;
}
.strengths-system::before,
.strengths-system::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  border:1px solid rgba(0,30,98,.12);
  border-radius:50%;
  transform:translate(-50%,-50%);
}
.strengths-system::before{width:390px;height:390px}
.strengths-system::after{width:282px;height:282px;border-style:dashed}
.strengths-system-center{
  position:absolute;
  z-index:4;
  left:50%;top:50%;
  width:165px;height:165px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  display:grid;
  align-content:center;
  justify-items:center;
  text-align:center;
  background:var(--navy);
  color:#fff;
  box-shadow:0 18px 45px rgba(0,30,98,.20);
}
.strengths-system-center span{
  color:#dfeaf4;
  font-size:.61rem;
  font-weight:800;
  letter-spacing:.12em;
}
.strengths-system-center strong{
  margin-top:7px;
  font:600 1.22rem/1.6 var(--serif);
}
.system-node{
  position:absolute;
  z-index:3;
  width:180px;
  min-height:90px;
  padding:14px 16px;
  border:1px solid #dce7ed;
  border-radius:17px;
  background:rgba(255,255,255,.95);
  box-shadow:0 10px 25px rgba(22,51,79,.08);
}
.system-node small{
  display:block;
  margin-bottom:5px;
  color:var(--red);
  font:700 .7rem/1 Georgia,serif;
}
.system-node b{display:block;color:var(--navy);font-size:.88rem}
.system-node span{display:block;margin-top:3px;color:#768597;font-size:.68rem}
.system-node-1{left:50%;top:0;transform:translateX(-50%)}
.system-node-2{right:0;top:106px}
.system-node-3{right:52px;bottom:15px}
.system-node-4{left:52px;bottom:15px}
.system-node-5{left:0;top:106px}

.strengths-overview{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  margin:34px 0 72px;
  border:1px solid var(--line);
  border-radius:18px;
  overflow:hidden;
  background:#fff;
}
.strengths-overview a{
  position:relative;
  min-height:157px;
  padding:20px 16px 17px;
  border-right:1px solid var(--line);
  transition:.2s ease;
}
.strengths-overview a:last-child{border-right:0}
.strengths-overview a:hover{background:#f7fafc}
.strengths-overview em{
  display:block;
  color:#cdd8e2;
  font:italic 1.65rem/1 Georgia,serif;
}
.strengths-overview strong{
  display:block;
  margin:13px 0 8px;
  color:var(--navy);
  font:700 .93rem/1.55 var(--serif);
}
.strengths-overview span{
  color:#8a99a7;
  font-size:.61rem;
  font-weight:800;
  letter-spacing:.04em;
}

.strength-section{
  scroll-margin-top:128px;
  padding:72px 0 82px;
  border-top:1px solid var(--line);
}
.strength-section-tint{
  margin-left:-34px;margin-right:-34px;
  padding-left:34px;padding-right:34px;
  border-radius:24px;
  background:linear-gradient(180deg,#f7fafc,#fff);
  border-top:0;
}
.strength-heading{
  display:grid;
  grid-template-columns:72px 1fr;
  gap:24px;
  align-items:start;
  margin-bottom:34px;
}
.strength-number{
  color:#d6e1e9;
  font:italic 3.8rem/1 Georgia,serif;
}
.strength-heading h2{
  margin:9px 0 0;
  color:var(--navy);
  font:700 clamp(1.85rem,3.4vw,2.55rem)/1.55 var(--serif);
}
.strength-bigcopy{
  color:#33485c!important;
  font-size:1.07rem;
  line-height:2.05;
}
.strength-bigcopy strong{color:var(--navy)}
.strength-text-link{
  display:inline-block;
  margin-top:14px;
  color:var(--red);
  font-size:.82rem;
  font-weight:800;
  border-bottom:1px solid currentColor;
}
.strength-copy-grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);
  gap:38px;
  align-items:start;
}
.strength-highlight-box{
  padding:26px 28px;
  background:var(--navy);
  color:#fff;
  border-radius:20px;
}
.strength-highlight-box>span{
  color:#cbd9e6;
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.13em;
}
.strength-highlight-box>strong{
  display:block;
  margin:10px 0 0;
  color:#fff;
  font:500 4.8rem/.9 Georgia,serif;
}
.strength-highlight-box>p{margin:7px 0 18px;color:#cfdae5;font-size:.7rem;letter-spacing:.08em}
.strength-highlight-tags{display:flex;flex-wrap:wrap;gap:7px}
.strength-highlight-tags b{
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.23);
  border-radius:999px;
  color:#fff;
  font-size:.67rem;
}
.strength-group-grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:9px;
  margin-top:34px;
}
.strength-group-icon{
  min-height:115px;
  padding:13px 7px 10px;
  display:grid;
  align-content:center;
  justify-items:center;
  text-align:center;
  border:1px solid #e0e8ee;
  border-radius:14px;
  background:#fff;
}
.strength-group-icon img{width:47px;height:47px;object-fit:contain}
.strength-group-icon span{margin-top:8px;color:#41566a;font-size:.64rem;font-weight:750;line-height:1.35}

.picu-feature-grid{
  display:grid;
  grid-template-columns:1.03fr .97fr;
  gap:38px;
  align-items:center;
}
.picu-feature-main{margin:0;position:relative}
.picu-feature-main img{
  width:100%;
  min-height:360px;
  object-fit:cover;
  border-radius:20px;
}
.picu-feature-main figcaption{
  position:absolute;
  left:18px;bottom:16px;
  padding:7px 10px;
  background:rgba(0,30,98,.88);
  color:#fff;
  font-size:.63rem;
  font-weight:800;
  letter-spacing:.08em;
}
.picu-metrics{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-top:28px;
  border:1px solid var(--line);
  border-radius:18px;
  overflow:hidden;
  background:#fff;
}
.picu-metric{padding:22px 20px;border-right:1px solid var(--line)}
.picu-metric:last-child{border-right:0}
.picu-metric span{display:block;color:#8b99a7;font-size:.59rem;font-weight:800;letter-spacing:.1em}
.picu-metric strong{display:block;margin:8px 0 4px;color:var(--navy);font:700 1.35rem/1.2 var(--serif)}
.picu-metric p{margin:0;color:#718092;font-size:.69rem;line-height:1.55}
.picu-metric-pending strong{color:#a0acb7}
.picu-photo-strip{
  display:grid;
  grid-template-columns:240px 1fr;
  gap:27px;
  align-items:center;
  margin-top:26px;
  padding:18px;
  border-radius:18px;
  background:#eef5f8;
}
.picu-photo-strip img{width:240px;height:160px;object-fit:cover;border-radius:13px}
.picu-photo-strip h3{margin:6px 0 7px;color:var(--navy);font:700 1.15rem/1.5 var(--serif)}
.picu-photo-strip p{margin:0;font-size:.79rem;line-height:1.8}

.cluster-network{
  position:relative;
  height:330px;
  margin:35px 0 30px;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at center,rgba(215,243,253,.55),rgba(255,255,255,0) 45%);
}
.cluster-network-center{
  z-index:2;
  width:150px;height:150px;
  border-radius:50%;
  display:grid;
  align-content:center;
  justify-items:center;
  background:var(--navy);
  color:#fff;
  box-shadow:0 16px 36px rgba(0,30,98,.16);
}
.cluster-network-center span{font-size:.56rem;letter-spacing:.13em;color:#d3dfeb}
.cluster-network-center strong{font:700 1.35rem/1.4 var(--serif)}
.cluster-network-center small{font-size:.64rem;color:#cbd8e4}
.cluster-network-ring{
  position:absolute;
  inset:0;
}
.cluster-network-ring div{
  position:absolute;
  min-width:122px;
  padding:11px 14px;
  text-align:center;
  border:1px solid #dbe5ec;
  border-radius:999px;
  background:#fff;
  color:#40556a;
  font-size:.72rem;
  font-weight:750;
  box-shadow:0 7px 19px rgba(23,48,74,.06);
}
.cluster-network-ring div:nth-child(1){left:50%;top:17px;transform:translateX(-50%)}
.cluster-network-ring div:nth-child(2){right:52px;top:77px}
.cluster-network-ring div:nth-child(3){right:48px;bottom:58px}
.cluster-network-ring div:nth-child(4){left:48px;bottom:58px}
.cluster-network-ring div:nth-child(5){left:52px;top:77px}
.cluster-network-ring div:nth-child(6){left:50%;bottom:8px;transform:translateX(-50%)}
.cluster-mini-list{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}
.cluster-mini-list a{
  padding:9px 13px;
  border:1px solid #dce6ed;
  border-radius:999px;
  color:var(--navy);
  background:#f8fbfd;
  font-size:.7rem;
  font-weight:750;
}
.strength-wide-link{
  margin-top:25px;
  padding:17px 19px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-radius:13px;
  background:var(--navy);
  color:#fff;
}
.strength-wide-link span{font-family:var(--serif);font-weight:700}
.strength-wide-link b{font-size:.75rem}

.strength-section-diagnosis{
  margin-left:-34px;margin-right:-34px;
  padding-left:34px;padding-right:34px;
  border-radius:24px;
  background:
    radial-gradient(circle at 92% 8%,rgba(248,212,230,.55),transparent 22%),
    radial-gradient(circle at 7% 94%,rgba(215,243,253,.58),transparent 25%),
    #fbfcfd;
  border-top:0;
}
.diagnostic-path{
  display:grid;
  grid-template-columns:1fr 28px 1fr 28px 1.15fr 28px 1fr;
  gap:4px;
  align-items:stretch;
  margin:34px 0;
}
.diagnostic-path>div{
  padding:17px 14px;
  border:1px solid #dbe5ec;
  border-radius:13px;
  background:#fff;
}
.diagnostic-path>div span{display:block;color:var(--red);font:700 .66rem/1 Georgia,serif}
.diagnostic-path>div b{display:block;margin:8px 0 3px;color:var(--navy);font-size:.77rem}
.diagnostic-path>div small{display:block;color:#7c8996;font-size:.61rem;line-height:1.5}
.diagnostic-path>i{display:grid;place-items:center;color:#9bacba;font-style:normal}
.diagnostic-path .diagnostic-path-accent{
  border-color:#aacbdb;
  background:linear-gradient(135deg,#f8d4e6 0%,#fff 49%,#d7f3fd 100%);
}
.diagnostic-experts{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:15px;
  margin-top:28px;
}
.expert-card{
  overflow:hidden;
  border:1px solid #dce5eb;
  border-radius:18px;
  background:#fff;
}
.expert-photo-placeholder{
  height:210px;
  display:grid;
  align-content:center;
  justify-items:center;
  background:
    radial-gradient(circle at 50% 36%,rgba(255,255,255,.8),transparent 15%),
    linear-gradient(140deg,#dce9ef,#b9cbd6);
  color:#6d8391;
}
.expert-photo-placeholder::before{
  content:"";
  width:72px;height:72px;
  border-radius:50%;
  border:1px solid rgba(0,30,98,.15);
  background:rgba(255,255,255,.46);
  margin-bottom:12px;
}
.expert-photo-placeholder span{font-size:.65rem;font-weight:800;letter-spacing:.13em}
.expert-photo-placeholder small{font-size:.58rem}
.expert-photo-radiology{
  background:
    radial-gradient(circle at 50% 36%,rgba(255,255,255,.8),transparent 15%),
    linear-gradient(140deg,#e9e2e7,#c4d7df);
}
.expert-card-body{padding:20px 20px 22px}
.expert-card-body>span{color:var(--red);font-size:.58rem;font-weight:850;letter-spacing:.1em}
.expert-card-body h3{margin:5px 0 10px;color:var(--navy);font:700 1.22rem/1.45 var(--serif)}
.expert-card-body p{margin:0;color:#657487;font-size:.75rem;line-height:1.8}
.diagnosis-note{
  margin-top:22px;
  padding:20px 23px;
  border-left:4px solid var(--red);
  background:#fff;
}
.diagnosis-note strong{color:var(--navy);font:700 1.05rem/1.6 var(--serif)}
.diagnosis-note p{margin:5px 0 0;font-size:.78rem}

.surgical-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:15px;
  margin-top:32px;
}
.surgical-card{
  position:relative;
  min-height:260px;
  padding:26px 26px 54px;
  border:1px solid #dbe5ec;
  border-radius:18px;
  background:#fff;
}
.surgical-symbol{
  width:48px;height:48px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:var(--navy);
  color:#fff;
  font:700 .76rem/1 Georgia,serif;
}
.surgical-card>small{
  display:block;
  margin-top:14px;
  color:#9aa7b2;
  font-size:.57rem;
  font-weight:850;
  letter-spacing:.12em;
}
.surgical-card h3{margin:4px 0 9px;color:var(--navy);font:700 1.3rem/1.5 var(--serif)}
.surgical-card p{margin:0;color:#637386;font-size:.78rem;line-height:1.85}
.surgical-card b{
  position:absolute;
  left:26px;bottom:23px;
  color:var(--red);
  font-size:.7rem;
}

.strengths-closing{
  margin-top:18px;
  padding:44px 44px 40px;
  border-radius:26px;
  background:var(--navy);
  color:#fff;
}
.strengths-closing .section-kicker{color:#f0b9cf}
.strengths-closing h2{
  margin:9px 0 14px;
  color:#fff;
  font:700 clamp(1.8rem,3.3vw,2.5rem)/1.55 var(--serif);
}
.strengths-closing p{max-width:720px;color:#d8e2eb;line-height:1.95}
.closing-flow{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-top:25px;
}
.closing-flow span{
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:999px;
  font-size:.69rem;
  font-weight:700;
}
.closing-flow i{color:#93abc0;font-style:normal}
.closing-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.closing-actions a{
  padding:11px 15px;
  background:#fff;
  color:var(--navy);
  border-radius:4px;
  font-size:.74rem;
  font-weight:800;
}

@media(max-width:1050px){
  .strengths-layout{grid-template-columns:1fr}
  .strengths-side{display:none}
  .strengths-overview{grid-template-columns:repeat(3,1fr)}
  .strengths-overview a:nth-child(3){border-right:0}
  .strengths-overview a:nth-child(n+4){border-top:1px solid var(--line)}
  .strength-group-grid{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:760px){
  .strengths-layout{padding-top:42px}
  .strengths-intro{padding:30px 22px 35px;border-radius:20px}
  .strengths-intro h2{font-size:2rem}
  .strengths-system{
    height:auto;
    margin-top:30px;
    display:grid;
    grid-template-columns:1fr;
    gap:9px;
  }
  .strengths-system::before,.strengths-system::after{display:none}
  .strengths-system-center{
    position:relative;
    left:auto;top:auto;
    width:100%;height:auto;
    transform:none;
    border-radius:15px;
    padding:17px;
  }
  .strengths-system-center strong br{display:none}
  .system-node{
    position:relative!important;
    left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    transform:none!important;
    width:100%;
    min-height:0;
  }
  .strengths-overview{grid-template-columns:1fr 1fr;margin-bottom:48px}
  .strengths-overview a{min-height:128px}
  .strengths-overview a:nth-child(2n){border-right:0}
  .strengths-overview a:nth-child(3){border-right:1px solid var(--line)}
  .strengths-overview a:nth-child(n+3){border-top:1px solid var(--line)}
  .strengths-overview a:last-child{grid-column:1/-1}
  .strength-section{padding:52px 0 60px}
  .strength-section-tint,.strength-section-diagnosis{margin-left:-14px;margin-right:-14px;padding-left:14px;padding-right:14px;border-radius:18px}
  .strength-heading{grid-template-columns:48px 1fr;gap:12px}
  .strength-number{font-size:2.7rem}
  .strength-heading h2{font-size:1.75rem}
  .strength-copy-grid,.picu-feature-grid{grid-template-columns:1fr}
  .strength-group-grid{grid-template-columns:repeat(3,1fr)}
  .picu-feature-main img{min-height:260px}
  .picu-metrics{grid-template-columns:1fr}
  .picu-metric{border-right:0;border-bottom:1px solid var(--line)}
  .picu-metric:last-child{border-bottom:0}
  .picu-photo-strip{grid-template-columns:1fr}
  .picu-photo-strip img{width:100%;height:auto;aspect-ratio:16/9}
  .cluster-network{height:auto;margin-top:26px;display:block;background:none}
  .cluster-network-center{width:100%;height:auto;border-radius:15px;padding:18px}
  .cluster-network-ring{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}
  .cluster-network-ring div{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important}
  .diagnostic-path{grid-template-columns:1fr}
  .diagnostic-path>i{transform:rotate(90deg);height:20px}
  .diagnostic-experts{grid-template-columns:1fr}
  .expert-card{display:grid;grid-template-columns:150px 1fr}
  .expert-photo-placeholder{height:100%;min-height:185px}
  .surgical-grid{grid-template-columns:1fr}
  .strengths-closing{padding:31px 23px}
}
@media(max-width:470px){
  .strengths-overview{grid-template-columns:1fr}
  .strengths-overview a{border-right:0!important;border-top:1px solid var(--line)}
  .strengths-overview a:first-child{border-top:0}
  .strengths-overview a:last-child{grid-column:auto}
  .strength-group-grid{grid-template-columns:repeat(2,1fr)}
  .expert-card{display:block}
  .expert-photo-placeholder{height:210px}
}


/* ==========================================================
   2026-09-27 / Added: lifecourse concept & DPC volume
   ========================================================== */
.lifecourse-feature{
  margin:0 0 22px;
  padding:42px 42px 46px;
  border:1px solid #dce7ee;
  border-radius:28px;
  background:
    radial-gradient(circle at 92% 9%,rgba(215,243,253,.66),transparent 22%),
    radial-gradient(circle at 5% 88%,rgba(248,212,230,.48),transparent 26%),
    #fbfcfd;
}
.lifecourse-head{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:34px;
  align-items:end;
}
.lifecourse-head h2{
  margin:11px 0 0;
  color:var(--navy);
  font:700 clamp(1.9rem,3.8vw,2.8rem)/1.55 var(--serif);
}
.lifecourse-head p{
  margin:0;
  color:#45576a;
  line-height:2.02;
}
.lifecourse-figure{
  margin:30px 0 16px;
  overflow:hidden;
  border:1px solid #e1e8ee;
  border-radius:22px;
  background:#fff;
  box-shadow:0 10px 26px rgba(18,43,72,.045);
}
.lifecourse-figure img{
  display:block;
  width:100%;
  height:auto;
}
.lifecourse-figure figcaption{
  padding:14px 18px 16px;
  color:#6f7f91;
  font-size:.74rem;
  line-height:1.75;
}
.lifecourse-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-top:18px;
}
.lifecourse-card{
  padding:20px 20px 18px;
  border:1px solid #dfe7ed;
  border-radius:18px;
  background:#fff;
}
.lifecourse-card span{
  display:block;
  color:var(--red);
  font-size:.64rem;
  font-weight:850;
  letter-spacing:.08em;
}
.lifecourse-card h3{
  margin:8px 0 9px;
  color:var(--navy);
  font:700 1.07rem/1.55 var(--serif);
}
.lifecourse-card p{
  margin:0;
  color:#5d7082;
  font-size:.77rem;
  line-height:1.86;
}

.strength-section-volume{
  margin-left:-34px;
  margin-right:-34px;
  padding-left:34px;
  padding-right:34px;
  border-radius:24px;
  background:linear-gradient(180deg,#f7fafc 0%,#fff 100%);
  border-top:0;
}
.volume-copy-grid{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:34px;
  align-items:start;
}
.volume-points{
  margin:18px 0 0;
  padding-left:1.25rem;
  color:#536779;
}
.volume-points li{
  margin:0 0 8px;
  line-height:1.85;
}
.volume-chart{
  margin:0;
  overflow:hidden;
  border:1px solid #dee6ec;
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 25px rgba(18,43,72,.05);
}
.volume-chart img{
  display:block;
  width:100%;
  height:auto;
}
.volume-chart figcaption{
  padding:14px 18px 16px;
  color:#6a7a8c;
  font-size:.72rem;
  line-height:1.7;
}
@media(max-width:760px){
  .lifecourse-feature{
    padding:28px 20px 30px;
    border-radius:20px;
  }
  .lifecourse-head,
  .volume-copy-grid{
    grid-template-columns:1fr;
    gap:20px;
  }
  .lifecourse-grid{
    grid-template-columns:1fr;
  }
  .strength-section-volume{
    margin-left:-14px;
    margin-right:-14px;
    padding-left:14px;
    padding-right:14px;
    border-radius:18px;
  }
}


/* ==========================================================
   2026-09-28 / Integrated care page + cross-department experts
   ========================================================== */
.diagnostic-experts{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.expert-card-featured .expert-card-body{
  padding:22px 22px 24px;
}
.expert-role{
  margin:-4px 0 11px!important;
  color:#52677a!important;
  font-size:.69rem!important;
  font-weight:750;
  line-height:1.65!important;
}
.expert-card-body>a{
  display:inline-block;
  margin-top:14px;
  color:var(--red);
  font-size:.7rem;
  font-weight:800;
  border-bottom:1px solid currentColor;
}

.cross-specialist-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:32px;
}
.cross-specialist-card{
  overflow:hidden;
  border:1px solid #dbe5ec;
  border-radius:20px;
  background:#fff;
  box-shadow:0 8px 24px rgba(18,43,72,.055);
}
.cross-specialist-photo{
  min-height:230px;
  display:grid;
  align-content:center;
  justify-items:center;
  background:
    radial-gradient(circle at 50% 37%,rgba(255,255,255,.82),transparent 16%),
    linear-gradient(140deg,#d9e6ed,#b9ccd7);
  color:#6d8290;
}
.cross-specialist-photo::before{
  content:"";
  width:76px;height:76px;
  margin-bottom:12px;
  border:1px solid rgba(0,30,98,.13);
  border-radius:50%;
  background:rgba(255,255,255,.48);
}
.cross-specialist-photo span{
  font-size:.64rem;
  font-weight:850;
  letter-spacing:.14em;
}
.cross-specialist-photo small{font-size:.58rem}
.cross-specialist-photo-cranio{
  background:
    radial-gradient(circle at 50% 37%,rgba(255,255,255,.82),transparent 16%),
    linear-gradient(140deg,#eadfe5,#c8d7de);
}
.cross-specialist-photo-urology{
  background:
    radial-gradient(circle at 50% 37%,rgba(255,255,255,.82),transparent 16%),
    linear-gradient(140deg,#dce9e0,#c3d6df);
}
.cross-specialist-body{
  padding:22px 21px 24px;
}
.cross-specialist-field{
  display:block;
  color:var(--red);
  font-size:.57rem;
  font-weight:850;
  letter-spacing:.1em;
}
.cross-specialist-body h3{
  margin:6px 0 5px;
  color:var(--navy);
  font:700 1.32rem/1.45 var(--serif);
}
.cross-specialist-role{
  margin:0 0 13px;
  color:#52677a;
  font-size:.68rem;
  font-weight:750;
  line-height:1.65;
}
.cross-specialist-body>p:not(.cross-specialist-role){
  margin:0;
  color:#647486;
  font-size:.75rem;
  line-height:1.87;
}
.cross-specialist-facts{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:15px;
}
.cross-specialist-facts span{
  padding:6px 8px;
  border-radius:999px;
  background:#f0f5f8;
  color:#435a6e;
  font-size:.61rem;
  font-weight:750;
}
.cross-specialist-body>a{
  display:inline-block;
  margin-top:17px;
  color:var(--red);
  font-size:.7rem;
  font-weight:800;
  border-bottom:1px solid currentColor;
}
.surgical-network-note{
  margin-top:20px;
  padding:24px 27px;
  border-radius:18px;
  background:linear-gradient(120deg,#f7fafc,#fff 55%,#fbf4f7);
  border:1px solid #dce5ec;
}
.surgical-network-note h3{
  margin:7px 0 8px;
  color:var(--navy);
  font:700 1.22rem/1.55 var(--serif);
}
.surgical-network-note p{
  margin:0;
  color:#5d7082;
  font-size:.79rem;
  line-height:1.9;
}

.integrated-subspecialty{
  scroll-margin-top:120px;
  margin-top:28px;
  padding-top:74px;
  border-top:1px solid var(--line);
}
.integrated-subspecialty-head{
  margin-bottom:34px;
  padding:34px 38px;
  border-radius:22px;
  background:linear-gradient(135deg,#f6fafc,#fff 55%,#fbf5f7);
  border:1px solid #dce6ed;
}
.integrated-subspecialty-head h2{
  margin:8px 0 12px;
  color:var(--navy);
  font:700 clamp(1.75rem,3vw,2.35rem)/1.55 var(--serif);
}
.integrated-subspecialty-head p{
  max-width:790px;
  margin:0;
  color:#586b7d;
  line-height:1.95;
}
.integrated-subspecialty .subspecialty-intro{
  scroll-margin-top:120px;
}
.integrated-subspecialty .cards.group-cards{
  margin-bottom:48px;
}

@media(max-width:900px){
  .cross-specialist-grid{grid-template-columns:1fr 1fr}
  .cross-specialist-card:last-child{grid-column:1/-1}
}
@media(max-width:760px){
  .diagnostic-experts{grid-template-columns:1fr}
  .cross-specialist-grid{grid-template-columns:1fr}
  .cross-specialist-card:last-child{grid-column:auto}
  .cross-specialist-photo{min-height:210px}
  .integrated-subspecialty{padding-top:52px}
  .integrated-subspecialty-head{padding:26px 20px;border-radius:18px}
}


/* ==========================================================
   2026-09-28 / Five clinical strengths v2
   ========================================================== */
.lifecourse-cross-copy{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin:26px 0 22px;
}
.lifecourse-cross-copy>div{
  padding:19px 19px 18px;
  border:1px solid #dfe7ed;
  border-radius:16px;
  background:#fff;
}
.lifecourse-cross-copy span{
  color:var(--red);
  font-size:.57rem;
  font-weight:850;
  letter-spacing:.11em;
}
.lifecourse-cross-copy b{
  display:block;
  margin:7px 0 7px;
  color:var(--navy);
  font:700 .98rem/1.5 var(--serif);
}
.lifecourse-cross-copy p{
  margin:0;
  color:#647587;
  font-size:.73rem;
  line-height:1.82;
}
.strength-subheading{
  margin-top:42px;
  padding-top:34px;
  border-top:1px solid #dde6ec;
}
.strength-subheading h3{
  margin:7px 0 8px;
  color:var(--navy);
  font:700 1.45rem/1.55 var(--serif);
}
.strength-subheading p{
  margin:0 0 18px;
  color:#5e7183;
  line-height:1.9;
}

.diagnosis-bridge{
  margin:30px 0 22px;
  padding:22px 24px;
  border:1px solid #dce6ed;
  border-radius:17px;
  background:#fff;
}
.diagnosis-bridge h3{
  margin:7px 0 8px;
  color:var(--navy);
  font:700 1.2rem/1.55 var(--serif);
}
.diagnosis-bridge p{
  margin:0;
  color:#5d7082;
  font-size:.79rem;
  line-height:1.9;
}

.mental-care-intro{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
  gap:34px;
  align-items:start;
}
.mental-care-intro>div>p:not(.strength-bigcopy){
  color:#5d7082;
  line-height:1.95;
}
.mental-care-pillars{
  display:grid;
  gap:10px;
}
.mental-care-pillars>div{
  padding:18px 20px;
  border:1px solid #dce6ed;
  border-radius:16px;
  background:#fff;
}
.mental-care-pillars span{
  display:block;
  color:var(--red);
  font-size:.57rem;
  font-weight:850;
  letter-spacing:.12em;
}
.mental-care-pillars b{
  display:block;
  margin:5px 0 3px;
  color:var(--navy);
  font:700 1.05rem/1.45 var(--serif);
}
.mental-care-pillars p{
  margin:0;
  color:#728192;
  font-size:.69rem;
}

.mental-keyperson-card{
  display:grid;
  grid-template-columns:300px 1fr;
  overflow:hidden;
  margin-top:30px;
  border:1px solid #dbe5ec;
  border-radius:20px;
  background:#fff;
  box-shadow:0 9px 26px rgba(18,43,72,.055);
}
.mental-keyperson-photo{
  min-height:320px;
  display:grid;
  align-content:center;
  justify-items:center;
  background:
    radial-gradient(circle at 50% 38%,rgba(255,255,255,.82),transparent 16%),
    linear-gradient(140deg,#dde8ed,#d8dfe8 55%,#e8dfe6);
  color:#6d8290;
}
.mental-keyperson-photo::before{
  content:"";
  width:82px;height:82px;
  margin-bottom:13px;
  border:1px solid rgba(0,30,98,.13);
  border-radius:50%;
  background:rgba(255,255,255,.5);
}
.mental-keyperson-photo span{
  font-size:.64rem;
  font-weight:850;
  letter-spacing:.14em;
}
.mental-keyperson-photo small{font-size:.58rem}
.mental-keyperson-body{
  padding:30px 31px;
  align-self:center;
}
.mental-keyperson-body h3{
  margin:6px 0 5px;
  color:var(--navy);
  font:700 1.55rem/1.45 var(--serif);
}
.mental-keyperson-body>p:not(.cross-specialist-role){
  color:#5f7183;
  font-size:.8rem;
  line-height:1.95;
}
.mental-keyperson-body>a{
  display:inline-block;
  margin-top:14px;
  color:var(--red);
  font-size:.7rem;
  font-weight:800;
  border-bottom:1px solid currentColor;
}
.mental-scope-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
  margin-top:18px;
}
.mental-scope-grid>div{
  padding:18px 19px;
  border:1px solid #dfe7ed;
  border-radius:15px;
  background:linear-gradient(135deg,#fbfdfe,#fff);
}
.mental-scope-grid strong{
  display:block;
  margin-bottom:6px;
  color:var(--navy);
  font:700 .93rem/1.5 var(--serif);
}
.mental-scope-grid p{
  margin:0;
  color:#68798a;
  font-size:.72rem;
  line-height:1.78;
}

@media(max-width:760px){
  .lifecourse-cross-copy{grid-template-columns:1fr}
  .mental-care-intro{grid-template-columns:1fr}
  .mental-keyperson-card{grid-template-columns:1fr}
  .mental-keyperson-photo{min-height:220px}
  .mental-keyperson-body{padding:24px 21px}
  .mental-scope-grid{grid-template-columns:1fr}
}


/* ==========================================================
   2026-10-01 / care page updates: specialist assembly, integrated lifecourse, real photos
   ========================================================== */
.strengths-concept-figure{
  margin:34px auto 0;
  overflow:hidden;
  border:1px solid #dce7ee;
  border-radius:24px;
  background:#fff;
  box-shadow:0 10px 26px rgba(18,43,72,.05);
}
.strengths-concept-figure img{
  display:block;
  width:100%;
  height:auto;
}
.strengths-concept-figure figcaption{
  padding:16px 20px 18px;
  color:#59697c;
  font-size:.75rem;
  line-height:1.82;
  background:#fbfcfe;
}
.lifecourse-figure-inline{margin:26px 0 18px}
.strength-section-note{
  margin:0 0 24px;
  color:#4a5d70;
  line-height:2;
}
.expert-photo-placeholder.has-photo,
.mental-keyperson-photo.has-photo{
  position:relative;
  display:block;
  padding:0;
  overflow:hidden;
  background:#edf2f6;
}
.expert-photo-placeholder.has-photo::before,
.mental-keyperson-photo.has-photo::before{display:none}
.expert-photo-placeholder.has-photo img,
.mental-keyperson-photo.has-photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}
.mental-keyperson-photo.has-photo img{object-position:center center}
@media (max-width: 768px){
  .strengths-concept-figure{margin-top:26px}
  .strengths-concept-figure figcaption{padding:14px 16px 16px}
}


/* ==========================================================
   2026-10-01 / care page refinement v4
   ========================================================== */
/* 12 groups: 4 columns × 3 rows on desktop */
.strength-group-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
/* Real expert portraits should remain square and not crop into a wide strip. */
.expert-photo-placeholder.has-photo{
  aspect-ratio:1 / 1;
  height:auto;
  min-height:0;
  align-self:start;
}
.expert-photo-placeholder.has-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}
/* Keep the Bio/Psycho/Social boxes compact after removing explanatory copy. */
.mental-care-pillars>div{
  padding:16px 20px;
}
@media(max-width:1050px){
  .strength-group-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media(max-width:760px){
  .strength-group-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .expert-photo-placeholder.has-photo{
    aspect-ratio:1 / 1;
    height:auto;
    min-height:0;
  }
}
@media(max-width:470px){
  .strength-group-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}


/* ==========================================================
   2026-10-01 / care page refinement v5
   ========================================================== */
.strength-group-icon{
  min-height:128px;
  padding:14px 10px 12px;
}
.strength-group-icon span{
  margin-top:10px;
  color:#314a62;
  font-size:.84rem;
  font-weight:800;
  line-height:1.5;
  letter-spacing:.01em;
}
@media(max-width:760px){
  .strength-group-icon{
    min-height:118px;
    padding:12px 8px 10px;
  }
  .strength-group-icon span{
    font-size:.76rem;
    line-height:1.45;
  }
}
@media(max-width:470px){
  .strength-group-icon span{font-size:.72rem;}
}


/* ==========================================================
   2026-10-02 / care page refinement v6
   ========================================================== */
/* 01: make the 12 subspecialty icons and labels substantially more prominent. */
.strength-group-icon{
  min-height:168px;
  padding:18px 12px 16px;
}
.strength-group-icon img{
  width:72px;
  height:72px;
  object-fit:contain;
}
.strength-group-icon span{
  margin-top:13px;
  font-size:1.20rem;
  font-weight:800;
  line-height:1.4;
}
/* 05: after removing the right-side Bio/Psycho/Social boxes, use the full content width. */
.mental-care-intro{
  display:block;
}
.mental-care-intro>div{
  width:100%;
  max-width:none;
}
@media(max-width:760px){
  .strength-group-icon{
    min-height:145px;
    padding:15px 9px 13px;
  }
  .strength-group-icon img{
    width:64px;
    height:64px;
  }
  .strength-group-icon span{
    margin-top:10px;
    font-size:1.02rem;
  }
}
@media(max-width:470px){
  .strength-group-icon{
    min-height:132px;
  }
  .strength-group-icon img{
    width:58px;
    height:58px;
  }
  .strength-group-icon span{
    font-size:.94rem;
  }
}


/* ==========================================================
   2026-10-02 / care page specialist portraits update
   ========================================================== */
.cross-specialist-photo.has-photo{
  position:relative;
  display:block;
  padding:0;
  overflow:hidden;
  min-height:0;
  aspect-ratio:1 / 1;
  background:#edf2f6;
}
.cross-specialist-photo.has-photo::before{display:none}
.cross-specialist-photo.has-photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}


/* ==========================================================
   2026-10-03 / Care directory sidebar aligned with cluster.html
   ========================================================== */
.care-side{
  position:sticky;
  top:145px;
  align-self:start;
}
.care-side-jumps{
  margin-top:22px;
  padding:12px 10px 10px;
  border-radius:12px;
  background:#f5f8fa;
}
.care-side-jumps-title{
  margin:0 0 6px;
  padding:2px 3px 8px;
  color:var(--navy);
  font-size:.69rem;
  font-weight:850;
  line-height:1.45;
  letter-spacing:.04em;
}
.side .care-side-jumps a{
  display:flex;
  align-items:flex-start;
  gap:8px;
  padding:7px 3px;
  border-bottom:0;
  color:#536477;
  font-size:.69rem;
  line-height:1.4;
}
.side .care-side-jumps a:hover{
  color:var(--navy);
}
.care-side-jumps a span{
  flex:0 0 auto;
  color:var(--red);
  font:700 .62rem/1.45 Georgia,serif;
}
@media(max-width:1050px){
  .care-side{display:none;}
}

/* ==========================================================
   2026-10-03 / care sidebar: allow full page scrolling
   ========================================================== */
.care-side{
  position:static;
  top:auto;
  align-self:start;
}

/* ==========================================================
   2026-10-03 / care sidebar: keep visible on iPad/tablets
   ========================================================== */
@media (min-width: 701px) and (max-width: 1050px){
  .strengths-layout{
    grid-template-columns:170px minmax(0,1fr) !important;
    gap:26px !important;
    padding-top:52px;
  }
  .side.care-side{
    display:block !important;
    position:static !important;
    top:auto !important;
    align-self:start;
    min-width:0;
  }
  .side.care-side > a{
    padding:13px 7px;
    font-size:.76rem;
    line-height:1.5;
  }
  .care-side-jumps{
    margin-top:18px;
    padding:10px 8px 9px;
  }
  .care-side-jumps-title{
    font-size:.64rem;
  }
  .side .care-side-jumps a{
    padding:6px 2px;
    font-size:.64rem;
  }
  .care-side-jumps a span{
    font-size:.58rem;
  }
}


/* ==========================================================
   2026-10-03 / care mobile drawer navigation
   Desktop & tablet: existing left pane. Smartphone: drawer menu.
   ========================================================== */
.care-mobile-menu-trigger-wrap,
.care-mobile-drawer{display:none}

@media (max-width:700px){
  .care-mobile-menu-trigger-wrap{
    display:block;
    padding-top:18px;
  }
  .care-mobile-menu-button{
    display:flex;
    align-items:center;
    gap:11px;
    width:100%;
    padding:13px 16px;
    border:1px solid #d7e1e8;
    border-radius:12px;
    background:#fff;
    color:var(--navy);
    box-shadow:0 5px 16px rgba(15,45,76,.06);
    font:800 .86rem/1.2 var(--sans);
    text-align:left;
  }
  .care-mobile-menu-icon{
    display:grid;
    gap:4px;
    width:20px;
    flex:0 0 20px;
  }
  .care-mobile-menu-icon i{
    display:block;
    width:20px;
    height:2px;
    border-radius:2px;
    background:var(--navy);
  }
  .care-mobile-drawer{
    display:block;
    position:fixed;
    inset:0;
    z-index:1200;
    pointer-events:none;
    visibility:hidden;
  }
  .care-mobile-drawer-backdrop{
    position:absolute;
    inset:0;
    background:rgba(10,25,43,.42);
    opacity:0;
    transition:opacity .24s ease;
  }
  .care-mobile-drawer-panel{
    position:absolute;
    top:0;
    left:0;
    bottom:0;
    width:min(88vw,360px);
    max-width:360px;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    background:#fff;
    box-shadow:14px 0 34px rgba(12,33,55,.2);
    transform:translateX(-102%);
    transition:transform .28s ease;
    padding-bottom:max(24px,env(safe-area-inset-bottom));
  }
  .care-mobile-drawer.is-open{
    pointer-events:auto;
    visibility:visible;
  }
  .care-mobile-drawer.is-open .care-mobile-drawer-backdrop{opacity:1}
  .care-mobile-drawer.is-open .care-mobile-drawer-panel{transform:translateX(0)}
  .care-mobile-drawer-head{
    position:sticky;
    top:0;
    z-index:1;
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:62px;
    padding:12px 18px;
    border-bottom:1px solid var(--line);
    background:rgba(255,255,255,.97);
  }
  .care-mobile-drawer-head strong{
    color:var(--navy);
    font-size:.95rem;
    letter-spacing:.03em;
  }
  .care-mobile-drawer-close{
    width:38px;
    height:38px;
    border:0;
    border-radius:50%;
    background:#f1f5f8;
    color:var(--navy);
    font-size:1.5rem;
    line-height:1;
  }
  .care-mobile-nav{
    padding:5px 18px 28px;
  }
  .care-mobile-nav > a{
    display:block;
    padding:15px 4px;
    border-bottom:1px solid var(--line);
    color:#253c53;
    font-size:.88rem;
    line-height:1.45;
  }
  .care-mobile-nav > a.active{
    color:var(--red);
    font-weight:800;
  }
  .care-mobile-jumps{
    margin-top:20px;
    padding:13px 13px 10px;
    border-radius:12px;
    background:#f5f8fa;
  }
  .care-mobile-jumps-title{
    padding:2px 2px 9px;
    color:var(--navy);
    font-size:.72rem;
    font-weight:850;
  }
  .care-mobile-jumps a{
    display:flex;
    gap:9px;
    padding:8px 2px;
    color:#536477;
    font-size:.72rem;
    line-height:1.45;
  }
  .care-mobile-jumps a span{
    flex:0 0 auto;
    color:var(--red);
    font:700 .65rem/1.5 Georgia,serif;
  }
  body.care-mobile-menu-open{overflow:hidden}
}


/* 2026-10-08: subspecialty navigation links */
a.strength-group-icon{color:inherit;text-decoration:none;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
a.strength-group-icon:hover,a.strength-group-icon:focus-visible{transform:translateY(-2px);box-shadow:0 8px 20px rgba(18,43,72,.10);outline:none}
a.staff-group-badge{color:var(--navy);text-decoration:none;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}
a.staff-group-badge:hover,a.staff-group-badge:focus-visible{transform:translateY(-1px);box-shadow:0 6px 16px rgba(18,43,72,.10);outline:none}
.staff-card-featured a.staff-group-badge[data-group]{color:var(--navy)}
.subspecialty-main{min-width:0}
.subspecialty-page-intro{margin-bottom:24px}
.subspecialty-index-cards{margin-bottom:34px}
.subspecialty-detail-list{margin-top:10px}
@media(max-width:700px){.subspecialty-index-cards{margin-bottom:24px}}


/* 2026-10-08 / unified care directory sidebar */
.care-directory-layout{
  display:grid;
  grid-template-columns:210px minmax(0,1fr);
  gap:58px;
  padding:72px 0 110px;
}
.care-directory-layout .side.care-side{
  display:block;
  position:static;
  top:auto;
  align-self:start;
  min-width:0;
  border-top:3px solid var(--navy);
}
.care-directory-layout .side.care-side > a{
  display:block;
  padding:15px 10px;
  border-bottom:1px solid var(--line);
  font-size:.85rem;
  line-height:1.5;
}
.care-directory-layout .side.care-side > a.active{
  color:var(--red);
  font-weight:700;
}
@media (min-width:701px) and (max-width:1050px){
  .care-directory-layout{
    grid-template-columns:170px minmax(0,1fr) !important;
    gap:26px !important;
    padding-top:52px;
  }
  .care-directory-layout .side.care-side{display:block !important;}
  .care-directory-layout .side.care-side > a{
    padding:13px 7px;
    font-size:.76rem;
  }
}
@media (max-width:700px){
  .care-directory-layout{
    grid-template-columns:1fr !important;
    gap:0 !important;
    padding-top:36px;
  }
  .care-directory-layout .side.care-side{display:none !important;}
}


/* 2026-10-08: publication group badges link to research introductions */
.pub-group[href]{text-decoration:none;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.pub-group[href]:hover{transform:translateY(-1px);box-shadow:0 3px 10px rgba(8,38,84,.14);border-color:rgba(8,38,84,.26)}
.pub-group[href]:focus-visible{outline:2px solid var(--navy);outline-offset:2px}


/* ==========================================================
   Certified community clinics / 2026-10-08
   ========================================================== */
.certified-clinic-intro{margin:0 0 30px}
.certified-clinic-intro h2{margin:6px 0 16px}
.certified-clinic-lead{font-size:1.13rem;line-height:1.95;color:#17314a;font-weight:600}
.certified-clinic-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0 48px}
.certified-principle{position:relative;padding:24px 22px 22px;border:1px solid #dce7ef;border-radius:22px;background:linear-gradient(145deg,#fff 0%,#f8fbfd 100%);box-shadow:0 12px 28px rgba(14,52,83,.06)}
.certified-principle>span{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#092c6c;color:#fff;font-weight:800;font-size:.83rem;letter-spacing:.04em;margin-bottom:15px}
.certified-principle h3{margin:0 0 10px;font-family:var(--serif);font-size:1.08rem;color:#102f4b}
.certified-principle p{margin:0;font-size:.92rem;line-height:1.75;color:#506474}
.certified-clinic-section-head{margin:0 0 22px}
.certified-clinic-section-head h2{margin:6px 0 8px}
.certified-clinic-section-head p{margin:0;color:#607282}
.certified-clinic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.certified-clinic-card{display:flex;flex-direction:column;min-width:0;border:1px solid #dce7ef;border-radius:26px;background:#fff;overflow:hidden;box-shadow:0 16px 38px rgba(14,52,83,.075)}
.certified-clinic-card-head{padding:25px 26px 18px;background:linear-gradient(120deg,#f7fbff 0%,#fff 56%,#fff6f9 100%);border-bottom:1px solid #e3ecf2}
.certified-clinic-badge{display:inline-block;margin:0 0 10px;color:#315b7f;font-size:.72rem;font-weight:800;letter-spacing:.11em}
.certified-clinic-card h3{margin:0;font-family:var(--serif);font-size:1.42rem;line-height:1.45;color:#102d49}
.certified-clinic-address{margin:0;padding:18px 26px 14px;color:#536b7d;font-size:.92rem;line-height:1.65}
.certified-clinic-person{display:flex;align-items:baseline;gap:13px;margin:0 26px 18px;padding:13px 16px;border-radius:14px;background:#f3f7fa}
.certified-clinic-person span{font-size:.76rem;font-weight:800;letter-spacing:.05em;color:#637789}
.certified-clinic-person strong{font-family:var(--serif);font-size:1.13rem;color:#163957}
.certified-clinic-career{padding:0 26px 22px;flex:1}
.certified-clinic-career h4{margin:0 0 11px;color:#173a57;font-size:.9rem;letter-spacing:.06em}
.certified-clinic-career dl{margin:0;border-top:1px solid #e5edf2}
.certified-clinic-career dl>div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;padding:9px 0;border-bottom:1px solid #e5edf2}
.certified-clinic-career dt{font-size:.8rem;font-weight:800;color:#53718a;font-variant-numeric:tabular-nums}
.certified-clinic-career dd{margin:0;font-size:.88rem;line-height:1.55;color:#3e5568}
.certified-clinic-link{display:flex;justify-content:space-between;align-items:center;margin:0 26px 25px;padding:12px 15px;border-radius:12px;background:#092c6c;color:#fff!important;text-decoration:none;font-weight:800;font-size:.88rem;transition:transform .18s ease,box-shadow .18s ease}
.certified-clinic-link:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(9,44,108,.18)}
.certified-clinic-note{margin:34px 0 0;padding:19px 22px;border-left:4px solid #8ca9bd;border-radius:0 14px 14px 0;background:#f5f8fa;color:#4c6375}
.certified-clinic-note strong{display:block;margin-bottom:6px;color:#173957}
.certified-clinic-note p{margin:0;line-height:1.75;font-size:.88rem}
@media(max-width:900px){.certified-clinic-principles{grid-template-columns:1fr}.certified-clinic-grid{grid-template-columns:1fr}}
@media(max-width:600px){.certified-clinic-card-head,.certified-clinic-career{padding-left:20px;padding-right:20px}.certified-clinic-address{padding-left:20px;padding-right:20px}.certified-clinic-person{margin-left:20px;margin-right:20px}.certified-clinic-link{margin-left:20px;margin-right:20px}.certified-clinic-career dl>div{grid-template-columns:82px minmax(0,1fr)}}


/* 2026-10-15 index prototype: three illustrated entry points */
.hero-card.hero-rotating .hero-top-actions .btn.referral-cta{
  background:rgba(255,255,255,.94);
  color:var(--navy);
  border-color:rgba(255,255,255,.96);
}
.hero-card.hero-rotating .hero-top-actions .btn.referral-cta:hover{
  filter:brightness(1.05);
}
.home-gateway-section{
  padding-top:78px;
}
.home-gateway-head{
  margin-bottom:28px;
}
.home-gateway-panel{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
  gap:28px;
  align-items:stretch;
}
.home-gateway-figure{
  margin:0;
  padding:30px;
  background:linear-gradient(180deg,#ffffff,#f7fafc);
  border:1px solid var(--line);
  box-shadow:0 14px 38px rgba(12,40,68,.08);
}
.home-gateway-figure img{
  width:100%;
  height:auto;
}
.home-gateway-figure figcaption{
  margin-top:14px;
  color:var(--muted);
  font-size:.78rem;
  line-height:1.8;
}
.home-gateway-actions{
  display:grid;
  gap:16px;
}
.home-gateway-card{
  display:block;
  min-height:0;
  padding:24px 24px 22px;
  border:1px solid var(--line);
  border-left-width:6px;
  background:#fff;
  box-shadow:0 10px 28px rgba(12,40,68,.06);
  transition:transform .2s ease, box-shadow .2s ease;
}
.home-gateway-card:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 36px rgba(12,40,68,.12);
}
.home-gateway-card small{
  display:block;
  margin-bottom:8px;
  color:var(--red);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.12em;
}
.home-gateway-card strong{
  display:block;
  color:var(--navy);
  font:700 1.35rem/1.6 var(--serif);
}
.home-gateway-card span{
  display:block;
  margin-top:8px;
  color:var(--muted);
  font-size:.88rem;
  line-height:1.85;
}
.home-gateway-card::after{
  content:'→';
  display:block;
  margin-top:10px;
  color:var(--navy);
  font-weight:800;
}
.home-gateway-card.patient{border-left-color:#f0c9cf}
.home-gateway-card.referral{border-left-color:#bfdcc7}
.home-gateway-card.training{border-left-color:#bdd4f3}
@media(max-width:980px){
  .home-gateway-panel{
    grid-template-columns:1fr;
  }
}
@media(max-width:600px){
  .home-gateway-section{
    padding-top:52px;
  }
  .home-gateway-figure{
    padding:18px;
  }
  .home-gateway-card{
    padding:20px 18px 18px;
  }
  .home-gateway-card strong{
    font-size:1.18rem;
  }
}


/* 2026-10-15 index quick illustrated gateway cards */
.quick.quick-illustrated{
  margin-top:-58px;
}
.gateway-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
}
.gateway-tile{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  align-items:stretch;
  gap:0;
  padding:22px 28px 24px;
  min-height:100%;
}
.gateway-tile i{
  position:absolute;
  right:30px;
  top:26px;
}
.gateway-visual{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:180px;
  margin-bottom:14px;
}
.gateway-visual img{
  width:100%;
  max-width:250px;
  height:auto;
  display:block;
}
.gateway-copy{
  margin-top:auto;
}
.gateway-copy small{
  display:block;
  margin-bottom:6px;
}
.gateway-copy strong{
  display:block;
  font-size:1.3rem;
  line-height:1.55;
}
.gateway-copy span{
  display:block;
  margin-top:8px;
  color:var(--muted);
  font-size:.84rem;
  line-height:1.75;
}
.gateway-tile.patient .gateway-copy small{color:#cc5d70}
.gateway-tile.referral .gateway-copy small{color:#4d9b66}
.gateway-tile.training .gateway-copy small{color:#4e87dc}
@media(max-width:1100px){
  .gateway-tile{
    padding:20px 20px 22px;
  }
  .gateway-copy strong{
    font-size:1.15rem;
  }
}
@media(max-width:900px){
  .quick.quick-illustrated{margin-top:0}
  .gateway-grid{grid-template-columns:1fr}
  .gateway-tile{padding:20px 20px 22px}
  .gateway-tile i{top:22px; right:22px}
  .gateway-visual{min-height:150px}
  .gateway-visual img{max-width:220px}
}


/* 2026-10-15 compact illustrated homepage gateway */
.quick.quick-illustrated{
  margin-top:-34px;
}
.quick.quick-illustrated .gateway-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
  box-shadow:0 14px 45px rgba(21,49,72,.15);
}
.quick.quick-illustrated .gateway-tile{
  position:relative;
  display:grid;
  grid-template-columns:112px minmax(0,1fr) 20px;
  gap:17px;
  align-items:center;
  min-height:156px;
  padding:17px 20px 17px 16px;
  background:#fff;
  border-right:1px solid var(--line);
}
.quick.quick-illustrated .gateway-tile:last-child{
  border-right:0;
}
.quick.quick-illustrated .gateway-tile:hover{
  background:#fbfdff;
}
.quick.quick-illustrated .gateway-visual{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:0;
  margin:0;
}
.quick.quick-illustrated .gateway-visual img{
  width:108px;
  height:108px;
  max-width:none;
  object-fit:cover;
  border-radius:50%;
}
.quick.quick-illustrated .gateway-copy{
  min-width:0;
  margin:0;
}
.quick.quick-illustrated .gateway-copy small{
  display:block;
  margin:0 0 5px;
  font-size:.61rem;
  line-height:1.35;
  font-weight:800;
  letter-spacing:.09em;
}
.quick.quick-illustrated .gateway-copy strong{
  display:block;
  margin:0;
  color:var(--navy);
  font:800 1.02rem/1.55 var(--serif);
}
.quick.quick-illustrated .gateway-copy span{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:.73rem;
  line-height:1.55;
}
.quick.quick-illustrated .gateway-tile i{
  position:static;
  align-self:center;
  justify-self:end;
  color:#92a0ae;
  font-size:1.25rem;
}
.quick.quick-illustrated .gateway-tile.patient .gateway-copy small{color:#cc5d70}
.quick.quick-illustrated .gateway-tile.referral .gateway-copy small{color:#4d9b66}
.quick.quick-illustrated .gateway-tile.training .gateway-copy small{color:#4e87dc}

@media(max-width:1080px) and (min-width:701px){
  .quick.quick-illustrated .gateway-tile{
    grid-template-columns:88px minmax(0,1fr) 18px;
    gap:13px;
    min-height:142px;
    padding:15px 15px 15px 12px;
  }
  .quick.quick-illustrated .gateway-visual img{
    width:84px;
    height:84px;
  }
  .quick.quick-illustrated .gateway-copy strong{
    font-size:.92rem;
  }
  .quick.quick-illustrated .gateway-copy span{
    font-size:.69rem;
  }
}

@media(max-width:700px){
  .quick.quick-illustrated{
    margin-top:0;
    padding:14px 0 4px;
    background:#f6f9fb;
  }
  .quick.quick-illustrated .gateway-grid{
    grid-template-columns:1fr;
    gap:10px;
    box-shadow:none;
  }
  .quick.quick-illustrated .gateway-tile{
    grid-template-columns:86px minmax(0,1fr) 18px;
    gap:14px;
    min-height:116px;
    padding:13px 14px 13px 12px;
    border:1px solid var(--line);
    border-radius:16px;
    box-shadow:0 6px 20px rgba(21,49,72,.06);
  }
  .quick.quick-illustrated .gateway-tile:last-child{
    border-right:1px solid var(--line);
  }
  .quick.quick-illustrated .gateway-visual img{
    width:82px;
    height:82px;
  }
  .quick.quick-illustrated .gateway-copy small{
    font-size:.56rem;
  }
  .quick.quick-illustrated .gateway-copy strong{
    font-size:.94rem;
    line-height:1.45;
  }
  .quick.quick-illustrated .gateway-copy span{
    font-size:.68rem;
    margin-top:3px;
  }
}

@media(max-width:390px){
  .quick.quick-illustrated .gateway-tile{
    grid-template-columns:72px minmax(0,1fr) 16px;
    gap:11px;
  }
  .quick.quick-illustrated .gateway-visual img{
    width:68px;
    height:68px;
  }
  .quick.quick-illustrated .gateway-copy span{
    display:none;
  }
}


/* 2026-10-15 referral page prototype */
.referral-page-content{min-width:0}
.referral-intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);gap:34px;align-items:center;margin:0 0 48px;padding:34px;background:linear-gradient(135deg,#f8fbfe,#fff 58%,#f4fbf6);border:1px solid #dfe9ef;border-radius:26px}
.referral-intro h2{margin:7px 0 18px}
.referral-lead{font-size:1.08rem!important;line-height:1.95!important;color:#17314a!important;font-weight:600}
.referral-intro-visual{display:flex;align-items:center;justify-content:center}
.referral-intro-visual img{width:min(100%,300px);height:auto}
.referral-section-head{margin:0 0 22px}.referral-section-head h2{margin:7px 0 10px}.referral-section-head p{margin:0;color:#5d7082}
.referral-route-section,.referral-urgent-section,.referral-picu-section,.referral-care-links{margin:0 0 56px}
.referral-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.referral-route-card{position:relative;padding:28px;border:1px solid #dce6ed;border-radius:22px;background:#fff;box-shadow:0 12px 28px rgba(15,49,78,.06)}
.referral-route-no{display:block;margin-bottom:12px;color:#9caeba;font:italic 1.7rem/1 Georgia,serif}
.referral-route-card h3{margin:0 0 8px!important;color:#123754!important;font:700 1.35rem/1.5 var(--serif)!important}
.referral-route-meta{margin:0 0 12px;color:#315a7c!important;font-size:.82rem!important;font-weight:800}
.referral-phone-number{margin:8px 0 12px!important;font:700 clamp(1.7rem,3.2vw,2.45rem)/1.2 var(--sans)!important;color:var(--navy)!important;letter-spacing:.02em}
.referral-action{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:12px;padding:0 18px;border-radius:12px;font-weight:800;font-size:.88rem}.referral-action-primary{background:var(--navy);color:#fff!important}
.referral-hotline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.referral-hotline-card{padding:28px;border-radius:22px;color:#fff;box-shadow:0 14px 30px rgba(18,43,72,.12)}
.referral-hotline-card.pediatric{background:linear-gradient(135deg,#9f1b16,#cf352d)}
.referral-hotline-card.surgery{background:linear-gradient(135deg,#06285f,#123f88)}
.referral-hotline-card small{display:block;font-size:.72rem;font-weight:800;letter-spacing:.08em;color:rgba(255,255,255,.85)}
.referral-hotline-card h3{margin:9px 0 8px!important;color:#fff!important;font:700 1.35rem/1.5 var(--serif)!important}
.referral-hotline-number{margin:0 0 10px!important;font:800 clamp(1.65rem,3.2vw,2.35rem)/1.2 var(--sans)!important;color:#fff!important}.referral-hotline-number a{color:#fff}
.referral-hotline-card p:last-child{margin-bottom:0;color:rgba(255,255,255,.88)!important;font-size:.86rem}
.referral-picu-card{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:30px;align-items:center;padding:32px;border:1px solid #e1c8c5;border-radius:24px;background:linear-gradient(120deg,#fff7f6,#fff);box-shadow:0 14px 34px rgba(127,39,28,.07)}
.referral-picu-card h2{margin:7px 0 12px}.referral-picu-contact{padding:24px;border-radius:18px;background:#9e241b;color:#fff;text-align:center}.referral-picu-contact small{display:block;font-size:.72rem;font-weight:800;letter-spacing:.08em}.referral-picu-contact strong{display:block;margin-top:4px;font:700 1.15rem/1.5 var(--serif)}.referral-picu-contact a{display:block;margin:8px 0;color:#fff;font:800 1.75rem/1.25 var(--sans)}.referral-picu-contact span{font-size:.78rem;line-height:1.55;color:#fff1ef}
.referral-care-main{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:16px;padding:27px 28px;border-radius:22px;background:linear-gradient(120deg,#082d6e,#001e62);color:#fff;box-shadow:0 12px 28px rgba(0,30,98,.13)}.referral-care-main small{display:block;margin-bottom:6px;color:#f1c8d5;font-size:.68rem;font-weight:800;letter-spacing:.12em}.referral-care-main strong{display:block;font:700 1.45rem/1.5 var(--serif)}.referral-care-main span{display:block;margin-top:6px;color:#dfe8f2;font-size:.86rem;line-height:1.75}.referral-care-main i{font-style:normal;font-size:1.65rem}
.referral-care-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.referral-care-grid a{padding:20px 21px;border:1px solid #dde7ee;border-radius:16px;background:#fff}.referral-care-grid strong{display:block;color:#143a59;font:700 1.05rem/1.5 var(--serif)}.referral-care-grid span{display:block;margin-top:5px;color:#617486;font-size:.8rem}
.referral-note{margin-top:8px;padding:18px 22px;border-left:4px solid #8199aa;border-radius:0 12px 12px 0;background:#f5f8fa}.referral-note strong{display:block;margin-bottom:4px;color:#173957}.referral-note p{margin:0!important;color:#52697a!important;font-size:.86rem!important}
@media(max-width:900px){.referral-intro,.referral-picu-card{grid-template-columns:1fr}.referral-route-grid,.referral-hotline-grid,.referral-care-grid{grid-template-columns:1fr}.referral-intro-visual{order:-1}.referral-intro-visual img{max-width:220px}}
@media(max-width:600px){.referral-intro{padding:24px 20px;border-radius:20px}.referral-route-card,.referral-hotline-card,.referral-picu-card{padding:22px 19px}.referral-hotline-number,.referral-phone-number{font-size:1.55rem!important}.referral-picu-contact{padding:20px 14px}.referral-picu-contact a{font-size:1.5rem}.referral-care-main{padding:22px 20px}.referral-care-main strong{font-size:1.25rem}}


/* 2026-10-15 referral hotline privacy: do not publish hotline numbers */
.referral-hotline-private{
  margin:10px 0 12px!important;
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:12px;
  background:rgba(255,255,255,.10);
  color:#fff!important;
  font-size:.86rem!important;
  font-weight:800;
  line-height:1.6;
}
.referral-picu-private{
  display:block;
  margin:10px 0 8px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.32);
  border-radius:10px;
  color:#fff6f4!important;
  font-size:.82rem!important;
  font-weight:800;
  line-height:1.55;
}
.referral-hotline-inquiry{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:26px;
  align-items:center;
  margin-top:24px;
  padding:28px 30px;
  border:1px solid #ccdbe7;
  border-left:6px solid var(--navy);
  border-radius:18px;
  background:linear-gradient(120deg,#f4f8fb,#fff);
  box-shadow:0 12px 30px rgba(18,43,72,.07);
}
.referral-hotline-inquiry h3{
  margin:8px 0 10px!important;
  color:var(--navy)!important;
  font:700 1.25rem/1.5 var(--serif)!important;
}
.referral-hotline-inquiry p{
  margin:7px 0!important;
  color:#4f6274!important;
  font-size:.9rem!important;
  line-height:1.85!important;
}
.referral-hotline-inquiry small{
  display:block;
  margin-top:10px;
  color:#738393;
  font-size:.76rem;
  line-height:1.7;
}
.referral-inquiry-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:0 20px;
  border-radius:10px;
  background:var(--navy);
  color:#fff!important;
  font-size:.82rem;
  font-weight:800;
  white-space:nowrap;
}
.referral-inquiry-button:hover{filter:brightness(1.08)}
@media(max-width:800px){
  .referral-hotline-inquiry{grid-template-columns:1fr;padding:24px 20px}
  .referral-inquiry-button{width:100%}
}

.referral-hotline-shared-note{
  margin:16px 0 0;
  padding:14px 18px;
  border-left:4px solid var(--navy);
  background:#f4f7fa;
  color:#40536a;
  font-size:.88rem;
  line-height:1.8;
}


/* 2026-10-15 referral hotline privacy annotation */
.referral-privacy-note{
  margin:10px 0 18px!important;
  color:#788896!important;
  font-size:.78rem!important;
  line-height:1.7!important;
}


/* 2026-10-15 residency top prototype — structure follows the existing recruitment page */
.residency-current-hero .education-hero-copy{max-width:830px}
.residency-current-hero .education-hero-copy h1{letter-spacing:.08em}
.residency-hero-actions{gap:10px}
.residency-facts .recruit-fact-grid>div:last-child strong span{font-size:.8rem}
.residency-index{padding:58px 0 68px;background:#fff;border-bottom:1px solid var(--line)}
.residency-index-head{max-width:800px;margin-bottom:26px}
.residency-index-head h2{margin:10px 0 8px;color:var(--navy);font:700 2rem/1.5 var(--serif)}
.residency-index-head p{margin:0;color:var(--muted)}
.residency-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.residency-index-grid a{display:flex;align-items:center;gap:14px;min-height:78px;padding:16px 18px;background:#f7fafc;border:1px solid var(--line);transition:.2s}
.residency-index-grid a:hover{transform:translateY(-2px);background:#fff;box-shadow:0 10px 28px rgba(18,43,72,.08)}
.residency-index-grid span{flex:none;color:#9eafbd;font:700 1.35rem/1 Georgia,serif}
.residency-index-grid strong{color:var(--navy);font-size:.9rem;line-height:1.6}
.residency-long-section{scroll-margin-top:140px}
.residency-copy-wide{max-width:980px;color:#4d5f72}
.residency-copy-wide p{margin:0 0 18px;line-height:2}
.residency-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px}
.residency-feature-grid article{padding:28px 26px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--navy)}
.residency-feature-grid article>strong{display:block;margin-bottom:12px;color:#d9e4ec;font:700 2.3rem/1 Georgia,serif}
.residency-feature-grid h3,.residency-career-grid h3,.residency-compare-grid h3,.residency-worklife-grid h3{margin:0 0 10px;color:var(--navy);font:700 1.15rem/1.6 var(--serif)}
.residency-feature-grid p,.residency-career-grid p,.residency-compare-grid p,.residency-worklife-grid p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.85}
.residency-feature-grid a{display:inline-block;margin-top:18px;color:var(--red);font-size:.8rem;font-weight:700}
.residency-data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px}
.residency-data-grid figure,.residency-figure-grid figure{margin:0;padding:20px;background:#fff;border:1px solid var(--line)}
.residency-data-grid img{width:100%;height:330px;object-fit:contain}
.residency-data-grid figcaption,.residency-figure-grid figcaption{padding-top:10px;color:var(--muted);font-size:.75rem}
.residency-figure-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:34px}
.residency-figure-grid img{width:100%;height:390px;object-fit:contain}
.residency-section-actions{display:flex;flex-wrap:wrap;gap:24px;margin-top:24px}
.residency-career-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:30px}
.residency-career-grid article{padding:22px 18px;background:#f6f9fb;border:1px solid var(--line)}
.residency-career-figure{margin:28px 0 0;padding:20px;border:1px solid var(--line);background:#fff}
.residency-career-figure img{width:100%;max-height:520px;object-fit:contain}
.residency-compare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}
.residency-compare-grid article{padding:28px 25px;background:#fff;border:1px solid var(--line)}
.residency-compare-grid article>span{display:block;margin-bottom:10px;color:var(--red);font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.residency-key-question{margin:30px 0 0;padding:24px 28px;border-left:4px solid #c7a246;background:#fff;color:var(--navy);font:600 1.12rem/1.9 var(--serif)}
.residency-worklife-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}
.residency-worklife-grid article{padding:26px 24px;background:#f7fafc;border:1px solid var(--line)}
.residency-apply-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.residency-apply-grid>a{display:flex;flex-direction:column;min-height:250px;padding:28px 26px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--navy);transition:.2s}
.residency-apply-grid>a:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(12,40,68,.10)}
.residency-apply-grid small{color:var(--red);font-size:.68rem;font-weight:800;letter-spacing:.12em}
.residency-apply-grid strong{display:block;margin-top:12px;color:var(--navy);font:700 1.2rem/1.55 var(--serif)}
.residency-apply-grid span{display:block;margin-top:12px;color:var(--muted);font-size:.86rem;line-height:1.85}
.residency-apply-grid b{margin-top:auto;padding-top:20px;color:var(--red);font-size:.8rem}
@media(max-width:1050px){
  .residency-career-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .residency-data-grid img{height:280px}
  .residency-figure-grid img{height:320px}
}
@media(max-width:820px){
  .residency-index-grid,.residency-feature-grid,.residency-compare-grid,.residency-worklife-grid,.residency-apply-grid{grid-template-columns:1fr 1fr}
  .residency-figure-grid,.residency-data-grid{grid-template-columns:1fr}
  .residency-data-grid img,.residency-figure-grid img{height:auto}
}
@media(max-width:600px){
  .residency-index{padding:42px 0 50px}
  .residency-index-head h2{font-size:1.6rem}
  .residency-index-grid,.residency-feature-grid,.residency-career-grid,.residency-compare-grid,.residency-worklife-grid,.residency-apply-grid{grid-template-columns:1fr}
  .residency-index-grid a{min-height:66px}
  .residency-feature-grid article,.residency-compare-grid article,.residency-worklife-grid article,.residency-apply-grid>a{padding:22px 20px}
  .residency-key-question{padding:20px 20px;font-size:1rem}
}


/* 2026-10-15 residency split-page prototype */
.recruit-subnav-expanded{overflow-x:auto;justify-content:center;scrollbar-width:thin}
.recruit-subnav-expanded a{padding:13px 15px;font-size:.72rem}
.residency-branch-index{padding:68px 0 78px}
.residency-branch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.residency-branch-grid>a{position:relative;min-height:265px;padding:28px 28px 26px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--navy);box-shadow:0 10px 30px rgba(18,43,72,.055);transition:.2s}
.residency-branch-grid>a:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(18,43,72,.11)}
.residency-branch-grid>a>span{display:block;color:#d8e3eb;font:700 2.4rem/1 Georgia,serif}
.residency-branch-grid>a>small{display:block;margin-top:17px;color:var(--red);font-size:.66rem;font-weight:800;letter-spacing:.12em}
.residency-branch-grid>a>strong{display:block;margin-top:7px;color:var(--navy);font:700 1.22rem/1.6 var(--serif)}
.residency-branch-grid>a>p{margin:12px 0 36px;color:var(--muted);font-size:.86rem;line-height:1.85}
.residency-branch-grid>a>b{position:absolute;left:28px;bottom:24px;color:var(--navy);font-size:.78rem}
.residency-branch-secondary{margin-top:20px}
.residency-branch-secondary a{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 28px;background:#f4f8fb;border:1px solid var(--line)}
.residency-branch-secondary strong{color:var(--navy);font:700 1.15rem/1.5 var(--serif)}
.residency-branch-secondary span{color:var(--blue);font-size:.82rem;font-weight:700}
.residency-detail-hero{padding:78px 0 64px;background:linear-gradient(135deg,#f4f8fb 0%,#fff 68%);border-bottom:1px solid var(--line)}
.residency-detail-hero h1{margin:12px 0 14px;color:var(--navy);font:600 clamp(2.25rem,4.8vw,3.9rem)/1.4 var(--serif)}
.residency-detail-hero p{max-width:760px;margin:0;color:#56687a;font-size:1rem;line-height:1.95}
.residency-detail-pager{border-top:1px solid var(--line);background:#f7fafc}
.residency-detail-pager .wrap{display:flex;justify-content:space-between;gap:30px;padding-top:24px;padding-bottom:24px}
.residency-detail-pager a{color:var(--navy);font-size:.82rem;font-weight:700}
.residency-detail-pager .next{text-align:right;margin-left:auto}
@media(max-width:1100px){
  .recruit-subnav-expanded{justify-content:flex-start}
  .residency-branch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .recruit-subnav-expanded{top:72px}
  .recruit-subnav-expanded a{padding:11px 14px;font-size:.68rem}
  .residency-branch-index{padding:48px 0 58px}
  .residency-branch-grid{grid-template-columns:1fr}
  .residency-branch-grid>a{min-height:0;padding:23px 21px 58px}
  .residency-branch-grid>a>b{left:21px;bottom:20px}
  .residency-branch-secondary a{align-items:flex-start;flex-direction:column;gap:8px;padding:20px}
  .residency-detail-hero{padding:56px 0 48px}
  .residency-detail-pager .wrap{flex-direction:column;gap:12px}
  .residency-detail-pager .next{text-align:left;margin-left:0}
}


/* 2026-10-16 education page refresh */
.hero-card.education-hero{
  --hero-image:url('heroes/hero-education-residency-20261016.jpg');
  --hero-position:center 52%;
}
.education-hero::before{background:none !important}
.education-hero-renewed{min-height:620px}
.education-hero-renewed .recruit-hero-inner{
  min-height:620px;
  padding:0 !important;
}
.education-hero-renewed .recruit-kicker{
  top:20px;
  left:0;
  font-size:.75rem;
  letter-spacing:.22em;
}
.education-hero-renewed .education-hero-actions{
  top:46px;
  left:0;
  gap:12px;
}
.education-hero-renewed .education-hero-actions .btn{
  min-height:54px;
  padding:0 26px;
  font-size:.92rem;
  letter-spacing:.01em;
}
.education-hero-renewed .education-hero-actions .btn.primary{
  background:var(--red) !important;
  border-color:var(--red) !important;
  color:#fff !important;
}
.education-hero-renewed .education-visit-btn{
  background:var(--navy) !important;
  border-color:var(--navy) !important;
  color:#fff !important;
}
.education-hero-renewed .education-hero-copy{
  max-width:980px;
  bottom:18px;
}
.education-hero-renewed .education-hero-copy h1{
  margin:0 !important;
  color:#fff !important;
  font-family:var(--serif);
  font-weight:500;
  font-size:clamp(3rem,6vw,5.4rem);
  line-height:1.2;
  letter-spacing:.08em;
  text-shadow:0 4px 10px rgba(0,0,0,.35),0 10px 28px rgba(0,0,0,.28);
}
.education-hero-renewed .education-hero-copy p{
  margin-top:16px;
  max-width:840px;
  font-size:1rem;
  line-height:1.8;
  color:#fff !important;
  text-shadow:0 2px 8px rgba(0,0,0,.48),0 0 18px rgba(0,0,0,.3);
}
.residency-facts .recruit-fact-grid strong,
.residency-facts .recruit-fact-grid p,
.residency-gateway-head h2,
.residency-entry-card strong,
.residency-entry-card b{
  color:var(--navy);
}
.residency-gateway-section{
  padding:56px 0 74px;
}
.residency-gateway-head{
  margin-bottom:28px;
}
.residency-gateway-head p{
  max-width:760px;
  color:#586779;
}
.residency-entry-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}
.residency-entry-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:214px;
  padding:18px 18px 18px;
  border-radius:22px;
  border:1px solid rgba(0,30,98,.12);
  box-shadow:0 10px 30px rgba(18,43,72,.07);
  overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease;
}
.residency-entry-card:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 36px rgba(18,43,72,.12);
}
.residency-entry-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(255,255,255,.84));
  z-index:0;
}
.residency-entry-card>*{position:relative;z-index:1}
.residency-entry-card:nth-child(1){background:linear-gradient(135deg,#fff5ee,#f8efe7 52%,#f5f1ff)}
.residency-entry-card:nth-child(2){background:linear-gradient(135deg,#f7f2ff,#f3f8ff 58%,#fff4f6)}
.residency-entry-card:nth-child(3){background:linear-gradient(135deg,#eef7ff,#f3fbff 56%,#f8f4ff)}
.residency-entry-card:nth-child(4){background:linear-gradient(135deg,#fff8ef,#fbf4ff 55%,#f4fbff)}
.residency-entry-card:nth-child(5){background:linear-gradient(135deg,#f4f8ff,#fff7f1 54%,#f7f0ff)}
.residency-entry-number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  margin-bottom:16px;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(0,30,98,.12);
  color:var(--red);
  font:700 .78rem/1 Georgia,serif;
  letter-spacing:.04em;
}
.residency-entry-card strong{
  display:block;
  margin-bottom:10px;
  font:700 1.14rem/1.45 var(--serif);
}
.residency-entry-card p{
  margin:0 0 18px;
  color:#536173;
  font-size:.82rem;
  line-height:1.8;
  flex:1;
}
.residency-entry-card b{
  font-size:.78rem;
  color:var(--navy);
}
@media(max-width:1180px){
  .residency-entry-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .education-hero-renewed{min-height:590px}
  .education-hero-renewed .recruit-hero-inner{min-height:590px}
  .education-hero-renewed .recruit-kicker{top:18px}
  .education-hero-renewed .education-hero-actions{top:44px;gap:10px}
  .education-hero-renewed .education-hero-copy{bottom:16px;max-width:92%}
  .education-hero-renewed .education-hero-copy h1{font-size:clamp(2.8rem,7vw,4.3rem)}
  .residency-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .hero-card.education-hero{--hero-position:center 46%}
  .education-hero-renewed{min-height:540px}
  .education-hero-renewed .recruit-hero-inner{min-height:540px}
  .education-hero-renewed .recruit-kicker{top:14px;font-size:.68rem}
  .education-hero-renewed .education-hero-actions{top:38px;left:0;right:0;gap:8px;flex-wrap:wrap}
  .education-hero-renewed .education-hero-actions .btn{min-height:46px;padding:0 14px;font-size:.8rem;flex:0 0 auto}
  .education-hero-renewed .education-hero-copy{bottom:12px;max-width:100%}
  .education-hero-renewed .education-hero-copy h1{font-size:clamp(2.3rem,10vw,3rem);line-height:1.28;letter-spacing:.06em}
  .education-hero-renewed .education-hero-copy p{margin-top:10px;font-size:.87rem;line-height:1.7;max-width:100%}
  .residency-gateway-section{padding:42px 0 58px}
  .residency-entry-grid{grid-template-columns:1fr;gap:12px}
  .residency-entry-card{min-height:0;padding:17px 16px 18px;border-radius:18px}
  .residency-entry-number{width:36px;height:36px;margin-bottom:12px}
}


/* 2026-10-16 education page: restore five-button navigation and hero framing */
.recruit-primary-nav{
  width:min(calc(100% - 32px),1480px);
  margin:16px auto 0;
}
.recruit-primary-nav-inner{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}
.recruit-primary-nav a{
  min-width:0;
  min-height:62px;
  padding:12px 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  border:1px solid rgba(0,30,98,.08);
  border-radius:15px;
  color:var(--navy);
  font:700 clamp(.9rem,1.15vw,1.12rem)/1.35 var(--sans);
  letter-spacing:.01em;
  box-shadow:0 7px 22px rgba(0,30,98,.055);
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.recruit-primary-nav a:nth-child(1){background:linear-gradient(135deg,#eaf3ff 0%,#dfeafc 52%,#e9f4ff 100%)}
.recruit-primary-nav a:nth-child(2){background:linear-gradient(135deg,#eef0ff 0%,#e5edff 48%,#e8f5fa 100%)}
.recruit-primary-nav a:nth-child(3){background:linear-gradient(135deg,#e6f2ff 0%,#dfefff 48%,#edf0ff 100%)}
.recruit-primary-nav a:nth-child(4){background:linear-gradient(135deg,#e9f5fb 0%,#e4efff 50%,#eff0ff 100%)}
.recruit-primary-nav a:nth-child(5){background:linear-gradient(135deg,#edf1ff 0%,#e2ecff 50%,#e9f5fb 100%)}
.recruit-primary-nav a:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 28px rgba(0,30,98,.10);
  filter:saturate(1.04);
}
.hero-card.education-hero.education-hero-renewed{
  --hero-image:url('heroes/hero-education-residency-wide-20261016.jpg');
  --hero-position:center center;
  min-height:0 !important;
  aspect-ratio:1480 / 610;
  display:grid !important;
  align-items:stretch !important;
  margin-top:14px;
}
.hero-card.education-hero.education-hero-renewed::before{
  background:var(--hero-image) var(--hero-position)/cover no-repeat !important;
  filter:saturate(1.02) brightness(1.01) !important;
  transform:scale(1.005) !important;
}
.hero-card.education-hero.education-hero-renewed .hero-edge-blur{
  background:var(--hero-image) var(--hero-position)/cover no-repeat !important;
}
.education-hero-renewed .recruit-hero-inner{
  min-height:0 !important;
  height:100%;
}
.education-hero-renewed .education-hero-copy{
  bottom:14px;
}
.education-chair-restored{
  padding-top:82px;
}
.education-chair-restored .recruit-chair blockquote{
  border-left-color:var(--navy);
  background:#f4f7fb;
}
@media(max-width:1100px){
  .recruit-primary-nav-inner{gap:9px}
  .recruit-primary-nav a{min-height:58px;padding:10px 9px;font-size:.86rem}
}
@media(max-width:900px){
  .recruit-primary-nav{width:min(calc(100% - 24px),1480px);margin-top:12px}
  .recruit-primary-nav-inner{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
  .recruit-primary-nav a{min-height:54px}
  .hero-card.education-hero.education-hero-renewed{
    aspect-ratio:auto;
    min-height:570px !important;
  }
}
@media(max-width:600px){
  .recruit-primary-nav{width:calc(100% - 16px);margin-top:8px}
  .recruit-primary-nav-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .recruit-primary-nav a{min-height:50px;padding:9px 7px;border-radius:12px;font-size:.78rem}
  .recruit-primary-nav a:last-child{grid-column:1 / -1}
  .hero-card.education-hero.education-hero-renewed{
    min-height:520px !important;
    margin-top:8px;
  }
  .education-chair-restored{padding-top:62px}
}


/* Education top page section ordering refresh */
.education-message-preview-section{padding-top:72px;padding-bottom:40px}.education-home-section-head{text-align:center;max-width:760px;margin:0 auto 34px}.education-home-section-head>span,.education-split-kicker{display:inline-block;color:var(--red);text-transform:uppercase;letter-spacing:.18em;font-size:.92rem;font-weight:700}.education-home-section-head h2{margin:18px 0 16px;color:var(--navy);font:700 clamp(2.2rem,4vw,3.3rem)/1.2 var(--serif)}.education-home-section-head p{margin:0;color:#31455f;font-size:1.02rem;line-height:1.95}.education-message-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.education-message-card{display:flex;flex-direction:column;background:#fff;border:1px solid #dce4ee;border-radius:18px;overflow:hidden;box-shadow:0 10px 26px rgba(18,43,72,.06)}.education-message-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#eff4f8}.education-message-card-body{padding:18px 16px 20px}.education-message-meta{display:block;margin-bottom:10px;color:#b14f5d;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.education-message-card h3{margin:0 0 8px;color:var(--navy);font:700 1.16rem/1.45 var(--serif)}.education-message-card p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.8}.education-message-cta{display:flex;justify-content:center;margin-top:30px}.education-feature-section{padding-top:10px;padding-bottom:26px}.education-split-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.95fr);align-items:stretch;background:#eef3f7;border-radius:26px;overflow:hidden}.education-split-copy{display:flex;flex-direction:column;justify-content:center;padding:48px 48px 48px 52px}.education-split-copy h2{margin:18px 0 18px;color:var(--navy);font:700 clamp(2.15rem,3.5vw,3rem)/1.22 var(--serif)}.education-split-copy p{margin:0;max-width:30em;color:#31455f;font-size:1rem;line-height:1.95}.education-split-copy .btn{margin-top:30px;align-self:flex-start}.education-split-figure{margin:0;min-height:100%}.education-split-figure img{display:block;width:100%;height:100%;min-height:330px;object-fit:cover}.education-feature-qa .education-split-figure img{object-position:center 30%}.education-feature-application .education-split-card{background:linear-gradient(90deg,#eef3f7 0%,#edf5f7 62%,#deebef 100%)}.education-feature-application .education-split-figure img{object-position:center center}@media (max-width:1180px){.education-message-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.education-split-card{grid-template-columns:1fr 1fr}}@media (max-width:900px){.education-message-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.education-split-card{grid-template-columns:1fr}.education-split-copy{padding:36px 30px}.education-split-figure img{min-height:260px}.education-feature-section{padding-bottom:18px}}@media (max-width:600px){.education-message-preview-section{padding-top:56px}.education-home-section-head h2{font-size:2rem}.education-home-section-head p{font-size:.95rem}.education-message-grid{grid-template-columns:1fr}.education-message-card img{aspect-ratio:16/10}.education-split-copy h2{font-size:1.95rem}.education-split-copy p{font-size:.95rem}.education-split-copy .btn{width:100%;justify-content:center}.education-split-figure img{min-height:220px}}


/* 2026-10-16 education polish: square portraits, Keio-blue CTAs */
.education-message-card img{aspect-ratio:1/1!important;object-fit:cover!important;object-position:center top!important}
.education-message-card .education-message-card-body{min-height:154px}
.education-message-card h3,.education-message-card p,.education-message-meta{font-family:var(--sans)}
.education-message-card h3{font-weight:800}
.education-split-copy .btn,.education-message-cta .btn{background:var(--navy)!important;border-color:var(--navy)!important;color:#fff!important;font-family:var(--sans)!important;font-weight:800!important;text-shadow:none!important}
.education-split-copy .btn:hover,.education-message-cta .btn:hover{background:#00184f!important;border-color:#00184f!important;color:#fff!important}
.education-split-copy .btn::after,.education-message-cta .btn::after{color:#fff!important}
.education-hero-actions .btn{font-family:var(--sans)!important;font-weight:800!important}
.recruit-cta .btn{font-family:var(--sans)!important;font-weight:800!important}
@media(max-width:600px){.education-message-card img{aspect-ratio:1/1!important}.education-message-card .education-message-card-body{min-height:0}}


/* 2026-10-16 greeting page */
.recruit-primary-nav a[aria-current="page"]{background:var(--navy)!important;color:#fff!important;border-color:var(--navy)!important;box-shadow:0 10px 26px rgba(0,30,98,.16)}
.greeting-main{padding:54px 0 92px;background:#fff}
.greeting-wrap{max-width:980px}
.greeting-title-block{margin-bottom:30px;border-bottom:1px solid var(--line)}
.greeting-title-block h1{margin:12px 0 18px;padding-left:16px;border-left:3px solid var(--navy);color:var(--navy);font:700 clamp(2rem,4vw,3rem)/1.35 var(--serif)}
.greeting-profile{display:grid;grid-template-columns:1fr 320px;gap:58px;align-items:center;margin:0 0 32px;padding:8px 0 10px}
.greeting-profile-copy{padding-left:72px}
.greeting-affiliation{margin:0 0 18px;color:#26384d;font-size:.92rem;line-height:1.8}
.greeting-profile-copy h2{margin:0;color:var(--navy);font:700 1.7rem/1.3 var(--serif)}
.greeting-en{margin:4px 0 0;color:#9a6a28;font:500 .88rem/1.4 Georgia,serif}
.greeting-profile-photo{margin:0}
.greeting-profile-photo img{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:#f2f4f7}
.greeting-prose{color:#394a5d;font-size:.96rem;line-height:2.05}
.greeting-prose p{margin:0 0 24px}
.greeting-lead-copy strong{color:var(--navy);font-weight:800}
.greeting-wide-photo{margin:30px 0 34px}
.greeting-wide-photo img{display:block;width:100%;aspect-ratio:16/8.4;object-fit:cover}
.greeting-wide-photo-second img{aspect-ratio:16/8;object-position:center 45%}
.greeting-accordion{margin-top:40px;border-top:1px solid #b9c9dc}
.greeting-accordion details{border-bottom:1px solid #b9c9dc}
.greeting-accordion summary{display:grid;grid-template-columns:34px 1fr 32px;align-items:center;gap:10px;padding:21px 4px;cursor:pointer;list-style:none;color:var(--navy);font-weight:800}
.greeting-accordion summary::-webkit-details-marker{display:none}
.greeting-summary-mark{font:700 1.15rem/1 Georgia,serif;color:#1e54a0}
.greeting-accordion summary i{font-style:normal;text-align:center;color:var(--navy);transition:transform .2s ease}
.greeting-accordion details[open] summary i{transform:rotate(45deg)}
.greeting-detail-body{padding:4px 42px 28px 44px;background:linear-gradient(180deg,#fbfcfe,#fff)}
.greeting-detail-body>article{position:relative;padding:24px 0 24px 54px;border-bottom:1px solid #e3e9f0}
.greeting-detail-body>article:last-child{border-bottom:0}
.greeting-number{position:absolute;left:0;top:28px;color:#c6d3e3;font:700 1.8rem/1 Georgia,serif}
.greeting-detail-body h3{margin:0 0 10px;color:var(--navy);font:700 1.2rem/1.6 var(--serif)}
.greeting-detail-body p{margin:0;color:#48596b;font-size:.9rem;line-height:1.95}
.greeting-inline-link{margin-top:12px!important}
.greeting-inline-link a{color:var(--navy);font-weight:800;border-bottom:1px solid currentColor}
.greeting-mvv-body{padding-top:18px}
.greeting-mvv{padding:24px 0;border-bottom:1px solid #e3e9f0}
.greeting-mvv>span{display:block;color:var(--red);font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.greeting-mvv h3{margin:8px 0 10px}
.greeting-values{border-bottom:0}
.greeting-value-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.greeting-value-grid article{padding:20px;background:#f5f8fb;border:1px solid #dfe7ee}
.greeting-value-grid b{display:block;color:var(--navy);font:700 1.05rem/1.4 var(--sans)}
.greeting-value-grid small{display:block;margin:4px 0 10px;color:#66778a;font-weight:700}
.greeting-value-grid p{font-size:.84rem;line-height:1.85}
.greeting-closing{margin-top:42px;padding:30px 34px;border-left:4px solid var(--navy);background:#f4f7fb;color:#26394f}
.greeting-closing p{margin:0;font:600 1.08rem/2 var(--serif)}
@media(max-width:900px){.greeting-profile{grid-template-columns:1fr 260px;gap:36px}.greeting-profile-copy{padding-left:28px}.greeting-wrap{max-width:none}}
@media(max-width:600px){.greeting-main{padding:38px 0 68px}.greeting-profile{grid-template-columns:1fr;gap:22px}.greeting-profile-copy{padding-left:0;order:2}.greeting-profile-photo{order:1;max-width:260px;margin:auto}.greeting-wide-photo{margin:24px 0 28px}.greeting-detail-body{padding:2px 16px 22px}.greeting-detail-body>article{padding-left:42px}.greeting-value-grid{grid-template-columns:1fr}.greeting-closing{padding:24px 20px}.greeting-accordion summary{padding:18px 2px}}


/* 2026-10-16 greeting typography/profile polish */
.greeting-page{font-synthesis:none;}
.greeting-page,
.greeting-page p,
.greeting-page li,
.greeting-page summary,
.greeting-page small{
  font-family:var(--sans);
  font-style:normal;
  letter-spacing:normal;
}
.greeting-prose{
  font-family:var(--sans);
  font-size:1rem;
  font-weight:400;
  line-height:2.05;
  color:#394a5d;
}
.greeting-lead-copy p:first-child strong{
  display:block;
  font-family:var(--sans);
  font-size:1.16rem;
  line-height:1.8;
  font-weight:800;
  color:var(--navy);
}
.greeting-profile{
  grid-template-columns:minmax(220px,1fr) 300px;
  gap:22px;
  width:min(700px,100%);
  margin:0 auto 34px;
  padding:8px 0 10px;
}
.greeting-profile-copy{padding-left:0}
.greeting-affiliation{
  font-family:var(--sans);
  font-weight:500;
}
.greeting-profile-copy h2{font-family:var(--serif)}
.greeting-detail-body p,
.greeting-mvv p,
.greeting-value-grid p{
  font-family:var(--sans);
  font-weight:400;
}
@media(max-width:900px){
  .greeting-profile{grid-template-columns:minmax(200px,1fr) 260px;gap:18px;width:min(620px,100%)}
  .greeting-profile-copy{padding-left:0}
}
@media(max-width:600px){
  .greeting-profile{grid-template-columns:1fr;gap:18px;width:100%}
  .greeting-profile-copy{padding-left:0;order:2;text-align:center}
  .greeting-profile-photo{order:1;max-width:250px;margin:auto}
  .greeting-lead-copy p:first-child strong{font-size:1.08rem}
}


/* 2026-10-16 unified residency five-button navigation + split Q&A */
.recruit-primary-nav + main{margin-top:0}
.recruit-primary-nav a{font-weight:800}
.recruit-primary-nav a[aria-current="page"]{background:var(--navy)!important;color:#fff!important;border-color:var(--navy)!important}
body:has(.recruit-primary-nav) .recruit-page-hero{margin-top:14px}
@media(max-width:900px){body:has(.recruit-primary-nav) .recruit-page-hero{margin-top:12px}}
@media(max-width:600px){body:has(.recruit-primary-nav) .recruit-page-hero{margin-top:8px}}


/* 2026-10-16 voices profile layout — reference page style */
.voice-list{display:block;max-width:1120px;margin:0 auto}
.voice-group-heading{margin:62px 0 24px;padding-left:14px;border-left:4px solid var(--navy);color:var(--navy);font:700 1.7rem/1.4 var(--serif)}
.voice-group-heading:first-child{margin-top:0}
.voice-profile-card{display:grid;grid-template-columns:240px minmax(0,1fr);gap:36px;align-items:start;margin:0 0 58px;padding:0 0 58px;background:#fff;border:0;border-bottom:1px solid var(--line);box-shadow:none;overflow:visible}
.voice-profile-photo{position:relative}
.voice-profile-photo img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center top;border-radius:4px;background:#eef3f7}
.voice-profile-role{display:inline-block;margin-top:12px;padding:5px 10px;background:var(--navy);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.04em}
.voice-profile-content{min-width:0}
.voice-profile-data{margin:0 0 24px}
.voice-profile-row{display:grid;grid-template-columns:180px minmax(0,1fr);gap:20px;align-items:center;min-height:49px;border-bottom:1px solid #8eabef;color:var(--navy)}
.voice-profile-row:first-child{border-top:0}
.voice-profile-row dt,.voice-profile-row dd{margin:0;padding:11px 0;font-size:1rem;line-height:1.55}
.voice-profile-row dt{font-weight:500}
.voice-profile-row dd{color:#263750}
.voice-qa-reference{margin-top:20px}
.voice-qa-reference details{border-top:1px solid #8eabef}
.voice-qa-reference details:last-child{border-bottom:1px solid #8eabef}
.voice-qa-reference summary{display:grid;grid-template-columns:54px minmax(0,1fr);gap:6px;align-items:start;padding:16px 48px 16px 10px;color:#24354d;font-weight:400;list-style:none;cursor:pointer;position:relative}
.voice-qa-reference summary::-webkit-details-marker{display:none}
.voice-qa-reference summary::after{content:'＋';position:absolute;right:10px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:#f5f6f7;color:#1d2e48;font-size:1.05rem;font-weight:400}
.voice-qa-reference details[open] summary::after{content:'−'}
.voice-q-label{color:#124fc4;font-size:1.08rem;font-weight:500}
.voice-q-text{color:#263750}
.voice-answer-row{display:grid;grid-template-columns:54px minmax(0,1fr);gap:6px;margin:0 0 0;padding:11px 14px 13px;background:#eaf2ff;border-radius:5px}
.voice-a-label{color:#ff4e96;font-size:1.08rem;font-weight:500}
.voice-answer-row p{margin:0;color:#263750;font-size:.95rem;line-height:1.95}
@media(max-width:900px){
  .voice-profile-card{grid-template-columns:190px minmax(0,1fr);gap:26px}
  .voice-profile-row{grid-template-columns:150px minmax(0,1fr)}
}
@media(max-width:700px){
  .voice-profile-card{display:block;margin-bottom:46px;padding-bottom:46px}
  .voice-profile-photo{width:min(62vw,240px);margin:0 auto 24px;text-align:center}
  .voice-profile-role{margin-top:10px}
  .voice-profile-row{grid-template-columns:120px minmax(0,1fr);gap:14px;min-height:46px}
  .voice-profile-row dt,.voice-profile-row dd{font-size:.9rem}
  .voice-qa-reference summary{grid-template-columns:44px minmax(0,1fr);padding:14px 42px 14px 4px;font-size:.9rem}
  .voice-answer-row{grid-template-columns:44px minmax(0,1fr);padding:10px 11px 12px}
  .voice-answer-row p{font-size:.88rem;line-height:1.9}
}


/* 2026-10-16 voices: expanded career / specialty / affiliate sections */
.voice-category-nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:30px 0 46px}
.voice-category-nav a{display:flex;align-items:center;justify-content:center;min-height:54px;padding:10px 12px;border:1px solid #cbd9ea;border-radius:14px;background:linear-gradient(135deg,#f8fbff,#edf4fb);color:var(--navy);font-size:.78rem;font-weight:700;text-align:center;line-height:1.45;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.voice-category-nav a:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,30,98,.08);background:#eef4fb}
.voice-group-heading{scroll-margin-top:180px;margin:54px 0 20px;padding:0 0 13px;border-bottom:2px solid var(--navy);color:var(--navy);font:700 1.65rem/1.45 var(--serif)}
.voice-group-heading:first-child{margin-top:0}
.voice-group-heading-major{margin-top:82px;font-size:1.9rem}
.voice-group-intro{max-width:860px;margin:-8px 0 30px;color:var(--muted);font-size:.94rem;line-height:1.9}
.voice-profile-photo img[src$="no-image.svg"]{object-fit:contain;padding:28px;background:#eef3f7}
.voice-profile-row dd{overflow-wrap:anywhere}
@media(max-width:1100px){.voice-category-nav{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.voice-category-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:22px 0 34px}.voice-category-nav a{min-height:48px;font-size:.74rem}.voice-group-heading{scroll-margin-top:120px;margin-top:42px;font-size:1.45rem}.voice-group-heading-major{margin-top:64px;font-size:1.6rem}.voice-group-intro{font-size:.88rem;margin-bottom:24px}}


/* Training page refresh 20261016 */
.training-reference-section{padding:68px 0 18px;background:#fff}
.training-reference-slim{padding-top:22px}
.training-reference-wrap{max-width:1120px}
.training-reference-heading{margin:0 0 26px;padding-bottom:14px;border-bottom:1px solid #cfd5dd}
.training-reference-heading h2{position:relative;margin:0;padding-left:18px;color:#000;font:700 clamp(1.6rem,2.35vw,2.6rem)/1.35 var(--sans)}
.training-reference-heading h2::before{content:'';position:absolute;left:0;top:.12em;bottom:.12em;width:4px;border-radius:999px;background:var(--keio-blue,var(--navy))}
.training-reference-copy{max-width:1080px}
.training-reference-copy p{margin:0 0 18px;color:#263444;font:400 1rem/2 var(--sans)}
.training-reference-copy p:last-child{margin-bottom:0}
.training-reference-copy a{color:var(--navy);text-decoration:underline;text-underline-offset:3px}
.training-reference-figure{margin:34px auto 0}
.training-reference-figure img{display:block;width:100%;height:auto}
.training-reference-figure-wide{max-width:920px}
.training-reference-figure-stacked{max-width:1040px}
.training-figure-gap-top{margin-top:22px}
.training-two-photo-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;max-width:1040px;margin:38px auto 0;overflow:hidden}
.training-two-photo-strip figure{margin:0}
.training-two-photo-strip img{display:block;width:100%;height:100%;aspect-ratio:16/9;object-fit:cover}
.training-reference-figure-map{max-width:1120px}
.training-visual-stack{display:flex;flex-direction:column;gap:26px}
.training-reference-figure-university{max-width:1040px}
.training-reference-figure-gender{max-width:680px;margin-top:0}
.training-reference-figure-careerplan{max-width:980px}
.training-reference-figure-study{max-width:980px}
.training-reference-figure figcaption{margin-top:12px;text-align:center;color:#333;font:700 1rem/1.5 var(--sans)}
@media (max-width: 900px){
  .training-reference-section{padding:52px 0 14px}
  .training-two-photo-strip{grid-template-columns:1fr;gap:14px}
}
@media (max-width: 640px){
  .training-reference-heading{margin-bottom:20px;padding-bottom:12px}
  .training-reference-heading h2{padding-left:14px;font-size:1.45rem}
  .training-reference-copy p{font-size:.96rem;line-height:1.9}
  .training-reference-figure{margin-top:26px}
  .training-reference-figure figcaption{font-size:.92rem}
}

.training-anchor{position:relative;top:-92px;visibility:hidden;height:0;margin:0;padding:0}


/* Q&A spacing and link cleanup 2026-10-16 */
.faq-layout>.faq-category>h2{margin-bottom:18px}
.faq-layout>.faq-category>details{margin:0;border:1px solid #d9e2ee;border-radius:12px;background:#fff;overflow:hidden}
.faq-layout>.faq-category>details+details{margin-top:14px}
.faq-layout>.faq-category>details>summary{position:relative;padding:17px 44px 17px 18px;color:var(--navy);font-weight:700;line-height:1.65;cursor:pointer;list-style:none}
.faq-layout>.faq-category>details>summary::-webkit-details-marker{display:none}
.faq-layout>.faq-category>details>summary::after{content:'＋';position:absolute;right:15px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:#f3f6f9;color:var(--navy);font-weight:500}
.faq-layout>.faq-category>details[open]>summary::after{content:'−'}
.faq-layout>.faq-category>details>p{margin:0;padding:0 18px 19px;color:#516174;line-height:1.9}
.faq-layout>.faq-category>details[open]>p{padding-top:2px}
.faq-layout>.faq-category>details a{color:var(--navy);text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){
  .faq-layout>.faq-category>details+details{margin-top:11px}
  .faq-layout>.faq-category>details>summary{padding:15px 40px 15px 15px;font-size:.95rem}
  .faq-layout>.faq-category>details>p{padding:0 15px 17px;font-size:.92rem}
}


/* 2026-10-17 residency sticky five-button navigation */
.recruit-primary-nav{
  position:sticky;
  top:0;
  z-index:1200;
  width:100%;
  margin:0;
  padding:12px 0;
  background:rgba(255,255,255,.96);
  -webkit-backdrop-filter:blur(14px) saturate(1.15);
  backdrop-filter:blur(14px) saturate(1.15);
  border-bottom:1px solid rgba(0,30,98,.09);
  box-shadow:0 8px 24px rgba(0,30,98,.07);
}
.recruit-primary-nav-inner{
  width:min(calc(100% - 32px),1480px);
  margin:0 auto;
}
.recruit-primary-nav a:nth-child(1){background:linear-gradient(135deg,#d8e8ff 0%,#c6daf9 52%,#d6eaff 100%)}
.recruit-primary-nav a:nth-child(2){background:linear-gradient(135deg,#e0e2ff 0%,#ccd7fa 48%,#d2e8f2 100%)}
.recruit-primary-nav a:nth-child(3){background:linear-gradient(135deg,#cfe5fb 0%,#c3dbf5 48%,#d6dcfa 100%)}
.recruit-primary-nav a:nth-child(4){background:linear-gradient(135deg,#d1eaf2 0%,#c7dcf6 50%,#d9dcf8 100%)}
.recruit-primary-nav a:nth-child(5){background:linear-gradient(135deg,#d9def8 0%,#c8d7f3 50%,#d2e9ef 100%)}
.recruit-primary-nav a:hover{filter:saturate(1.12) brightness(.995)}
@media(max-width:1000px){
  .recruit-primary-nav{padding:8px 0}
  .recruit-primary-nav-inner{
    display:flex;
    width:100%;
    gap:8px;
    padding:0 10px 2px;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
  }
  .recruit-primary-nav-inner::-webkit-scrollbar{display:none}
  .recruit-primary-nav a{
    flex:0 0 160px;
    min-height:48px;
    padding:8px 10px;
    border-radius:11px;
    font-size:.78rem;
    scroll-snap-align:start;
  }
  .recruit-primary-nav a:last-child{grid-column:auto}
}


/* 2026-10-17 voices heading spacing and added profiles */
.voice-group-heading{
  position:relative;
  padding:0 0 14px 22px!important;
  border-left:4px solid var(--navy)!important;
  border-bottom:1px solid #c7d1de!important;
}
.voice-group-heading-major{padding-left:22px!important}
@media(max-width:700px){
  .voice-group-heading{padding-left:18px!important}
  .voice-group-heading-major{padding-left:18px!important}
}


/* voices: square profile portraits */
.voice-profile-photo img{
  width:100%;
  aspect-ratio:1/1;
  height:auto;
  object-fit:cover;
  object-position:center center;
}
.voice-profile-photo img[src$="no-image.svg"]{
  object-fit:contain;
  padding:28px;
}
@media(max-width:600px){
  .voice-profile-photo img{
    width:100%;
    aspect-ratio:1/1;
    height:auto;
    margin:0;
    object-fit:cover;
  }
}

/* Recruit location detail 20261017 */
.entry-summary dd p{margin:0 0 8px;line-height:1.8}
.entry-summary dd p:last-child{margin-bottom:0}
.entry-summary dd strong{color:var(--navy)}


/* Recruit application table + education message links 20261017 */
.entry-summary{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:32px;align-items:start}
.recruit-info-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #dbe4eb;border-radius:22px;overflow:hidden;box-shadow:0 16px 44px rgba(0,30,98,.08);font-family:var(--sans)}
.recruit-info-table tr:last-child th,.recruit-info-table tr:last-child td{border-bottom:0}
.recruit-info-table th,.recruit-info-table td{padding:21px 24px;border-bottom:1px solid #dbe4eb;vertical-align:top}
.recruit-info-table th{width:190px;background:linear-gradient(135deg,#edf3fb 0%,#e2ecf8 100%);color:var(--navy);font-weight:800;text-align:left;letter-spacing:.01em}
.recruit-info-table td{color:#2f4054;line-height:1.85;background:linear-gradient(90deg,#fff 0%,#fbfdff 100%)}
.recruit-info-table td p{margin:0 0 8px}.recruit-info-table td p:last-child{margin-bottom:0}
.recruit-emphasis{color:var(--navy);font-size:1.12rem}
.recruit-numbered-list{margin:0;padding-left:1.5em}.recruit-numbered-list li+li{margin-top:5px}
.recruit-official-text-link{color:var(--navy);font-weight:750;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px;transition:.18s}
.recruit-official-text-link:hover{color:var(--red)}
.recruit-facility-label{margin-top:18px!important;color:var(--navy)}
.recruit-facility-chips{display:flex;flex-wrap:wrap;gap:8px 9px;margin:10px 0 0;padding:0;list-style:none}
.recruit-facility-chips li{padding:5px 10px;border:1px solid #d5e1ec;border-radius:999px;background:#f5f8fc;color:#31465f;font-size:.82rem;line-height:1.45}
.entry-summary aside{padding:27px 24px;border-radius:20px;background:linear-gradient(145deg,#001e62,#173b78);color:#fff;box-shadow:0 16px 38px rgba(0,30,98,.18);position:sticky;top:90px}
.entry-summary aside>span{color:#e5c771;font-size:.7rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.entry-summary aside h3{margin:10px 0 12px;color:#fff;font:700 1.25rem/1.5 var(--serif)}
.entry-summary aside p{margin:0 0 20px;color:#e4ebf4;font-size:.86rem;line-height:1.75}
.entry-summary aside .recruit-official-text-link{color:#fff;text-decoration-color:#e5c771}
.entry-summary aside .btn.primary{width:100%;background:#fff!important;border-color:#fff!important;color:var(--navy)!important}
.education-message-card{color:inherit;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.education-message-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(18,43,72,.12);border-color:#b9cce0}
.education-message-card:focus-visible{outline:3px solid rgba(0,30,98,.25);outline-offset:3px}
@media(max-width:900px){.entry-summary{grid-template-columns:1fr}.entry-summary aside{position:static}.recruit-info-table th{width:165px}}
@media(max-width:640px){
  .recruit-info-table,.recruit-info-table tbody,.recruit-info-table tr,.recruit-info-table th,.recruit-info-table td{display:block;width:100%}
  .recruit-info-table tr{border-bottom:1px solid #dbe4eb}.recruit-info-table tr:last-child{border-bottom:0}
  .recruit-info-table th{padding:13px 17px;border:0;background:linear-gradient(135deg,#e8f0fa,#dce8f6)}
  .recruit-info-table td{padding:16px 17px 20px;border:0}
  .recruit-facility-chips{gap:7px}.recruit-facility-chips li{font-size:.78rem}
}


/* Facility links + training university map update 20261017 */
.recruit-facility-chips li{padding:0;overflow:hidden;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.recruit-facility-chips li a{display:block;padding:6px 11px;color:#31465f;text-decoration:none;font-weight:700;line-height:1.45}
.recruit-facility-chips li:hover{transform:translateY(-1px);border-color:rgba(0,30,98,.30);box-shadow:0 6px 16px rgba(0,30,98,.08)}
.recruit-facility-chips li a:hover{color:var(--navy)}
.facility-card[id]{scroll-margin-top:96px}
.training-reference-figure-university,.training-reference-figure-university-map,.training-reference-figure-gender{max-width:680px;margin-left:auto;margin-right:auto}
.training-reference-figure-university-map{margin-top:10px}
.training-reference-figure-university-map img{width:100%;height:auto;object-fit:contain;background:#fff}
@media(max-width:640px){.recruit-facility-chips li a{padding:6px 10px}.facility-card[id]{scroll-margin-top:78px}}


/* 2026-10-17 residency sans-serif unification + recruit/greeting image refresh */
/* Recruitment application hero: supplied writing-hand photograph */
.hero-card.recruit-page-hero.entry-hero.recruit-hero-photo{
  --hero-image:url('heroes/hero-recruit-application-20261017.jpg');
  --hero-position:center center;
}
.hero-card.recruit-page-hero.entry-hero.recruit-hero-photo::before,
.hero-card.recruit-page-hero.entry-hero.recruit-hero-photo .hero-edge-blur{
  background:var(--hero-image) var(--hero-position)/cover no-repeat !important;
}

/* Greeting profile: a little larger, with the full 4:5 portrait visible */
.greeting-profile{
  grid-template-columns:minmax(260px,1fr) 360px;
  gap:30px;
  width:min(840px,100%);
  margin:0 auto 40px;
}
.greeting-profile-photo img{
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center top;
}
.greeting-affiliation{
  font-size:1.04rem;
  line-height:1.9;
}
.greeting-profile-copy h2{
  font-size:2.05rem !important;
  line-height:1.32 !important;
}
.greeting-en{
  margin-top:7px;
  font-size:.98rem;
}
@media(max-width:900px){
  .greeting-profile{
    grid-template-columns:minmax(220px,1fr) 320px;
    gap:24px;
    width:min(740px,100%);
  }
}
@media(max-width:600px){
  .greeting-profile{grid-template-columns:1fr;gap:20px;width:100%}
  .greeting-profile-photo{max-width:300px;margin:auto}
  .greeting-affiliation{font-size:1rem}
  .greeting-profile-copy h2{font-size:1.85rem !important}
}

/* Residency pages: body text and UI in the same sans-serif family as training.html.
   Hero typography is intentionally left unchanged. */
.residency-page main > :not(.recruit-page-hero):not(.recruit-hero),
.residency-page main > :not(.recruit-page-hero):not(.recruit-hero) *{
  font-family:var(--sans);
}
.residency-page main > :not(.recruit-page-hero):not(.recruit-hero) :is(
  h1,h2,h3,h4,h5,h6,summary,dt,strong,b,.btn,.section-kicker,
  .recruit-section-head>span,.education-message-meta,.education-split-kicker,
  .voice-profile-role,.greeting-summary-mark,.greeting-number
){
  font-family:var(--sans) !important;
  font-weight:700;
}
.residency-page .recruit-primary-nav,
.residency-page .recruit-primary-nav *{
  font-family:var(--sans) !important;
}

/* When jumping from education.html to an individual message, keep the portrait
   just below the sticky five-button navigation instead of underneath it. */
.voice-profile-card[id]{scroll-margin-top:96px}
@media(max-width:1000px){.voice-profile-card[id]{scroll-margin-top:76px}}
/* Keep the supplied application hero on mobile as well. */
.hero-card.recruit-page-hero.entry-hero.recruit-hero-photo{
  --hero-mobile-image:url('heroes/hero-recruit-application-20261017.jpg');
}
@media(max-width:600px){
  .hero-card.recruit-page-hero.entry-hero.recruit-hero-photo{
    background:
      linear-gradient(rgba(0,30,98,.62),rgba(0,30,98,.82)),
      var(--hero-mobile-image) center center/cover no-repeat !important;
  }
}


/* 2026-10-17 Q&A hero restore + residency terminology/photo refresh */
.hero-card.recruit-page-hero.entry-hero.recruit-hero-photo.qa-dialogue-hero{
  --hero-image:url('heroes/hero-recruit.jpg');
  --hero-mobile-image:url('heroes/hero-recruit.jpg');
  --hero-position:center center;
}
.hero-card.recruit-page-hero.entry-hero.recruit-hero-photo.qa-dialogue-hero::before,
.hero-card.recruit-page-hero.entry-hero.recruit-hero-photo.qa-dialogue-hero .hero-edge-blur{
  background:var(--hero-image) var(--hero-position)/cover no-repeat !important;
}
@media(max-width:600px){
  .hero-card.recruit-page-hero.entry-hero.recruit-hero-photo.qa-dialogue-hero{
    background:
      linear-gradient(rgba(0,30,98,.54),rgba(0,30,98,.78)),
      var(--hero-mobile-image) center center/cover no-repeat !important;
  }
}


/* Global header navigation sizing 20261017 */
@media(min-width:1201px){
  .header>.wrap{width:min(1280px,calc(100% - 40px));}
  .header-row{height:92px;gap:32px;}
  .brand-image img{width:340px;}
  .nav{gap:24px;font-size:.96rem;font-weight:700;}
  .nav a{padding-top:31px;padding-bottom:28px;}
  .nav .contact{padding:12px 18px;}
}
@media(max-width:1200px) and (min-width:901px){
  .header>.wrap{width:min(1180px,calc(100% - 32px));}
  .header-row{gap:20px;}
  .brand-image img{width:300px;}
  .nav{gap:15px;font-size:.86rem;}
  .nav .contact{padding-left:12px;padding-right:12px;}
}


/* 2026-10-17 sticky directory side panes */
/* Keep the desktop/tablet care navigation visible while the article scrolls.
   A viewport-height cap preserves access to every item on shorter screens. */
@media (min-width:701px){
  .care-directory-layout .side.care-side{
    position:sticky !important;
    top:108px !important;
    align-self:start !important;
    max-height:calc(100vh - 128px);
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    scrollbar-color:rgba(0,30,98,.28) transparent;
  }
  .care-directory-layout .side.care-side::-webkit-scrollbar{width:5px;}
  .care-directory-layout .side.care-side::-webkit-scrollbar-track{background:transparent;}
  .care-directory-layout .side.care-side::-webkit-scrollbar-thumb{background:rgba(0,30,98,.22);border-radius:999px;}
}
/* Research / Publications / Ethics retain the left pane on desktop and keep it visible. */
@media (min-width:901px){
  .research-layout .side.research-side,
  .publication-layout .side.publication-side{
    position:sticky !important;
    top:108px !important;
    align-self:start !important;
    max-height:calc(100vh - 128px);
    overflow-y:auto;
    overscroll-behavior:contain;
  }
}

/* 2026-10-17 sticky About directory side pane */
@media (min-width:901px){
  .about-hero + .page-layout > .side{
    position:sticky !important;
    top:108px !important;
    align-self:start !important;
    max-height:calc(100vh - 128px);
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    scrollbar-color:rgba(0,30,98,.28) transparent;
  }
  .about-hero + .page-layout > .side::-webkit-scrollbar{width:5px;}
  .about-hero + .page-layout > .side::-webkit-scrollbar-track{background:transparent;}
  .about-hero + .page-layout > .side::-webkit-scrollbar-thumb{background:rgba(0,30,98,.22);border-radius:999px;}
}


/* referral hotline private links 20261017 */
.referral-hotline-private a,.referral-picu-private a{color:inherit;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;cursor:pointer}
.referral-hotline-private a:hover,.referral-picu-private a:hover{opacity:.72}

/* 2026-10-17: keep PICU hotline private-number link typography consistent with other hotline cards */
.referral-picu-contact .referral-picu-private{
  font-size:.86rem!important;
  line-height:1.6;
}
.referral-picu-contact .referral-picu-private a{
  display:inline;
  margin:0;
  font:inherit!important;
  color:inherit;
}

/* Click-to-enlarge figures */
.image-zoomable{cursor:zoom-in;transition:transform .2s ease,box-shadow .2s ease}
.image-zoomable:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(11,47,105,.14)}
.image-lightbox{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:32px;background:rgba(4,15,35,.78);backdrop-filter:blur(3px)}
.image-lightbox.is-open{display:flex}
.image-lightbox-inner{position:relative;max-width:min(96vw,1600px);max-height:94vh}
.image-lightbox img{display:block;max-width:100%;max-height:90vh;width:auto;height:auto;border-radius:16px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.35)}
.image-lightbox-close{position:absolute;right:-12px;top:-12px;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#0b2f69;font:700 26px/1 sans-serif;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.25)}
@media(max-width:700px){.image-lightbox{padding:14px}.image-lightbox-close{right:4px;top:4px;width:38px;height:38px;font-size:22px}}


/* 2026-10-18 priority improvements: patient pathways, research-publication bridge, accessibility */
.care-patient-paths{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:0 0 34px;
}
.care-patient-path{
  display:flex;
  align-items:center;
  min-height:92px;
  padding:18px 18px;
  border:1px solid #d8e3ee;
  border-radius:18px;
  background:linear-gradient(135deg,#fff 0%,#f5f9fd 100%);
  color:var(--navy);
  box-shadow:0 8px 24px rgba(0,30,98,.055);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.care-patient-path:hover{transform:translateY(-2px);border-color:#b8cbe0;box-shadow:0 12px 28px rgba(0,30,98,.09)}
.care-patient-path-icon{
  display:grid;place-items:center;flex:0 0 44px;height:44px;margin-right:14px;border-radius:50%;
  background:#eef4fb;color:var(--navy);font:800 .72rem/1 var(--sans);letter-spacing:.06em;
}
.care-patient-path:nth-child(1) .care-patient-path-icon{background:#fff0ee;color:#a61f18}
.care-patient-path:nth-child(2) .care-patient-path-icon{background:#eef6fb;color:#17638c}
.care-patient-path:nth-child(3) .care-patient-path-icon{background:#f2f0fb;color:#433b87}
.care-patient-path-copy{display:flex;flex-direction:column;gap:5px;min-width:0}
.care-patient-path-copy strong{font:700 1rem/1.5 var(--sans)}
.care-patient-path-copy small{color:#64768a;font:600 .75rem/1.45 var(--sans)}
@media(max-width:900px){.care-patient-paths{grid-template-columns:1fr;gap:10px}.care-patient-path{min-height:76px;padding:14px 16px}}

.research-profile-head{position:relative}
.research-publication-link{
  margin-left:auto;align-self:center;display:inline-flex;align-items:center;justify-content:center;min-height:42px;
  padding:9px 14px;border:1px solid #cbd9e7;border-radius:999px;background:#fff;color:var(--navy);
  font:700 .78rem/1.3 var(--sans);white-space:nowrap;transition:.18s ease;
}
.research-publication-link:hover{background:var(--navy);border-color:var(--navy);color:#fff}
@media(max-width:700px){.research-profile-head{flex-wrap:wrap}.research-publication-link{width:100%;margin:12px 0 0}}

/* Keyboard and screen-reader usability */
.skip-link{position:fixed;left:14px;top:10px;z-index:10050;padding:10px 14px;border-radius:8px;background:#001e62;color:#fff;font:700 .9rem/1.2 var(--sans);transform:translateY(-150%);transition:transform .15s ease}
.skip-link:focus{transform:translateY(0)}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #e5b23b;outline-offset:3px}
:where(section,article,div,h2,h3)[id]{scroll-margin-top:118px}
html{scroll-behavior:smooth;scroll-padding-top:118px}
.menu-button{min-width:44px;min-height:44px}
@media(max-width:900px){
  .nav a,.care-mobile-nav a,.recruit-primary-nav a{min-height:44px}
  html{scroll-padding-top:84px}
  :where(section,article,div,h2,h3)[id]{scroll-margin-top:84px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
