.aiesep-association-page{max-width:1000px;padding-top:clamp(36px,6vw,80px);padding-bottom:clamp(48px,7vw,100px);font-size:18px;line-height:1.8}
.aiesep-association-page h1{font-size:clamp(38px,5vw,64px);line-height:1.1;letter-spacing:-.035em;margin:0 0 36px;color:#122f48}
.aiesep-association-page h2{font-size:clamp(25px,3vw,34px);line-height:1.25;letter-spacing:-.025em;margin:44px 0 20px;color:#143e61}
.aiesep-association-page p{max-width:880px;color:#34536a;margin:0 0 24px}
.aiesep-association-page ul{padding-left:25px;margin:0 0 28px}
.aiesep-association-page li{padding-left:7px;margin:0 0 13px;color:#34536a}
.aiesep-association-page a{color:#075c88;text-underline-offset:4px;overflow-wrap:anywhere}
.aiesep-association-page a:focus-visible{outline:3px solid #087db9;outline-offset:4px}
.aiesep-association-page .association-portrait{margin:30px 0 40px;max-width:340px;background:#eef3f6;border:1px solid #d5e2ea;border-radius:14px;overflow:hidden}
.aiesep-association-page .association-portrait img{display:block;width:100%;height:auto;object-fit:contain}
.aiesep-association-page .association-portrait figcaption{padding:14px 18px;font-size:14px;line-height:1.6;margin:0;color:#36566d}
.aiesep-association-page .wp-block-table{margin:24px 0 40px;overflow:visible;border:1px solid #d5e2ea;border-radius:12px;background:#fff}
.aiesep-association-page table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:16px;line-height:1.65}
.aiesep-association-page th,.aiesep-association-page td{padding:18px;border:0;border-bottom:1px solid #dde6ec;text-align:left;vertical-align:top;overflow-wrap:anywhere}
.aiesep-association-page th{background:#eaf1f5;color:#173e59;font-weight:700}
.aiesep-association-page th:first-child,.aiesep-association-page td:first-child{width:23%}
.aiesep-association-page tr:last-child td{border-bottom:0}
@media(max-width:580px){.aiesep-association-page{font-size:17px}.aiesep-association-page table{font-size:14px}.aiesep-association-page th,.aiesep-association-page td{padding:12px 10px}.aiesep-association-page th:first-child,.aiesep-association-page td:first-child{width:29%}.aiesep-association-page .association-portrait{max-width:270px}}

.aiesep-association-page--events .association-year-nav{padding:20px 24px;margin:28px 0 40px;border:1px solid #cbdfea;border-radius:14px;background:#edf5fa}
.aiesep-association-page--events .association-year-nav p{display:flex;flex-wrap:wrap;gap:10px 24px;margin:0;font-size:16px}
.aiesep-association-page--events [id]{scroll-margin-top:110px}
.aiesep-association-page--events .association-event-card{padding:24px;margin:24px 0;border:1px solid #d0e0eb;border-radius:16px;background:#fff}
.aiesep-association-page--events .association-event-card.has-event-art{display:grid;grid-template-columns:minmax(180px,34%) minmax(0,1fr);gap:24px;align-items:start}
.aiesep-association-page--events .association-event-card h3{font-size:23px;line-height:1.35;color:#173e5b;margin:0 0 18px;letter-spacing:-.02em}
.aiesep-association-page--events .association-event-card p{font-size:16px;line-height:1.75;margin:0 0 16px}
.aiesep-association-page--events .association-event-card figure{margin:0}
.aiesep-association-page--events .association-event-card img{display:block;width:100%;height:auto;max-height:420px;object-fit:contain;background:#fff;border-radius:8px}
/* This source canvas contains blank top/bottom margins around its complete flyer.
   A landscape frame hides only those margins; the artwork and lettering remain visible. */
.aiesep-association-page--events .association-event-card figure:has(img[src$="/past-event-st-petersburg-2025.webp"]){aspect-ratio:16/9;overflow:hidden;border-radius:8px}
.aiesep-association-page--events .association-event-card img[src$="/past-event-st-petersburg-2025.webp"]{height:100%;max-height:none;object-fit:cover;object-position:50% 50%}
.aiesep-association-page--events .association-event-card .wp-block-list{font-size:16px;margin:12px 0 0}
.aiesep-association-page--events .association-era-links{columns:2;column-gap:36px}
.aiesep-association-page--events .association-era-links li{break-inside:avoid;font-size:16px;margin-bottom:14px}
@media(max-width:700px){.aiesep-association-page--events .association-event-card.has-event-art{grid-template-columns:minmax(0,1fr)}.aiesep-association-page--events .association-event-card{padding:20px}.aiesep-association-page--events .association-event-card img{max-height:320px}.aiesep-association-page--events .association-era-links{columns:1}.aiesep-association-page--events .association-year-nav{padding:18px}.aiesep-association-page--events .association-year-nav p{gap:12px 18px}}

/* Native governance copy gains a clear reading structure and section navigation. */
body.aiesep-app:has(.association-reading-page){background:#f4f8fc}
.aiesep-association-page.association-reading-page{max-width:1240px;padding-top:36px;padding-bottom:54px;font-size:17px;line-height:1.7}
.association-reading-page .association-opening{margin-bottom:28px}
.association-reading-page .association-opening h1{font-size:clamp(32px,3.5vw,50px);line-height:1.14;margin:0 0 20px;text-wrap:balance}
.association-reading-page .association-opening-copy>p{max-width:76ch;margin:0}
.association-reading-page .association-opening--with-portrait{display:grid;grid-template-columns:minmax(0,1fr) 176px;gap:32px;align-items:start}
.association-reading-page .association-portrait{width:176px;max-width:176px;margin:0}
.association-reading-page .association-portrait figcaption{padding:10px 12px;font-size:12px;line-height:1.5}
.association-reading-page .association-reading-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:28px;align-items:start}
.association-reading-page .association-sections{grid-column:1;grid-row:1;min-width:0;padding:0 28px;border:1px solid #d5e2ea;border-radius:18px;background:#fff}
.association-reading-page .association-section{padding:26px 0;border-bottom:1px solid #dde6ec;min-width:0}
.association-reading-page .association-section:last-child{border-bottom:0}
.association-reading-page .association-section h2{font-size:25px;line-height:1.3;margin:0 0 16px;scroll-margin-top:112px;text-wrap:pretty}
.association-reading-page .association-section>:last-child{margin-bottom:0}
.association-reading-page .association-section p{max-width:76ch;font-size:17px;line-height:1.7}
.association-reading-page .association-section-index{grid-column:2;grid-row:1;position:sticky;top:112px;padding:18px;border:1px solid #d5e2ea;border-radius:14px;background:#fff;max-height:calc(100dvh - 144px);overflow:auto}
.association-reading-page .association-section-index>p{margin:0 0 10px;color:#176fae;font-size:12px;font-weight:650;letter-spacing:.05em;text-transform:uppercase}
.association-reading-page .association-section-index ul{list-style:none;padding:0;margin:0;display:grid;gap:3px}
.association-reading-page .association-section-index li{padding:0;margin:0}
.association-reading-page .association-section-index a{display:flex;align-items:center;min-height:44px;min-width:44px;padding:8px 0;border-bottom:1px solid #e1e9ef;color:#31536c;font-size:14px;line-height:1.45;text-decoration:none}
.association-reading-page .association-section-index li:last-child a{border-bottom:0}
.association-reading-page .association-section-index a:hover{color:#0868b5;text-decoration:underline;text-underline-offset:3px}
.association-reading-page .association-section--contributors ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;list-style:none;padding:0}
.association-reading-page .association-section--contributors li{margin:0;padding:0;font-size:16px}
.association-reading-page .association-section--explore-aiesep ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;list-style:none;padding:0}
.association-reading-page .association-section--explore-aiesep li{margin:0;padding:0}
.association-reading-page .association-section--explore-aiesep li a{display:flex;align-items:center;min-height:48px;padding:10px 12px;border:1px solid #d5e2ea;border-radius:9px;background:#f6faff;font-size:15px;line-height:1.4;text-decoration:none}
.association-reading-page .association-section--timeline-of-the-process li{padding:8px 0 8px 14px;margin:0 0 8px;border-left:2px solid #b5d6ed;list-style:none}
.association-reading-page .association-section--timeline-of-the-process ul{padding:0}
.association-reading-page .wp-block-table{margin:20px 0 0}
@media(max-width:900px){
  .association-reading-page .association-reading-layout{grid-template-columns:minmax(0,1fr);gap:18px}
  .association-reading-page .association-section-index{grid-column:1;grid-row:1;position:static;max-height:none;padding:16px}
  .association-reading-page .association-sections{grid-column:1;grid-row:2}
  .association-reading-page .association-section-index ul{display:flex;flex-wrap:wrap;gap:6px}
  .association-reading-page .association-section-index a{padding:8px 10px;border:1px solid #d5e2ea!important;border-radius:8px;background:#f6faff}
}
@media(max-width:580px){
  .aiesep-association-page.association-reading-page{padding-top:24px;padding-bottom:32px;font-size:16px}
  .association-reading-page .association-opening h1{font-size:32px;margin-bottom:16px}
  .association-reading-page .association-opening--with-portrait{grid-template-columns:minmax(0,1fr);gap:16px}
  .association-reading-page .association-portrait{width:148px;max-width:148px}
  .association-reading-page .association-sections{padding:0 20px}
  .association-reading-page .association-section{padding:22px 0}
  .association-reading-page .association-section h2{font-size:23px;scroll-margin-top:92px}
  .association-reading-page .association-section p,.association-reading-page .association-section li{font-size:16px}
  .association-reading-page .association-section--contributors ul,.association-reading-page .association-section--explore-aiesep ul{grid-template-columns:minmax(0,1fr)}
}
@media print{
  .association-reading-page .association-section-index{display:none}
  .association-reading-page .association-reading-layout{display:block}
  .association-reading-page .association-sections{padding:0;border:0}
  .association-reading-page .association-section{break-inside:avoid}
}

.association-reading-page .association-opening-copy>p+p{margin-top:14px}
/* Supplied text-bearing artwork keeps its complete, readable canvas at phone widths. */
/* WordPress auto sizes supplies a 3000×1500 placeholder: retain the real canvas ratio. */
.aiesep-association-page--events .association-event-card img:is([src$="/past-event-jyvaskyla-2024-658.webp"],[src$="/past-event-future-matters-2026-540.webp"]){max-height:none;object-fit:contain;contain-intrinsic-size:none}
.aiesep-association-page--events .association-event-card img[src$="/past-event-jyvaskyla-2024-658.webp"]{aspect-ratio:658/632}
.aiesep-association-page--events .association-event-card img[src$="/past-event-future-matters-2026-540.webp"]{aspect-ratio:540/764}
