@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Space+Grotesk:wght@600;700&display=swap";:root{--black:#000;--panel:#090909;--line:#242424;--text:#f7f7f7;--muted:#777;--green:#39ff88;--yellow:#ffe34d;--red:#ff3c6f}*{box-sizing:border-box}body{color:var(--text);background:#000;margin:0;font-family:Inter,Arial,sans-serif}.portal{background:#000;place-items:center;min-height:100vh;padding:28px;display:grid}.portal-card{background:#050505;border:1px solid #202020;border-radius:12px;width:min(760px,100%);padding:32px}.portal-card header,.consent header{border-bottom:1px solid #222;align-items:center;gap:12px;padding-bottom:25px;display:flex}.portal-card header>span,.consent header>span{border:1px solid #555;border-radius:8px;place-items:center;width:40px;height:40px;font-weight:700;display:grid}.portal-card header b,.portal-card header small,.consent header b,.consent header small{display:block}.portal-card header b,.consent header b{letter-spacing:2px}.portal-card header small,.consent header small{color:#666;letter-spacing:2px;margin-top:4px;font-size:7px}.portal-intro{padding:55px 0 35px}.portal-intro p,.kicker{color:var(--green);letter-spacing:2px;text-shadow:0 0 8px #39ff8880;font-size:8px}.portal-intro h1,.consent h1{margin:12px 0 16px;font:700 43px/1.05 Space Grotesk}.portal-intro>span,.intro{color:#777;font-size:11px;line-height:1.7}.form-choice{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-choice a{color:#fff;background:#0a0a0a;border:1px solid #272727;border-radius:9px;grid-template-columns:45px 1fr auto;align-items:center;gap:13px;padding:18px;text-decoration:none;display:grid}.form-choice a:hover{border-color:#555}.form-choice i{border-radius:8px;place-items:center;width:42px;height:42px;font-size:9px;font-style:normal;display:grid}.form-choice i.green{color:var(--green);border:1px solid #39ff8850;box-shadow:0 0 18px #39ff8818}.form-choice i.yellow{color:var(--yellow);border:1px solid #ffe34d50;box-shadow:0 0 18px #ffe34d18}.form-choice b,.form-choice span{display:block}.form-choice b{font-size:11px}.form-choice span{color:#666;margin-top:5px;font-size:8px}.form-choice em{color:#777;font-style:normal}.portal footer{color:#444;text-align:center;margin-top:35px;font-size:7px}.consent{width:min(760px,100%);margin:auto;padding:42px 18px 70px}.consent-head{padding:45px 0 20px}.consent h1{font-size:36px}.intro{max-width:620px}.consent section{background:#080808;border:1px solid #242424;border-radius:9px;margin:14px 0;padding:24px}.consent h2{letter-spacing:1.2px;margin:0 0 20px;font-size:9px}.consent label{color:#8a8a8a;margin:13px 0;font-size:8px;display:block}.consent input,.consent select,.consent textarea{color:#fff;background:#000;border:1px solid #303030;border-radius:5px;outline:none;width:100%;margin-top:7px;padding:11px;display:block}.consent textarea{height:85px}.row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.health{border-bottom:1px solid #202020;grid-template-columns:1fr 210px;align-items:center;gap:20px;padding:8px 0;display:grid!important}.health select{margin:0}.check{align-items:center;gap:9px;display:flex!important}.check input{width:15px;accent-color:var(--green);margin:0}.warning{color:#a8953c;background:#ffe34d0c;border:1px solid #ffe34d35;border-radius:5px;padding:12px;font-size:8px;line-height:1.5}.consent canvas{touch-action:none;background:#000;border:1px dashed #555;border-radius:6px;width:100%;height:150px}.clear{color:#666;background:0 0;border:0;margin-top:8px;font-size:7px}.submit{color:#000;letter-spacing:1px;background:#fff;border:0;border-radius:6px;width:100%;height:49px;margin-top:12px;font-size:9px;font-weight:800}.success{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:65vh;display:flex}.success i{border:1px solid var(--green);width:62px;height:62px;color:var(--green);border-radius:50%;place-items:center;font-size:24px;font-style:normal;display:grid;box-shadow:0 0 30px #39ff8830}.success h1{margin-top:22px}.success p{color:#777}.error{color:#ff7b9c;margin-top:10px;font-size:9px}@media (width<=600px){html{-webkit-text-size-adjust:100%}body{overflow-x:hidden}.portal{background:#000;min-height:100svh;padding:0;display:block}.portal-card{border:0;border-radius:0;width:100%;min-height:100svh;padding:22px 18px 28px}.portal-card header,.consent header{padding-bottom:18px}.portal-card header>span,.consent header>span{flex:0 0 44px;width:44px;height:44px}.portal-card header b,.consent header b{font-size:14px}.portal-card header small,.consent header small{font-size:8px}.portal-intro{padding:42px 0 28px}.portal-intro p,.kicker{font-size:10px}.portal-intro h1{margin-top:14px;font-size:38px;line-height:1.02}.portal-intro>span,.intro{font-size:14px;line-height:1.65}.form-choice,.row,.health{grid-template-columns:1fr}.form-choice{gap:14px}.form-choice a{grid-template-columns:48px 1fr auto;min-height:82px;padding:16px}.form-choice i{width:46px;height:46px;font-size:11px}.form-choice b{font-size:14px}.form-choice span{font-size:11px;line-height:1.45}.form-choice em{font-size:20px}.portal footer{margin-top:28px;font-size:9px}.consent{width:100%;padding:20px 14px calc(34px + env(safe-area-inset-bottom))}.consent-head{padding:34px 4px 18px}.consent h1{overflow-wrap:anywhere;font-size:34px}.consent section{border-radius:12px;margin:12px 0;padding:20px 16px}.consent h2{margin-bottom:18px;font-size:11px;line-height:1.4}.consent label{margin:16px 0;font-size:12px;line-height:1.45}.consent input,.consent select,.consent textarea{border-radius:8px;min-height:50px;margin-top:8px;padding:13px 12px;font-size:16px}.consent textarea{resize:vertical;height:112px}.health{gap:8px;padding:13px 0}.health select{margin-top:2px}.check{align-items:flex-start;gap:12px}.check input{flex:0 0 22px;width:22px;height:22px;min-height:22px;margin-top:1px}.warning{padding:14px;font-size:11px;line-height:1.6}.consent canvas{border-radius:10px;height:190px}.clear{min-height:44px;padding:0 6px;font-size:10px}.submit{bottom:calc(10px + env(safe-area-inset-bottom));border-radius:10px;height:56px;font-size:12px;position:sticky;box-shadow:0 10px 28px #000}.error{font-size:12px;line-height:1.5}.success{min-height:70svh;padding:24px}.success h1{font-size:31px}.success p{font-size:14px;line-height:1.55}}@media (width<=360px){.portal-intro h1{font-size:32px}.consent h1{font-size:30px}.portal-card{padding-inline:14px}.consent{padding-inline:10px}}.upload-note,.privacy-note{color:#777;font-size:10px;line-height:1.6}.upload-row{margin-top:16px}.file-upload{text-align:center;cursor:pointer;background:#050505;border:1px dashed #3b3b3b;border-radius:8px;place-items:center;min-height:105px;position:relative;padding:18px!important;display:grid!important}.file-upload:hover{border-color:#777}.file-upload span{pointer-events:none}.file-upload b,.file-upload small{display:block}.file-upload b{color:#fff;letter-spacing:1px;font-size:10px}.file-upload small{color:#666;margin-top:7px;font-size:8px}.file-upload input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.privacy-note{padding-left:18px;position:relative}.privacy-note:before{content:"●";color:var(--green);text-shadow:0 0 8px var(--green);position:absolute;left:2px}.submit:disabled{opacity:.55;cursor:wait}.success{position:relative;overflow:hidden}.success-rings{place-items:center;width:94px;height:94px;display:grid;position:relative}.success-rings:before,.success-rings:after{content:"";border:1px solid #39ff8860;border-radius:50%;animation:2s ease-out infinite successPulse;position:absolute;inset:0}.success-rings:after{animation-delay:1s}.success-rings i{animation:.65s cubic-bezier(.2,1.7,.4,1) both successPop}.success-kicker{letter-spacing:3px;margin:26px 0 0;font-size:9px;animation:.7s .25s both successFade;color:var(--green)!important}.success h1{animation:.7s .38s both successFade}.success>p:not(.success-kicker){max-width:430px;line-height:1.7;animation:.7s .5s both successFade}.success-line{color:#555;letter-spacing:2px;align-items:center;gap:14px;width:min(300px,80%);margin-top:30px;font-size:8px;animation:.7s .65s both successFade;display:flex}.success-line span{background:#292929;flex:1;height:1px}@keyframes successPulse{0%{opacity:0;transform:scale(.65)}25%{opacity:1}to{opacity:0;transform:scale(1.55)}}@keyframes successPop{0%{opacity:0;transform:scale(0)rotate(-35deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes successFade{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (width<=600px){.upload-note,.privacy-note{font-size:12px}.file-upload{min-height:118px}.file-upload b{font-size:12px}.file-upload small{font-size:10px}}@media (prefers-reduced-motion:reduce){.success-rings:before,.success-rings:after,.success-rings i,.success-kicker,.success h1,.success>p,.success-line{animation:none!important}}.health-check{border:0;border-bottom:1px solid #202020;margin:0;padding:14px 0 16px}.health-check legend{float:left;color:#aaa;width:calc(100% - 230px);padding:11px 18px 0 0;font-size:10px;line-height:1.5}.health-check>div{grid-template-columns:1fr 1fr;gap:8px;width:220px;margin-left:auto;display:grid}.health-check label{cursor:pointer;position:relative;margin:0!important}.health-check input{opacity:0;pointer-events:none;position:absolute}.health-check label span{color:#777;background:#030303;border:1px solid #303030;border-radius:7px;justify-content:center;align-items:center;gap:7px;min-height:42px;font-size:10px;transition:all .18s;display:flex}.health-check label i{color:#0000;border:1px solid #444;border-radius:4px;place-items:center;width:17px;height:17px;font-size:10px;font-style:normal;display:grid}.health-check input:checked+span{color:#fff;background:#39ff880b;border-color:#39ff8880;box-shadow:0 0 18px #39ff8815}.health-check input:checked+span i{background:var(--green);border-color:var(--green);color:#000;box-shadow:0 0 12px #39ff8860}.health-check input:focus-visible+span{outline-offset:2px;outline:2px solid #fff}@media (width<=600px){.health-check{padding:16px 0 18px}.health-check legend{float:none;width:100%;padding:0 0 12px;font-size:12px}.health-check>div{gap:10px;width:100%;margin:0}.health-check label span{min-height:52px;font-size:13px}.health-check label i{width:21px;height:21px}}.signature-label{letter-spacing:1.2px;color:#aaa;margin:25px 0 12px;font-size:9px}@media (width<=600px){.signature-label{margin-top:28px;font-size:11px;line-height:1.5}}.selfie-box{background:#030303;border:1px solid #242424;border-radius:9px;margin-top:22px;padding:18px}.selfie-box h3{letter-spacing:1.3px;margin:0 0 8px;font-size:9px}.selfie-box>p{color:#777;font-size:10px;line-height:1.5}.camera-start,.camera-view button,.selfie-result button{color:var(--green);letter-spacing:.8px;background:#39ff880d;border:1px solid #39ff8870;border-radius:7px;min-height:44px;padding:0 18px;font-size:9px;font-weight:700}.camera-view video{object-fit:cover;background:#000;border:1px solid #333;border-radius:9px;width:100%;max-height:400px;display:block;transform:scaleX(-1)}.camera-view>div{gap:8px;margin-top:10px;display:flex}.camera-view>div button:first-child{color:#000;background:#fff;border-color:#fff;flex:1}.selfie-result{align-items:center;gap:15px;display:flex}.selfie-preview{background-position:50%;background-size:cover;border:1px solid #333;border-radius:9px;width:105px;height:105px}.selfie-result b,.selfie-result button{display:block}.selfie-result b{color:var(--green);margin-bottom:10px;font-size:11px}.selfie-result button{min-height:38px}@media (width<=600px){.selfie-box{padding:15px}.selfie-box h3{font-size:11px}.selfie-box>p{font-size:12px}.camera-start,.camera-view button,.selfie-result button{min-height:50px;font-size:11px}.selfie-preview{width:96px;height:96px}}.booking-page{background:#000;min-height:100vh;padding:30px 16px 80px}.booking-wrap{width:min(820px,100%);margin:auto}.booking-wrap>header{border-bottom:1px solid #222;align-items:center;gap:12px;padding:0 4px 24px;display:flex}.booking-wrap>header>span{border:1px solid #555;border-radius:8px;place-items:center;width:42px;height:42px;font-weight:700;display:grid}.booking-wrap>header b,.booking-wrap>header small{display:block}.booking-wrap>header b{letter-spacing:2px}.booking-wrap>header small{color:#666;letter-spacing:2px;margin-top:4px;font-size:7px}.booking-hero{padding:58px 4px 28px}.booking-hero p,.booking-success>p{color:var(--green);letter-spacing:2.5px;font-size:9px}.booking-hero h1,.booking-success h1{margin:12px 0 16px;font:700 48px/1 Space Grotesk}.booking-hero>span,.booking-success>span{color:#888;max-width:590px;font-size:12px;line-height:1.7;display:block}.booking-form section{background:#080808;border:1px solid #242424;border-radius:10px;margin:14px 0;padding:25px}.booking-form h2{letter-spacing:1.3px;margin:0 0 20px;font-size:9px}.booking-form label{color:#999;margin:14px 0;font-size:9px;display:block}.booking-form input,.booking-form select,.booking-form textarea{color:#fff;background:#000;border:1px solid #303030;border-radius:6px;outline:none;width:100%;margin-top:8px;padding:12px;display:block}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:#777}.booking-form textarea{resize:vertical;height:100px}.booking-row{grid-template-columns:1fr 1fr;gap:13px;display:grid}.booking-check{align-items:flex-start;gap:10px;display:flex!important}.booking-check input{width:18px;height:18px;accent-color:var(--green);flex:0 0 18px;margin:0}.booking-note{color:#a8953c;background:#ffe34d0c;border:1px solid #ffe34d35;border-radius:6px;padding:12px;font-size:9px;line-height:1.6}.booking-submit{color:#000;letter-spacing:1.2px;background:#fff;border:0;border-radius:7px;width:100%;min-height:54px;font-size:10px;font-weight:800}.booking-submit:disabled{opacity:.55}.booking-error{color:#ff7b9c;font-size:11px}.booking-success{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:72vh;display:flex}.booking-success>i{border:1px solid var(--green);width:72px;height:72px;color:var(--green);border-radius:50%;place-items:center;font-size:28px;font-style:normal;display:grid;box-shadow:0 0 35px #39ff8835}.booking-success a{color:#fff;letter-spacing:1px;border-bottom:1px solid #555;margin-top:28px;padding-bottom:5px;font-size:10px;text-decoration:none}@media (width<=600px){.booking-page{padding:20px 12px 50px}.booking-wrap>header{padding-bottom:18px}.booking-hero{padding:42px 4px 20px}.booking-hero h1,.booking-success h1{font-size:38px}.booking-hero>span,.booking-success>span{font-size:14px}.booking-row{grid-template-columns:1fr}.booking-form section{padding:20px 16px}.booking-form h2{font-size:11px}.booking-form label{font-size:12px}.booking-form input,.booking-form select,.booking-form textarea{min-height:50px;font-size:16px}.booking-note{font-size:11px}.booking-submit{bottom:calc(10px + env(safe-area-inset-bottom));height:58px;font-size:12px;position:sticky;box-shadow:0 10px 28px #000}}
