/**
 * AAEF 2035 Premium Template
 * File: responsive.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.
 */
/* Mobile Small */
@media (max-width:359px) {
  :root { --container-gutter: 16px; --mainbar-height: 68px; }
  .topbar { display: none; }
  .mainbar__inner { grid-template-columns: 1fr auto; gap: 12px; }
  .brand { width: 166px; }
  .primary-nav, .search-button, .header-cta { display: none; }
  .menu-toggle { display: block; }
  .mobile-panel__inner { padding-inline: var(--container-gutter); }
  .mobile-panel__meta { align-items: center; flex-direction: column; }
  .language-menu--mobile .language-menu__panel { left: 50%; right: auto; transform: translate(-50%, var(--popover-y, 8px)) scale(.985); }
  .language-menu--mobile.is-open .language-menu__panel { transform: translate(-50%, 0) scale(1); }
  .mobile-mega__grid { padding: 6px 12px 14px; }
  .mobile-mega__group { padding-block: 14px; }
  .mobile-mega__links a { gap: 9px; padding-inline: 4px; }
  .mobile-mega__feature { padding: 19px 17px 18px; }

  .hero { min-height: auto; }
  .hero__media img { object-position: center; transform: scale(1.004); animation: none; }
  .hero__shade {
    background:
      linear-gradient(180deg, rgba(2, 31, 23, .9) 0%, rgba(2, 34, 24, .65) 42%, rgba(2, 31, 22, .93) 100%),
      linear-gradient(90deg, rgba(2, 33, 24, .72), rgba(2, 33, 24, .24));
  }
  .hero__inner { min-height: 0; padding-top: 2.7rem; padding-bottom: 1.45rem; }
  .hero__main { display: block; }
  .hero__copy { max-width: none; }
  .hero__eyebrow { margin-bottom: .82rem; font-size: .75rem; letter-spacing: .21em; }
  .hero__title { font-size: 2.72rem; line-height: .9; letter-spacing: -.045em; }
  .hero__tagline { max-width: 18rem; margin-top: 1rem; font-size: .82rem; line-height: 1.58; }
  .hero__tagline-separator { padding-inline: .22em; }
  .hero__description { max-width: 19rem; margin-top: .82rem; font-size: .82rem; line-height: 1.62; }
  .hero__origin-note { display: none; }
  .hero__cta { min-height: 3rem; margin-top: 1.2rem; padding-inline: 1.15rem; font-size: .75rem; }

  .hero__journey { margin-top: 1.9rem; padding-top: 0; }
  .hero-chain__viewport {
    margin-inline: 0;
    padding: .9rem 0 .3rem;
    border-top: 1px solid rgba(255, 255, 255, .09);
    background: linear-gradient(180deg, rgba(2, 42, 30, .05), rgba(1, 24, 18, .16));
  }
  .hero-chain {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(7, minmax(4.85rem, auto));
    row-gap: .42rem;
    min-height: 0;
    padding-block: .55rem;
  }
  .hero-chain__rail--desktop, .hero-chain__rail--tablet { display: none; }
  .hero-chain__rail--mobile { display: block; inset: .45rem 0; height: calc(100% - .9rem); }
  .hero-chain__item {
    position: relative;
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 4.2rem minmax(0, 1fr);
    align-items: center;
    gap: .55rem;
    min-height: 4.85rem;
    transform: none;
  }
  .hero-chain__node {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    width: 3.62rem;
    height: 3.62rem;
  }
  .hero-chain__label {
    width: fit-content;
    max-width: 6.7rem;
    padding: .45rem .56rem;
    border: 1px solid color-mix(in srgb, var(--stage-color) 26%, rgba(255,255,255,.08));
    border-radius: 999px;
    background: rgba(2, 39, 28, .68);
    font-size: .75rem;
    letter-spacing: .025em;
    line-height: 1.15;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
  }
  .hero-chain__item:nth-of-type(odd) .hero-chain__label { grid-column: 1; grid-row: 1; justify-self: end; text-align: right; }
  .hero-chain__item:nth-of-type(even) .hero-chain__label { grid-column: 3; grid-row: 1; justify-self: start; text-align: left; }

  .hero__footer { margin-top: .8rem; }
  .hero__scroll { display: none; }
}

/* Mobile */
@media (min-width:360px) and (max-width:575px) {
  :root { --container-gutter: 20px; --mainbar-height: 70px; }
  .topbar { display: none; }
  .mainbar__inner { grid-template-columns: 1fr auto; gap: 16px; }
  .brand { width: 184px; }
  .primary-nav, .search-button, .header-cta { display: none; }
  .menu-toggle { display: block; }
  .mobile-mega__grid { padding-inline: 15px; }

  .hero { min-height: auto; }
  .hero__media img { object-position: center; transform: scale(1.004); animation: none; }
  .hero__shade {
    background:
      linear-gradient(180deg, rgba(2, 31, 23, .88) 0%, rgba(2, 34, 24, .62) 43%, rgba(2, 31, 22, .92) 100%),
      linear-gradient(90deg, rgba(2, 33, 24, .7), rgba(2, 33, 24, .22));
  }
  .hero__inner { min-height: 0; padding-top: 2.95rem; padding-bottom: 1.55rem; }
  .hero__main { display: block; }
  .hero__copy { max-width: 33rem; }
  .hero__eyebrow { margin-bottom: .9rem; font-size: .75rem; letter-spacing: .23em; }
  .hero__title { font-size: clamp(3rem, 13.8vw, 3.65rem); line-height: .89; letter-spacing: -.05em; }
  .hero__tagline { max-width: 22rem; margin-top: 1.05rem; font-size: .9rem; line-height: 1.58; }
  .hero__description { max-width: 22rem; margin-top: .9rem; font-size: .88rem; line-height: 1.66; }
  .hero__origin-note { display: none; }
  .hero__cta { min-height: 3.05rem; margin-top: 1.28rem; padding-inline: 1.3rem; font-size: .75rem; }

  .hero__journey { margin-top: 2.85rem; padding-top: 0; }
  .hero-chain__viewport {
    margin-inline: 0;
    padding: 1rem 0 .35rem;
    border-top: 1px solid rgba(255, 255, 255, .09);
    background: linear-gradient(180deg, rgba(2, 42, 30, .05), rgba(1, 24, 18, .16));
  }
  .hero-chain {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(7, minmax(5.15rem, auto));
    row-gap: .5rem;
    min-height: 0;
    padding-block: .65rem;
  }
  .hero-chain__rail--desktop, .hero-chain__rail--tablet { display: none; }
  .hero-chain__rail--mobile { display: block; inset: .5rem 0; height: calc(100% - 1rem); }
  .hero-chain__item {
    position: relative;
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 4.45rem minmax(0, 1fr);
    align-items: center;
    gap: .72rem;
    min-height: 5.15rem;
    transform: none;
  }
  .hero-chain__node {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    width: 3.82rem;
    height: 3.82rem;
  }
  .hero-chain__label {
    width: fit-content;
    max-width: 7.4rem;
    padding: .5rem .65rem;
    border: 1px solid color-mix(in srgb, var(--stage-color) 28%, rgba(255,255,255,.08));
    border-radius: 999px;
    background: rgba(2, 39, 28, .68);
    font-size: .75rem;
    letter-spacing: .03em;
    line-height: 1.15;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
  }
  .hero-chain__item:nth-of-type(odd) .hero-chain__label { grid-column: 1; grid-row: 1; justify-self: end; text-align: right; }
  .hero-chain__item:nth-of-type(even) .hero-chain__label { grid-column: 3; grid-row: 1; justify-self: start; text-align: left; }

  .hero__footer { margin-top: .9rem; }
  .hero__scroll { display: none; }
}

/* Large Mobile */
@media (min-width:576px) and (max-width:767px) {
  :root { --container-gutter: 24px; --mainbar-height: 72px; }
  .topbar { display: none; }
  .mainbar__inner { grid-template-columns: 1fr auto; gap: 18px; }
  .brand { width: 205px; }
  .primary-nav, .header-cta { display: none; }
  .menu-toggle { display: block; }
  .mobile-mega__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 10px 18px 18px; }
  .mobile-mega__group { padding: 16px 14px; }
  .mobile-mega__group:nth-child(odd) { padding-left: 0; }
  .mobile-mega__group:nth-child(even) { padding-right: 0; border-left: 1px solid rgba(6, 60, 42, .1); }
  .mobile-mega__group:nth-child(3) { grid-column: 1 / -1; padding-right: 0; border-bottom: 0; }
  .mobile-mega__group:nth-child(3) .mobile-mega__links { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 12px; }
  .mobile-mega__feature { grid-column: 1 / -1; margin-top: 12px; }

  .hero { min-height: auto; }
  .hero__media img { object-position: center; transform: scale(1.008); animation: none; }
  .hero__shade {
    background:
      linear-gradient(180deg, rgba(2, 31, 23, .8) 0%, rgba(2, 34, 24, .49) 50%, rgba(2, 31, 22, .9) 100%),
      linear-gradient(90deg, rgba(2, 33, 24, .67), rgba(2, 33, 24, .14));
  }
  .hero__inner { min-height: 0; padding-top: 3.55rem; padding-bottom: 1.5rem; }
  .hero__main { display: block; }
  .hero__copy { max-width: 39rem; }
  .hero__title { font-size: 4.45rem; }
  .hero__tagline { max-width: 34rem; margin-top: 1.1rem; font-size: .98rem; }
  .hero__description { max-width: 36rem; margin-top: .9rem; font-size: .94rem; }
  .hero__origin-note { display: none; }

  .hero__journey { margin-top: 2.35rem; padding-top: 0; }
  .hero-chain__viewport { padding: 1.05rem .3rem .45rem; border-top: 1px solid rgba(255, 255, 255, .08); }
  .hero-chain {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    grid-template-rows: repeat(2, 6.8rem);
    align-items: center;
    row-gap: 1rem;
    min-height: 0;
    padding-inline: .15rem;
  }
  .hero-chain__rail--desktop, .hero-chain__rail--mobile { display: none; }
  .hero-chain__rail--tablet { display: block; inset: .45rem 0; height: calc(100% - .9rem); }
  .hero-chain__item { position: relative; width: 6.8rem; gap: .56rem; transform: none; justify-self: center; }
  .hero-chain__item--production { grid-column: 1; grid-row: 1; }
  .hero-chain__item--processing { grid-column: 3; grid-row: 1; }
  .hero-chain__item--innovation { grid-column: 5; grid-row: 1; }
  .hero-chain__item--brand { grid-column: 7; grid-row: 1; }
  .hero-chain__item--market { grid-column: 7; grid-row: 2; }
  .hero-chain__item--investment { grid-column: 4; grid-row: 2; }
  .hero-chain__item--europe { grid-column: 2; grid-row: 2; }
  .hero-chain__item--market { --route-delay: 4.9s; }
  .hero-chain__item--investment { --route-delay: 7s; }
  .hero-chain__item--europe { --route-delay: 8.25s; }
  .hero-chain__node { width: 3.82rem; height: 3.82rem; }
  .hero-chain__label { font-size: .75rem; letter-spacing: .035em; }

  .hero__footer { margin-top: .7rem; }
  .hero__scroll { display: none; }
}

/* Tablet */
@media (min-width:768px) and (max-width:991px) {
  :root { --container-gutter: 28px; --mainbar-height: 74px; }
  .topbar__statement { font-size: .8rem; }
  .topbar__statement-text { gap: 4px; }
  .utility-nav { display: none; }
  .topbar__utilities { gap: 10px; }
  .mainbar__inner { grid-template-columns: 1fr auto; gap: 22px; }
  .brand { width: 220px; }
  .primary-nav, .header-cta { display: none; }
  .menu-toggle { display: block; }
  .mobile-mega__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 12px 20px 20px; }
  .mobile-mega__group { padding: 17px 16px; border-bottom: 0; border-right: 1px solid rgba(6, 60, 42, .1); }
  .mobile-mega__group:first-child { padding-left: 0; }
  .mobile-mega__group:nth-child(3) { padding-right: 0; border-right: 0; }
  .mobile-mega__feature { grid-column: 1 / -1; margin-top: 14px; padding: 24px; }

  .hero { min-height: auto; }
  .hero__media img { object-position: center; transform: scale(1.008); animation: none; }
  .hero__shade {
    background:
      linear-gradient(180deg, rgba(2, 31, 23, .72) 0%, rgba(2, 34, 24, .35) 50%, rgba(2, 31, 22, .88) 100%),
      linear-gradient(90deg, rgba(2, 33, 24, .66), rgba(2, 33, 24, .1));
  }
  .hero__inner { min-height: 0; padding-top: 3.8rem; padding-bottom: 1.55rem; }
  .hero__main { display: block; }
  .hero__copy { max-width: 43rem; }
  .hero__title { font-size: 4.85rem; }
  .hero__tagline { max-width: 38rem; margin-top: 1.12rem; font-size: 1.03rem; }
  .hero__description { max-width: 39rem; margin-top: .9rem; font-size: .96rem; }
  .hero__origin-note { display: none; }

  .hero__journey { margin-top: 2.45rem; padding-top: 0; }
  .hero-chain__viewport { padding: 1.15rem .4rem .5rem; border-top: 1px solid rgba(255, 255, 255, .08); }
  .hero-chain {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    grid-template-rows: repeat(2, 7.1rem);
    align-items: center;
    row-gap: 1.1rem;
    min-height: 0;
    padding-inline: .25rem;
  }
  .hero-chain__rail--desktop, .hero-chain__rail--mobile { display: none; }
  .hero-chain__rail--tablet { display: block; inset: .45rem 0; height: calc(100% - .9rem); }
  .hero-chain__item { position: relative; width: 7.4rem; gap: .6rem; transform: none; justify-self: center; }
  .hero-chain__item--production { grid-column: 1; grid-row: 1; }
  .hero-chain__item--processing { grid-column: 3; grid-row: 1; }
  .hero-chain__item--innovation { grid-column: 5; grid-row: 1; }
  .hero-chain__item--brand { grid-column: 7; grid-row: 1; }
  .hero-chain__item--market { grid-column: 7; grid-row: 2; }
  .hero-chain__item--investment { grid-column: 4; grid-row: 2; }
  .hero-chain__item--europe { grid-column: 2; grid-row: 2; }
  .hero-chain__item--market { --route-delay: 4.9s; }
  .hero-chain__item--investment { --route-delay: 7s; }
  .hero-chain__item--europe { --route-delay: 8.25s; }
  .hero-chain__node { width: 4rem; height: 4rem; }

  .hero__footer { margin-top: .8rem; }
  .hero__scroll { display: none; }
}

/* Small Desktop */
@media (min-width:992px) and (max-width:1199px) {
  :root { --container-gutter: 28px; }
  .topbar__statement { font-size: .8rem; }
  .topbar__utilities { gap: 10px; }
  .utility-nav__link { padding-inline: 9px; font-size: .8rem; }
  .social-links { gap: 2px; }
  .mainbar__inner { gap: 18px; }
  .brand { width: 190px; }
  .primary-nav__list { gap: 11px; }
  .primary-nav__link { font-size: .76rem; }
  .primary-nav__menu-toggle { width: 15px; }
  .header-actions { gap: 10px; }
  .header-cta { min-width: 104px; padding-inline: 18px; }
  .nav-dropdown { width: 292px; }
  .nav-dropdown--wide { width: 330px; }
  .nav-submenu { left: auto; right: calc(100% + 6px); --popover-closed-transform: translateX(-8px) scale(.985); --popover-open-transform: translateX(0) scale(1); --popover-origin: right top; }
  .nav-menu__item--has-submenu::after { left: -14px; right: auto; }
  .nav-mega { padding: 20px 16px 22px; }
  .nav-mega__column { padding-inline: 13px; }
  .nav-mega h2 { font-size: .9rem; }
  .nav-mega__links a { gap: 8px; font-size: .78rem; }
  .nav-item-icon { width: 34px; height: 34px; flex-basis: 34px; }
  .nav-item-icon svg { width: 18px; height: 18px; }
  .nav-mega__feature { margin-left: 14px; padding: 21px 19px; min-height: 218px; }
  .nav-mega__feature h2 { font-size: 1rem; }
  .nav-mega__feature p { font-size: .75rem; }

  .hero { min-height: auto; }
  .hero__media img { transform: scale(1.01); animation: none; }
  .hero__inner { min-height: 0; padding-top: 3.25rem; padding-bottom: 1.35rem; }
  .hero__main { gap: 2.5rem; }
  .hero__copy { max-width: 38rem; }
  .hero__title { font-size: 4.65rem; }
  .hero__tagline { font-size: 1rem; }
  .hero__description { max-width: 36rem; font-size: .92rem; }
  .hero__origin-note { font-size: .75rem; }
  .hero__journey { margin-top: 2.7rem; padding-top: 0; }
  .hero-chain__viewport { padding-top: .45rem; }
  .hero-chain { min-height: 6.35rem; }
  .hero-chain__node { width: 3.9rem; height: 3.9rem; }
  .hero-chain__label { font-size: .75rem; }
  .hero__footer { margin-top: .55rem; }
}

/* Desktop */
@media (min-width:1200px) and (max-width:1399px) {
  :root { --container-gutter: 30px; --container-max: 1280px; }
  .brand { width: 216px; }
  .primary-nav__list { gap: 17px; }
  .primary-nav__link { font-size: .82rem; }
  .mainbar__inner { gap: 25px; }
  .header-actions { gap: 18px; }
  .nav-mega { padding: 22px 20px 24px; }
  .nav-mega__column { padding-inline: 17px; }
  .nav-mega__feature { margin-left: 18px; padding-inline: 23px; }

  .hero__inner { padding-top: 4.35rem; }
  .hero__copy { max-width: 43rem; }
  .hero__title { font-size: 5.25rem; }
  .hero__tagline { font-size: 1.08rem; }
  .hero__description { max-width: 40rem; font-size: .96rem; }
  .hero__journey { padding-top: 2rem; }
  .hero-chain__node { width: 3.85rem; height: 3.85rem; }
  .hero-chain__label { font-size: .75rem; }
}

/* Large Desktop */
@media (min-width:1400px) and (max-width:1599px) {
  :root { --container-max: 1320px; }
  .hero__copy { max-width: 46rem; }
  .hero__title { font-size: 5.9rem; }
  .hero__description { font-size: 1rem; }
}

/* Extra Large */
@media (min-width:1600px) {
  :root { --container-max: 1440px; --container-gutter: 40px; }
  .brand { width: 260px; }
  .primary-nav__list { gap: 28px; }
  .primary-nav__link { font-size: .92rem; }
  .topbar__statement { font-size: .94rem; }
  .nav-mega__column { padding-inline: 28px; }
  .nav-mega h2 { font-size: 1.06rem; }
  .nav-mega__links a { font-size: .9rem; }
  .nav-mega__feature { min-height: 238px; padding: 30px; }
  .nav-mega__feature h2 { font-size: 1.2rem; }
  .nav-mega__feature p { font-size: .82rem; }

  .hero__inner { padding-top: 5.25rem; padding-bottom: 1.8rem; }
  .hero__copy { max-width: 51rem; }
  .hero__title { font-size: 6.75rem; }
  .hero__tagline { font-size: 1.25rem; }
  .hero__description { max-width: 46rem; font-size: 1.05rem; }
  .hero__origin-note { font-size: .77rem; }
  .hero__journey { padding-top: 2.8rem; }
  .hero-chain__node { width: 4.2rem; height: 4.2rem; }
  .hero-chain__label { font-size: .75rem; }
}


/* Vision ecosystem — Mobile Small */
@media (max-width:359px) {
  .vision-ecosystem { min-height: auto; }
  .vision-ecosystem::before {
    background: linear-gradient(180deg, rgba(250,247,241,.98) 0%, rgba(250,247,241,.93) 62%, rgba(250,247,241,.44) 100%);
  }
  .vision-ecosystem__background img { object-position: 52% center; }
  .vision-ecosystem__inner { display: block; min-height: 0; padding-top: 4rem; padding-bottom: 7.8rem; overflow: visible; }
  .vision-ecosystem__copy { max-width: none; padding-bottom: 2.6rem; }
  .vision-ecosystem__eyebrow { font-size: .75rem; letter-spacing: .27em; }
  .vision-ecosystem__title { font-size: 2.18rem; line-height: 1.01; letter-spacing: -.045em; }
  .vision-ecosystem__lead { margin-top: 1rem; font-size: .86rem; line-height: 1.6; }
  .vision-ecosystem__subhead { font-size: 1rem; letter-spacing: .12em; }
  .vision-ecosystem__support { font-size: .84rem; }

  .ecosystem-wheel {
    width: 100%;
    aspect-ratio: auto;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-items: center;
    align-items: start;
    gap: 1.6rem .55rem;
    justify-self: stretch;
  }
  .ecosystem-wheel::before,
  .ecosystem-wheel__orbits { display: none; }
  .ecosystem-wheel__center {
    position: relative;
    left: auto;
    top: auto;
    order: 1;
    grid-column: 1 / -1;
    width: 12.8rem;
    margin: 0 auto .9rem;
    transform: none;
  }
  .ecosystem-wheel__center picture { width: 7.6rem; height: 13.2rem; transform: translate(-50%, -55%); }
  .ecosystem-wheel__center-label { margin-top: .62rem; padding: .62rem .76rem .56rem; }
  .ecosystem-wheel__center-kicker { font-size: .52rem; letter-spacing: .18em; }
  .ecosystem-wheel__center-label strong { font-size: 1rem; }
  .ecosystem-wheel__center-label em { font-size: .9rem; }
  .ecosystem-wheel__center-rule { width: 2.15rem; margin-top: .32rem; }

  .ecosystem-node {
    position: relative;
    left: auto !important;
    top: auto !important;
    transform: none;
    width: min(100%, 9rem) !important;
    max-width: 9rem;
    animation: none;
    justify-self: center;
  }
  .ecosystem-node__visual { width: 5.8rem; }
  .ecosystem-node__icon { top: -.78rem; width: 2.12rem; height: 2.12rem; }
  .ecosystem-node__icon svg { width: 1.05rem; height: 1.05rem; }
  .ecosystem-node h3,
  .ecosystem-node--agriculture h3,
  .ecosystem-node--livestock h3,
  .ecosystem-node--fisheries h3,
  .ecosystem-node--processing h3,
  .ecosystem-node--gastronomy h3,
  .ecosystem-node--tourism h3,
  .ecosystem-node--research h3,
  .ecosystem-node--entrepreneurship h3,
  .ecosystem-node--territorial h3 {
    position: static;
    width: auto;
    max-width: 8.8rem;
    margin: .56rem auto 0;
    transform: none;
    text-align: center;
    font-size: .72rem;
    line-height: 1.16;
  }
  .ecosystem-node--agriculture { order: 2; }
  .ecosystem-node--livestock { order: 3; }
  .ecosystem-node--fisheries { order: 4; }
  .ecosystem-node--processing { order: 5; }
  .ecosystem-node--gastronomy { order: 6; }
  .ecosystem-node--tourism { order: 7; }
  .ecosystem-node--research { order: 8; }
  .ecosystem-node--entrepreneurship { order: 9; }
  .ecosystem-node--territorial { order: 10; grid-column: 1 / -1; }
}

/* Vision ecosystem — Mobile */
@media (min-width:360px) and (max-width:575px) {
  .vision-ecosystem { min-height: auto; }
  .vision-ecosystem::before {
    background: linear-gradient(180deg, rgba(250,247,241,.98) 0%, rgba(250,247,241,.92) 64%, rgba(250,247,241,.4) 100%);
  }
  .vision-ecosystem__background img { object-position: 52% center; }
  .vision-ecosystem__inner { display: block; min-height: 0; padding-top: 4.4rem; padding-bottom: 8.5rem; overflow: visible; }
  .vision-ecosystem__copy { max-width: none; padding-bottom: 3rem; }
  .vision-ecosystem__eyebrow { font-size: .77rem; letter-spacing: .29em; }
  .vision-ecosystem__title { font-size: clamp(2.45rem, 11vw, 3rem); line-height: 1; }
  .vision-ecosystem__lead { max-width: 32rem; font-size: .9rem; line-height: 1.62; }
  .vision-ecosystem__subhead { font-size: 1.08rem; letter-spacing: .13em; }
  .vision-ecosystem__support { font-size: .88rem; }

  .ecosystem-wheel {
    width: min(100%, 22rem);
    aspect-ratio: auto;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-items: center;
    align-items: start;
    gap: 1.8rem .8rem;
    justify-self: stretch;
  }
  .ecosystem-wheel::before,
  .ecosystem-wheel__orbits { display: none; }
  .ecosystem-wheel__center {
    position: relative;
    left: auto;
    top: auto;
    order: 1;
    grid-column: 1 / -1;
    width: 14rem;
    margin: 0 auto 1rem;
    transform: none;
  }
  .ecosystem-wheel__center picture { width: 8.2rem; height: 14.2rem; transform: translate(-50%, -55%); }
  .ecosystem-wheel__center-label { margin-top: .68rem; padding: .64rem .8rem .58rem; }
  .ecosystem-wheel__center-kicker { font-size: .54rem; letter-spacing: .19em; }
  .ecosystem-wheel__center-label strong { font-size: 1.06rem; }
  .ecosystem-wheel__center-label em { font-size: .95rem; }
  .ecosystem-wheel__center-rule { width: 2.25rem; }

  .ecosystem-node {
    position: relative;
    left: auto !important;
    top: auto !important;
    transform: none;
    width: min(100%, 9.25rem) !important;
    max-width: 9.25rem;
    animation: none;
    justify-self: center;
  }
  .ecosystem-node__visual { width: 6.05rem; }
  .ecosystem-node__icon { top: -.82rem; width: 2.26rem; height: 2.26rem; }
  .ecosystem-node__icon svg { width: 1.12rem; height: 1.12rem; }
  .ecosystem-node h3,
  .ecosystem-node--agriculture h3,
  .ecosystem-node--livestock h3,
  .ecosystem-node--fisheries h3,
  .ecosystem-node--processing h3,
  .ecosystem-node--gastronomy h3,
  .ecosystem-node--tourism h3,
  .ecosystem-node--research h3,
  .ecosystem-node--entrepreneurship h3,
  .ecosystem-node--territorial h3 {
    position: static;
    width: auto;
    max-width: 9rem;
    margin: .58rem auto 0;
    transform: none;
    text-align: center;
    font-size: .73rem;
    line-height: 1.18;
  }
  .ecosystem-node--agriculture { order: 2; }
  .ecosystem-node--livestock { order: 3; }
  .ecosystem-node--fisheries { order: 4; }
  .ecosystem-node--processing { order: 5; }
  .ecosystem-node--gastronomy { order: 6; }
  .ecosystem-node--tourism { order: 7; }
  .ecosystem-node--research { order: 8; }
  .ecosystem-node--entrepreneurship { order: 9; }
  .ecosystem-node--territorial { order: 10; grid-column: 1 / -1; }
}

/* Vision ecosystem — Large Mobile */
@media (min-width:576px) and (max-width:767px) {
  .vision-ecosystem { min-height: auto; }
  .vision-ecosystem::before {
    background: linear-gradient(180deg, rgba(250,247,241,.98) 0%, rgba(250,247,241,.91) 61%, rgba(250,247,241,.34) 100%);
  }
  .vision-ecosystem__inner { display: block; min-height: 0; padding-top: 4.8rem; padding-bottom: 9rem; overflow: visible; }
  .vision-ecosystem__copy { max-width: 36rem; padding-bottom: 3rem; }
  .vision-ecosystem__title { font-size: 3.2rem; }
  .vision-ecosystem__lead { font-size: .95rem; }

  .ecosystem-wheel {
    width: min(100%, 32rem);
    aspect-ratio: auto;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    justify-items: center;
    align-items: start;
    gap: 1.8rem .9rem;
  }
  .ecosystem-wheel::before,
  .ecosystem-wheel__orbits { display: none; }
  .ecosystem-wheel__center { position: relative; left: auto; top: auto; order: 1; grid-column: 1 / -1; width: 15.4rem; margin: 0 auto 1rem; transform: none; }
  .ecosystem-wheel__center picture { width: 8.8rem; height: 15.2rem; transform: translate(-50%, -55%); }
  .ecosystem-wheel__center-label strong { font-size: 1.12rem; }
  .ecosystem-wheel__center-label em { font-size: 1rem; }
  .ecosystem-node { position: relative; left: auto !important; top: auto !important; width: min(100%, 9rem) !important; max-width: 9rem; transform: none; animation: none; }
  .ecosystem-node__visual { width: 6rem; }
  .ecosystem-node__icon { width: 2.24rem; height: 2.24rem; }
  .ecosystem-node__icon svg { width: 1.08rem; height: 1.08rem; }
  .ecosystem-node h3,
  .ecosystem-node--agriculture h3,
  .ecosystem-node--livestock h3,
  .ecosystem-node--fisheries h3,
  .ecosystem-node--processing h3,
  .ecosystem-node--gastronomy h3,
  .ecosystem-node--tourism h3,
  .ecosystem-node--research h3,
  .ecosystem-node--entrepreneurship h3,
  .ecosystem-node--territorial h3 { position: static; width: auto; max-width: 9rem; margin: .6rem auto 0; transform: none; text-align: center; font-size: .72rem; line-height: 1.18; }
  .ecosystem-node--agriculture { order: 2; }
  .ecosystem-node--livestock { order: 3; }
  .ecosystem-node--territorial { order: 4; }
  .ecosystem-node--fisheries { order: 5; }
  .ecosystem-node--research { order: 6; }
  .ecosystem-node--processing { order: 7; }
  .ecosystem-node--tourism { order: 8; }
  .ecosystem-node--gastronomy { order: 9; }
  .ecosystem-node--entrepreneurship { order: 10; }
}

/* Vision ecosystem — Tablet */
@media (min-width:768px) and (max-width:991px) {
  .vision-ecosystem { min-height: auto; }
  .vision-ecosystem::before { background: linear-gradient(180deg, rgba(250,247,241,.97) 0%, rgba(250,247,241,.88) 55%, rgba(250,247,241,.22) 100%); }
  .vision-ecosystem__inner { display: block; min-height: 0; padding-top: 5.4rem; padding-bottom: 9.5rem; overflow: visible; }
  .vision-ecosystem__copy { max-width: 44rem; padding-bottom: 3.1rem; }
  .vision-ecosystem__title { font-size: 3.45rem; }
  .vision-ecosystem__title span { display: inline; }
  .vision-ecosystem__title br { display: none; }
  .vision-ecosystem__lead { font-size: 1rem; }

  .ecosystem-wheel {
    width: min(100%, 40rem);
    aspect-ratio: auto;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    justify-items: center;
    align-items: start;
    gap: 2rem 1rem;
  }
  .ecosystem-wheel::before,
  .ecosystem-wheel__orbits { display: none; }
  .ecosystem-wheel__center { position: relative; left: auto; top: auto; order: 1; grid-column: 1 / -1; width: 17rem; margin: 0 auto 1rem; transform: none; }
  .ecosystem-wheel__center picture { width: 9.4rem; height: 16.2rem; transform: translate(-50%, -55.4%); }
  .ecosystem-wheel__center-label { margin-top: .74rem; padding: .72rem .88rem .62rem; }
  .ecosystem-wheel__center-label strong { font-size: 1.18rem; }
  .ecosystem-wheel__center-label em { font-size: 1.04rem; }
  .ecosystem-node { position: relative; left: auto !important; top: auto !important; width: min(100%, 9.4rem) !important; max-width: 9.4rem; transform: none; animation: none; }
  .ecosystem-node__visual { width: 6.2rem; }
  .ecosystem-node__icon { width: 2.28rem; height: 2.28rem; }
  .ecosystem-node__icon svg { width: 1.1rem; height: 1.1rem; }
  .ecosystem-node h3,
  .ecosystem-node--agriculture h3,
  .ecosystem-node--livestock h3,
  .ecosystem-node--fisheries h3,
  .ecosystem-node--processing h3,
  .ecosystem-node--gastronomy h3,
  .ecosystem-node--tourism h3,
  .ecosystem-node--research h3,
  .ecosystem-node--entrepreneurship h3,
  .ecosystem-node--territorial h3 { position: static; width: auto; max-width: 9rem; margin: .62rem auto 0; transform: none; text-align: center; font-size: .74rem; line-height: 1.18; }
  .ecosystem-node--agriculture { order: 2; }
  .ecosystem-node--livestock { order: 3; }
  .ecosystem-node--territorial { order: 4; }
  .ecosystem-node--fisheries { order: 5; }
  .ecosystem-node--research { order: 6; }
  .ecosystem-node--processing { order: 7; }
  .ecosystem-node--tourism { order: 8; }
  .ecosystem-node--gastronomy { order: 9; }
  .ecosystem-node--entrepreneurship { order: 10; }
}

/* Vision ecosystem — Small Desktop */
@media (min-width:992px) and (max-width:1199px) {
  .vision-ecosystem { min-height: 51rem; }
  .vision-ecosystem__inner { grid-template-columns: minmax(0, .82fr) minmax(33rem, 1.18fr); min-height: 51rem; gap: 1.5rem; padding-top: 4.4rem; padding-bottom: 6.8rem; }
  .vision-ecosystem__copy { padding-bottom: 3rem; }
  .vision-ecosystem__title { font-size: 3.15rem; }
  .vision-ecosystem__lead { font-size: .92rem; }
  .vision-ecosystem__subhead { font-size: 1.08rem; }
  .vision-ecosystem__support { font-size: .9rem; }
  .ecosystem-wheel { --node-orbit-size: 25.8rem; width: min(100%, 40rem); margin-right: -1rem; }
  .ecosystem-wheel__center { width: 16rem; }
  .ecosystem-wheel__center picture { width: 8.8rem; height: 15.2rem; transform: translate(-50%, -54.6%); }
  .ecosystem-wheel__center-label strong { font-size: 1.12rem; }
  .ecosystem-wheel__center-label em { font-size: .98rem; }
  .ecosystem-node { width: 7.4rem; }
  .ecosystem-node__visual { width: 6.35rem; }
  .ecosystem-node__icon { width: 2.3rem; height: 2.3rem; }
  .ecosystem-node h3 { font-size: .75rem; }
}

/* Vision ecosystem — Desktop */
@media (min-width:1200px) and (max-width:1399px) {
  .vision-ecosystem__inner { grid-template-columns: minmax(0, .88fr) minmax(39rem, 1.12fr); gap: 2.4rem; }
  .vision-ecosystem__copy { padding-bottom: 4rem; }
  .vision-ecosystem__title { font-size: 3.55rem; }
  .ecosystem-wheel { --node-orbit-size: 27.8rem; width: min(100%, 43rem); margin-right: -1rem; }
  .ecosystem-wheel__center { width: 17.6rem; }
  .ecosystem-wheel__center picture { width: 9.6rem; height: 16.6rem; transform: translate(-50%, -54.6%); }
  .ecosystem-wheel__center-label strong { font-size: 1.24rem; }
  .ecosystem-wheel__center-label em { font-size: 1.08rem; }
  .ecosystem-node__visual { width: 6.25rem; }
}

/* Vision ecosystem — Large Desktop */
@media (min-width:1400px) and (max-width:1599px) {
  .vision-ecosystem__inner { min-height: 58rem; }
  .ecosystem-wheel { --node-orbit-size: 29.2rem; width: min(100%, 46rem); }
}

/* Vision ecosystem — Extra Large */
@media (min-width:1600px) {
  .vision-ecosystem { min-height: 62rem; }
  .vision-ecosystem__inner { min-height: 62rem; padding-top: 7.5rem; padding-bottom: 10.5rem; }
  .vision-ecosystem__copy { max-width: 42rem; }
  .vision-ecosystem__title { font-size: 4.45rem; }
  .vision-ecosystem__lead { font-size: 1.06rem; }
  .vision-ecosystem__subhead { font-size: 1.34rem; }
  .ecosystem-wheel { --node-orbit-size: 31.8rem; width: min(100%, 50rem); margin-right: -2rem; }
  .ecosystem-wheel__center { width: 19.4rem; }
  .ecosystem-wheel__center picture { width: 10.5rem; height: 18.2rem; transform: translate(-50%, -54.8%); }
  .ecosystem-wheel__center-label strong { font-size: 1.36rem; }
  .ecosystem-wheel__center-label em { font-size: 1.18rem; }
  .ecosystem-node__visual { width: 7rem; }
}

/* Vision ecosystem responsive fine-tuning */
@media (min-width:992px) {
  .ecosystem-wheel__center-label {
    max-width: 12.8rem;
  }
}
@media (max-width:575px) {
  .vision-ecosystem__copy, .ecosystem-wheel { max-width: 100%; }
}

/* Framework pillars — Mobile Small */
@media (max-width:359px) {
  .framework-pillars { padding: 4.3rem 0 4.7rem; }
  .framework-pillars__header { margin-bottom: 2rem; }
  .framework-pillars__eyebrow { font-size: .74rem; letter-spacing: .28em; }
  .framework-pillars__title { font-size: 2.35rem; }
  .framework-pillars__cards-wrap { padding-top: 0; }
  .framework-pillars__waves { display: none; }
  .framework-pillars__grid { grid-template-columns: 1fr; gap: 1rem; }
  .pillar-card { min-height: 25rem; margin-top: 0 !important; padding: 1.35rem 1.05rem 1.1rem; animation: none; }
  .pillar-card__content { max-width: 11rem; }
  .pillar-card__number { font-size: 2rem; }
  .pillar-card__title { font-size: 1.34rem; }
  .pillar-card__kicker { font-size: .68rem; letter-spacing: .24em; }
  .pillar-card__description { font-size: .88rem; line-height: 1.42; }
}

/* Framework pillars — Mobile */
@media (min-width:360px) and (max-width:575px) {
  .framework-pillars { padding: 4.7rem 0 5rem; }
  .framework-pillars__header { margin-bottom: 2.15rem; }
  .framework-pillars__eyebrow { font-size: .76rem; letter-spacing: .3em; }
  .framework-pillars__title { font-size: clamp(2.45rem, 12vw, 3rem); }
  .framework-pillars__cards-wrap { padding-top: 0; }
  .framework-pillars__waves { display: none; }
  .framework-pillars__grid { grid-template-columns: 1fr; gap: 1.05rem; }
  .pillar-card { min-height: 25.5rem; margin-top: 0 !important; padding: 1.45rem 1.12rem 1.12rem; animation: none; }
  .pillar-card__content { max-width: 11.8rem; }
  .pillar-card__number { font-size: 2.1rem; }
  .pillar-card__title { font-size: 1.42rem; }
  .pillar-card__kicker { font-size: .7rem; letter-spacing: .25em; }
  .pillar-card__description { font-size: .9rem; line-height: 1.44; }
}

/* Framework pillars — Large Mobile */
@media (min-width:576px) and (max-width:767px) {
  .framework-pillars { padding: 5rem 0 5.25rem; }
  .framework-pillars__header { margin-bottom: 2.35rem; }
  .framework-pillars__title { font-size: 3rem; }
  .framework-pillars__cards-wrap { padding-top: 0; }
  .framework-pillars__waves { display: none; }
  .framework-pillars__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
  .pillar-card { min-height: 26.5rem; margin-top: 0 !important; padding: 1.5rem 1.15rem 1.15rem; animation: none; }
  .pillar-card__number { font-size: 2.15rem; }
  .pillar-card__title { font-size: 1.48rem; }
  .pillar-card__kicker { font-size: .72rem; letter-spacing: .25em; }
  .pillar-card__description { font-size: .92rem; }
  .pillar-card--europe { grid-column: 1 / -1; }
}

/* Framework pillars — Tablet */
@media (min-width:768px) and (max-width:991px) {
  .framework-pillars { padding: 5.4rem 0 5.6rem; }
  .framework-pillars__header { margin-bottom: 2.45rem; max-width: 44rem; }
  .framework-pillars__title { font-size: 3.5rem; }
  .framework-pillars__cards-wrap { padding-top: 0; }
  .framework-pillars__waves { display: none; }
  .framework-pillars__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.05rem; }
  .pillar-card { min-height: 27.2rem; margin-top: 0 !important; padding: 1.55rem 1.18rem 1.15rem; animation: none; }
  .pillar-card__content { max-width: 12.4rem; }
  .pillar-card__number { font-size: 2.28rem; }
  .pillar-card__title { font-size: 1.55rem; }
  .pillar-card__kicker { font-size: .73rem; letter-spacing: .27em; }
  .pillar-card__description { font-size: .94rem; line-height: 1.42; }
  .pillar-card--europe { grid-column: 1 / -1; }
}

/* Framework pillars — Small Desktop */
@media (min-width:992px) and (max-width:1199px) {
  .framework-pillars { padding: 5.8rem 0 5.9rem; }
  .framework-pillars__header { margin-bottom: 2.75rem; }
  .framework-pillars__title { font-size: 4.2rem; }
  .framework-pillars__cards-wrap { padding-top: 0; }
  .framework-pillars__waves { display: none; }
  .framework-pillars__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
  .pillar-card { min-height: 28.4rem; margin-top: 0 !important; }
  .pillar-card__content { max-width: 12.2rem; }
  .pillar-card__number { font-size: 2.45rem; }
  .pillar-card__title { font-size: 1.62rem; }
  .pillar-card__kicker { font-size: .73rem; letter-spacing: .28em; }
  .pillar-card__description { font-size: .94rem; }
}

/* Framework pillars — Desktop */
@media (min-width:1200px) and (max-width:1399px) {
  .framework-pillars__title { font-size: 4rem; }
}

/* Framework pillars — Large Desktop */
@media (min-width:1400px) and (max-width:1599px) {
  .framework-pillars__title { font-size: 4.55rem; }
}

/* Framework pillars — Ultra Wide */
@media (min-width:1600px) {
  .framework-pillars__title { font-size: 5.15rem; }
}
