:root{--ink:#101416;--ink-soft:#1a2124;--paper:#f5f6ed;--paper-muted:#c8cec8;--lime:#c6ff00;--orange:#ff7518;--cyan:#28dff0;--pink:#ff2b9f;--accent:var(--lime);--accent-rgb:198 255 0;--display:"Arial Narrow", "Helvetica Neue Condensed", Impact, sans-serif;--body:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body,#root{background:var(--ink);width:100%;min-width:320px;min-height:100%;color:var(--paper);font-family:var(--body);margin:0;overflow:hidden}button{min-height:44px;color:inherit;font:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.accent-lime{--accent:var(--lime);--accent-rgb:198 255 0}.accent-orange{--accent:var(--orange);--accent-rgb:255 117 24}.accent-cyan{--accent:var(--cyan);--accent-rgb:40 223 240}.accent-pink{--accent:var(--pink);--accent-rgb:255 43 159}.skip-link{z-index:100;color:var(--ink);background:var(--accent);padding:.8rem 1rem;font-weight:900;position:fixed;top:1rem;left:1rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.showcase{isolation:isolate;background:var(--ink);width:100vw;height:100dvh;position:relative;overflow:hidden}.scene-stack,.scene,.scene-image,.scene-grade{position:absolute;inset:0}.scene-stack{z-index:1;overflow:hidden}.scene{z-index:1;opacity:0;pointer-events:none;transition:opacity .72s cubic-bezier(.2,.7,.2,1);overflow:hidden}.scene.is-active{z-index:2;opacity:1}.scene-image{object-fit:cover;will-change:transform;width:100%;height:100%;transform:scale(1.018)}.scene--frame-left .scene-image{object-position:42% center}.scene--frame-center .scene-image{object-position:center}.scene--frame-right .scene-image{object-position:58% center}.scene.is-active .scene-image{animation:14s linear both scene-drift}.scene--left .scene-image{transform-origin:100%}.scene--right .scene-image{transform-origin:0}.scene-grade{z-index:2;pointer-events:none}.scene--left .scene-grade{background:linear-gradient(90deg,#090c0ee6 0%,#090c0ea3 28%,#090c0e2e 58%,#0000 75%),linear-gradient(#0000 72%,#090c0ea8 100%)}.scene--right .scene-grade{background:linear-gradient(270deg,#090c0ee6 0%,#090c0ea3 28%,#090c0e2e 58%,#0000 75%),linear-gradient(#0000 72%,#090c0ea8 100%)}.scene--light.scene--left .scene-grade{background:linear-gradient(90deg,#f5f6edf0 0%,#f5f6edc7 30%,#f5f6ed3d 60%,#0000 76%),linear-gradient(#0000 68%,#f5f6edb8 100%)}.scene--light.scene--right .scene-grade{background:linear-gradient(270deg,#f5f6edf0 0%,#f5f6edc7 30%,#f5f6ed3d 60%,#0000 76%),linear-gradient(#0000 68%,#f5f6edb8 100%)}.scene-copy{z-index:3;text-align:left;text-shadow:0 .2rem 2.4rem #050809bf;width:min(49rem,58vw);position:absolute;bottom:clamp(8.8rem,16vh,11.5rem)}.scene--light .scene-copy{text-shadow:0 .15rem 1.8rem #f5f6ede6}.scene--left .scene-copy{left:clamp(1.5rem,5vw,6rem)}.scene--right .scene-copy{right:clamp(1.5rem,5vw,6rem)}.scene.is-active .scene-copy>*{animation:.72s cubic-bezier(.2,.72,.2,1) both copy-in}.scene.is-active .scene-copy>:nth-child(2){animation-delay:80ms}.scene.is-active .scene-copy>:nth-child(3){animation-delay:.15s}.scene.is-active .scene-copy>:nth-child(4){animation-delay:.22s}.scene-chapter{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:.7rem;margin:0 0 .9rem;font-size:clamp(.68rem,.82vw,.88rem);font-weight:900;display:flex}.scene-chapter span{border:2px solid var(--accent);width:2.1rem;height:2.1rem;color:var(--paper);font-variant-numeric:tabular-nums;letter-spacing:0;place-items:center;display:inline-grid}.scene--light .scene-chapter,.scene--light .scene-chapter span{color:var(--ink)}.scene h1{max-width:12ch;color:var(--paper);font-family:var(--display);letter-spacing:-.045em;text-transform:uppercase;text-wrap:balance;margin:0;font-size:clamp(4rem,7.4vw,8.6rem);font-weight:950;font-stretch:75%;line-height:.84}.scene--light h1,.scene--light.scene--cta h1{color:var(--ink)}.scene--statement h1{max-width:11ch;font-size:clamp(3.8rem,6.7vw,7.7rem)}.scene--detail h1{max-width:13ch;font-size:clamp(3.6rem,5.9vw,6.8rem);line-height:.9}.scene--cta h1{max-width:10ch;color:var(--accent);font-size:clamp(4rem,7.8vw,9rem)}.scene-body{max-width:40ch;color:var(--paper);margin:1.25rem 0 0;font-size:clamp(1.05rem,1.55vw,1.6rem);font-weight:650;line-height:1.35}.scene--light .scene-body{color:var(--ink-soft)}.scene-meta{border-top:3px solid var(--accent);color:var(--paper-muted);letter-spacing:.14em;text-transform:uppercase;margin:1.35rem 0 0;padding-top:.75rem;font-size:clamp(.7rem,.85vw,.9rem);font-weight:850;line-height:1.3;display:inline-block}.scene--light .scene-meta{color:var(--ink-soft)}.brand-bar,.scene-status{z-index:20;background:#0a0e10e0;border:1px solid #f5f6ed29;min-height:3.7rem;position:fixed;top:clamp(1rem,2.2vw,2.4rem);box-shadow:0 1rem 3rem #05080947}.brand-bar{align-items:center;gap:.8rem;padding:.55rem .7rem;display:flex;left:clamp(1rem,2.2vw,2.4rem)}.brand-bar img{object-fit:contain;width:auto;display:block}.pentera-lockup{height:clamp(1.8rem,2.4vw,2.65rem)}.black-hat-lockup{height:clamp(1.95rem,2.7vw,2.9rem)}.brand-divider{background:#f5f6ed3d;width:1px;height:2.2rem}.scene-status{align-items:center;gap:1.1rem;padding:.55rem .85rem;display:flex;right:clamp(1rem,2.2vw,2.4rem)}.scene-status span{color:var(--paper-muted);letter-spacing:.14em;align-items:center;gap:.45rem;font-size:.68rem;font-weight:850;display:flex}.scene-status span:before{background:var(--accent);width:.55rem;height:.55rem;box-shadow:0 0 1rem rgb(var(--accent-rgb) / 72%);content:"";border-radius:50%}.scene-status strong{color:var(--paper);font-variant-numeric:tabular-nums;letter-spacing:.08em;font-size:.88rem}.loading-state,.media-error{z-index:60;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.loading-state{background:#0a0e10eb;gap:1rem;width:min(24rem,100vw - 3rem);padding:1.3rem;display:grid}.loading-state span{background:#f5f6ed2e;height:.32rem;position:relative;overflow:hidden}.loading-state span:after{background:var(--accent);content:"";animation:1.35s ease-in-out infinite loading-pass;position:absolute;inset:0;transform:translate(-100%)}.loading-state p,.media-error p{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:900}.media-error{border:2px solid var(--accent);background:var(--ink);flex-direction:column;align-items:flex-start;gap:.8rem;width:min(34rem,100vw - 2rem);padding:1.5rem;display:flex;box-shadow:0 2rem 6rem #050809b8}.media-error strong{font-size:1.35rem}.media-error button{border:2px solid var(--accent);min-width:11rem;color:var(--ink);background:var(--accent);cursor:pointer;padding:.7rem 1rem;font-weight:900}.help-panel{z-index:70;border:2px solid var(--accent);background:var(--ink);width:min(36rem,100vw - 2rem);max-height:calc(100dvh - 2rem);padding:1.5rem;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 2rem 7rem #050809c7}.help-header{justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.help-header p{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .35rem;font-size:.72rem;font-weight:900}.help-header h2{font-family:var(--display);letter-spacing:-.035em;text-transform:uppercase;margin:0;font-size:2.6rem;line-height:1}.help-header button,.help-panel dl,.help-panel dd{margin:0}.help-header button{cursor:pointer;background:0 0;border:1px solid #f5f6ed42;min-width:5rem;padding:.65rem .8rem;font-size:.78rem;font-weight:850}.help-panel dl{margin-top:1.35rem}.help-panel dl div{border-top:1px solid #f5f6ed24;grid-template-columns:8rem 1fr;gap:1rem;padding:.8rem 0;display:grid}.help-panel dt{color:var(--paper);font-weight:900}.help-panel dd{color:var(--paper-muted)}.presentation-controls{z-index:50;background:#0a0e10f0;border:1px solid #f5f6ed2e;grid-template-columns:auto minmax(12rem,1fr) auto;align-items:center;gap:1rem;min-height:4.7rem;padding:.65rem .75rem;display:grid;position:fixed;bottom:clamp(.8rem,1.8vw,1.8rem);left:clamp(.8rem,2vw,2rem);right:clamp(.8rem,2vw,2rem);box-shadow:0 1.4rem 4rem #0508097a}.transport-controls,.utility-controls{align-items:center;gap:.45rem;display:flex}.presentation-controls button{min-width:5.5rem;color:var(--paper);letter-spacing:.06em;cursor:pointer;background:0 0;border:1px solid #f5f6ed38;justify-content:center;align-items:center;gap:.45rem;padding:.6rem .75rem;font-size:.72rem;font-weight:850;display:inline-flex}.presentation-controls button:hover,.presentation-controls button:focus-visible,.presentation-controls .play-control{border-color:var(--accent);color:var(--ink);background:var(--accent)}.presentation-progress{gap:.5rem;min-width:0;display:grid}.presentation-progress progress{width:100%;height:.42rem;accent-color:var(--accent);background:#f5f6ed2e;border:0}.presentation-progress progress::-webkit-progress-bar{background:#f5f6ed2e}.presentation-progress progress::-webkit-progress-value{background:var(--accent)}.presentation-progress progress::-moz-progress-bar{background:var(--accent)}.progress-details{justify-content:space-between;align-items:center;gap:1rem;min-width:0;display:flex}.progress-chapter{color:var(--paper-muted);letter-spacing:.11em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.68rem;font-weight:800;overflow:hidden}.cadence-control{flex:none;align-items:center;gap:.38rem;display:flex}.cadence-control label,.cadence-unit{color:var(--paper-muted);letter-spacing:.09em;text-transform:uppercase;font-size:.65rem;font-weight:850}.cadence-control input{width:4.2rem;min-height:2.2rem;color:var(--paper);font:inherit;font-variant-numeric:tabular-nums;background:#f5f6ed12;border:1px solid #f5f6ed52;padding:.35rem .45rem;font-weight:900}.cadence-control input:hover,.cadence-control input:focus-visible{border-color:var(--accent)}.cadence-control input[aria-invalid=true]{border-color:#ffb7ad}.cadence-error{color:#ffb7ad;margin:0;font-size:.68rem;font-weight:800;line-height:1.25}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes scene-drift{0%{transform:scale(1.018)}to{transform:scale(1.065)}}@keyframes copy-in{0%{opacity:0;transform:translateY(1.2rem)}to{opacity:1;transform:translateY(0)}}@keyframes loading-pass{0%{transform:translate(-100%)}55%,to{transform:translate(100%)}}@media (width<=1020px){.scene-copy{width:min(44rem,68vw)}.presentation-controls{grid-template-columns:auto minmax(8rem,1fr);grid-template-areas:"transport progress""utility utility"}.transport-controls{grid-area:transport}.presentation-progress{grid-area:progress}.progress-details{gap:.45rem}.cadence-control{gap:.25rem}.cadence-control label,.cadence-unit{font-size:.6rem}.cadence-control input{width:3.7rem}.utility-controls{grid-area:utility;justify-content:flex-end}}@media (width<=720px){.brand-bar,.scene-status{min-height:3.2rem}.scene-status span{display:none}.scene-copy,.scene--left .scene-copy,.scene--right .scene-copy{width:auto;bottom:13rem;left:1.2rem;right:1.2rem}.scene--left .scene-grade,.scene--right .scene-grade{background:linear-gradient(#0000 28%,#090c0e85 56%,#090c0eeb 100%)}.scene--light.scene--left .scene-grade,.scene--light.scene--right .scene-grade{background:linear-gradient(#0000 16%,#f5f6ed38 28%,#f5f6eddb 54%,#f5f6edf5 100%)}.scene--left .scene-image{object-position:right center}.scene--right .scene-image{object-position:left center}.scene h1,.scene--statement h1,.scene--detail h1,.scene--cta h1{max-width:12ch;font-size:clamp(3.15rem,12vw,5.8rem)}.scene-body{font-size:1rem}.scene-meta{margin-top:.9rem}.presentation-controls{grid-template-columns:minmax(0,1fr);grid-template-areas:"progress""transport""utility";gap:.55rem;min-height:10.4rem}.transport-controls{justify-content:space-between}.transport-controls button{flex:1}.presentation-progress{grid-area:progress}.utility-controls{flex-wrap:wrap;justify-content:center}}@media (width<=360px){.brand-bar .black-hat-lockup,.brand-bar .brand-divider{display:none}.progress-details{gap:.25rem}.progress-chapter{letter-spacing:.08em;font-size:.6rem}.cadence-control{gap:.18rem}.cadence-control label,.cadence-unit{letter-spacing:.04em;font-size:.55rem}.cadence-control input{width:3.2rem;padding-inline:.3rem}.utility-controls{flex-wrap:nowrap;gap:.3rem}.transport-controls button,.utility-controls button{letter-spacing:.02em;flex:1;min-width:0;padding-inline:.3rem;font-size:.62rem}}@media (height<=650px) and (orientation:landscape){.brand-bar,.scene-status{top:.75rem}.scene-copy{bottom:9.3rem}.scene h1,.scene--statement h1,.scene--detail h1,.scene--cta h1{font-size:clamp(3rem,7.2vw,6.4rem)}.scene-body{margin-top:.7rem;font-size:1rem}.scene-meta{margin-top:.75rem}.presentation-controls{min-height:4rem;padding-block:.35rem;bottom:.65rem}}:is(.showcase.is-fullscreen,.showcase:fullscreen){width:100vw;height:100vh}.showcase:fullscreen::backdrop{background:var(--ink)}:is(.showcase.is-fullscreen .scene-status,.showcase.is-fullscreen .presentation-controls,.showcase:fullscreen .scene-status,.showcase:fullscreen .presentation-controls){display:none}:is(.showcase.is-fullscreen .scene-copy,.showcase:fullscreen .scene-copy){bottom:clamp(2.5rem,7vh,5.5rem)}.reduce-motion .scene,.reduce-motion .scene-image,.reduce-motion .scene-copy>*,.reduce-motion .presentation-controls,.reduce-motion .loading-state span:after{transition:none;animation:none}@media (forced-colors:active){.scene-grade{background:0 0}.brand-bar,.scene-status,.presentation-controls,.help-panel,.cadence-control input{border:2px solid canvastext}}
