/* OFF BOOK: theatrical photography, editorial rhythm, a deliberate presale. */
:root{--sale-paper:#f6f3ed;--sale-ink:#101214;--sale-blue:#254bff;--sale-acid:#e3ff65}
.nav nav{gap:18px}.nav nav a{position:relative;transition:color .2s,transform .2s;text-decoration:none}.nav nav a:hover{transform:translateY(-3px);color:var(--sale-acid)}.nav nav a:focus-visible{outline:2px solid var(--sale-acid);outline-offset:6px}.nav .nav-presale{padding:12px 18px!important;background:var(--sale-blue);border-radius:4px;box-shadow:0 5px 20px #254bff40;color:white!important}.basket-link span{display:inline-grid;place-items:center;background:#fff;color:#111;border-radius:50%;width:20px;height:20px;font-size:12px}.introduction h2{font-size:clamp(40px,5.7vw,84px);max-width:900px}.intro-star{font-size:100px;opacity:.6;right:8%;top:40%}.room-picture{box-shadow:0 30px 60px #0002;border-radius:6px;overflow:hidden}.cast-image,.person-image{border-radius:5px;box-shadow:0 14px 35px #0002;overflow:hidden}.cast-card,.person{transition:transform .35s}.cast-card:hover,.person:hover{transform:translateY(-7px)}.cast-image img,.person-image img{transition:transform .7s}.cast-card:hover img,.person:hover img{transform:scale(1.035)}
.cinema-mast{position:relative;isolation:isolate;overflow:hidden;min-height:530px;background:#111!important;display:flex;flex-direction:column;justify-content:center;color:white!important}.cinema-mast>*:not(.film-mast){position:relative;z-index:2;max-width:950px}.cinema-mast h1{font-size:clamp(46px,7.5vw,110px)}.cinema-mast em{color:var(--sale-acid)!important}.cinema-mast>p{max-width:630px}.film-mast{position:absolute;inset:0;z-index:0}.film-mast:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#090b0de6,#090b0d88 55%,#090b0d30)}.film-mast video{width:100%;height:100%;object-fit:cover;object-position:center 38%}.film-mast .media-toggle{position:absolute;right:40px;bottom:28px;z-index:3;background:#101214aa;border:1px solid #ffffff70;color:#fff;padding:12px;border-radius:3px}
.presale-cta{background:#11151a;color:white;padding:85px 7vw;display:grid;grid-template-columns:1.5fr 1fr;gap:60px;align-items:center;border-top:1px solid #ffffff20;position:relative;overflow:hidden}.presale-cta h2{font-size:clamp(45px,6vw,90px);line-height:1.03;margin:22px 0}.presale-cta>div:last-child{border-left:1px solid #ffffff30;padding-left:55px}.presale-sticker{display:inline-block;transform:rotate(-6deg);background:var(--sale-acid);color:#111;font:14px Act Mono,monospace;padding:10px 18px;box-shadow:4px 5px 0 #000}.sale-price{font-size:64px!important;font-weight:600;line-height:1.1}.sale-price small{display:block;font-size:16px;font-weight:400;margin:12px 0 25px}.presale-cta .pill{background:white;color:#111}.presale-cta .micro{color:#b9c3d0}
.profile-title{padding:45px 7vw!important}.profile-title h1{font-size:clamp(45px,6vw,88px)}.profile-title .lede{display:none}.performer-video{margin-bottom:60px}.contributor-profile .profile-head{max-width:1120px;margin:auto}.profile-story h3{font-size:clamp(27px,3vw,46px);font-weight:500;line-height:1.15;max-width:750px}.profile-story p{font-size:19px;line-height:1.75;max-width:780px}.contributor-profile .lede{font-size:20px;line-height:1.7}.role-gallery{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:45px!important;align-items:start;margin:60px 0}.role-gallery figure:nth-child(even){margin-top:85px}.role-gallery figure:only-child{grid-column:1/-1;max-width:1000px;margin:0 auto;width:100%}.role-photo{background:#131518;border-radius:6px;box-shadow:0 24px 60px #0003;overflow:hidden;height:auto!important}.role-photo img{height:auto!important;max-height:750px;width:100%;object-fit:contain!important;transition:transform .8s}.role-photo:hover img{transform:scale(1.025)}.role-gallery figcaption{font-size:14px;line-height:1.6;margin-top:16px;color:#51565f}.official-portrait .role-photo img{max-height:700px}.social-panel{border-top:1px solid #0002;border-bottom:1px solid #0002;padding:30px 0}.selected-work ul{display:flex;gap:10px;flex-wrap:wrap;padding:0;list-style:none}.selected-work li{padding:12px 18px;background:white;border:1px solid #ddd;border-radius:3px}
.teaser-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:65px 40px;padding-top:75px}.teaser-card{min-width:0}.teaser-frame{position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:7px;background:#16191d;box-shadow:0 22px 45px #0003}.teaser-frame img{width:100%;height:100%;object-fit:cover;filter:brightness(.65);transition:transform .7s}.teaser-card:hover img{transform:scale(1.04)}.teaser-status{position:absolute;left:24px;bottom:24px;backdrop-filter:blur(12px);background:#10121488;color:white;border:1px solid #fff5;border-radius:3px;padding:10px 15px;font:12px Act Mono,monospace;letter-spacing:.09em}.teaser-caption{padding:24px 4px}.teaser-caption h2{font-size:32px;margin:12px 0}.teaser-caption p{font-size:16px}.continuation{border-top:1px solid #ccc;padding-top:65px;padding-bottom:80px}.continuation h2{font-size:clamp(40px,5vw,70px)}
.access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.access-card{border:1px solid #ffffff35;padding:30px;background:linear-gradient(135deg,#ffffff0d,#ffffff02);border-radius:7px;box-shadow:0 12px 30px #0002}.access-card h3{font-size:30px;line-height:1.1;margin:25px 0}.access-card p{line-height:1.7}.access-card a{color:var(--sale-acid);display:inline-block;margin-top:22px}.backstage-manifesto .pill{align-self:start;justify-self:start}.backstage-membership{border-bottom:1px solid #ffffff20}
.notes-demo{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding-top:80px;padding-bottom:100px}.notes-demo h2{font-size:clamp(40px,5vw,70px);line-height:1.08}.notes-demo p{line-height:1.7}.demo-paper{background:#fffdf6;border:1px solid #dad6ca;box-shadow:12px 22px 55px #0002;transform:rotate(2deg);padding:45px 35px;color:#17191d}.demo-paper h3{font-size:28px;margin:30px 0}.typed-demo{min-height:125px;border-bottom:1px solid #bbb;padding-bottom:25px;font-size:18px;animation:demo-ink 6s ease-in-out infinite}.demo-check{margin:20px 0;color:#254bff}.demo-label{font:12px Act Mono,monospace}.notes-demo .pill{margin-top:20px}@keyframes demo-ink{0%,10%{opacity:.15;transform:translateY(5px)}35%,90%{opacity:1;transform:none}100%{opacity:.15}}
.presale-offer{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding-top:90px;padding-bottom:100px}.presale-offer h2{font-size:clamp(40px,5vw,74px);line-height:1.08}.presale-offer li{margin:16px 0}.presale-offer .small{margin-top:20px;line-height:1.5}.sale-jacket{position:relative;background:#2348f7;color:white;padding:40px;min-height:530px;max-width:400px;box-shadow:-9px 0 0 #142a8f,18px 28px 65px #0004;transform:rotate(-4deg);display:flex;flex-direction:column;justify-content:space-between}.sale-jacket>span,.sale-jacket small{font:14px Act Mono,monospace}.sale-jacket strong{font-size:100px;line-height:.86;letter-spacing:-.055em}.sale-jacket b{position:absolute;right:-22px;top:28px;background:var(--sale-acid);color:#101214;transform:rotate(12deg);padding:17px 25px;font-size:17px}.member-offer{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid #ccc;padding-top:75px;padding-bottom:80px}.member-offer h2{font-size:65px}.membership-ticket{background:#11151b;color:#fff;padding:40px;border-radius:6px;box-shadow:0 20px 40px #0003}.membership-ticket .micro{color:#d3dbe4}.billing-toggle{display:flex;gap:8px;margin:25px 0}.billing-toggle button{background:transparent!important;color:#fff!important;border:1px solid #8a9098!important;padding:12px 20px!important}.billing-toggle button[aria-pressed=true]{background:var(--sale-acid)!important;color:#111!important;border-color:var(--sale-acid)!important}.sale-faq{padding-bottom:90px}.sale-faq details{border-bottom:1px solid #ccc;padding:24px 0}.sale-faq summary{font-size:22px;cursor:pointer}.sale-faq p{max-width:750px;line-height:1.6}
.checkout-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;padding-top:80px;padding-bottom:120px}.checkout-layout h1,.account-intro h1{font-size:clamp(50px,7vw,100px);line-height:1;letter-spacing:-.045em}.order-summary{background:#fff;padding:35px;border:1px solid #ddd;height:fit-content;border-radius:6px}.order-summary p{line-height:1.6}.order-summary strong{float:right}.order-summary button{margin:20px 0;width:100%}.pill:disabled{background:#d7d9df;color:#4c5059;cursor:not-allowed;box-shadow:none}.referral-label{display:block;margin:35px 0 12px;font-size:17px}#referral-code{padding:15px;border:1px solid #999;width:100%;max-width:450px;background:white;font-size:18px}.account-intro{padding-top:90px;padding-bottom:130px;max-width:850px}.account-intro .pill,.account-intro .text-link{display:inline-block;margin:25px 20px 0 0}[data-bag-item]{padding:25px 0;border-bottom:1px solid #ccc}[data-remove-book]{margin-left:30px}.presale-toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);z-index:1000;background:#14171c;color:white;padding:20px 30px;box-shadow:0 10px 30px #0005}
.portal-panel{background:#12171dcc!important;backdrop-filter:blur(35px) saturate(1.3);color:white!important;border-left:1px solid #fff8;box-shadow:-20px 0 90px #ffffff15}.portal-light{background:#b6c9df33!important;backdrop-filter:blur(20px)}.travelling #theatre-world{animation:glass-depart .85s ease forwards!important}.travelling .portal-panel{animation:glass-panel .85s ease forwards!important}.travelling .portal-light{animation:glass-light .85s ease forwards!important}.arrived #theatre-world{animation:glass-arrive .85s ease both!important}@keyframes glass-depart{to{filter:blur(18px);opacity:.1;transform:scale(.975)}}@keyframes glass-panel{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1;inset-inline-start:0}}@keyframes glass-light{to{opacity:1}}@keyframes glass-arrive{from{filter:blur(20px);opacity:0;transform:scale(1.025)}to{filter:blur(0);opacity:1;transform:none}}
@media(max-width:1100px){.nav nav{gap:12px;flex-wrap:wrap}.nav nav a{font-size:13px}.presale-offer{gap:50px}.sale-jacket{min-height:450px}.sale-jacket strong{font-size:80px}}
@media(max-width:760px){.nav nav a{font-size:16px}.cinema-mast{min-height:480px}.film-mast .media-toggle{right:20px;bottom:18px;font-size:12px}.cinema-mast h1{font-size:48px}.presale-cta,.notes-demo,.presale-offer,.member-offer,.checkout-layout{grid-template-columns:1fr;gap:45px;padding-top:55px;padding-bottom:65px}.presale-cta>div:last-child{padding-left:0;border-left:0}.intro-star{font-size:50px;top:20px}.teaser-grid{grid-template-columns:1fr;gap:25px}.teaser-caption h2{font-size:29px}.role-gallery{grid-template-columns:1fr;gap:35px!important;margin:35px 0}.role-gallery figure:nth-child(even){margin-top:0}.access-grid{grid-template-columns:1fr}.demo-paper{transform:none;padding:30px 22px}.sale-jacket{width:85%;margin:0 auto;min-height:430px}.member-offer h2{font-size:50px}.membership-ticket{padding:28px}.profile-story p{font-size:17px}.presale-toast{bottom:85px;width:90%;font-size:15px}}
.page-backstage #tools{background:#151b23;color:#fff;max-width:none;padding:65px 7vw}.page-backstage #tools .micro{color:#c9d5e4}.page-backstage #tools .access-card p{color:#e0e5ec}.page-backstage #tools .access-card a{color:#e3ff65}.tease-portrait{object-fit:cover!important;object-position:50% 30%;aspect-ratio:4/5!important;max-height:620px!important}.tease-credit{font-size:12px!important;color:#bac1ca!important;grid-column:2;position:relative!important;max-width:100%!important;margin:0!important}.notes-demo+.presale-cta{margin-top:0}.page-my-notes-session .page-mast,.page-repertoire .page-mast,.page-sample .page-mast,.page-field-notes .page-mast{background:#11151b!important;color:white}.page-my-notes-session .page-mast em{color:#e3ff65}.room-split{background:#e8ebf1!important;color:#111!important}.room-split h2 em{color:#254bff!important}.room-split .micro{color:#343c48!important}.room-copy .pill{background:#254bff;color:white}
@media(max-width:760px){.tease-credit{grid-column:1}.stage-door{bottom:14px!important;top:auto!important}.tease-portrait{max-height:470px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.teaser-frame video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#080b10;border-radius:inherit}.page-voice-kerry-ellis .official-portrait .role-photo{aspect-ratio:4/3}.page-voice-kerry-ellis .official-portrait img{object-fit:contain}.page-voice-james-lorcan .official-portrait img{object-position:center;filter:contrast(1.07)}
.teaser-play{position:relative;display:block;width:100%;padding:0;border:0;background:#080b10;cursor:pointer;color:#fff}.teaser-play[hidden]{display:none}.teaser-play img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.teaser-play-label{position:absolute;bottom:20px;left:20px;padding:12px 16px;background:rgba(8,11,16,.86);border:1px solid rgba(255,255,255,.45);border-radius:30px;font-size:12px;font-weight:700;letter-spacing:.09em;backdrop-filter:blur(12px)}.teaser-play:hover .teaser-play-label,.teaser-play:focus-visible .teaser-play-label{background:#254bff;border-color:#254bff}.teaser-play:focus-visible{outline:3px solid #254bff;outline-offset:4px}

/* Approved contributor code confirmation */
.referral-panel{margin-top:32px}.referral-panel [hidden],#referral-summary[hidden]{display:none!important}#referral-form{display:flex;gap:12px;align-items:center}#referral-form input{min-width:0;flex:1;text-transform:uppercase}#referral-form .pill{flex:none}#referral-accepted{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid #555;font-size:22px;font-weight:700}.referral-check{color:#dcff55;font-size:30px;margin-left:12px}#referral-change{font-size:14px;color:inherit}#referral-summary{border-top:1px solid #555;padding-top:20px;font-size:14px}#referral-summary-code{display:block;color:#dcff55;font-size:22px;margin-top:8px}#referral-feedback{min-height:1.5em}#referral-code[aria-invalid=true]{outline:2px solid #dcff55}@media(max-width:480px){#referral-form{flex-wrap:wrap}#referral-form input{width:100%}}
#referral-accepted{background:#111;color:#fff;padding:16px 20px;border:0}#referral-change{background:transparent;border:0;text-decoration:underline;padding:8px;cursor:pointer}#referral-summary-code{display:table;background:#111;color:#dcff55;padding:6px 12px}#referral-feedback{font-size:0}#referral-code[aria-invalid=true]+button{outline-offset:3px}.referral-panel:has(#referral-code[aria-invalid=true]) #referral-feedback{font-size:14px}
