/* Catalogue and final responsive corrections — 9 September 2026. */
.area-card footer{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:12px}
.area-card footer .area-action{display:block;align-self:flex-start;white-space:normal}
.page-hero h1,.section-head h2,.infrastructure-card h3,.content-body h3{overflow-wrap:anywhere;hyphens:auto}
.infrastructure-card{min-width:0}
.infrastructure-card h3{font-size:clamp(1.6rem,2.3vw,2rem);line-height:1.2}
.infrastructure-card .text-link{white-space:normal;overflow-wrap:anywhere}
.project-record-links{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0 20px;font-size:.8rem;font-weight:600;color:var(--navy)}
.project-card--featured .project-record-links{color:#fff}
.project-record-links a:hover{text-decoration:underline}
.catalogue-section{padding:62px 0 30px}
.catalogue-tabs{display:flex;flex-wrap:wrap;gap:8px 24px;border-bottom:1px solid var(--line);margin-bottom:28px}
.catalogue-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:14px 0;font-size:1rem;font-weight:650;color:var(--steel);min-height:48px}
.catalogue-tabs button[aria-pressed="true"]{color:var(--navy);border-bottom-color:var(--gold)}
.catalogue-filters{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:24px;margin:0 0 24px}
.catalogue-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:18px;align-items:end}
.catalogue-field{display:flex;flex-direction:column;gap:8px;min-width:0;color:var(--navy);font-size:.82rem;line-height:1.45;font-weight:600}
.catalogue-field span{display:block}
.catalogue-field select,.catalogue-field input{width:100%;min-width:0;max-width:100%;height:46px;border:1px solid #C0CFDE;border-radius:8px;padding:0 12px;background:#fff;color:var(--ink);font-size:.9rem;font-weight:400;text-overflow:ellipsis}
.catalogue-search{grid-column:span 1}
.catalogue-advanced{margin-top:18px;border-top:1px solid var(--line);padding-top:16px}
.catalogue-advanced summary,.topic-projects summary{cursor:pointer;color:var(--navy);font-size:.85rem;padding:6px 0;min-height:36px}
.catalogue-advanced[open] summary{margin-bottom:14px}
.catalogue-filter-foot{display:flex;gap:18px;align-items:center;justify-content:space-between;margin-top:16px;min-height:36px;font-size:.8rem;color:var(--steel);flex-wrap:wrap}
.catalogue-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:30px 0 22px;scroll-margin-top:110px}
.catalogue-toolbar>p{font-size:.88rem;color:var(--steel);margin:0}
.catalogue-toolbar .catalogue-field{flex-direction:row;align-items:center;font-weight:400}
.catalogue-toolbar select{width:210px;height:40px;font-size:.85rem}
.catalogue-export{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:24px;font-size:.8rem;color:var(--steel)}
.catalogue-export>span{margin-right:8px}
.record-button{border:1px solid #BBCBDB;border-radius:8px;background:#fff;color:var(--navy);min-height:42px;padding:8px 16px;font-size:.87rem;line-height:1.5;white-space:normal}
.record-button:hover:not(:disabled){background:var(--paper-blue);border-color:var(--navy)}
.record-button:disabled{opacity:.5;cursor:not-allowed}
.record-text-button{border:0;background:none;color:var(--navy);font-size:.85rem;font-weight:600;padding:8px 0;min-height:40px;text-align:left}
.record-text-button:hover{text-decoration:underline}
.record-grid,.news-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.team-record,.researcher-record{border:1px solid var(--line);border-radius:21px;padding:28px;background:#fff;display:flex;flex-direction:column;min-width:0;transition:box-shadow .2s,border-color .2s}
.team-record:hover,.researcher-record:hover{box-shadow:var(--shadow-sm);border-color:#BCCDDD}
.team-record-head{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:42px;color:var(--steel);font-size:.74rem;line-height:1.5}
.team-record-head>span:last-child{text-align:right;overflow-wrap:anywhere}
.team-symbol{width:46px;height:46px;flex:0 0 46px;border-radius:50%;display:grid;place-items:center;background:var(--paper-blue);color:var(--navy)}
.team-symbol svg{width:23px;height:23px}
.record-code{color:var(--navy);font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}
.team-record h3,.researcher-record h3,.publication-record h3{font-family:var(--serif);font-size:1.72rem;line-height:1.22;letter-spacing:-.025em;font-weight:500;color:var(--navy-deep);margin:22px 0 12px;overflow-wrap:anywhere;hyphens:auto}
.team-record h3 a:hover,.researcher-record h3 a:hover,.publication-record h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.team-record p,.researcher-record p,.publication-record p{font-size:.92rem;color:var(--steel);line-height:1.7;margin:0 0 18px}
.team-record>p{flex:1}
.team-record footer,.researcher-record footer,.publication-record footer{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;border-top:1px solid var(--line);margin-top:20px;padding-top:18px;color:var(--navy);font-size:.85rem;font-weight:600}
.team-record footer a:hover,.project-record-links a:hover{text-decoration:underline}
.team-record .topic-projects{margin-top:10px}
.topic-projects ul{padding:0 0 0 18px;margin:10px 0 0;font-size:.88rem;line-height:1.6;color:var(--navy)}
.topic-projects li+li{margin-top:10px}
.topic-projects a:hover{text-decoration:underline}
.record-count{display:inline-flex;align-items:center;justify-content:center;min-width:25px;height:25px;border-radius:50%;background:var(--paper-blue);font-size:.75rem;margin-left:7px}
.record-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;color:var(--steel);font-size:.8rem;line-height:1.5}
.record-badge{display:inline-flex;align-items:center;border-radius:6px;background:var(--paper-blue);color:var(--navy);padding:5px 9px;font-size:.76rem;line-height:1.5;overflow-wrap:anywhere;max-width:100%}
.record-chips,.record-actions{display:flex;flex-wrap:wrap;gap:8px 12px;margin:12px 0}
.record-chip{display:inline-block;border:1px solid var(--line);border-radius:6px;padding:5px 10px;font-size:.78rem;color:var(--navy);line-height:1.6;overflow-wrap:anywhere;max-width:100%}
.record-chip:hover{background:var(--paper-blue)}
.record-note{font-size:.86rem!important;color:var(--steel);line-height:1.7!important;font-weight:400}
.record-empty{grid-column:1/-1;border:1px solid var(--line);border-radius:20px;padding:52px 32px;background:var(--paper);text-align:center}
.record-empty-icon{width:58px;height:58px;border:1px solid var(--line);border-radius:50%;margin:0 auto 24px;background:white;display:grid;place-items:center;color:var(--navy)}
.record-empty-icon svg{width:28px;height:28px}
.record-empty h3{font-family:var(--serif);font-size:1.9rem;line-height:1.25;color:var(--navy);font-weight:500;margin:0 0 18px;overflow-wrap:anywhere}
.record-empty p{font-size:.97rem;line-height:1.7;max-width:700px;margin:0 auto;color:var(--steel)}
.record-feedback{color:var(--steel);font-size:.86rem;min-height:1.5em;margin-top:22px}
.catalogue-foot{padding:40px 0 78px}
.catalogue-foot>.container{display:flex;align-items:center;gap:24px;justify-content:space-between;border-top:1px solid var(--line);padding-top:24px}
.catalogue-foot p{font-size:.9rem;color:var(--steel);max-width:780px;margin:0}
.catalogue-foot a{font-size:.86rem;flex-shrink:0}
.catalogue-pagination{display:flex;gap:10px;justify-content:center;margin-top:32px;flex-wrap:wrap}
.catalogue-pagination button{width:44px;min-height:44px;border:1px solid var(--line);background:#fff;color:var(--navy);border-radius:8px}
.catalogue-pagination button[aria-current="page"]{background:var(--navy);color:#fff;border-color:var(--navy)}
.publication-record{padding:30px;border:1px solid var(--line);border-radius:18px;margin-bottom:18px;min-width:0;background:#fff}
.publication-record h3{margin-top:18px}
.record-authors a{color:var(--navy);text-decoration:underline;text-decoration-color:var(--mist);text-underline-offset:4px}
.record-authors a:hover{text-decoration-color:var(--navy)}
.researcher-record-head{display:flex;gap:22px;align-items:center;min-width:0}
.researcher-record-head>div:last-child{min-width:0}
.researcher-record-head h3{margin:8px 0}
.researcher-record-head small{font-size:.77rem;color:var(--steel)}
.record-avatar{width:90px;height:105px;flex:0 0 90px;border-radius:12px;background:var(--paper-blue);border:1px solid var(--line);display:grid;place-items:center;color:var(--steel);overflow:hidden}
.record-avatar svg{width:42px;height:42px}
.record-avatar img{width:100%;height:100%;object-fit:cover}
.record-avatar--large{width:150px;height:180px;flex:0 0 150px}
.record-avatar--large svg{width:72px;height:72px}
.news-record{border:1px solid var(--line);border-radius:22px;overflow:hidden;min-width:0;background:#fff;scroll-margin-top:110px}
.news-record:only-child{grid-column:1/-1;max-width:1060px;width:100%}
.news-record-cover{height:115px;background:linear-gradient(120deg,var(--navy-deep),var(--navy-soft));padding:26px 30px;display:flex;align-items:center;justify-content:space-between;position:relative;overflow:hidden}
.news-record-cover:after{content:'';position:absolute;right:-42px;top:-110px;width:270px;height:270px;border-radius:50%;border:1px solid rgba(255,255,255,.2);box-shadow:0 0 0 40px rgba(255,255,255,.03)}
.news-record-cover>span{text-transform:uppercase;letter-spacing:.15em;color:#E9D8AE;font-size:.72rem;font-weight:600;position:relative;z-index:1}
.news-record-cover>svg{width:50px;height:50px;color:rgba(255,255,255,.8);position:relative;z-index:1}
.news-record-body{padding:30px;min-width:0}
.news-record h2{font-family:var(--serif);font-size:clamp(1.7rem,2.4vw,2.6rem);line-height:1.23;font-weight:500;letter-spacing:-.025em;color:var(--navy);margin:20px 0;overflow-wrap:anywhere;hyphens:auto}
.news-record-body>p,.news-record .news-detail p{font-size:1rem;color:var(--steel);line-height:1.75}
.news-record .news-detail{margin-top:22px;border-top:1px solid var(--line);padding-top:14px}
.news-record summary{padding:8px 4px;cursor:pointer;color:var(--navy);font-size:.94rem;font-weight:600}
.news-record footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;border-top:1px solid var(--line);padding-top:20px;margin-top:24px;font-size:.82rem;color:var(--steel)}
.news-record footer a{font-size:.82rem;white-space:normal;overflow-wrap:anywhere}
.profile-back{display:block;margin-bottom:24px;font-size:.87rem;color:var(--navy)}
.profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:52px;align-items:start}
.profile-layout>div{min-width:0}
.profile-intro{display:flex;gap:30px;align-items:flex-start;margin-bottom:35px}
.profile-intro>div{min-width:0}
.profile-intro h2,.profile-section h2{font-family:var(--serif);font-size:2rem;line-height:1.25;font-weight:500;color:var(--navy);margin:0 0 24px;overflow-wrap:anywhere}
.profile-intro p,.profile-section p,.profile-aside p{color:var(--steel);font-size:.97rem;line-height:1.75;overflow-wrap:anywhere}
.profile-affiliation{padding:0 0 16px;margin-bottom:16px;border-bottom:1px solid var(--line)}
.profile-affiliation strong{display:block;font-size:1rem;line-height:1.6;color:var(--navy);margin-bottom:8px}
.profile-section{border-top:1px solid var(--line);padding-top:32px;margin-bottom:38px}
.profile-aside{background:var(--paper);padding:26px;border:1px solid var(--line);border-radius:18px;min-width:0}
.profile-aside h2{font-size:1rem;line-height:1.5;font-weight:650;color:var(--navy);margin:0 0 18px}
.profile-aside h2:not(:first-child){margin-top:26px}
.profile-aside a{display:block;font-size:.86rem;line-height:1.7;overflow-wrap:anywhere;margin:10px 0 18px;white-space:normal;color:var(--navy)}
.profile-project{border:1px solid var(--line);padding:22px;border-radius:14px;margin:15px 0}
.profile-project h3{font-family:var(--serif);font-size:1.5rem;font-weight:500;line-height:1.3;margin:0 0 12px;color:var(--navy);overflow-wrap:anywhere}
.profile-project small{color:var(--steel);font-size:.8rem}
.record-template-note{padding:22px;background:#FBF7ED;border-left:3px solid var(--gold);font-size:.76rem;letter-spacing:.08em;color:#715317;margin-bottom:36px;font-weight:650}
.record-template-note p{margin-bottom:0;font-size:.92rem;font-weight:400;letter-spacing:0;line-height:1.7}
.citation-output{width:100%;min-height:120px;max-width:100%;padding:18px;border:1px solid #BDCDDC;background:var(--paper);border-radius:10px;font-family:var(--sans);font-size:.94rem;color:var(--ink);line-height:1.7;resize:vertical;overflow-wrap:anywhere}
.record-fact{border-top:1px solid var(--line);padding-top:16px;margin-top:16px;overflow-wrap:anywhere}
.record-fact small{display:block;font-size:.78rem;color:var(--steel);margin-bottom:6px}
.record-fact span{color:var(--navy);font-size:.92rem}
.catalogue-tabs button:focus-visible,.catalogue-filters :focus-visible,.catalogue-toolbar :focus-visible,.catalogue-pagination button:focus-visible,.record-button:focus-visible,.record-text-button:focus-visible{outline:2px solid var(--navy-soft);outline-offset:4px}
.news-record summary:focus-visible{outline:2px solid var(--navy-soft);outline-offset:4px;border-radius:4px}
html:not(.js) .catalogue-filters,html:not(.js) .catalogue-toolbar select,html:not(.js) .catalogue-tabs,html:not(.js) .catalogue-pagination,html:not(.js) .catalogue-export,html:not(.js) [data-copy-citation],html:not(.js) [data-export]{display:none}
@media(min-width:1100px){body[data-page="people"] .catalogue-filter-grid:first-child{grid-template-columns:1.4fr 1fr .8fr}}
@media(max-width:1000px){.profile-layout{grid-template-columns:minmax(0,1fr);gap:24px}.profile-aside{max-width:none}.catalogue-foot>.container{flex-direction:column;align-items:flex-start}.profile-layout .record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .catalogue-section{padding:36px 0 20px}.catalogue-filters{padding:18px}
 .catalogue-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.catalogue-search{grid-column:1/-1}
 .record-grid,.news-record-grid,.profile-layout .record-grid{grid-template-columns:minmax(0,1fr)}
 .catalogue-tabs{gap:10px 20px}.catalogue-tabs button{font-size:.88rem;padding:12px 0}
 .team-record,.researcher-record{padding:22px}.team-record h3,.publication-record h3,.researcher-record h3{font-size:1.6rem;line-height:1.25}
 .record-empty{padding:35px 22px}.record-empty h3{font-size:1.65rem}
 .news-record-body{padding:24px}.news-record-cover{height:90px;padding:22px 24px}.news-record-cover svg{width:38px;height:38px}
 .news-record h2{font-size:1.85rem;line-height:1.26}.news-record-body>p,.news-record .news-detail p{font-size:.95rem}
 .publication-record{padding:22px}.profile-section h2,.profile-intro h2{font-size:1.8rem}
 .catalogue-foot{padding:20px 0 48px}.catalogue-foot a{flex-shrink:1;white-space:normal;overflow-wrap:anywhere}
 .infrastructure-card{padding:24px}.infrastructure-card h3{font-size:1.75rem;line-height:1.2}
}
@media(max-width:480px){
 .catalogue-filter-grid{grid-template-columns:minmax(0,1fr)}.catalogue-field input,.catalogue-field select{font-size:16px}
 .catalogue-toolbar{align-items:flex-start;flex-direction:column;gap:14px}.catalogue-toolbar .catalogue-field{width:100%;justify-content:space-between}.catalogue-toolbar select{width:min(210px,65%);font-size:.86rem}
 .catalogue-tabs{gap:8px 16px}.catalogue-tabs button{font-size:.84rem}
 .team-record-head{font-size:.7rem}.team-record-head>span:last-child{max-width:75%}
 .team-record footer{gap:12px 18px}.record-grid .text-link{white-space:normal}
 .profile-intro{flex-direction:column}.profile-intro .record-avatar{width:120px;height:144px;flex-basis:auto}
 .researcher-record-head{gap:16px}.record-avatar{width:64px;height:80px;flex-basis:64px}
 .researcher-record-head h3{font-size:1.45rem}
 .news-record h2{font-size:1.65rem}.news-record footer{flex-direction:column;align-items:flex-start}
 .record-actions{gap:8px}.record-button{padding:8px 12px}.record-empty p{font-size:.9rem}
}
@media print{.catalogue-filters,.catalogue-tabs,.catalogue-pagination,.catalogue-export,.record-actions,.catalogue-toolbar select,.record-text-button{display:none!important}.record-grid,.news-record-grid,.profile-layout{display:block}.team-record,.researcher-record,.news-record,.publication-record{break-inside:avoid;box-shadow:none;margin-bottom:20px}.profile-aside{margin-top:30px}.news-record-cover{height:auto;background:none;color:var(--navy)}.news-record-cover svg{display:none}}
