:root{color-scheme:dark;--bg:#090b10;--panel:#12161e;--border:#ffffff12;--muted:#a4adbc;--red:#ff5b66;--text:#f4f5f7;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--text);font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--red);outline-offset:5px}main,.site-header,footer{width:min(1180px,calc(100% - 64px));margin:auto}.skip-link{position:fixed;top:-100px;left:20px;z-index:10;background:var(--panel);padding:12px}.skip-link:focus{top:12px}.site-header{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.brand{display:flex;gap:12px;align-items:center;font-size:21px;letter-spacing:.12em;font-weight:800;line-height:1.15}.brand img{width:54px;height:54px;object-fit:contain}.brand-sub{display:block;font-size:10px;letter-spacing:.23em;font-weight:600;color:var(--muted);margin-top:5px}.site-header nav{display:flex;gap:32px;align-items:center;font-size:13px;font-weight:600}.site-header nav [aria-current]{color:var(--red)}.portal-link{border:1px solid var(--border);border-radius:8px;padding:10px 16px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;padding:72px 0 68px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.18em;color:var(--red);margin:0 0 18px}.hero .eyebrow{display:flex;align-items:center;gap:9px}.hero .eyebrow span{width:20px;height:2px;background:var(--red)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(40px,5vw,66px);line-height:1.08;letter-spacing:-.055em;margin-bottom:24px;font-weight:750}h1 em{font-style:normal;color:var(--red)}.hero-intro{color:var(--muted);max-width:470px;font-size:15px;line-height:1.85;margin-bottom:28px}.primary-link{display:inline-flex;justify-content:center;align-items:center;gap:24px;background:var(--red);color:#150a0c;padding:13px 20px;border:0;border-radius:8px;font-size:13px;font-weight:750;transition:background .15s}.primary-link:hover{background:#ff7d85}.hero-note{display:flex;gap:8px;align-items:center;margin-top:22px;color:var(--muted);font-size:12px}.status-dot{width:6px;height:6px;background:#79d7b0;border-radius:50%;flex-shrink:0}.hero-art{position:relative;min-height:340px;height:100%;max-height:400px;overflow:hidden;border-radius:16px;border:1px solid var(--border);background:#151923}.hero-art>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.65}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0d111be8,transparent 80%)}.hero-art-label{position:absolute;left:30px;bottom:28px;z-index:1}.hero-art-label span{font-size:9px;letter-spacing:.2em;color:#e4b0b4}.hero-art-label strong{display:block;margin-top:8px;font-size:30px;line-height:1.2;letter-spacing:-.03em}.vacancy-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:32px 0;border-top:1px solid var(--border)}.vacancy-toolbar .eyebrow{margin-bottom:9px}.vacancy-toolbar h2{font-size:26px;letter-spacing:-.04em;margin:0}.filter-buttons{display:flex;padding:4px;gap:4px;border:1px solid var(--border);border-radius:10px;background:#10131a}.filter-buttons button{border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:600;padding:9px 14px;border-radius:6px}.filter-buttons button[aria-pressed=true]{color:var(--text);background:#252a35}.vacancy-section{margin:12px 0 44px}.group-heading{display:flex;gap:14px;align-items:center;margin-bottom:22px}.group-heading h2{font-size:19px;letter-spacing:-.02em;margin-bottom:3px}.group-heading p{color:var(--muted);font-size:13px;margin:0}.group-number{font-size:11px;color:#758094;border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-variant-numeric:tabular-nums}.vacancy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.vacancy-card{padding:24px;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;background:linear-gradient(130deg,#171c25,#11151d);transition:border-color .2s,background .2s}.vacancy-card:hover{border-color:#ff5b6645;background:#171b24}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.card-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid #ff5b6620;background:#ff5b660b;border-radius:10px;color:var(--red)}.card-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.vacancy-badge{display:flex;gap:6px;align-items:center;font-size:10px;font-weight:650;border:1px solid #ffffff10;border-radius:20px;padding:4px 9px;color:#929baa}.vacancy-badge.is-open{color:#88dcb8;border-color:#79d7b026;background:#79d7b009}.vacancy-card h3{font-size:18px;letter-spacing:-.03em;margin-bottom:9px}.card-description{color:var(--muted);font-size:13px;line-height:1.75;margin-bottom:22px}.job-preview{margin-top:auto;min-height:48px;display:flex;flex-direction:column;justify-content:flex-end;gap:7px;font-size:11px;color:#d5dbe5;padding-bottom:18px}.job-preview span{border-left:2px solid #ff5b6660;padding-left:9px}.closed-note{font-size:11px;color:#788293}.card-action{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid var(--border);font-size:12px;font-weight:650}.card-action summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;width:100%}.card-action summary::-webkit-details-marker{display:none}.card-action details{width:100%}.job-details{padding:15px 0 0}.job-details article+article{border-top:1px solid var(--border);margin-top:18px;padding-top:18px}.job-details h4{margin:0 0 8px;font-size:13px}.job-details p{font-weight:400;color:var(--muted);font-size:12px}.apply-link{display:inline-flex;gap:12px;align-items:center;color:var(--red)}.closing-note{text-align:center;padding:45px 20px 60px;border-top:1px solid var(--border);margin-top:55px}.closing-note .eyebrow{display:block}.closing-note h2{font-size:29px;letter-spacing:-.04em;margin-bottom:12px}.closing-note p{font-size:13px;color:var(--muted);max-width:480px;margin:0 auto}.page-message{color:var(--muted);font-size:13px}.application{max-width:740px;margin:40px auto 70px}.back-link{font-size:12px;color:var(--muted)}.application-heading{padding:35px 0 24px}.application-heading h1{font-size:40px}.application-heading>p:last-child{color:var(--muted)}#application-form,.success-card{padding:30px;border:1px solid var(--border);border-radius:14px;background:var(--panel)}#application-form h2{font-size:22px;margin-bottom:8px}.form-intro{font-size:13px;color:var(--muted);margin-bottom:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:600;margin-bottom:20px}input,textarea{width:100%;padding:12px 14px;border-radius:8px;border:1px solid #ffffff1c;background:#0c1017;color:var(--text);font-size:14px}textarea{resize:vertical;line-height:1.6}.consent{flex-direction:row;align-items:flex-start;gap:10px;color:var(--muted);font-weight:400}.consent input{width:16px;height:16px;margin:2px 0;accent-color:var(--red);flex-shrink:0}#application-message{font-size:13px;margin:18px 0 0;color:#ff929b}.success-card{text-align:center}.success-card p{color:var(--muted)}.success-icon{display:inline-grid;place-items:center;border-radius:50%;background:#79d7b015;color:#88dcb8;width:48px;height:48px;font-size:24px;margin-bottom:20px}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--border);padding:26px 0;color:#818c9e;font-size:11px}.footer-brand{color:#c4cbd7;font-size:12px;font-weight:700;letter-spacing:.14em}
@media(max-width:900px){.hero{gap:30px;padding-top:50px}.hero-art{min-height:300px}.vacancy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){main,.site-header,footer{width:calc(100% - 32px)}.site-header{height:80px}.brand{font-size:17px;gap:6px}.brand img{width:42px;height:42px}.site-header nav{gap:16px;font-size:12px}.portal-link{padding:8px 10px}.hero{grid-template-columns:1fr;gap:28px;padding:38px 0}.hero-art{min-height:220px;height:220px}.hero-art-label strong{font-size:26px}.vacancy-toolbar{align-items:flex-start;flex-direction:column;padding:26px 0}.vacancy-grid{grid-template-columns:1fr}.vacancy-card{padding:22px}.form-grid{grid-template-columns:1fr;gap:0}#application-form,.success-card{padding:22px}.application-heading h1{font-size:32px}footer{flex-wrap:wrap;justify-content:center;text-align:center}.closing-note{padding:35px 12px}.hero-intro{font-size:14px}}
/* Nova city backdrop: decorative layers stay behind all readable content. */
.card-action{display:block;margin:0 -24px -24px;padding:0;border:0}
.card-action summary{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:14px 44px;background:#ff5b661a;color:#ff7b85;border-radius:0 0 11px 11px;font-size:13px;font-weight:650;line-height:1.4;transition:background .15s,color .15s}
.card-action summary:hover{background:#ff5b662b;color:#ff9aa2}
.card-action summary svg{position:absolute;right:22px;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.card-action summary:focus-visible{outline-offset:-4px}
.card-action details[open] summary{border-radius:0}
.card-action .job-details{padding:22px 24px 24px}
@media(max-width:600px){.card-action{margin:0 -22px -22px}.card-action .job-details{padding:20px 22px 22px}}
body{position:relative;isolation:isolate;background:#090b10}
body::before{content:"";position:absolute;z-index:-2;inset:0 0 auto;height:900px;pointer-events:none;background:linear-gradient(180deg,#090b1080 0%,#090b10c9 48%,#090b10 100%),linear-gradient(90deg,#090b10e8 0%,#090b1070 60%,#090b10a8 100%),url('/roleplay-city.png') center top / cover no-repeat}
body::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(ellipse 65% 480px at 85% 180px,#ff5b6619,transparent 75%),radial-gradient(ellipse 50% 650px at 0% 950px,#ff5b6610,transparent 75%),radial-gradient(ellipse 65% 500px at 100% 1600px,#657aa810,transparent 75%)}
.site-header{background:linear-gradient(90deg,#090b1040,transparent)}
.vacancy-card{background:linear-gradient(130deg,#171c25f5,#11151df5);box-shadow:0 8px 28px #00000020}
.hero-art{box-shadow:0 20px 65px #00000045}
#application-form,.success-card{background:#12161ef5;box-shadow:0 16px 48px #00000030}
@media(max-width:600px){body::before{height:760px;background-position:center top,center top,65% top}body::after{background:radial-gradient(ellipse 100% 450px at 100% 200px,#ff5b6616,transparent 80%)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
