:root {
  --icma-wine: #75131a;
  --icma-wine-dark: #43090e;
  --icma-red: #a51f25;
  --icma-gold: #d7a43a;
  --icma-cream: #f6efe3;
  --icma-paper: #fffdf8;
  --icma-ink: #251a19;
  --icma-muted: #716461;
  --icma-line: rgba(66, 29, 27, .14);
  --icma-radius: 28px;
  --icma-shadow: 0 28px 80px rgba(64, 12, 15, .18);
}

html { scroll-behavior: smooth; }
body { background: var(--icma-paper); color: var(--icma-ink); }
body.pkp_page_index.pkp_op_index { overflow-x: hidden; }
body.pkp_page_index.pkp_op_index .pkp_structure_page { margin: 0; max-width: none; box-shadow: none; }
body.pkp_page_index.pkp_op_index .pkp_structure_content { width: 100%; max-width: none; margin: 0; padding: 0; }
body.pkp_page_index.pkp_op_index .pkp_structure_main { float: none; width: 100%; padding: 0; }
body.pkp_page_index.pkp_op_index .pkp_structure_main:before,
body.pkp_page_index.pkp_op_index .pkp_structure_main:after { display: none; }
body.pkp_page_index.pkp_op_index .pkp_page_index { padding: 0; }
body.pkp_page_index.pkp_op_index .page_index_journal > .homepage_image,
body.pkp_page_index.pkp_op_index .page_index_journal > .journal_description,
body.pkp_page_index.pkp_op_index .page_index_journal > .current_issue,
body.pkp_page_index.pkp_op_index .page_index_journal > .additional_content > h2 { display: none; }
body.pkp_page_index.pkp_op_index .page_index_journal > .additional_content { margin: 0; padding: 0; border: 0; }

body.pkp_page_index.pkp_op_index .pkp_structure_head { background: #fffaf2; border-top: 4px solid var(--icma-wine); border-bottom: 0; box-shadow: 0 8px 28px rgba(60,19,18,.08); }
body.pkp_page_index.pkp_op_index .pkp_head_wrapper { max-width: none; padding: 0; }
body.pkp_page_index.pkp_op_index .pkp_site_name .is_text { color: var(--icma-wine-dark); font-size: 22px; font-weight: 850; letter-spacing: -.035em; }
body.pkp_page_index.pkp_op_index .pkp_navigation_primary > li > a { color: rgba(255,255,255,.84); font-size: 11px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
body.pkp_page_index.pkp_op_index .pkp_navigation_primary > li > a:hover,
body.pkp_page_index.pkp_op_index .pkp_navigation_primary > li > a:focus { color: #fff; border-color: var(--icma-gold); }
body.pkp_page_index.pkp_op_index .pkp_navigation_user > li > a { color: #73514d; font-size: 11px; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
body.pkp_page_index.pkp_op_index .pkp_navigation_user > li > a:hover,
body.pkp_page_index.pkp_op_index .pkp_navigation_user > li > a:focus { color: var(--icma-red); }
body.pkp_page_index.pkp_op_index .pkp_search { color: rgba(255,255,255,.84); font-size: 11px; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
body.pkp_page_index.pkp_op_index .pkp_search:hover,
body.pkp_page_index.pkp_op_index .pkp_search:focus { color: #fff; }

@media (min-width: 992px) {
  body.pkp_page_index.pkp_op_index .pkp_site_name_wrapper { display: flex; width: min(1280px, calc(100% - 56px)); height: 84px; margin: 0 auto; align-items: center; }
  body.pkp_page_index.pkp_op_index .pkp_site_name { padding: 0; }
  body.pkp_page_index.pkp_op_index .pkp_site_nav_menu { position: static; }
  body.pkp_page_index.pkp_op_index .pkp_navigation_primary_row { padding: 0; border: 0; background: linear-gradient(90deg, var(--icma-wine-dark), var(--icma-wine)); }
  body.pkp_page_index.pkp_op_index .pkp_navigation_primary_wrapper { display: flex; width: min(1280px, calc(100% - 56px)); height: 52px; margin: 0 auto; padding: 0; align-items: stretch; }
  body.pkp_page_index.pkp_op_index .pkp_navigation_primary { display: flex; margin: 0; align-items: stretch; }
  body.pkp_page_index.pkp_op_index .pkp_navigation_primary > li { display: flex; align-items: stretch; }
  body.pkp_page_index.pkp_op_index .pkp_navigation_primary > li > a { display: flex; padding: 0 18px; align-items: center; border-bottom: 3px solid transparent; }
  body.pkp_page_index.pkp_op_index .pkp_navigation_primary > li:first-child > a { padding-left: 0; }
  body.pkp_page_index.pkp_op_index .pkp_navigation_primary > li > ul { top: 52px; border: 1px solid rgba(66,29,27,.12); border-radius: 0 0 12px 12px; background: #fffaf2; box-shadow: 0 20px 45px rgba(49,12,14,.16); }
  body.pkp_page_index.pkp_op_index .pkp_navigation_primary > li > ul a { color: #4f3330; font-size: 12px; }
  body.pkp_page_index.pkp_op_index .pkp_navigation_primary > li > ul a:hover,
  body.pkp_page_index.pkp_op_index .pkp_navigation_primary > li > ul a:focus { border-color: var(--icma-gold); background: #f5eadc; color: var(--icma-wine); }
  body.pkp_page_index.pkp_op_index .pkp_navigation_search_wrapper { display: flex; margin-left: auto; align-items: center; }
  body.pkp_page_index.pkp_op_index .pkp_search { padding: 0 4px 0 20px; }
  body.pkp_page_index.pkp_op_index .pkp_navigation_user_wrapper { position: absolute; top: 4px; right: max(28px, calc((100vw - 1280px) / 2 + 28px)); display: flex; height: 84px; align-items: center; }
  body.pkp_page_index.pkp_op_index .pkp_navigation_user { display: flex; align-items: center; }
  body.pkp_page_index.pkp_op_index .pkp_navigation_user > li > a { padding: 9px 12px; }
  body.pkp_page_index.pkp_op_index .pkp_navigation_user > li:first-child > a { border: 1px solid rgba(117,19,26,.22); border-radius: 999px; }
}

.icma-landing,
.icma-landing * { box-sizing: border-box; }
.icma-landing { font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--icma-ink); line-height: 1.55; }
.icma-landing h1,
.icma-landing h2,
.icma-landing h3,
.icma-landing p,
.icma-landing blockquote { margin-top: 0; }
.icma-landing h1,
.icma-landing h2,
.icma-landing h3 { font-family: Georgia, "Times New Roman", serif; color: inherit; }
.icma-landing a { transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.icma-landing a:focus-visible { outline: 3px solid var(--icma-gold); outline-offset: 4px; }
.icma-shell { width: min(1180px, calc(100% - 56px)); margin-inline: auto; }
.icma-section { padding: 108px 0; }
.icma-overline { margin-bottom: 16px; color: var(--icma-red); font-size: 12px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }

.icma-hero { position: relative; overflow: hidden; min-height: 730px; padding: 86px 0 76px; background: radial-gradient(circle at 70% 25%, rgba(215,164,58,.24), transparent 24%), linear-gradient(125deg, #fbf5e9 0%, #f4e8d8 52%, #ead2c2 100%); }
.icma-hero:before { position: absolute; inset: 0; background-image: linear-gradient(rgba(117,19,26,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(117,19,26,.035) 1px, transparent 1px); background-size: 44px 44px; content: ""; mask-image: linear-gradient(to right, #000, transparent 75%); }
.icma-orbit { position: absolute; border: 1px solid rgba(117,19,26,.12); border-radius: 50%; pointer-events: none; }
.icma-orbit-one { width: 620px; height: 620px; top: -300px; right: -170px; }
.icma-orbit-two { width: 350px; height: 350px; right: 27%; bottom: -265px; border-width: 70px; }
.icma-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.14fr) minmax(320px, .72fr); align-items: center; gap: 86px; }
.icma-kicker { display: flex; align-items: center; gap: 12px; margin-bottom: 30px; color: #6c4b47; font-size: 13px; font-weight: 750; letter-spacing: .07em; text-transform: uppercase; }
.icma-kicker span { display: inline-flex; padding: 6px 11px; border-radius: 999px; background: var(--icma-wine); color: #fff; font-size: 10px; letter-spacing: .14em; }
.icma-hero h1 { margin-bottom: 17px; color: var(--icma-wine-dark); font-size: clamp(64px, 8vw, 112px); font-weight: 400; letter-spacing: -.075em; line-height: .84; }
.icma-hero h1 span { display: block; color: var(--icma-red); font-family: Inter, ui-sans-serif, sans-serif; font-size: .42em; font-weight: 900; letter-spacing: -.045em; line-height: 1.1; }
.icma-title-long { max-width: 700px; margin-bottom: 26px; color: #392523; font-family: Georgia, "Times New Roman", serif; font-size: clamp(21px, 2.4vw, 31px); line-height: 1.22; }
.icma-hero blockquote { max-width: 650px; margin-bottom: 34px; padding: 2px 0 2px 20px; border-left: 4px solid var(--icma-gold); color: #76504b; font-family: Georgia, "Times New Roman", serif; font-size: 17px; font-style: italic; line-height: 1.5; }
.icma-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.icma-button { display: inline-flex; align-items: center; justify-content: center; gap: 20px; min-height: 54px; padding: 0 23px; border: 1px solid transparent; border-radius: 999px; font-size: 14px; font-weight: 800; text-decoration: none !important; }
.icma-button span { font-size: 18px; }
.icma-button:hover { transform: translateY(-2px); }
.icma-button-primary { background: var(--icma-wine); color: #fff !important; box-shadow: 0 12px 28px rgba(117,19,26,.2); }
.icma-button-primary:hover { background: var(--icma-wine-dark); box-shadow: 0 16px 34px rgba(67,9,14,.27); }
.icma-button-secondary { border-color: rgba(117,19,26,.28); color: var(--icma-wine) !important; background: rgba(255,255,255,.35); }
.icma-button-secondary:hover { border-color: var(--icma-wine); background: rgba(255,255,255,.72); }
.icma-quickfacts { display: flex; gap: 0; margin-top: 45px; border-top: 1px solid rgba(67,9,14,.14); }
.icma-quickfacts > div { display: flex; align-items: center; gap: 10px; flex: 1; padding: 22px 14px 0 0; }
.icma-quickfacts strong { color: var(--icma-wine); font-family: Georgia, serif; font-size: 34px; line-height: 1; }
.icma-quickfacts span { color: #735d59; font-size: 11px; font-weight: 700; letter-spacing: .05em; line-height: 1.25; text-transform: uppercase; }
.icma-poster-stage { position: relative; padding: 14px; border: 1px solid rgba(117,19,26,.14); border-radius: 20px; background: rgba(255,255,255,.55); box-shadow: var(--icma-shadow); transform: rotate(1.5deg); }
.icma-poster-stage:before { position: absolute; inset: -12px 20px 12px -12px; z-index: -1; border: 1px solid rgba(117,19,26,.16); border-radius: 20px; content: ""; }
.icma-poster-stage img { display: block; width: 100%; height: auto; max-height: 575px; border-radius: 11px; object-fit: cover; object-position: top; }
.icma-poster-trigger { position: relative; display: block; width: 100%; margin: 0; padding: 0; overflow: hidden; border: 0; border-radius: 11px; background: transparent; cursor: zoom-in; }
.icma-poster-trigger:after { position: absolute; right: 16px; bottom: 16px; padding: 9px 13px; border: 1px solid rgba(255,255,255,.4); border-radius: 999px; background: rgba(52,10,13,.86); color: #fff; content: "View full poster  +"; font-family: Inter, sans-serif; font-size: 9px; font-weight: 850; letter-spacing: .1em; opacity: 0; text-transform: uppercase; transform: translateY(8px); transition: opacity .25s ease, transform .25s ease; }
.icma-poster-trigger:hover img { filter: saturate(1.08) contrast(1.025) brightness(.93); transform: scale(1.045); }
.icma-poster-trigger:hover:after { opacity: 1; transform: translateY(0); }
.icma-poster-trigger:focus-visible { outline: 3px solid var(--icma-gold); outline-offset: 4px; }
.icma-poster-trigger img { transition: filter .2s ease, transform .35s ease; }
.icma-poster-label { position: absolute; top: 34px; left: -22px; z-index: 2; padding: 9px 14px; border-radius: 4px; background: var(--icma-wine); color: #fff; font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; transform: rotate(-1.5deg); }
.icma-poster-stage > p { margin: 12px 0 -2px; color: #79625f; font-size: 11px; text-align: center; }
.icma-poster-popover { width: auto; max-width: none; height: auto; max-height: none; margin: auto; padding: 0; overflow: visible; border: 0; background: transparent; color: inherit; }
.icma-poster-popover::backdrop { background: rgba(24, 9, 9, .86); backdrop-filter: blur(9px); }
.icma-poster-popover-inner { position: relative; display: flex; align-items: center; justify-content: center; width: 100vw; height: 100vh; padding: 30px; }
.icma-poster-popover img { display: block; width: auto; max-width: min(92vw, 904px); height: auto; max-height: 92vh; border-radius: 8px; background: #fff; box-shadow: 0 35px 100px rgba(0,0,0,.55); object-fit: contain; }
.icma-poster-close { position: fixed; top: 20px; right: 22px; z-index: 2; display: grid; width: 46px; height: 46px; margin: 0; padding: 0; place-items: center; border: 1px solid rgba(255,255,255,.4); border-radius: 50%; background: rgba(38,13,14,.8); color: #fff; cursor: pointer; font-family: Inter, sans-serif; font-size: 29px; font-weight: 300; line-height: 1; }
.icma-poster-close:hover { border-color: #fff; background: var(--icma-red); transform: rotate(4deg); }
.icma-poster-close:focus-visible { outline: 3px solid var(--icma-gold); outline-offset: 3px; }

.icma-share-bar { padding: 34px 0; border-top: 1px solid rgba(117,19,26,.1); background: #fffdf8; }
.icma-share-inner { display: grid; grid-template-columns: .55fr 1.45fr; align-items: center; gap: 60px; }
.icma-share-copy .icma-overline { margin-bottom: 7px; }
.icma-share-copy h2 { margin: 0 0 7px; color: var(--icma-wine-dark); font-family: Georgia, serif; font-size: 25px; font-weight: 500; letter-spacing: -.025em; }
.icma-share-copy > p:last-child { margin: 0; color: var(--icma-muted); font-size: 12px; line-height: 1.5; }
.icma-share-tools { min-width: 0; }
.icma-share-networks { display: flex; flex-wrap: wrap; gap: 8px; }
.icma-share-networks a,
.icma-share-secondary > * { display: inline-flex; min-height: 40px; margin: 0; padding: 0 13px 0 7px; align-items: center; gap: 8px; border: 1px solid var(--icma-line); border-radius: 999px; background: #fff; color: #4b3734; cursor: pointer; font-family: Inter, sans-serif; font-size: 10px; font-weight: 800; line-height: 1; text-decoration: none; }
.icma-share-networks a > span { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 50%; background: #efe7dc; color: var(--icma-wine); font-size: 10px; font-weight: 900; }
.icma-share-networks a:hover { border-color: transparent; color: #fff; transform: translateY(-2px); box-shadow: 0 8px 22px rgba(48,20,19,.14); }
.icma-share-networks a:hover > span { background: rgba(255,255,255,.18); color: #fff; }
.icma-share-networks .is-whatsapp:hover { background: #168a4a; }
.icma-share-networks .is-x:hover { background: #181818; }
.icma-share-networks .is-facebook:hover { background: #2859a8; }
.icma-share-networks .is-linkedin:hover { background: #0967a5; }
.icma-share-networks .is-telegram:hover { background: #278ac0; }
.icma-share-networks .is-email:hover { background: var(--icma-wine); }
.icma-share-secondary { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.icma-share-secondary > * { min-height: 34px; padding: 0 11px; background: transparent; color: #735b57; font-size: 9px; }
.icma-share-secondary > *:first-child { border-color: var(--icma-wine); background: var(--icma-wine); color: #fff; }
.icma-share-secondary > *:hover { border-color: var(--icma-wine); background: #f5eadc; color: var(--icma-wine); transform: translateY(-1px); }
.icma-share-secondary > *:first-child:hover { background: var(--icma-wine-dark); color: #fff; }
.icma-share-note { margin: 9px 0 0; color: #8b7773; font-size: 10px; }
.icma-share-status { min-height: 15px; margin: 3px 0 0; color: var(--icma-red); font-size: 10px; font-weight: 700; }

.icma-deadline { background: var(--icma-wine); color: #fff; }
.icma-deadline-inner { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding-top: 27px; padding-bottom: 27px; }
.icma-deadline .icma-overline { margin-bottom: 3px; color: #e8c26d; }
.icma-deadline h2 { margin: 0; font-size: clamp(20px, 2.5vw, 30px); font-weight: 400; }
.icma-deadline a { flex: 0 0 auto; color: #fff; font-size: 13px; font-weight: 800; text-decoration: none; }
.icma-deadline a:hover { color: #f4d98d; }

.icma-intro { background: var(--icma-paper); }
.icma-intro-grid { display: grid; grid-template-columns: .9fr 1fr; gap: 110px; }
.icma-section-heading h2,
.icma-section-topline h2,
.icma-publication h2,
.icma-register h2 { margin: 0; font-size: clamp(42px, 5vw, 68px); font-weight: 400; letter-spacing: -.045em; line-height: 1.02; }
.icma-intro-copy { padding-top: 25px; }
.icma-intro-copy > p { color: #5d4e4b; font-size: 18px; line-height: 1.75; }
.icma-intro-copy > p:first-child { color: var(--icma-ink); font-size: 23px; font-weight: 500; line-height: 1.55; }
.icma-topic-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 32px; }
.icma-topic-row span { padding: 8px 13px; border: 1px solid var(--icma-line); border-radius: 999px; color: var(--icma-wine); font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }

/* The portal stays evergreen; only .icma-featured-edition is changed per conference cycle. */
.icma-portal-mark { padding: 46px 42px; border: 1px solid rgba(117,19,26,.16); border-radius: var(--icma-radius); background: rgba(255,253,248,.58); box-shadow: var(--icma-shadow); }
.icma-portal-mark .icma-overline { margin-bottom: 25px; }
.icma-portal-mark strong { display: block; color: var(--icma-wine-dark); font-family: Georgia, serif; font-size: clamp(30px, 3.3vw, 48px); font-weight: 400; letter-spacing: -.04em; line-height: 1.08; }
.icma-portal-mark span { display: block; margin-top: 27px; color: #725d58; font-size: 15px; line-height: 1.7; }
.icma-featured-edition { background: #f3eadd; }
.icma-featured-grid { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, .62fr); align-items: center; gap: 100px; }
.icma-featured-copy h2 { margin: 0 0 22px; color: var(--icma-wine-dark); font-size: clamp(42px, 5vw, 68px); font-weight: 400; letter-spacing: -.045em; line-height: 1.02; }
.icma-featured-theme { max-width: 620px; margin-bottom: 22px; color: var(--icma-wine); font-family: Georgia, serif; font-size: 22px; font-style: italic; line-height: 1.42; }
.icma-featured-copy > p:not(.icma-overline):not(.icma-featured-theme):not(.icma-edition-note) { max-width: 610px; color: #5d4e4b; font-size: 17px; line-height: 1.75; }
.icma-edition-note { margin: 22px 0 0; color: #8b7773; font-size: 12px; font-style: italic; }
.icma-archive-panel { padding: 42px; border: 1px solid rgba(255,255,255,.16); border-radius: 20px; background: rgba(255,255,255,.06); }
.icma-archive-panel p { margin: 0 0 22px; color: #e3bd66; font-size: 11px; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.icma-archive-panel strong { display: block; font-family: Georgia, serif; font-size: 30px; font-weight: 400; line-height: 1.18; }
.icma-archive-panel > span { display: block; margin: 18px 0 29px; color: #d9c5c0; font-size: 15px; line-height: 1.7; }
.icma-contact-portal { grid-column: auto; align-self: stretch; grid-template-columns: 1fr; padding: 46px 38px; border-top: 0; border-left: 1px solid rgba(255,255,255,.16); }

@media (max-width: 980px) {
  .icma-featured-grid { gap: 55px; }
  .icma-contact-portal { grid-column: 1 / -1; grid-template-columns: 1fr 1.2fr 1.4fr; padding: 24px 38px; border-top: 1px solid rgba(255,255,255,.16); border-left: 0; }
}

.icma-speakers { background: #f3eadd; }
.icma-section-topline { display: flex; align-items: end; justify-content: space-between; gap: 70px; margin-bottom: 57px; }
.icma-section-topline > p { max-width: 390px; margin: 0; color: var(--icma-muted); font-size: 16px; }
.icma-speaker-group + .icma-speaker-group { margin-top: 45px; }
.icma-group-label { display: flex; align-items: center; gap: 16px; margin-bottom: 15px; color: var(--icma-red); font-size: 11px; font-weight: 850; letter-spacing: .16em; text-transform: uppercase; }
.icma-group-label:after { flex: 1; height: 1px; background: rgba(117,19,26,.15); content: ""; }
.icma-speaker-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.icma-speaker-grid-keynote { grid-template-columns: repeat(2, 1fr); }
.icma-speaker-card { position: relative; min-height: 280px; padding: 25px; overflow: hidden; border: 1px solid rgba(117,19,26,.1); border-radius: 20px; background: rgba(255,253,248,.78); }
.icma-speaker-card:after { position: absolute; right: -35px; bottom: -65px; width: 145px; height: 145px; border: 24px solid rgba(165,31,37,.045); border-radius: 50%; content: ""; }
.icma-speaker-featured { min-height: 320px; background: var(--icma-wine-dark); color: #fff; }
.icma-speaker-featured:after { border-color: rgba(215,164,58,.15); }
.icma-country { display: block; color: #98756d; font-size: 10px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.icma-speaker-featured .icma-country { color: #e6c16c; }
.icma-monogram { display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; margin: 43px 0 24px; border: 1px solid rgba(117,19,26,.22); border-radius: 50%; color: var(--icma-wine); font-family: Georgia, serif; font-size: 22px; }
.icma-speaker-featured .icma-monogram { width: 76px; height: 76px; border-color: rgba(255,255,255,.3); color: #fff; }
.icma-speaker-card h3 { position: relative; z-index: 1; margin-bottom: 7px; font-size: 21px; font-weight: 600; line-height: 1.16; }
.icma-speaker-featured h3 { font-size: 28px; }
.icma-speaker-card > p { position: relative; z-index: 1; margin: 0; color: #75635f; font-size: 12px; line-height: 1.5; }
.icma-speaker-featured > p { color: #d8c7c2; font-size: 14px; }
.icma-speaker-card small { display: block; margin-top: 16px; color: #bba6a1; font-size: 10px; }
.icma-note { color: var(--icma-gold); }

.icma-schedule { background: #fffdf8; }
.icma-timeline { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--icma-line); }
.icma-timeline li { position: relative; display: grid; grid-template-columns: 62px 1fr; gap: 20px; min-height: 260px; padding: 30px 24px 25px 0; border-right: 1px solid var(--icma-line); }
.icma-timeline li + li { padding-left: 24px; }
.icma-timeline li:last-child { border-right: 0; }
.icma-timeline li:before { position: absolute; top: -5px; left: 0; width: 9px; height: 9px; border-radius: 50%; background: #bcaaa5; content: ""; }
.icma-timeline li + li:before { left: 24px; }
.icma-timeline li.is-next:before,
.icma-timeline li.is-event:before { background: var(--icma-red); box-shadow: 0 0 0 7px rgba(165,31,37,.1); }
.icma-timeline time { padding-top: 3px; color: var(--icma-red); font-family: Georgia, serif; text-align: center; }
.icma-timeline time span { display: block; font-family: Inter, sans-serif; font-size: 10px; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.icma-timeline time strong { display: block; font-size: 40px; font-weight: 400; line-height: 1; }
.icma-timeline h3 { margin: 27px 0 9px; font-size: 20px; line-height: 1.2; }
.icma-timeline p { margin: 0; color: var(--icma-muted); font-size: 13px; line-height: 1.6; }
.icma-status { display: inline-flex; min-height: 24px; align-items: center; margin-bottom: -6px; padding: 0 9px; border-radius: 999px; background: #f5e3bd; color: #76520c; font-size: 9px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.icma-timeline .is-event { margin-top: -12px; padding-top: 42px; padding-left: 28px; border: 0; border-radius: 18px; background: var(--icma-wine); color: #fff; }
.icma-timeline .is-event:before { top: 7px; left: 28px; background: var(--icma-gold); }
.icma-timeline .is-event time { color: #f3d58d; }
.icma-timeline .is-event p { color: #decac7; }
.icma-timeline .is-event .icma-status { background: rgba(255,255,255,.12); color: #f5d486; }

.icma-publication { background: var(--icma-wine-dark); color: #fff; }
.icma-publication-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 105px; align-items: start; }
.icma-publication .icma-overline { color: #e3bd66; }
.icma-publication-copy > p:last-child { max-width: 480px; margin: 28px 0 0; color: #d9c5c0; font-size: 17px; line-height: 1.7; }
.icma-publication-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.16); }
.icma-publication-list li { display: grid; grid-template-columns: 53px 1fr; gap: 22px; padding: 26px 0; border-bottom: 1px solid rgba(255,255,255,.16); }
.icma-publication-list li > span { color: #d7a43a; font-family: Georgia, serif; font-size: 18px; }
.icma-publication-list strong { display: block; font-family: Georgia, serif; font-size: 20px; font-weight: 400; line-height: 1.3; }
.icma-publication-list small { display: block; margin-top: 6px; color: #bea9a4; font-size: 12px; }

.icma-register { background: #e8d6c7; }
.icma-register-card { display: grid; grid-template-columns: 1.1fr .8fr; overflow: hidden; border-radius: var(--icma-radius); background: var(--icma-red); color: #fff; box-shadow: 0 32px 70px rgba(92,22,26,.2); }
.icma-register-main { padding: 65px; background: radial-gradient(circle at 8% 10%, rgba(255,255,255,.15), transparent 30%), var(--icma-wine); }
.icma-register-main .icma-overline { color: #f0d17d; }
.icma-register-main h2 { margin-bottom: 36px; }
.icma-button-light { background: #fff8e8; color: var(--icma-wine) !important; }
.icma-button-light:hover { background: #fff; box-shadow: 0 14px 35px rgba(40,0,0,.2); }
.icma-fees { display: grid; grid-template-columns: 1fr 1fr; align-items: center; padding: 50px 45px; }
.icma-fees > div + div { padding-left: 30px; border-left: 1px solid rgba(255,255,255,.25); }
.icma-fees span,
.icma-fees em { display: block; font-size: 10px; font-style: normal; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.icma-fees strong { display: block; margin: 13px 0 5px; font-family: Georgia, serif; font-size: clamp(29px, 3vw, 42px); font-weight: 400; }
.icma-fees strong small { font-family: Inter, sans-serif; font-size: 11px; letter-spacing: .04em; }
.icma-fees em { color: #e9b9b7; }
.icma-contact { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1.2fr 1.4fr; gap: 25px; padding: 24px 38px; border-top: 1px solid rgba(255,255,255,.16); background: var(--icma-wine-dark); }
.icma-contact p { margin: 0; color: #e8bf67; font-size: 11px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.icma-contact a { display: flex; justify-content: space-between; gap: 12px; color: #fff; font-size: 12px; font-weight: 700; text-decoration: none; }
.icma-contact a span { color: #caa8a4; font-size: 9px; letter-spacing: .08em; text-transform: uppercase; }
.icma-contact a:hover { color: #f3cf77; }

.icma-closing { padding: 70px 0; background: #251716; color: #fff; }
.icma-closing .icma-shell { display: grid; grid-template-columns: .8fr 1.2fr .8fr; align-items: end; gap: 50px; }
.icma-closing-mark { font-size: 16px; font-weight: 900; letter-spacing: .05em; }
.icma-closing-mark span { color: var(--icma-gold); }
.icma-closing p { margin: 0; font-family: Georgia, serif; font-size: 29px; line-height: 1.2; }
.icma-closing .icma-shell > span:last-child { color: #aa9390; font-size: 10px; letter-spacing: .08em; text-align: right; text-transform: uppercase; }

body.pkp_page_index.pkp_op_index .pkp_structure_footer_wrapper { background: #1b1110; border: 0; }
body.pkp_page_index.pkp_op_index .pkp_structure_footer { color: #a8928f; }
body.pkp_page_index.pkp_op_index .pkp_brand_footer img { max-width: 110px; filter: grayscale(1) brightness(2); opacity: .7; }

@media (max-width: 980px) {
  body.pkp_page_index.pkp_op_index .pkp_head_wrapper { padding: 0 18px; }
  body.pkp_page_index.pkp_op_index .pkp_site_name_wrapper { display: flex; min-height: 72px; align-items: center; }
  body.pkp_page_index.pkp_op_index .pkp_site_name { padding: 0; }
  body.pkp_page_index.pkp_op_index .pkp_site_nav_menu { margin: 0 -18px; padding: 18px; border: 0; background: var(--icma-wine-dark); }
  body.pkp_page_index.pkp_op_index .pkp_navigation_primary_row { border: 0; }
  body.pkp_page_index.pkp_op_index .pkp_navigation_primary > li > a,
  body.pkp_page_index.pkp_op_index .pkp_navigation_user > li > a,
  body.pkp_page_index.pkp_op_index .pkp_search { color: rgba(255,255,255,.88); }
  body.pkp_page_index.pkp_op_index .pkp_navigation_primary > li > ul { background: rgba(255,255,255,.06); }
  body.pkp_page_index.pkp_op_index .pkp_navigation_primary > li > ul a { color: rgba(255,255,255,.78); }
  body.pkp_page_index.pkp_op_index .pkp_site_nav_toggle { color: var(--icma-wine); }
  .icma-hero { min-height: auto; }
  .icma-hero-grid { grid-template-columns: 1fr .65fr; gap: 45px; }
  .icma-share-inner { grid-template-columns: 1fr; gap: 20px; }
  .icma-speaker-grid { grid-template-columns: repeat(2, 1fr); }
  .icma-timeline { grid-template-columns: repeat(2, 1fr); gap: 30px 0; }
  .icma-timeline li:nth-child(2) { border-right: 0; }
  .icma-publication-grid { gap: 55px; }
  .icma-register-card { grid-template-columns: 1fr; }
  .icma-fees { padding: 42px 50px; }
}

@media (max-width: 720px) {
  .icma-shell { width: min(100% - 36px, 600px); }
  .icma-section { padding: 76px 0; }
  body.pkp_page_index.pkp_op_index .pkp_site_name { padding-top: 12px; padding-bottom: 10px; }
  body.pkp_page_index.pkp_op_index .pkp_site_name .is_text { font-size: 18px; }
  .icma-hero { padding: 62px 0 58px; }
  .icma-hero-grid { grid-template-columns: 1fr; }
  .icma-portal-mark { padding: 34px 28px; }
  .icma-featured-grid { grid-template-columns: 1fr; gap: 45px; }
  .icma-contact-portal { grid-template-columns: 1fr; padding: 28px; }
  .icma-hero h1 { font-size: clamp(64px, 22vw, 96px); }
  .icma-kicker { align-items: flex-start; flex-direction: column; }
  .icma-title-long { font-size: 23px; }
  .icma-actions { align-items: stretch; flex-direction: column; }
  .icma-button { width: 100%; }
  .icma-quickfacts { margin-top: 35px; }
  .icma-quickfacts > div { align-items: flex-start; flex-direction: column; }
  .icma-poster-stage { width: min(100%, 410px); margin: 12px auto 0; transform: none; }
  .icma-poster-label { left: -10px; transform: none; }
  .icma-poster-popover-inner { padding: 14px; }
  .icma-poster-popover img { max-width: calc(100vw - 28px); max-height: calc(100vh - 28px); }
  .icma-poster-close { top: 10px; right: 10px; width: 42px; height: 42px; background: rgba(67,9,14,.92); }
  .icma-share-bar { padding: 29px 0; }
  .icma-share-networks { display: grid; grid-template-columns: repeat(2, 1fr); }
  .icma-share-networks a { width: 100%; }
  .icma-share-secondary { display: grid; grid-template-columns: 1fr; }
  .icma-share-secondary > * { width: 100%; justify-content: center; }
  .icma-deadline-inner { align-items: flex-start; flex-direction: column; gap: 15px; }
  .icma-intro-grid,
  .icma-publication-grid { grid-template-columns: 1fr; gap: 38px; }
  .icma-intro-copy { padding-top: 0; }
  .icma-section-topline { align-items: flex-start; flex-direction: column; gap: 22px; margin-bottom: 42px; }
  .icma-speaker-grid,
  .icma-speaker-grid-keynote { grid-template-columns: 1fr; }
  .icma-speaker-card,
  .icma-speaker-featured { min-height: 255px; }
  .icma-monogram { margin-top: 32px; }
  .icma-timeline { display: block; border: 0; }
  .icma-timeline li,
  .icma-timeline li + li { min-height: 0; margin: 0 0 12px; padding: 24px; border: 1px solid var(--icma-line); border-radius: 17px; }
  .icma-timeline li:before,
  .icma-timeline li + li:before { display: none; }
  .icma-timeline .is-event { padding: 24px; }
  .icma-timeline h3 { margin-top: 9px; }
  .icma-register-main { padding: 48px 28px; }
  .icma-fees { grid-template-columns: 1fr; padding: 32px 28px; }
  .icma-fees > div + div { margin-top: 26px; padding: 26px 0 0; border-top: 1px solid rgba(255,255,255,.25); border-left: 0; }
  .icma-contact { grid-template-columns: 1fr; padding: 28px; }
  .icma-contact a { flex-direction: column; gap: 2px; }
  .icma-closing .icma-shell { grid-template-columns: 1fr; align-items: start; gap: 25px; }
  .icma-closing .icma-shell > span:last-child { text-align: left; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .icma-landing a { transition: none; }
  .icma-poster-trigger img,
  .icma-poster-trigger:after { transition: none; }
}

@media (hover: none) {
  .icma-poster-trigger:after { opacity: 1; transform: none; }
  .icma-poster-trigger:hover img { filter: none; transform: none; }
}
