/*
Theme Name: ECLIR Institutional v0.10.40
Theme URI: https://eclir.eu/
Author: ECLIR
Description: Institutional block theme for the European Centre for Legal and Institutional Research.
Version: 0.10.40
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: eclir
License: GNU General Public License v2 or later
*/

:root{
  --eclir-navy:#0B1D3A;
  --eclir-navy-deep:#07182F;
  --eclir-navy-2:#10294D;
  --eclir-navy-3:#17375F;
  --eclir-gold:#C8A24A;
  --eclir-gold-soft:#D9B655;
  --eclir-paper:#F8F7F3;
  --eclir-paper-cool:#F5F7FA;
  --eclir-ink:#12213B;
  --eclir-muted:#667085;
  --eclir-line:#D9DDE5;
  --eclir-serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;
  --eclir-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--eclir-paper);
  color:var(--eclir-ink);
  font-family:var(--eclir-sans);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.wp-site-blocks{padding:0!important}
.wp-site-blocks>*{margin-block-start:0!important;margin-block-end:0!important}
img{max-width:100%;height:auto}
a{text-underline-offset:.18em;text-decoration-thickness:.08em}
a:focus-visible,button:focus-visible,summary:focus-visible,.wp-element-button:focus-visible{outline:3px solid var(--eclir-gold);outline-offset:3px}
.eclir-shell{width:min(1440px,calc(100% - 72px));margin-inline:auto}
.eclir-kicker{color:var(--eclir-gold);letter-spacing:.08em;text-transform:uppercase;font-size:.92rem;font-weight:650}
.eclir-serif{font-family:var(--eclir-serif)}

/* Header */
.eclir-header{
  position:relative;
  z-index:30;
  background:#07182F;
  border-bottom:0;
}
.eclir-header-inner{min-height:116px;display:flex;align-items:center;justify-content:space-between;gap:2.25rem}
.eclir-brand{display:flex;align-items:center;color:#fff;text-decoration:none;flex:0 0 auto}
.eclir-brand-image img{display:block;width:305px;height:auto;max-width:100%;object-fit:contain;object-position:left center}
.eclir-nav{display:flex;align-items:center;justify-content:flex-end;gap:1.72rem;min-width:0}
.eclir-nav>a,.eclir-lang-option{color:#fff!important;text-decoration:none!important;font-size:.72rem;letter-spacing:.018em;text-transform:uppercase;white-space:nowrap;transition:color .18s ease,opacity .18s ease}
.eclir-nav>a:hover,.eclir-lang-option:hover{color:var(--eclir-gold-soft)!important}
.eclir-lang-switch{display:flex;align-items:center;gap:.42rem;margin-left:.18rem;height:36px}
.eclir-lang-option{position:relative;display:flex;align-items:center;height:36px;color:rgba(255,255,255,.62)!important;text-decoration:none!important;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;transition:color .18s ease}
.eclir-lang-option:hover{color:#fff!important}
.eclir-lang-option.is-active{color:#fff!important}
.eclir-lang-option.is-active::after{content:"";position:absolute;left:50%;bottom:3px;width:24px;height:1px;background:var(--eclir-gold);transform:translateX(-50%)}
.eclir-lang-separator{color:rgba(255,255,255,.34);font-size:.68rem;line-height:1}
.eclir-search-link{width:47px;height:36px;display:grid!important;place-items:center;border-bottom:2px solid rgba(200,162,74,.75);padding:0!important;transform:translateY(-5px)}
.eclir-search-link svg{width:16px;height:16px;fill:none;stroke:var(--eclir-gold-soft);stroke-width:1.65;transform:translateY(-4px)}
.eclir-mobile-menu{display:none;position:relative;margin-left:auto}
.eclir-mobile-menu summary{list-style:none;width:44px;height:44px;border:1px solid rgba(255,255,255,.18);display:grid;place-content:center;gap:5px;cursor:pointer}
.eclir-mobile-menu summary::-webkit-details-marker{display:none}
.eclir-mobile-menu summary span{display:block;width:20px;height:1.5px;background:#fff}
.eclir-mobile-menu nav{position:absolute;right:0;top:54px;width:min(310px,calc(100vw - 32px));padding:1.15rem 1.25rem;background:#07182F;border:1px solid rgba(200,162,74,.35);box-shadow:0 18px 50px rgba(0,0,0,.35)}
.eclir-mobile-menu nav>a{display:block;color:#fff!important;text-decoration:none!important;text-transform:uppercase;font-size:.74rem;letter-spacing:.04em;padding:.72rem 0;border-bottom:1px solid rgba(255,255,255,.08)}
.eclir-mobile-langs{display:flex;gap:.55rem;padding-top:.9rem;align-items:center}.eclir-mobile-langs a{color:rgba(255,255,255,.62)!important;text-decoration:none!important}.eclir-mobile-langs a.is-active{color:var(--eclir-gold-soft)!important;text-decoration:underline!important;text-underline-offset:.28rem}

/* Hero */
.eclir-hero{
  position:relative;
  min-height:450px;
  overflow:hidden;
  display:flex;
  align-items:center;
  color:#fff;
  background:#07182F;
  margin-top:-1px; /* removes any browser seam between header and hero */
}
.eclir-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 43%,rgba(200,162,74,.045),transparent 30%);pointer-events:none;z-index:1}
.eclir-hero-art{
  position:absolute;z-index:0;right:0;top:0;width:58%;height:100%;
  background-image:url('assets/images/hero-europe-transparent.png');
  background-size:auto 106%;
  background-position:right center;
  background-repeat:no-repeat;
  opacity:.94;
  filter:saturate(.92) contrast(1.01);
}
.eclir-hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.16fr) minmax(300px,.68fr);align-items:center;min-height:450px;padding:2.35rem 0 2.55rem}
.eclir-hero-copy{max-width:760px;padding-left:.2rem}
.eclir-hero h1{margin:.28rem 0 .88rem;color:#fff;font-family:var(--eclir-serif);font-size:clamp(2.65rem,3.86vw,4rem);line-height:.985;font-weight:500;letter-spacing:-.027em;text-wrap:balance;text-shadow:0 2px 16px rgba(0,0,0,.10)}
.eclir-hero h1 span{color:var(--eclir-gold-soft)}
.eclir-hero-rule{width:52px;height:3px;background:var(--eclir-gold);margin:.9rem 0 1.05rem}
.eclir-hero-lead{max-width:675px;margin:0;font-size:1rem;line-height:1.54;color:rgba(255,255,255,.92)}
.eclir-buttons{display:flex;gap:1.35rem;margin-top:1.2rem;flex-wrap:wrap}
.eclir-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;min-width:175px;min-height:48px;padding:0 1.25rem;border:1px solid var(--eclir-gold);color:#fff!important;text-decoration:none!important;font-size:.73rem;letter-spacing:.025em;text-transform:uppercase;transition:transform .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease}
.eclir-btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(0,0,0,.16)}
.eclir-btn-primary{background:linear-gradient(90deg,#D8B450,var(--eclir-gold));color:#07182F!important;font-weight:750}

/* Generic sections */
.eclir-section{padding:2.65rem 0}
.eclir-section-white{background:#fff}
.eclir-section-paper{background:linear-gradient(90deg,#F7F9FC,#F3F6FA)}
.eclir-title-row{display:flex;justify-content:space-between;gap:2rem;align-items:flex-start;margin-bottom:1.15rem}
.eclir-title-row h2,.eclir-mission-intro h2{margin:0;font-family:var(--eclir-serif);color:var(--eclir-navy);font-size:2rem;line-height:1.06;font-weight:500;letter-spacing:-.02em}
.eclir-heading-rule{width:34px;height:1.5px;background:var(--eclir-gold);margin-top:.65rem}
.eclir-more,.eclir-text-link{color:#153F7B!important;text-decoration:none!important;font-size:.68rem;letter-spacing:.035em;text-transform:uppercase;font-weight:650;transition:color .15s ease}
.eclir-more:hover,.eclir-text-link:hover{color:var(--eclir-gold)!important}
.eclir-more{margin-top:.35rem;white-space:nowrap}.eclir-more span,.eclir-text-link span{color:var(--eclir-gold);margin-left:.42rem}
.eclir-small{font-size:.76rem;line-height:1.55;color:#4D596A;margin:.55rem 0 0}

/* Mission */
.eclir-mission-section{padding:1.8rem 0}
.eclir-mission-grid{display:grid;grid-template-columns:1.42fr repeat(4,1fr);border-top:0;border-bottom:0}
.eclir-mission-intro,.eclir-mission-item{min-height:170px;padding:1rem 1.65rem}
.eclir-mission-intro{padding-left:0;padding-right:2.15rem}
.eclir-mission-intro .eclir-small{max-width:340px;margin:.95rem 0 .85rem}
.eclir-mission-item{border-left:1px solid var(--eclir-line);text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}
.eclir-line-icon{width:58px;height:58px;margin:0 auto .45rem;color:var(--eclir-gold);display:grid;place-items:center}
.eclir-line-icon svg{width:52px;height:52px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.eclir-europe-icon svg{stroke-width:3.2}.eclir-europe-icon .eclir-icon-dot{fill:var(--eclir-gold);stroke:none}
.eclir-mission-item h3{font-family:var(--eclir-serif);font-size:.96rem;font-weight:600;text-transform:uppercase;margin:.15rem 0 .35rem;color:var(--eclir-navy);letter-spacing:.015em}
.eclir-mission-item .eclir-small{max-width:205px;text-align:center}

/* Publication cards */
.eclir-pub-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.eclir-pub-card{display:grid;grid-template-columns:74px 1fr;min-height:152px;background:#fff;border:1px solid #E1E4E9;box-shadow:0 3px 11px rgba(10,26,50,.055);transition:transform .16s ease,box-shadow .16s ease}
.eclir-pub-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(10,26,50,.09)}
.eclir-pub-band{background:var(--eclir-navy);color:#fff;display:grid;place-items:center}.eclir-pub-card:nth-child(even) .eclir-pub-band{background:linear-gradient(180deg,#DDBB5B,#C69835);color:#fff}
.eclir-pub-band svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.eclir-pub-body{padding:.9rem .95rem .75rem;display:flex;flex-direction:column;min-width:0}
.eclir-pub-headline-row{display:flex;align-items:center;justify-content:space-between;gap:.65rem}
.eclir-pub-type{font-size:.58rem;letter-spacing:.055em;color:#194487;text-transform:uppercase;font-weight:750;white-space:nowrap}
.eclir-pub-lang{display:flex;align-items:center;gap:.16rem;margin-left:auto;white-space:nowrap}
.eclir-pub-lang-option{appearance:none;border:0;background:transparent;padding:.12rem .25rem;font:700 .52rem/1 var(--eclir-sans);letter-spacing:.045em;color:#7a8391;cursor:pointer;border-bottom:1px solid transparent;transition:color .14s ease,border-color .14s ease,background-color .14s ease}
button.eclir-pub-lang-option:hover{color:var(--eclir-navy)}
.eclir-pub-lang-option.is-active{color:var(--eclir-navy);border-bottom-color:var(--eclir-gold)}
.eclir-pub-lang-option.is-unavailable{opacity:.28;cursor:default}
.eclir-pub-title{margin:.42rem 0 0;font-family:var(--eclir-serif);font-size:.94rem;line-height:1.24;color:var(--eclir-navy)}
.eclir-pub-summary{margin:.42rem 0 0;color:#687286;font-size:.64rem;line-height:1.42;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.eclir-pub-meta{font-size:.58rem;color:#697386;margin-top:auto;padding-top:.72rem;display:flex;gap:.32rem;align-items:center;flex-wrap:wrap}.eclir-pub-meta b{margin-left:auto;color:var(--eclir-gold);font-size:.95rem;font-weight:400}
.eclir-pub-pdf-lang{letter-spacing:.025em}
.eclir-pub-arrow{margin-left:auto}

/* Research areas */
.eclir-area-grid{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--eclir-line);border-bottom:1px solid var(--eclir-line)}
.eclir-area{text-align:center;padding:1.15rem .7rem;min-height:135px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none!important;color:inherit;transition:background-color .16s ease,box-shadow .16s ease}
.eclir-area+.eclir-area{border-left:1px solid var(--eclir-line)}
.eclir-area:hover{background:rgba(11,29,58,.025)}
.eclir-area:focus-visible{outline:2px solid var(--eclir-gold);outline-offset:-3px;background:rgba(200,162,74,.055)}
.eclir-area:hover .eclir-area-icon,.eclir-area:focus-visible .eclir-area-icon{color:#17375F}

.eclir-area-icon{height:55px;color:var(--eclir-navy);display:grid;place-items:center;margin-bottom:.4rem}.eclir-area-icon svg{width:50px;height:50px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.eclir-area h3{font-family:var(--eclir-serif);font-size:.91rem;font-weight:600;line-height:1.16;color:var(--eclir-navy);margin:0}

/* Projects */
.eclir-project-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--eclir-line);border-bottom:1px solid var(--eclir-line)}
.eclir-project{padding:1.3rem 1.25rem;display:grid;grid-template-columns:56px 1fr;gap:.7rem;align-items:start;min-height:145px}.eclir-project+.eclir-project{border-left:1px solid var(--eclir-line)}
.eclir-project-icon{color:var(--eclir-gold);height:50px;display:grid;place-items:center}.eclir-project-icon svg{width:48px;height:48px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.eclir-project h3{font-family:var(--eclir-serif);font-size:.96rem;line-height:1.2;color:var(--eclir-navy);font-weight:600;margin:.05rem 0 .38rem}.eclir-project .eclir-small{margin:0 0 .52rem}.eclir-project .eclir-text-link{font-size:.6rem}
/* Featured Work */
.eclir-featured-work-grid.eclir-work-count-1{grid-template-columns:minmax(0,720px)}
.eclir-featured-work-grid.eclir-work-count-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1040px}
.eclir-featured-work-grid.eclir-work-count-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.eclir-work-card{min-height:168px}
.eclir-work-topline{display:flex;flex-wrap:wrap;gap:.38rem .55rem;align-items:center;margin:0 0 .42rem}
.eclir-work-area{font-size:.54rem;line-height:1.25;letter-spacing:.055em;text-transform:uppercase;font-weight:750;color:#194487}
.eclir-work-status{margin-left:auto;white-space:nowrap;border:1px solid rgba(200,162,74,.58);background:rgba(200,162,74,.08);color:#8A681D;border-radius:999px;padding:.18rem .42rem;font-size:.50rem;line-height:1.2;letter-spacing:.055em;text-transform:uppercase;font-weight:800}
.eclir-work-tags{display:flex;flex-wrap:wrap;gap:.28rem;margin:.05rem 0 .55rem}
.eclir-work-tags span{display:inline-flex;align-items:center;border:1px solid #DCE1E8;background:#FAFBFC;color:#5C6676;border-radius:999px;padding:.16rem .38rem;font-size:.52rem;line-height:1.2}

/* Placeholder module - staging only */
.eclir-placeholder-section{padding:.8rem 0;border-top:1px solid #E7EAF0}.eclir-placeholder-section p{margin:0;color:#8B94A3;font-size:.68rem;text-align:center}


/* Institutional Activity */
.eclir-activity-list{max-width:1040px;border-top:1px solid var(--eclir-line);border-bottom:1px solid var(--eclir-line)}
.eclir-activity-card{display:grid;grid-template-columns:180px minmax(0,1fr) 250px;grid-template-rows:auto auto;column-gap:1.7rem;row-gap:.3rem;align-items:start;padding:1.35rem 1rem}
.eclir-activity-card+.eclir-activity-card{border-top:1px solid var(--eclir-line)}
.eclir-activity-date{grid-column:1;grid-row:1;color:#8A681D;font-size:.68rem;font-weight:750;letter-spacing:.035em;text-transform:uppercase}
.eclir-activity-organizer{grid-column:1;grid-row:2;color:#5C6676;font-size:.68rem;line-height:1.4}
.eclir-activity-card h3{grid-column:2;grid-row:1;margin:0;font-family:var(--eclir-serif);font-size:1.02rem;line-height:1.25;font-weight:600;color:var(--eclir-navy)}
.eclir-activity-card>.eclir-small{grid-column:2;grid-row:2;margin:.15rem 0 0;max-width:640px}
.eclir-activity-links{grid-column:3;grid-row:1 / span 2;display:flex;flex-direction:column;align-items:flex-start;gap:.65rem;padding-top:.05rem}
.eclir-activity-links .eclir-text-link{font-size:.6rem}
.eclir-activity-links .eclir-text-link span{font-size:.78rem;line-height:1;display:inline-block;vertical-align:-.02em}

/* Newsletter */
.eclir-newsletter{background:linear-gradient(90deg,#07182F 0%,#0B2A50 100%);color:#fff;padding:1.25rem 0;border-top:1px solid rgba(200,162,74,.22)}
.eclir-newsletter-inner{display:grid;grid-template-columns:1fr 1.45fr;gap:3rem;align-items:center}.eclir-newsletter-copy{display:flex;align-items:center;gap:1.15rem}.eclir-envelope{width:58px;color:var(--eclir-gold)}.eclir-envelope svg{width:58px;height:44px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.eclir-newsletter h3{font-family:var(--eclir-serif);margin:0 0 .2rem;font-size:1.08rem;font-weight:500;color:#fff}.eclir-newsletter p{margin:0;color:rgba(255,255,255,.83);font-size:.76rem;line-height:1.35}
.eclir-newsletter-form{display:grid;grid-template-columns:1fr 180px}.eclir-newsletter-form input{min-height:46px;border:0;padding:0 1.15rem;background:#fff;color:#1B2A44}.eclir-newsletter-form button{border:0;background:linear-gradient(90deg,#D9B655,var(--eclir-gold));color:#07182F;padding:0 1.25rem;font-weight:750;text-transform:uppercase;font-size:.72rem;letter-spacing:.03em}.eclir-newsletter-form button span{font-size:1rem;margin-left:.75rem}

/* Footer */
.eclir-footer{background:#07182F;color:#fff;padding:1.65rem 0 1.1rem;border-top:1px solid rgba(255,255,255,.08)}
.eclir-footer-grid{display:grid;grid-template-columns:1.3fr .72fr 1.1fr .82fr .65fr;gap:2rem;align-items:start}.eclir-footer-brand img{display:block;width:300px;max-width:100%;height:auto}.eclir-footer h4{color:#fff;font-size:.66rem;text-transform:uppercase;letter-spacing:.055em;font-weight:600;margin:.05rem 0 .65rem}.eclir-footer a{color:rgba(255,255,255,.84)!important;text-decoration:none!important;font-size:.68rem;line-height:1.75}.eclir-footer a:hover{color:var(--eclir-gold-soft)!important}.eclir-footer p{font-size:.68rem;line-height:1.5;color:rgba(255,255,255,.78);margin:.15rem 0 .45rem}.eclir-socials{display:flex;gap:.65rem;margin-top:.8rem}.eclir-socials a{width:32px;height:32px;border:1px solid rgba(255,255,255,.45);border-radius:50%;display:grid;place-items:center;font-size:.72rem!important}
.eclir-footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:1.35rem;padding-top:.8rem;display:flex;justify-content:center;gap:.55rem;font-size:.6rem;color:rgba(255,255,255,.63);text-align:center}.eclir-footer-bottom span+span:before{content:"·";margin-right:.55rem}

@media(max-width:1240px){
  .eclir-shell{width:min(1440px,calc(100% - 48px))}
  .eclir-brand-image img{width:285px;height:auto;max-width:100%}
  .eclir-nav{gap:1.05rem}.eclir-nav>a,.eclir-lang-option{font-size:.66rem}
  .eclir-hero-art{width:52%}.eclir-hero-inner{grid-template-columns:1.12fr .70fr}
  .eclir-pub-grid{grid-template-columns:repeat(2,1fr)}
  .eclir-area-grid{grid-template-columns:repeat(3,1fr)}.eclir-area:nth-child(4){border-left:0;border-top:1px solid var(--eclir-line)}.eclir-area:nth-child(5),.eclir-area:nth-child(6){border-top:1px solid var(--eclir-line)}
  .eclir-project-grid{grid-template-columns:repeat(2,1fr)}.eclir-project:nth-child(3){border-left:0;border-top:1px solid var(--eclir-line)}.eclir-project:nth-child(4){border-top:1px solid var(--eclir-line)}
  .eclir-footer-grid{grid-template-columns:1.2fr repeat(2,1fr)}
}

@media(max-width:980px){
  .eclir-shell{width:min(100% - 32px,1440px)}
  .eclir-header-inner{min-height:96px}.eclir-brand-image img{width:255px;height:auto;max-width:100%}.eclir-nav{display:none}.eclir-mobile-menu{display:block}
  .eclir-hero{min-height:520px}.eclir-hero-inner{min-height:520px;display:block;padding:3.8rem 0}.eclir-hero-copy{max-width:620px}.eclir-hero-art{width:66%;opacity:.6}  .eclir-mission-grid{grid-template-columns:repeat(2,1fr)}.eclir-mission-intro{grid-column:1/-1;padding:0 0 1.3rem;min-height:0}.eclir-mission-item:nth-child(even){border-left:0}.eclir-mission-item{border-top:1px solid var(--eclir-line)}
  .eclir-newsletter-inner{grid-template-columns:1fr;gap:1rem}.eclir-footer-grid{grid-template-columns:1.2fr 1fr 1fr}.eclir-footer-brand{grid-column:1/-1}
}

@media(max-width:640px){
  .eclir-header-inner{min-height:82px}.eclir-brand-image img{width:220px;height:auto;max-width:100%}
  .eclir-hero{min-height:500px}.eclir-hero-inner{min-height:500px;padding:3.2rem 0}.eclir-hero-art{width:100%;opacity:.35;background-position:58% center}  .eclir-section{padding:2.1rem 0}.eclir-title-row{align-items:flex-end}.eclir-title-row h2,.eclir-mission-intro h2{font-size:1.72rem}.eclir-more{font-size:.58rem}
  .eclir-mission-grid,.eclir-pub-grid,.eclir-project-grid,.eclir-area-grid{grid-template-columns:1fr}.eclir-mission-item{border-left:0!important;border-top:1px solid var(--eclir-line)}.eclir-area+.eclir-area,.eclir-project+.eclir-project{border-left:0;border-top:1px solid var(--eclir-line)}
  .eclir-pub-card{grid-template-columns:64px 1fr}.eclir-pub-title{font-size:1rem}
  .eclir-newsletter-copy{align-items:flex-start}.eclir-newsletter-form{grid-template-columns:1fr}.eclir-newsletter-form button{min-height:44px}
  .eclir-footer-grid{grid-template-columns:1fr 1fr;gap:1.4rem}.eclir-footer-brand{grid-column:1/-1}.eclir-footer-bottom{display:block}.eclir-footer-bottom span{display:block}.eclir-footer-bottom span+span:before{display:none}
}

/* v0.5.6 — dynamic publication integration */
.eclir-pub-title-link{
  display:block;
  text-decoration:none;
  color:var(--eclir-navy);
}
.eclir-pub-title-link:hover{color:#194487}
.eclir-pub-arrow{
  margin-left:auto;
  color:var(--eclir-gold);
  font-size:.95rem;
  line-height:1;
  text-decoration:none;
}
.eclir-pub-arrow:hover{transform:translateX(2px)}
.eclir-empty-publications{
  margin:1rem 0 0;
  color:#697386;
}


/* v0.5.7 — institutional single-publication template */
.eclir-publication-page{
  background:#fff;
}
.eclir-publication-hero{
  background:linear-gradient(180deg,#F8F7F3 0%,#FFFFFF 100%);
  border-bottom:1px solid var(--eclir-line);
  padding:4.8rem 0 3.8rem;
}
.eclir-publication-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(300px,.65fr);
  gap:5rem;
  align-items:start;
}
.eclir-publication-intro{
  max-width:900px;
}
.eclir-publication-kicker{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
  align-items:center;
  color:#194487;
  font-size:.74rem;
  font-weight:750;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.eclir-publication-kicker-sep{color:var(--eclir-gold)}
.eclir-web-language-switch{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.55rem .7rem;
  margin-top:.8rem;
  font-family:var(--eclir-sans);
}
.eclir-web-language-label{
  color:#718096;
  font-size:.62rem;
  font-weight:750;
  letter-spacing:.065em;
  text-transform:uppercase;
}
.eclir-web-language-options{
  display:inline-flex;
  align-items:center;
  gap:.3rem;
}
.eclir-web-language-option{
  min-height:27px;
  padding:.28rem .58rem;
  border:1px solid #C9D0DB;
  background:#fff;
  color:#355070;
  font-size:.61rem;
  font-weight:750;
  letter-spacing:.045em;
  line-height:1;
  text-decoration:none;
  text-transform:uppercase;
}
a.eclir-web-language-option:hover{
  border-color:var(--eclir-gold);
  background:#FBF8EF;
  color:var(--eclir-navy);
}
.eclir-web-language-option.is-active{
  border-color:var(--eclir-navy);
  background:var(--eclir-navy);
  color:#fff;
}
.eclir-web-language-option.is-unavailable{
  opacity:.38;
  cursor:not-allowed;
}

.eclir-web-translation-note{
  margin:2.2rem 0 .4rem;
  padding:.85rem 0 0 1.15rem;
  border-top:1px solid #D9DEE6;
  color:#6B7280;
  font-family:var(--eclir-sans);
  font-size:.72rem;
  line-height:1.55;
  letter-spacing:.01em;
  position:relative;
}
.eclir-web-translation-note::before{
  content:"i";
  position:absolute;
  left:0;
  top:.82rem;
  width:.78rem;
  height:.78rem;
  border:1px solid currentColor;
  border-radius:50%;
  font-size:.56rem;
  line-height:.72rem;
  text-align:center;
  font-weight:700;
}
.eclir-publication-heading{
  margin:1rem 0 0;
  max-width:900px;
  font-family:var(--eclir-serif);
  font-weight:500;
  color:var(--eclir-navy);
  font-size:clamp(2.4rem,3.8vw,4rem);
  line-height:1.02;
  letter-spacing:-.018em;
}
.eclir-publication-rule{
  width:64px;
  height:3px;
  background:var(--eclir-gold);
  margin:1.4rem 0 1.1rem;
}
.eclir-publication-byline{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem 1.35rem;
  color:#596578;
  font-size:.88rem;
  line-height:1.5;
}
.eclir-publication-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.8rem;
  margin-top:1.8rem;
}
.eclir-publication-button{
  min-height:44px;
  padding:0 1.2rem;
  border:1px solid var(--eclir-gold);
  display:inline-flex;
  align-items:center;
  gap:1rem;
  text-decoration:none;
  text-transform:uppercase;
  font-size:.68rem;
  font-weight:750;
  letter-spacing:.035em;
  color:var(--eclir-navy);
}
.eclir-publication-button-primary{
  background:var(--eclir-gold);
}
.eclir-publication-button:hover{
  background:#F2E7C8;
}
.eclir-publication-button-primary:hover{
  background:var(--eclir-gold-soft);
}
.eclir-publication-facts{
  border-top:3px solid var(--eclir-gold);
  background:#F5F7FA;
  padding:1.45rem 1.55rem 1.25rem;
}
.eclir-publication-facts-title{
  color:var(--eclir-navy);
  font-family:var(--eclir-serif);
  font-size:1.25rem;
  font-weight:600;
  margin-bottom:.75rem;
}
.eclir-publication-facts dl{
  margin:0;
}
.eclir-publication-facts dl>div{
  padding:.8rem 0;
  border-top:1px solid var(--eclir-line);
}
.eclir-publication-facts dt{
  margin:0 0 .25rem;
  font-size:.62rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#718096;
  font-weight:750;
}
.eclir-publication-facts dd{
  margin:0;
  color:var(--eclir-navy);
  font-family:var(--eclir-serif);
  font-size:.98rem;
  line-height:1.35;
}
.eclir-publication-body-section{
  background:#fff;
  padding:4rem 0 4.6rem;
}
.eclir-publication-body-shell{
  width:min(920px,calc(100% - 72px));
  margin-inline:auto;
}
.eclir-publication-content{
  color:#26364D;
  font-family:var(--eclir-serif);
  font-size:1.16rem;
  line-height:1.8;
}
.eclir-publication-content p{
  margin:0 0 1.35em;
}
.eclir-publication-content h2,
.eclir-publication-content h3,
.eclir-publication-content h4{
  color:var(--eclir-navy);
  line-height:1.18;
}
.eclir-publication-content h2{
  font-size:2rem;
  margin:2.2em 0 .75em;
}
.eclir-publication-content h3{
  font-size:1.5rem;
  margin:1.8em 0 .65em;
}
.eclir-publication-content a{
  color:#194487;
}
.eclir-publication-content blockquote{
  margin:2rem 0;
  padding:.2rem 0 .2rem 1.5rem;
  border-left:3px solid var(--eclir-gold);
  color:#4D596A;
}
.eclir-publication-supplementary{
  margin-top:4rem;
  border-top:1px solid var(--eclir-line);
}
.eclir-publication-note{
  padding:1.75rem 0;
  border-bottom:1px solid var(--eclir-line);
}
.eclir-publication-note h2{
  margin:0 0 .7rem;
  font-family:var(--eclir-serif);
  color:var(--eclir-navy);
  font-size:1.3rem;
  font-weight:600;
}
.eclir-publication-note p{
  margin:0;
  color:#5B6678;
  font-family:var(--eclir-sans);
  font-size:.9rem;
  line-height:1.65;
}

@media(max-width:980px){
  .eclir-publication-hero{padding:3.5rem 0 3rem}
  .eclir-publication-hero-grid{
    grid-template-columns:1fr;
    gap:2.2rem;
  }
  .eclir-publication-facts{
    max-width:620px;
  }
}

@media(max-width:640px){
  .eclir-publication-hero{padding:2.6rem 0 2.35rem}
  .eclir-publication-heading{font-size:2.3rem}
  .eclir-publication-body-section{padding:2.6rem 0 3.4rem}
  .eclir-publication-body-shell{
    width:calc(100% - 32px);
  }
  .eclir-publication-content{
    font-size:1.05rem;
    line-height:1.72;
  }
  .eclir-publication-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .eclir-publication-button{
    justify-content:space-between;
  }
}


/* v0.5.8 — remove the white void below publication masthead */
.eclir-publication-layout{
  background:linear-gradient(180deg,#F8F7F3 0%,#FFFFFF 34%,#FFFFFF 100%);
  border-bottom:1px solid var(--eclir-line);
  padding:4.5rem 0 4.6rem;
}
.eclir-publication-layout-grid{
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(300px,.65fr);
  gap:5rem;
  align-items:start;
}
.eclir-publication-maincol{
  min-width:0;
}
.eclir-publication-maincol .eclir-publication-intro{
  margin-bottom:2.4rem;
}
.eclir-publication-maincol .eclir-publication-content{
  padding-top:0;
}
.eclir-publication-sidecol{
  align-self:start;
}
.eclir-publication-sidecol .eclir-publication-facts{
  position:sticky;
  top:1.5rem;
}
.eclir-publication-layout .eclir-publication-body-shell{
  width:100%;
  margin:0;
}
.eclir-publication-layout .eclir-publication-supplementary{
  margin-top:3rem;
}

/* Neutralize old separate hero/body spacing in the new template */
.eclir-publication-layout .eclir-publication-hero,
.eclir-publication-layout .eclir-publication-body-section{
  padding:0;
  border:0;
  background:transparent;
}

@media(max-width:980px){
  .eclir-publication-layout{
    padding:3.3rem 0 3.6rem;
  }
  .eclir-publication-layout-grid{
    grid-template-columns:1fr;
    gap:2.2rem;
  }
  .eclir-publication-sidecol{
    order:-1;
  }
  .eclir-publication-sidecol .eclir-publication-facts{
    position:static;
    max-width:620px;
  }
}

@media(max-width:640px){
  .eclir-publication-layout{
    padding:2.5rem 0 3rem;
  }
  .eclir-publication-maincol .eclir-publication-intro{
    margin-bottom:1.8rem;
  }
}


/* v0.5.10 — publication actions use the established homepage button system */
.eclir-publication-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.95rem;
  margin-top:1.55rem;
  align-items:center;
}

.eclir-publication-actions .eclir-btn{
  min-width:190px;
  min-height:48px;
  padding:0 1.25rem;
  gap:2rem;
  font-size:.71rem;
}

.eclir-publication-download{
  box-shadow:0 5px 15px rgba(11,29,58,.08);
}

.eclir-publication-cite{
  color:var(--eclir-navy)!important;
  background:#fff;
}

.eclir-publication-cite:hover{
  background:#F7F2E5;
}

@media(max-width:640px){
  .eclir-publication-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .eclir-publication-actions .eclir-btn{
    width:100%;
  }
}


/* v0.5.11 — publication PDF action matches newsletter SUBSCRIBE */
.eclir-publication-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.95rem;
  margin-top:1.55rem;
  align-items:center;
}

.eclir-publication-download{
  min-width:210px;
  min-height:46px;
  border:0;
  background:linear-gradient(90deg,#D9B655,var(--eclir-gold));
  color:#07182F!important;
  padding:0 1.25rem;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  text-decoration:none!important;
  font-weight:750;
  text-transform:uppercase;
  font-size:.72rem;
  letter-spacing:.03em;
  transition:filter .16s ease,transform .16s ease;
}

.eclir-publication-download:hover{
  filter:brightness(1.035);
  transform:translateY(-1px);
}

.eclir-publication-download-arrow{
  font-size:1rem;
  margin-left:1.4rem;
  line-height:1;
}

.eclir-publication-cite{
  min-width:190px;
  min-height:46px;
  border:1px solid var(--eclir-gold);
  background:#fff;
  color:var(--eclir-navy)!important;
  padding:0 1.25rem;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  text-decoration:none!important;
  font-weight:750;
  text-transform:uppercase;
  font-size:.72rem;
  letter-spacing:.03em;
}

.eclir-publication-cite:hover{
  background:#F7F2E5;
}

@media(max-width:640px){
  .eclir-publication-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .eclir-publication-download,
  .eclir-publication-cite{
    width:100%;
    min-width:0;
  }
}


/* =========================================================
   v0.6.0 — Publications catalogue
   ========================================================= */

.eclir-catalog-page{background:#fff}
.eclir-catalog-hero{
  background:linear-gradient(180deg,#F7F7F4 0%,#FFFFFF 100%);
  border-bottom:1px solid var(--eclir-line);
  padding:4.3rem 0 3.5rem;
}
.eclir-catalog-kicker{
  color:#194487;
  text-transform:uppercase;
  font-size:.68rem;
  letter-spacing:.085em;
  font-weight:750;
  margin-bottom:.65rem;
}
.eclir-catalog-hero h1{
  margin:0;
  font-family:var(--eclir-serif);
  font-size:clamp(2.8rem,5vw,4.8rem);
  line-height:1;
  font-weight:500;
  color:var(--eclir-navy);
}
.eclir-catalog-hero p{
  max-width:760px;
  margin:1.15rem 0 0;
  color:#5B6678;
  font-size:.95rem;
  line-height:1.65;
}
.eclir-catalog-section{padding:2.5rem 0 4.8rem}
.eclir-catalog-filters{
  display:grid;
  grid-template-columns:minmax(250px,1.65fr) repeat(4,minmax(135px,.7fr)) auto;
  gap:.75rem;
  padding:1rem;
  background:#F4F6F8;
  border:1px solid #E0E4E9;
  align-items:end;
}
.eclir-catalog-filters label{display:block}
.eclir-catalog-filters label>span{
  display:block;
  margin:0 0 .38rem;
  font-size:.61rem;
  font-weight:750;
  letter-spacing:.055em;
  text-transform:uppercase;
  color:#657186;
}
.eclir-catalog-filters input,
.eclir-catalog-filters select{
  width:100%;
  height:42px;
  border:1px solid #CBD1D9;
  background:#fff;
  color:var(--eclir-navy);
  padding:0 .72rem;
  font:inherit;
  font-size:.78rem;
}
.eclir-catalog-filters button{
  height:42px;
  border:0;
  background:linear-gradient(90deg,#D9B655,var(--eclir-gold));
  color:#07182F;
  padding:0 1rem;
  font-weight:750;
  text-transform:uppercase;
  font-size:.66rem;
  letter-spacing:.035em;
  white-space:nowrap;
}
.eclir-catalog-filters button span{margin-left:.65rem;font-size:.95rem}
.eclir-catalog-toolbar{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  align-items:center;
  padding:1.15rem 0 .85rem;
  color:#6B7585;
  font-size:.72rem;
}
.eclir-catalog-toolbar a{color:#194487;text-decoration:none}
.eclir-catalog-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.eclir-catalog-card{
  min-height:225px;
  border:1px solid #E0E4E9;
  border-top:3px solid var(--eclir-navy);
  background:#fff;
  padding:1.25rem 1.35rem 1.1rem;
  display:flex;
  flex-direction:column;
  box-shadow:0 3px 10px rgba(10,26,50,.04);
  transition:transform .16s ease,box-shadow .16s ease,border-top-color .16s ease;
}
.eclir-catalog-card:nth-child(even){border-top-color:var(--eclir-gold)}
.eclir-catalog-card:hover{
  transform:translateY(-2px);
  box-shadow:0 9px 22px rgba(10,26,50,.08);
}
.eclir-catalog-card-topline{
  display:flex;
  flex-wrap:wrap;
  gap:.38rem;
  color:#194487;
  text-transform:uppercase;
  font-size:.59rem;
  letter-spacing:.065em;
  font-weight:750;
}
.eclir-catalog-card h2{
  margin:.72rem 0 .55rem;
  font-family:var(--eclir-serif);
  font-size:1.36rem;
  line-height:1.18;
  font-weight:550;
  color:var(--eclir-navy);
}
.eclir-catalog-card h2 a{color:inherit;text-decoration:none}
.eclir-catalog-meta{
  display:flex;
  flex-wrap:wrap;
  gap:.4rem 1rem;
  color:#758095;
  font-size:.67rem;
}
.eclir-catalog-excerpt{
  margin:.9rem 0 1rem;
  color:#4F5A6D;
  font-size:.79rem;
  line-height:1.55;
}
.eclir-catalog-card-footer{
  margin-top:auto;
  padding-top:.9rem;
  border-top:1px solid #ECEEF1;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:1rem;
}
.eclir-catalog-badges{
  display:flex;
  flex-wrap:wrap;
  gap:.4rem;
}
.eclir-catalog-badges span{
  display:inline-flex;
  align-items:center;
  min-height:23px;
  padding:0 .52rem;
  background:#F2F4F7;
  color:#5D6879;
  text-transform:uppercase;
  font-size:.54rem;
  letter-spacing:.045em;
  font-weight:700;
}
.eclir-catalog-open{
  color:#194487;
  text-decoration:none;
  white-space:nowrap;
  text-transform:uppercase;
  font-size:.6rem;
  letter-spacing:.035em;
  font-weight:750;
}
.eclir-catalog-open span{color:var(--eclir-gold);margin-left:.4rem;font-size:.9rem}
.eclir-catalog-pagination{
  display:flex;
  justify-content:center;
  gap:.45rem;
  margin-top:2.2rem;
}
.eclir-catalog-pagination a,
.eclir-catalog-pagination span{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid #D7DCE3;
  color:var(--eclir-navy);
  text-decoration:none;
  font-size:.74rem;
}
.eclir-catalog-pagination .is-current{
  background:var(--eclir-navy);
  border-color:var(--eclir-navy);
  color:#fff;
}
.eclir-catalog-empty{
  padding:3rem 0;
  text-align:center;
  color:#667286;
}
.eclir-catalog-empty h2{
  font-family:var(--eclir-serif);
  color:var(--eclir-navy);
  font-size:1.8rem;
  font-weight:550;
  margin:0 0 .5rem;
}

/* Publication PDF action: intentionally mirrors the newsletter SUBSCRIBE button. */
.eclir-publication-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.8rem;
  margin-top:1.55rem;
}
.eclir-publication-download{
  width:180px;
  min-height:46px;
  border:0!important;
  background:linear-gradient(90deg,#D9B655,var(--eclir-gold))!important;
  color:#07182F!important;
  padding:0 1.25rem!important;
  display:inline-flex!important;
  align-items:center;
  justify-content:center!important;
  text-decoration:none!important;
  font-weight:750!important;
  text-transform:uppercase;
  font-size:.72rem!important;
  letter-spacing:.03em;
  box-shadow:none!important;
  transform:none!important;
}
.eclir-publication-download-label{white-space:nowrap}
.eclir-publication-download-arrow{
  font-size:1rem!important;
  margin-left:.75rem!important;
  line-height:1;
}
.eclir-publication-download:hover{filter:brightness(1.03)}
.eclir-publication-cite{
  width:180px;
  min-height:46px;
  border:1px solid var(--eclir-gold);
  background:#fff;
  color:var(--eclir-navy)!important;
  padding:0 1.25rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.75rem;
  text-decoration:none!important;
  font-weight:750;
  text-transform:uppercase;
  font-size:.72rem;
  letter-spacing:.03em;
}

@media(max-width:1100px){
  .eclir-catalog-filters{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .eclir-catalog-search{grid-column:span 2}
}
@media(max-width:760px){
  .eclir-catalog-hero{padding:3rem 0 2.5rem}
  .eclir-catalog-filters{grid-template-columns:1fr 1fr}
  .eclir-catalog-search{grid-column:1/-1}
  .eclir-catalog-filters button{grid-column:1/-1}
  .eclir-catalog-grid{grid-template-columns:1fr}
}
@media(max-width:520px){
  .eclir-catalog-filters{grid-template-columns:1fr}
  .eclir-catalog-search{grid-column:auto}
  .eclir-catalog-toolbar{align-items:flex-start;flex-direction:column}
  .eclir-catalog-card{min-height:0}
  .eclir-catalog-card-footer{align-items:flex-start;flex-direction:column}
  .eclir-publication-actions{display:grid;grid-template-columns:1fr}
  .eclir-publication-download,.eclir-publication-cite{width:100%}
}


/* =========================================================
   v0.6.1 — one canonical ECLIR gold action
   Used by both SUBSCRIBE and DOWNLOAD PDF.
   ========================================================= */
.eclir-gold-action,
.eclir-newsletter-form .eclir-gold-action,
.eclir-publication-download.eclir-gold-action{
  box-sizing:border-box!important;
  width:180px!important;
  height:46px!important;
  min-height:46px!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(90deg,#D9B655,var(--eclir-gold))!important;
  color:#07182F!important;
  padding:0 1.25rem!important;
  margin:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  font-family:inherit!important;
  font-weight:750!important;
  text-transform:uppercase!important;
  font-size:.72rem!important;
  letter-spacing:.03em!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:none!important;
  transform:none!important;
  vertical-align:middle!important;
  cursor:pointer;
}

.eclir-gold-action span,
.eclir-newsletter-form .eclir-gold-action span,
.eclir-publication-download.eclir-gold-action span{
  display:inline-block!important;
  margin:0 0 0 .75rem!important;
  padding:0!important;
  font-size:1rem!important;
  font-weight:400!important;
  line-height:1!important;
  position:relative!important;
  top:-.02em!important;
  transform:none!important;
}

.eclir-gold-action:hover,
.eclir-publication-download.eclir-gold-action:hover{
  filter:brightness(1.03);
}

/* Disabled newsletter button keeps its visual design on staging. */
.eclir-newsletter-form .eclir-gold-action:disabled{
  opacity:1!important;
  cursor:default!important;
}

/* Retire all earlier publication-arrow geometry. */
.eclir-publication-download-label,
.eclir-publication-download-arrow{
  display:contents;
}

@media(max-width:640px){
  .eclir-publication-download.eclir-gold-action{
    width:100%!important;
  }
}


/* =========================================================
   v0.6.3 — canonical gold action final override
   DOWNLOAD PDF and SUBSCRIBE are the same control geometry.
   ========================================================= */
a.eclir-gold-action.eclir-publication-download,
.eclir-newsletter-form button.eclir-gold-action{
  box-sizing:border-box!important;
  width:180px!important;
  height:46px!important;
  min-width:180px!important;
  min-height:46px!important;
  padding:0 1.25rem!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(90deg,#D9B655,var(--eclir-gold))!important;
  color:#07182F!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
  font-family:inherit!important;
  font-weight:750!important;
  font-size:.72rem!important;
  line-height:1!important;
  letter-spacing:.03em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  box-shadow:none!important;
  transform:none!important;
}

a.eclir-gold-action.eclir-publication-download > span,
.eclir-newsletter-form button.eclir-gold-action > span{
  display:inline-block!important;
  position:static!important;
  margin:0 0 0 .75rem!important;
  padding:0!important;
  width:auto!important;
  height:auto!important;
  font-size:1rem!important;
  font-weight:400!important;
  line-height:1!important;
  vertical-align:baseline!important;
  transform:none!important;
}

a.eclir-gold-action.eclir-publication-download:hover{
  filter:brightness(1.03);
  transform:none!important;
}

@media(max-width:640px){
  a.eclir-gold-action.eclir-publication-download{
    width:100%!important;
    min-width:0!important;
  }
}


/* =========================================================
   v0.7.0 — Contact
   ========================================================= */
.eclir-contact-page{background:#fff}
.eclir-contact-hero{
  padding:4.2rem 0 3.35rem;
  background:linear-gradient(180deg,#F7F7F4 0%,#fff 100%);
  border-bottom:1px solid var(--eclir-line);
}
.eclir-contact-kicker{
  color:#194487;
  text-transform:uppercase;
  font-size:.68rem;
  letter-spacing:.085em;
  font-weight:750;
  margin-bottom:.65rem;
}
.eclir-contact-hero h1{
  margin:0;
  font-family:var(--eclir-serif);
  font-size:clamp(2.8rem,5vw,4.7rem);
  line-height:1;
  font-weight:500;
  color:var(--eclir-navy);
  letter-spacing:-.025em;
}
.eclir-contact-hero p{
  max-width:760px;
  margin:1.15rem 0 0;
  color:#5B6678;
  font-size:.95rem;
  line-height:1.65;
}
.eclir-contact-section{padding:3.1rem 0 5rem}
.eclir-contact-grid{
  display:grid;
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);
  gap:2rem;
  align-items:start;
}
.eclir-contact-info{
  background:linear-gradient(155deg,#07182F 0%,#10294D 100%);
  color:#fff;
  padding:2rem 2rem 2.15rem;
  border-top:3px solid var(--eclir-gold);
}
.eclir-contact-info-label,
.eclir-contact-form-label{
  text-transform:uppercase;
  letter-spacing:.075em;
  font-size:.61rem;
  font-weight:750;
}
.eclir-contact-info-label{color:var(--eclir-gold-soft)}
.eclir-contact-info h2{
  margin:.65rem 0 0;
  color:#fff;
  font-family:var(--eclir-serif);
  font-size:1.5rem;
  line-height:1.18;
  font-weight:500;
}
.eclir-contact-info-rule{
  width:42px;
  height:2px;
  margin:1.25rem 0 1.4rem;
  background:var(--eclir-gold);
}
.eclir-contact-info dl{margin:0}
.eclir-contact-info dl>div{
  padding:1rem 0;
  border-top:1px solid rgba(255,255,255,.15);
}
.eclir-contact-info dt{
  color:rgba(255,255,255,.56);
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:.58rem;
  font-weight:700;
  margin-bottom:.28rem;
}
.eclir-contact-info dd{
  margin:0;
  color:#fff;
  font-family:var(--eclir-serif);
  font-size:.94rem;
}
.eclir-contact-info a{color:#fff!important;text-decoration:none!important}
.eclir-contact-info a:hover{color:var(--eclir-gold-soft)!important}
.eclir-contact-scope{
  margin:1.4rem 0 0;
  padding-top:1.25rem;
  border-top:1px solid rgba(255,255,255,.15);
  color:rgba(255,255,255,.68);
  font-size:.71rem;
  line-height:1.6;
}

.eclir-contact-form-panel{
  border:1px solid #DEE3E9;
  background:#F8F9FA;
  padding:1.8rem;
}
.eclir-contact-form-heading{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:1rem;
  padding-bottom:1.25rem;
  border-bottom:1px solid #DDE2E8;
  margin-bottom:1.35rem;
}
.eclir-contact-form-label{color:#194487}
.eclir-contact-form-heading h2{
  margin:.3rem 0 0;
  color:var(--eclir-navy);
  font-family:var(--eclir-serif);
  font-weight:550;
  font-size:1.75rem;
}
.eclir-contact-form-email{
  color:#788296;
  font-size:.69rem;
  white-space:nowrap;
}
.eclir-contact-form{display:grid;gap:1rem}
.eclir-contact-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
}
.eclir-contact-form label>span:not(.screen-reader-text){
  display:block;
  margin-bottom:.42rem;
  color:#5D687B;
  text-transform:uppercase;
  letter-spacing:.055em;
  font-size:.61rem;
  font-weight:750;
}
.eclir-contact-form label>span b{
  color:var(--eclir-gold);
  font-weight:750;
}
.eclir-contact-form input[type="text"],
.eclir-contact-form input[type="email"],
.eclir-contact-form textarea{
  box-sizing:border-box;
  width:100%;
  border:1px solid #C9D0D9;
  border-radius:0;
  background:#fff;
  color:var(--eclir-navy);
  padding:.78rem .85rem;
  font:inherit;
  font-size:.8rem;
  outline:0;
}
.eclir-contact-form input[type="text"],
.eclir-contact-form input[type="email"]{min-height:46px}
.eclir-contact-form textarea{resize:vertical;min-height:190px;line-height:1.55}
.eclir-contact-form input:focus,
.eclir-contact-form textarea:focus{
  border-color:var(--eclir-gold);
  box-shadow:0 0 0 2px rgba(200,162,74,.12);
}
.eclir-contact-ack{
  display:flex!important;
  align-items:flex-start;
  gap:.65rem;
  padding:.25rem 0;
}
.eclir-contact-ack input{
  width:16px;
  height:16px;
  margin:.15rem 0 0;
  accent-color:var(--eclir-navy);
  flex:0 0 auto;
}
.eclir-contact-ack>span{
  margin:0!important;
  color:#687386!important;
  text-transform:none!important;
  letter-spacing:0!important;
  font-size:.69rem!important;
  line-height:1.5;
  font-weight:400!important;
}
.eclir-contact-form-footer{
  display:flex;
  align-items:center;
  gap:1rem 1.25rem;
  flex-wrap:wrap;
  padding-top:.35rem;
}
.eclir-contact-submit{width:180px!important}
.eclir-contact-form-footer p{
  margin:0;
  color:#8A93A2;
  font-size:.62rem;
  line-height:1.45;
}
.eclir-contact-notice{
  margin:0 0 1.15rem;
  padding:.85rem 1rem;
  border-left:3px solid;
  font-size:.76rem;
  line-height:1.5;
}
.eclir-contact-notice-success{
  background:#F1F7F2;
  border-color:#5B8E67;
  color:#315C3A;
}
.eclir-contact-notice-error{
  background:#FAF2F1;
  border-color:#A75449;
  color:#74382F;
}
.eclir-contact-hp{
  position:absolute!important;
  left:-10000px!important;
  top:auto!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}

@media(max-width:900px){
  .eclir-contact-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .eclir-contact-hero{padding:3rem 0 2.4rem}
  .eclir-contact-section{padding:2rem 0 3.5rem}
  .eclir-contact-form-panel,.eclir-contact-info{padding:1.35rem}
  .eclir-contact-row{grid-template-columns:1fr}
  .eclir-contact-form-heading{align-items:flex-start;flex-direction:column}
  .eclir-contact-form-email{white-space:normal}
  .eclir-contact-submit{width:100%!important}
}


/* =========================================================
   v0.7.1 — compact Contact page
   ========================================================= */

/* Less vertical air in the page introduction. */
.eclir-contact-hero{
  padding:3rem 0 2.35rem!important;
}
.eclir-contact-hero p{
  max-width:700px!important;
  margin-top:.85rem!important;
}
.eclir-contact-section{
  padding:2.25rem 0 3.6rem!important;
}

/* Keep the contact content dense and centered instead of spanning the full shell. */
.eclir-contact-grid{
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  grid-template-columns:minmax(285px,.78fr) minmax(0,1.22fr)!important;
  gap:1.55rem!important;
}

/* Compact information card. */
.eclir-contact-info{
  padding:1.55rem 1.6rem 1.65rem!important;
}
.eclir-contact-info h2{
  font-size:1.34rem!important;
}
.eclir-contact-info-rule{
  margin:1rem 0 1.05rem!important;
}
.eclir-contact-info dl>div{
  padding:.76rem 0!important;
}
.eclir-contact-scope{
  margin-top:1rem!important;
  padding-top:.95rem!important;
  font-size:.68rem!important;
}

/* Compact form panel and controls. */
.eclir-contact-form-panel{
  padding:1.4rem 1.5rem 1.45rem!important;
}
.eclir-contact-form-heading{
  padding-bottom:.95rem!important;
  margin-bottom:1rem!important;
}
.eclir-contact-form-heading h2{
  font-size:1.55rem!important;
}
.eclir-contact-form{
  gap:.72rem!important;
}
.eclir-contact-row{
  gap:.8rem!important;
}
.eclir-contact-form label>span:not(.screen-reader-text){
  margin-bottom:.3rem!important;
}
.eclir-contact-form input[type="text"],
.eclir-contact-form input[type="email"]{
  min-height:40px!important;
  height:40px!important;
  padding:.56rem .72rem!important;
}
.eclir-contact-form textarea{
  min-height:132px!important;
  height:132px!important;
  padding:.65rem .72rem!important;
}
.eclir-contact-ack{
  gap:.55rem!important;
  padding:.08rem 0!important;
}
.eclir-contact-form-footer{
  padding-top:.15rem!important;
  gap:.75rem 1rem!important;
}

/* Contact submit: same visual language as APPLY FILTERS, with exact
   label/arrow centering. */
.eclir-contact-submit{
  box-sizing:border-box!important;
  width:180px!important;
  height:42px!important;
  min-height:42px!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(90deg,#D9B655,var(--eclir-gold))!important;
  color:#07182F!important;
  padding:0 1rem!important;
  margin:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:.72rem!important;
  font-family:inherit!important;
  font-weight:750!important;
  text-transform:uppercase!important;
  font-size:.66rem!important;
  letter-spacing:.035em!important;
  line-height:1!important;
  box-shadow:none!important;
  cursor:pointer!important;
}
.eclir-contact-submit-label,
.eclir-contact-submit-arrow{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:0!important;
  position:static!important;
  line-height:1!important;
  transform:none!important;
}
.eclir-contact-submit-label{
  font-size:.66rem!important;
  font-weight:750!important;
}
.eclir-contact-submit-arrow{
  font-size:.95rem!important;
  font-weight:400!important;
}
.eclir-contact-submit:hover{
  filter:brightness(1.03);
}

@media(max-width:900px){
  .eclir-contact-grid{
    max-width:760px!important;
    grid-template-columns:1fr!important;
  }
}
@media(max-width:620px){
  .eclir-contact-hero{
    padding:2.5rem 0 2rem!important;
  }
  .eclir-contact-section{
    padding:1.6rem 0 3rem!important;
  }
  .eclir-contact-form-panel,
  .eclir-contact-info{
    padding:1.2rem!important;
  }
  .eclir-contact-submit{
    width:100%!important;
  }
}


/* =========================================================
   v0.7.2 — tighter contact form rhythm
   ========================================================= */
.eclir-contact-form{
  gap:.48rem!important;
}

.eclir-contact-form > label,
.eclir-contact-row > label{
  display:block!important;
  margin:0!important;
  padding:0!important;
}

.eclir-contact-row{
  gap:.7rem!important;
  margin:0!important;
  padding:0!important;
}

.eclir-contact-form label>span:not(.screen-reader-text){
  margin:0 0 .22rem!important;
  padding:0!important;
}

.eclir-contact-form input[type="text"],
.eclir-contact-form input[type="email"]{
  height:38px!important;
  min-height:38px!important;
  padding:.5rem .68rem!important;
  margin:0!important;
}

.eclir-contact-form textarea{
  height:112px!important;
  min-height:112px!important;
  padding:.6rem .68rem!important;
  margin:0!important;
}

.eclir-contact-ack{
  margin:.12rem 0 0!important;
  padding:0!important;
}

.eclir-contact-form-footer{
  margin:0!important;
  padding-top:.08rem!important;
}

.eclir-contact-form-heading{
  align-items:flex-start!important;
}

/* Redundant email label removed in Core v0.5.2; keep old class hidden for cache safety. */
.eclir-contact-form-email{
  display:none!important;
}


/* =========================================================
   v0.7.3 — Contact layout root-cause fix
   The newsletter's generic form grid was leaking into Contact.
   ========================================================= */

.eclir-contact-form{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-auto-flow:row!important;
  grid-auto-columns:auto!important;
  align-content:start!important;
  gap:.68rem!important;
}

/* Name + e-mail share one compact row on desktop. */
.eclir-contact-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:.8rem!important;
  width:100%!important;
}

/* Every other direct form block spans the full contact column. */
.eclir-contact-form > label,
.eclir-contact-form > .eclir-contact-row,
.eclir-contact-form > .eclir-contact-ack,
.eclir-contact-form > .eclir-contact-form-footer,
.eclir-contact-form > .eclir-contact-notice{
  grid-column:1 / -1!important;
  width:100%!important;
}

.eclir-contact-form-panel{
  align-self:start!important;
  padding:1.28rem 1.38rem 1.32rem!important;
}

.eclir-contact-form-heading{
  margin-bottom:.82rem!important;
  padding-bottom:.78rem!important;
}

.eclir-contact-form label>span:not(.screen-reader-text){
  margin-bottom:.24rem!important;
}

.eclir-contact-form input[type="text"],
.eclir-contact-form input[type="email"]{
  height:38px!important;
  min-height:38px!important;
}

.eclir-contact-form textarea{
  height:98px!important;
  min-height:98px!important;
}

.eclir-contact-ack{
  margin:.02rem 0!important;
}

.eclir-contact-form-footer{
  padding-top:.02rem!important;
}

/* The form should visually finish close to the bottom of the blue card. */
.eclir-contact-info{
  align-self:start!important;
}

@media(max-width:700px){
  .eclir-contact-row{
    grid-template-columns:1fr!important;
    gap:.68rem!important;
  }
}

/* =========================================================
   v0.8.0 — About ECLIR
   ========================================================= */
.eclir-about-hero{
  position:relative;overflow:hidden;color:#fff;background:#07182F;margin-top:-1px;
}
.eclir-about-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 77% 38%,rgba(200,162,74,.055),transparent 34%);z-index:1;pointer-events:none}
.eclir-about-hero-art{position:absolute;z-index:0;right:-5%;top:-12%;width:56%;height:124%;background:url('assets/images/hero-europe-transparent.png') right center/auto 100% no-repeat;opacity:.38;filter:saturate(.7) contrast(1.02)}
.eclir-about-hero-inner{position:relative;z-index:2;min-height:350px;display:flex;align-items:center;padding:2.75rem 0 3rem}
.eclir-about-hero-copy{max-width:810px}
.eclir-about-hero h1{margin:.32rem 0 .85rem;color:#fff;font-family:var(--eclir-serif);font-size:clamp(2.45rem,3.45vw,3.75rem);line-height:1.02;font-weight:500;letter-spacing:-.027em}
.eclir-about-hero h1 span{color:var(--eclir-gold-soft)}
.eclir-about-hero p{max-width:760px;margin:.38rem 0;color:rgba(255,255,255,.88);font-size:.96rem;line-height:1.62}
.eclir-about-section{padding:3.55rem 0}
.eclir-about-section h2,.eclir-independence h2,.eclir-about-cta h2{margin:.35rem 0 0;font-family:var(--eclir-serif);font-size:clamp(2rem,2.65vw,2.85rem);line-height:1.07;font-weight:500;letter-spacing:-.024em}
.eclir-about-split{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:5.5rem;align-items:start}
.eclir-about-label h2{max-width:470px;color:var(--eclir-navy)}
.eclir-about-prose{font-size:.98rem;line-height:1.72;color:#344054}
.eclir-about-prose>p:first-of-type{margin-top:0}
.eclir-about-prose p{margin:0 0 1.08rem}
.eclir-about-emphasis{font-family:var(--eclir-serif);font-size:1.38rem;line-height:1.48;color:var(--eclir-navy);padding:1.05rem 0 1.05rem 1.35rem;border-left:2px solid var(--eclir-gold)}
.eclir-about-intro-row{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);gap:4rem;align-items:end;margin-bottom:1.9rem}
.eclir-about-intro-row h2{color:var(--eclir-navy)}
.eclir-about-lede{margin:0;color:#42526A;font-size:1rem;line-height:1.7;max-width:700px}
.eclir-principle-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--eclir-line);border-bottom:1px solid var(--eclir-line)}
.eclir-principle-grid article{padding:1.6rem 1.55rem 1.7rem;min-height:190px}
.eclir-principle-grid article+article{border-left:1px solid var(--eclir-line)}
.eclir-principle-grid span,.eclir-about-research-grid span{display:block;color:var(--eclir-gold);font-size:.7rem;letter-spacing:.08em;font-weight:750}
.eclir-principle-grid h3{margin:.55rem 0 .55rem;font-family:var(--eclir-serif);font-size:1.25rem;color:var(--eclir-navy);font-weight:600}
.eclir-principle-grid p{margin:0;color:#556274;font-size:.82rem;line-height:1.62}
.eclir-about-note{max-width:920px;margin:1.3rem auto 0;text-align:center;color:#48576B;font-family:var(--eclir-serif);font-size:1.12rem;line-height:1.55}
.eclir-about-title-row{align-items:flex-end;margin-bottom:1.45rem}
.eclir-about-title-row h2{color:var(--eclir-navy)}
.eclir-about-research-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--eclir-line);border-left:1px solid var(--eclir-line)}
.eclir-about-research-grid article{padding:1.55rem 1.6rem 1.7rem;min-height:210px;border-right:1px solid var(--eclir-line);border-bottom:1px solid var(--eclir-line);background:#fff}
.eclir-about-research-grid h3{margin:.5rem 0 .62rem;font-family:var(--eclir-serif);font-size:1.12rem;line-height:1.22;color:var(--eclir-navy);font-weight:600}
.eclir-about-research-grid p{margin:0;color:#586477;font-size:.8rem;line-height:1.62}
.eclir-method-grid{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(300px,.72fr);gap:5rem;align-items:start}
.eclir-method-grid h2{color:var(--eclir-navy);max-width:760px}
.eclir-method-grid .eclir-heading-rule{margin-bottom:1.15rem}
.eclir-source-card{background:var(--eclir-navy);color:#fff;padding:1.7rem 1.75rem 1.5rem;border-top:3px solid var(--eclir-gold)}
.eclir-source-card .eclir-kicker{font-size:.76rem}
.eclir-source-card ol{list-style:none;padding:0;margin:1rem 0 0}
.eclir-source-card li{display:grid;grid-template-columns:34px 1fr;gap:.7rem;padding:.72rem 0;border-top:1px solid rgba(255,255,255,.13);font-family:var(--eclir-serif);font-size:.95rem;line-height:1.35}
.eclir-source-card li span{font-family:var(--eclir-sans);font-size:.62rem;color:var(--eclir-gold-soft);letter-spacing:.06em;padding-top:.17rem}
.eclir-independence{padding:4rem 0;background:linear-gradient(105deg,#07182F,#0B2344);color:#fff}
.eclir-independence-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:4.5rem;align-items:end}
.eclir-independence h2{color:#fff;max-width:800px}
.eclir-independence-head p{margin:0;color:rgba(255,255,255,.78);line-height:1.68}
.eclir-method-steps{display:grid;grid-template-columns:repeat(5,1fr);margin-top:2rem;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}
.eclir-method-steps div{padding:1.25rem 1rem 1.3rem;min-height:110px}
.eclir-method-steps div+div{border-left:1px solid rgba(255,255,255,.16)}
.eclir-method-steps span{display:block;color:var(--eclir-gold-soft);font-size:.62rem;letter-spacing:.07em;margin-bottom:.48rem}
.eclir-method-steps strong{font-family:var(--eclir-serif);font-size:.96rem;line-height:1.3;font-weight:500}
.eclir-independence-foot{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:1.35rem;color:rgba(255,255,255,.72);font-size:.82rem;line-height:1.63}
.eclir-independence-foot p{margin:0}
.eclir-framework-grid{align-items:center}
.eclir-about-cta{background:#07182F;color:#fff;padding:2.85rem 0;border-top:1px solid rgba(200,162,74,.35)}
.eclir-about-cta-inner{display:flex;justify-content:space-between;align-items:center;gap:3rem}
.eclir-about-cta h2{color:#fff}
.eclir-about-cta p{margin:.55rem 0 0;color:rgba(255,255,255,.76);max-width:680px;line-height:1.6}
.eclir-about-cta .eclir-buttons{margin-top:0;flex:0 0 auto}
.eclir-about-cta .eclir-btn{min-width:190px}

@media(max-width:1100px){
  .eclir-about-split,.eclir-method-grid{gap:3.3rem}
  .eclir-principle-grid{grid-template-columns:repeat(2,1fr)}
  .eclir-principle-grid article:nth-child(3){border-left:0;border-top:1px solid var(--eclir-line)}
  .eclir-principle-grid article:nth-child(4){border-top:1px solid var(--eclir-line)}
  .eclir-method-steps{grid-template-columns:repeat(3,1fr)}
  .eclir-method-steps div:nth-child(4){border-left:0;border-top:1px solid rgba(255,255,255,.16)}
  .eclir-method-steps div:nth-child(5){border-top:1px solid rgba(255,255,255,.16)}
}
@media(max-width:820px){
  .eclir-about-hero-art{width:78%;right:-34%;opacity:.22}
  .eclir-about-hero-inner{min-height:320px;padding:2.25rem 0 2.55rem}
  .eclir-about-section,.eclir-independence{padding:3.25rem 0}
  .eclir-about-split,.eclir-about-intro-row,.eclir-method-grid,.eclir-independence-head{grid-template-columns:1fr;gap:1.65rem}
  .eclir-about-research-grid{grid-template-columns:repeat(2,1fr)}
  .eclir-independence-foot{grid-template-columns:1fr;gap:1rem}
  .eclir-about-cta-inner{align-items:flex-start;flex-direction:column}
}
@media(max-width:580px){
  .eclir-about-hero h1 br{display:none}
  .eclir-about-research-grid,.eclir-principle-grid,.eclir-method-steps{grid-template-columns:1fr}
  .eclir-principle-grid article+article,.eclir-method-steps div+div{border-left:0;border-top:1px solid var(--eclir-line)}
  .eclir-method-steps div+div{border-color:rgba(255,255,255,.16)}
  .eclir-about-research-grid article{min-height:0}
  .eclir-about-title-row{align-items:flex-start}
  .eclir-about-title-row .eclir-more{display:none}
  .eclir-about-cta .eclir-buttons,.eclir-about-cta .eclir-btn{width:100%}
}

/* v0.8.4 — About rhythm refinements */
.eclir-framework-grid .eclir-about-label h2{font-size:clamp(1.8rem,2.28vw,2.45rem);max-width:520px}
@media(max-width:820px){.eclir-about-section{padding:2.85rem 0}.eclir-independence{padding:3.35rem 0}.eclir-framework-grid .eclir-about-label h2{font-size:clamp(1.75rem,7vw,2.25rem)}}


/* =========================================================
   v0.10.0 — Research / Recherche
   ========================================================= */
.eclir-research-page .eclir-about-hero-copy{max-width:850px}
.eclir-research-lede{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);gap:5rem;align-items:start}
.eclir-research-lede h2{color:var(--eclir-navy);margin:.35rem 0 0;font-family:var(--eclir-serif);font-size:clamp(2rem,2.6vw,2.75rem);line-height:1.07;font-weight:500;letter-spacing:-.024em}
.eclir-research-lede-copy{color:#3f4d61;font-size:.98rem;line-height:1.72}
.eclir-research-lede-copy p{margin:0 0 1rem}
.eclir-research-areas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--eclir-line);border-left:1px solid var(--eclir-line)}
.eclir-research-area{scroll-margin-top:120px;position:relative;padding:1.8rem 1.9rem 1.85rem;min-height:270px;background:#fff;border-right:1px solid var(--eclir-line);border-bottom:1px solid var(--eclir-line)}
.eclir-research-area .eclir-research-number{display:block;color:var(--eclir-gold);font-size:.7rem;letter-spacing:.09em;font-weight:750;margin-bottom:.55rem}
.eclir-research-area h2{margin:0 0 .7rem;color:var(--eclir-navy);font-family:var(--eclir-serif);font-size:1.43rem;line-height:1.2;font-weight:600}
.eclir-research-area p{margin:0 0 .9rem;color:#536176;font-size:.86rem;line-height:1.67;max-width:650px}
.eclir-research-scope{margin-top:1.1rem;padding-top:.85rem;border-top:1px solid #e6e3dc;color:#42526a;font-size:.75rem;line-height:1.55}
.eclir-research-scope strong{display:block;margin-bottom:.3rem;color:var(--eclir-navy);text-transform:uppercase;letter-spacing:.065em;font-size:.62rem}
.eclir-research-cross{padding:3.35rem 0;background:linear-gradient(105deg,#07182F,#0B2344);color:#fff}
.eclir-research-cross-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:4rem;align-items:end;margin-bottom:1.65rem}
.eclir-research-cross h2{margin:.35rem 0 0;color:#fff;font-family:var(--eclir-serif);font-size:clamp(2rem,2.65vw,2.85rem);line-height:1.07;font-weight:500;letter-spacing:-.024em}
.eclir-research-cross-head p{margin:0;color:rgba(255,255,255,.78);line-height:1.68}
.eclir-research-cross-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}
.eclir-research-cross-grid article{padding:1.35rem 1.3rem 1.45rem;min-height:150px}
.eclir-research-cross-grid article+article{border-left:1px solid rgba(255,255,255,.16)}
.eclir-research-cross-grid span{display:block;color:var(--eclir-gold-soft);font-size:.63rem;letter-spacing:.08em;margin-bottom:.5rem}
.eclir-research-cross-grid h3{margin:0 0 .5rem;color:#fff;font-family:var(--eclir-serif);font-size:1.08rem;font-weight:500}
.eclir-research-cross-grid p{margin:0;color:rgba(255,255,255,.7);font-size:.8rem;line-height:1.62}
.eclir-research-output{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3rem;align-items:center}
.eclir-research-output h2{margin:.35rem 0 0;color:var(--eclir-navy);font-family:var(--eclir-serif);font-size:clamp(2rem,2.55vw,2.7rem);line-height:1.07;font-weight:500}
.eclir-research-output p{max-width:760px;color:#526176;line-height:1.68}
@media(max-width:900px){
  .eclir-research-lede,.eclir-research-cross-head{grid-template-columns:1fr;gap:1.6rem}
  .eclir-research-areas{grid-template-columns:1fr}
  .eclir-research-area{scroll-margin-top:120px;min-height:0}
  .eclir-research-output{grid-template-columns:1fr;gap:1.4rem}
}
@media(max-width:650px){
  .eclir-research-cross-grid{grid-template-columns:1fr}
  .eclir-research-cross-grid article+article{border-left:0;border-top:1px solid rgba(255,255,255,.16)}
  .eclir-research-area{scroll-margin-top:120px;padding:1.55rem 1.45rem 1.6rem}
}


/* Controlled institutional search — v0.10.1 */
.eclir-search-page{background:#fff}
.eclir-search-hero{padding:4.2rem 0 3.8rem;background:linear-gradient(105deg,#07182F,#0B2344);color:#fff}
.eclir-search-hero h1{margin:.45rem 0 .8rem;font-family:var(--eclir-serif);font-size:clamp(2.7rem,4vw,4.6rem);line-height:1.02;font-weight:500;letter-spacing:-.035em}
.eclir-search-hero p{max-width:720px;margin:0 0 1.8rem;color:rgba(255,255,255,.78);font-size:.98rem;line-height:1.65}
.eclir-site-search-form{display:flex;max-width:900px;border:1px solid rgba(255,255,255,.24);background:#fff}
.eclir-site-search-form input{flex:1;min-width:0;border:0;outline:0;padding:1rem 1.1rem;font:inherit;color:var(--eclir-navy);background:#fff}
.eclir-site-search-form button{border:0;border-left:1px solid #b78f37;background:var(--eclir-gold);color:#07182f;padding:0 1.45rem;font-size:.76rem;font-weight:750;text-transform:uppercase;letter-spacing:.025em;cursor:pointer}
.eclir-site-search-form button span{margin-left:.7rem}
.eclir-search-results-section{padding:3.25rem 0 4.25rem;min-height:310px;background:#fbfaf7}
.eclir-search-intro{margin:0;color:#536176;font-size:1rem}
.eclir-search-results-head{margin-bottom:1.6rem}
.eclir-search-results-head h2{margin:.4rem 0 0;color:var(--eclir-navy);font-family:var(--eclir-serif);font-size:clamp(2rem,2.7vw,2.8rem);font-weight:500;line-height:1.08}
.eclir-search-results-list{border-top:1px solid var(--eclir-line)}
.eclir-search-result{padding:1.45rem 0 1.55rem;border-bottom:1px solid var(--eclir-line);max-width:980px}
.eclir-search-result h3{margin:0 0 .45rem;font-family:var(--eclir-serif);font-size:1.35rem;font-weight:600}
.eclir-search-result h3 a{color:var(--eclir-navy);text-decoration:none}
.eclir-search-result p{margin:0 0 .55rem;color:#536176;line-height:1.62;max-width:850px}
.eclir-search-result-link{color:var(--eclir-navy);font-size:.71rem;font-weight:750;text-transform:uppercase;letter-spacing:.04em;text-decoration:none}
.eclir-search-result-link span{color:var(--eclir-gold);margin-left:.35rem}
.eclir-search-empty h3{margin:0 0 .45rem;color:var(--eclir-navy);font-family:var(--eclir-serif);font-size:1.7rem;font-weight:500}
.eclir-search-empty p{color:#536176;margin:0 0 1.25rem}
@media (max-width:700px){
  .eclir-search-hero{padding:3.2rem 0 3rem}
  .eclir-site-search-form{display:grid;grid-template-columns:1fr}
  .eclir-site-search-form button{border-left:0;border-top:1px solid #b78f37;padding:.9rem 1rem}
  .eclir-search-results-section{padding:2.5rem 0 3.25rem}
}


/* =========================================================
   v0.10.2 — Search scale + newsletter desktop geometry
   ========================================================= */
.eclir-search-hero h1{
  font-size:clamp(2.35rem,3.25vw,3.75rem)!important;
  letter-spacing:-.025em!important;
}

/* Keep email field and action on one line on desktop regardless
   of inherited/grid sizing quirks. */
.eclir-newsletter-form{
  display:flex!important;
  align-items:stretch!important;
  width:100%!important;
  min-width:0!important;
}
.eclir-newsletter-form input{
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  height:46px!important;
  box-sizing:border-box!important;
}
.eclir-newsletter-form button.eclir-gold-action{
  flex:0 0 180px!important;
  width:180px!important;
}

@media(max-width:640px){
  .eclir-newsletter-form{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  .eclir-newsletter-form button.eclir-gold-action{
    width:100%!important;
    min-width:0!important;
    flex-basis:auto!important;
  }
  .eclir-search-hero h1{
    font-size:clamp(2.15rem,11vw,3rem)!important;
  }
}

@media(max-width:720px){
  .eclir-featured-work-grid.eclir-work-count-1,.eclir-featured-work-grid.eclir-work-count-2,.eclir-featured-work-grid.eclir-work-count-3{grid-template-columns:1fr;max-width:none}
  .eclir-work-status{margin-left:0}
}


/* v0.10.9 — Legal Notice / Privacy Policy */
.eclir-legal-page{background:#fff;color:var(--eclir-ink)}
.eclir-legal-hero{background:var(--eclir-paper-cool);border-bottom:1px solid var(--eclir-line);padding:62px 0 54px}
.eclir-legal-hero h1{font-family:var(--eclir-serif);font-size:clamp(2.6rem,4.8vw,4.55rem);font-weight:400;line-height:1.02;letter-spacing:-.035em;margin:10px 0 17px;color:var(--eclir-navy)}
.eclir-legal-hero p{max-width:780px;font-size:1.08rem;line-height:1.7;color:#536078;margin:0}
.eclir-legal-body{padding:58px 0 78px}
.eclir-legal-content{max-width:920px;margin:0 auto}
.eclir-legal-section{padding:0 0 34px;margin:0 0 34px;border-bottom:1px solid var(--eclir-line)}
.eclir-legal-section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.eclir-legal-section h2{font-family:var(--eclir-serif);font-size:1.72rem;line-height:1.2;font-weight:400;color:var(--eclir-navy);margin:0 0 15px}
.eclir-legal-section h3{font-family:var(--eclir-sans);font-size:.77rem;line-height:1.3;letter-spacing:.08em;text-transform:uppercase;color:var(--eclir-gold);margin:23px 0 9px}
.eclir-legal-section p,.eclir-legal-section li{font-size:1rem;line-height:1.75;color:#33405a}
.eclir-legal-section p{margin:0 0 13px}
.eclir-legal-section ul{margin:8px 0 15px;padding-left:21px}
.eclir-legal-section a{color:var(--eclir-navy);text-decoration:underline;text-underline-offset:3px}
.eclir-legal-data{border-left:3px solid var(--eclir-gold);padding:3px 0 3px 18px;margin:15px 0}
.eclir-legal-data p{margin:2px 0}
.eclir-legal-updated{font-size:.88rem;color:var(--eclir-muted);margin-top:30px}
@media(max-width:720px){.eclir-legal-hero{padding:42px 0 38px}.eclir-legal-body{padding:40px 0 58px}.eclir-legal-section{padding-bottom:27px;margin-bottom:27px}.eclir-legal-section h2{font-size:1.48rem}}


/* v0.10.13 — resilient single-publication title scale for long titles */
.eclir-publication-heading{
  max-width:760px;
  font-size:clamp(2.15rem,3.2vw,3.45rem);
  line-height:1.06;
  letter-spacing:-.014em;
}
.eclir-publication-rule{
  margin-top:1.15rem;
}
@media(max-width:720px){
  .eclir-publication-heading{
    max-width:none;
    font-size:clamp(2rem,9.5vw,2.65rem);
    line-height:1.07;
    letter-spacing:-.012em;
  }
}


/* =========================================================
   v0.10.17 — publication layout and localisation resilience
   ========================================================= */

/* Give the reading column more room and place the compact facts card
   closer to the right edge of the institutional shell. */
.eclir-publication-layout-grid{
  grid-template-columns:minmax(0,1fr) 320px;
  column-gap:clamp(4rem,5vw,6rem);
}

/* The side column must span the full grid row for its child to remain
   sticky throughout the publication rather than only within card height. */
.eclir-publication-sidecol{
  align-self:stretch;
  min-width:0;
}
.eclir-publication-sidecol .eclir-publication-facts{
  position:sticky;
  top:1.5rem;
}
.admin-bar .eclir-publication-sidecol .eclir-publication-facts{
  top:calc(32px + 1.5rem);
}

/* Keep the shared gold visual language, but let publication actions grow
   with EN/FR labels. The newsletter control deliberately stays at 180px. */
.eclir-publication-actions a.eclir-gold-action.eclir-publication-download{
  width:max-content!important;
  min-width:200px!important;
  max-width:100%!important;
  padding-inline:1.35rem!important;
  white-space:nowrap!important;
}
.eclir-publication-actions .eclir-publication-cite{
  box-sizing:border-box;
  width:max-content;
  min-width:190px;
  max-width:100%;
  padding-inline:1.35rem;
  white-space:nowrap;
}

@media(max-width:980px){
  .eclir-publication-layout-grid{
    grid-template-columns:1fr;
    column-gap:0;
  }
  .eclir-publication-sidecol{
    align-self:auto;
  }
}

@media(max-width:782px){
  .admin-bar .eclir-publication-sidecol .eclir-publication-facts{
    top:calc(46px + 1rem);
  }
}

@media(max-width:640px){
  .eclir-publication-actions a.eclir-gold-action.eclir-publication-download,
  .eclir-publication-actions .eclir-publication-cite{
    width:100%!important;
    min-width:0!important;
    white-space:normal!important;
  }
}

/* Institutional registration — v0.10.24 */
.eclir-footer-registration{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem 1.25rem;margin-top:1.35rem;padding-top:.8rem;border-top:1px solid rgba(255,255,255,.12);font-size:.68rem;line-height:1.6;color:rgba(255,255,255,.78);text-align:center}
.eclir-footer-registration span{white-space:nowrap}
.eclir-footer-registration + .eclir-footer-bottom{border-top:0;margin-top:.45rem;padding-top:0}


/* ==========================================================
   v0.10.28 — compact Latest Publications cards
   Align the homepage publication module with the lighter,
   flatter visual rhythm used by Mission, Research Areas and
   Featured Work. No publication data model changes.
   ========================================================== */

/* Three deliberately wider cards on institutional landing pages. */
.eclir-pub-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.9rem;
}

/* Reduce the card's visual mass and remove the tall catalogue-tile feel. */
.eclir-pub-card{
  grid-template-columns:50px minmax(0,1fr);
  min-height:0;
  box-shadow:0 2px 8px rgba(10,26,50,.045);
}
.eclir-pub-card:hover{
  transform:translateY(-1px);
  box-shadow:0 5px 14px rgba(10,26,50,.07);
}

/* Keep the series colour cue, but make it an accent rather than a panel. */
.eclir-pub-band svg{
  width:25px;
  height:25px;
  stroke-width:1.45;
}

.eclir-pub-body{
  padding:.72rem .82rem .66rem;
}
.eclir-pub-headline-row{
  gap:.5rem;
}
.eclir-pub-type{
  font-size:.55rem;
}
.eclir-pub-lang-option{
  padding:.1rem .2rem;
  font-size:.49rem;
}

/* Titles remain the primary element, but no card may become vertically dominant. */
.eclir-pub-title{
  margin:.34rem 0 0;
  font-size:.91rem;
  line-height:1.2;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.eclir-pub-summary{
  margin:.34rem 0 0;
  font-size:.61rem;
  line-height:1.38;
  -webkit-line-clamp:2;
}
.eclir-pub-meta{
  margin-top:.5rem;
  padding-top:.28rem;
  font-size:.54rem;
  gap:.26rem;
}
.eclir-pub-meta b{
  font-size:.84rem;
}

@media (max-width:1100px){
  .eclir-pub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  .eclir-pub-grid{grid-template-columns:1fr}
  .eclir-pub-card{grid-template-columns:44px minmax(0,1fr)}
  .eclir-pub-title{font-size:.96rem}
}


/* v0.10.29 — Institutional Activity responsive layout */
@media(max-width:900px){
  .eclir-activity-card{grid-template-columns:150px minmax(0,1fr);grid-template-rows:auto auto auto;column-gap:1.25rem}
  .eclir-activity-links{grid-column:2;grid-row:3;flex-direction:row;flex-wrap:wrap;margin-top:.35rem}
}
@media(max-width:620px){
  .eclir-activity-card{grid-template-columns:1fr;grid-template-rows:auto;padding:1.15rem .2rem;row-gap:.38rem}
  .eclir-activity-date,.eclir-activity-organizer,.eclir-activity-card h3,.eclir-activity-card>.eclir-small,.eclir-activity-links{grid-column:1;grid-row:auto}
  .eclir-activity-links{margin-top:.4rem;gap:.55rem 1rem}
}


/* v0.10.32 — DB-IP attribution */
.eclir-footer-bottom .eclir-dbip-attribution{font-size:inherit;line-height:inherit;color:rgba(255,255,255,.63)!important;text-decoration:none!important}
.eclir-footer-bottom .eclir-dbip-attribution:hover{color:var(--eclir-gold-soft)!important}


/* v0.10.33 — Research Standards & Methodology */
.eclir-methodology-promo{padding-top:3rem;padding-bottom:3rem}
.eclir-methodology-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3rem;align-items:center;padding:2rem 2.15rem;background:#fff;border:1px solid var(--eclir-line);border-left:4px solid var(--eclir-gold)}
.eclir-methodology-card h2{margin:.35rem 0 .65rem;color:var(--eclir-navy);font-family:var(--eclir-serif);font-size:clamp(1.75rem,2.25vw,2.35rem);line-height:1.08;font-weight:500;letter-spacing:-.018em}
.eclir-methodology-card p{margin:0;max-width:830px;color:#526176;line-height:1.7}
.eclir-methodology-intro{display:grid;grid-template-columns:minmax(0,.95fr) minmax(320px,1.05fr);gap:4rem;align-items:start}
.eclir-methodology-intro h2,.eclir-methodology-version h2{margin:.35rem 0 0;color:var(--eclir-navy);font-family:var(--eclir-serif);font-size:clamp(2rem,2.55vw,2.7rem);line-height:1.08;font-weight:500}
.eclir-methodology-intro p,.eclir-methodology-version p{margin:.15rem 0 0;color:#526176;line-height:1.72}
.eclir-methodology-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--eclir-line);border-left:1px solid var(--eclir-line)}
.eclir-methodology-list article{position:relative;padding:1.65rem 1.75rem 1.75rem;background:#fff;border-right:1px solid var(--eclir-line);border-bottom:1px solid var(--eclir-line)}
.eclir-methodology-list article>span{display:block;margin-bottom:.48rem;color:var(--eclir-gold);font-size:.68rem;letter-spacing:.09em;font-weight:750}
.eclir-methodology-list h2{margin:0 0 .65rem;color:var(--eclir-navy);font-family:var(--eclir-serif);font-size:1.3rem;line-height:1.2;font-weight:600}
.eclir-methodology-list p{margin:0;color:#536176;font-size:.87rem;line-height:1.7}
.eclir-methodology-version{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,310px);gap:4rem;align-items:center}
.eclir-methodology-meta{display:grid;grid-template-columns:auto 1fr;gap:.5rem 1.25rem;padding:1.25rem 1.4rem;border-top:2px solid var(--eclir-gold);background:var(--eclir-paper)}
.eclir-methodology-meta strong{color:var(--eclir-navy);font-size:.74rem;letter-spacing:.035em;text-transform:uppercase}
.eclir-methodology-meta span{color:#536176;font-size:.86rem;text-align:right}
@media (max-width:820px){
 .eclir-methodology-card,.eclir-methodology-intro,.eclir-methodology-version{grid-template-columns:1fr;gap:1.35rem}
 .eclir-methodology-list{grid-template-columns:1fr}
 .eclir-methodology-card{padding:1.65rem 1.5rem}
 .eclir-methodology-card .eclir-btn{justify-self:start}
}

/* v0.10.36 — Research page visual alignment (based on stable v0.10.35 header) */
.eclir-research-output{
  padding:2rem 2.15rem;
  background:#fff;
  border:1px solid var(--eclir-line);
  border-left:4px solid var(--eclir-gold);
}
.eclir-research-output>div{min-width:0}
.eclir-research-output .eclir-heading-rule{margin-top:.65rem;margin-bottom:.9rem}
.eclir-research-output p{margin:.15rem 0 0}
.eclir-research-output>.eclir-btn{justify-self:end}
@media(max-width:900px){
  .eclir-research-output{padding:1.65rem 1.5rem}
  .eclir-research-output>.eclir-btn{justify-self:start}
}

/* v0.10.37 — methodology quick links added to institutional footer. */


/* v0.10.39 — institutional 404 page */
.eclir-404-page{background:#fff}
.eclir-404-section{padding:clamp(4.5rem,8vw,8rem) 0;background:linear-gradient(180deg,#fff 0%,#f7f8fb 100%);border-top:1px solid rgba(217,221,229,.45);border-bottom:1px solid var(--eclir-line)}
.eclir-404-inner{display:grid;grid-template-columns:minmax(160px,.42fr) minmax(0,1fr);gap:clamp(2.5rem,7vw,7rem);align-items:center}
.eclir-404-code{font-family:var(--eclir-serif);font-size:clamp(6.75rem,13vw,12rem);line-height:.8;font-weight:500;letter-spacing:-.055em;color:var(--eclir-navy);white-space:nowrap}
.eclir-404-copy{max-width:760px}
.eclir-404-copy h1{margin:.4rem 0 .75rem;color:var(--eclir-navy);font-family:var(--eclir-serif);font-size:clamp(2.25rem,4vw,3.8rem);line-height:1.03;font-weight:500;letter-spacing:-.025em}
.eclir-404-copy p{margin:1.05rem 0 0;max-width:650px;color:#526176;font-size:1rem;line-height:1.75}
.eclir-404-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:2rem}
.eclir-404-actions .eclir-btn{min-width:190px}
.eclir-404-actions .eclir-btn-secondary{background:#fff;color:var(--eclir-navy)!important;border-color:var(--eclir-gold)}
.eclir-404-actions .eclir-btn-secondary:hover{background:var(--eclir-paper)}
@media(max-width:760px){
  .eclir-404-section{padding:4rem 0}
  .eclir-404-inner{grid-template-columns:1fr;gap:1.5rem}
  .eclir-404-code{font-size:6.5rem}
  .eclir-404-actions{flex-direction:column;align-items:stretch}
  .eclir-404-actions .eclir-btn{width:100%}
}


/* v0.10.40 — public document language attributes aligned with EN/FR interface */
