:root {
    --bg: #08111f;
    --text: #edf4ff;
    --cyan: #46b8ff;
    --cyan-2: #84d7ff;
    --orange: #ff9d26;
    --panel: #0d1a2d;
    --panel-2: #10223a;
    --muted: #9fb1c9;
    --line: rgba(154, 194, 233, .16);
    --line-2: rgba(154, 194, 233, .28);
    --white: #ffffff;
    --shadow: 0 24px 80px rgba(0,0,0,.28);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.fintech-site {
    margin: 0;
    min-height: 100vh;
    overflow-x: hidden;
    background:
        radial-gradient(circle at 8% 8%, color-mix(in srgb, var(--cyan) 16%, transparent), transparent 25%),
        radial-gradient(circle at 88% 9%, color-mix(in srgb, var(--orange) 10%, transparent), transparent 20%),
        linear-gradient(180deg, #07101d 0%, var(--bg) 52%, #060d18 100%);
    color: var(--text);
    font-family: 'Inter', sans-serif;
}
body.is-loading { overflow: hidden; }
a { text-decoration: none; color: inherit; }
img { max-width: 100%; display: block; }
button { font: inherit; }
.section { position: relative; padding: 112px 0; }
.container { position: relative; z-index: 2; }
.section-kicker {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 13px;
    border-radius: 999px;
    border: 1px solid var(--line-2);
    background: rgba(255,255,255,.025);
    color: var(--cyan-2);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}
.section-kicker.light { color: #d6f0ff; border-color: rgba(255,255,255,.12); }
.section-title {
    margin: 20px 0 0;
    font: 700 clamp(2.25rem, 4.3vw, 4rem)/1.03 'Space Grotesk', sans-serif;
    letter-spacing: -.045em;
}
.section-lead { font-size: clamp(1.08rem, 1.6vw, 1.35rem); line-height: 1.7; color: #d9e8f7; }
.section-text { color: var(--muted); font-size: 1rem; line-height: 1.8; }
.reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }

/* Preloader */
.site-preloader {
    position: fixed; inset: 0; z-index: 9999;
    display: grid; place-items: center;
    background: #07101d;
    transition: opacity .45s ease, visibility .45s ease;
}
.site-preloader.is-hidden { opacity: 0; visibility: hidden; }
.preloader-core { display: grid; gap: 18px; justify-items: center; text-align: center; }
.preloader-logo { width: min(320px, 72vw); max-height: 130px; object-fit: contain; }
.preloader-core small { color: var(--muted); text-transform: uppercase; letter-spacing: .18em; font-size: .73rem; }

/* Header */
.site-header { position: sticky; top: 0; z-index: 90; padding: 16px 0 0; }
.nav-shell {
    min-height: 76px;
    padding: 10px 14px 10px 18px;
    border: 1px solid var(--line);
    border-radius: 20px;
    background: rgba(5, 12, 23, .82);
    backdrop-filter: blur(18px);
    box-shadow: 0 14px 42px rgba(0,0,0,.18);
}
.brand-logo { width: auto; height: 54px; max-width: 220px; object-fit: contain; }
.navbar-nav { gap: 4px; }
.nav-link { color: #c5d4e6 !important; font-size: .9rem; font-weight: 700; padding: 10px 13px !important; border-radius: 10px; }
.nav-link:hover { color: #fff !important; background: rgba(255,255,255,.05); }
.navbar-toggler { width: 46px; height: 46px; display: inline-flex; flex-direction: column; gap: 5px; justify-content: center; align-items: center; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.03); }
.navbar-toggler:focus { box-shadow: none; }
.navbar-toggler span { width: 18px; height: 2px; border-radius: 999px; background: #fff; }
.btn-fintech, .btn-link-arrow, .btn-light {
    display: inline-flex; align-items: center; justify-content: center; gap: 11px;
    border-radius: 12px; font-weight: 800; transition: .25s ease;
}
.btn-fintech { min-height: 54px; padding: 0 22px; background: var(--cyan); color: #07101d; box-shadow: 0 14px 30px color-mix(in srgb, var(--cyan) 23%, transparent); }
.btn-fintech:hover { color: #07101d; transform: translateY(-2px); filter: brightness(1.04); }
.btn-nav { min-height: 44px; padding: 0 18px; }
.btn-link-arrow { min-height: 54px; padding: 0 8px; color: #d5e7f8; }
.btn-link-arrow:hover { color: #fff; transform: translateX(3px); }
.btn-light { background: #fff; color: #07101d; }

/* Hero */
.hero-v2 { position: relative; padding: 78px 0 52px; overflow: hidden; }
.fintech-mesh {
    position: absolute; inset: 0; pointer-events: none;
    background-image:
        linear-gradient(rgba(112,154,204,.075) 1px, transparent 1px),
        linear-gradient(90deg, rgba(112,154,204,.075) 1px, transparent 1px);
    background-size: 58px 58px;
    mask-image: linear-gradient(180deg, rgba(0,0,0,.8), transparent 88%);
}
.fintech-mesh::after {
    content: ''; position: absolute; width: 620px; height: 620px; right: -180px; top: -190px; border-radius: 50%;
    border: 1px solid color-mix(in srgb, var(--cyan) 25%, transparent);
    box-shadow: inset 0 0 0 70px rgba(70,184,255,.025), inset 0 0 0 140px rgba(70,184,255,.018);
}
.hero-v2-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(380px, .8fr); gap: clamp(36px, 6vw, 86px); align-items: center; }
.hero-v2-badge { display: inline-flex; gap: 12px; align-items: center; color: var(--cyan-2); text-transform: uppercase; letter-spacing: .17em; font-size: .76rem; font-weight: 800; }
.hero-v2-badge span { width: 28px; height: 8px; border-radius: 999px; background: linear-gradient(90deg, var(--cyan), var(--orange)); }
.hero-v2 h1 { margin: 22px 0 24px; max-width: 11.5ch; font: 700 clamp(3.3rem, 7.2vw, 6.7rem)/.91 'Space Grotesk', sans-serif; letter-spacing: -.066em; }
.hero-v2 h1 em { display: inline; font-style: normal; color: var(--cyan); }
.hero-v2-lead { max-width: 680px; margin: 0; color: #b8c9dc; font-size: clamp(1rem, 1.4vw, 1.14rem); line-height: 1.8; }
.hero-v2-actions { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 30px; }
.hero-v2-meta { margin-top: 42px; display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.hero-v2-meta-item { min-height: 142px; padding: 20px 20px 20px 0; }
.hero-v2-meta-item + .hero-v2-meta-item { border-left: 1px solid var(--line); padding-left: 20px; }
.hero-v2-meta-item small { display: block; color: var(--cyan-2); text-transform: uppercase; letter-spacing: .15em; font-size: .68rem; font-weight: 800; margin-bottom: 9px; }
.hero-v2-meta-item strong { display: block; font-size: 1.01rem; line-height: 1.45; }
.hero-v2-meta-item p { margin: 8px 0 0; color: var(--muted); font-size: .82rem; line-height: 1.6; }
.hero-v2-board { border: 1px solid var(--line-2); background: linear-gradient(180deg, rgba(13,29,51,.92), rgba(7,16,29,.9)); box-shadow: var(--shadow); border-radius: 24px; overflow: hidden; }
.hero-v2-board-top { min-height: 48px; padding: 0 18px; display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid var(--line); color: #cfe8f8; text-transform: uppercase; letter-spacing: .13em; font-size: .7rem; font-weight: 800; }
.hero-v2-board-top i { width: 8px; height: 8px; border-radius: 50%; background: #54de91; box-shadow: 0 0 0 6px rgba(84,222,145,.08); }
.hero-v2-logo-wrap { padding: 24px; background: rgba(255,255,255,.98); border-bottom: 1px solid var(--line); }
.hero-v2-logo { width: 100%; max-height: 330px; object-fit: contain; }
.hero-v2-signals { display: grid; grid-template-columns: repeat(2, 1fr); }
.hero-v2-signal { display: grid; grid-template-columns: 36px 1fr; gap: 10px; align-items: start; padding: 18px; border-bottom: 1px solid var(--line); }
.hero-v2-signal:nth-child(odd) { border-right: 1px solid var(--line); }
.hero-v2-signal > span { color: var(--cyan); font: 700 .75rem 'Space Grotesk', sans-serif; }
.hero-v2-signal small { display: block; color: #7894b2; text-transform: uppercase; letter-spacing: .12em; font-size: .64rem; margin-bottom: 5px; }
.hero-v2-signal strong { font-size: .9rem; line-height: 1.45; }
.hero-v2-countdown { display: grid; grid-template-columns: repeat(4, 1fr); }
.hero-v2-countdown div { padding: 17px 10px; text-align: center; }
.hero-v2-countdown div + div { border-left: 1px solid var(--line); }
.hero-v2-countdown strong { display: block; font: 700 1.55rem 'Space Grotesk', sans-serif; }
.hero-v2-countdown small { color: var(--muted); font-size: .66rem; text-transform: uppercase; letter-spacing: .12em; }
.hero-v2-ticker { margin-top: 28px; min-height: 54px; padding: 0 18px; display: flex; align-items: center; gap: 12px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.025); }
.ticker-live { width: 9px; height: 9px; border-radius: 50%; background: var(--orange); box-shadow: 0 0 0 6px color-mix(in srgb, var(--orange) 10%, transparent); }
.hero-v2-ticker strong { color: #fff; font-size: .82rem; text-transform: uppercase; letter-spacing: .11em; white-space: nowrap; }
.hero-v2-ticker p { margin: 0; color: var(--muted); font-size: .9rem; }

/* About */
.about-v2 { padding-top: 96px; }
.about-v2-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(44px, 8vw, 110px); align-items: start; }
.about-v2-copy { padding-top: 8px; }
.about-v2-copy .section-lead { margin: 0 0 20px; }
.about-v2-copy .section-text { margin: 0; }
.about-v2-stats { margin-top: 62px; display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line-2); border-bottom: 1px solid var(--line-2); }
.about-v2-stat { position: relative; min-height: 260px; padding: 28px; }
.about-v2-stat + .about-v2-stat { border-left: 1px solid var(--line-2); }
.about-v2-stat-index { position: absolute; top: 26px; right: 26px; color: #5d7390; font: 700 .75rem 'Space Grotesk', sans-serif; letter-spacing: .1em; }
.about-v2-stat > strong { display: block; margin-top: 46px; font: 700 clamp(2.8rem, 5vw, 4.8rem)/1 'Space Grotesk', sans-serif; letter-spacing: -.05em; color: var(--cyan); }
.about-v2-stat > span { display: block; margin: 12px 0 10px; color: #fff; font-weight: 800; }
.about-v2-stat p { margin: 0; max-width: 26ch; color: var(--muted); line-height: 1.7; }

/* Focus */
.focus-v2 { background: linear-gradient(180deg, rgba(14,31,52,.52), rgba(7,16,29,.12)); }
.focus-v2-head { display: grid; grid-template-columns: 1fr .62fr; gap: 56px; align-items: end; margin-bottom: 42px; }
.focus-v2-head p { margin: 0; color: var(--muted); line-height: 1.8; }
.focus-v2-list { border-top: 1px solid var(--line-2); }
.focus-v2-row { min-height: 138px; display: grid; grid-template-columns: 72px minmax(220px,.7fr) 1fr 44px; gap: 26px; align-items: center; border-bottom: 1px solid var(--line-2); transition: .25s ease; }
.focus-v2-row:hover { background: rgba(255,255,255,.025); padding-left: 14px; }
.focus-v2-no { color: var(--cyan); font: 700 .8rem 'Space Grotesk', sans-serif; letter-spacing: .12em; }
.focus-v2-row h3 { margin: 0; font: 700 1.35rem/1.25 'Space Grotesk', sans-serif; }
.focus-v2-row p { margin: 0; color: var(--muted); line-height: 1.7; }
.focus-v2-row i { font-style: normal; color: var(--cyan-2); font-size: 1.2rem; }

/* Agenda */
.agenda-v2-head, .speakers-v2-head, .partners-v2-head, .registration-v2-head { display: grid; grid-template-columns: 1fr .65fr; gap: 60px; align-items: end; margin-bottom: 54px; }
.agenda-v2-head p, .speakers-v2-head p, .partners-v2-head p, .registration-v2-head p { margin: 0; }
.agenda-v2-timeline { position: relative; }
.agenda-v2-item { display: grid; grid-template-columns: 84px 150px 1fr; gap: 24px; min-height: 126px; }
.agenda-v2-rail { position: relative; display: flex; flex-direction: column; align-items: center; }
.agenda-v2-rail span { width: 42px; height: 42px; border: 1px solid var(--line-2); border-radius: 50%; display: grid; place-items: center; color: var(--cyan); background: var(--bg); font: 700 .72rem 'Space Grotesk', sans-serif; z-index: 2; }
.agenda-v2-rail i { width: 1px; flex: 1; min-height: 84px; background: var(--line-2); }
.agenda-v2-item:last-child .agenda-v2-rail i { display: none; }
.agenda-v2-time { padding-top: 10px; color: var(--cyan-2); text-transform: uppercase; letter-spacing: .13em; font-size: .74rem; font-weight: 800; }
.agenda-v2-copy { padding: 7px 0 34px; border-bottom: 1px solid var(--line); }
.agenda-v2-item:last-child .agenda-v2-copy { border-bottom: 0; }
.agenda-v2-copy h3 { margin: 0 0 8px; font: 700 1.3rem/1.3 'Space Grotesk', sans-serif; }
.agenda-v2-copy p { margin: 0; color: var(--muted); line-height: 1.75; }
.agenda-v2-meta { margin-top: 8px; }
.agenda-v2-meta span { display: block; line-height: 1.5; }

/* Agenda people */
.agenda-v2-people { margin-top: 22px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.agenda-v2-people-single { grid-template-columns: minmax(0, 620px); }
.agenda-v2-person { min-width: 0; padding: 15px 16px; border: 1px solid rgba(255,255,255,.075); border-radius: 14px; background: linear-gradient(135deg, rgba(255,255,255,.035), rgba(255,255,255,.012)); transition: transform .22s ease, border-color .22s ease, background .22s ease; }
.agenda-v2-person:hover { transform: translateY(-2px); border-color: color-mix(in srgb, var(--cyan) 28%, transparent); background: linear-gradient(135deg, rgba(70,184,255,.055), rgba(255,255,255,.018)); }
.agenda-v2-person-head { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 12px; align-items: start; }
.agenda-v2-label { display: inline-flex; align-items: center; justify-content: center; width: fit-content; min-width: 70px; margin-top: 2px; padding: 6px 8px; border: 1px solid rgba(70,184,255,.18); border-radius: 999px; background: rgba(70,184,255,.08); color: var(--cyan-2); font: 800 .57rem/1 'Space Grotesk', sans-serif; letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; }
.agenda-v2-label-moderator { border-color: rgba(187,132,255,.22); background: rgba(187,132,255,.09); color: #d7b9ff; }
.agenda-v2-label-panelist { border-color: rgba(255,255,255,.12); background: rgba(255,255,255,.045); color: #cbd9e8; }
.agenda-v2-person-identity { min-width: 0; }
.agenda-v2-name { margin: 0 0 4px; color: #fff; font: 700 1rem/1.25 'Space Grotesk', sans-serif; letter-spacing: -.015em; overflow-wrap: anywhere; }
.agenda-v2-primary-role { margin: 0 !important; color: #b9cadb !important; font-size: .78rem; line-height: 1.5 !important; overflow-wrap: anywhere; }
.agenda-v2-secondary-roles { margin: 11px 0 0 82px; padding-top: 10px; border-top: 1px solid rgba(255,255,255,.06); display: grid; gap: 5px; }
.agenda-v2-secondary-role { position: relative; padding-left: 11px; color: #758ba3; font-size: .69rem; line-height: 1.5; overflow-wrap: anywhere; }
.agenda-v2-secondary-role::before { content: ''; position: absolute; left: 0; top: .62em; width: 4px; height: 4px; border-radius: 50%; background: rgba(70,184,255,.55); }

/* Speakers */
.speakers-v2 { background: rgba(255,255,255,.012); }
.speaker-v2-group-label { display: flex; gap: 14px; align-items: center; margin-bottom: 20px; }
.speaker-v2-group-label span { color: var(--cyan); font: 700 .72rem 'Space Grotesk', sans-serif; }
.speaker-v2-group-label h3 { margin: 0; font: 700 1.15rem 'Space Grotesk', sans-serif; letter-spacing: -.02em; }
.speaker-v2-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; align-items: stretch; grid-auto-rows: 1fr; }
.speaker-v2-card { overflow: hidden; width: 100%; height: 100%; min-width: 0; padding: 0; display: flex; flex-direction: column; align-self: stretch; appearance: none; text-align: left; color: var(--text); border: 1px solid var(--line); border-radius: 20px; background: linear-gradient(180deg, rgba(13,26,45,.9), rgba(8,17,30,.9)); box-shadow: none; cursor: pointer; transition: .25s ease; }
.speaker-v2-card:hover { transform: translateY(-5px); border-color: color-mix(in srgb, var(--cyan) 42%, transparent); box-shadow: var(--shadow); }
.speaker-v2-card:focus-visible { outline: 2px solid var(--cyan); outline-offset: 3px; }
.speaker-v2-photo-wrap { position: relative; width: 100%; aspect-ratio: 1/1.02; flex: 0 0 auto; overflow: hidden; background: linear-gradient(135deg, #112947, #0a1729); }
.speaker-v2-image { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.speaker-v2-monogram { width: 100%; height: 100%; display: grid; place-items: center; color: #b8dcf3; font: 700 5rem 'Space Grotesk', sans-serif; background: radial-gradient(circle at 30% 30%, rgba(70,184,255,.22), transparent 32%), linear-gradient(145deg, #122945, #091727); }
.speaker-v2-role { position: absolute; left: 14px; bottom: 14px; padding: 8px 10px; border-radius: 8px; background: rgba(4,10,18,.82); backdrop-filter: blur(8px); color: #d9efff; font-size: .66rem; font-weight: 800; text-transform: uppercase; letter-spacing: .11em; }
.speaker-v2-body { min-width: 0; flex: 1 1 auto; display: flex; flex-direction: column; padding: 18px; }
.speaker-v2-body h3 { min-height: 2.95rem; margin: 0 0 9px; font: 700 1.18rem/1.25 'Space Grotesk', sans-serif; overflow-wrap: anywhere; }
.speaker-v2-designation, .speaker-v2-organization { margin: 0; color: var(--muted); font-size: .86rem; line-height: 1.55; overflow-wrap: anywhere; }
.speaker-v2-organization { color: #d4e3f3; }
.speaker-v2-more { display: flex; justify-content: space-between; align-items: center; width: 100%; margin-top: auto; padding-top: 14px; border-top: 1px solid var(--line); color: var(--cyan-2); font-size: .8rem; font-weight: 700; }
.speaker-v2-more i { font-style: normal; flex: 0 0 auto; }
.speaker-detail-modal .modal-content { overflow: hidden; border: 1px solid var(--line-2); border-radius: 24px; background: #0a1728; color: var(--text); }
.speaker-modal-dialog { max-width: 1040px; }
.speaker-modal-close { position: absolute; right: 18px; top: 18px; z-index: 5; filter: invert(1); }
.speaker-modal-grid { display: grid; grid-template-columns: 360px 1fr; }
.speaker-modal-media { padding: 22px; border-right: 1px solid var(--line); }
.speaker-modal-image, .speaker-modal-photo { width: 100%; height: 100%; min-height: 390px; border-radius: 16px; object-fit: cover; background: #10233d; }
.speaker-modal-photo { display: grid; place-items: center; font: 700 5rem 'Space Grotesk', sans-serif; }
.speaker-modal-content { padding: 36px; }
.speaker-modal-content h3 { margin: 14px 0 18px; font: 700 clamp(2rem,4vw,3rem)/1 'Space Grotesk', sans-serif; }
.speaker-type-badge { display: inline-flex; padding: 7px 10px; border-radius: 8px; background: rgba(70,184,255,.12); color: var(--cyan-2); font-size: .68rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.speaker-modal-profile { padding: 13px 0; border-bottom: 1px solid var(--line); }
.speaker-modal-designation, .speaker-modal-organization, .speaker-modal-bio p { margin: 0; color: var(--muted); line-height: 1.7; }
.speaker-modal-organization { color: #d4e3f3; }
.speaker-modal-bio { margin-top: 20px; }

/* Why attend */
.connect-v2-shell { display: grid; grid-template-columns: .9fr 1.1fr; border: 1px solid var(--line-2); border-radius: 24px; overflow: hidden; background: linear-gradient(135deg, #0c2138, #08121f 68%); box-shadow: var(--shadow); }
.connect-v2-intro { padding: clamp(34px,5vw,62px); border-right: 1px solid var(--line); }
.connect-v2-intro h2 { margin: 20px 0 18px; font: 700 clamp(2.3rem,4.6vw,4.25rem)/.98 'Space Grotesk', sans-serif; letter-spacing: -.05em; }
.connect-v2-intro p { margin: 0 0 26px; color: #b6c7da; line-height: 1.8; }
.connect-v2-pillars { display: grid; grid-template-rows: repeat(3, 1fr); }
.connect-v2-pillars article { position: relative; padding: 30px 34px 28px 78px; display: flex; flex-direction: column; justify-content: center; }
.connect-v2-pillars article + article { border-top: 1px solid var(--line); }
.connect-v2-pillars span { position: absolute; left: 28px; top: 34px; color: var(--cyan); font: 700 .72rem 'Space Grotesk', sans-serif; }
.connect-v2-pillars h3 { margin: 0 0 7px; font: 700 1.2rem 'Space Grotesk', sans-serif; }
.connect-v2-pillars p { margin: 0; color: var(--muted); line-height: 1.7; }

/* Partners */
.partners-v2 { padding-top: 100px; }
.partners-v2-panel { padding: 24px; border-radius: 20px; background: #f7f9fc; box-shadow: var(--shadow); }
.partners-v2-panel img { width: 100%; }

/* Registration */
.registration-v2 { background: linear-gradient(180deg, rgba(11,28,49,.42), rgba(7,16,29,.06)); }
.registration-v2-head h2 { margin: 20px 0 0; font: 700 clamp(2.4rem,4.5vw,4rem)/1 'Space Grotesk', sans-serif; letter-spacing: -.05em; }
.registration-v2-head p { color: var(--muted); line-height: 1.8; }
.registration-v2-passes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.registration-v2-passes.registration-v2-single { grid-template-columns: minmax(0, 1fr); max-width: 520px; }
.pass-card { position: relative; min-height: 250px; padding: 28px; border: 1px solid var(--line); border-radius: 20px; background: rgba(9,20,36,.76); }
.pass-card-featured { border-color: color-mix(in srgb, var(--cyan) 44%, transparent); background: linear-gradient(145deg, color-mix(in srgb, var(--cyan) 11%, #0b1a2d), #0a1728); }
.pass-tag { display: inline-flex; min-width: 40px; height: 30px; padding: 0 10px; align-items: center; justify-content: center; border-radius: 8px; background: rgba(255,255,255,.04); color: var(--cyan); font: 700 .7rem 'Space Grotesk', sans-serif; }
.pass-card h3 { margin: 50px 0 12px; font: 700 1.15rem 'Space Grotesk', sans-serif; }
.pass-card strong { display: block; font: 700 clamp(1.8rem,3vw,2.5rem) 'Space Grotesk', sans-serif; letter-spacing: -.04em; }
.pass-card small { display: block; margin-top: 7px; color: var(--muted); }
.registration-v2-bottom { margin-top: 24px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.registration-v2-notes { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px 18px; color: var(--muted); font-size: .82rem; }
.registration-v2-notes span::before { content: '•'; color: var(--cyan); margin-right: 8px; }

/* Contact */
.contact-v2 { padding-top: 90px; }
.contact-v2-shell { display: grid; grid-template-columns: 1.15fr .85fr; gap: 48px; align-items: center; padding: 42px; border-top: 1px solid var(--line-2); border-bottom: 1px solid var(--line-2); }
.contact-v2-copy h2 { margin: 18px 0 0; max-width: 16ch; font: 700 clamp(2.3rem,4.8vw,4.5rem)/.98 'Space Grotesk', sans-serif; letter-spacing: -.055em; }
.contact-v2-side { display: grid; gap: 24px; justify-items: start; }
.contact-v2-meta { display: grid; gap: 14px; }
.contact-v2-meta div { display: grid; gap: 4px; }
.contact-v2-meta small { color: var(--cyan-2); text-transform: uppercase; letter-spacing: .12em; font-size: .66rem; font-weight: 800; }
.contact-v2-meta span { color: #d7e6f5; line-height: 1.5; overflow-wrap: anywhere; }

/* Footer */
.footer { padding: 36px 0 46px; }
.footer .container { padding-top: 28px; border-top: 1px solid var(--line); }
.footer-top, .footer-bottom { display: flex; justify-content: space-between; gap: 24px; align-items: center; }
.footer-logo { height: 84px; width: auto; max-width: 250px; object-fit: contain; }
.footer-nav { display: flex; flex-wrap: wrap; gap: 12px 20px; }
.footer-nav a, .footer-bottom a, .footer-bottom span { color: var(--muted); font-size: .86rem; }
.footer-nav a:hover, .footer-bottom a:hover { color: #fff; }
.footer-mid { margin: 24px 0; padding: 22px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.footer-mid small { display: block; margin-bottom: 7px; color: #7188a5; text-transform: uppercase; letter-spacing: .11em; font-size: .62rem; font-weight: 800; }
.footer-mid strong { font-size: .9rem; line-height: 1.5; }

@media (max-width: 1199px) {
    .hero-v2-grid { grid-template-columns: 1fr 430px; gap: 46px; }
    .speaker-v2-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 991px) {
    .site-header { padding-top: 10px; }
    .nav-shell { border-radius: 16px; }
    .navbar-collapse { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--line); }
    .hero-v2 { padding-top: 52px; }
    .hero-v2-grid, .about-v2-layout, .focus-v2-head, .agenda-v2-head, .speakers-v2-head, .partners-v2-head, .registration-v2-head, .connect-v2-shell, .contact-v2-shell { grid-template-columns: 1fr; }
    .hero-v2-board { max-width: 680px; }
    .about-v2-stats, .registration-v2-passes { grid-template-columns: 1fr; }
    .about-v2-stat { min-height: auto; }
    .about-v2-stat + .about-v2-stat { border-left: 0; border-top: 1px solid var(--line-2); }
    .focus-v2-row { grid-template-columns: 56px 1fr 44px; padding: 22px 0; }
    .focus-v2-row p { grid-column: 2 / 3; }
    .focus-v2-row i { grid-column: 3; grid-row: 1 / span 2; }
    .speaker-v2-grid { grid-template-columns: repeat(2, 1fr); }
    .connect-v2-intro { border-right: 0; border-bottom: 1px solid var(--line); }
    .contact-v2-shell { padding: 36px 0; }
    .footer-mid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767px) {
    .section { padding: 84px 0; }
    .brand-logo { height: 46px; max-width: 180px; }
    .hero-v2 h1 { font-size: clamp(3rem, 15vw, 4.8rem); }
    .hero-v2-meta { grid-template-columns: 1fr; }
    .hero-v2-meta-item { min-height: auto; padding: 18px 0; }
    .hero-v2-meta-item + .hero-v2-meta-item { border-left: 0; border-top: 1px solid var(--line); padding-left: 0; }
    .hero-v2-signals { grid-template-columns: 1fr; }
    .hero-v2-signal:nth-child(odd) { border-right: 0; }
    .hero-v2-ticker { align-items: flex-start; flex-wrap: wrap; padding: 14px 16px; }
    .agenda-v2-item { grid-template-columns: 48px 1fr; gap: 14px; }
    .agenda-v2-time { grid-column: 2; padding-top: 0; }
    .agenda-v2-copy { grid-column: 2; padding-top: 0; }
    .agenda-v2-rail { grid-row: 1 / span 2; }
    .agenda-v2-people, .agenda-v2-people-single { grid-template-columns: 1fr; }
    .agenda-v2-person { padding: 14px; }
    .agenda-v2-person-head { grid-template-columns: 1fr; gap: 9px; }
    .agenda-v2-label { min-width: 0; }
    .agenda-v2-secondary-roles { margin-left: 0; }
    .speaker-v2-grid { grid-template-columns: 1fr; }
    .speaker-modal-grid { grid-template-columns: 1fr; }
    .speaker-modal-media { border-right: 0; border-bottom: 1px solid var(--line); }
    .connect-v2-pillars article { padding-left: 68px; }
    .registration-v2-bottom, .footer-top, .footer-bottom { flex-direction: column; align-items: flex-start; }
    .registration-v2-notes { justify-content: flex-start; }
    .footer-mid { grid-template-columns: 1fr; }
    .footer-logo { height: 70px; }
}

/* Speaker modal interaction fix */
.speakers-v2 > .container {
    z-index: auto;
}
.speaker-detail-modal {
    z-index: 1200 !important;
}
.modal-backdrop {
    z-index: 1190 !important;
}
.speaker-modal-close {
    top: 16px;
    right: 16px;
    z-index: 20;
    width: 48px;
    height: 48px;
    padding: 0;
    border-radius: 50%;
    background-color: rgba(255,255,255,.09);
    background-size: 16px;
    opacity: 1;
    cursor: pointer;
    pointer-events: auto;
    transition: background-color .2s ease, transform .2s ease;
}
.speaker-modal-close:hover,
.speaker-modal-close:focus {
    background-color: rgba(255,255,255,.16);
    transform: scale(1.04);
    opacity: 1;
    box-shadow: 0 0 0 3px rgba(70,184,255,.18);
}
body.modal-open .site-header {
    pointer-events: none;
}
