/**
 * AAEF 2035 Premium Template
 * File: europe-cooperation.v0.0.60.css
 * Version: 0.0.60 | Build Date: 2026-09-29
 * Author: AAEF project / existing contributors
 * License: As supplied by the project owner; see third-party notices.
 */
.europe-cooperation {
  --ec-cream:#f6f7ef; --ec-gold:#e8d97e; --ec-cyan:#87deeb;
  --ec-green:var(--color-lime-400); --ec-background:#032d24;
  position:relative; isolation:isolate; overflow:hidden;
  padding:clamp(3.5rem,4.2vw,5rem) 0 clamp(4.75rem,7vw,6.5rem);
  color:var(--ec-cream);
  background:radial-gradient(ellipse at 74% 27%,#124e414d,transparent 49%),linear-gradient(135deg,#063b2c,var(--ec-background) 62%,#042d28);
}
.europe-cooperation__inner {width:min(92%,1720px);margin-inline:auto;position:relative;z-index:2}
.europe-cooperation__hero {display:grid;grid-template-columns:minmax(0,.38fr) minmax(0,.62fr);align-items:center;gap:0}
.europe-cooperation__copy {position:relative;z-index:2;min-width:0;padding-right:1rem}
.europe-cooperation__eyebrow {margin:0;font-size:clamp(.72rem,.9vw,1rem);letter-spacing:.32em;text-transform:uppercase;color:var(--ec-cream)}
.europe-cooperation__rule {display:block;width:2.2rem;height:2px;margin:1rem 0 1.35rem;background:var(--ec-gold)}
.europe-cooperation__rule--second {margin:1.4rem 0 1.7rem}
.europe-cooperation__title {margin:0;font-size:clamp(2rem,2.75vw,3.2rem);line-height:1.02;letter-spacing:-.045em;font-weight:800;text-transform:uppercase;color:var(--ec-cream)}
.europe-cooperation__title span {display:block;color:var(--ec-green);font-size:1.38em;line-height:1.02}
.europe-cooperation__lead {margin:1.1rem 0 0;max-width:34rem;font-size:clamp(1rem,1.18vw,1.3rem);line-height:1.5;color:#e4eee4}
.europe-cooperation__statement {margin:0;font-size:clamp(1.2rem,1.5vw,1.7rem);line-height:1.2;font-weight:800;text-transform:uppercase}
.europe-cooperation__statement span {display:block;margin-top:.25rem;color:var(--ec-green)}
.europe-cooperation__visual {min-width:0;position:relative}
.ec-scene {position:relative;width:100%;aspect-ratio:1000/560;container-type:inline-size;isolation:isolate}
.ec-scene__art {position:absolute;inset:0;width:100%;height:auto;overflow:visible;pointer-events:none}
.ec-scene__stars {filter:drop-shadow(0 0 5px #ffca3866)}
.ec-scene__connection {--connection:var(--ec-cyan);opacity:.8;transition:opacity var(--transition-base)}
.ec-scene__connection[data-ec-line="funding"],.ec-scene__connection[data-ec-line="investment"] {--connection:#e8e78d}
.ec-scene__connection.is-active {opacity:1}
.ec-scene__line-halo {stroke:var(--connection);stroke-width:8;opacity:.06}
.ec-scene__line {stroke:var(--connection);stroke-width:1.4;stroke-linecap:round}
.ec-scene__pulse {stroke:#fcf6bb;stroke-width:2.5;stroke-dasharray:14 120;opacity:0}
.ec-scene__connection.is-active .ec-scene__pulse {opacity:.8;animation:ec-signal 5s linear infinite}
.ec-scene__endpoint {fill:#f9fff2;stroke:var(--connection);stroke-width:2;filter:drop-shadow(0 0 5px #b9f6e8)}
.ec-scene__origin {fill:#f1eeaa;filter:drop-shadow(0 0 7px #e8df62)}
/* Tight raster bounds: a single geographic silhouette, without regional borders. */
.ec-scene__albania {position:absolute;left:9%;top:39%;width:15.5%;aspect-ratio:562/1000;pointer-events:none}
.ec-scene__albania>img {display:block;width:100%;height:100%;object-fit:contain;filter:brightness(.52) saturate(1.45) drop-shadow(1px 0 0 #f5f5ab) drop-shadow(-1px 0 0 #f5f5ab) drop-shadow(0 1px 0 #f5f5ab) drop-shadow(0 -1px 0 #f5f5ab) drop-shadow(0 0 5px #e5ed77) drop-shadow(0 0 16px #bac84488)}
.ec-scene__albania-label {position:absolute;top:47%;left:48%;transform:translate(-50%,-50%);width:85%;text-align:center;text-transform:uppercase;text-shadow:0 2px 5px #001b10;color:#fff;font-weight:800}
.ec-scene__albania-label svg {display:block;width:32%;height:auto;margin:0 auto .4cqw;fill:none;stroke:var(--ec-gold);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.ec-scene__albania-label strong {display:block;font-size:1.9cqw;line-height:1.1}
.ec-scene__albania-label span {display:block;font-size:1.5cqw;line-height:1.15;margin-top:.4cqw}
.ec-scene__nodes {list-style:none;padding:0;margin:0;position:absolute;inset:0}
.ec-scene__node {position:absolute;left:calc(var(--node-x) - 4.4%);top:var(--node-y);transform:translateY(-50%);width:24%}
.ec-scene__button {appearance:none;display:grid;grid-template-columns:36.6667% minmax(0,1fr);gap:1cqw;align-items:center;width:100%;padding:0;margin:0;border:0;background:none;color:var(--ec-cream);text-align:left;cursor:pointer;font:inherit;border-radius:var(--radius-md)}
.ec-scene__button:focus-visible {outline:2px solid var(--ec-gold);outline-offset:6px}
.ec-scene__photo {display:block;aspect-ratio:1;border-radius:50%;overflow:hidden;border:2px solid #c9e6d8;box-shadow:0 0 0 5px #a4e6c509,0 0 16px #70d7e522;transition:border-color var(--transition-base),box-shadow var(--transition-base)}
.ec-scene__photo img {display:block;width:100%;height:100%;object-fit:cover}
.ec-scene__button:hover .ec-scene__photo,.ec-scene__button[aria-pressed="true"] .ec-scene__photo {border-color:var(--ec-gold);box-shadow:0 0 0 5px #cce8780c,0 0 20px #cce87844}
.ec-scene__caption {display:block;min-width:0;text-shadow:0 1px 4px #03251c}
.ec-scene__caption strong {display:block;font-size:clamp(.75rem,1.5cqw,1.05rem);line-height:1.13;font-weight:800;text-transform:uppercase}
.ec-scene__caption i {display:block;width:2.5cqw;height:1px;background:var(--ec-gold);margin:.65cqw 0}
.ec-scene__caption>span:not(.ec-scene__optional-icon) {display:block;font-size:clamp(.75rem,1.4cqw,.98rem);line-height:1.35;color:#e1eadd}
.ec-scene__optional-icon:empty {display:none}
.ec-scene__optional-icon svg {width:1em;height:1em;fill:currentColor}
.ec-scene__node--policy{--node-x:15.5%;--node-y:19.6429%}
.ec-scene__node--funding{--node-x:42.5%;--node-y:9.82143%}
.ec-scene__node--knowledge{--node-x:70%;--node-y:17.8571%}
.ec-scene__node--markets{--node-x:80%;--node-y:49.1071%}
.ec-scene__node--investment{--node-x:79.5%;--node-y:81.7857%}
.europe-cooperation__platforms{
  margin-top:clamp(2.5rem,4vw,4rem);
  padding-top:clamp(1.8rem,2.4vw,2.5rem);
  border-top:1px solid rgba(192,215,146,.22);
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:0;
  position:relative;
  z-index:3;
}
.europe-cooperation__platforms article{
  display:grid;
  grid-template-columns:2.4rem minmax(0,1fr);
  gap:.8rem;
  padding:0 clamp(1rem,1.5vw,1.45rem);
  position:relative;
}
.europe-cooperation__platforms article:first-child{padding-left:0}
.europe-cooperation__platforms article:not(:first-child)::before{content:"";position:absolute;left:0;top:.15rem;bottom:.15rem;width:1px;background:linear-gradient(180deg,rgba(208,225,158,.38),rgba(208,225,158,.09))}
.europe-platform__icon{color:#e5db77;margin-top:.05rem}
.europe-platform__icon svg{width:2rem;height:2rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.europe-cooperation__platforms h3{margin:0;font-size:.96rem;line-height:1.15;text-transform:uppercase;color:#f5f7f0}
.europe-cooperation__platforms i{display:block;width:1.55rem;height:2px;border-radius:99px;background:linear-gradient(90deg,#ead574,#9fd05b);margin:.55rem 0 .5rem}
.europe-cooperation__platforms p{margin:0;font-size:.82rem;line-height:1.52;color:rgba(237,243,232,.85)}
.europe-cooperation__landscape{position:absolute;left:0;right:0;bottom:0;height:9rem;overflow:hidden;z-index:0;opacity:.34;pointer-events:none}
.europe-cooperation__landscape::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#062f27 0%,rgba(6,47,39,.18) 62%,rgba(6,47,39,0) 100%);z-index:2}
.europe-cooperation__landscape img{width:100%;height:100%;object-fit:cover;object-position:center bottom;display:block;filter:saturate(.9) brightness(.65)}


/* Project breakpoint bands only. Mobile uses the same five buttons as the desktop diagram. */
@media (max-width:359px), (min-width:360px) and (max-width:575px), (min-width:576px) and (max-width:767px) {
  .europe-cooperation__inner {width:calc(100% - 2rem)}
  .europe-cooperation__hero {grid-template-columns:1fr;gap:2rem}
  .europe-cooperation__copy {padding:0}
  .europe-cooperation__eyebrow {font-size:.7rem;letter-spacing:.2em}
  .europe-cooperation__title {font-size:clamp(1.9rem,6.3vw,2.75rem)}
  .ec-scene {aspect-ratio:auto;padding-top:56%}
  .ec-scene__albania {top:0;width:21%;left:9%;transform:translateY(25%)}
  .ec-scene__albania-label strong {font-size:2.6cqw}
  .ec-scene__albania-label span {font-size:2.1cqw}
  .ec-scene__nodes {position:relative;display:grid;gap:.6rem;margin-top:1rem}
  .ec-scene__node {position:static;transform:none;width:auto}
  .ec-scene__button {grid-template-columns:4rem minmax(0,1fr);gap:1rem;padding:.8rem;background:#ffffff04;border:1px solid #dceba225}
  .ec-scene__caption strong {font-size:.8rem}
  .ec-scene__caption>span:not(.ec-scene__optional-icon) {font-size:.78rem}
  .ec-scene__caption i {width:1.5rem;margin:.4rem 0}
  .ec-scene__connections,.ec-scene__origin {display:none}
  .europe-cooperation__platforms {grid-template-columns:1fr;gap:0;margin-top:2rem}
  .europe-cooperation__platforms article,.europe-cooperation__platforms article:first-child {padding:1.2rem 0;border-top:1px solid rgba(201,221,161,.12)}
  .europe-cooperation__platforms article:first-child {border-top:0}
  .europe-cooperation__platforms article::before {display:none}
  .europe-cooperation__platforms h3 {font-size:1rem}
  .europe-cooperation__platforms p {font-size:.88rem}
  .europe-cooperation__landscape {height:6rem}
}
@media (min-width:576px) and (max-width:767px) {
  .ec-scene__nodes {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:768px) and (max-width:991px), (min-width:992px) and (max-width:1199px) {
  .europe-cooperation__hero {grid-template-columns:1fr;gap:3rem}
  .europe-cooperation__copy {max-width:46rem;padding:0}
  .europe-cooperation__title {font-size:3rem}
  .europe-cooperation__visual {width:min(100%,64rem);margin-inline:auto}
  .europe-cooperation__platforms {grid-template-columns:repeat(3,minmax(0,1fr));row-gap:2rem}
  .europe-cooperation__platforms article:nth-child(4)::before {display:none}
  .europe-cooperation__platforms article:nth-child(4) {padding-left:0}
}
@media (min-width:1200px) and (max-width:1399px) {
  .europe-cooperation__hero {grid-template-columns:minmax(0,.36fr) minmax(0,.64fr)}
  .europe-cooperation__title {font-size:2.6vw}
  .europe-cooperation__statement {font-size:1.5vw}
  .europe-cooperation__lead {font-size:1rem}
}
@media (min-width:1400px) and (max-width:1599px) {
  .europe-cooperation__visual {width:calc(100% + 1.25rem);margin-left:-1.25rem}
}
@media (min-width:1600px) {
  .europe-cooperation__visual {width:calc(100% + 2rem);margin-left:-2rem}
}
.ec-scene.is-outside-viewport .ec-scene__pulse {animation-play-state:paused}
@keyframes ec-signal {to {stroke-dashoffset:-134}}
@media (prefers-reduced-motion:reduce) {
  .ec-scene__connection.is-active .ec-scene__pulse {animation:none;opacity:0}
  .ec-scene__photo,.ec-scene__connection {transition:none}
}
