
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
/* Grid/flex children default to min-width:auto and refuse to shrink below their
   content, which is the usual cause of mobile horizontal overflow. */
main *,footer *,header *{min-width:0}
h1,h2,h3,h4,p,li,blockquote,figcaption,dd,dt,summary{overflow-wrap:break-word}
.skip{position:absolute;left:-9999px;top:0;z-index:100;padding:.75rem 1.25rem;background:#000;color:#fff;text-decoration:none}
.skip:focus{left:0}
:focus-visible{outline:3px solid currentColor;outline-offset:2px}
.vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
details>summary{cursor:pointer;min-height:44px;display:flex;align-items:center}
details>summary::-webkit-details-marker{display:none}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

:root{
  --wht:#FFFFFF;--blk:#0A0A0A;--red:#D33B32;
  --gry:#D9DDE1;--steel:#606A73;
}
body{background:var(--wht);color:var(--blk);
  font-family:Ubuntu,system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:17px;line-height:1.6;font-weight:400}
h1,h2,h3,h4{font-weight:700;line-height:1.1;margin:0 0 .5em;letter-spacing:-.018em}
p{margin:0 0 1em}
.ink-in{max-width:1240px;margin:0 auto;padding:0 30px}

/* ---------- black strip / mobile white header ---------- */
.ink-strip{background:var(--blk);color:var(--wht)}
.ink-strip,.ink-mhead{display:flex;align-items:center;gap:26px;flex-wrap:wrap;
  padding:10px 30px}
.ink-mark{margin:0;font-weight:500;font-size:15px}
.ink-strip ul{list-style:none;display:flex;gap:26px;margin:0 0 0 auto;padding:0;
  flex-wrap:wrap}
.ink-strip a{color:var(--wht);text-decoration:none;font-size:15px;
  display:inline-flex;align-items:center;min-height:44px;border-bottom:2px solid transparent}
.ink-strip a:hover{border-bottom-color:var(--red)}
.ink-mhead{display:none;background:var(--wht);border-bottom:1px solid var(--gry)}
.ink-mark--b{color:var(--blk);font-weight:700}
.ink-menu{margin-left:auto}
.ink-menu summary{background:var(--blk);color:var(--wht);padding:0 18px;min-height:44px;
  font-weight:500;font-size:15px;border-radius:2px}
.ink-menu ul{list-style:none;margin:10px 0 4px;padding:0}
.ink-menu a{display:flex;align-items:center;min-height:46px;text-decoration:none;
  color:var(--blk);border-bottom:1px solid var(--gry);font-size:16px}

/* ---------- opening: white field | black field, red signal on the seam ----- */
.ink-fields{position:relative;display:grid;grid-template-columns:2fr 1fr;
  align-items:stretch}
.ink-white{position:relative;background:var(--wht);padding:74px 60px 78px 30px}
.ink-white h1{font-size:clamp(40px,6.2vw,90px);font-weight:700;max-width:13ch;
  margin:0 0 24px}
.ink-lede{font-size:20px;color:var(--steel);max-width:44ch;margin:0}
.ink-signal{display:block;width:34px;height:34px;background:var(--red);
  animation:ink-in .5s ease-out .35s 1 both}
.ink-white .ink-signal{position:absolute;right:-17px;top:52%;z-index:2}
@keyframes ink-in{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.ink-signal{animation:none;opacity:1}}
.ink-black{background:var(--blk);color:var(--wht);padding:64px 34px 60px 44px}
.ink-date{font-size:clamp(24px,2.6vw,34px);font-weight:700;margin:0 0 4px}
.ink-place{font-size:18px;color:var(--gry);margin:0 0 24px}
.ink-dl{margin:0 0 28px;border-top:1px solid rgba(217,221,225,.3)}
.ink-dl>div{padding:10px 0;border-bottom:1px solid rgba(217,221,225,.22)}
.ink-dl dt{font-size:13.5px;color:var(--gry);font-weight:400}
.ink-dl dd{margin:2px 0 0;font-weight:500;font-size:16px}
.ink-ctl{display:grid;gap:10px}
.ink-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;
  padding:0 22px;background:var(--wht);color:var(--blk);text-decoration:none;
  font-weight:700;font-size:15.5px;border:2px solid var(--wht)}
.ink-btn--line{background:transparent;color:var(--wht)}
.ink-btn:hover{background:var(--red);border-color:var(--red);color:var(--wht)}
.ink-pano{margin:0}
.ink-pano img{width:100%;height:clamp(200px,23vw,330px);object-fit:cover}
.ink-pano figcaption{max-width:1240px;margin:0 auto;padding:10px 30px 0;
  font-size:13px;color:var(--steel)}

/* ---------- sections ---------- */
.ink-sec{padding:70px 0}
.ink-sec h2{font-size:clamp(28px,3.4vw,48px)}
.ink-sub{color:var(--steel);max-width:74ch}
.ink-big{font-size:19.5px;max-width:64ch}
.ink-lnk{color:var(--red);font-weight:500}
.ink-lnk:hover{color:var(--blk)}

.ink-purp{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);
  gap:18px 54px}
.ink-purp h2{grid-column:1/-1}
.ink-purp-themes h3{font-size:17px;margin-bottom:12px}
.ink-themes{list-style:none;margin:0;padding:0}
.ink-themes li{padding:10px 0 10px 24px;border-bottom:1px solid var(--gry);
  position:relative;font-size:15.5px}
.ink-themes li::before{content:"";position:absolute;left:0;top:18px;width:10px;height:10px;
  background:var(--blk)}

/* ---------- agenda: black day bars + white rows ---------- */
.ink-sec--prog{padding-bottom:40px}
.ink-day{margin-top:38px}
.ink-daybar{background:var(--blk);color:var(--wht);display:flex;align-items:center;
  gap:20px;flex-wrap:wrap;padding:18px 30px;max-width:1240px;margin:0 auto}
.ink-signal--m{width:22px;height:22px;flex:none}
.ink-daybar h3{margin:0;font-size:22px}
.ink-daydate{margin:0;font-size:18px;color:var(--gry)}
.ink-daycount{margin:0 0 0 auto;font-size:14.5px;color:var(--gry)}
.ink-rows{list-style:none;max-width:1240px;margin:0 auto;padding:0 30px}
.ink-row{background:var(--wht);padding:20px 0 20px 0;border-bottom:1px solid var(--gry);
  display:grid;grid-template-columns:84px minmax(0,1fr) 300px;
  grid-template-areas:"t h p" "t w p";column-gap:24px;align-items:start}
.ink-time{grid-area:t;margin:0;font-weight:700;font-size:16px}
.ink-row h4{grid-area:h;margin:0 0 4px;font-size:18.5px;font-weight:500}
.ink-who{grid-area:w;margin:0;font-size:14.5px;color:var(--blk)}
.ink-who span{color:var(--steel)}
.ink-pts{grid-area:p;margin:0;padding-left:18px;font-size:14px;color:var(--steel)}
.ink-pts li{margin:3px 0}

/* ---------- experts: unboxed text beside rectangular portraits ---------- */
.ink-profs{display:grid;grid-template-columns:repeat(2,1fr);gap:40px 54px;margin:30px 0 34px}
.ink-prof{display:grid;grid-template-columns:168px 1fr;gap:24px;align-items:start}
.ink-prof img{width:168px;height:224px;object-fit:cover}
.ink-prof h3{margin:0 0 6px;font-size:21px}
.ink-prof-r{margin:0 0 10px;font-size:14.5px;color:var(--steel)}
.ink-prof-s{margin:0;font-size:15px;border-top:2px solid var(--red);padding-top:10px}

/* ---------- participation ---------- */
.ink-sec--part{background:var(--gry)}
.ink-part{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:48px;
  align-items:start}
.ink-part-acts{display:grid;gap:12px}
.ink-sec--part .ink-btn{background:var(--blk);color:var(--wht);border-color:var(--blk)}
.ink-sec--part .ink-btn--line{background:transparent;color:var(--blk)}

/* ---------- imagery: full-width sequence ---------- */
.ink-strips{margin:30px 0 40px}
.ink-strip-fig{margin:0 0 6px}
.ink-strip-fig img{width:100%;height:clamp(240px,34vw,480px);object-fit:cover}
.ink-strip-fig figcaption{max-width:1240px;margin:0 auto;padding:10px 30px 26px;
  font-size:13px;color:var(--steel)}
.ink-fignum{color:var(--red);font-weight:700;margin-right:8px}
.ink-quotes{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}
.ink-q{margin:0;border-top:3px solid var(--blk);padding-top:18px}
.ink-q blockquote{margin:0}
.ink-q p{font-size:16px;margin:0 0 12px;color:#21262a}
.ink-q figcaption{font-size:13.5px;font-weight:700}

/* ---------- planning ---------- */
.ink-plan{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:48px;
  align-items:start}
.ink-plan-links{display:flex;gap:22px;flex-wrap:wrap}
.ink-plan-dl{margin:0;border-top:2px solid var(--blk)}
.ink-plan-row{display:grid;grid-template-columns:230px 1fr;gap:20px;padding:14px 0;
  border-bottom:1px solid var(--gry)}
.ink-plan-row dt{font-weight:700;font-size:15px}
.ink-plan-row dd{margin:0;color:var(--steel)}

/* ---------- faq / organiser ---------- */
.ink-sec--faq{background:var(--blk);color:var(--wht)}
.ink-d{border-bottom:1px solid rgba(217,221,225,.28)}
.ink-d summary{font-weight:500;font-size:18px;padding:16px 0;color:var(--wht)}
.ink-d summary:hover{color:var(--red)}
.ink-d p{margin:0 0 18px;color:var(--gry);max-width:74ch}
.ink-org{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:48px}
.ink-org p{color:var(--steel)}
.ink-org-hq{font-weight:700;color:var(--blk)!important}
.ink-org-links{list-style:none;margin:0;padding:0}
.ink-org-links li{border-bottom:1px solid var(--gry)}
.ink-org-links a{display:flex;align-items:center;min-height:50px}

/* ---------- footer ---------- */
.ft{background:var(--blk);color:var(--gry);padding:52px 0 32px}
.ft-in{max-width:1240px;margin:0 auto;padding:0 30px}
.ft-org strong{color:var(--wht)}
.ft-links{list-style:none;display:flex;flex-wrap:wrap;gap:2px 26px;padding:0;margin:0 0 18px}
.ft-links a{color:var(--wht);font-size:14.5px;min-height:44px;display:inline-flex;
  align-items:center}
.ft-links a:hover{color:var(--red)}
.ft-note{font-size:13px;color:#98a1a8;max-width:78ch;margin:0 0 10px}
.ft-c{font-size:12.5px;color:#7d868d;margin:22px 0 0;
  border-top:1px solid rgba(217,221,225,.2);padding-top:18px}

/* ---------- tablet ---------- */
@media (max-width:1040px){
  .ink-fields{grid-template-columns:1fr}
  .ink-white{padding:52px 30px 46px}
  .ink-white .ink-signal{position:static;margin-top:26px}
  .ink-black{padding:40px 30px}
  .ink-purp,.ink-part,.ink-plan,.ink-org{grid-template-columns:1fr;gap:28px}
  .ink-purp h2{grid-column:auto}
  .ink-profs{grid-template-columns:1fr}
  .ink-row{grid-template-columns:76px 1fr;grid-template-areas:"t h" "t w" ". p"}
  .ink-quotes{grid-template-columns:1fr}
  .ink-plan-row{grid-template-columns:1fr}
}
/* ---------- mobile ---------- */
@media (max-width:640px){
  body{font-size:16px}
  .ink-strip{display:none}
  .ink-mhead{display:flex;padding:8px 20px}
  .ink-in,.ink-rows{padding-left:20px;padding-right:20px}
  .ink-white{padding:36px 20px 34px}
  .ink-white h1{font-size:clamp(40px,11vw,50px)}
  .ink-lede{font-size:17.5px}
  .ink-black{padding:30px 20px}
  .ink-date{display:flex;align-items:center;gap:14px}
  .ink-date::before{content:"";width:20px;height:20px;background:var(--red);flex:none}
  .ink-white .ink-signal{display:none}
  .ink-sec{padding:46px 0}
  .ink-daybar{padding:14px 20px;gap:12px}
  .ink-daycount{margin-left:0}
  .ink-prof{grid-template-columns:120px 1fr;gap:16px}
  .ink-prof img{width:120px;height:160px}
  .ink-pano figcaption,.ink-strip-fig figcaption{padding-left:20px;padding-right:20px}
  .ink-plan-links{gap:14px}
  .ft-links{flex-direction:column;gap:0}
}
