@font-face{font-family:"IBM Plex Mono";src:url("fonts/ibm-plex-mono-500.ttf") format("truetype");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url("fonts/ibm-plex-mono-600.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url("fonts/ibm-plex-mono-700.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
:root{--bg:#090909;--panel:#141414;--text:#f7f7f7;--muted:#aaa;--line:#343434;--blue:#777;--cyan:#e70101;--lime:#fff;--paper:#f4f4f4;--ink:#171717}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;line-height:1.6}a{color:inherit}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3rem,8vw,7rem);line-height:.93;letter-spacing:-.07em;margin-bottom:1.5rem}h1 span{color:var(--cyan)}h2{font-size:clamp(2rem,4vw,4rem);line-height:1.05;letter-spacing:-.05em}h3{font-size:1.2rem}.site-header{height:82px;padding:0 clamp(1.25rem,4vw,4.5rem);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;font-family:"Space Mono",monospace;font-weight:700;letter-spacing:-.04em;font-size:1.25rem}.brand-mark{background:var(--blue);padding:.18rem .45rem;color:white}.accent{color:var(--cyan)}.main-nav{display:flex;gap:1.5rem;align-items:center}.main-nav a{text-decoration:none;color:var(--muted);font-size:.9rem;font-weight:600}.main-nav a:hover,.main-nav a.active{color:white}.menu-button{display:none;background:transparent;border:1px solid var(--line);color:white;padding:.5rem .8rem}.hero{min-height:calc(100vh - 82px);display:grid;grid-template-columns:1.12fr .88fr;align-items:center;gap:4vw;padding:7vw clamp(1.25rem,7vw,8rem);overflow:hidden}.hero-copy{max-width:860px}.eyebrow{font-family:"Space Mono",monospace;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;color:var(--cyan);font-weight:700}.lead{font-size:clamp(1.08rem,2vw,1.45rem);color:#c8d1dd;max-width:760px}.actions{display:flex;gap:.9rem;flex-wrap:wrap;margin:2rem 0}.button{display:inline-block;padding:.9rem 1.25rem;text-decoration:none;font-weight:700;border:1px solid var(--line);transition:.2s}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--cyan);color:#041014;border-color:var(--cyan)}.button.secondary{background:transparent;color:white}.status-note{font-family:"Space Mono",monospace;color:#6f7e91;font-size:.75rem}.hero-visual{position:relative;min-height:420px;display:grid;place-items:center}.code-window{width:min(100%,560px);background:#090e17;border:1px solid #2a3b50;box-shadow:0 35px 100px #000;position:relative;z-index:2}.window-bar{padding:1rem;border-bottom:1px solid var(--line);display:flex;gap:.45rem}.window-bar i{width:10px;height:10px;border-radius:50%;background:#334155}.window-bar i:first-child{background:#ff5f57}.window-bar i:nth-child(2){background:#febc2e}.window-bar i:last-child{background:#28c840}.code-window pre{padding:2.4rem;overflow:auto;font-family:"Space Mono",monospace;line-height:2;color:#d8e0ea}.muted{color:#65758a}.string{color:var(--lime)}.accent-code{color:var(--cyan)}.orbit{position:absolute;border:1px solid #1f6c78;border-radius:50%}.orbit-one{width:510px;height:510px}.orbit-two{width:320px;height:320px;border-color:#273b66}.proof-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.proof-strip div{padding:2rem;border-right:1px solid var(--line)}.proof-strip div:last-child{border:0}.proof-strip strong{font-family:"Space Mono",monospace;color:var(--cyan);font-size:1.35rem;display:block}.proof-strip span{color:var(--muted);font-size:.9rem}.section{padding:clamp(5rem,10vw,9rem) clamp(1.25rem,7vw,8rem)}.split{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:start}.body-copy{font-size:1.15rem;color:#bac6d5}.dark{background:#05070c;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.track-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.track-card{padding:clamp(2rem,5vw,4rem);border:1px solid var(--line);position:relative;overflow:hidden}.track-card:before{content:"";position:absolute;left:0;top:0;width:5px;height:100%;background:var(--cyan)}.track-card.control:before{background:var(--blue)}.track-card h2{font-family:"Space Mono",monospace;font-size:clamp(2.5rem,6vw,5.5rem);margin:.5rem 0}.track-number{color:#536176;font-family:"Space Mono",monospace}.track-card p,.track-card li{color:#aeb9c7}.track-card li{margin:.55rem 0}.role-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:3rem}.role-grid article{border:1px solid var(--line);padding:1.75rem;min-height:210px}.role-grid article>span{font-family:"Space Mono",monospace;color:var(--cyan);font-size:1.7rem;font-weight:700}.role-grid p{color:var(--muted)}.outcome{background:var(--paper);color:var(--ink);display:grid;grid-template-columns:1fr 1fr;gap:6vw}.check-list{list-style:none;padding:0;margin:0}.check-list li{padding:1rem 0 1rem 2.2rem;border-bottom:1px solid #cad2db;position:relative}.check-list li:before{content:"↳";position:absolute;left:0;color:#0f7582;font-family:"Space Mono",monospace;font-weight:700}.cta{text-align:center;padding:clamp(5rem,10vw,9rem) 1.5rem;background:radial-gradient(circle at 50% 0,#123346 0,transparent 55%)}.cta p{max-width:650px;margin:0 auto 2rem;color:#b5c1cf}.site-footer{padding:3rem clamp(1.25rem,7vw,8rem);display:grid;grid-template-columns:1fr auto;gap:2rem;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}.site-footer strong,.site-footer span{display:block}.site-footer strong{color:white;font-family:"Space Mono",monospace}.site-footer nav{display:flex;gap:1.3rem;flex-wrap:wrap}.site-footer p{grid-column:1/-1;margin:0}.page-hero{padding:clamp(6rem,12vw,11rem) clamp(1.25rem,7vw,8rem) 5rem;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#070b13 55%,#0b2632)}.page-hero h1{max-width:1100px}.notice{border-left:4px solid var(--cyan);background:#101a27;padding:1.25rem 1.5rem;margin:0 0 4rem;color:#bfccd9}.notice strong{color:white}.notice p{margin:.35rem 0 0}.timeline{border-top:1px solid var(--line)}.timeline article{display:grid;grid-template-columns:180px 1fr;gap:2rem;padding:3rem 0;border-bottom:1px solid var(--line)}.timeline time{font-family:"Space Mono",monospace;color:var(--cyan);font-weight:700}.timeline article p:last-child{color:var(--muted)}.speaker-roles article{min-height:240px}.ticket-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.ticket{border:1px solid var(--line);padding:3rem;display:flex;flex-direction:column;align-items:flex-start}.ticket.featured{border-color:var(--cyan);background:#0b1922}.ticket p:not(.eyebrow){color:var(--muted)}.ticket .button{margin-top:2rem}.price{font-family:"Space Mono",monospace;font-size:1.4rem;margin-top:auto}.faq-list{max-width:960px;margin:auto}.faq-list details{border-top:1px solid var(--line);padding:1.5rem 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{font-weight:700;font-size:1.2rem;cursor:pointer}.faq-list p{color:var(--muted);max-width:780px;margin:1rem 0 0}
@media(max-width:900px){.menu-button{display:block}.main-nav{display:none;position:absolute;top:81px;left:0;right:0;background:var(--panel);padding:1.5rem;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.hero{grid-template-columns:1fr;padding-top:5rem}.hero-visual{min-height:320px}.orbit-one{width:370px;height:370px}.orbit-two{width:230px;height:230px}.proof-strip{grid-template-columns:1fr 1fr}.proof-strip div:nth-child(2){border-right:0}.split,.outcome{grid-template-columns:1fr}.track-grid,.ticket-grid{grid-template-columns:1fr}.role-grid{grid-template-columns:1fr 1fr}.site-footer{grid-template-columns:1fr}.site-footer p{grid-column:auto}}
@media(max-width:560px){h1{font-size:3.2rem}.role-grid,.proof-strip{grid-template-columns:1fr}.proof-strip div{border-right:0;border-bottom:1px solid var(--line)}.timeline article{grid-template-columns:1fr;gap:.5rem}.code-window pre{padding:1.25rem;font-size:.72rem}.hero-visual{min-height:270px}.orbit-one{width:280px;height:280px}.orbit-two{width:180px;height:180px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* ADC corporate layer: red, black, grey and white */
.adc-logo{display:grid;place-items:center;background:#fff;padding:.38rem .55rem;border-radius:2px}
.adc-logo img{display:block;width:92px;height:auto}
.format-name{font-size:1.05rem;line-height:1}
.format-name small{display:block;font-family:Inter,Arial,sans-serif;font-size:.48rem;letter-spacing:.06em;color:#999;margin-top:.35rem;text-transform:uppercase}
.button.primary{color:#fff}
.code-window{background:#0a0a0a;border-color:#444}
.orbit{border-color:#671717}
.orbit-two{border-color:#3b3b3b}
.dark{background:#050505}
.track-card.control:before{background:#777}
.check-list li:before{color:#a80000}
.cta{background:radial-gradient(circle at 50% 0,#3a0a0a 0,transparent 58%)}
.page-hero{background:linear-gradient(135deg,#090909 55%,#3a0606)}
.notice{background:#191919;color:#ccc}
.ticket.featured{background:#1d0b0b}
.location-feature{display:grid;grid-template-columns:1.15fr .85fr;background:#111;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.location-image{min-height:520px;overflow:hidden}
.location-image img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.85) contrast(1.05)}
.location-copy{padding:clamp(3rem,7vw,7rem);align-self:center}
.location-copy>p:not(.eyebrow){color:#bbb;font-size:1.08rem}
.location-facts{list-style:none;padding:0;margin:2rem 0;display:grid;gap:0}
.location-facts li{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}
.location-facts strong{color:#fff}.location-facts span{color:#999}
.location-page-image{max-height:520px;overflow:hidden;border-bottom:4px solid var(--cyan)}
.location-page-image img{width:100%;height:100%;min-height:380px;object-fit:cover;display:block}
.footer-brand{display:flex;align-items:center;gap:1rem}
.footer-brand img{width:100px;background:#fff;padding:.35rem}
@media(max-width:900px){.location-feature{grid-template-columns:1fr}.location-image{min-height:330px}.format-name small{display:none}.adc-logo img{width:74px}}
.compact-hero{min-height:620px;padding-top:5vw;padding-bottom:5vw}
.hero-figure{justify-self:center;position:relative;width:100%;max-width:630px;aspect-ratio:1;overflow:hidden;background:#050505;box-shadow:0 28px 70px rgba(0,0,0,.55)}
.hero-figure:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 70px 18px #050505;pointer-events:none}
.hero-figure img{display:block;width:100%;height:100%;object-fit:cover}
.concise-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:7vw;align-items:center}
.text-link{color:#fff;text-decoration-color:var(--cyan);text-underline-offset:.3rem;font-weight:700}
@media(max-width:900px){.compact-hero{min-height:auto}.hero-figure{width:min(72vw,380px)}.concise-intro{grid-template-columns:1fr}}
.site-header{background:#fff;border-bottom-color:#ddd;color:#171717}
.adc-logo{padding:0;background:transparent}
.main-nav a{color:#555}
.main-nav a:hover,.main-nav a.active{color:#e70101}
.format-name{color:#171717}
.format-name small{color:#666}
.menu-button{color:#171717;border-color:#bbb}
.team-offer{margin-top:1.5rem;padding:clamp(2rem,4vw,3.5rem);border:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:2rem;background:#121212}
.team-offer h2{margin-bottom:.7rem}
.team-offer p:not(.eyebrow){margin:0;color:#aaa;max-width:680px}
@media(max-width:900px){.main-nav{background:#fff;border-bottom-color:#ddd}.team-offer{align-items:flex-start;flex-direction:column}}
.ticket .eyebrow{font-family:Inter,Arial,sans-serif;font-size:.9rem;font-weight:800;letter-spacing:.12em;color:#ff2a2a}
.ticket .price{font-family:Inter,Arial,sans-serif;font-size:2.25rem;font-weight:800;line-height:1;color:#fff;letter-spacing:-.03em}
body,.brand,.eyebrow,.status-note,.code-window pre,.proof-strip strong,.track-card h2,.track-number,.role-grid article>span,.check-list li:before,.site-footer strong,.timeline time,.price,.event-signature,.ticket .eyebrow,.ticket .price{font-family:"Segoe UI",Arial,sans-serif}
.eyebrow{font-weight:800;letter-spacing:.1em}
.status-note{font-weight:600;letter-spacing:.01em}
.proof-strip strong,.timeline time,.track-number{font-weight:800}
.eyebrow,.status-note,.proof-strip strong,.track-number,.role-grid article>span,.timeline time,.ticket .eyebrow,.ticket .price{font-family:"IBM Plex Mono","Segoe UI",Arial,sans-serif}
.eyebrow,.ticket .eyebrow{font-weight:700;letter-spacing:.08em}
.ticket .price{font-weight:700;letter-spacing:-.02em}
.agenda-section{overflow-x:auto}
.agenda-grid{min-width:820px;display:grid;grid-template-columns:170px minmax(280px,1fr) minmax(280px,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);background:#0b0b0b}
.agenda-grid>*{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.agenda-head{min-height:96px;padding:1.35rem 1.5rem;background:#fff;color:#111;display:flex;flex-direction:column;justify-content:center}
.agenda-head span{font-family:"IBM Plex Mono","Segoe UI",Arial,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.08em;color:#777;text-transform:uppercase}
.agenda-head strong{font-size:1.35rem;letter-spacing:.03em}
.agenda-head.time-head{font-family:"IBM Plex Mono","Segoe UI",Arial,sans-serif;font-size:.85rem;font-weight:700;color:#555}
.agenda-grid>time{padding:1.5rem 1rem;font-family:"IBM Plex Mono","Segoe UI",Arial,sans-serif;font-size:.9rem;font-weight:700;color:#fff;background:#151515}
.agenda-grid article{padding:1.25rem 1.5rem;min-height:104px}
.agenda-grid article span{font-family:"IBM Plex Mono","Segoe UI",Arial,sans-serif;font-size:.7rem;font-weight:700;letter-spacing:.08em;color:#ff3434}
.agenda-grid article h2{font-size:1.25rem;letter-spacing:-.02em;margin:.25rem 0}
.agenda-grid article p{margin:0;color:#aaa}
.agenda-shared{grid-column:2/4;background:#181818;border-left:3px solid var(--cyan)}
.agenda-session.build{background:#180b0b;border-left:3px solid var(--cyan)}
.agenda-session.control{background:#101010;border-left:3px solid #777}
.agenda-session.control span{color:#bbb}
.agenda-grid .break{background:#202020;border-left-color:#aaa}
.agenda-grid .transition{min-height:auto;padding-top:.75rem;padding-bottom:.75rem;background:#101010;border-left-color:#444}
.agenda-grid .transition h2{font-size:.95rem;color:#aaa;margin:0}
.agenda-grid .keynote{background:linear-gradient(100deg,#270707,#151515)}
.agenda-grid .overlap{background:#2a1717}
@media(max-width:900px){.agenda-section{padding-left:1rem;padding-right:1rem}.agenda-grid{min-width:740px;grid-template-columns:150px 1fr 1fr}}
.speaker-feature{margin-top:3rem;display:grid;grid-template-columns:minmax(280px,.75fr) minmax(360px,1.25fr);border:1px solid var(--line);background:#101010}
.speaker-photo{min-height:520px;overflow:hidden;border-right:4px solid var(--cyan)}
.speaker-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;filter:grayscale(15%) contrast(1.04)}
.speaker-copy{padding:clamp(2rem,5vw,4.5rem);align-self:center}
.speaker-copy h2{margin-bottom:.5rem}
.speaker-copy h3{font-size:1.4rem;margin:2rem 0 .75rem}
.speaker-copy>p:not(.eyebrow):not(.speaker-role){color:#bbb;max-width:680px}
.speaker-role{font-family:"IBM Plex Mono","Segoe UI",Arial,sans-serif;color:#ff3434;font-weight:700}
.speaker-copy .button{margin-top:1.25rem}
@media(max-width:800px){.speaker-feature{grid-template-columns:1fr}.speaker-photo{min-height:420px;border-right:0;border-bottom:4px solid var(--cyan)}}
.impressions{padding:clamp(4.5rem,8vw,7rem) 0;background:#0d0d0d;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}
.impressions-head{padding:0 clamp(1.25rem,7vw,8rem);display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.25rem}
.impressions-head h2{margin-bottom:0}
.impressions-controls{display:flex;gap:.65rem;flex:0 0 auto}
.gallery-arrow{width:52px;height:52px;border:1px solid #444;background:#151515;color:#fff;font:700 1.35rem/1 "Segoe UI",Arial,sans-serif;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
.gallery-arrow:hover{background:var(--cyan);border-color:var(--cyan);transform:translateY(-2px)}
.gallery-arrow:focus-visible,.impressions-track:focus-visible{outline:3px solid #fff;outline-offset:4px}
.impressions-track{display:flex;gap:1.25rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:0 clamp(1.25rem,7vw,8rem) 1.2rem;scrollbar-width:thin;scrollbar-color:var(--cyan) #222}
.impression-card{position:relative;flex:0 0 min(44vw,640px);height:clamp(290px,34vw,440px);margin:0;scroll-snap-align:center;background:#171717;overflow:hidden}
.impression-card img{width:100%;height:100%;display:block;object-fit:cover;filter:saturate(.96) contrast(1.04);transition:transform .6s ease}
.impression-card:hover img{transform:scale(1.018)}
.impression-card:after{content:"";position:absolute;inset:auto 0 0;height:44%;background:linear-gradient(transparent,rgba(0,0,0,.9));pointer-events:none}
.impression-card figcaption{position:absolute;z-index:1;left:clamp(1.2rem,3vw,2.25rem);right:clamp(1.2rem,3vw,2.25rem);bottom:clamp(1.2rem,3vw,2rem)}
.impression-card figcaption strong{font-size:clamp(1.25rem,2.5vw,2.15rem);line-height:1.1}
.gallery-hint{margin:1rem clamp(1.25rem,7vw,8rem) 0;color:#888;font-size:.82rem}
@media(max-width:700px){.impressions-head{align-items:flex-start}.impressions-controls{margin-top:.2rem}.gallery-arrow{width:44px;height:44px}.impression-card{flex-basis:78vw;height:58vw;min-height:280px}}
.site-footer{background:#fff;color:#555;border-top-color:#ddd}
.site-footer strong,.site-footer span{color:#171717}
.site-footer a{color:#444;text-decoration-color:#bbb;text-underline-offset:.25rem}
.site-footer a:hover{color:var(--cyan);text-decoration-color:var(--cyan)}
.site-footer .footer-brand img{background:transparent;padding:0}
