/* Approved screenshot proposal, implemented on the existing FR/EN templates.
   Scope: homepage only. Institutional copy remains in data/content.json. */


.home-page{
  --editorial:"Newsreader",Georgia,serif;
  --shell:min(1420px,calc(100% - 8.6vw));
  --rail:4.3vw;--content-inset:11.4vw;
  background:var(--paper);font-weight:400;
}
.home-page .primary-nav a,.home-page .language-link{font-weight:400;letter-spacing:.14em}
.home-page .brand,.home-page .brand img{width:138px}
.home-page .header-shell{grid-template-columns:145px 1fr auto;gap:26px}
.home-page .section-kicker,.home-page .identity-marker{font-weight:400;font-size:.8125rem;letter-spacing:.19em;line-height:1.7}
.home-page .section-kicker::before{width:25px;margin-right:14px}
.home-page .section-space{border:0;padding:clamp(88px,9vw,150px) 0}
.home-page .institutional-hero{background:#eaf0f4;min-height:0;isolation:isolate}
.home-page .hero-grid{min-height:clamp(700px,calc(100svh - var(--header)),990px);grid-template-columns:minmax(0,4fr) minmax(220px,1fr);gap:3vw;padding:220px 0 142px;align-items:end}
.home-page .hero-main{max-width:1020px}
.home-page .hero-marker{font-size:.75rem;letter-spacing:.24em;margin-bottom:38px}
.home-page .hero-name{font-family:var(--sans);font-size:1rem;font-weight:400;letter-spacing:.5em;line-height:1.5;margin:0 0 46px}
.home-page .hero-definition{font-family:var(--editorial);font-size:clamp(2.65rem,3.65vw,4.7rem);font-weight:400;line-height:1.08;letter-spacing:-.02em;margin:0;max-width:1030px}
.home-page .hero-operational{font-size:.875rem;line-height:1.55;max-width:305px;padding-top:16px;margin:0 0 0}
.home-page .hero-atmosphere{inset:0;z-index:-1;width:100%;height:100%;filter:none;background:none;overflow:hidden}
.home-page .atmosphere-wash{position:absolute;width:140%;height:150%;max-width:none;left:-18%;top:-29%;object-fit:cover;filter:blur(40px) saturate(.38);opacity:.67;transform:scale(1.12)}
.home-page .atmosphere-geography{position:absolute;right:-3%;top:-4%;width:87%;height:100%;max-width:none;object-fit:contain;opacity:.055;filter:blur(2px);mask-image:linear-gradient(180deg,#000 12%,#000a 48%,transparent 90%)}
.home-page .hero-atmosphere::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f7fafc66,transparent 65%),linear-gradient(0deg,#eef4f755,transparent 60%)}
.home-page .hero-hairline{position:absolute;left:50%;bottom:55px;width:1px;height:56px;background:linear-gradient(var(--copper),transparent);opacity:.7}
.home-page .editorial-sequence{position:relative}
.home-page .editorial-sequence::before{content:"";position:absolute;top:0;bottom:0;left:var(--rail);width:1px;background:rgba(166,75,54,.3);z-index:2;pointer-events:none}
.home-page .editorial-sequence>.section-space{position:relative;background:transparent}
.home-page .editorial-sequence .page-shell{width:auto;max-width:1380px;margin-left:var(--content-inset);margin-right:var(--rail)}
.home-page .sequence-stage{position:absolute;top:clamp(88px,9vw,150px);left:var(--rail);z-index:3;transform:translateX(-50%);writing-mode:vertical-rl;display:flex;align-items:center;gap:13px;color:var(--copper);font-family:var(--sans);font-size:.75rem;letter-spacing:.16em;line-height:1;pointer-events:none}
.home-page .sequence-stage>span{writing-mode:horizontal-tb;width:26px;height:26px;display:grid;place-items:center;border:1px solid var(--copper);border-radius:50%;background:var(--paper);font-family:var(--display);font-size:.875rem;letter-spacing:0}
.home-page .question-section{isolation:isolate;overflow:hidden;min-height:640px;display:flex;align-items:center}
.home-page .question-section .page-shell{width:100%}
.home-page .question-section .sequence-stage{top:clamp(88px,9vw,150px)}
.home-page .question-grid{display:block}
.home-page .question-grid>.section-kicker{margin-bottom:45px}
.home-page .political-question{font-family:var(--display);font-size:clamp(2rem,3.65vw,4.3rem);line-height:1.23;font-weight:400;letter-spacing:-.015em;max-width:1240px}
.home-page .political-question::first-letter{font-style:italic;font-size:1.38em;line-height:0;color:var(--copper)}
.home-page .question-section::before{content:"";position:absolute;inset:-15%;z-index:-2;background:url('/assets/europe-west-asia-map.webp') center/cover;opacity:.09;filter:blur(24px);mask-image:radial-gradient(ellipse at 25% 40%,#000 15%,transparent 65%)}
.home-page .question-geography{position:absolute;inset:-14% auto auto -5%;width:105%;height:126%;object-fit:contain;max-width:none;z-index:-1;opacity:.065;filter:blur(3px);mask-image:radial-gradient(ellipse at 25% 40%,#000 5%,#0006 43%,transparent 70%)}
.home-page .section-head{display:block;margin-bottom:64px}
.home-page .section-head h2,.home-page .workwith-grid h2,.home-page .journal-home h2{font-family:var(--editorial);font-size:clamp(2.2rem,3.3vw,3.9rem);line-height:1.06;letter-spacing:-.02em;font-weight:400}
.home-page .section-head>.section-kicker,.home-page .section-head>div>.section-kicker{margin-bottom:22px}
.home-page #capabilities-title{max-width:520px}
.home-page .capability-row{grid-template-columns:40px minmax(210px,1fr) minmax(0,1.2fr);gap:26px;padding:32px 0 34px}
.home-page .capability-row:nth-child(even){padding-left:22px}
.home-page .capability-index{font-size:1rem;font-style:italic}
.home-page .capability-row h3{font-family:var(--sans);font-weight:400;font-size:.875rem;letter-spacing:.075em;line-height:1.5}
.home-page .capability-row p{font-family:var(--display);font-size:1rem;line-height:1.65}
.home-page .work-head{display:grid;grid-template-columns:1.75fr 1fr;gap:4vw;align-items:end}
.home-page .work-head>p{font-family:var(--display);font-size:1rem;line-height:1.6;margin:0;padding:0}
.home-page .trajectory-editorial{grid-template-columns:repeat(12,minmax(0,1fr));gap:100px 32px;align-items:start}
.home-page .layout-feature{grid-column:1/5}
.home-page .layout-feature .trajectory-media,.home-page .layout-feature .trajectory-meta{max-width:none;margin:0}
.home-page .layout-wide:nth-of-type(2){grid-column:6/13;margin-top:105px}
.home-page .layout-wide:nth-of-type(3){grid-column:2/9;margin-top:0}
.home-page .layout-standard{grid-column:9/13;margin-top:45px}
.home-page .layout-portrait{grid-column:1/5;margin-top:0}
.home-page .layout-portrait .trajectory-media{max-width:82%}
.home-page .layout-wide:nth-of-type(6){grid-column:6/12;margin-top:25px}
.home-page .trajectory-media{background:transparent;margin-bottom:17px}
.home-page .trajectory-media img{object-fit:contain}
.home-page .trajectory-meta{display:block;border-top:0;padding-top:0}
.home-page .trajectory-number{font-size:.75rem;margin:0 0 7px}
.home-page .trajectory-meta h3{font-family:var(--editorial);font-size:1.8rem;line-height:1.15;letter-spacing:0;margin-bottom:6px}
.home-page .trajectory-meta>p:not(.trajectory-number){font-size:.875rem;line-height:1.5}
.home-page .project-line{font-family:var(--display);flex-wrap:wrap;align-items:baseline;padding-top:13px;margin-top:13px!important;gap:7px 15px;color:var(--ink)!important}
.home-page .project-line span:last-child{font-family:var(--sans);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}
.home-page .arrow-link{font-weight:400;font-size:.8125rem;letter-spacing:.14em}
.home-page .section-link-wrap{margin-top:65px}
.home-page .economic-section{padding-top:105px;padding-bottom:65px}
.home-page .economic-section .sequence-stage{top:105px}
.home-page .economic-band{display:block;max-width:1000px;margin:0;padding:24px 0 0;border-top:1px solid var(--copper);border-bottom:0}
.home-page .economic-intro{font-family:var(--editorial);font-size:1.8rem;line-height:1.2;margin:25px 0 24px}
.home-page .economic-items{gap:8px 15px;max-width:950px}
.home-page .economic-items span{font-size:.8125rem;letter-spacing:.085em;line-height:1.7}
.home-page .economic-items span:not(:last-child)::after{margin-left:15px}
.home-page .programme-section{background:linear-gradient(#f7fafc,#f1f6f9 55%,#f7fafc)!important}
.home-page .programme-head{max-width:750px;margin-bottom:75px}
.home-page .programme-head h2{max-width:630px}
.home-page .programme-head>p:last-child{font-family:var(--display);font-size:1.125rem;line-height:1.6;max-width:none;margin:32px 0 0}
.home-page .target-line{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:36px;border:0;align-items:start}
.home-page .target-item,.home-page .target-item+.target-item{padding:0;border:0;min-width:0}
.home-page .target-item:nth-child(2){padding-top:34px}
.home-page .target-item:nth-child(3){padding-top:12px}
.home-page .target-item:nth-child(4){padding-top:54px}
.home-page .target-item:nth-child(5){padding-top:28px}
.home-page .target-number{font-family:var(--editorial);color:var(--ink);font-size:clamp(5.8rem,8vw,9rem);line-height:1;margin-bottom:24px;font-weight:400}
.home-page .target-name{font-family:var(--sans);font-weight:400;text-transform:uppercase;letter-spacing:.1em;font-size:.875rem;line-height:1.5;min-height:0}
.home-page .target-status{font-family:var(--display);font-style:italic;font-size:1rem;line-height:1.55;margin-top:12px;color:#64798e}
.home-page .programme-section .section-link-wrap{margin-top:90px}
.home-page .workwith-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9vw}
.home-page .workwith-grid h2{max-width:580px;margin-top:24px}
.home-page .workwith-intro{font-family:var(--display);font-size:1rem;line-height:1.65}
.home-page .route-list li{font-size:.8125rem;letter-spacing:.1em;text-transform:uppercase;padding:15px 0}
.home-page .journal-home-grid{display:grid;grid-template-columns:1fr auto;gap:22px 40px;align-items:end}
.home-page .journal-home-grid>.section-kicker{grid-column:1/-1}
.home-page .journal-home h2{max-width:660px}
.home-page .site-footer{padding:48px 0}
.home-page .footer-name{font-family:var(--editorial);font-size:1.8rem}
.home-page .footer-brand .identity-marker{font-size:.75rem;letter-spacing:.12em}
.home-page .footer-nav a,.home-page .footer-email{font-size:.8125rem;font-weight:400;letter-spacing:.08em}
@media(min-width:1700px){.home-page{--rail:max(4.3vw,calc((100vw - 1420px)/2));--content-inset:calc(var(--rail) + 100px)}}
@media(max-width:1100px){
  .home-page .hero-grid{grid-template-columns:minmax(0,3fr) minmax(190px,1fr);gap:30px}
  .home-page .hero-definition{font-size:3rem}
  .home-page .trajectory-editorial{gap:80px 24px}
  .home-page .target-line{gap:22px}
  .home-page .target-name{font-size:.8125rem}
  .home-page .capability-row{grid-template-columns:30px 1fr 1.2fr;gap:20px}
}
@media(max-width:1000px){.home-page .header-shell{grid-template-columns:1fr auto}.home-page .brand,.home-page .brand img{width:122px}}
@media(max-width:820px){
  .home-page{--shell:calc(100% - 40px);--rail:20px;--content-inset:55px}
  .home-page .section-space{padding:64px 0}
  .home-page .hero-grid{grid-template-columns:1fr;gap:32px;min-height:620px;padding:110px 0 110px}
  .home-page .hero-main{align-self:end}
  .home-page .hero-marker{font-size:.75rem;letter-spacing:.16em;margin-bottom:24px}
  .home-page .hero-name{font-size:.875rem;letter-spacing:.42em;margin-bottom:30px}
  .home-page .hero-definition{font-size:clamp(2.1rem,5.7vw,3.25rem);line-height:1.09}
  .home-page .hero-operational{max-width:440px;width:100%;font-size:.875rem}
  .home-page .hero-hairline{bottom:38px;height:36px}
  .home-page .atmosphere-wash{filter:blur(30px);opacity:.48}
  .home-page .atmosphere-geography{width:140%;right:-45%;top:-25%;opacity:.055;filter:blur(3px)}
  .home-page .editorial-sequence .page-shell{margin-left:var(--content-inset);margin-right:20px;max-width:none}
  .home-page .sequence-stage,.home-page .question-section .sequence-stage,.home-page .economic-section .sequence-stage{top:64px;font-size:.6875rem;letter-spacing:.08em;gap:12px}
  .home-page .sequence-stage>span{width:22px;height:22px;font-size:.75rem}
  .home-page .question-section{min-height:0;display:block}
  .home-page .question-section .page-shell{width:auto}
  .home-page .question-grid>.section-kicker{margin-bottom:26px}
  .home-page .political-question{font-size:clamp(1.65rem,4.7vw,2.45rem);line-height:1.3;letter-spacing:-.02em}
  .home-page .question-geography{width:190%;left:-60%;top:-20%;opacity:.065}
  .home-page .section-kicker{font-size:.75rem;letter-spacing:.13em}
  .home-page .section-kicker::before{width:19px;margin-right:10px}
  .home-page .section-head{margin-bottom:36px}
  .home-page .section-head h2,.home-page .workwith-grid h2,.home-page .journal-home h2{font-size:clamp(2rem,5.6vw,2.9rem)}
  .home-page .capability-row{grid-template-columns:25px minmax(0,1fr);gap:10px 15px;padding:24px 0!important}
  .home-page .capability-row h3,.home-page .capability-row p{grid-column:2}
  .home-page .capability-row h3{font-size:.8125rem;letter-spacing:.045em}
  .home-page .capability-row p{font-size:1rem;line-height:1.6}
  .home-page .work-head{display:block}
  .home-page .work-head>p{margin-top:22px}
  .home-page .trajectory-editorial{display:block}
  .home-page .trajectory-tile,.home-page .layout-wide:nth-of-type(2),.home-page .layout-wide:nth-of-type(3),.home-page .layout-standard,.home-page .layout-portrait,.home-page .layout-wide:nth-of-type(6){margin:0 0 48px}
  .home-page .trajectory-media,.home-page .layout-feature .trajectory-media,.home-page .layout-portrait .trajectory-media{max-width:100%;margin-left:0}
  .home-page .layout-feature .trajectory-media{max-width:80%}
  .home-page .layout-portrait .trajectory-media{max-width:76%}
  .home-page .trajectory-meta h3{font-size:1.8rem}
  .home-page .project-line{padding-top:11px;line-height:1.45;flex-direction:column;gap:5px}
  .home-page .section-link-wrap{margin-top:32px}
  .home-page .economic-band{padding-top:20px}
  .home-page .economic-intro{font-size:1.65rem;margin:22px 0}
  .home-page .economic-items{gap:7px 12px}
  .home-page .economic-items span{font-size:.75rem;letter-spacing:.04em}
  .home-page .economic-items span:not(:last-child)::after{margin-left:12px}
  .home-page .programme-head{margin-bottom:38px}
  .home-page .programme-head>p:last-child{font-size:1rem;margin-top:24px}
  .home-page .target-line{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 30px}
  .home-page .target-item,.home-page .target-item+.target-item{padding:0;border:0}
  .home-page .target-number{font-size:5.75rem;margin-bottom:15px}
  .home-page .target-name{font-size:.8125rem;letter-spacing:.06em}
  .home-page .target-status{font-size:1rem;margin-top:8px}
  .home-page .programme-section .section-link-wrap{margin-top:40px}
  .home-page .workwith-grid{grid-template-columns:1fr;gap:30px}
  .home-page .workwith-intro{margin-bottom:24px}
  .home-page .route-list{margin-bottom:26px}
  .home-page .route-list li{padding:13px 0}
  .home-page .journal-home-grid{grid-template-columns:1fr;gap:22px}
  .home-page .journal-home-grid>.section-kicker{grid-column:auto}
  .home-page .footer-shell{grid-template-columns:1fr;gap:28px}
  .home-page .footer-email{justify-self:start}
}
@media(max-width:480px){
  .home-page{--shell:calc(100% - 36px);--rail:15px;--content-inset:42px}
  .home-page .editorial-sequence .page-shell{margin-right:18px}
  .home-page .hero-grid{padding-top:85px;min-height:565px}
  .home-page .hero-definition{font-size:2.05rem}
  .home-page .hero-marker{font-size:.75rem;letter-spacing:.07em}
  .home-page .political-question{font-size:1.65rem;line-height:1.28}
  .home-page .target-line{display:block}
  .home-page .target-item,.home-page .target-item+.target-item{margin-bottom:30px}
  .home-page .target-number{font-size:4.8rem;margin-bottom:10px}
  .home-page .target-status{max-width:270px}
  .home-page .trajectory-meta h3{font-size:1.7rem}
}
/* The map is derived from real coastlines, with no venue pins or routes.
   Static by default. A single restrained cycle is enabled only on larger
   screens; then it returns to the calm starting state. */
@media(prefers-reduced-motion:no-preference) and (min-width:821px){
  .home-page .atmosphere-geography{animation:geography-emerges 24s ease-in-out 1 both}
  @keyframes geography-emerges{0%,100%{opacity:.025;filter:blur(12px)}30%{opacity:.07;filter:blur(5px)}48%,65%{opacity:.12;filter:blur(2px)}85%{opacity:.055;filter:blur(8px)}}
}
@media(prefers-reduced-motion:reduce){.home-page .atmosphere-geography{animation:none;opacity:.055;filter:none}}
.has-motion .home-page [data-reveal]{opacity:1;transform:none;transition:none}
.home-page h1,.home-page h2,.home-page p{text-wrap:pretty}
@media(min-width:521px) and (max-width:820px){
  .home-page .trajectory-media{max-width:560px}
  .home-page .layout-feature .trajectory-media{max-width:340px}
  .home-page .layout-portrait .trajectory-media{max-width:310px}
}
@media print{.home-page .hero-grid{min-height:0;padding:70px 0}.home-page .hero-atmosphere,.home-page .question-geography{display:none}.home-page .section-space{padding:40px 0}}

/* Key-point overflow: the system stays legible while selected elements cross its frame. */
.home-page .artist-manager{display:flex;gap:10px;align-items:baseline;margin-top:14px;padding-left:18px;border-left:2px solid var(--copper);font-size:.75rem;line-height:1.35;letter-spacing:.04em}
.home-page .artist-manager span:first-child{font-family:var(--editorial);font-size:1rem}
.home-page .artist-manager span+span{color:var(--muted)}
.home-page .economic-band{position:relative;margin-right:-6vw;padding-right:6vw}
.home-page .economic-band::after{content:"";position:absolute;right:-6vw;top:14%;width:12vw;height:1px;background:var(--copper);transform:rotate(-3deg);transform-origin:left center}
.home-page .trajectory-tile:nth-child(2) .trajectory-media{transform:translateX(3vw)}
.home-page .trajectory-tile:nth-child(4) .trajectory-meta{transform:translateX(-1.5vw)}
@media(max-width:720px){
  .home-page .economic-band{margin-right:0;padding-right:0}
  .home-page .economic-band::after{right:-16vw;width:24vw}
  .home-page .trajectory-tile:nth-child(2) .trajectory-media{transform:translateX(5vw)}
}
