/**
 * Aerospace Federation Activities
 * Dedicated programme landing page. Shared buttons and type tokens remain in style.css.
 */

/* GOLD EDITING NOTE A01 -- ACTIVITIES PAGE FOUNDATION AND HERO
   Tune the full-screen composition, image treatment and programme map here. */
.af-activities-page { color:var(--af-text); background:#eef3f7; }
.af-activities-page :is(h1,h2,h3,p) { text-wrap:pretty; }
.af-activities-hero { height:100vh; height:100svh; min-height:0; position:relative; isolation:isolate; overflow:hidden; color:#fff; background:#031426 url('../../img/governance/committee-discussion.png') 58% center/cover no-repeat; }
.af-activities-hero::before { content:""; position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,rgba(2,14,29,.98) 0%,rgba(3,27,52,.92) 38%,rgba(3,33,60,.58) 63%,rgba(2,17,31,.22) 100%),linear-gradient(0deg,rgba(2,15,29,.82),transparent 48%); }
.af-activities-hero::after { content:""; width:min(58vw,860px); aspect-ratio:1; position:absolute; right:-21%; bottom:-54%; z-index:-1; pointer-events:none; border:1px solid rgba(255,189,89,.23); border-radius:50%; box-shadow:0 0 0 42px rgba(11,110,204,.045),0 0 0 108px rgba(255,189,89,.025),0 0 0 186px rgba(11,110,204,.03); transform:rotate(-14deg) scaleY(.55); }
.af-activities-hero-frame { height:100%; display:grid; grid-template-columns:minmax(0,760px) minmax(270px,320px); align-items:end; justify-content:space-between; gap:clamp(58px,8vw,128px); padding-top:calc(var(--af-header-height) + 64px); padding-bottom:calc(var(--af-category-breadcrumb-height) + clamp(54px,7vh,74px)); }
.af-activities-hero-copy { max-width:760px; }
.af-activities-hero .af-eyebrow { margin-bottom:14px; font:var(--af-font-label-lg); }
.af-activities-hero h1 { max-width:760px; margin:0; color:#fff; font:var(--af-font-hero); letter-spacing:var(--af-tracking-display); }
.af-activities-hero-summary { max-width:670px; margin:20px 0 0; color:rgba(222,237,246,.9); font:var(--af-font-hero-summary); }
.af-activities-hero-actions { display:flex; flex-wrap:wrap; gap:9px; margin-top:24px; }
.af-activities-hero-principles { display:flex; flex-wrap:wrap; gap:0; margin-top:28px; padding-top:17px; border-top:1px solid rgba(211,231,242,.2); }
.af-activities-hero-principles span { display:inline-flex; align-items:center; gap:7px; padding-right:18px; color:#c3d5e1; font-size:10px; font-weight:700; letter-spacing:.035em; }
.af-activities-hero-principles span + span { padding-left:18px; border-left:1px solid rgba(211,231,242,.18); }
.af-activities-hero-principles i { color:var(--af-gold-400); font-size:13px; }
.af-activities-hero-map { position:relative; isolation:isolate; padding:23px 22px 18px; overflow:hidden; background:linear-gradient(145deg,rgba(2,20,39,.9),rgba(6,54,91,.72)); border-top:2px solid var(--af-gold-400); border-bottom:1px solid rgba(209,229,241,.28); box-shadow:0 25px 58px rgba(1,12,24,.3); backdrop-filter:blur(15px) saturate(.9); }
.af-activities-hero-map::before { content:""; position:absolute; inset:0; z-index:-1; opacity:.34; background-image:linear-gradient(rgba(100,167,216,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(100,167,216,.16) 1px,transparent 1px),radial-gradient(circle at 81% 16%,#ffbd59 0 2px,transparent 2.5px); background-size:25px 25px,25px 25px,auto; mask-image:linear-gradient(90deg,transparent,black 44%); }
.af-activities-hero-map header span { display:block; margin-bottom:7px; color:var(--af-gold-400); font-size:9px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.af-activities-hero-map header strong { display:block; max-width:230px; color:#fff; font:670 22px/1.15 var(--af-display); letter-spacing:-.025em; }
.af-activities-hero-map ol { padding:15px 0 0; margin:18px 0 0; border-top:1px solid rgba(211,231,242,.2); list-style:none; }
.af-activities-hero-map li { min-height:55px; display:grid; grid-template-columns:24px 1fr; gap:10px; align-items:center; border-bottom:1px solid rgba(211,231,242,.15); }
.af-activities-hero-map li > b { color:var(--af-gold-400); font-size:9px; }
.af-activities-hero-map li > span { display:grid; grid-template-columns:20px 1fr; align-items:center; column-gap:8px; }
.af-activities-hero-map li i { grid-row:1/3; color:#72b9ed; font-size:15px; }
.af-activities-hero-map li strong,.af-activities-hero-map li small { display:block; }
.af-activities-hero-map li strong { color:#fff; font-size:11px; }
.af-activities-hero-map li small { color:#9fb8c9; font-size:8.5px; }
.af-activities-hero-map > a { display:flex; align-items:center; justify-content:space-between; padding-top:16px; color:#fff; font-size:10px; font-weight:750; }
.af-activities-hero-map > a i { color:var(--af-gold-400); }
.af-activities-hero + .af-breadcrumb-bar { position:sticky; z-index:110; margin-top:calc(-1 * var(--af-category-breadcrumb-height)); }

/* GOLD EDITING NOTE A03 -- PROGRAMME PATHWAY CARDS
   Every activity uses the same protected image-overlay system for dependable contrast and hierarchy. */
.af-activities-section-head h2,.af-activities-method h2,.af-activities-story h2,.af-activities-horizon h2,.af-activities-audience h2,.af-activities-final h2 { margin:0; font:var(--af-font-section-title); letter-spacing:var(--af-tracking-display); }
.af-activities-pathways { padding:clamp(64px,7vw,92px) 0 clamp(82px,9vw,118px); background:#eef3f7; scroll-margin-top:calc(var(--af-header-height) + var(--af-category-breadcrumb-height) + 16px); }
.af-activities-section-head,.af-activities-method-head { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(280px,.55fr); gap:clamp(45px,8vw,120px); align-items:end; margin-bottom:42px; }
.af-activities-section-head > p,.af-activities-method-head > p { max-width:470px; margin:0; color:#506b80; font-size:13px; line-height:1.65; }
.af-activities-path-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:14px; }
.af-activities-path-card { --af-activity-position:center; min-height:390px; grid-column:span 6; display:flex; flex-direction:column; position:relative; isolation:isolate; padding:24px 25px 21px; overflow:hidden; color:#fff; background:#062845; border-top:2px solid var(--af-gold-400); box-shadow:0 20px 45px rgba(3,29,51,.13); scroll-margin-top:calc(var(--af-header-height) + var(--af-category-breadcrumb-height) + 16px); transition:transform .25s ease,box-shadow .25s ease; }
.af-activities-path-card::before { content:""; position:absolute; inset:0; z-index:-2; background:var(--af-activity-image) var(--af-activity-position)/cover no-repeat; transform:scale(1.002); transition:transform .55s cubic-bezier(.2,.72,.24,1); }
.af-activities-path-card::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(2,18,34,.66) 0%,rgba(2,20,38,.2) 35%,rgba(2,17,32,.91) 73%,rgba(1,13,26,.99) 100%),linear-gradient(90deg,rgba(2,17,32,.54),transparent 66%); }
.af-activities-path-card:hover { color:#fff; box-shadow:0 28px 58px rgba(3,29,51,.22); transform:translateY(-4px); }
.af-activities-path-card:hover::before { transform:scale(1.045); }
.af-activities-path-card:focus-visible { outline:3px solid #74bfff; outline-offset:3px; }
.af-activities-path-card--academy { --af-activity-image:url('../../img/membership/institutional-participation.png'); --af-activity-position:center; }
.af-activities-path-card--events { --af-activity-image:url('../../img/hero/hero-1.png'); --af-activity-position:center; }
.af-activities-path-card--news { --af-activity-image:url('../../img/governance/technical-review.png'); --af-activity-position:center; }
.af-activities-path-card--insights { --af-activity-image:url('../../img/technical-work/system-integration.webp'); --af-activity-position:center; }
.af-activities-path-index { width:max-content; display:inline-flex; align-items:center; min-height:27px; padding:0 9px; color:#ffd078; background:rgba(2,18,34,.78); border:1px solid rgba(255,208,120,.46); font-size:9px; font-weight:850; letter-spacing:.115em; line-height:1; text-shadow:0 1px 4px rgba(0,0,0,.65); text-transform:uppercase; backdrop-filter:blur(8px); }
.af-activities-path-copy { max-width:520px; margin-top:auto; }
.af-activities-path-copy > i { width:39px; height:39px; display:grid; place-items:center; margin-bottom:16px; color:#ffd078; background:rgba(4,35,61,.76); border:1px solid rgba(255,208,120,.4); font-size:18px; backdrop-filter:blur(8px); }
.af-activities-path-card h3 { margin:0 0 9px; color:#fff; font:var(--af-font-panel-title); letter-spacing:-.025em; text-shadow:0 2px 12px rgba(0,0,0,.7); }
.af-activities-path-card p { max-width:500px; margin:0; color:#e1edf4; font-size:13px; font-weight:520; line-height:1.58; text-shadow:0 1px 7px rgba(0,0,0,.85); }
.af-activities-path-card footer { display:flex; align-items:center; justify-content:space-between; gap:14px; padding-top:15px; margin-top:20px; color:#fff; border-top:1px solid rgba(226,240,248,.34); font-size:10px; font-weight:800; letter-spacing:.012em; text-shadow:0 1px 5px rgba(0,0,0,.75); }
.af-activities-path-card footer i { color:#ffd078; font-size:13px; transition:transform .22s ease; }
.af-activities-path-card:hover footer i { transform:translateX(3px); }

/* GOLD EDITING NOTE A04 -- ACTIVITY METHOD AND VISUAL STORY
   Controls the dark process rail and the overlapping editorial image layout. */
.af-activities-method { padding:clamp(78px,8vw,116px) 0; color:#fff; background:radial-gradient(circle at 82% 25%,rgba(11,110,204,.35),transparent 26%),linear-gradient(120deg,#020e1d,#062d50 72%,#084c80); }
.af-activities-method h2 { max-width:760px; color:#fff; }
.af-activities-method-head > p { color:#adc5d5; }
.af-activities-method-flow { display:grid; grid-template-columns:repeat(4,1fr); padding:0; margin:0; border-top:1px solid rgba(192,220,235,.25); border-left:1px solid rgba(192,220,235,.18); list-style:none; }
.af-activities-method-flow li { min-height:280px; display:flex; flex-direction:column; padding:22px 21px; border-right:1px solid rgba(192,220,235,.18); border-bottom:1px solid rgba(192,220,235,.18); }
.af-activities-method-flow li > b { color:var(--af-gold-400); font-size:10px; }
.af-activities-method-flow li > i { margin:auto 0 16px; color:#73b9eb; font-size:22px; }
.af-activities-method-flow h3 { margin:0 0 8px; color:#fff; font-size:18px; }
.af-activities-method-flow p { margin:0; color:#aac1d0; font-size:11px; line-height:1.6; }
.af-activities-story { padding:clamp(82px,9vw,128px) 0; background:#fff; }
.af-activities-story-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(350px,.75fr); gap:clamp(48px,8vw,116px); align-items:center; }
.af-activities-story figure { position:relative; margin:0; overflow:hidden; background:#072844; }
.af-activities-story img { width:100%; height:100%; display:block; object-fit:cover; }
.af-activities-story figcaption { position:absolute; right:0; bottom:0; left:0; padding:35px 20px 17px; color:#e7f0f5; background:linear-gradient(0deg,rgba(2,18,33,.94),transparent); font-size:10px; }
.af-activities-story-primary { height:clamp(440px,40vw,560px); }
.af-activities-story-copy { position:relative; z-index:2; padding-top:16px; }
.af-activities-story-copy > p:not(.af-content-label) { margin:19px 0 0; color:#587286; font:var(--af-font-content-body); }
.af-activities-story-copy ul { display:grid; gap:0; padding:15px 0 0; margin:25px 0 0; border-top:1px solid #d4e0e8; list-style:none; }
.af-activities-story-copy li { display:grid; grid-template-columns:24px 1fr; gap:11px; padding:15px 0; color:#5e7688; border-bottom:1px solid #d9e4ea; font-size:11px; line-height:1.55; }
.af-activities-story-copy li i { color:var(--af-blue-600); font-size:16px; }
.af-activities-story-copy li strong { display:block; margin-bottom:3px; color:var(--af-ink); font-size:12px; }

/* GOLD EDITING NOTE A05 -- PROGRAMME HORIZON AND AUDIENCE
   Keep future activity status explicit and participant groups easy to scan. */
.af-activities-horizon { padding:clamp(78px,8vw,116px) 0; color:#fff; background:#03182c; }
.af-activities-horizon-grid { display:grid; grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr); gap:clamp(60px,9vw,140px); align-items:start; }
.af-activities-horizon h2 { max-width:520px; color:#fff; }
.af-activities-horizon header > p:not(.af-content-label) { max-width:500px; margin:19px 0 25px; color:#a9c0cf; font-size:13px; line-height:1.65; }
.af-activities-horizon-list { border-top:1px solid rgba(190,219,235,.25); }
.af-activities-horizon-list article { display:grid; grid-template-columns:125px minmax(0,1fr) 94px; gap:19px; align-items:center; padding:24px 0; border-bottom:1px solid rgba(190,219,235,.2); }
.af-activities-horizon-list article > span { color:var(--af-gold-400); font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.af-activities-horizon-list article > span i { margin-right:6px; }
.af-activities-horizon-list b { color:#fff; font-size:14px; }
.af-activities-horizon-list p { grid-column:2; margin:-12px 0 0; color:#93adbf; font-size:10.5px; line-height:1.5; }
.af-activities-horizon-list small { grid-column:3; grid-row:1/3; justify-self:end; padding:6px 8px; color:#9ccbec; background:rgba(11,110,204,.14); border:1px solid rgba(105,179,231,.25); font-size:8px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.af-activities-audience { padding:clamp(78px,8vw,112px) 0; background:#eef3f7; }
.af-activities-audience header { max-width:800px; margin-bottom:40px; }
.af-activities-audience-grid { display:grid; grid-template-columns:repeat(3,1fr) 1.1fr; border-top:1px solid #cad9e2; border-left:1px solid #cad9e2; }
.af-activities-audience-grid > * { min-height:265px; padding:24px 22px; border-right:1px solid #cad9e2; border-bottom:1px solid #cad9e2; }
.af-activities-audience-grid article { background:#fff; }
.af-activities-audience-grid article > i { color:var(--af-blue-600); font-size:21px; }
.af-activities-audience-grid h3 { margin:64px 0 10px; color:var(--af-ink); font:var(--af-font-card-title); }
.af-activities-audience-grid p { margin:0; color:#60798c; font-size:11px; line-height:1.6; }
.af-activities-audience-grid aside { display:flex; flex-direction:column; color:#fff; background:radial-gradient(circle at 85% 15%,rgba(11,110,204,.42),transparent 28%),#052844; }
.af-activities-audience-grid aside > span { color:var(--af-gold-400); font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.af-activities-audience-grid aside > strong { max-width:250px; margin-top:18px; font:650 20px/1.25 var(--af-display); }
.af-activities-audience-grid aside > a { display:flex; justify-content:space-between; padding-top:14px; margin-top:auto; color:#fff; border-top:1px solid rgba(205,228,240,.22); font-size:10px; font-weight:750; }

/* GOLD EDITING NOTE A06 -- ACTIVITIES FINAL CALL TO ACTION
   Preserve the two-column editorial close and shared button components. */
.af-activities-final { padding:clamp(68px,7vw,92px) 0; color:#fff; background:radial-gradient(circle at 87% 42%,rgba(11,110,204,.48),transparent 25%),linear-gradient(110deg,#020e1c,#07365c); }
.af-activities-final > .af-shell { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(340px,.65fr); gap:clamp(55px,9vw,135px); align-items:end; }
.af-activities-final h2 { max-width:760px; color:#fff; }
.af-activities-final > div > div:last-child > p { margin:0 0 20px; color:#b7ccda; font-size:12px; line-height:1.65; }
.af-activities-final > div > div:last-child > div { display:flex; flex-wrap:wrap; gap:8px; }

/* GOLD EDITING NOTE A07 -- RESPONSIVE ACTIVITIES LAYOUT
   Tune the dedicated page at the four required review widths without changing shared site primitives. */
@media (max-width:1199px) {
  .af-activities-hero-frame { grid-template-columns:minmax(0,1fr) 275px; gap:45px; }
  .af-activities-audience-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:991px) {
  .af-activities-hero-frame { grid-template-columns:1fr; }
  .af-activities-hero-map { display:none; }
  .af-activities-horizon-grid,.af-activities-final > .af-shell { grid-template-columns:1fr; gap:34px; }
  .af-activities-method-flow { grid-template-columns:repeat(2,1fr); }
  .af-activities-story-grid { grid-template-columns:1fr; gap:38px; }
  .af-activities-story-primary { height:450px; }
}

/* GOLD EDITING NOTE A06A -- SHORT DESKTOP VIEWPORT FIT
   Preserves the bottom breadcrumb while reducing ornamental spacing on shallow screens. */
@media (min-width:768px) and (max-height:760px) {
  .af-activities-hero-frame { padding-top:calc(var(--af-header-height) + 18px); padding-bottom:calc(var(--af-category-breadcrumb-height) + 24px); }
  .af-activities-hero-summary { margin-top:13px; }
  .af-activities-hero-actions { margin-top:17px; }
  .af-activities-hero-principles { margin-top:17px; padding-top:12px; }
  .af-activities-hero-map { padding:17px 19px 13px; }
  .af-activities-hero-map header strong { font-size:19px; }
  .af-activities-hero-map ol { padding-top:9px; margin-top:11px; }
  .af-activities-hero-map li { min-height:43px; }
}

@media (max-width:767px) {
  .af-activities-hero { height:100vh; height:100svh; min-height:0; background-position:62% center; }
  .af-activities-hero::before { background:linear-gradient(90deg,rgba(1,15,29,.98) 0%,rgba(2,25,45,.88) 56%,rgba(3,28,50,.54) 100%); }
  .af-activities-hero-frame { height:100%; min-height:0; align-items:end; padding-top:calc(var(--af-header-height,82px) + 28px); padding-bottom:calc(var(--af-category-breadcrumb-height) + 34px); }
  .af-activities-hero-copy { width:88%; }
  .af-activities-hero-copy h1 { max-width:620px; }
  .af-activities-hero-summary { max-width:590px; }
  .af-activities-hero-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .af-activities-hero-actions .af-button { min-width:0; justify-content:space-between; padding-inline:14px; font-size:10px; }
  .af-activities-hero-principles { grid-template-columns:repeat(2,1fr); }
  .af-activities-hero-principles span:last-child { display:none; }
  .af-activities-pathways,.af-activities-method,.af-activities-story,.af-activities-horizon,.af-activities-audience { padding-block:62px; }
  .af-activities-section-head,.af-activities-method-head { grid-template-columns:1fr; gap:18px; margin-bottom:30px; }
  .af-activities-path-grid { grid-template-columns:1fr; gap:11px; }
  .af-activities-path-card { min-height:350px; grid-column:auto; padding:21px 20px 18px; }
  .af-activities-path-card p { font-size:12.5px; }
  .af-activities-method-flow { grid-template-columns:1fr; }
  .af-activities-method-flow li { min-height:0; display:grid; grid-template-columns:30px 28px 1fr; gap:6px 10px; padding:21px 18px; }
  .af-activities-method-flow li > i { grid-column:2; grid-row:1/3; margin:0; }
  .af-activities-method-flow h3,.af-activities-method-flow p { grid-column:3; }
  .af-activities-story-grid { grid-template-columns:1fr; }
  .af-activities-story-primary { grid-column:auto; height:360px; }
  .af-activities-horizon-list article { grid-template-columns:1fr auto; gap:7px 14px; }
  .af-activities-horizon-list article > span { grid-column:1; }
  .af-activities-horizon-list b { grid-column:1/3; }
  .af-activities-horizon-list p { grid-column:1/3; margin:0; }
  .af-activities-horizon-list small { grid-column:2; grid-row:1; }
  .af-activities-audience-grid { grid-template-columns:1fr; }
  .af-activities-audience-grid > * { min-height:225px; }
  .af-activities-audience-grid h3 { margin-top:45px; }
  .af-activities-final { padding-block:62px; }
  .af-activities-final > div > div:last-child > div { display:grid; grid-template-columns:1fr; }
}

@media (max-width:430px) {
  .af-activities-hero-copy { width:92%; }
  .af-activities-hero-actions .af-button { padding-inline:11px; font-size:9.5px; }
  .af-activities-path-card { min-height:340px; }
}
