:root {
  --ardd-blue: #012586;
  --ardd-coral: #ff4858;
  --ardd-coral-text: #d92d48;
  --ardd-ink: #101418;
  --ardd-muted: #6b7278;
  --ardd-line: #dfe3e6;
  --ardd-soft: #f4f6f7;
  --ardd-warm: #fff4f1;
}

.ed-page {
  position: relative;
  width: 2100px;
  height: 1480px;
  overflow: hidden;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  background: #fff;
  color: var(--ardd-ink);
  font-family: Archivo, Helvetica, sans-serif;
}

.ed-page.is-even { padding: 120px 150px 100px 110px; }
.ed-page.is-odd { padding: 120px 110px 100px 150px; }
.ed-page.is-dark { color: #fff; }
.ed-page.is-full { padding: 0; }

.ed-top-rule {
  position: absolute;
  inset: 0 0 auto;
  height: 12px;
  background: var(--page-accent, var(--ardd-blue));
}

.ed-folio {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-shrink: 0;
  padding-top: 26px;
  font: 700 40px/1 Archivo, sans-serif;
  color: var(--page-accent, var(--ardd-blue));
}

.is-dark .ed-folio { color: #fff; }

.ed-running {
  min-height: 58px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 64px;
}

.ed-running-title {
  display: flex;
  align-items: baseline;
  gap: 18px;
  font: 650 34px/42px Archivo, sans-serif;
  letter-spacing: -0.015em;
}

.ed-running-day { color: var(--ardd-ink); }
.ed-running-track { color: var(--page-accent, var(--ardd-blue)); }
.ed-running-time {
  padding-top: 5px;
  font: 500 26px/34px "DM Mono", monospace;
  color: var(--ardd-muted);
  white-space: nowrap;
}

.ed-programme {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.ed-programme-content {
  flex: 1;
  padding-top: 30px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.ed-time {
  font: 550 31px/40px "DM Mono", monospace;
  color: var(--ardd-blue);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.ed-service {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  column-gap: 32px;
  align-items: baseline;
  padding-top: 17px;
  border-top: 2px solid var(--ardd-line);
}

.ed-service .ed-time,
.ed-service-title { color: var(--ardd-muted); }
.ed-service-title { font: 550 31px/40px Archivo, sans-serif; }

.ed-section-label {
  margin-left: 252px;
  padding-top: 12px;
  border-top: 2px solid color-mix(in srgb, var(--page-accent) 30%, #fff);
  font: 700 27px/35px Archivo, sans-serif;
  letter-spacing: 0.045em;
  text-transform: uppercase;
  color: var(--ardd-coral-text);
}

.ed-single {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  column-gap: 32px;
  align-items: start;
}

.ed-single-person {
  display: grid;
  grid-template-columns: 126px minmax(0, 1fr);
  column-gap: 26px;
  min-width: 0;
}

.person-portrait,
.ed-monogram,
.ed-company-mark {
  display: block;
  width: 126px;
  height: 126px;
  border-radius: 22px;
  object-fit: cover;
  align-self: start;
}

.ed-monogram {
  box-sizing: border-box;
  display: grid;
  place-items: center;
  position: relative;
  overflow: hidden;
  background: linear-gradient(145deg, #eef1f4, #e2e7eb);
  color: var(--ardd-blue);
  font: 700 34px/1 Archivo, sans-serif;
  letter-spacing: -0.04em;
}

.ed-company-mark {
  box-sizing: border-box;
  display: grid;
  place-items: center;
  padding: 18px;
  border: 2px solid var(--ardd-line);
  border-radius: 22px;
  background: #fff;
}
.ed-company-mark img { width: 100%; height: 100%; object-fit: contain; }

.ed-monogram::after {
  content: "";
  position: absolute;
  right: 12px;
  bottom: 12px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--ardd-coral);
}

.ed-event-title {
  max-width: 1320px;
  margin-bottom: 8px;
  font: 680 40px/47px Archivo, sans-serif;
  letter-spacing: -0.02em;
  color: var(--ardd-ink);
}

.ed-person-name {
  font: 660 35px/42px Archivo, sans-serif;
  letter-spacing: -0.012em;
  color: var(--ardd-ink);
}

.ed-person-role-label {
  margin-top: 1px;
  font: 700 24px/30px Archivo, sans-serif;
  color: var(--ardd-coral-text);
  text-transform: lowercase;
}

.ed-person-role {
  margin-top: 3px;
  font: 430 29px/36px Archivo, sans-serif;
  color: var(--ardd-muted);
}

.ed-status-badge {
  display: inline-block;
  margin-left: 13px;
  padding: 3px 10px 2px;
  border-radius: 999px;
  vertical-align: 5px;
  font: 700 18px/25px Archivo, sans-serif;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #fff;
  background: var(--ardd-coral-text);
}

.ed-panel-head {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  column-gap: 32px;
  align-items: start;
}

.ed-person-grid {
  margin: 22px 0 0 252px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px 54px;
}

.ed-person-card {
  min-width: 0;
  display: grid;
  grid-template-columns: 126px minmax(0, 1fr);
  column-gap: 26px;
  align-items: start;
}

.ed-announcement {
  margin-left: 252px;
  padding: 24px 0 0;
  font: 550 29px/38px Archivo, sans-serif;
  color: var(--ardd-muted);
}

.ed-opener {
  --page-accent: var(--ardd-blue);
  justify-content: space-between;
  padding: 112px 120px 100px;
  background: var(--opener-background, var(--ardd-blue));
}

.ed-opener-kicker {
  font: 650 29px/38px "DM Mono", monospace;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: color-mix(in srgb, #fff 72%, var(--opener-background));
}

.ed-opener-number {
  margin-top: 50px;
  font: 800 420px/.74 Archivo, sans-serif;
  letter-spacing: -0.075em;
  color: #fff;
}

.ed-opener-title {
  max-width: 1500px;
  font: 700 78px/82px Archivo, sans-serif;
  letter-spacing: -0.045em;
  color: #fff;
}

.ed-opener-meta {
  margin-top: 28px;
  display: flex;
  gap: 36px;
  font: 520 32px/42px Archivo, sans-serif;
  color: color-mix(in srgb, #fff 78%, var(--opener-background));
}

.ed-opener-count {
  position: absolute;
  right: 120px;
  top: 112px;
  text-align: right;
  font: 500 28px/38px "DM Mono", monospace;
  color: color-mix(in srgb, #fff 72%, var(--opener-background));
}

.ed-guide {
  flex: 1;
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 90px;
  align-items: stretch;
}

.ed-guide-copy {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.ed-guide-kicker,
.ed-index-kicker,
.ed-sponsor-kicker {
  font: 700 27px/35px Archivo, sans-serif;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ardd-coral-text);
}

.ed-guide-title {
  margin-top: 24px;
  max-width: 1080px;
  font: 720 72px/78px Archivo, sans-serif;
  letter-spacing: -0.045em;
}

.ed-guide-text {
  margin-top: 34px;
  max-width: 1040px;
  font: 430 36px/50px Archivo, sans-serif;
  color: var(--ardd-muted);
}

.ed-guide-card {
  min-height: 100%;
  box-sizing: border-box;
  padding: 48px;
  border-radius: 30px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: var(--ardd-blue);
  color: #fff;
}

.ed-guide-card img { width: 270px; height: 270px; }
.ed-guide-card-title { font: 700 42px/50px Archivo, sans-serif; }
.ed-guide-card-meta { font: 500 28px/38px Archivo, sans-serif; opacity: .78; }
.ed-guide-card-link { font: 650 28px/38px Archivo, sans-serif; color: #fff; }

.ed-index-wrap { flex: 1; display: flex; flex-direction: column; }
.ed-index-title {
  margin-top: 20px;
  font: 700 66px/72px Archivo, sans-serif;
  letter-spacing: -0.035em;
}
.ed-index-running { font:700 32px/40px Archivo,sans-serif; color:var(--ardd-ink); }
.ed-index-running span { color:var(--ardd-muted); font-weight:500; }
.ed-index-range {
  margin-top: 10px;
  font: 500 27px/36px "DM Mono", monospace;
  color: var(--ardd-muted);
}
.ed-index-grid {
  flex: 1;
  min-height: 0;
  margin-top: 18px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-flow: column;
  gap: 0 42px;
}
.ed-index-entry {
  min-width: 0;
  min-height: 0;
  padding: 0 0 8px;
  margin-bottom: 0;
  overflow: hidden;
  border-bottom: 1px solid var(--ardd-line);
}
.ed-index-name {
  font: 660 31px/36px Archivo, sans-serif;
  letter-spacing: -0.012em;
}
.ed-index-role {
  margin-top: 3px;
  font: 430 24px/29px Archivo, sans-serif;
  color: var(--ardd-muted);
}

.ed-practical { flex: 1; display: grid; grid-template-columns: 1.08fr .92fr; gap: 74px; }
.ed-practical-title {
  font: 700 68px/74px Archivo, sans-serif;
  letter-spacing: -0.04em;
}
.ed-link-list { margin-top: 54px; border-top: 2px solid var(--ardd-ink); }
.ed-link-row { 
  min-height: 206px;
  display: grid;
  grid-template-columns: 176px minmax(0, 1fr) auto;
  gap: 26px;
  align-items: center;
  border-bottom: 1px solid var(--ardd-line);
  color: inherit;
}
.ed-link-row img { width: 168px; height: 168px; }
.ed-link-title { font: 650 32px/40px Archivo, sans-serif; }
.ed-link-note { margin-top: 2px; font: 430 25px/32px Archivo, sans-serif; color: var(--ardd-muted); }
.ed-link-title,
.ed-link-note { display: block; }
.ed-link-arrow { font: 650 28px/36px Archivo, sans-serif; color: var(--ardd-blue); }
.ed-practical-side {
  padding: 50px;
  border-radius: 30px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: var(--ardd-soft);
}
.ed-practical-label { font: 700 25px/32px Archivo, sans-serif; letter-spacing: .05em; text-transform: uppercase; color: var(--ardd-coral-text); }
.ed-practical-heading { margin-top: 14px; font: 680 42px/50px Archivo, sans-serif; }
.ed-practical-copy { margin-top: 12px; font: 430 29px/40px Archivo, sans-serif; color: var(--ardd-muted); }
.ed-practical-links { font: 560 29px/46px Archivo, sans-serif; color: var(--ardd-blue); }
.ed-practical-links a { display: block; color: inherit; text-decoration: none; }
.ed-practical-links a:hover { color: var(--ardd-coral-text); }

.ed-sponsors { flex: 1; display: flex; flex-direction: column; }
.ed-sponsor-title { margin-top: 18px; font: 700 66px/72px Archivo, sans-serif; letter-spacing: -.035em; }
.ed-sponsor-section { margin-top: 34px; }
.ed-sponsor-section-title { margin-bottom: 16px; font: 700 25px/32px Archivo, sans-serif; letter-spacing: .06em; text-transform: uppercase; color: var(--ardd-muted); }
.ed-logo-grid { display: grid; gap: 14px 18px; justify-content: start; }
.ed-logo-grid.tier-one { grid-template-columns: repeat(2, 420px); }
.ed-logo-grid.tier-three { grid-template-columns: repeat(3, 520px); }
.ed-logo-grid.standard { grid-template-columns: repeat(3, 520px); }
.ed-logo-tile {
  height: 132px;
  box-sizing: border-box;
  padding: 18px 30px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: #f7f8f9;
}
.ed-logo-grid.tier-one .ed-logo-tile { height: 146px; padding: 24px 38px; background: #f2f4f6; }
.ed-logo-tile img { display: block; width: 82%; height: 76%; object-fit: contain; transform: scale(1.18); }
.ed-logo-grid.tier-one .ed-logo-tile img { transform: scale(1.6); }
.ed-logo-grid.tier-one .logo-insilico-medicine img { transform:scale(1.95); }
.ed-logo-grid.tier-one .logo-eli-lilly img { transform:scale(1.72); }
.ed-logo-tile.is-small-logo img { transform: scale(1.38); }
.ed-logo-tile.is-very-small-logo img { transform: scale(1.6); }
.ed-logo-tile.is-artan { background: var(--ardd-blue); }
.ed-logo-tile.is-artan img { display:block; transform:scale(1.45); }
.ed-logo-wordmark { font: 720 31px/1 Archivo, sans-serif; letter-spacing: .08em; color: var(--ardd-ink); }

.ed-image-pause img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ed-image-pause::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(1,37,134,.9), rgba(1,37,134,.25) 70%, transparent); }
.ed-image-pause-copy { position: absolute; z-index: 1; left: 120px; bottom: 130px; max-width: 1160px; color: #fff; }
.ed-image-pause-title { font: 720 82px/86px Archivo, sans-serif; letter-spacing: -.05em; }
.ed-image-pause-text { margin-top: 28px; font: 470 34px/46px Archivo, sans-serif; color: rgba(255,255,255,.82); }

/* Front matter and closing pages share the same semantic design system. */
.ed-eyebrow {
  font: 700 27px/35px Archivo, sans-serif;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ardd-coral-text);
}

.ed-cover { display:grid; grid-template-columns:55% 45%; background:#fff; }
.ed-cover-copy { box-sizing:border-box; padding:106px 86px 90px 120px; display:flex; flex-direction:column; min-width:0; }
.ed-cover-logo { width:48px; height:82px; object-fit:contain; }
.ed-cover-title { margin-top:76px; font:800 250px/.82 Archivo,sans-serif; letter-spacing:-.075em; color:var(--ardd-blue); }
.ed-cover-year { margin-top:32px; display:flex; align-items:baseline; gap:0; font:800 242px/.78 Archivo,sans-serif; letter-spacing:-.075em; }
.ed-cover-year span:first-child { color:var(--ardd-blue); }
.ed-cover-year span:last-child { color:var(--ardd-coral); }
.ed-cover-event { margin-top:auto; white-space:nowrap; font:680 38px/48px Archivo,sans-serif; letter-spacing:-.025em; }
.ed-cover-date { margin-top:16px; font:700 34px/42px Archivo,sans-serif; color:var(--ardd-blue); }
.ed-cover-location { margin-top:64px; font:430 27px/38px Archivo,sans-serif; color:var(--ardd-muted); }
.ed-cover-photo { position:relative; overflow:hidden; }
.ed-cover-photo::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 72%,rgba(16,20,24,.5)); }
.ed-cover-photo img { width:100%; height:100%; object-fit:cover; object-position:50% 48%; }
.ed-cover-photo-tag { position:absolute; z-index:1; right:54px; bottom:45px; font:600 22px/30px "DM Mono",monospace; color:#fff; }

.ed-intro { flex:1; display:grid; grid-template-rows:auto 1fr; gap:82px; }
.ed-intro h1,.ed-venue h1,.ed-glance h1,.ed-final-cta h1 { margin:22px 0 0; font:720 82px/88px Archivo,sans-serif; letter-spacing:-.05em; }
.ed-intro p,.ed-venue p,.ed-final-cta p { max-width:1350px; margin:34px 0 0; font:430 37px/52px Archivo,sans-serif; color:var(--ardd-muted); }
.ed-stat-grid { align-self:end; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.ed-stat { min-height:194px; box-sizing:border-box; padding:30px 34px; border-radius:24px; display:flex; flex-direction:column; justify-content:space-between; background:var(--ardd-soft); }
.ed-stat strong { font:740 70px/1 Archivo,sans-serif; letter-spacing:-.05em; color:var(--ardd-blue); }
.ed-stat span { max-width:350px; font:520 27px/35px Archivo,sans-serif; color:var(--ardd-muted); }

.ed-photo-page > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.ed-photo-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(1,37,134,.9) 0%,rgba(1,37,134,.48) 50%,rgba(1,37,134,.05) 78%); }
.ed-photo-copy { position:absolute; left:120px; bottom:132px; z-index:1; max-width:1120px; color:#fff; }
.ed-photo-title { font:720 86px/90px Archivo,sans-serif; letter-spacing:-.055em; }
.ed-photo-text { margin-top:28px; max-width:900px; font:460 35px/48px Archivo,sans-serif; color:rgba(255,255,255,.82); }
.ed-photo-folio { position:absolute; z-index:1; bottom:54px; left:120px; font:700 40px/1 Archivo,sans-serif; color:#fff; }
.ed-photo-page.is-odd .ed-photo-folio { left:auto; right:120px; }

.ed-venue { flex:1; display:grid; grid-template-columns:.92fr 1.08fr; grid-template-rows:1fr auto; gap:58px 86px; }
.ed-venue p { max-width:760px; font-size:34px; line-height:48px; }
.ed-text-link { display:inline-block; margin-top:38px; font:650 30px/38px Archivo,sans-serif; color:var(--ardd-blue); text-decoration:none; }
.ed-floor-stack { align-self:start; display:flex; flex-direction:column; gap:18px; }
.ed-floor { min-height:188px; box-sizing:border-box; padding:28px 34px; border-radius:24px; display:grid; grid-template-columns:130px 1fr; align-items:center; gap:34px; background:var(--ardd-soft); }
.ed-floor > span { font:760 54px/1 "DM Mono",monospace; color:var(--ardd-blue); }
.ed-floor strong,.ed-floor small { display:block; }
.ed-floor strong { font:670 37px/44px Archivo,sans-serif; }
.ed-floor small { margin-top:6px; font:430 27px/35px Archivo,sans-serif; color:var(--ardd-muted); }
.ed-venue-address { grid-column:1/-1; padding-top:28px; border-top:2px solid var(--ardd-line); font:520 29px/40px Archivo,sans-serif; color:var(--ardd-muted); }

.ed-glance { flex:1; display:flex; flex-direction:column; }
.ed-glance h1 { font-size:76px; line-height:82px; }
.ed-day-grid { flex:1; margin-top:50px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.ed-day-card { box-sizing:border-box; padding:38px; border-radius:28px; display:grid; grid-template-rows:auto 1fr; gap:40px; background:var(--ardd-soft); }
.ed-day-number { font:800 104px/.8 Archivo,sans-serif; letter-spacing:-.06em; color:var(--ardd-blue); }
.ed-day-card h2 { margin:0; font:700 49px/56px Archivo,sans-serif; letter-spacing:-.035em; }
.ed-day-card p { margin:10px 0 0; font:520 26px/34px "DM Mono",monospace; color:var(--ardd-muted); }
.ed-day-card ul { margin:36px 0 0; padding:0; list-style:none; }
.ed-day-card li { padding:14px 0; border-top:1px solid var(--ardd-line); font:500 29px/38px Archivo,sans-serif; }
.ed-glance.is-right { display:grid; grid-template-rows:.82fr 1.18fr; gap:24px; }
.ed-day-card.is-wide { grid-template-columns:170px 1fr; grid-template-rows:none; align-items:start; }
.ed-forum-strip { box-sizing:border-box; padding:34px 38px; border-radius:28px; background:var(--ardd-warm); }
.ed-forum-row { min-height:94px; display:grid; grid-template-columns:76px 1fr; gap:24px; align-items:center; border-bottom:1px solid color-mix(in srgb,var(--ardd-coral) 22%,#fff); }
.ed-forum-row:last-child { border-bottom:0; }
.ed-forum-row > span { font:700 27px/34px "DM Mono",monospace; color:var(--ardd-coral-text); }
.ed-forum-row strong,.ed-forum-row small { display:block; }
.ed-forum-row strong { font:650 29px/36px Archivo,sans-serif; }
.ed-forum-row small { margin-top:2px; font:430 23px/30px Archivo,sans-serif; color:var(--ardd-muted); }

.ed-session { padding:24px 0 28px; border-top:2px solid var(--ardd-blue); border-bottom:1px solid var(--ardd-line); }
.ed-session-label { font:650 23px/30px Archivo,sans-serif; color:var(--ardd-coral-text); text-transform:uppercase; letter-spacing:.05em; }
.ed-session-lead { margin:18px 0 0 252px; max-width:760px; }
.ed-session-children { margin:20px 0 0 252px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px 34px; }
.ed-session-child { min-width:0; padding-top:16px; border-top:1px solid var(--ardd-line); }
.ed-session-child .ed-time { margin-bottom:10px; font-size:24px; line-height:30px; }
.ed-session-person { display:grid; grid-template-columns:92px minmax(0,1fr); gap:18px; }
.ed-session-person .person-portrait,.ed-session-person .ed-monogram,.ed-session-person .ed-company-mark { width:92px; height:92px; border-radius:17px; }
.ed-session-person .ed-person-name { font-size:28px; line-height:34px; }
.ed-session-person .ed-person-role { font-size:23px; line-height:29px; }
.ed-session-person .ed-person-role-label { font-size:20px; line-height:25px; }

.is-dense-programme .ed-programme-content { padding-top:22px; gap:13px; }
.is-dense-programme .person-portrait,
.is-dense-programme .ed-monogram,
.is-dense-programme .ed-company-mark { width:108px; height:108px; border-radius:19px; }
.is-dense-programme .ed-single-person,
.is-dense-programme .ed-person-card { grid-template-columns:108px minmax(0,1fr); gap:21px; }
.is-dense-programme .ed-person-grid { margin-top:16px; gap:20px 46px; }
.is-dense-programme .ed-person-name { font-size:32px; line-height:38px; }
.is-dense-programme .ed-person-role { font-size:26px; line-height:32px; }
.is-dense-programme .ed-person-role-label { font-size:22px; line-height:27px; }
.is-dense-programme .ed-event-title { font-size:37px; line-height:43px; margin-bottom:5px; }

.ed-programme-columns { flex:1; min-height:0; padding-top:40px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:58px; }
.ed-programme-column { min-width:0; display:flex; flex-direction:column; gap:20px; }
.ed-programme-column + .ed-programme-column { padding-left:48px; border-left:2px solid var(--ardd-line); }
.is-two-column .ed-time { font-size:24px; line-height:32px; }
.is-two-column .ed-single,.is-two-column .ed-panel-head,.is-two-column .ed-service { grid-template-columns:154px minmax(0,1fr); gap:22px; }
.is-two-column .ed-single-person { grid-template-columns:96px minmax(0,1fr); gap:18px; }
.is-two-column .person-portrait,.is-two-column .ed-monogram,.is-two-column .ed-company-mark { width:96px; height:96px; border-radius:17px; }
.is-two-column .ed-event-title { font-size:29px; line-height:35px; margin-bottom:5px; }
.is-two-column .ed-person-name { font-size:27px; line-height:33px; }
.is-two-column .ed-person-role { font-size:22px; line-height:28px; }
.is-two-column .ed-section-label { margin-left:176px; font-size:22px; line-height:29px; }
.is-two-column .ed-person-grid { margin-left:176px; grid-template-columns:1fr; gap:16px; }
.is-two-column .ed-person-card { grid-template-columns:96px 1fr; gap:18px; }

.ed-final-cta { flex:1; display:grid; grid-template-columns:1.18fr .82fr; gap:90px; align-items:center; }
.ed-final-cta > div > img { width:54px; height:90px; margin-bottom:66px; }
.ed-final-cta h1 { font-size:104px; line-height:108px; }
.ed-final-cta p { max-width:950px; }
.ed-final-qr { box-sizing:border-box; padding:46px; border-radius:30px; display:flex; flex-direction:column; gap:30px; align-items:center; text-align:center; background:var(--ardd-soft); color:var(--ardd-blue); text-decoration:none; font:650 27px/36px Archivo,sans-serif; }
.ed-final-qr img { width:330px; height:330px; }

.ed-back { display:grid; grid-template-columns:58% 42%; background:var(--ardd-blue); }
.ed-back-photo { overflow:hidden; }
.ed-back-photo img { width:100%; height:100%; object-fit:cover; object-position:center 44%; }
.ed-back-panel { box-sizing:border-box; padding:92px 72px; display:flex; flex-direction:column; justify-content:space-between; color:#fff; }
.ed-back-panel > img { width:64px; height:104px; filter:brightness(0) invert(1); }
.ed-back-date { font:600 29px/38px "DM Mono",monospace; color:rgba(255,255,255,.72); }
.ed-back-title { margin-top:20px; font:720 63px/68px Archivo,sans-serif; letter-spacing:-.045em; }
.ed-back-panel a { font:650 31px/40px Archivo,sans-serif; color:#fff; text-decoration:none; }

/* Editorial correction: the brochure uses typography and rules, not UI cards. */
.ed-cover-copy { position:relative; z-index:2; overflow:visible; }
.ed-cover-title { margin-top:72px; font-size:268px; line-height:.8; }
.ed-cover-year { position:relative; z-index:3; width:1260px; gap:0; margin-top:46px; transform:translateX(500px); font-size:260px; line-height:.76; pointer-events:none; }
.ed-cover-year span { display:block; }
.ed-cover-event { position:relative; z-index:3; }
.ed-cover-photo { z-index:1; }

.ed-stat-grid { gap:0 42px; }
.ed-stat {
  min-height:178px;
  padding:26px 0 20px;
  border-radius:0;
  border-top:2px solid var(--ardd-line);
  background:transparent;
}

.ed-floor-stack { gap:0; border-bottom:2px solid var(--ardd-line); }
.ed-floor {
  min-height:176px;
  padding:26px 0;
  border-radius:0;
  border-top:2px solid var(--ardd-line);
  background:transparent;
}

.ed-day-grid { gap:0 48px; }
.ed-day-card {
  padding:30px 0 0;
  border-radius:0;
  border-top:4px solid var(--ardd-blue);
  background:transparent;
}
.ed-glance.is-right { gap:52px; }
.ed-day-card.is-wide { padding-top:32px; }
.ed-forum-strip {
  padding:30px 0 0;
  border-radius:0;
  border-top:4px solid var(--ardd-coral);
  background:transparent;
}
.ed-forum-row { min-height:92px; }

.ed-guide { grid-template-columns:1.25fr .75fr; }
.ed-guide-card,
.ed-guide-card[style] {
  min-height:0;
  padding:24px 0 0 54px;
  border-radius:0;
  border-left:3px solid var(--page-accent,var(--ardd-blue));
  background:transparent !important;
  color:var(--ardd-ink);
}
.ed-guide-card-title { color:var(--ardd-ink); }
.ed-guide-card-meta { color:var(--ardd-muted); opacity:1; }
.ed-guide-card-link { color:var(--page-accent,var(--ardd-blue)); }

.ed-practical-side {
  padding:18px 0 18px 54px;
  border-radius:0;
  border-left:3px solid var(--ardd-blue);
  background:transparent;
}

.ed-logo-tile,
.ed-logo-grid.tier-one .ed-logo-tile {
  border-radius:0;
  border-top:1px solid var(--ardd-line);
  background:transparent;
}
.ed-logo-tile.is-artan { background:var(--ardd-blue); border-top-color:var(--ardd-blue); }

.ed-final-qr {
  padding:36px 0 20px 54px;
  border-radius:0;
  border-left:3px solid var(--ardd-blue);
  background:transparent;
}

@media print {
  .spread-book { padding: 0 !important; gap: 0 !important; background: #fff !important; }
  .spread-page { box-shadow: none !important; }
}
