/* CPSBB — shared static styles. Edit this file directly. */
:root{--green:#9bc03a;--green-hover:#238b45;--green-dark:#154932;--green-light:#eaf4ec;--ink:#20382e;--muted:#5d6b65;--line:#dbe3de;--paper:#f4f7f5;--out:#865529;--out-light:#faf0e5;--navy:#000f23}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font:16px/1.6 "Segoe UI",Arial,sans-serif}img{max-width:100%;height:auto;display:block}a{color:var(--green-dark);text-underline-offset:4px}a:hover{color:var(--green-hover)}button,input,select{font:inherit}button,select{cursor:pointer}button,a,input,select,summary{touch-action:manipulation}:focus-visible{outline:3px solid #d6a72a;outline-offset:4px}[hidden]{display:none!important}h1,h2,h3,p{margin:0 0 16px}h1,h2,h3{line-height:1.2;text-wrap:pretty}h1{font-size:clamp(32px,4vw,56px);letter-spacing:-1.3px}h2{font-size:clamp(25px,2.5vw,34px);letter-spacing:-.5px}h3{font-size:22px}p:last-child{margin-bottom:0}a,dd,h1,h2,h3{overflow-wrap:anywhere}.wrap{width:min(1220px,calc(100% - 64px));margin-inline:auto}.eyebrow,.field-label{display:block;font-size:12px;font-weight:750;letter-spacing:1.3px;text-transform:uppercase;color:var(--green-hover)}.lead{max-width:850px;font-size:18px}.text-link{font-size:14px;font-weight:750;text-decoration:none}.skip{position:absolute;left:20px;top:-90px;z-index:10;background:#fff;padding:12px}.skip:focus{top:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 20px;background:var(--green);color:var(--green-dark);font-size:14px;font-weight:700;text-decoration:none;border:1px solid var(--green)}.button:hover{background:var(--green-hover);border-color:var(--green-hover);color:#fff}.button-outline{background:transparent;border-color:#92b6a0;color:#fff}.button-outline:hover{background:var(--green-hover);border-color:var(--green-hover);color:#fff}
/* Institutional header */
.institution-bar{background:var(--green-dark);color:#fff;font-size:10px;letter-spacing:.85px;padding:7px 0}.institution-bar .wrap{display:flex;justify-content:space-between;gap:20px}.institution-bar span{white-space:nowrap}.brand-row{display:flex;align-items:center;justify-content:space-between;gap:22px;padding-block:20px}.brand{display:flex;align-items:center;gap:24px;text-decoration:none}.brand img{width:205px;height:auto}.brand>span{border-left:1px solid var(--line);padding-left:24px;color:var(--muted);font-size:12px;line-height:1.65}.brand strong{font-size:20px;color:var(--green-dark)}.header-links{display:flex;align-items:center;gap:26px;font-size:13px}.header-links a{text-decoration:none}.header-links small,.header-links strong{display:block}.header-contact{padding:10px 17px;border:1px solid var(--line)}.navigation-band{background:var(--green);border-bottom:4px solid var(--green-dark)}.menu-button{display:none;border:1px solid var(--green);background:#fff;color:var(--green-dark);padding:8px 12px}
/* Photograph headings: the original #000f23 overlay at 75% opacity. */
.page-heading{position:relative;background:var(--navy);color:#fff;padding:42px 0;min-height:208px;isolation:isolate}.heading-photo,.heading-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.heading-shade{z-index:-1;background:rgba(0,15,35,.75)}.heading-content{position:relative}.page-heading .eyebrow{color:#a4d6a7;margin-bottom:10px}.page-heading h1{max-width:1050px;margin-bottom:12px}.page-heading .lead{color:#e1e8e4}.listing-section{padding-block:28px 48px}.section-title{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.section-title h2{margin-bottom:0}.section-title .text-link{white-space:nowrap}
/* Home: scientific photography and substantial green blocks. */
.home-hero{position:relative;background:var(--navy);color:#fff;isolation:isolate}.hero-photo{position:absolute;inset:0;z-index:-2}.hero-photo img{height:100%;width:100%;object-fit:cover}.hero-photo:after{content:"";position:absolute;inset:0;background:rgba(0,15,35,.75)}.hero-photo>span{display:none}.hero-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:48px;align-items:center;padding-block:42px}.hero-copy .eyebrow{color:#a4d6a7}.hero-copy h1{font-size:clamp(35px,3.5vw,51px);line-height:1.12}.hero-copy h1 em{font-style:normal;color:var(--green)}.hero-copy>p:not(.eyebrow){max-width:660px;font-size:16px;color:#e1e8e4}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.hero-lab{background:#fff;color:var(--green-dark);border-bottom:5px solid var(--green);box-shadow:0 15px 45px #0003}.hero-lab img{width:100%;height:245px;object-fit:cover}/* Main navigation: section tiles with dark green arrows. */
.opportunity-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin-block:0;background:var(--green);color:var(--green-dark)}
.opportunity-strip>a{padding:23px 18px;text-decoration:none;color:var(--green-dark);border-right:1px solid #15493226}
.opportunity-strip>a:first-child{border-left:1px solid #15493226}
.opportunity-strip>a[aria-current]{box-shadow:inset 0 -4px var(--green-dark)}
.opportunity-strip strong{display:flex;justify-content:space-between;gap:8px;font-size:15px;margin-bottom:8px;text-shadow:1px 1px 0 rgba(0,0,0,.25)}
.opportunity-strip strong span{color:var(--green-dark);font-size:19px;line-height:1;text-shadow:none}
.opportunity-strip>a>span{display:block;font-size:12px;line-height:1.5;color:var(--green-dark)}
.opportunity-strip>a:hover,.opportunity-strip>a:focus-visible{background:var(--green-hover);color:#fff}
.opportunity-strip>a:hover span,.opportunity-strip>a:focus-visible span{color:#fff}
.home-news{padding-block:44px}.news-overview{display:grid;grid-template-columns:1.2fr 1fr;gap:28px}.lead-news{background:var(--paper);border-bottom:3px solid var(--green)}.feature-photo img{width:100%;height:260px;object-fit:cover}.lead-news-copy{padding:24px}.lead-news h3 a,.news-stack h3 a{text-decoration:none}.lead-news p{font-size:14px;color:var(--muted)}.news-stack{display:grid;gap:18px}.news-stack article{display:grid;grid-template-columns:145px 1fr;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:18px}.stack-photo img{width:145px;height:125px;object-fit:cover}.news-stack h3{font-size:18px;line-height:1.4;margin-bottom:0}.news-stack .eyebrow{font-size:11px;margin-bottom:8px}.academic-section{background:var(--green-light);padding-block:40px}.academic-grid{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:42px}.academic-photo img{width:100%;height:355px;object-fit:cover;border-bottom:6px solid var(--green)}.academic-grid h2{font-size:30px}.academic-grid p:not(.eyebrow){color:var(--muted);font-size:15px}.academic-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.academic-links a{display:flex;justify-content:space-between;gap:10px;background:#fff;padding:13px 15px;font-size:13px;font-weight:650;text-decoration:none;border-left:3px solid var(--green)}
/* Search and news */
.filters,.mobility-filters{display:none;gap:20px;align-items:end;background:var(--paper);padding:18px 22px;margin-bottom:25px;border:1px solid var(--line)}.js .filters,.js .mobility-filters{display:flex}.js-controls{display:none}.js .js-controls{display:flex}.filters label{display:grid;gap:6px;font-size:12px;font-weight:700;color:var(--muted)}.filters label:first-child{flex:1}.filters input,.filters select,.mobility-filters select{min-height:44px;border:1px solid #b8c7bf;background:#fff;color:var(--ink);padding:8px 12px;width:100%;min-width:0;border-radius:0}.filters select{min-width:165px}.result-count,[data-mobility-count]{font-size:13px;color:var(--muted);margin:0 0 10px;white-space:nowrap}.news-channels{display:flex;gap:0;margin-bottom:22px;border-bottom:2px solid var(--green)}.news-channels a{padding:12px 24px;font-weight:700;text-decoration:none;background:var(--paper)}.news-channels a[aria-current]{background:var(--green);color:#fff}.content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.news-card{border:1px solid var(--line);background:#fff;display:flex;flex-direction:column;border-bottom:3px solid var(--green)}.card-image{display:block;overflow:hidden}.card-image img{width:100%;aspect-ratio:3/2;object-fit:cover}.card-body{padding:22px}.news-card .card-body{display:flex;flex-direction:column;flex:1}.news-card h2{font-size:20px;line-height:1.35;margin:10px 0 13px;letter-spacing:0}.news-card h2 a,.call-row h2 a{text-decoration:none}.news-card p,.call-row p{font-size:14px;color:var(--muted)}.news-card .text-link{margin-top:auto}.news-card .eyebrow{font-size:11px}.empty-state{padding:28px;background:var(--paper);border-left:4px solid var(--green)}
/* Calls and accordion */
.call-list{display:grid;gap:18px}.call-row{display:grid;grid-template-columns:210px 1fr;background:#fff;border:1px solid var(--line)}.competition-state{background:var(--green-light);padding:24px;display:flex;flex-direction:column;gap:16px;align-items:flex-start}.competition-state>span:last-child{font-size:13px}.competition-state time{display:block;font-size:17px;font-weight:700}.call-row h2{font-size:23px}.status{display:inline-block;align-self:flex-start;border-radius:3px;padding:4px 10px;background:#e8ece9;color:#4a5b51;font-size:12px;font-weight:700}.status-active,.status-current{background:#d5edd8;color:#18502a}.status-expired,.status-past{background:#e9ecea;color:#53615a}.status-unknown{background:#fff0cf;color:#70571e}.procedure-accordion{border:1px solid var(--line);margin:0}.procedure-accordion details+details{border-top:1px solid var(--line)}.procedure-accordion summary{position:relative;list-style:none;padding:17px 24px 17px 54px;cursor:pointer;font-weight:700;background:var(--paper)}.procedure-accordion summary::-webkit-details-marker{display:none}.procedure-accordion summary:before{content:"+";position:absolute;left:23px;top:12px;font-size:26px;font-weight:500;color:var(--green)}.procedure-accordion details[open]>summary{background:var(--green-light);color:var(--green-dark)}.procedure-accordion details[open]>summary:before{content:"−"}.procedure-accordion details>p,.procedure-accordion .accordion-body{padding:25px 28px;margin:0;min-height:85px}
/* Mobility: direction is a separate dimension from date status. */
.mobility-intro{max-width:880px;margin-bottom:20px}.direction-switch{gap:10px;margin-bottom:18px;flex-wrap:wrap}.direction-switch button{border:1px solid var(--line);background:var(--paper);padding:11px 20px;font-weight:700;color:var(--ink)}.direction-switch .incoming{color:var(--green-dark);background:var(--green-light);border-color:#9ac6a6}.direction-switch .outgoing{color:var(--out);background:var(--out-light);border-color:#d9b58e}.direction-switch button[aria-pressed=true]{box-shadow:inset 0 -4px currentColor}.mobility-filters{align-items:center;justify-content:space-between;padding:13px 20px}.mobility-filters label{display:flex;align-items:center;gap:14px;font-size:13px;font-weight:700}.mobility-filters select{width:200px}.mobility-filters p{margin:0}.mobility-group{--accent:var(--green-dark);--tint:var(--green-light);margin-top:26px;border:1px solid var(--line);border-top:4px solid var(--accent)}.mobility-group.outgoing{--accent:var(--out);--tint:var(--out-light);border-color:#e5d6c7}.mobility-group>header{padding:20px 24px;background:var(--tint);display:flex;align-items:center;justify-content:space-between;gap:20px}.mobility-group>header h2{font-size:26px;color:var(--accent);margin:0}.mobility-group>header p{font-size:13px;color:var(--accent);margin:0}.mobility-entry{display:grid;grid-template-columns:1.3fr 1fr 160px;align-items:center;gap:24px;padding:22px 24px;border-top:1px solid var(--line)}.mobility-person{display:grid;grid-template-columns:42px 1fr;gap:0 14px;align-items:center}.travel-symbol{display:flex;align-items:center;justify-content:center;width:42px;height:42px;background:var(--tint);color:var(--accent);font-size:29px;grid-row:1/3}.direction-label{color:var(--accent);font-size:10px;font-weight:750;letter-spacing:1px;text-transform:uppercase}.mobility-person h3{font-size:21px;margin:5px 0}.destination{grid-column:2;font-size:13px;color:var(--muted);margin:0}.mobility-period .field-label{font-size:10px;color:var(--muted);margin-bottom:5px}.mobility-period p{font-size:14px;font-weight:650;margin-bottom:8px}.upcoming-note{display:block;font-size:12px;color:var(--accent);margin-top:5px}.mobility-links{display:grid;gap:9px;justify-items:start}.details-link{font-size:14px;font-weight:700;color:var(--accent)}.project-link{font-size:13px;color:var(--muted)}.profile-pending{font-size:13px;color:var(--muted)}
/* People: identity / label / value / research topic hierarchy. */
.student-list{display:grid;gap:26px}.student-card,.student-profile{display:grid;grid-template-columns:260px 1fr;border:1px solid var(--line);border-top:4px solid var(--green)}.student-identity{background:var(--green-dark);color:#fff;padding:24px}.student-photo{width:100%;height:220px;object-fit:cover;object-position:center top;margin-bottom:20px;background:#eef3ef}.student-identity .eyebrow{color:#b1d59a;font-size:10px}.student-identity h2,.student-identity h3{font-size:25px;margin:9px 0 16px}.student-identity a{color:#fff;text-decoration:none}.student-identity .text-link{color:#c6e5c0}.student-information{padding:22px 28px;min-width:0}.student-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;margin:0}.student-fields .field{min-width:0}.student-fields dt{color:var(--muted);font-size:10px;font-weight:750;letter-spacing:1px;text-transform:uppercase;margin-bottom:5px}.student-fields dd{margin:0;font-size:15px}.student-fields strong{font-weight:650}.student-fields .programme{grid-column:1/-1}.student-fields .programme dd{font-size:18px;color:var(--green-hover)}.student-fields .topic{grid-column:1/-1;padding:15px 18px;background:var(--green-light);border-left:3px solid var(--green)}.student-fields .topic dd{font-size:19px;line-height:1.45;color:var(--green-dark)}.student-fields .contact a{font-weight:650}.student-information>p{margin-top:18px}.student-profile{grid-template-columns:210px 1fr}.student-profile .student-photo{height:200px}.student-profile .student-information{padding:20px}.student-profile .student-fields{grid-template-columns:1fr}.student-profile .student-identity{padding:18px}.student-profile .student-fields .topic dd{font-size:17px}
/* Documents and long-form content */
.document-groups{display:grid;gap:26px}.document-group{border:1px solid var(--line)}.document-group>h2{background:var(--green-dark);color:#fff;padding:18px 24px;margin:0;font-size:23px}.document-row{display:flex;align-items:center;gap:20px;padding:20px 24px;border-bottom:1px solid var(--line)}.document-row:last-child{border:0}.document-row h2,.document-row h3{font-size:18px;line-height:1.4;margin:0 0 8px}.document-row h3 a{text-decoration:none}.document-row .card-body{flex:1;padding:0}.document-row .file-type{flex:0 0 52px;padding:12px 4px;background:var(--green-light);text-align:center;font-size:11px;font-weight:750;color:var(--green-dark)}.document-row .text-link{display:inline-block;margin-right:16px}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:36px;padding-block:32px 48px}.prose{min-width:0;overflow-wrap:anywhere}.prose p,.prose li{line-height:1.8}.prose h2{margin-top:30px;font-size:27px}.prose h3{margin-top:22px}.prose img{height:auto;max-width:100%;margin-block:20px}.prose figure{margin:20px 0}.prose table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;font-size:14px}.prose td,.prose th{border:1px solid var(--line);padding:10px;text-align:left}.prose iframe{max-width:100%}.detail-aside{background:var(--paper);padding:23px;align-self:start;border-top:4px solid var(--green);font-size:14px}.detail-aside h2{font-size:20px}.detail-aside h3{font-size:17px}.detail-aside a{display:inline-block;margin-bottom:10px}.detail-photo{width:100%;height:auto}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.gallery img{width:100%;height:auto}.archive-link{padding:20px;background:var(--green-light);margin-block:24px}.archive-prose{padding-block:30px}.site-footer{background:var(--green-dark);color:#d7e4da;padding:32px 0;border-top:5px solid var(--green)}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;font-size:13px}.footer-grid strong{font-size:24px;color:#fff}.footer-grid p{margin-top:9px}.footer-grid a{color:#e1eee5;text-decoration:none}.footer-grid nav{display:flex;flex-wrap:wrap;gap:12px 22px;align-content:start;padding-top:8px}
.procedure-accordion{margin:20px auto 30px}.document-row>div{flex:1;min-width:0}.document-row>.text-link{flex:0 0 auto;margin-right:0}.student-fields dd{font-weight:600}.page-heading a.eyebrow{text-decoration:none}.detail-aside>a{display:block}
@media(min-width:1600px){.wrap{width:min(1320px,calc(100% - 96px))}.hero-layout{padding-block:50px}.hero-lab img{height:270px}.hero-copy h1{font-size:56px}}
@media(max-width:1100px){.brand>span{font-size:11px}.brand strong{font-size:17px}.header-contact{display:none}.hero-layout{gap:28px}.opportunity-strip{grid-template-columns:repeat(3,1fr)}.opportunity-strip>a{border-bottom:1px solid #ffffff24}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mobility-entry{grid-template-columns:1.15fr 1fr 130px;gap:18px}.mobility-person h3{font-size:19px}.detail-layout{grid-template-columns:minmax(0,1fr) 210px;gap:24px}.student-profile{grid-template-columns:1fr}.student-profile .student-identity{display:grid;grid-template-columns:140px 1fr;gap:0 20px}.student-profile .student-photo{grid-row:1/5;height:170px;margin:0}.student-profile .student-identity h2{margin:0}.student-profile .student-identity .eyebrow{margin:0}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.institution-bar span{display:none}.institution-bar{font-size:9px}.brand-row{padding-block:16px}.brand img{width:175px}.brand>span{padding-left:18px}.header-links{display:none}.js .menu-button{display:block}.js .opportunity-strip{display:none}.js .opportunity-strip.is-open{display:grid}.hero-layout{grid-template-columns:1.25fr 1fr;gap:22px;padding-block:32px}.hero-copy h1{font-size:35px}.hero-lab img{height:225px}.hero-actions .button{font-size:12px;padding:10px 12px}.news-overview{grid-template-columns:1fr}.news-stack{grid-template-columns:1fr}.news-stack article{grid-template-columns:145px 1fr}.academic-grid{gap:25px}.academic-photo img{height:370px}.academic-grid h2{font-size:25px}.academic-links{grid-template-columns:1fr}.mobility-entry{grid-template-columns:1.3fr 1fr}.mobility-links{grid-column:1/-1;display:flex;align-items:center;gap:22px;padding-left:56px}.mobility-group>header{display:block}.mobility-group>header p{margin-top:6px}.student-card{grid-template-columns:210px 1fr}.student-identity{padding:18px}.student-photo{height:210px}.student-information{padding:20px}.student-fields{grid-template-columns:1fr}.student-fields .topic dd{font-size:17px}.student-identity h2{font-size:22px}.detail-layout{grid-template-columns:1fr}.detail-aside{display:block}.filters{flex-wrap:wrap}.result-count{width:100%;margin:0}.footer-grid{gap:22px}.page-heading{padding-block:34px;min-height:185px}.page-heading .lead{font-size:16px}}
@media(max-width:580px){body{font-size:15px}.wrap{width:calc(100% - 32px)}.institution-bar{font-size:8px;letter-spacing:.2px;line-height:1.4}.brand{gap:0}.brand img{width:160px}.brand>span{display:none}.brand-row{padding-block:15px}.hero-layout{grid-template-columns:1fr;padding-block:28px;gap:25px}.hero-copy h1{font-size:35px;letter-spacing:-.7px}.hero-copy>p:not(.eyebrow){font-size:15px}.hero-lab{border-bottom-width:3px}.hero-lab img{height:185px}.hero-actions{gap:9px;margin-top:18px}.opportunity-strip{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.opportunity-strip>a{padding:17px 16px}.opportunity-strip strong{font-size:15px}.home-news{padding-block:30px}.section-title{align-items:start;gap:12px;flex-direction:column;margin-bottom:20px}.section-title h2{font-size:27px}.feature-photo img{height:210px}.lead-news-copy{padding:20px}.lead-news h3{font-size:21px}.news-stack article{grid-template-columns:104px 1fr;gap:14px}.stack-photo img{width:104px;height:112px}.news-stack h3{font-size:16px}.academic-grid{grid-template-columns:1fr}.academic-section{padding-block:28px}.academic-photo img{height:220px}.academic-grid h2{font-size:26px}.academic-links{grid-template-columns:1fr}.page-heading{padding-block:27px;min-height:165px}.page-heading h1{font-size:33px;letter-spacing:-.6px}.page-heading .eyebrow{font-size:10px}.page-heading .lead{font-size:15px}.listing-section{padding-block:22px 32px}.filters{padding:15px;gap:12px}.filters label{width:100%}.filters label:first-child{flex:auto}.filters select{min-width:0}.content-grid{grid-template-columns:1fr;gap:20px}.news-card h2{font-size:21px}.card-body{padding:20px}.news-channels a{padding:11px 18px;font-size:14px}.call-row{grid-template-columns:1fr}.competition-state{padding:16px 20px;flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.competition-state time{font-size:15px}.competition-state>span:last-child{font-size:11px}.call-row h2{font-size:22px}.procedure-accordion summary{padding:16px 18px 16px 43px;font-size:15px}.procedure-accordion summary:before{left:17px}.procedure-accordion details>p{padding:22px}.direction-switch{gap:7px}.direction-switch button{padding:10px 12px;font-size:13px}.direction-switch button:first-child{flex:1 1 100%}.direction-switch .incoming,.direction-switch .outgoing{flex:1}.mobility-filters{flex-direction:column;align-items:stretch;gap:10px;padding:14px}.mobility-filters label{justify-content:space-between}.mobility-filters select{width:170px;font-size:14px}.mobility-group>header{padding:18px}.mobility-group>header h2{font-size:23px}.mobility-entry{grid-template-columns:1fr;gap:15px;padding:20px 18px}.mobility-person h3{font-size:22px}.mobility-period{padding-left:56px}.mobility-links{grid-column:auto;flex-wrap:wrap;gap:8px 18px}.mobility-period p{font-size:13px;white-space:normal}.student-card,.student-profile{grid-template-columns:1fr}.student-identity,.student-profile .student-identity{display:grid;grid-template-columns:108px 1fr;gap:0 18px;padding:18px}.student-photo,.student-profile .student-photo{grid-row:1/5;width:108px;height:145px;margin:0}.student-identity .eyebrow{margin:0;font-size:9px}.student-identity h2,.student-identity h3{font-size:22px;margin:5px 0 10px}.student-identity .text-link{font-size:12px}.student-information{padding:20px 18px}.student-fields{gap:15px}.student-fields .programme dd{font-size:17px}.student-fields .topic{padding:14px}.student-fields .topic dd{font-size:18px}.document-group>h2{font-size:21px;padding:17px 18px}.document-row{padding:18px;gap:12px;align-items:start}.document-row .file-type{flex-basis:42px;font-size:10px}.document-row h3{font-size:16px}.document-row .text-link{font-size:12px;margin-top:5px}.detail-layout{padding-block:24px 32px}.prose h2{font-size:24px}.gallery{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;font-size:12px}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid nav{display:grid;gap:9px}.site-footer{padding-block:25px}}
/* Article gallery: one consistent photo area and a compact thumbnail strip. */
.prose .news-gallery{margin:20px 0 26px;background:var(--paper);border:1px solid var(--line)}
.news-gallery-main{position:relative;display:block;cursor:zoom-in;background:#eaf0eb}
.prose .news-gallery-main img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;margin:0}
.news-gallery-hint{position:absolute;right:12px;bottom:12px;padding:7px 12px;background:var(--green-dark);color:#fff;font-size:12px;font-weight:650;pointer-events:none}
.news-gallery-thumbnails{display:flex;flex-wrap:wrap;gap:10px;padding:12px}
.news-gallery-thumbnails a{display:block;width:96px;max-width:calc(50% - 5px);border:3px solid transparent;background:#fff}
.news-gallery-thumbnails a[aria-current]{border-color:var(--green-hover)}
.news-gallery-thumbnails a:hover{border-color:var(--green)}
.prose .news-gallery-thumbnails img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;margin:0}
html.photo-viewer-open{overflow:hidden}
.photo-viewer{width:min(1120px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:1px solid #526c5e;background:#11251c;color:#fff;box-shadow:0 20px 80px #0006;overflow:auto}
.photo-viewer::backdrop{background:rgba(0,15,23,.88)}
.photo-viewer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 14px;border-bottom:1px solid #ffffff24}
.photo-viewer-counter{margin:0;font-size:14px;font-weight:650}
.photo-viewer button{min-width:44px;min-height:44px;border:1px solid #ffffff50;background:var(--green);color:var(--green-dark);font-weight:700;cursor:pointer}
.photo-viewer button:hover{background:var(--green-hover);color:#fff}
.photo-viewer-close{padding:8px 14px}
.photo-viewer-stage{position:relative;display:flex;align-items:center;justify-content:center;background:#07120d;touch-action:pan-y pinch-zoom}
.photo-viewer-image{display:block;width:100%;height:min(72vh,780px);height:min(72dvh,780px);object-fit:contain}
.photo-viewer-previous,.photo-viewer-next{position:absolute;top:50%;transform:translateY(-50%);font-size:24px;z-index:1}
.photo-viewer-previous{left:12px}.photo-viewer-next{right:12px}
@media(max-width:580px){.news-gallery-thumbnails{gap:8px;padding:10px}.news-gallery-thumbnails a{width:76px}.news-gallery-hint{right:8px;bottom:8px;font-size:11px;padding:5px 8px}.photo-viewer{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.photo-viewer-toolbar{padding:8px 10px}.photo-viewer-previous{left:8px}.photo-viewer-next{right:8px}.photo-viewer-image{height:65vh;height:65dvh}.photo-viewer-counter{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.site-header,.site-footer,.filters,.js-controls,.hero-actions{display:none!important}.wrap{width:100%}.page-heading{background:#fff;color:#000;min-height:0;padding:15px 0}.heading-photo,.heading-shade{display:none}.page-heading .eyebrow,.page-heading .lead{color:#333}.mobility-entry,.student-card{break-inside:avoid}.detail-layout{display:block}.detail-aside{margin-top:20px}}
