@font-face{font-family:Caper;src:url('assets/display.ttf') format('truetype');font-display:swap;font-weight:800}
:root{--ink:#171c25;--red:#f04450;--mint:#b8ffd7;--violet:#c42133;--lime:#b8ffd7;--paper:#f6f1e5;--muted:#c5d2cc;--line:#171c2538;--display:Caper,'Arial Narrow',sans-serif;--body:Manrope,Arial,sans-serif;--rail:224px;--nav-height:0px}
html{scroll-padding-top:25px}body{color:var(--ink);background:var(--paper)}main,body>footer{margin-left:var(--rail)}h2{font-size:clamp(42px,4.8vw,76px);line-height:.96;letter-spacing:-.02em}h3{font-size:28px}h2 em{color:var(--violet)}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #12604c!important;outline-offset:5px!important}.skip{position:fixed;z-index:200}
.button{border:2px solid var(--ink);border-radius:0;box-shadow:4px 4px 0 var(--ink);padding:16px 21px;font-size:14px;background:var(--mint);color:var(--ink)}.button:hover{box-shadow:6px 6px 0 var(--ink)}.text-link{font-size:14px}.small-button{border:2px solid var(--ink);border-radius:0}.small-button:hover{background:#3d4c48}.text-button:hover{color:#a1192a}
.directory{position:fixed;left:0;top:0;bottom:0;width:var(--rail);background:var(--paper);border-right:2px solid var(--ink);z-index:60;padding:28px 18px 20px;display:flex;flex-direction:column;overflow-y:auto}.directory-brand{text-decoration:none;display:flex;align-items:center;gap:10px;font:800 21px/1 var(--display);letter-spacing:-.02em}.directory-brand small{display:block;font:800 9px/1.6 var(--body);letter-spacing:.08em;margin-top:5px}.brand-mark{font:900 33px/1 var(--display);background:var(--red);border:2px solid var(--ink);padding:9px 7px;transform:rotate(-6deg)}.directory-title{font:800 10px/1.5 var(--body);letter-spacing:.08em;display:flex;justify-content:space-between;border-bottom:1px solid #171c2540;padding:0 0 11px;margin:41px 3px 12px}.directory nav{display:flex;flex-direction:column;gap:4px;width:100%;font-size:12px;padding:0;border:0;order:0}.directory nav a{display:flex;align-items:center;gap:9px;min-height:44px;padding:10px 7px;color:var(--ink);line-height:1.3;border:1px solid transparent;font-weight:700;position:relative}.directory nav a>span{font:800 14px var(--display);opacity:.55}.directory nav a[aria-current]{background:var(--mint);border-color:var(--ink);box-shadow:3px 3px 0 var(--ink)}.directory nav a:hover{background:#e3ebdb}.directory nav b{font:800 8px/1.2 var(--body);padding:3px;background:var(--red);color:var(--ink);position:absolute;right:2px;top:0;transform:rotate(5deg)}.directory-cta{display:flex;justify-content:space-between;gap:5px;background:var(--ink);color:var(--paper);padding:14px 12px;margin:23px 0;text-decoration:none;font-size:12px;font-weight:800}.directory-cta:hover{background:var(--red);color:var(--ink)}.directory-bottom{margin-top:auto;padding:16px 4px 0;font:800 9px/1.5 var(--body);letter-spacing:.05em}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--red);margin-right:5px}.directory-bottom p{font-size:12px;font-weight:500;letter-spacing:0;line-height:1.7;margin:11px 0 20px}.page-progress{height:4px;background:#171c2520;margin-bottom:10px}.page-progress i{display:block;height:100%;width:0;background:var(--red)}.progress-label{font-size:8px}
.hero{padding:25px 4.2% 0;background:var(--red);color:var(--ink);min-height:0;display:block}.hero-topline{color:var(--ink);font:800 10px/1.5 var(--body);letter-spacing:.08em;border-bottom:1px solid #171c2560;padding-bottom:13px}.hero h1{font:800 clamp(76px,11.4vw,184px)/.86 var(--display);letter-spacing:-.032em;color:var(--paper);margin:20px 0 25px;white-space:nowrap;text-align:center;text-shadow:4px 4px 0 var(--ink)}.hero h1 span{display:inline;color:var(--mint)}.caper-grid{display:grid;grid-template-columns:.83fr 1.6fr;gap:27px;align-items:center}.caper-copy{padding:0 0 20px;min-width:0}.case-label{display:inline-block;font:800 9px/1.5 var(--body);letter-spacing:.06em;background:var(--ink);color:var(--mint);padding:7px 9px;margin-bottom:18px;transform:rotate(-2deg)}.caper-copy h2{font:800 clamp(28px,3.05vw,47px)/1 var(--display);letter-spacing:-.015em}.caper-copy h2 em{color:var(--paper);font-style:normal}.caper-copy>p{font-size:14px;line-height:1.65;margin:16px 0;max-width:35ch}.caper-copy .hero-description{font-size:12px;line-height:1.6;max-width:38ch}.caper-copy .button{font-size:13px;padding:13px 15px;gap:20px;margin:6px 0 20px}.caper-copy>.text-link{display:block;font-size:12px}.caper-art{position:relative;margin:0 0 30px;min-width:0;transform:rotate(1.2deg);border:3px solid var(--ink);background:var(--paper);box-shadow:7px 7px 0 var(--ink)}.caper-art img{width:100%;height:auto;aspect-ratio:1.5;object-fit:contain}.caper-art figcaption{display:flex;justify-content:space-between;gap:20px;padding:10px 12px;font:800 8px/1.5 var(--body)}.art-sticker{position:absolute;top:-24px;right:16px;border:2px solid var(--ink);border-radius:50%;width:103px;height:103px;background:var(--mint);display:flex;align-items:center;justify-content:center;flex-direction:column;font:800 20px/.95 var(--display);transform:rotate(13deg);box-shadow:3px 3px 0 var(--ink);text-align:center}.art-sticker b{font-size:27px}.hero-ribbon{margin:5px -4.59% 0;padding:14px 25px;display:flex;align-items:center;justify-content:space-around;gap:20px;background:var(--ink);color:var(--paper);font:800 13px/1 var(--display);letter-spacing:.1em}.hero-ribbon b{color:var(--mint);font-size:24px}
.facts{padding:26px 5%;background:var(--mint);border-bottom:2px solid var(--ink);gap:20px}.facts strong{font:800 43px/1 var(--display)}.facts span{font-size:10px;letter-spacing:.04em}.facts>div{border-color:#171c2538}.section{padding:75px 5%}.section-label{font:800 10px/1.5 var(--body);letter-spacing:.07em;color:var(--ink)!important;border-color:#171c2540!important;margin-bottom:35px}.section-label span:last-child{font-size:9px}.briefing{background:var(--paper)}.briefing-grid{grid-template-columns:1fr 1fr;gap:60px}.briefing h2{font-size:clamp(48px,5.3vw,80px)}.brief-copy .lead{font-size:18px;line-height:1.6}.brief-copy>p+p{font-size:15px;margin-top:18px}.detective-note{background:var(--mint);color:var(--ink);border:2px solid var(--ink);padding:20px 24px;margin:32px 0 0;transform:rotate(-2deg);box-shadow:5px 5px 0 var(--ink);position:relative}.detective-note:before{content:'';position:absolute;top:-11px;left:42%;width:85px;height:22px;background:#eab977c9;transform:rotate(3deg)}.detective-note>span{font:800 9px var(--body);letter-spacing:.1em}.detective-note p{font:800 28px/1.1 var(--display);margin:12px 0}.detective-note b{font:800 9px var(--body)}
@media(min-width:1700px){:root{--rail:250px}.hero h1{font-size:11.6vw}.caper-copy h2{font-size:3.2vw}.caper-copy>p{font-size:18px}.caper-copy .hero-description{font-size:16px}}
@media(max-width:1100px){:root{--rail:190px}.directory{padding:22px 12px}.directory-brand{font-size:18px;gap:7px}.brand-mark{font-size:27px}.directory nav a{font-size:11px;gap:7px}.hero h1{font-size:10.8vw}.caper-grid{grid-template-columns:.9fr 1.25fr;gap:22px}.caper-copy h2{font-size:32px}.caper-copy>p{font-size:13px}.caper-art figcaption span:last-child{display:none}.art-sticker{width:83px;height:83px;font-size:16px}.art-sticker b{font-size:22px}.facts strong{font-size:35px}.facts span{font-size:9px}.briefing-grid{gap:35px}.section{padding:60px 5%}}
@media(max-width:800px){:root{--rail:0px;--nav-height:106px}html{scroll-padding-top:125px}.directory{position:sticky;top:0;bottom:auto;width:100%;height:auto;display:grid;grid-template-columns:1fr auto;padding:10px 18px 0;border-right:0;border-bottom:2px solid var(--ink);overflow:visible;gap:8px}.directory-brand{font-size:20px}.brand-mark{font-size:22px;padding:5px 7px}.directory-brand small{font-size:8px;margin-top:2px}.directory-title,.directory-bottom{display:none}.directory nav{flex-direction:row;grid-column:1/-1;grid-row:2;overflow-x:auto;padding:4px 2px 9px;gap:8px;width:100%;scrollbar-width:thin}.directory nav a{flex-shrink:0;min-height:34px;font-size:11px;padding:8px;gap:6px}.directory nav b{display:none}.directory-cta{margin:0;align-self:center;padding:9px 10px;font-size:10px}.hero{padding:22px 5% 0}.hero h1{font-size:15.3vw;margin:20px 0 28px;text-shadow:3px 3px 0 var(--ink)}.hero-topline{font-size:8px}.hero-topline span:last-child{display:none}.caper-grid{grid-template-columns:1fr 1.25fr;gap:25px}.caper-copy h2{font-size:34px}.caper-copy .button{font-size:12px;padding:12px}.caper-copy>p{font-size:13px}.hero-ribbon{margin:8px -5.56% 0;padding:15px 20px;font-size:11px}.hero-ribbon span:last-child,.hero-ribbon b:last-of-type{display:none}.facts strong{font-size:40px}.facts{grid-template-columns:repeat(4,1fr);gap:12px}.facts span{font-size:8px}.facts>div{padding-right:8px}.facts>div:nth-child(2){border-right:1px solid #171c2538}.section{padding:55px 6%}.briefing h2{font-size:54px}.briefing-grid{grid-template-columns:1fr 1fr;gap:30px}.brief-copy .lead{font-size:15px}.brief-copy>p+p{font-size:14px}.detective-note p{font-size:26px}.section-label span:last-child{display:none}body>footer{padding:30px 6%}}
@media(max-width:560px){.directory{padding:9px 12px 0}.directory-brand{font-size:18px}.directory-cta{font-size:9px;padding:9px}.caper-grid{grid-template-columns:1fr;gap:20px}.caper-copy{display:grid;grid-template-columns:1fr 1fr;gap:12px 15px;padding:0}.case-label{grid-column:1/-1;justify-self:start;margin:0}.caper-copy h2{font-size:37px;grid-row:2/4}.caper-copy>p{font-size:12px;margin:0;grid-column:2}.caper-copy .hero-description{font-size:11px}.caper-copy .button{grid-column:1/-1;justify-self:start;margin:6px 0 3px;font-size:13px}.caper-copy>.text-link{grid-column:1/-1;font-size:12px}.caper-art{margin:20px 4px 25px}.art-sticker{top:-16px;right:10px;width:75px;height:75px;font-size:15px}.art-sticker b{font-size:21px}.hero-ribbon{font-size:10px;gap:15px}.hero-ribbon b{font-size:18px}.facts{grid-template-columns:1fr 1fr;padding:24px 6%;gap:24px 15px}.facts strong{font-size:39px}.facts span{font-size:9px}.facts>div:nth-child(2){border:0}.briefing-grid{grid-template-columns:1fr;gap:25px}.briefing h2{font-size:60px}.brief-copy .lead{font-size:18px}.brief-copy>p+p{font-size:15px}.detective-note{max-width:360px}.section-label{font-size:9px}h2{font-size:48px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* The suitcase gallery: actual event hardware, with its full photo framing. */
.hardware{background:var(--mint);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);padding-top:65px}.hardware-grid{grid-template-columns:1.05fr 1fr;gap:65px;align-items:start}.hardware-photo{background:var(--paper);padding:12px 12px 16px;border:2px solid var(--ink);box-shadow:7px 7px 0 var(--ink);transform:rotate(-3deg);margin-top:32px}.hardware-photo>img{aspect-ratio:4/3;height:auto;object-fit:contain;filter:none;border:1px solid var(--ink)}.hardware-photo>p{font:800 9px/1.5 var(--body);padding:5px}.photo-stamp{background:var(--red);color:var(--ink);right:-18px;bottom:-38px;border:2px solid var(--ink);font-size:26px;transform:rotate(8deg);box-shadow:4px 4px 0 var(--ink)}.hardware-grid h2{font-size:clamp(43px,4.4vw,68px)}.hardware-items{margin-top:28px}.hardware-items article{gap:16px;border-color:#171c2540;padding:18px 0}.hardware-items article>span{font:800 30px/1 var(--display);color:var(--ink);background:var(--paper);min-width:41px;height:41px;display:grid;place-items:center;border:1.5px solid var(--ink);padding:0;transform:rotate(-5deg)}.hardware-items h3{font-size:27px}.hardware-items p{font-size:14px;line-height:1.65}.mission-flow{border:0;gap:0;padding-top:0;margin-top:70px;counter-reset:step}.mission-flow article{padding:28px 22px;border:2px solid var(--ink);background:var(--paper);position:relative;max-width:none}.mission-flow article+article{border-left:0}.mission-flow article:nth-child(2){background:var(--ink);color:var(--paper);transform:translateY(-12px)}.mission-flow article:last-child{background:var(--red)}.mission-flow .eyebrow{font:800 10px/1.4 var(--body);letter-spacing:.1em;color:inherit;margin-bottom:12px}.mission-flow h3{font-size:32px}.mission-flow p{font-size:14px}.mission-flow article:after{content:'↗';font-size:25px;position:absolute;right:15px;top:16px}
/* Screening room. */
.film{background:var(--ink);color:var(--paper);gap:45px;grid-template-columns:.9fr 1.2fr;position:relative;overflow:hidden}.film h2{font-size:clamp(42px,4.3vw,68px)}.film h2 em{color:var(--mint)}.film .eyebrow{color:var(--mint);font:800 10px var(--body)}.film p{color:var(--paper);font-size:15px}.film-player{border:2px solid var(--paper);box-shadow:8px 8px 0 var(--red);transform:rotate(1deg)}.film-player img{opacity:.73;filter:none}.play-film-label{font-size:20px;text-shadow:0 2px 5px #000}.play-film-label>span{border:2px solid var(--ink);text-shadow:none;border-radius:0;width:66px;height:66px;transform:rotate(-8deg)}.film-player button:hover .play-film-label>span{transform:rotate(0)}
/* Hands-on gallery. Nothing else on the page is gated by the mission. */
.mission{background:var(--paper);color:var(--ink);background-image:radial-gradient(#171c2514 .8px,transparent .8px);background-size:12px 12px}.mission-heading{grid-template-columns:1.1fr 1fr;gap:45px;align-items:center}.mission-heading h2{font-size:clamp(50px,5.8vw,91px)}.mission-heading>p{color:var(--ink);font-size:16px;border-left:4px solid var(--red);padding-left:22px}.mission-start{color:var(--ink);background:var(--mint);border:2px solid var(--ink);box-shadow:5px 5px 0 var(--ink);gap:30px;padding:28px}.mission-start h3{font-size:30px}.mission-start p{color:var(--ink);font-size:14px}.start-controls{min-width:325px}.mode-select label>span{border:1px solid var(--ink);background:var(--paper);color:var(--ink);padding:12px 13px;font-size:13px}.mode-select small{color:#384d43;font-size:12px}.mode-select input:checked+span{border-color:var(--ink);background:var(--ink);color:var(--mint);box-shadow:inset 0 -3px 0 var(--red)}.mode-select input:checked+span small{color:var(--paper)}#start-mission{background:var(--red);color:var(--ink);box-shadow:3px 3px 0 var(--ink)}.mission-console{color:var(--paper);border:2px solid var(--ink);box-shadow:6px 6px 0 #171c2528;margin-top:33px}.console-heading{color:var(--paper);font:800 10px/1.4 var(--body);border-color:#f6f1e533;padding:16px 23px}.console-main{grid-template-columns:.8fr 1.35fr .8fr;gap:24px}.console-main>div>span{font:800 10px/1.4 var(--body)}.console-progress strong{font-size:38px}.code-readout output{font:700 clamp(24px,2.5vw,38px)/1.2 ui-monospace,monospace;letter-spacing:.015em}.clock-block output{font-size:45px}.system-indicators span{background:#5d6a63}.clock-block .text-button:hover,.mission-dock .text-button:hover{color:var(--mint)}#mission-status{border-color:#f6f1e533}.mission-dock{background:var(--ink);color:var(--paper);border:2px solid var(--mint);top:10px;box-shadow:5px 5px 0 #171c2533;backdrop-filter:none}.mission-dock>div>span{font:800 10px var(--body)}.puzzle-grid{gap:24px}.puzzle{border:2px solid var(--ink);border-top:9px solid var(--red);background:var(--paper);box-shadow:5px 5px 0 var(--ink);padding:27px;position:relative}.puzzle:nth-child(2){border-top-color:#5abf98}.puzzle:nth-child(3){border-top-color:#8b80ce}.puzzle:nth-child(4){border-top-color:#eba54b}.puzzle:nth-child(5){border-top-color:#75b7c0}.puzzle-top{color:#44544c;font:800 9px/1.4 var(--body);letter-spacing:.02em;margin-bottom:17px}.module-state{color:#44544c;font:800 9px/1.4 var(--body)}.puzzle h3{font-size:37px;letter-spacing:-.01em}.clue{background:#e4eadf;border:1px solid #171c2525;border-left:3px solid var(--ink);font-size:14px;padding:15px;line-height:1.65}.clue strong{color:#173e30}.puzzle-controls:disabled{opacity:.65}.puzzle[data-solved=true]{border-color:#176149;background:#e5f7e9;box-shadow:5px 5px 0 #176149}.puzzle[data-solved=true] .module-feedback{color:#18533e}.module-feedback{font-size:13px;line-height:1.65}.hint{font-size:13px}.hint p{font-size:13px}.wire-choice{font-size:20px;padding:16px 4px;border-radius:14px 14px 3px 3px;box-shadow:0 3px 0 #171c2540}.wire-choice:hover:enabled{transform:translateY(-2px)}.wire-buttons{gap:12px}.switch-control>span,.switch-control b{font-size:17px}.switch-control input{background:linear-gradient(0deg,var(--ink) 0 43%,#deddd1 43%);width:46px;height:70px;box-shadow:3px 3px 0 #171c2533}.switch-control input:checked{background:linear-gradient(0deg,var(--mint) 0 57%,var(--ink) 57%)}.memory-screen{border:2px solid var(--ink);font-size:25px}.memory-buttons button{background:#e8e3f4;font-size:19px;border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);padding:10px 3px}.memory-buttons button.is-lit{background:var(--mint);color:var(--ink);box-shadow:0 0 0 4px var(--red)}.memory-support{font-size:12px;line-height:1.5}.memory-support input,input[type=range]{accent-color:#176149}#sequence-text{font:800 20px/1.4 var(--display);border-color:var(--ink);background:var(--mint)}.sensor-output output{font-size:56px}.sensor-output span{color:#44544c;font:800 9px var(--body)}.sensor-fine input,.riddle-form input{border:2px solid var(--ink)}.sensor-fine label{font-size:12px}.small-button{font-size:12px}.riddle-form{gap:13px}.riddle-form label{font-size:12px}.riddle-form input{font-size:40px}.final-lock{background:var(--red);border:2px solid var(--ink);padding:30px;box-shadow:5px 5px 0 var(--ink)}.final-lock .eyebrow{font:800 10px var(--body)}.final-lock h3{font-size:48px;line-height:.98}.final-lock>p{font-size:14px}.final-lock input{background:var(--ink);font:700 31px/1.4 ui-monospace,monospace;letter-spacing:.2em}.final-lock>p:last-child{font-size:13px}.mission-result{background:var(--mint);color:var(--ink);border:3px solid var(--ink);box-shadow:8px 8px 0 var(--ink);position:relative;overflow:hidden}.mission-result h3{color:var(--ink);font-size:clamp(44px,5vw,76px);padding-right:40px}.mission-result .eyebrow{color:var(--ink);font:800 10px var(--body)}.mission-result[data-result=won]:after{content:'✳';color:var(--red);font-size:160px;line-height:1;position:absolute;right:-10px;top:-45px;pointer-events:none;transform:rotate(20deg)}.mission-result[data-result=timeout]{background:var(--paper);border-color:var(--ink)}.mission-result[data-result=timeout] h3{color:var(--violet)}.mission-after p{color:var(--ink);font-size:13px}.mission-after .text-button{font-size:13px}.no-script{color:var(--ink)}
/* Evidence wall: every original photo remains accessible at full framing. */
.evidence{background:var(--ink);color:var(--paper);position:relative}.evidence .section-label{color:var(--paper)!important;border-color:#f6f1e54a!important}.evidence h2{font-size:clamp(49px,5.5vw,86px)}.evidence h2 em{color:var(--mint)}.evidence-grid{grid-template-columns:repeat(3,1fr);gap:25px;margin-top:45px}.evidence-photo,.evidence-photo:nth-child(7n+1){display:block;grid-column:auto;background:var(--paper);color:var(--ink);border:2px solid var(--paper);padding:7px 7px 0;box-shadow:5px 5px 0 #0005;transition:transform .15s}.evidence-photo:nth-child(6n+1){transform:rotate(-2deg)}.evidence-photo:nth-child(6n+3){transform:rotate(2deg)}.evidence-photo:hover{transform:translateY(-5px) rotate(0);border-color:var(--mint)}.evidence-photo img,.evidence-photo:nth-child(7n+1) img{height:auto;width:100%;aspect-ratio:4/3;object-fit:contain;filter:none}.evidence-photo:hover img{filter:none}.evidence-photo>span,.evidence-photo:nth-child(7n+1)>span{display:flex;flex-direction:row;flex-wrap:wrap;padding:11px 5px 13px;gap:7px;justify-content:space-between;align-items:center}.evidence-photo b{color:var(--violet);font:800 10px var(--body)}.evidence-photo>span>span:first-of-type,.evidence-photo:nth-child(7n+1)>span>span:first-of-type{font:600 11px/1.5 var(--body);order:3;flex-basis:100%}.evidence-photo[data-photo='13'],.evidence-photo[data-photo='14']{grid-column:auto;transform:none}.evidence-photo[data-photo='13']{grid-column:span 2;display:grid;grid-template-columns:1.6fr 1fr;padding:10px}.evidence-photo[data-photo='13']>span{padding:22px;flex-direction:column;justify-content:center;align-items:start}.evidence-photo[data-photo='13']>span>span:first-of-type{font:800 38px/1 var(--display);flex-basis:auto;order:0}.evidence-photo[data-photo='13']>span>b{margin-bottom:15px}
/* Practical intel is always in the open. */
.logistics{background:var(--paper);color:var(--ink)}.logistics-grid{grid-template-columns:1fr 1.1fr;gap:65px}.logistics h2{font-size:clamp(46px,4.6vw,70px)}.kit-list{background:var(--mint);border:2px solid var(--ink);padding:10px 20px 16px;box-shadow:5px 5px 0 var(--ink);transform:rotate(-1.5deg);margin:35px 0 15px}.kit-list p{font-size:13px;border-color:#171c2540;padding:13px 0;align-items:baseline;gap:13px}.kit-list p:last-child{border:0}.kit-list span{font:800 20px var(--display);color:var(--ink)}.answers article{border-color:#171c2538;padding:20px 0}.answers h3{font:800 29px/1.1 var(--display)}.answers p{color:var(--ink);font-size:14px;line-height:1.7;margin-top:12px}
.booking{background:var(--red);color:var(--ink);display:grid;grid-template-columns:.8fr 1.2fr;gap:35px;align-items:start;text-align:left;border-top:2px solid var(--ink)}.booking h2{font-size:clamp(52px,5.3vw,82px);line-height:.95}.booking h2 em{color:var(--paper)}.booking .eyebrow{font:800 10px/1.5 var(--body);letter-spacing:.08em;max-width:30ch}.booking-title{position:sticky;top:45px;padding-top:20px}.booking-title>p{font-size:15px;line-height:1.7;max-width:29ch;margin:25px 0}.booking-title:after{content:'↗';font:800 160px/.9 var(--display);display:block;margin:20px 0;color:var(--mint);text-shadow:3px 3px 0 var(--ink)}.booking-form-wrap{width:100%;min-width:0;box-shadow:7px 7px 0 var(--ink);margin:0}.request-header{background:var(--mint);font:800 10px var(--body);padding:17px 24px}.request-header strong{font:800 25px var(--display)}#request-form{padding:24px}.request-fields{gap:18px 14px}.request-fields label,.request-text-label{font-size:12px}.request-fields input,.request-fields textarea,.request-fields select,#request-text{border-color:#171c2580;border-radius:0;font-size:14px;padding:11px}.request-text-label{margin-top:22px}#request-text{background:#e8e8db;font-size:12px;min-height:215px}.request-actions{gap:22px;flex-wrap:wrap}.request-actions .button{font-size:12px;padding:13px 16px}.request-actions .text-button{font-size:12px}.request-actions .text-button:hover{color:var(--violet)}#request-status{font-size:11px;line-height:1.6}.directory-cta[aria-current]{background:var(--red);color:var(--ink)}body>footer{background:var(--ink);color:var(--paper);gap:20px;font-size:11px}footer .brand{font:800 25px var(--display);color:var(--mint)}dialog{border:2px solid var(--mint);border-radius:0;color:var(--paper);max-width:1100px}dialog::backdrop{background:#111820ed}.photo-dialog-top{font:800 12px var(--body)}.photo-dialog-bottom{font-size:13px}
@media(max-width:1100px){.hardware-grid{gap:38px}.hardware-items h3{font-size:25px}.hardware-items p{font-size:13px}.mission-flow article{padding:24px 18px}.mission-flow h3{font-size:28px}.mission-flow p{font-size:13px}.mission-start{flex-direction:column;align-items:stretch}.mission-start>div:first-child{max-width:none}.start-controls{display:grid;grid-template-columns:1.2fr 1fr;align-items:stretch;gap:20px;min-width:0}.console-main{gap:16px}.puzzle{padding:22px}.puzzle h3{font-size:32px}.clue{font-size:13px}.wire-buttons{gap:7px}.wire-choice{font-size:18px}.riddle-form{flex-wrap:wrap}.final-lock h3{font-size:40px}.evidence-grid{gap:19px}.evidence-photo[data-photo='13']>span{padding:15px}.evidence-photo[data-photo='13']>span>span:first-of-type{font-size:28px}.logistics-grid{gap:35px}.booking{grid-template-columns:.75fr 1.25fr;gap:25px}.booking h2{font-size:57px}.request-fields{grid-template-columns:1fr}.request-fields .wide{grid-column:auto}.request-fields input,.request-fields textarea,.request-fields select{font-size:16px}}
@media(max-width:950px) and (min-width:801px){.puzzle-grid{grid-template-columns:1fr}.hardware-grid{grid-template-columns:1fr}.hardware-photo{max-width:460px;margin:15px auto 60px}.hardware-grid h2{font-size:55px}.hardware-items{display:grid;grid-template-columns:1fr;gap:0}.briefing h2{font-size:52px}.brief-copy .lead{font-size:16px}.booking{grid-template-columns:1fr}.booking-title{position:static}.booking-title:after{display:none}.booking h2 br{display:none}.booking h2{font-size:62px}.booking-title>p{max-width:none}.request-fields{grid-template-columns:1fr 1fr}.request-fields .wide{grid-column:1/-1}}
@media(max-width:800px){.hardware-grid{grid-template-columns:1fr 1fr;gap:30px}.hardware-grid h2{font-size:45px}.hardware-photo{margin-top:28px;padding:8px}.photo-stamp{right:0;bottom:-37px;font-size:20px;padding:13px 16px}.hardware-photo>p{font-size:8px}.mission-flow{margin-top:50px;grid-template-columns:repeat(3,1fr)}.mission-flow article{padding:20px 16px}.mission-flow h3{font-size:26px}.mission-flow p{font-size:13px}.mission-flow article:after{display:none}.film{grid-template-columns:.8fr 1.2fr;gap:28px}.film h2{font-size:42px}.play-film-label{font-size:17px;gap:13px}.mission-heading{grid-template-columns:1.1fr 1fr;gap:30px}.mission-heading h2{font-size:56px}.mission-heading>p{font-size:14px;padding-left:18px}.puzzle-grid{grid-template-columns:1fr 1fr;gap:20px}.puzzle{padding:21px 18px}.puzzle h3{font-size:31px}.puzzle-top{font-size:8px}.module-state{font-size:8px}.wire-buttons{grid-template-columns:repeat(4,1fr)}.wire-choice{font-size:16px}.console-main{grid-template-columns:.8fr 1.4fr .8fr}.code-readout{grid-row:auto;grid-column:auto}.clock-block{grid-row:auto;grid-column:auto}.code-readout output{font-size:25px;letter-spacing:0}.mission-dock{top:calc(var(--nav-height) + 5px);padding:12px 16px}.mission-result{scroll-margin-top:125px}.final-lock{padding:24px}.evidence-grid{grid-template-columns:repeat(3,1fr);gap:20px}.evidence-photo>span>span:first-of-type,.evidence-photo:nth-child(7n+1)>span>span:first-of-type{font-size:10px}.logistics-grid{grid-template-columns:1fr 1fr;gap:30px}.logistics h2{font-size:46px}.answers h3{font-size:27px}.answers p{font-size:13px}.booking{grid-template-columns:.8fr 1.2fr;gap:30px}.booking h2{font-size:54px}.booking-title{top:140px}.request-fields{grid-template-columns:1fr}.request-fields .wide{grid-column:auto}.directory nav a:focus-visible{outline-offset:1px!important}}
@media(max-width:620px){.hardware-grid,.film,.mission-heading,.logistics-grid,.booking{grid-template-columns:1fr}.hardware-photo{max-width:450px;margin:12px 10px 65px}.hardware-grid h2{font-size:54px}.hardware-items h3{font-size:28px}.hardware-items p{font-size:15px}.mission-flow{grid-template-columns:1fr;gap:18px}.mission-flow article{padding:25px}.mission-flow article+article{border-left:2px solid var(--ink)}.mission-flow article:nth-child(2){transform:translateX(6px)}.mission-flow article:after{display:block}.mission-flow h3{font-size:33px}.mission-flow p{font-size:15px}.film{gap:35px}.film h2{font-size:52px}.film-player{margin-bottom:8px}.mission-heading{gap:25px}.mission-heading h2{font-size:61px}.mission-heading>p{font-size:15px}.mission-start{padding:24px 20px}.mission-start p{font-size:14px}.start-controls{display:flex;flex-direction:column}.puzzle-grid{grid-template-columns:1fr;gap:27px}.puzzle{padding:25px 22px}.puzzle h3{font-size:36px}.puzzle-top,.module-state{font-size:9px}.clue{font-size:15px}.module-feedback{font-size:13px}.wire-choice{font-size:20px}.memory-buttons button{font-size:20px}.memory-support{font-size:13px}.sensor-fine label{font-size:13px}.sensor-fine .small-button,.small-button{font-size:13px}.console-main{grid-template-columns:1fr 1fr;gap:25px}.code-readout{grid-row:2;grid-column:1/-1}.code-readout output{font-size:32px;letter-spacing:.05em}.clock-block{grid-row:1;grid-column:2}.console-heading{font-size:9px;flex-direction:row;gap:15px}.console-heading span:last-child{text-align:right}.console-main>div>span{font-size:10px}.mission-dock{gap:12px;top:calc(var(--nav-height) + 5px)}.mission-dock strong{font-size:20px;letter-spacing:.1em}.mission-dock>span{font-size:24px}.final-lock h3{font-size:48px}.final-lock>p{font-size:15px}.evidence-grid{grid-template-columns:1fr 1fr;gap:23px 15px}.evidence h2{font-size:49px}.evidence-photo>span>span:first-of-type,.evidence-photo:nth-child(7n+1)>span>span:first-of-type{font-size:11px}.evidence-photo[data-photo='13']{grid-column:auto;display:block;padding:7px 7px 0}.evidence-photo[data-photo='13']>span{padding:11px 5px 13px;display:flex;flex-direction:row;flex-wrap:wrap;gap:7px}.evidence-photo[data-photo='13']>span>span:first-of-type{font:600 11px/1.5 var(--body);flex-basis:100%;order:3}.evidence-photo[data-photo='13']>span>b{margin:0}.logistics h2{font-size:56px}.kit-list p{font-size:14px}.answers h3{font-size:31px}.answers p{font-size:15px}.booking{gap:25px}.booking-title{position:static}.booking h2{font-size:75px}.booking-title>p{max-width:none;margin:22px 0 10px;font-size:15px}.booking-title:after{display:none}.booking-form-wrap{box-shadow:5px 5px 0 var(--ink)}.booking .eyebrow{max-width:none}.request-fields input,.request-fields textarea,.request-fields select{font-size:16px}.request-fields label,.request-text-label{font-size:13px}#request-form{padding:22px 19px}#request-status{font-size:12px}#request-text{font-size:13px}.request-actions{flex-direction:row;align-items:center}.request-actions .button{font-size:13px;width:auto}.request-actions .text-button{font-size:13px}.mission-result h3{font-size:47px}.photo-dialog-bottom button,.photo-dialog-top button{font-size:13px;min-height:42px}}
@media(max-width:380px){.caper-copy h2{font-size:32px}.hero h1{font-size:15vw}.directory-brand{font-size:16px}.directory-cta{font-size:8px;gap:4px}.brand-mark{font-size:20px}.mission-heading h2{font-size:54px}.mode-select label>span{font-size:12px}.mission-start{padding:22px 16px}.console-heading{flex-direction:column}.console-heading span:last-child{text-align:left}.puzzle{padding:23px 18px}.puzzle h3{font-size:33px}.evidence h2{font-size:44px}.booking h2{font-size:65px}.hero-ribbon{font-size:9px}.riddle-form{gap:13px}.code-readout output{font-size:28px}}
/* On phones, lead with the artwork and keep the invitation easy to read. */
@media(max-width:560px){.caper-art{order:-1;margin:0 4px 12px}.caper-copy{display:block;padding-bottom:14px}.case-label{font-size:9px;margin:0 0 15px}.caper-copy h2{font-size:45px;line-height:1;max-width:none}.caper-copy>p{font-size:15px;line-height:1.65;max-width:none;margin:16px 0}.caper-copy .hero-description{font-size:14px;max-width:none;margin:14px 0}.caper-copy .button{margin:8px 0 22px;font-size:14px;padding:14px 18px}.caper-copy>.text-link{font-size:13px}.hero h1{margin-bottom:32px}}
