.subpage{background:#ece9f7;color:#0d0b12;min-height:100vh}
.subpage .topbar{position:sticky}
.subpage .wordmark{color:#f7f5ff}
.subpage .page-main{width:min(1180px,calc(100% - 2rem));margin:auto;padding:5rem 0 8rem}
.page-kicker{color:#6241c7;font-weight:900;letter-spacing:.16em;font-size:.75rem}
.page-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:3rem;align-items:end;padding-bottom:4rem;border-bottom:3px solid #0d0b12}
.page-hero h1{font:900 clamp(4rem,11vw,9rem)/.76 Arial,sans-serif;letter-spacing:-.085em;margin:1rem 0}
.page-hero h1 em{color:transparent;font-style:normal;-webkit-text-stroke:2px #8b5cf6}
.page-hero>p{font-size:1.05rem;line-height:1.65}
.sub-links{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.5rem}
.sub-links a,.print-button{border:2px solid #0d0b12;background:#d7ff38;color:#0d0b12;padding:.65rem .9rem;font-weight:900;text-decoration:none;box-shadow:4px 4px 0 #8b5cf6;cursor:pointer}
.sub-links a:hover,.print-button:hover{background:#ff4fd8;box-shadow:1px 1px 0 #8b5cf6;transform:translate(3px,3px)}
.form-section,.bio-panel,.interview-panel,.source-panel{margin-top:3rem;border:2px solid #0d0b12;background:#fff;box-shadow:10px 10px 0 #8b5cf6;padding:clamp(1.2rem,4vw,3rem)}
.form-section:nth-of-type(even){box-shadow:10px 10px 0 #ff4fd8}
.form-section h2,.bio-panel h2,.interview-panel h2{font:900 clamp(2rem,5vw,4rem)/.9 Arial,sans-serif;letter-spacing:-.055em;margin:.5rem 0 1.5rem}
.form-section>p{max-width:780px}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.question-field{display:grid;gap:.4rem;margin:1rem 0;font-weight:800}
.question-field small{font-weight:400}
.question-field input,.question-field textarea,.question-field select{width:100%;border:2px solid #0d0b12;background:#f6f4fb;padding:.8rem;font-size:1rem}
.checkline{display:flex;gap:.7rem;align-items:flex-start;margin:1rem 0}
.checkline input{margin-top:.3rem}
.privacy-note{border-left:8px solid #ff4fd8;background:#fff7fd;padding:1rem}
.public-tag,.private-tag{display:inline-block;padding:.2rem .45rem;font-size:.67rem;font-weight:900;letter-spacing:.1em}
.public-tag{background:#d7ff38}
.private-tag{background:#ff4fd8}
.article-directory{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem;margin-top:4rem}
.article-tile{grid-column:span 4;min-height:380px;border:2px solid #0d0b12;background:#fff;padding:1.5rem;box-shadow:7px 7px 0 #8b5cf6;display:flex;flex-direction:column}
.article-tile:nth-child(2n){box-shadow:7px 7px 0 #ff4fd8}
.article-tile:nth-child(3n){box-shadow:7px 7px 0 #38f2ff}
.article-tile .number{font:900 4rem Arial,sans-serif;color:#8b5cf6}
.article-tile h2{font:900 2rem/.95 Arial,sans-serif;letter-spacing:-.04em}
.article-tile p{line-height:1.55}
.article-tile a{margin-top:auto;font-weight:900}
.article-shell{width:min(900px,calc(100% - 2rem));margin:auto;padding:5rem 0 8rem}
.article-shell header{border-bottom:3px solid #0d0b12;padding-bottom:2.5rem}
.article-shell h1{font:900 clamp(3.3rem,8vw,7rem)/.82 Arial,sans-serif;letter-spacing:-.07em;margin:1rem 0}
.article-shell .dek{font-size:1.2rem;line-height:1.6}
.article-body{font-family:Georgia,serif;font-size:1.15rem;line-height:1.8}
.article-body h2{font:900 2.3rem/1 Arial,sans-serif;letter-spacing:-.04em;margin-top:3rem}
.article-body h3{font-family:Arial,sans-serif;margin-top:2rem}
.article-body li{margin:.65rem 0}
.callout{font-family:'Courier New',monospace;border:2px solid #0d0b12;background:#d7ff38;padding:1.2rem;margin:2rem 0}
.warning{background:#ffe0f8;border-color:#ff4fd8}
.sources{font-family:'Courier New',monospace;margin-top:4rem;border:2px solid #0d0b12;background:#fff;padding:1.5rem}
.sources h2{margin-top:0}
.sources li{margin:1rem 0}
.profile-hero{display:grid;grid-template-columns:.7fr 1.3fr;gap:2rem;margin-top:3rem}
.profile-art{min-height:520px;display:grid;place-items:center;border:2px solid #0d0b12;background:repeating-conic-gradient(#cac5d8 0 25%,#efedf5 0 50%) 0/28px 28px;box-shadow:10px 10px 0 #ff4fd8;font-weight:900;text-align:center}
.quick-facts{display:grid;grid-template-columns:repeat(2,1fr);border-top:2px solid #0d0b12}
.quick-facts div{padding:1rem;border-right:1px solid #0d0b12;border-bottom:1px solid #0d0b12}
.quick-facts dt{font-weight:900;color:#6241c7}
.quick-facts dd{margin:.35rem 0 0}
.profile-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:2rem}
.profile-gallery i{display:grid;place-items:center;aspect-ratio:4/5;border:2px solid #0d0b12;background:#dedbe8;color:#6241c7;font-style:normal}
.vanessa-title h1,.live-model-title h1{font-size:clamp(4.2rem,10vw,8.4rem)}
.vanessa-profile,.live-model-profile{align-items:stretch}
.profile-photo{position:relative;min-height:620px;margin:0;border:2px solid #0d0b12;background:#130c1d;box-shadow:10px 10px 0 #ff4fd8;overflow:hidden}
.profile-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 32%;filter:saturate(1.08) contrast(1.04)}
.profile-photo figcaption{position:absolute;left:0;bottom:0;background:#0d0b12;color:#38f2ff;padding:.65rem .8rem;font-weight:900;font-size:.72rem;letter-spacing:.08em}
.vanessa-profile .bio-panel,.live-model-profile .bio-panel{position:relative;overflow:hidden;margin-top:0;min-height:620px;padding-bottom:14rem}
.profile-sticker{position:absolute;width:min(44%,250px);right:1.2rem;bottom:.6rem;rotate:7deg;filter:drop-shadow(8px 8px 0 #8b5cf655)}
.profile-sticker.framed-sticker{width:min(38%,210px);border:2px solid #0d0b12;box-shadow:7px 7px 0 #38f2ff}
.gallery-panel>p{max-width:52rem}
.model-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}
.model-gallery button{position:relative;min-width:0;padding:0;border:2px solid #0d0b12;background:#0d0b12;cursor:zoom-in;overflow:hidden;box-shadow:6px 6px 0 #8b5cf6}
.model-gallery button:nth-child(even){box-shadow:6px 6px 0 #ff4fd8}
.model-gallery img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .35s,filter .35s}
.model-gallery button:hover img,.model-gallery button:focus-visible img{transform:scale(1.045);filter:saturate(1.18) contrast(1.06)}
.model-gallery span{position:absolute;left:0;right:0;bottom:0;padding:.65rem;background:#0d0b12e8;color:#d7ff38;font-weight:900;text-align:left;font-size:.72rem;letter-spacing:.05em}
.set-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem;margin-top:2rem}
.set-card{display:grid;grid-template-columns:minmax(150px,.8fr) 1.2fr;min-height:250px;border:2px solid #0d0b12;background:#0d0b12;color:#f7f5ff;text-decoration:none;box-shadow:8px 8px 0 #8b5cf6;overflow:hidden;transition:.2s}
.set-card:nth-child(even){box-shadow:8px 8px 0 #ff4fd8}.set-card:hover{translate:-3px -3px;box-shadow:13px 13px 0 #d7ff38}
.set-card img{width:100%;height:100%;object-fit:cover}.set-card span{display:flex;flex-direction:column;justify-content:flex-end;padding:1.3rem}.set-card b{font:900 clamp(2.2rem,5vw,4rem)/.8 Arial,sans-serif;color:#38f2ff}.set-card small{margin-top:1rem;color:#d7ff38;font-weight:900}
.set-page .page-hero h1{font-size:clamp(3.4rem,9vw,7.4rem)}
.set-page .gallery-panel{margin-top:3rem}
.photo-lightbox{width:min(920px,calc(100% - 1rem));max-height:94vh;padding:1rem;border:2px solid #38f2ff;background:#09070d;color:#f7f5ff;box-shadow:12px 12px 0 #ff4fd8}
.photo-lightbox::backdrop{background:#130820e8;backdrop-filter:blur(6px)}
.photo-lightbox img{display:block;max-width:100%;height:min(82vh,1100px);margin:auto;object-fit:contain}
.photo-lightbox p{margin:.8rem 3rem 0 0;color:#38f2ff;font-size:.72rem;letter-spacing:.09em}
.lightbox-close{position:absolute;z-index:1;right:.7rem;top:.7rem;width:42px;height:42px;border:2px solid #0d0b12;background:#d7ff38;color:#0d0b12;font-size:1.5rem;font-weight:900;cursor:pointer}
.qa{border-top:2px solid #0d0b12;padding:1.4rem 0}
.qa h3{font:900 1.15rem Arial,sans-serif}
.qa p{font:1.1rem/1.65 Georgia,serif}
.empty-answer{color:#706b78;font-style:italic}
.article-nav{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem}
.article-nav a{font-weight:900}
@media(max-width:850px){.page-hero,.profile-hero{grid-template-columns:1fr}
.article-tile{grid-column:span 6}
.profile-art{min-height:380px}
.profile-photo{min-height:720px}.vanessa-profile .bio-panel,.live-model-profile .bio-panel{min-height:520px}
}
@media(max-width:560px){.page-main,.article-shell{padding-top:3rem}
.page-hero h1{font-size:20vw}
.field-grid{grid-template-columns:1fr}
.article-tile{grid-column:1/-1}
.profile-gallery{grid-template-columns:repeat(2,1fr)}
.model-gallery{grid-template-columns:repeat(2,1fr)}.set-directory{grid-template-columns:1fr}.set-card{grid-template-columns:1fr;min-height:0}.set-card img{height:300px}
.profile-photo{min-height:560px}.vanessa-profile .bio-panel,.live-model-profile .bio-panel{padding-bottom:12rem}.profile-sticker{width:180px}
.quick-facts{grid-template-columns:1fr}
.topbar .motion-button{display:none}
}
@media print{.topbar,.sub-links,.print-button,footer{display:none!important}
.subpage{background:#fff}
.page-main{width:100%;padding:0}
.form-section{box-shadow:none;break-inside:avoid}
.question-field input,.question-field textarea{background:#fff}
.page-hero h1{font-size:4rem}
}
.preview-note{margin:2rem 0 0;border:2px solid #0d0b12;background:#38f2ff;padding:1rem;box-shadow:6px 6px 0 #8b5cf6}
.upload-panel{background:#120d1a!important;color:#f7f5ff!important;border-color:#38f2ff!important}.upload-panel h2{color:#ff4fd8}
.file-drop{display:grid;place-items:center;gap:.8rem;min-height:180px;margin:2rem 0;border:3px dashed #38f2ff;background:#25133d;color:#d7ff38;font-weight:900;cursor:pointer}.file-drop input{max-width:min(520px,90%);color:#f7f5ff}.file-drop span{color:#38f2ff;font-size:.8rem}
.submit-button{border:2px outset #fff;background:#d7ff38;color:#0d0b12;padding:1rem 1.3rem;font-weight:900;cursor:pointer;box-shadow:6px 6px 0 #ff4fd8}.submit-button:hover{transform:translate(3px,3px);box-shadow:3px 3px 0 #ff4fd8}
.form-status{margin-top:1rem;padding:1rem;background:#d7ff38;color:#0d0b12;font-weight:900}.form-status[hidden]{display:none}
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.submit-button:disabled{opacity:.65;cursor:wait}
