:root{--font-body:"DM Sans",Arial,sans-serif;--font-display:"Libre Franklin",Arial,sans-serif;--shell:1200px;--radius:2px;--shadow:0 16px 45px rgba(12,35,25,.09);--transition:180ms ease;--bg:#f8f7f2;--surface:#fff;--surface-alt:#f0efe7;--ink:#15231d;--muted:#66706b;--line:#dde1dc;--brand:#0b6041;--brand-deep:#064a33;--accent:#e9ba35;--accent-ink:#17271f;--header:#fff;--header-ink:#10231b;--hero:#0a523a;--hero-ink:#fff;--footer:#083f30;--footer-ink:#fff}
.iep-palette-light{--bg:#faf9f5;--surface:#fff;--surface-alt:#f1f3ed;--ink:#15231d;--muted:#69726e;--line:#dce1dc;--brand:#096444;--brand-deep:#064a33;--accent:#e4b72f;--accent-ink:#17271f;--header:#fff;--header-ink:#14221d;--hero:#0b553d;--hero-ink:#fff;--footer:#063d2d;--footer-ink:#fff}
.iep-palette-medium{--bg:#fbf8eb;--surface:#fffdf5;--surface-alt:#f4e8b8;--ink:#28301c;--muted:#756e4f;--line:#e5d9a6;--brand:#385d32;--brand-deep:#274627;--accent:#f0c82e;--accent-ink:#282711;--header:#e8bd28;--header-ink:#202817;--hero:#d9ab1c;--hero-ink:#1e2b1c;--footer:#354b2b;--footer-ink:#fffdf5}
.iep-palette-dark{--bg:#f7f4e9;--surface:#fff;--surface-alt:#e9eee7;--ink:#14251e;--muted:#66726c;--line:#d5ddd6;--brand:#0b5a40;--brand-deep:#063d2d;--accent:#e9bb39;--accent-ink:#14251e;--header:#073e30;--header-ink:#fff;--hero:#084b37;--hero-ink:#fff;--footer:#052f25;--footer-ink:#fff}
.iep-palette-midnight{--bg:#f5f6f7;--surface:#fff;--surface-alt:#e7eceb;--ink:#172326;--muted:#637075;--line:#d5dcde;--brand:#176552;--brand-deep:#092c35;--accent:#d4ad3e;--accent-ink:#162525;--header:#092c35;--header-ink:#fff;--hero:#0b3540;--hero-ink:#fff;--footer:#071f27;--footer-ink:#fff}
.iep-palette-sage{--bg:#f3f4ec;--surface:#fcfcf7;--surface-alt:#e2e7d8;--ink:#243027;--muted:#687168;--line:#d3d9cc;--brand:#54715b;--brand-deep:#385442;--accent:#d9b64d;--accent-ink:#263023;--header:#f8f8f1;--header-ink:#263128;--hero:#5c745f;--hero-ink:#fff;--footer:#3f5948;--footer-ink:#fff}
.iep-palette-earth{--bg:#f6f1e9;--surface:#fffcf7;--surface-alt:#eadfce;--ink:#32271f;--muted:#77695d;--line:#dfd1c2;--brand:#6b6840;--brand-deep:#504a30;--accent:#cf923d;--accent-ink:#30261e;--header:#f5eee5;--header-ink:#332920;--hero:#756646;--hero-ink:#fff;--footer:#463d2f;--footer-ink:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.6;margin:0;overflow-x:hidden}body.menu-open{overflow:hidden}img{display:block;height:auto;max-width:100%}a{color:inherit;text-decoration:none;transition:color var(--transition),background var(--transition),border-color var(--transition),opacity var(--transition)}a:hover{color:var(--brand)}button,input,textarea,select{font:inherit}button{cursor:pointer}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.035em;line-height:1.08;margin:0 0 .55em}h1{font-size:clamp(2.7rem,6vw,5.7rem)}h2{font-size:clamp(2rem,4vw,3.5rem)}h3{font-size:clamp(1.15rem,2vw,1.5rem)}p{margin:0 0 1.25rem}.shell{margin-inline:auto;max-width:var(--shell);padding-inline:28px;width:100%}.shell--narrow{max-width:920px}.screen-reader-text{clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute!important;width:1px;word-wrap:normal!important}.skip-link{background:var(--accent);color:var(--accent-ink);font-weight:700;left:15px;padding:10px 16px;position:fixed;top:-100px;z-index:999}.skip-link:focus{top:15px}.eyebrow{align-items:center;color:var(--brand);display:flex;font-size:.73rem;font-weight:700;gap:9px;letter-spacing:.18em;margin-bottom:17px;text-transform:uppercase}.eyebrow:before{background:var(--accent);content:"";height:2px;width:24px}.text-link{color:var(--brand);font-size:.78rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.text-link span{display:inline-block;margin-left:7px;transition:transform var(--transition)}.text-link:hover span{transform:translateX(4px)}.button-row{display:flex;flex-wrap:wrap;gap:12px}.button{align-items:center;border:1px solid transparent;border-radius:var(--radius);display:inline-flex;font-size:.83rem;font-weight:700;gap:12px;justify-content:center;letter-spacing:.015em;min-height:48px;padding:11px 22px}.button--primary{background:var(--accent);color:var(--accent-ink)}.button--primary:hover{background:#f3c84f;color:var(--accent-ink)}.button--ghost{border-color:currentColor;color:inherit}.button--ghost:hover{background:var(--surface);border-color:var(--surface);color:var(--brand-deep)}.button--dark{background:var(--brand-deep);color:#fff}.button--dark:hover{background:var(--ink);color:#fff}
.site-header{background:var(--header);color:var(--header-ink);position:relative;z-index:50}.site-header__inner{align-items:center;display:grid;grid-template-columns:minmax(210px,1fr) auto minmax(145px,.55fr);min-height:82px}.site-branding{max-width:310px}.custom-logo-link{display:block}.custom-logo{max-height:58px;width:auto}.wordmark{align-items:center;display:flex;font-family:var(--font-display);font-size:.78rem;font-weight:700;line-height:1.25;max-width:270px;text-transform:uppercase}.wordmark__mark{align-items:center;background:var(--brand);color:var(--accent);display:flex;font-size:1.5rem;height:52px;justify-content:center;margin-right:12px;min-width:74px}.primary-menu,.footer-menu{display:flex;gap:25px;list-style:none;margin:0;padding:0}.primary-menu a{display:block;font-size:.82rem;font-weight:600;padding:31px 0}.primary-menu .current-menu-item>a,.primary-menu a:hover{color:var(--accent)}.header-actions{align-items:center;display:flex;gap:20px;justify-content:flex-end}.language-switcher{border:1px solid color-mix(in srgb,currentColor 35%,transparent);display:flex}.language-switcher a{font-size:.72rem;font-weight:700;padding:5px 9px}.language-switcher a[aria-current=page]{background:var(--accent);color:var(--accent-ink)}.search-toggle,.menu-toggle{background:none;border:0;color:inherit}.search-toggle{font-size:2rem;line-height:1;padding:2px}.menu-toggle{display:none;width:42px}.menu-toggle span:not(.screen-reader-text){background:currentColor;display:block;height:2px;margin:5px;width:24px}.header-search{background:var(--surface);border-top:1px solid var(--line);padding:18px 0}.search-form{display:flex}.search-form label{flex:1}.search-field{background:var(--bg);border:1px solid var(--line);height:50px;padding:0 15px;width:100%}.search-submit{background:var(--accent);border:0;color:var(--accent-ink);font-weight:700;padding:0 22px}
.hero{background:linear-gradient(105deg,var(--hero) 0%,var(--hero) 58%,color-mix(in srgb,var(--hero) 86%,#000) 100%);color:var(--hero-ink);isolation:isolate;min-height:620px;overflow:hidden;position:relative}.hero.has-image:before{background:linear-gradient(90deg,var(--hero) 0%,color-mix(in srgb,var(--hero) 94%,transparent) 38%,color-mix(in srgb,var(--hero) 30%,transparent) 75%,color-mix(in srgb,var(--hero) 63%,transparent)),var(--hero-image) center/cover no-repeat;content:"";inset:0;position:absolute;z-index:-1}.hero:after{background:linear-gradient(125deg,transparent 0 62%,color-mix(in srgb,var(--accent) 8%,transparent) 62% 63%,transparent 63%);content:"";inset:0;pointer-events:none;position:absolute}.hero__inner{align-items:end;display:grid;grid-template-columns:minmax(0,1fr) 260px;min-height:620px;padding-bottom:65px;padding-top:80px}.hero__content{max-width:760px}.hero .eyebrow{color:var(--hero-ink)}.hero h1{font-size:clamp(3rem,6.5vw,6rem);max-width:770px}.hero h1 br+*{color:var(--accent)}.hero__lead{font-size:clamp(1rem,1.8vw,1.25rem);max-width:610px}.hero__metrics{align-self:end;border-left:1px solid color-mix(in srgb,var(--hero-ink) 35%,transparent);display:grid;gap:20px;padding-left:26px}.hero__metrics div{border-bottom:1px solid color-mix(in srgb,var(--hero-ink) 22%,transparent);padding-bottom:17px}.hero__metrics strong{display:block;font-family:var(--font-display);font-size:2.2rem;line-height:1}.hero__metrics span{display:block;font-size:.72rem;letter-spacing:.08em;margin-top:7px;text-transform:uppercase}
.home-section{padding:78px 0}.section-heading{align-items:end;display:flex;justify-content:space-between;margin-bottom:32px}.section-heading h2{font-size:clamp(2rem,4vw,3.3rem);margin:0}.section-heading .eyebrow{margin-bottom:10px}.section-intro{color:var(--muted);max-width:700px}.research-grid{display:grid;gap:14px;grid-template-columns:repeat(4,1fr)}.research-card{background:var(--surface);border-bottom:4px solid var(--brand);box-shadow:0 0 0 1px var(--line);display:flex;flex-direction:column;min-height:100%}.research-card:nth-child(4n+4){border-color:var(--accent)}.research-card__image{aspect-ratio:1.35;display:block;overflow:hidden}.research-card__image img{height:100%;object-fit:cover;transition:transform .5s ease;width:100%}.research-card:hover img{transform:scale(1.04)}.image-placeholder{background:linear-gradient(135deg,var(--surface-alt),color-mix(in srgb,var(--brand) 14%,var(--surface)));display:block;height:100%;min-height:180px;position:relative}.image-placeholder:after{border:1px solid color-mix(in srgb,var(--brand) 35%,transparent);border-radius:50%;content:"";height:70px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:70px}.research-card__body{display:flex;flex:1;flex-direction:column;padding:23px}.research-card__body p{color:var(--muted);font-size:.9rem}.research-card__body .text-link{margin-top:auto}.research-card h3 a:hover,.news-card h3 a:hover,.archive-card h2 a:hover{color:var(--brand)}
.featured-project{background:var(--brand-deep);color:#fff;padding:68px 0}.featured-project__grid{align-items:center;display:grid;gap:40px;grid-template-columns:1.2fr .95fr .8fr .68fr}.featured-project .eyebrow{color:var(--accent)}.featured-project h2{font-size:clamp(2.2rem,4vw,4rem)}.featured-project__intro>p:not(.eyebrow){color:rgba(255,255,255,.76);max-width:480px}.featured-project__item{border-left:1px solid rgba(255,255,255,.25);padding-left:30px}.featured-project__item h3{font-size:1.4rem}.featured-project__item p{color:rgba(255,255,255,.7);font-size:.9rem}.featured-project .text-link{color:var(--accent)}.featured-project__visual{aspect-ratio:.9;background:radial-gradient(circle at 38% 18%,var(--accent) 0 5px,transparent 6px),radial-gradient(circle at 61% 39%,#8ab88e 0 5px,transparent 6px),radial-gradient(circle at 30% 62%,#8ab88e 0 4px,transparent 5px),radial-gradient(circle at 67% 73%,var(--accent) 0 5px,transparent 6px),linear-gradient(135deg,transparent 49%,rgba(255,255,255,.18) 50%,transparent 51%);border:1px solid rgba(255,255,255,.2);clip-path:polygon(41% 0,67% 8%,82% 28%,77% 49%,93% 62%,72% 84%,49% 100%,27% 89%,15% 68%,4% 47%,18% 24%);position:relative}.featured-project__stat{border:1px solid rgba(255,255,255,.25);padding:25px}.featured-project__stat>span{display:block;font-size:.67rem;letter-spacing:.18em;text-transform:uppercase}.featured-project__stat strong{display:block;font-family:var(--font-display);font-size:2.7rem;margin:8px 0}.featured-project__stat p{color:rgba(255,255,255,.7);font-size:.8rem;margin:0}
.analysis-repository{padding-bottom:35px}.analysis-repository__grid{display:grid;gap:22px;grid-template-columns:1.15fr 1fr}.analysis-list{background:var(--surface);padding:38px}.analysis-list .section-heading{margin-bottom:12px}.analysis-list h2{font-size:2.2rem}.analysis-item{align-items:center;border-top:1px solid var(--line);display:grid;gap:17px;grid-template-columns:58px 1fr 30px;padding:18px 0}.analysis-item time{color:var(--muted);font-size:.67rem;line-height:1.2;text-transform:uppercase}.analysis-item time strong{color:var(--ink);display:block;font-size:1.25rem}.analysis-item h3{font-family:var(--font-body);font-size:.92rem;letter-spacing:0;margin-bottom:4px}.analysis-item p{color:var(--muted);font-size:.75rem;margin:0}.analysis-item__arrow{color:var(--brand);font-size:1.25rem}.repository-card{background:linear-gradient(125deg,color-mix(in srgb,var(--accent) 88%,#fff),color-mix(in srgb,var(--accent) 42%,var(--surface)));display:grid;grid-template-columns:1.25fr .75fr;overflow:hidden}.repository-card__content{padding:42px 12px 42px 40px}.repository-card .eyebrow{color:var(--accent-ink)}.repository-card h2{color:var(--accent-ink);font-size:2.4rem}.repository-card p{color:color-mix(in srgb,var(--accent-ink) 78%,transparent);font-size:.9rem}.repository-card__image{align-self:end;height:85%}.repository-card__image img{height:100%;object-fit:cover;width:100%}
.news-section{padding-top:45px}.news-grid,.archive-grid{display:grid;gap:18px;grid-template-columns:repeat(3,1fr)}.news-card,.archive-card{background:var(--surface);border:1px solid var(--line)}.news-card__image,.archive-card__image{aspect-ratio:1.55;display:block;overflow:hidden}.news-card__image img,.archive-card__image img{height:100%;object-fit:cover;transition:transform .5s ease;width:100%}.news-card:hover img,.archive-card:hover img{transform:scale(1.04)}.news-card__body,.archive-card__body{padding:23px}.news-card time,.card-meta{color:var(--muted);font-size:.7rem;letter-spacing:.03em}.news-card h3{font-size:1.15rem;margin-top:9px}.news-card p,.archive-card p{color:var(--muted);font-size:.86rem}.newsletter-section{background:var(--surface-alt);border-top:1px solid var(--line);padding:34px 0}.newsletter-section__inner{align-items:center;display:grid;gap:45px;grid-template-columns:1fr 1.25fr}.newsletter-section h2{font-size:1.35rem;margin-bottom:5px}.newsletter-section p{color:var(--muted);font-size:.84rem;margin:0}.newsletter-form form{display:flex}.newsletter-form input{background:var(--surface);border:1px solid var(--line);flex:1;min-width:0;padding:0 14px}.newsletter-form small{color:var(--muted);display:block;margin-top:5px}.empty-state{background:var(--surface-alt);border:1px dashed var(--line);color:var(--muted);padding:24px}.empty-state p{margin:0}
.site-footer{background:var(--footer);color:var(--footer-ink);padding-top:55px}.footer-grid{display:grid;gap:60px;grid-template-columns:1.3fr 1fr .8fr;padding-bottom:45px}.wordmark--footer{color:inherit}.wordmark--footer:hover{color:inherit}.footer-brand p{color:rgba(255,255,255,.63);font-size:.84rem;margin-top:20px;max-width:330px}.footer-navigation .footer-menu{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 25px}.footer-menu a{color:rgba(255,255,255,.78);font-size:.82rem}.footer-menu a:hover{color:var(--accent)}.footer-contact h2{font-size:1rem;letter-spacing:.08em;text-transform:uppercase}.footer-contact p{color:rgba(255,255,255,.75);font-size:.82rem;margin:0 0 7px}.footer-contact a:hover{color:var(--accent)}.social-links{display:flex;gap:8px;margin-top:18px}.social-links a{align-items:center;border:1px solid rgba(255,255,255,.35);border-radius:50%;display:flex;font-size:.75rem;font-weight:700;height:34px;justify-content:center;width:34px}.footer-bottom{border-top:1px solid rgba(255,255,255,.18);display:flex;font-size:.7rem;justify-content:space-between;letter-spacing:.06em;padding-bottom:18px;padding-top:18px;text-transform:uppercase}
.content-main{min-height:60vh;padding:85px 0}.archive-header,.entry-header{margin-bottom:48px}.archive-header h1,.entry-header h1{font-size:clamp(2.8rem,6vw,5.3rem)}.archive-description{color:var(--muted);max-width:700px}.archive-card{display:flex;flex-direction:column}.archive-card__body{display:flex;flex:1;flex-direction:column}.archive-card h2{font-size:1.3rem;margin-top:8px}.archive-card .text-link{margin-top:auto}.navigation.pagination{margin-top:45px}.nav-links{display:flex;gap:8px}.page-numbers{align-items:center;border:1px solid var(--line);display:flex;height:40px;justify-content:center;min-width:40px}.page-numbers.current{background:var(--brand);border-color:var(--brand);color:#fff}.entry-hero{margin:0 0 40px}.entry-hero img{max-height:600px;object-fit:cover;width:100%}.entry-content{font-size:1.05rem}.entry-content>*{max-width:760px}.entry-content>.alignwide{margin-left:50%;max-width:1100px;transform:translateX(-50%);width:calc(100vw - 56px)}.entry-content>.alignfull{margin-left:50%;max-width:none;transform:translateX(-50%);width:100vw}.entry-content h2{font-size:2rem;margin-top:1.5em}.entry-content h3{font-size:1.45rem;margin-top:1.4em}.entry-content a{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}.entry-content blockquote{border-left:4px solid var(--accent);font-size:1.25rem;margin:2rem 0;padding-left:25px}.details-grid{background:var(--surface-alt);display:grid;grid-template-columns:repeat(3,1fr);margin:0 0 30px;padding:22px}.details-grid div{border-left:2px solid var(--accent);padding:5px 15px}.details-grid dt{color:var(--muted);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase}.details-grid dd{font-weight:700;margin:2px 0}.researcher-position,.publication-authors{color:var(--brand);font-size:1.2rem;font-weight:600}.profile-links{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.tag-link{border:1px solid var(--line);font-size:.78rem;font-weight:700;padding:7px 12px}.empty-page{text-align:center}.empty-page .eyebrow{justify-content:center}.empty-page .eyebrow:before{display:none}
@media(max-width:1050px){.site-header__inner{grid-template-columns:1fr auto auto}.menu-toggle{display:block}.primary-navigation{background:var(--header);bottom:0;display:none;left:0;overflow:auto;padding:25px 28px;position:fixed;right:0;top:82px}.primary-navigation.is-open{display:block}.primary-menu{display:block}.primary-menu a{border-bottom:1px solid var(--line);font-size:1rem;padding:15px 0}.hero__inner{grid-template-columns:1fr}.hero__metrics{border-left:0;display:flex;margin-top:45px;padding:0}.hero__metrics div{border-bottom:0;border-right:1px solid rgba(255,255,255,.25);max-width:190px;padding-right:25px}.research-grid{grid-template-columns:repeat(2,1fr)}.featured-project__grid{grid-template-columns:1.1fr 1fr 1fr}.featured-project__visual{display:none}.analysis-repository__grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1.2fr 1fr}.footer-contact{grid-column:1/-1}}
@media(max-width:720px){.shell{padding-inline:20px}.site-header__inner{min-height:72px}.site-branding{max-width:210px}.wordmark{font-size:.62rem}.wordmark__mark{font-size:1.2rem;height:44px;min-width:60px}.header-actions{gap:9px}.search-toggle{display:none}.language-switcher a{padding:4px 7px}.primary-navigation{top:72px}.hero,.hero__inner{min-height:630px}.hero__inner{padding-bottom:44px;padding-top:55px}.hero h1{font-size:clamp(2.7rem,13vw,4.4rem)}.hero.has-image:before{background:linear-gradient(0deg,var(--hero) 0%,color-mix(in srgb,var(--hero) 88%,transparent) 75%,color-mix(in srgb,var(--hero) 55%,transparent)),var(--hero-image) center/cover no-repeat}.hero__metrics{gap:18px}.hero__metrics strong{font-size:1.7rem}.home-section{padding:55px 0}.section-heading{align-items:flex-start;gap:15px}.section-heading .text-link{margin-top:12px}.research-grid,.news-grid,.archive-grid{grid-template-columns:1fr}.featured-project__grid{grid-template-columns:1fr}.featured-project__item{border-left:0;border-top:1px solid rgba(255,255,255,.25);padding-left:0;padding-top:28px}.featured-project__stat{max-width:300px}.analysis-list{padding:27px 20px}.analysis-item{grid-template-columns:50px 1fr}.analysis-item__arrow{display:none}.repository-card{grid-template-columns:1fr}.repository-card__content{padding:34px 25px}.repository-card__image{height:210px}.newsletter-section__inner{grid-template-columns:1fr}.newsletter-form form{flex-direction:column}.newsletter-form input{min-height:48px}.footer-grid{grid-template-columns:1fr}.footer-contact{grid-column:auto}.footer-bottom{flex-direction:column;gap:7px}.details-grid{grid-template-columns:1fr}.entry-content>.alignwide{width:100vw}.content-main{padding:58px 0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
.related-content{border-top:1px solid var(--line);margin-top:55px;padding-top:40px}.related-content h2{font-size:1.7rem}.related-content__grid{display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.related-content__grid a{background:var(--surface-alt);border-left:3px solid var(--accent);font-weight:700;padding:18px}@media(max-width:720px){.related-content__grid{grid-template-columns:1fr}}
.archive-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}
.primary-menu li{position:relative}.primary-menu .sub-menu{background:var(--header);box-shadow:var(--shadow);display:none;left:-18px;list-style:none;margin:0;min-width:220px;padding:8px 18px;position:absolute;top:70px}.primary-menu .sub-menu a{padding:10px 0}.primary-menu li:hover>.sub-menu,.primary-menu li:focus-within>.sub-menu{display:block}@media(max-width:1050px){.primary-menu .sub-menu{box-shadow:none;display:block;margin-left:18px;min-width:0;padding:0;position:static}.primary-menu .sub-menu a{font-size:.9rem;padding:11px 0}}
.site-header__inner{grid-template-columns:minmax(300px,1.25fr) auto minmax(135px,.5fr)}.site-branding{align-items:center;display:flex;gap:13px;max-width:420px;min-width:0}.site-branding .custom-logo-link,.wordmark--mark-only{flex:0 0 auto}.site-branding .custom-logo{max-height:56px;max-width:86px;object-fit:contain;width:auto}.site-identity{border-left:1px solid color-mix(in srgb,currentColor 22%,transparent);min-width:0;padding-left:13px}.site-title{font-family:var(--font-display);font-size:.9rem;font-weight:800;letter-spacing:-.01em;line-height:1.15;margin:0;text-transform:uppercase}.site-title a:hover{color:var(--accent)}.site-tagline{color:color-mix(in srgb,currentColor 66%,transparent);font-size:.64rem;line-height:1.25;margin:5px 0 0;max-width:235px}.iep-parallax-enabled .hero.has-image:before{background-position:center center,center calc(50% + var(--iep-parallax-y,0px));will-change:background-position}
@media(max-width:1180px){.site-header__inner{grid-template-columns:1fr auto auto}.menu-toggle{display:block}.primary-navigation{background:var(--header);bottom:0;display:none;left:0;overflow:auto;padding:25px 28px;position:fixed;right:0;top:82px}.primary-navigation.is-open{display:block}.primary-menu{display:block}.primary-menu a{border-bottom:1px solid var(--line);font-size:1rem;padding:15px 0}.primary-menu .sub-menu{box-shadow:none;display:block;margin-left:18px;min-width:0;padding:0;position:static}.primary-menu .sub-menu a{font-size:.9rem;padding:11px 0}}
@media(max-width:900px),(prefers-reduced-motion:reduce){.iep-parallax-enabled .hero.has-image:before{background-position:center center,center center;will-change:auto}}
@media(max-width:720px){.site-header__inner{padding-inline:16px}.site-branding{gap:8px;max-width:230px}.site-branding .custom-logo{max-height:47px;max-width:58px}.site-identity{padding-left:8px}.site-title{font-size:.72rem}.site-tagline{font-size:.55rem;margin-top:3px;max-width:150px}}
@media(max-width:440px){.site-header__inner{padding-inline:10px}.site-branding{max-width:180px}.site-branding .custom-logo{max-width:45px}.site-title{font-size:.65rem}.site-tagline{font-size:.5rem;max-width:112px}.header-actions{gap:5px}.language-switcher a{font-size:.62rem;padding:3px 5px}.menu-toggle{padding:5px;width:34px}}

/* 1.2: utility navigation, cascading menus and independent content width. */
:root{--font-body:"Noto Sans",Arial,sans-serif;--font-display:"Noto Sans",Arial,sans-serif;--inner-shell:1200px}
.top-bar{background:var(--surface-alt);color:var(--ink);border-bottom:1px solid var(--line)}
.top-menu{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px 24px;list-style:none;margin:0;padding:8px 0}
.top-menu a{display:block;font-size:.75rem;font-weight:600;padding:3px 0}
.top-menu a:hover,.top-menu a:focus-visible{text-decoration:underline}
.content-main>.shell{max-width:var(--inner-shell)}
.content-main .entry-content>*{max-width:100%}
.content-main .entry-content>.alignwide,.content-main .entry-content>.alignfull{margin-inline:0;transform:none;width:100%;max-width:100%}
.content-main .entry-header h1,.content-main .archive-header h1{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.2;overflow-wrap:anywhere}
.content-main .entry-header,.content-main .archive-header{margin-bottom:30px}
.content-main .entry-content h1{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.2}
.content-main .entry-content h2{font-size:clamp(1.45rem,2.3vw,2rem);line-height:1.25}
.content-main{padding-top:52px}
.submenu-toggle{border:0;background:transparent;color:inherit;position:absolute;right:0;top:50%;transform:translateY(-50%);width:28px;height:32px;padding:0;font-size:1rem;line-height:1;z-index:2}
.submenu-toggle:focus-visible,.primary-menu a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.primary-menu .menu-item-has-children>a{padding-right:30px}
@media(min-width:1181px){
 .primary-menu>.menu-item-has-children>.submenu-toggle{top:41px}
 .primary-menu .sub-menu{top:100%;left:0;padding:8px 0;min-width:240px;width:240px;z-index:60;border:1px solid var(--line)}
 .primary-menu .sub-menu a{padding:10px 16px;overflow-wrap:anywhere}
 .primary-menu .sub-menu .menu-item-has-children>a{padding-right:38px}
 .primary-menu .sub-menu .sub-menu{top:-1px;left:100%;right:auto}
 .primary-menu .sub-menu .submenu-toggle{right:5px}
 .primary-menu .sub-menu .submenu-toggle span{display:block;transform:rotate(-90deg)}
 .primary-menu li.submenu-open>.sub-menu{display:block}
 .primary-menu li.submenu-closed>.sub-menu{display:none}
 .primary-menu .sub-menu.opens-left{left:auto;right:100%}
 .primary-menu>.menu-item-has-children>.sub-menu.opens-left{right:0;left:auto}
}
@media(max-width:1180px){
 .primary-navigation{top:var(--iep-nav-top,120px);max-height:calc(100dvh - var(--iep-nav-top,120px))}
 .primary-menu .menu-item-has-children{position:relative}
 .primary-menu .menu-item-has-children>.submenu-toggle{top:10px;transform:none;width:36px;height:36px}
 .primary-menu .sub-menu{position:static;left:auto;top:auto;width:auto;border:0;margin-left:16px}
 .js-navigation .primary-menu li>.sub-menu,.js-navigation .primary-menu li:hover>.sub-menu,.js-navigation .primary-menu li:focus-within>.sub-menu{display:none}
 .js-navigation .primary-menu li.submenu-open>.sub-menu{display:block}
 .top-menu{justify-content:flex-start;gap:4px 16px}
}

/* 1.3: team photograph, utility controls and content selectors. */
.top-bar__inner{display:flex;align-items:center;justify-content:flex-end;gap:26px;min-height:43px}
.top-navigation{min-width:0}.top-bar .header-actions{flex-shrink:0;gap:20px}.top-bar .search-toggle{display:block}
.site-header__inner{grid-template-columns:minmax(270px,350px) minmax(0,1fr);gap:24px}
.site-header__inner .primary-navigation{justify-self:end}.primary-menu{justify-content:flex-end}
.site-branding{max-width:350px}.site-identity{max-width:260px}.site-identity .site-title{font-size:1rem;line-height:1.2;text-wrap:balance}
.content-main .entry-content p{text-align:justify;text-justify:inter-word;hyphens:auto}
.hero.has-image{display:grid;background:var(--hero);min-height:0}
.hero.has-image .hero__photo{grid-area:1/1;width:100%;height:auto;align-self:start;z-index:-2}
.hero.has-image:before{background:linear-gradient(to top,var(--hero) 0%,color-mix(in srgb,var(--hero) 95%,transparent) 12%,color-mix(in srgb,var(--hero) 65%,transparent) 28%,transparent 58%);z-index:-1;pointer-events:none}
.hero.has-image:after{display:none}
.hero.has-image .hero__inner{grid-area:1/1;min-height:0;padding-top:clamp(330px,33vw,640px);padding-bottom:36px;gap:26px}
.hero.has-image h1{font-size:clamp(2rem,3.4vw,3.4rem);max-width:820px}
.hero.has-image .hero__lead{font-size:1.05rem;max-width:700px;margin-bottom:18px}
.hero.has-image .hero__metrics{margin-top:0}
.iep-parallax-enabled .hero.has-image .hero__photo{transform:translateY(var(--iep-parallax-y,0px))}
.selected-content__grid{display:grid;grid-template-columns:repeat(var(--cards,3),minmax(0,1fr));gap:24px}
@media(max-width:1180px){.site-header__inner{grid-template-columns:minmax(0,1fr) auto}.site-header__inner .primary-navigation{justify-self:auto}}
@media(max-width:900px){.selected-content__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero.has-image .hero__inner{grid-template-columns:1fr}.hero.has-image .hero__metrics{display:flex;gap:24px;border:0;padding:0}.hero.has-image .hero__photo{transform:none!important}}
@media(max-width:720px){
 .top-bar__inner{flex-wrap:wrap;gap:5px 16px;padding-block:6px}.top-navigation{flex:1 1 190px}.top-menu{gap:3px 12px;padding:0}.top-bar .header-actions{gap:12px}.top-bar .search-toggle{font-size:2rem}
 .site-branding{max-width:330px}.site-identity{max-width:240px}.site-identity .site-title{font-size:1rem}.site-tagline{max-width:220px}
 .hero.has-image{display:block}.hero.has-image .hero__photo{position:relative;z-index:0}.hero.has-image:before{display:none}
 .hero.has-image .hero__inner{padding-top:28px;padding-bottom:30px;position:relative}.hero.has-image h1{font-size:2rem}
 .selected-content__grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.hero.has-image .hero__photo{transform:none!important}}

/* 1.3.1: compact researcher profile and links within editorial content. */
.researcher-profile{display:grid;grid-template-columns:184px minmax(0,1fr);align-items:start;gap:30px;padding:26px;margin:0 0 38px;background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:12px}
.researcher-profile--no-photo{grid-template-columns:minmax(0,1fr)}
.researcher-profile__portrait{margin:0;background:var(--surface-alt);border-radius:8px;overflow:hidden}
.researcher-profile__portrait .researcher-profile__photo{display:block;width:100%;height:auto;max-height:280px;object-fit:contain}
.researcher-profile__info{min-width:0;align-self:center}
.researcher-profile__position{font-family:var(--font-display);font-size:1.15rem;font-weight:700;line-height:1.45;color:var(--brand-deep);margin:0 0 18px}
.researcher-profile__contacts{display:grid;gap:10px;margin:0 0 22px}
.researcher-profile__contacts>div{display:grid;grid-template-columns:85px minmax(0,1fr);gap:12px}
.researcher-profile__contacts dt{font-size:.8rem;color:var(--muted);padding-top:2px}
.researcher-profile__contacts dd{margin:0;overflow-wrap:anywhere}
.researcher-profile__contacts a{color:var(--brand-deep);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px}
.researcher-profile__contacts a:hover{text-decoration-color:var(--brand)}
.researcher-profile__links{display:flex;flex-wrap:wrap;gap:9px;align-items:center}
.researcher-profile__link{display:inline-flex;align-items:center;gap:12px;min-height:42px;padding:9px 14px;border:1px solid var(--line);border-radius:6px;background:var(--surface-alt);color:var(--ink);font-size:.82rem;font-weight:600}
.researcher-profile__link:hover{border-color:var(--brand);color:var(--brand-deep);background:var(--surface)}
.researcher-profile__cv{border-radius:6px;min-height:42px;padding:9px 16px}
.researcher-profile a:focus-visible{outline:2px solid var(--brand);outline-offset:4px}
.content-main .entry-content a:not(.button):not(.wp-block-button__link):not(:has(img)){color:var(--brand-deep);font-weight:500;text-decoration-line:underline;text-decoration-color:var(--accent);text-decoration-thickness:1.5px;text-underline-offset:4px;text-decoration-skip-ink:auto;overflow-wrap:anywhere;border-radius:2px}
.content-main .entry-content a:not(.button):not(.wp-block-button__link):not(:has(img)):hover{color:var(--brand-deep);background:var(--surface-alt);text-decoration-color:var(--brand);text-decoration-thickness:2px}
.content-main .entry-content a:focus-visible{outline:2px solid var(--brand);outline-offset:3px}
.content-main .entry-content a[target="_blank"]:not(.button):not(.wp-block-button__link):not(:has(img))::after{content:" ↗";font-size:.8em;text-decoration:none;display:inline-block;margin-left:.15em}
@media(max-width:600px){.researcher-profile{grid-template-columns:minmax(0,1fr);gap:20px;padding:20px}.researcher-profile__portrait{width:144px}.researcher-profile__portrait .researcher-profile__photo{max-height:216px}.researcher-profile__contacts>div{grid-template-columns:1fr;gap:2px}.researcher-profile__position{font-size:1.05rem}}

/* 1.3.2: publishing metadata only. */
.publication-subtitle{font-size:1.2rem;color:var(--muted)}
.publishing-details{margin:0 0 28px;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--surface)}
.publishing-details>div{display:grid;grid-template-columns:minmax(140px,210px) minmax(0,1fr);gap:20px;padding:14px 20px;border-bottom:1px solid var(--line)}
.publishing-details>div:last-child{border-bottom:0}.publishing-details dt{font-weight:600;color:var(--muted);font-size:.88rem}.publishing-details dd{margin:0;overflow-wrap:anywhere}.publishing-details a{text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--accent)}
.publishing-downloads{margin-bottom:32px}.publishing-downloads .button{max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:left}
@media(max-width:600px){.publishing-details>div{grid-template-columns:1fr;gap:4px;padding:12px 16px}}
