:root{--purple:#321651;--purple-deep:#190b2a;--purple-soft:#efe7f7;--orange:#d85b2d;--orange-bright:#f2763d;--ink:#201827;--muted:#6e6672;--paper:#fbf9fc;--white:#fff;--line:#ded7e3;--ease:cubic-bezier(.22,1,.36,1);--shadow:0 24px 80px rgba(31,11,48,.14)}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.6}
body.modal-open{overflow:hidden}
button,input{font:inherit}
button,a{touch-action:manipulation}
a{color:inherit}
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:1000;background:#fff;padding:.75rem 1rem;border-radius:.5rem}
.skip-link:focus{top:1rem}
.site-header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.25rem,5vw,5rem);background:rgba(251,249,252,.92);border-bottom:1px solid rgba(49,22,81,.1);position:sticky;top:0;z-index:50;backdrop-filter:blur(16px)}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;line-height:1}
.brand-mark{width:40px;height:48px;border-radius:20px 20px 8px 8px;display:grid;place-items:center;background:var(--purple);color:#fff;font-family:Manrope,sans-serif;font-size:1.35rem;font-weight:800}
.brand strong,.brand small{display:block}
.brand strong{font:800 1.05rem/1 Manrope,sans-serif}
.brand small{margin-top:.25rem;color:var(--orange);font-size:.69rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.site-header nav{display:flex;align-items:center;gap:2rem}
.site-header nav>a{font-size:.88rem;font-weight:700;text-decoration:none}
.menu-button{display:none;background:none;border:0}
.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--orange);border-radius:8px;padding:.85rem 1.35rem;background:var(--orange);color:#fff;font-weight:800;text-decoration:none;cursor:pointer;box-shadow:0 9px 24px rgba(216,91,45,.2);transition:transform 180ms var(--ease),background-color 180ms var(--ease),box-shadow 180ms var(--ease)}
.button:active{transform:scale(.97)}
.button-small{min-height:42px;padding:.65rem 1rem;font-size:.84rem}
.button-outline{background:transparent;color:var(--purple);border-color:rgba(49,22,81,.24);box-shadow:none}
.button-wide{width:100%}
.text-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--purple);font-weight:800;text-underline-offset:.25rem}
.text-link.light{color:#fff}
.hero{position:relative;min-height:calc(100vh - 82px);display:flex;align-items:center;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,5vw,5rem);overflow:hidden;background:linear-gradient(90deg,rgba(24,8,40,.96) 0%,rgba(31,11,50,.84) 46%,rgba(31,11,50,.08) 78%),url("assets/giraffe-rise.png") center/cover no-repeat}
.hero-copy{position:relative;z-index:1;max-width:720px;color:#fff}
.eyebrow,.section-kicker{margin:0 0 1.2rem;color:var(--orange);font-size:.77rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.hero h1,.section h2,.final-cta h2,.access-dialog h2{margin:0;font:800 clamp(3.6rem,6.5vw,7.6rem)/.9 Manrope,sans-serif;letter-spacing:-.065em}
.hero h1 em{display:block;color:#ff8b53;font-style:normal}
.hero-lede{max-width:610px;margin:1.8rem 0 0;color:#e1d7e7;font-size:clamp(1.05rem,1.6vw,1.3rem)}
.hero-actions{display:flex;align-items:center;gap:1.5rem;margin-top:2rem}
.hero-facts{display:grid;grid-template-columns:repeat(3,1fr);max-width:600px;margin:3.5rem 0 0;border-top:1px solid rgba(255,255,255,.3)}
.hero-facts div{padding:1.1rem 1rem 0 0}
.hero-facts div+div{padding-left:1.2rem;border-left:1px solid rgba(255,255,255,.22)}
.hero-facts dt{font:800 1.1rem Manrope,sans-serif}
.hero-facts dd{margin:.15rem 0 0;color:#cfc1d7;font-size:.8rem}
.hero .text-link{color:#fff}
.hero-caption{position:absolute;right:clamp(1.25rem,5vw,5rem);bottom:2rem;margin:0;color:#fff;font-weight:800}
.hero-caption span{color:#ff8b53}
.marquee{overflow:hidden;background:var(--purple);color:#fff}
.marquee>div{display:flex;width:max-content;gap:1.2rem;padding:.8rem 0;animation:marquee 28s linear infinite}
.marquee span{font:700 .75rem Manrope,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.marquee i{color:var(--orange);font-size:.6rem}
@keyframes marquee{to{transform:translateX(-28%)}
}
.section{padding:clamp(5rem,9vw,9rem) clamp(1.25rem,5vw,5rem)}
.section-kicker{display:flex;gap:.65rem;align-items:center}
.section-kicker span{color:var(--purple)}
.split-intro{display:grid;grid-template-columns:.35fr 1.65fr;gap:clamp(2rem,6vw,8rem)}
.section h2,.final-cta h2,.access-dialog h2{font-size:clamp(2.4rem,4.7vw,5.1rem);max-width:920px}
.lead{max-width:900px;margin:1.8rem 0 3rem;font-size:clamp(1.15rem,1.8vw,1.55rem);color:var(--muted)}
.format-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.format-grid article{padding:2rem 1.8rem 0 0}
.format-grid article+article{padding-left:1.8rem;border-left:1px solid var(--line)}
.format-grid b{display:flex;align-items:baseline;gap:.5rem;color:var(--orange);font:800 2.6rem Manrope,sans-serif}
.format-grid b small{font:800 .72rem Manrope,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.format-grid h3{margin:.5rem 0;font:800 1.12rem Manrope,sans-serif}
.format-grid p{margin:0;color:var(--muted)}
.agenda-section{background:var(--purple-deep);color:#fff}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:3rem;margin-bottom:3rem}
.section-heading>p{max-width:470px;margin:0;color:var(--muted)}
.agenda-section .section-heading>p{color:#c6b9ce}
.agenda-section .section-kicker span{color:#fff}
.agenda-opening{display:grid;grid-template-columns:minmax(170px,.35fr) 1.65fr;gap:clamp(2rem,6vw,7rem);align-items:start;padding:1.8rem 0 2.2rem;border-top:1px solid rgba(255,255,255,.24);border-bottom:1px solid rgba(255,255,255,.24)}
.agenda-opening time{color:#ff8b53;font:800 1rem Manrope,sans-serif}
.agenda-opening span,.agenda-theme{color:#bdaec8;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.agenda-opening h3{max-width:860px;margin:.35rem 0 .6rem;font:800 clamp(1.5rem,2.6vw,2.7rem)/1.08 Manrope,sans-serif;letter-spacing:-.04em}
.agenda-opening p{max-width:760px;margin:0;color:#c6b9ce}
.agenda-list{counter-reset:agenda;margin-top:0}
.agenda-block{counter-increment:agenda;display:grid;grid-template-columns:minmax(260px,.72fr) 1.28fr;gap:clamp(2.5rem,6vw,7rem);padding:clamp(3rem,5vw,5rem) 0;border-bottom:1px solid rgba(255,255,255,.2)}
.agenda-block-intro{position:relative}
.agenda-block-intro:before{content:"0" counter(agenda);display:block;margin-bottom:2rem;color:rgba(255,255,255,.15);font:800 clamp(4rem,8vw,8rem)/.7 Manrope,sans-serif;letter-spacing:-.08em}
.agenda-meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center;color:#ff8b53;font-size:.78rem;font-weight:800}
.agenda-meta span{text-transform:uppercase;letter-spacing:.12em}
.agenda-theme{margin:.9rem 0 .4rem}
.agenda-block h3{max-width:520px;margin:0;font:800 clamp(2rem,3.1vw,3.5rem)/.98 Manrope,sans-serif;letter-spacing:-.05em}
.agenda-sequence{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-bottom:2rem;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.16);border-radius:8px;overflow:hidden}
.agenda-sequence div{padding:1.05rem;background:#211030}
.agenda-sequence b{display:block;color:#ff8b53;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}
.agenda-sequence span{display:block;margin-top:.25rem;font-size:.86rem;font-weight:700;line-height:1.3}
.talk-list{margin:0;padding:0;list-style:none;counter-reset:talk}
.talk-list li{counter-increment:talk;display:grid;grid-template-columns:42px 1fr;gap:1rem;align-items:start;padding:1rem 0}
.talk-list li+li{border-top:1px solid rgba(255,255,255,.12)}
.talk-list li:before{content:counter(talk);width:32px;height:32px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.22);border-radius:50%;color:#ff8b53;font-size:.72rem;font-weight:800}
.talk-list span{font:700 clamp(1rem,1.35vw,1.18rem)/1.4 Manrope,sans-serif}
.speaker-section{background:#f4eef7}
.speaker-filters{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:2rem}
.filter-button{border:1px solid #d3c8da;border-radius:100px;background:transparent;color:var(--purple);padding:.55rem .9rem;font-size:.78rem;font-weight:800;cursor:pointer}
.filter-button[aria-pressed="true"]{background:var(--purple);color:#fff}
.speaker-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}
.speaker-card{min-width:0;background:#fff;border:1px solid #e1d9e6;border-radius:8px;overflow:hidden;box-shadow:0 10px 28px rgba(49,22,81,.05);transition:transform 200ms var(--ease),box-shadow 200ms var(--ease)}
.speaker-card[hidden]{display:none}
.speaker-portrait{position:relative;aspect-ratio:4/4.5;display:grid;place-items:center;overflow:hidden;background:linear-gradient(150deg,var(--purple) 0 66%,var(--orange) 66%)}
.speaker-portrait:before{content:"";width:46%;height:46%;border:1px solid rgba(255,255,255,.22);border-radius:50%;box-shadow:0 0 0 18px rgba(255,255,255,.04),0 0 0 36px rgba(255,255,255,.03)}
.speaker-portrait strong{position:absolute;right:.8rem;bottom:.5rem;color:#fff;font:800 3rem Manrope,sans-serif;opacity:.9}
.speaker-body{padding:1rem}
.speaker-body>span{color:var(--orange);font-size:.66rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.speaker-body h3{margin:.25rem 0 0;font:800 1rem/1.3 Manrope,sans-serif}
.speaker-body p{min-height:2.8em;margin:.35rem 0 .8rem;color:var(--muted);font-size:.76rem;line-height:1.4}
.socials{display:flex;gap:.45rem}
.socials span{width:26px;height:26px;display:grid;place-items:center;border:1px solid #ded6e2;border-radius:50%;color:#8b8190}
.socials svg{width:12px;height:12px}
.host-section{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,6vw,7rem);align-items:center;background:var(--purple);color:#fff}
.host-image{overflow:hidden;border-radius:8px;box-shadow:0 30px 80px rgba(0,0,0,.28)}
.host-image img{display:block;width:100%;height:auto}
.host-copy p:not(.eyebrow){max-width:600px;color:#d5c9dd;font-size:1.12rem}
.outcome-head{display:flex;justify-content:space-between;align-items:end;gap:3rem}
.outcome-head p{max-width:430px;color:var(--muted)}
.outcome-list{margin-top:3.5rem;border-top:1px solid var(--line)}
.outcome-list article{display:grid;grid-template-columns:70px .65fr 1.35fr;gap:2rem;align-items:center;padding:1.5rem 0;border-bottom:1px solid var(--line)}
.outcome-list article>span{color:var(--orange);font-weight:800}
.outcome-list h3{margin:0;font:800 clamp(1.3rem,2vw,2rem) Manrope,sans-serif}
.outcome-list p{margin:0;color:var(--muted)}
.value-section{background:#fff;border-top:1px solid var(--line)}
.value-heading{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(3rem,8vw,9rem);align-items:end;margin-bottom:3.5rem}
.value-label{margin:0 0 1rem;color:var(--orange);font-size:.77rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.value-heading h2{max-width:850px}
.value-heading>div>p:last-child{max-width:700px;margin:1.4rem 0 0;color:var(--muted);font-size:1.08rem}
.value-total{padding-left:2rem;border-left:4px solid var(--orange)}
.value-total span{display:block;color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.value-total strong{display:block;margin-top:.3rem;color:var(--purple);font:800 clamp(2.8rem,5vw,5rem)/1 Manrope,sans-serif;letter-spacing:-.06em}
.value-stack{border-top:1px solid var(--line)}
.value-stack article{display:grid;grid-template-columns:64px 1fr auto;gap:clamp(1rem,3vw,3rem);align-items:center;padding:1.6rem 0;border-bottom:1px solid var(--line)}
.value-stack article>span{color:var(--orange);font-weight:800}
.value-stack h3{margin:0;font:800 clamp(1.15rem,1.8vw,1.55rem) Manrope,sans-serif}
.value-stack p{max-width:720px;margin:.35rem 0 0;color:var(--muted)}
.value-stack article>strong{color:var(--purple);font:800 clamp(1rem,1.8vw,1.35rem) Manrope,sans-serif;white-space:nowrap}
.priceless-row{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:1.25rem;padding:1.5rem 1.7rem;border-radius:8px;background:var(--purple);color:#fff}
.priceless-row p{margin:0;font-weight:700}
.priceless-row strong{color:#ff8b53;font:800 clamp(1.5rem,2.5vw,2.2rem) Manrope,sans-serif}
.tickets-section{background:#f4eef7}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;align-items:stretch}
.price-card{display:flex;flex-direction:column;padding:2rem;background:#fff;border:1px solid #ddd3e3;border-radius:8px}
.price-card.featured{background:var(--purple);color:#fff;transform:translateY(-12px);box-shadow:var(--shadow)}
.price-card p{margin:0;color:var(--orange);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem}
.price-card>span{color:var(--muted);font-size:.82rem}
.price-card.featured>span{color:#c8b9d1}
.price-card strong{display:block;margin:1.5rem 0;font:800 clamp(3rem,4vw,4.5rem) Manrope,sans-serif}
.price-card sup{font-size:1.25rem}
.price-card ul{flex:1;margin:0 0 2rem;padding:0;list-style:none}
.price-card li{padding:.65rem 0;border-top:1px solid rgba(49,22,81,.12);font-size:.9rem}
.price-card.featured li{border-color:rgba(255,255,255,.13)}
.final-cta{position:relative;display:flex;align-items:end;justify-content:space-between;gap:3rem;padding:clamp(4rem,7vw,7rem) clamp(1.25rem,7vw,8rem);overflow:hidden;background:linear-gradient(90deg,rgba(25,11,42,.98),rgba(25,11,42,.82)),url("assets/giraffe-rise.png") center 42%/cover no-repeat;color:#fff}
.final-cta:before{content:"";position:absolute;inset:0;border-top:1px solid rgba(255,255,255,.12);pointer-events:none}
.final-cta-copy{position:relative;z-index:1}
.final-cta p{max-width:620px;margin:0 0 1rem;color:#d6cadf;font-size:1.05rem}
.final-cta h2{max-width:700px;font-size:clamp(2.8rem,5.2vw,5.6rem)}
.final-cta>.button{position:relative;z-index:1;flex:0 0 auto}
footer{display:grid;grid-template-columns:1fr 1.5fr auto;align-items:center;gap:2rem;padding:2rem clamp(1.25rem,5vw,5rem);background:#100719;color:#c5b8cb;border-top:1px solid rgba(255,255,255,.1);font-size:.8rem}
.footer-brand{color:#fff}
.footer-brand .brand-mark{background:var(--orange)}
footer a:last-child{color:#fff}
.access-dialog{width:min(650px,calc(100% - 2rem));padding:0;border:0;border-radius:12px;box-shadow:0 40px 140px rgba(20,5,33,.45);color:var(--ink)}
.access-dialog::backdrop{background:rgba(17,5,29,.78);backdrop-filter:blur(7px)}
.access-dialog form{min-height:520px;padding:clamp(2rem,6vw,4rem);display:flex;align-items:center}
.dialog-close{position:absolute;right:1rem;top:1rem;width:40px;height:40px;border:0;border-radius:50%;background:#f1ebf4;color:var(--purple);font-size:1.5rem;cursor:pointer}
.dialog-progress{height:4px;background:#eee6f1}
.dialog-progress span{display:block;width:50%;height:100%;background:var(--orange);transition:width 300ms var(--ease)}
.form-step{display:none;width:100%}
.form-step.is-active{display:block;animation:step-in 300ms var(--ease)}
@keyframes step-in{from{opacity:0;transform:translateY(8px)}
to{opacity:1;transform:none}
}
.access-dialog h2{font-size:clamp(2.1rem,5vw,3.7rem)}
.access-dialog p{color:var(--muted)}
.step-count{margin:0 0 .5rem;color:#9b8da5!important;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.access-dialog label:not(.check-field){display:block;margin-top:1rem}
.access-dialog label>span{display:block;margin-bottom:.35rem;font-size:.78rem;font-weight:800}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.access-dialog input:not([type="checkbox"]){width:100%;height:52px;border:1px solid #cfc5d4;border-radius:7px;padding:0 .9rem;background:#fff;color:var(--ink);outline:0}
.access-dialog input:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(216,91,45,.14)}
.check-field{display:grid;grid-template-columns:20px 1fr;gap:.6rem;align-items:start;margin:1.1rem 0}
.check-field input{margin-top:.18rem;accent-color:var(--orange)}
.check-field span{font-size:.76rem;color:var(--muted)}
.form-error{min-height:1.4em;margin:.4rem 0;color:#b52c2c!important;font-size:.78rem;font-weight:700}
.back-button{display:block;margin:1rem auto 0;border:0;background:transparent;color:var(--purple);font-weight:800;cursor:pointer}
.success-step{text-align:center}
.success-mark{width:64px;height:64px;display:grid;place-items:center;margin:0 auto 1.2rem;border-radius:50%;background:var(--purple);color:#fff;font-size:2rem}
.reveal{opacity:0;transform:translateY(18px);transition:opacity 650ms var(--ease),transform 650ms var(--ease)}
.reveal.is-visible{opacity:1;transform:none}

@media (hover:hover) and (pointer:fine){.button:hover{transform:translateY(-2px);background:var(--orange-bright);box-shadow:0 14px 30px rgba(216,91,45,.27)}
.button-outline:hover{color:#fff}
.site-header nav>a:hover,.text-link:hover{color:var(--orange)}
.speaker-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(49,22,81,.12)}
.filter-button:hover{border-color:var(--purple)}
}

@media (max-width:1100px){
.hero h1{font-size:clamp(3.4rem,6vw,5rem)}
.speaker-grid{grid-template-columns:repeat(4,1fr)}
}

@media (max-width:820px){.site-header{height:70px}
.menu-button{display:flex;align-items:center;gap:.5rem;border:0;background:none;color:var(--purple);font-weight:800}
.menu-button i,.menu-button i:before,.menu-button i:after{display:block;width:18px;height:2px;background:currentColor;content:""}
.menu-button i{position:relative}
.menu-button i:before{position:absolute;top:-6px}
.menu-button i:after{position:absolute;top:6px}
.site-header nav{display:none;position:absolute;left:1rem;right:1rem;top:62px;flex-direction:column;align-items:stretch;gap:0;padding:.8rem;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}
.site-header nav.is-open{display:flex}
.site-header nav>a{padding:.8rem}
.hero{min-height:calc(100svh - 70px);background-position:60% center}
.split-intro{grid-template-columns:1fr}
.format-grid{grid-template-columns:1fr}
.format-grid article,.format-grid article+article{padding:1.2rem 0;border-left:0;border-top:1px solid var(--line)}
.section-heading,.outcome-head{display:block}
.section-heading>p,.outcome-head p{margin-top:1.5rem}
.value-heading{grid-template-columns:1fr;gap:2rem}
.value-total{max-width:440px}
.agenda-opening,.agenda-block{grid-template-columns:1fr;gap:1.5rem}
.agenda-block-intro:before{margin-bottom:1.2rem}
.agenda-block h3{max-width:680px}
.speaker-grid{grid-template-columns:repeat(3,1fr)}
.host-section{grid-template-columns:1fr}
.pricing-grid{grid-template-columns:1fr}
.price-card.featured{transform:none}
.final-cta{align-items:flex-start;flex-direction:column}
footer{grid-template-columns:1fr}
.footer-brand{justify-self:start}
}

@media (max-width:560px){.hero{padding-top:4rem;background-image:linear-gradient(90deg,rgba(24,8,40,.97) 0%,rgba(31,11,50,.86) 68%,rgba(31,11,50,.5) 100%),url("assets/giraffe-rise.png");background-position:64% center}
.hero h1{font-size:3.35rem}
.hero-caption{display:none}
.hero-actions{align-items:stretch;flex-direction:column}
.hero-facts{grid-template-columns:1fr}
.hero-facts div,.hero-facts div+div{display:grid;grid-template-columns:1fr 1fr;padding:.8rem 0;border-left:0;border-bottom:1px solid var(--line)}
.hero-facts dd{text-align:right}
.agenda-sequence{grid-template-columns:1fr}
.agenda-block{padding:3.5rem 0}
.speaker-grid{grid-template-columns:repeat(2,1fr);gap:.7rem}
.speaker-body{padding:.8rem}
.speaker-body h3{font-size:.9rem}
.outcome-list article{grid-template-columns:42px 1fr}
.outcome-list article p{grid-column:2}
.value-stack article{grid-template-columns:38px 1fr;gap:.8rem 1rem}
.value-stack article>strong{grid-column:2;white-space:normal}
.priceless-row{align-items:flex-start;flex-direction:column;gap:.5rem}
.field-row{grid-template-columns:1fr}
.final-cta{align-items:stretch}
.final-cta>.button{width:100%}
}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}
.marquee>div{animation:none}
.reveal{opacity:1;transform:none;transition:none}
.button,.speaker-card,.dialog-progress span{transition:none}
.form-step.is-active{animation:none}
}
