/* Generated from app/globals.css by scripts/sync-source-theme.mjs. */
:root {
  --black: #050305;
  --ink: #0a0507;
  --smoke: #12080c;
  --blood: #26050d;
  --oxblood: #3b0713;
  --wine: #570b1d;
  --wine-bright: #760d27;
  --ruby: #9e1033;
  --crimson: #c91643;
  --red: #ed174c;
  --scarlet: #ff3b64;
  --magenta: #e62887;
  --hot-pink: #ff4f9a;
  --rose: #ff9bb2;
  --blush: #ffd1dc;
  --midnight-purple: #100018;
  --deep-plum: #24052f;
  --violet: #5a0b69;
  --ivory: #fff8f8;
  --muted: #dac7cc;
  --faint: #9d858c;
  --steel: #c6c5ca;
  --line: rgba(255, 59, 100, .24);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--black); }
body { margin: 0; overflow-x: hidden; background: var(--black); color: var(--ivory); font-family: Inter, "Helvetica Neue", Arial, sans-serif; font-size: 16px; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input { font: inherit; }
main { min-height: 100vh; }
::selection { background: var(--red); color: var(--ivory); }
:focus-visible { outline: 3px solid var(--scarlet); outline-offset: 4px; }

.homePage { background: var(--black); }
.homePage::before { content:"";position:fixed;z-index:90;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,var(--scarlet),var(--hot-pink),var(--violet),var(--ruby),var(--scarlet));background-size:100% 300%;animation:realmPulse 8s ease infinite;pointer-events:none;box-shadow:0 0 24px rgba(255,79,154,.55) }
@keyframes realmPulse { 50% { background-position:0 100% } }
.siteHeader { position: absolute; inset: 0 0 auto; z-index: 50; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 30px; padding: 24px clamp(22px,5vw,76px); border-bottom: 1px solid rgba(255,255,255,.14); background: linear-gradient(180deg,rgba(5,3,5,.92),rgba(5,3,5,.16)); backdrop-filter: blur(6px); }
.brand { width: max-content; color: var(--ivory); font-family: Georgia,"Times New Roman",serif; font-size: clamp(24px,2vw,32px); letter-spacing: -.045em; }
.brand span { color: var(--scarlet); font-style: italic; text-shadow: 0 0 22px rgba(237,23,76,.55); }
.siteHeader nav { display: flex; gap: clamp(20px,3vw,44px); }
.siteHeader nav a,.footerNav a { color: var(--muted); font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; transition: color .25s ease,transform .25s ease; }
.siteHeader nav a:hover,.footerNav a:hover { color: var(--rose); transform: translateY(-2px); }
.headerCta { justify-self: end; display: flex; align-items: center; gap: 18px; padding: 13px 17px; border: 1px solid rgba(255,59,100,.72); background: rgba(87,11,29,.58); color: var(--ivory); font-size: 10px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; transition: background .25s ease,transform .25s ease,box-shadow .25s ease; }
.headerCta:hover { background: var(--ruby); transform: translateY(-2px); box-shadow: 0 12px 30px rgba(201,22,67,.28); }

.hero { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(0,1fr) minmax(330px,.58fr); gap: clamp(36px,6vw,100px); align-items: end; min-height: 960px; padding: 150px clamp(24px,7vw,112px) 76px; overflow: hidden; background: var(--ink); }
.heroImage { position: absolute; inset: 0 0 0 auto; z-index: -4; width: min(59vw,1050px); height: 100%; object-fit: cover; object-position: center 18%; animation: heroBreath 16s ease-in-out infinite alternate; }
@keyframes heroBreath { to { transform: scale(1.045); } }
.heroShade { position: absolute; inset: 0; z-index: -3; background: radial-gradient(circle at 74% 36%,rgba(237,23,76,.18),transparent 30%),linear-gradient(90deg,rgba(5,3,5,1) 0%,rgba(5,3,5,.98) 34%,rgba(5,3,5,.7) 57%,rgba(5,3,5,.16) 79%,rgba(5,3,5,.66) 100%),linear-gradient(0deg,rgba(5,3,5,.91) 0%,transparent 48%,rgba(5,3,5,.2) 100%); }
.heroTexture { position: absolute; inset: 0; z-index: -2; opacity: .28; pointer-events: none; background-image: linear-gradient(rgba(255,59,100,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,59,100,.045) 1px,transparent 1px); background-size: 64px 64px; mask-image: linear-gradient(90deg,black,transparent 75%); }
.heroCopy { max-width: 850px; align-self: center; padding-top: 50px; }
.status { display: flex; align-items: center; gap: 11px; margin: 0 0 58px; color: #f2e6e9; font-size: 10px; font-weight: 750; line-height: 1.5; letter-spacing: .14em; text-transform: uppercase; }
.status span { flex: 0 0 auto; width: 8px; height: 8px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 7px rgba(237,23,76,.13),0 0 25px var(--red); animation: pulseDot 2.4s ease-in-out infinite; }
@keyframes pulseDot { 50% { box-shadow: 0 0 0 12px rgba(237,23,76,0),0 0 35px var(--scarlet); } }
.eyebrow { margin: 0 0 18px; color: var(--rose); font-size: 10px; font-weight: 850; letter-spacing: .28em; text-transform: uppercase; }
.hero h1,.sectionHeading h2,.playLab h2,.statement h2,.demoPromise h2,.demoGateCard h1,.demoIntro h1,.demoBrowserHeading h2 { font-family: Georgia,"Times New Roman",serif; font-weight: 400; }
.hero h1 { margin: 0; max-width: 900px; font-size: clamp(78px,8.2vw,140px); line-height: .8; letter-spacing: -.067em; text-shadow: 0 5px 30px rgba(0,0,0,.35); }
.hero h1 em { display: inline-block; max-width: 820px; font-size: .72em; line-height: .88; }
.hero h1 em,.sectionHeading h2 em,.playLab h2 em,.statement h2 em { color: var(--scarlet); font-weight: 400; text-shadow: 0 0 38px rgba(237,23,76,.35); }
.lede { max-width: 700px; margin: 36px 0 0; color: #f1e4e7; font-size: clamp(18px,1.45vw,22px); line-height: 1.72; text-wrap: balance; }
.actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 38px; }
.button { display: inline-flex; align-items: center; justify-content: space-between; min-height: 57px; padding: 0 22px; gap: 28px; border: 1px solid transparent; color: var(--ivory); font-size: 10px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; cursor: pointer; transition: transform .25s ease,box-shadow .25s ease,background .25s ease; }
.button:hover { transform: translateY(-3px); }
.buttonRuby { background: linear-gradient(110deg,var(--wine-bright),var(--crimson) 52%,var(--red)); box-shadow: 0 14px 36px rgba(201,22,67,.3); }
.buttonRuby:hover { background: linear-gradient(110deg,var(--ruby),var(--red)); box-shadow: 0 20px 50px rgba(237,23,76,.4); }
.buttonSmoke { border-color: rgba(255,155,178,.44); background: rgba(10,5,7,.66); backdrop-filter: blur(12px); }
.buttonSmoke:hover { background: rgba(87,11,29,.84); }
.heroDoors { align-self: end; width: min(100%,490px); padding: 23px 25px 26px; border: 1px solid rgba(255,155,178,.32); background: rgba(8,3,6,.74); box-shadow: 0 30px 80px rgba(0,0,0,.44); backdrop-filter: blur(18px); }
.heroDoors > p { margin: 0 0 14px; color: var(--rose); font-size: 10px; font-weight: 850; letter-spacing: .2em; text-transform: uppercase; }
.heroDoors > a { display: grid; grid-template-columns: 40px 1fr auto; gap: 14px; align-items: center; min-height: 78px; border-top: 1px solid rgba(255,255,255,.14); transition: padding .25s ease,background .25s ease; }
.heroDoors > a:last-child { border-bottom: 1px solid rgba(255,255,255,.14); }
.heroDoors > a:hover { padding-inline: 11px; background: rgba(158,16,51,.2); }
.heroDoors b { color: var(--scarlet); font: 400 18px Georgia,serif; }
.heroDoors a > span { display: grid; gap: 5px; }
.heroDoors strong { font-size: 14px; }.heroDoors small { color: var(--faint); font-size: 11px; }
.heroDoors i { color: var(--rose); font-size: 18px; font-style: normal; }
.heroStamp { position: absolute; right: clamp(24px,7vw,112px); top: 125px; display: grid; justify-items: center; gap: 5px; width: 74px; height: 74px; padding-top: 15px; border: 1px solid rgba(255,155,178,.42); border-radius: 50%; background: rgba(38,5,13,.55); backdrop-filter: blur(10px); box-shadow: 0 0 32px rgba(237,23,76,.2); }
.heroStamp span { font: italic 400 22px Georgia,serif; }.heroStamp small { color: var(--rose); font-size: 8px; font-weight: 850; letter-spacing: .12em; }

.marquee { overflow: hidden; padding: 17px 0; background: linear-gradient(90deg,#4a0819,var(--ruby),var(--red),var(--ruby),#4a0819); background-size: 240% 100%; animation: shiftGradient 9s ease infinite; }
@keyframes shiftGradient { 50% { background-position: 100% 50%; } }
.marquee div { display: flex; align-items: center; width: max-content; animation: move 24s linear infinite; }
.marquee span { padding: 0 28px; font: 700 15px Georgia,serif; letter-spacing: .12em; text-transform: uppercase; }
.marquee i { width: 5px; height: 5px; border-radius: 50%; background: var(--ivory); box-shadow: 0 0 14px var(--ivory); }
@keyframes move { to { transform: translateX(-50%); } }

.entrance { position: relative; padding: 124px clamp(20px,6vw,94px) 145px; background: radial-gradient(circle at 88% 10%,rgba(158,16,51,.2),transparent 28%),linear-gradient(145deg,#080405,#13070a); }
.sectionHeading { display: grid; grid-template-columns: 1.18fr .7fr; gap: 8vw; align-items: end; max-width: 1500px; margin: 0 auto 58px; }
.sectionHeading h2 { margin: 0; font-size: clamp(49px,5.5vw,88px); line-height: .98; letter-spacing: -.05em; }
.sectionHeading > p { margin: 0 0 8px; color: var(--muted); font-size: 17px; line-height: 1.72; }
.entranceGrid { display: grid; grid-template-columns: 1fr 1fr .88fr; gap: 14px; max-width: 1500px; margin: auto; }
.featureCard { position: relative; isolation: isolate; display: block; min-height: 620px; overflow: hidden; border: 1px solid rgba(255,255,255,.11); background: var(--blood); transition: transform .4s ease,border-color .4s ease,box-shadow .4s ease; }
.featureCard::after { content: ""; position: absolute; inset: 0; border: 1px solid transparent; transition: border-color .35s ease; pointer-events: none; }
.featureCard:hover { transform: translateY(-10px); border-color: rgba(255,59,100,.72); box-shadow: 0 35px 75px rgba(87,11,29,.5); }
.featureCard:hover::after { inset: 11px; border-color: rgba(255,155,178,.34); }
.visualCard img { width: 100%; height: 100%; min-height: 620px; object-fit: cover; transition: transform .8s ease,filter .8s ease; }
.visualCard:hover img { transform: scale(1.055); filter: saturate(1.14) contrast(1.04); }
.cardShade { position: absolute; inset: 0; background: linear-gradient(180deg,rgba(5,3,5,.04) 28%,rgba(5,3,5,.34) 52%,rgba(5,3,5,.98) 100%); }
.cardNumber { position: absolute; z-index: 2; top: 25px; right: 27px; color: rgba(255,248,248,.74); font: 400 clamp(40px,4.8vw,78px)/1 Georgia,serif; letter-spacing: -.06em; text-shadow: 0 5px 20px rgba(0,0,0,.45); }
.cardCopy { position: absolute; z-index: 3; left: 28px; right: 28px; bottom: 28px; }
.cardCopy > span { color: var(--rose); font-size: 10px; font-weight: 850; letter-spacing: .2em; text-transform: uppercase; }
.cardCopy h3 { max-width: 440px; margin: 13px 0 10px; font: 400 clamp(31px,2.5vw,43px)/1.04 Georgia,serif; }
.cardCopy p { max-width: 370px; margin: 0 0 26px; color: var(--muted); font-size: 14px; line-height: 1.55; }
.cardCopy b { display: flex; justify-content: space-between; align-items: center; padding-top: 17px; border-top: 1px solid rgba(255,255,255,.18); font-size: 10px; letter-spacing: .13em; text-transform: uppercase; }
.cardCopy i { color: var(--scarlet); font-size: 19px; font-style: normal; }
.archiveFeature { background: radial-gradient(circle at 50% 28%,rgba(237,23,76,.33),transparent 32%),linear-gradient(145deg,#5c0a21,#12070a 72%); }
.archivePortrait { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 14%;filter:saturate(.86) contrast(1.05);transition:transform .8s ease,filter .8s ease }.archiveFeature:hover .archivePortrait{transform:scale(1.055);filter:saturate(1.04) contrast(1.06)}
.archiveFeature::before { content: ""; position: absolute; inset: 12px; border: 1px solid rgba(255,155,178,.2); }
.archiveLetters { position: absolute; inset: 40px 0 auto; display: flex; justify-content: center; align-items: center; gap: 12px; color: rgba(255,209,220,.18); font: 400 clamp(82px,9vw,145px)/1 Georgia,serif; transform: rotate(-5deg); }
.archiveLetters small { color: rgba(255,209,220,.38); font: 800 10px Inter,sans-serif; letter-spacing: .17em; text-transform: uppercase; }
.archiveRings i { position: absolute; left: 50%; top: 36%; width: 220px; height: 220px; border: 1px solid rgba(255,155,178,.12); border-radius: 50%; transform: translate(-50%,-50%); animation: archivePulse 7s ease-out infinite; }
.archiveRings i:nth-child(2){animation-delay:2.3s}.archiveRings i:nth-child(3){animation-delay:4.6s}
@keyframes archivePulse { from{transform:translate(-50%,-50%) scale(.55);opacity:.75}to{transform:translate(-50%,-50%) scale(2.15);opacity:0} }

.playLab { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(0,.88fr) minmax(430px,1.12fr); gap: 16px; align-items: stretch; padding: 110px clamp(24px,6vw,96px); overflow: hidden; background: radial-gradient(circle at 15% 16%,rgba(158,16,51,.24),transparent 27%),radial-gradient(circle at 88% 85%,rgba(87,11,29,.28),transparent 25%),#070305; }
.playLead { position: relative; min-height: 660px; overflow: hidden; border: 1px solid rgba(255,155,178,.3); background: var(--blood); box-shadow: 0 35px 80px rgba(0,0,0,.38); }
.playLead::before { content:"";position:absolute;inset:14px;z-index:2;border:1px solid rgba(255,209,220,.16);pointer-events:none }
.playLead > img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 24%;filter:saturate(.9) contrast(1.04);transition:transform .9s ease,filter .9s ease }
.playLead:hover > img { transform:scale(1.025);filter:saturate(1) contrast(1.05) }
.playLeadShade { position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,3,5,.03) 23%,rgba(5,3,5,.22) 47%,rgba(5,3,5,.97) 88%),linear-gradient(90deg,rgba(5,3,5,.24),transparent 55%) }
.playLabCopy { position:absolute;z-index:3;left:clamp(28px,4vw,58px);right:clamp(28px,4vw,58px);bottom:clamp(30px,4vw,55px) }.playLab h2 { max-width:650px;margin:0;font-size:clamp(52px,5vw,82px);line-height:.92;letter-spacing:-.058em }
.playLabCopy > p:not(.eyebrow) { max-width: 560px; margin: 24px 0 30px; color: #f1e2e6; font-size: 16px; line-height: 1.67; }
.temptButton { display: flex; justify-content: space-between; align-items: center; width: min(100%,390px); min-height: 64px; padding: 0 20px; border: 1px solid rgba(255,155,178,.56); background: rgba(59,7,19,.72); color: var(--ivory); font-size: 11px; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; cursor: pointer; transition: background .25s ease,transform .25s ease,box-shadow .25s ease; }
.temptButton:hover { background: var(--crimson); transform: translateX(7px); box-shadow: 0 14px 34px rgba(201,22,67,.33); }
.temptButton i { font-size: 22px; font-style: normal; }
.appetitePicker{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 14px}.appetitePicker button{padding:10px 13px;border:1px solid rgba(255,155,178,.34);background:rgba(16,0,24,.72);color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:transform .22s ease,background .22s ease,border-color .22s ease,color .22s ease,box-shadow .22s ease}.appetitePicker button:hover,.appetitePicker button.active{transform:translateY(-2px);border-color:var(--hot-pink);background:linear-gradient(110deg,var(--ruby),var(--magenta));color:#fff;box-shadow:0 10px 28px rgba(230,40,135,.22)}
@keyframes spin { to { transform: rotate(360deg); } }
.gameReveal { position: relative; isolation: isolate; display: flex; flex-direction: column; min-height: 660px; padding: clamp(34px,5vw,70px); overflow: hidden; border: 1px solid rgba(255,155,178,.38); background: radial-gradient(circle at 83% 72%,rgba(90,11,105,.3),transparent 27%),linear-gradient(145deg,rgba(43,6,16,.96),rgba(16,0,24,.98) 68%); box-shadow: 0 35px 80px rgba(0,0,0,.38); }
.gameReveal::before { content: ""; position: absolute; z-index: -1; width: 430px; height: 430px; right: -190px; top: -200px; border: 1px solid rgba(255,155,178,.3); border-radius: 50%; box-shadow: 0 0 0 48px rgba(158,16,51,.08),0 0 0 96px rgba(237,23,76,.04); animation: breathe 5s ease-in-out infinite; }
@keyframes breathe { 50% { transform: scale(1.09); opacity: .64; } }
.gameTopline { display: flex; justify-content: space-between; align-items: center; }.gameTopline span { padding: 8px 12px; background: var(--crimson); font-size: 9px; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }.gameTopline b { color: var(--rose); font: 400 15px Georgia,serif; }
.gameReveal > p { margin: 76px 0 12px; color: var(--rose); font-size: 10px; font-weight: 850; letter-spacing: .18em; text-transform: uppercase; }
.gameReveal h3 { margin: 0; max-width: 730px; font: 400 clamp(58px,6vw,98px)/.9 Georgia,serif; letter-spacing: -.058em; }
.gameReveal small { max-width: 580px; margin-top: 25px; color: var(--muted); font-size: 15px; line-height: 1.65; }
.gameReveal > a { display: flex; justify-content: space-between; align-items: center; width: min(100%,380px); margin-top: auto; padding: 17px 0 12px; border-bottom: 1px solid var(--scarlet); font-size: 11px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }.gameReveal > a b { color: var(--scarlet); font-size: 19px; }
.gameDots { display: flex; gap: 7px; margin-top: 30px; }.gameDots i { width: 30px; height: 3px; background: rgba(255,255,255,.2); transition: background .25s ease,width .25s ease; }.gameDots i.active { width: 52px; background: var(--red); box-shadow: 0 0 12px var(--red); }

.readingRoom { position: relative; isolation: isolate; overflow: hidden; padding: 128px clamp(20px,6vw,94px) 140px; background: var(--smoke); }
.readingBackdrop { position: absolute; inset: 0; z-index: -3; }.readingBackdrop img { width: 100%; height: 100%; object-fit: cover; object-position: 78% 24%; filter: saturate(.84) contrast(1.05); }.readingBackdrop::after { content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,3,5,.98),rgba(5,3,5,.88) 58%,rgba(5,3,5,.65)),linear-gradient(0deg,#080405 0%,transparent 50%,#080405 100%); }
.readingInner { max-width: 1500px; margin: auto; }.readingHeading { margin-bottom: 38px; }.topicDoors { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 32px; }.topicDoors a { display: flex; justify-content: space-between; gap: 24px; min-width: 190px; padding: 14px 16px; border: 1px solid rgba(255,155,178,.28); background: rgba(38,5,13,.54); color: var(--muted); font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; transition: background .25s ease,color .25s ease,transform .25s ease; }.topicDoors a:hover { background: var(--ruby); color: var(--ivory); transform: translateY(-3px); }.topicDoors span { color: var(--scarlet); }
.readRail { display: grid; grid-template-columns: repeat(4,1fr); gap: 9px; }.readTile { position: relative; display: flex; flex-direction: column; min-height: 430px; padding: 26px; overflow: hidden; border: 1px solid rgba(255,255,255,.12); background: linear-gradient(155deg,rgba(59,7,19,.93),rgba(10,5,7,.95)); transition: transform .3s ease,border-color .3s ease,box-shadow .3s ease; }.readTile::before { content:"";position:absolute;right:-100px;bottom:-120px;width:260px;height:260px;border:1px solid rgba(255,59,100,.22);border-radius:50%;box-shadow:0 0 0 34px rgba(158,16,51,.08),0 0 0 68px rgba(237,23,76,.035);transition:transform .4s ease; }.readTile:hover { transform:translateY(-8px);border-color:rgba(255,59,100,.62);box-shadow:0 25px 55px rgba(59,7,19,.55); }.readTile:hover::before { transform:scale(1.16); }.readTile > span { position:relative;color:var(--scarlet);font:400 31px Georgia,serif; }.readTile small { position:relative;margin:67px 0 16px;color:var(--rose);font-size:11px;line-height:1.5; }.readTile h3 { position:relative;margin:0;font:400 clamp(27px,2vw,35px)/1.07 Georgia,serif; }.readTile b { position:relative;display:flex;justify-content:space-between;margin-top:auto;padding-top:18px;border-top:1px solid rgba(255,255,255,.13);color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase; }.readTile i { color:var(--scarlet);font-size:18px;font-style:normal; }
.wideTextLink { display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding:19px 22px;border:1px solid rgba(255,155,178,.3);background:rgba(87,11,29,.55);font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase;transition:background .25s ease; }.wideTextLink:hover{background:var(--ruby)}.wideTextLink span{color:var(--rose);font-size:20px}

.statement { display:grid;grid-template-columns:minmax(420px,.82fr) 1.18fr;min-height:900px;background:linear-gradient(125deg,#100609,#350711); }.statementImage { position:relative;min-height:760px;overflow:hidden; }.statementImage::after { content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 50%,#27070f 100%),linear-gradient(0deg,rgba(5,3,5,.64),transparent 55%); }.statementImage img { width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.92) contrast(1.08);transition:transform 1s ease; }.statement:hover .statementImage img{transform:scale(1.025)}.statementImage span { position:absolute;z-index:2;left:-14px;bottom:0;color:rgba(255,248,248,.07);font:400 clamp(92px,11vw,180px)/.7 Georgia,serif;writing-mode:vertical-rl;transform:rotate(180deg); }.statementCopy { align-self:center;max-width:950px;padding:95px clamp(35px,7vw,120px); }.statement h2 { margin:0;font-size:clamp(49px,5vw,84px);line-height:.98;letter-spacing:-.05em; }.statementCopy>p:not(.eyebrow){margin:34px 0 0;color:#eedfe3;font-size:18px;line-height:1.78}.statement blockquote{margin:34px 0;padding:22px 0 22px 25px;border-left:2px solid var(--red);color:var(--blush);font:italic 400 20px/1.6 Georgia,serif}.principleGrid{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:40px;background:rgba(255,155,178,.18);border:1px solid rgba(255,155,178,.18)}.principleGrid span{padding:18px;background:rgba(8,3,5,.58);color:var(--muted);font-size:12px}.principleGrid b{display:block;margin-bottom:7px;color:var(--scarlet);font:400 17px Georgia,serif}

.demoPromise { display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(28px,5vw,76px);padding:88px clamp(22px,7vw,110px);border-block:1px solid var(--line);background:radial-gradient(circle at 8% 50%,rgba(201,22,67,.2),transparent 16%),#090406}.demoSeal{display:grid;place-items:center;width:118px;height:118px;border:1px solid var(--scarlet);border-radius:50%;box-shadow:0 0 38px rgba(237,23,76,.19),inset 0 0 24px rgba(158,16,51,.2)}.demoSeal span{color:var(--rose);font:400 28px Georgia,serif}.demoPromise h2{max-width:850px;margin:0;font-size:clamp(41px,4.6vw,68px);line-height:1;letter-spacing:-.047em}.demoPromise p:not(.eyebrow){max-width:790px;margin:17px 0 0;color:var(--muted);line-height:1.72}

footer { display:grid;grid-template-columns:1fr auto;gap:55px;padding:75px clamp(22px,7vw,110px) 34px;background:#040203}footer>div:first-child p{max-width:540px;color:var(--faint);font-size:13px;line-height:1.65}.footerNav{display:grid;grid-template-columns:1fr 1fr;gap:20px 45px;align-content:start}.copyright{grid-column:1/-1;margin:15px 0 0;padding-top:25px;border-top:1px solid rgba(255,255,255,.09);color:#7c686e;font-size:11px}.mobileDock{display:none}

/* Read-only demo gate and page browser */
.demoGatePage{position:relative;min-height:100vh;display:grid;place-items:center;padding:28px;overflow:hidden;background:radial-gradient(circle at 20% 20%,rgba(237,23,76,.31),transparent 30%),radial-gradient(circle at 82% 80%,rgba(87,11,29,.5),transparent 34%),var(--black)}.demoGatePage::before{content:"";position:absolute;width:540px;height:540px;border:1px solid rgba(255,155,178,.2);border-radius:50%;animation:spin 25s linear infinite}.demoGateCard{position:relative;z-index:2;width:min(760px,100%);padding:clamp(36px,7vw,76px);border:1px solid rgba(255,155,178,.46);background:rgba(10,4,7,.94);box-shadow:0 50px 120px rgba(0,0,0,.55),0 0 70px rgba(201,22,67,.14);text-align:center;backdrop-filter:blur(20px)}.demoGateCard h1{margin:0;font-size:clamp(45px,7vw,82px);line-height:.98;letter-spacing:-.05em}.demoGateCard>p:not(.eyebrow){max-width:600px;margin:28px auto;color:var(--muted);font-size:17px;line-height:1.75}.demoEnter{margin:0 auto}.demoExit{display:block;width:max-content;margin:22px auto 0;color:var(--faint);font-size:12px;border-bottom:1px solid #7a3444}
.demoGalleryPage{min-height:100vh;background:radial-gradient(circle at 80% 8%,rgba(158,16,51,.19),transparent 25%),var(--black)}.demoTopbar{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:18px clamp(20px,5vw,70px);border-bottom:1px solid var(--line);background:rgba(5,3,5,.94);backdrop-filter:blur(18px)}.demoTopbar>span{color:var(--rose);font-size:10px;font-weight:850;letter-spacing:.18em;text-transform:uppercase}.demoTopbar>a:last-child{justify-self:end;color:var(--muted);font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.demoIntro{position:relative;padding:110px clamp(22px,7vw,110px) 92px;overflow:hidden;background:radial-gradient(circle at 75% 20%,rgba(237,23,76,.28),transparent 28%),linear-gradient(125deg,#090406,#350711)}.demoIntro::after{content:"57";position:absolute;right:-1vw;bottom:-5vw;color:rgba(255,255,255,.045);font:900 clamp(180px,28vw,430px)/.8 Arial,sans-serif}.demoIntro h1{position:relative;z-index:1;margin:0;font-size:clamp(54px,7vw,100px);line-height:.93;letter-spacing:-.055em}.demoIntro h1 em{color:var(--scarlet);font-weight:400}.demoIntro>p:not(.eyebrow){position:relative;z-index:1;max-width:820px;margin:30px 0 0;color:#f0e1e5;font-size:18px;line-height:1.75}.demoStats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;max-width:1150px;margin-top:54px;background:rgba(255,155,178,.22);border:1px solid rgba(255,155,178,.22)}.demoStats span{padding:22px;background:rgba(8,3,5,.9);color:var(--muted);font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.demoStats strong{display:block;color:var(--rose);font:400 36px Georgia,serif;letter-spacing:-.03em}.demoBrowser{padding:90px clamp(18px,6vw,90px) 125px}.demoBrowserHeading{display:grid;grid-template-columns:1fr minmax(280px,450px);gap:40px;align-items:end}.demoBrowserHeading h2{margin:0;font-size:clamp(45px,5vw,72px);line-height:1;letter-spacing:-.045em}.demoSearch{display:grid;gap:10px;color:var(--rose);font-size:10px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.demoSearch input{width:100%;padding:17px 18px;border:1px solid rgba(255,155,178,.3);outline:none;background:#17070c;color:var(--ivory);font-size:15px}.demoSearch input:focus{border-color:var(--scarlet);box-shadow:0 0 25px rgba(237,23,76,.16)}.demoFilters{display:flex;flex-wrap:wrap;gap:8px;margin-top:38px}.demoFilters button{padding:11px 15px;border:1px solid rgba(255,155,178,.3);background:transparent;color:var(--muted);font-size:9px;font-weight:850;letter-spacing:.09em;text-transform:uppercase;cursor:pointer}.demoFilters button.active,.demoFilters button:hover{background:linear-gradient(110deg,var(--wine-bright),var(--red));color:var(--ivory)}.demoCount{margin:24px 0 18px;color:var(--faint);font-size:12px}.demoPageGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.demoPageCard{position:relative;isolation:isolate;min-height:300px;padding:25px;overflow:hidden;border:1px solid rgba(255,255,255,.09);background:linear-gradient(145deg,#1e0810,#090406);transition:transform .3s ease,border-color .3s ease}.demoPageCard::after{content:"";position:absolute;z-index:-1;width:250px;height:250px;right:-130px;bottom:-140px;border-radius:50%;background:var(--ruby);filter:blur(45px);opacity:.18;transition:opacity .3s ease,transform .3s ease}.demoPageCard:nth-child(3n+2)::after{background:var(--red)}.demoPageCard:nth-child(3n+3)::after{background:var(--wine-bright)}.demoPageCard:hover{transform:translateY(-7px);border-color:rgba(255,59,100,.62)}.demoPageCard:hover::after{opacity:.46;transform:scale(1.2)}.demoPageCard>span{color:var(--scarlet);font:400 27px Georgia,serif}.demoPageCard p{margin:40px 0 10px;color:var(--rose);font-size:9px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.demoPageCard h3{margin:0;max-width:96%;font:400 28px/1.07 Georgia,serif}.demoPageCard small{display:block;margin-top:13px;color:#b99fa6}.demoPageCard b{position:absolute;left:25px;bottom:22px;color:var(--rose);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.demoEmpty{padding:60px 20px;border:1px dashed var(--line);color:var(--muted);text-align:center}

@media (max-width:1050px){.siteHeader{grid-template-columns:1fr auto}.siteHeader nav{display:none}.hero{grid-template-columns:1fr .7fr;padding-inline:34px;gap:30px}.hero h1{font-size:clamp(72px,10.5vw,112px)}.heroShade{background:linear-gradient(90deg,rgba(5,3,5,.98),rgba(5,3,5,.72) 58%,rgba(5,3,5,.38)),linear-gradient(0deg,rgba(5,3,5,.85),transparent 60%)}.entranceGrid{grid-template-columns:1fr 1fr}.archiveFeature{grid-column:1/-1;min-height:500px}.playLab{grid-template-columns:1fr 1fr;gap:44px;padding-inline:36px}.readRail{grid-template-columns:1fr 1fr}.statement{grid-template-columns:.72fr 1.28fr}.demoPromise{grid-template-columns:auto 1fr}.demoPromise .button{grid-column:2;width:max-content}.demoPageGrid{grid-template-columns:1fr 1fr}}
@media (max-width:720px){body{padding-bottom:64px}.siteHeader{padding:19px 20px}.headerCta{padding:10px 12px}.hero{display:flex;flex-direction:column;min-height:auto;padding:119px 20px 45px}.heroImage{object-position:64% top}.heroShade{background:linear-gradient(180deg,rgba(5,3,5,.66) 0%,rgba(5,3,5,.3) 30%,rgba(5,3,5,.86) 60%,rgba(5,3,5,.99) 100%)}.heroCopy{width:100%;padding-top:285px}.heroStamp{right:20px;top:92px}.status{margin-bottom:34px}.hero h1{font-size:clamp(66px,20.7vw,95px)}.lede{font-size:17px}.actions{flex-direction:column}.button{width:100%}.heroDoors{width:100%;margin-top:18px}.marquee span{font-size:12px;padding-inline:20px}.entrance,.readingRoom{padding:84px 18px 95px}.sectionHeading{grid-template-columns:1fr;gap:28px}.sectionHeading h2{font-size:47px}.entranceGrid{grid-template-columns:1fr}.featureCard,.archiveFeature{grid-column:auto;min-height:540px}.visualCard img{min-height:540px}.playLab{grid-template-columns:1fr;padding:86px 20px;gap:44px}.playShade{background:linear-gradient(180deg,rgba(5,3,5,.9),rgba(38,5,13,.73))}.playLab h2{font-size:58px}.gameReveal{min-height:530px;padding:30px 24px}.gameReveal h3{font-size:56px}.topicDoors{display:grid;grid-template-columns:1fr 1fr}.topicDoors a{min-width:0}.readRail{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:10px}.readTile{min-width:84vw;scroll-snap-align:start}.statement{grid-template-columns:1fr}.statementImage{min-height:620px}.statementImage::after{background:linear-gradient(180deg,transparent 55%,#27070f 100%)}.statementCopy{padding:70px 22px 82px}.statement h2{font-size:48px}.principleGrid{grid-template-columns:1fr}.demoPromise{grid-template-columns:1fr;padding:70px 20px}.demoSeal{width:90px;height:90px}.demoPromise .button{grid-column:auto;width:100%}footer{grid-template-columns:1fr;padding:62px 22px 30px}.mobileDock{position:fixed;z-index:80;inset:auto 0 0;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(5,3,5,.96);border-top:1px solid rgba(255,59,100,.38);backdrop-filter:blur(16px)}.mobileDock a{display:grid;place-items:center;min-height:58px;border-right:1px solid rgba(255,255,255,.08);color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.mobileDock a:hover{color:var(--ivory);background:var(--wine)}.demoTopbar{grid-template-columns:1fr auto}.demoTopbar>span{display:none}.demoIntro{padding:76px 20px}.demoIntro h1{font-size:58px}.demoStats{grid-template-columns:1fr 1fr}.demoBrowser{padding:70px 14px 95px}.demoBrowserHeading{grid-template-columns:1fr}.demoPageGrid{grid-template-columns:1fr}.demoPageCard{min-height:265px}}
@media (max-width:720px){.heroImage{inset:0;width:100%;height:650px;object-position:center 8%}.heroShade{background:linear-gradient(180deg,rgba(5,3,5,.4) 0%,rgba(5,3,5,.08) 25%,rgba(5,3,5,.78) 58%,rgba(5,3,5,1) 78%)}.heroCopy{padding-top:380px}.hero h1{font-size:clamp(63px,19.4vw,90px)}.hero h1 em{font-size:.68em}.archivePortrait{min-height:540px}}
@media (max-width:470px){.topicDoors{grid-template-columns:1fr}.heroDoors> a{grid-template-columns:34px 1fr auto}.readTile{min-width:88vw}.demoStats{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.heroImage,.playLead>img,.marquee div,.gameReveal::before,.archiveRings i,.demoGatePage::before{animation:none!important}*,*::before,*::after{transition-duration:.01ms!important}}

/* Private Royal Archive */
.membersPage,.vaultPage,.ownerMediaPage{min-height:100vh;background:radial-gradient(circle at 82% 4%,rgba(158,16,51,.25),transparent 28%),var(--black)}
.membersHeader,.vaultTopbar{position:relative;z-index:10;display:grid;grid-template-columns:1fr auto;align-items:center;gap:28px;padding:22px clamp(20px,6vw,88px);border-bottom:1px solid var(--line);background:rgba(5,3,5,.94);backdrop-filter:blur(18px)}
.membersHeaderActions{display:flex;align-items:center;gap:25px}.membersHeaderActions>a:first-child,.vaultTopbar>a:last-child{color:var(--muted);font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.membersHeader .button{min-height:49px}
.membersHero{position:relative;isolation:isolate;display:grid;align-items:end;min-height:790px;padding:110px clamp(22px,7vw,110px) 80px;overflow:hidden}.membersHero>img{position:absolute;inset:0 0 0 auto;z-index:-3;width:min(63vw,1050px);height:100%;object-fit:cover;object-position:center 18%}.membersHeroShade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#050305 0%,rgba(5,3,5,.97) 38%,rgba(5,3,5,.62) 68%,rgba(5,3,5,.26)),linear-gradient(0deg,rgba(5,3,5,.92),transparent 60%)}.membersHeroCopy{max-width:900px}.membersHero h1,.membersSectionHeading h2,.membersLock h2,.vaultIntro h1,.vaultNext h2,.ownerMediaIntro h1{margin:0;font:400 clamp(58px,6.6vw,108px)/.91 Georgia,serif;letter-spacing:-.058em}.membersHeroCopy>p:not(.eyebrow){max-width:720px;margin:30px 0;color:#f1e4e7;font-size:19px;line-height:1.75}.membersHeroStats,.vaultMetrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;max-width:900px;margin-top:42px;border:1px solid var(--line);background:var(--line)}.membersHeroStats span,.vaultMetrics span{padding:20px;background:rgba(10,5,7,.9);color:var(--muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.membersHeroStats strong,.vaultMetrics strong{display:block;margin-bottom:7px;color:var(--rose);font:400 34px Georgia,serif;letter-spacing:-.04em}
.membersCollections{padding:115px clamp(20px,6vw,94px) 130px;background:linear-gradient(145deg,#0a0507,#26050d)}.membersSectionHeading{display:grid;grid-template-columns:1fr .55fr;column-gap:7vw;max-width:1450px;margin:auto}.membersSectionHeading .eyebrow{grid-column:1/-1}.membersSectionHeading h2{font-size:clamp(48px,5vw,80px);line-height:.98}.membersSectionHeading h2 em{color:var(--scarlet);font-weight:400}.membersSectionHeading>p:last-child{align-self:end;color:var(--muted);font-size:16px;line-height:1.72}.collectionGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:1450px;margin:65px auto 0}.collectionGrid article{position:relative;min-height:390px;padding:28px;overflow:hidden;border:1px solid rgba(255,255,255,.11);background:linear-gradient(155deg,rgba(87,11,29,.9),rgba(8,3,5,.96))}.collectionGrid article::after{content:"";position:absolute;right:-110px;bottom:-130px;width:300px;height:300px;border:1px solid rgba(255,59,100,.23);border-radius:50%;box-shadow:0 0 0 40px rgba(158,16,51,.08),0 0 0 80px rgba(237,23,76,.04)}.collectionGrid article>span{color:var(--scarlet);font:400 24px Georgia,serif}.collectionGrid article>strong{display:block;margin-top:58px;color:rgba(255,209,220,.22);font:400 90px/.8 Georgia,serif;letter-spacing:-.08em}.collectionGrid h3{position:relative;z-index:1;margin:32px 0 12px;font:400 34px Georgia,serif}.collectionGrid p{position:relative;z-index:1;max-width:330px;color:var(--muted);font-size:14px;line-height:1.6}
.membersLock,.vaultNext{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(28px,5vw,72px);padding:90px clamp(20px,7vw,110px);border-block:1px solid var(--line);background:#090406}.lockMark{display:grid;place-items:center;width:130px;height:130px;border:1px solid var(--scarlet);border-radius:50%;box-shadow:0 0 48px rgba(237,23,76,.2)}.lockMark span{font:italic 400 30px Georgia,serif}.lockMark small{margin-top:-32px;color:var(--rose);font-size:8px;font-weight:900;letter-spacing:.16em}.membersLock h2,.vaultNext h2{font-size:clamp(38px,4vw,62px);line-height:1}.membersLock p:not(.eyebrow),.vaultNext p:not(.eyebrow){max-width:800px;color:var(--muted);line-height:1.7}
.vaultTopbar{grid-template-columns:1fr auto 1fr}.vaultTopbar>span{color:var(--rose);font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.vaultTopbar>a:last-child{justify-self:end}.vaultIntro,.ownerMediaIntro{padding:105px clamp(20px,7vw,110px) 80px;background:radial-gradient(circle at 80% 15%,rgba(237,23,76,.25),transparent 27%),linear-gradient(135deg,#090406,#350711)}.vaultIntro h1{font-size:clamp(64px,8vw,128px)}.vaultIntro>p:not(.eyebrow),.ownerMediaIntro>p:not(.eyebrow){max-width:850px;color:#f0e1e5;font-size:18px;line-height:1.72}.vaultMetrics{grid-template-columns:repeat(4,1fr);max-width:1200px}.vaultStatusGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:80px clamp(18px,6vw,90px);background:#070304}.vaultStatusGrid article{display:flex;flex-direction:column;min-height:370px;padding:26px;border:1px solid rgba(255,255,255,.11);background:linear-gradient(155deg,#1e0810,#090406)}.vaultStatusGrid b{color:var(--scarlet);font:400 25px Georgia,serif}.vaultStatusGrid h2{margin:62px 0 12px;font:400 33px Georgia,serif}.vaultStatusGrid p{color:var(--muted);font-size:14px;line-height:1.65}.vaultStatusGrid span{width:max-content;margin-top:auto;padding:8px 10px;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.statusReady{background:rgba(28,126,81,.24);color:#94efc1}.statusHold{background:rgba(201,22,67,.22);color:var(--rose)}
.ownerMediaIntro h1{font-size:clamp(55px,6vw,96px)}.ownerMediaIntro h1 em{color:var(--scarlet);font-weight:400}.uploadPanel{max-width:1100px;margin:0 auto;padding:70px 22px 120px}.uploadFields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.uploadFields label{display:grid;gap:10px;color:var(--rose);font-size:10px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.uploadFields select{padding:16px;border:1px solid var(--line);background:#17070c;color:var(--ivory)}.uploadDrop{display:grid;place-items:center;min-height:250px;margin:18px 0;padding:34px;border:1px dashed rgba(255,155,178,.5);background:radial-gradient(circle,rgba(158,16,51,.22),transparent 65%),#0d0508;color:var(--ivory);font:400 30px Georgia,serif;text-align:center;cursor:pointer}.uploadDrop input{max-width:420px;margin-top:22px;color:var(--muted);font:400 13px Inter,sans-serif}.uploadDrop span{margin-top:18px;color:var(--rose);font:850 10px Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase}.uploadPanel button:disabled{opacity:.45;cursor:not-allowed}.uploadResults{display:grid;gap:3px;margin-top:22px}.uploadResults p{display:flex;justify-content:space-between;gap:20px;margin:0;padding:12px 14px;background:#10070a;color:var(--muted);font-size:12px}.uploadResults .ok{border-left:3px solid #45d38d}.uploadResults .fail{border-left:3px solid var(--red)}
@media (max-width:1000px){.membersSectionHeading{grid-template-columns:1fr;row-gap:24px}.collectionGrid{grid-template-columns:1fr 1fr}.membersLock,.vaultNext{grid-template-columns:auto 1fr}.membersLock .button,.vaultNext .button{grid-column:2;width:max-content}.vaultStatusGrid{grid-template-columns:1fr 1fr}.vaultMetrics{grid-template-columns:1fr 1fr}}
@media (max-width:720px){.membersHeader{grid-template-columns:1fr}.membersHeaderActions{justify-content:space-between}.membersHeader .button{width:auto}.membersHero{min-height:auto;padding:500px 20px 70px}.membersHero>img{width:100%;height:620px;object-position:center top}.membersHeroShade{background:linear-gradient(180deg,rgba(5,3,5,.08),rgba(5,3,5,.22) 43%,rgba(5,3,5,.98) 75%)}.membersHero h1{font-size:58px}.membersHeroStats{grid-template-columns:1fr}.membersCollections{padding:78px 18px}.collectionGrid{grid-template-columns:1fr}.collectionGrid article{min-height:330px}.membersLock,.vaultNext{grid-template-columns:1fr;padding:70px 20px}.membersLock .button,.vaultNext .button{grid-column:auto;width:100%}.vaultTopbar{grid-template-columns:1fr auto}.vaultTopbar>span{display:none}.vaultIntro,.ownerMediaIntro{padding:75px 20px}.vaultIntro h1{font-size:68px}.vaultStatusGrid{grid-template-columns:1fr;padding:55px 16px}.vaultStatusGrid article{min-height:320px}.uploadFields{grid-template-columns:1fr}.uploadPanel{padding-inline:16px}.uploadDrop{font-size:24px}}

/* Complete public route family */
.publicPage{min-height:100vh;background:radial-gradient(circle at 88% 2%,rgba(158,16,51,.18),transparent 27%),var(--black)}
.publicPage::before{content:"";position:fixed;z-index:90;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,var(--scarlet),var(--hot-pink),var(--violet),var(--ruby),var(--scarlet));background-size:100% 300%;animation:realmPulse 8s ease infinite;pointer-events:none}
.publicHeader nav a[aria-current="page"]{color:var(--ivory);text-shadow:0 0 16px rgba(255,79,154,.6)}
.publicHero{position:relative;isolation:isolate;display:flex;align-items:end;min-height:620px;padding:170px clamp(22px,7vw,110px) 86px;overflow:hidden;background:radial-gradient(circle at 78% 20%,rgba(230,40,135,.2),transparent 28%),linear-gradient(135deg,#080405,#350711)}
.publicHero>img{position:absolute;z-index:-3;inset:0 0 0 auto;width:min(58vw,940px);height:100%;object-fit:cover;object-position:center 18%;filter:saturate(.92) contrast(1.05)}
.publicHeroShade{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,#050305 0%,rgba(5,3,5,.98) 39%,rgba(16,0,24,.72) 66%,rgba(16,0,24,.18)),linear-gradient(0deg,rgba(5,3,5,.8),transparent 54%)}
.publicHeroCopy{position:relative;z-index:1;max-width:940px}
.publicHero h1,.publicSection h2,.publicCallout h2,.directoryCard h2,.contactGrid h2,.pathCards h2,.serviceGrid h2,.articleMasthead h1,.articleBody h2,.legalBody h2,.ageChoice h2{font-family:Georgia,"Times New Roman",serif;font-weight:400}
.publicHero h1{max-width:970px;margin:0;font-size:clamp(68px,8vw,128px);line-height:.84;letter-spacing:-.068em;text-wrap:balance}
.publicHero h1 em,.publicSection h2 em,.publicCallout h2 em{color:var(--hot-pink);font-weight:400}
.publicHeroCopy>p:last-child{max-width:720px;margin:32px 0 0;color:#f2e4e8;font-size:clamp(17px,1.5vw,21px);line-height:1.75}
.publicSection{padding:110px clamp(22px,7vw,110px)}
.directoryIntro{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:8vw;align-items:end;background:linear-gradient(145deg,#080405,#14070b)}
.directoryIntro>.eyebrow{grid-column:1/-1;margin-bottom:-20px}
.directoryIntro h2{margin:0;font-size:clamp(51px,5.5vw,88px);line-height:.92;letter-spacing:-.055em}
.directoryIntro>p:last-child{margin:0;color:var(--muted);font-size:17px;line-height:1.75}
.directoryGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:0 clamp(18px,6vw,94px) 120px;background:linear-gradient(145deg,#080405,#14070b)}
.directoryCard{display:flex;flex-direction:column;min-height:480px;padding:30px;border:1px solid rgba(255,155,178,.18);background:linear-gradient(150deg,#260711,#100018);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
.directoryCard:nth-child(3n+2){background:linear-gradient(150deg,#2a0735,#0b0309)}
.directoryCard:hover{transform:translateY(-6px);border-color:var(--hot-pink);box-shadow:0 28px 65px rgba(158,16,51,.22)}
.directoryCard>span{color:var(--scarlet);font:italic 400 22px Georgia,serif}
.directoryCard h2{margin:58px 0 13px;font-size:37px;line-height:1}
.directoryCard>p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}
.directoryCard nav{display:grid;margin-top:auto;padding-top:25px}
.directoryCard nav a{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-top:1px solid rgba(255,155,178,.18);color:var(--rose);font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.directoryCard nav i{color:var(--hot-pink);font-style:normal}
.publicCallout{display:grid;grid-template-columns:1fr auto;gap:55px;align-items:center;padding:80px clamp(22px,7vw,110px);border-block:1px solid rgba(255,155,178,.2);background:linear-gradient(115deg,var(--blood),var(--midnight-purple))}
.publicCallout h2{margin:.2em 0 .3em;font-size:clamp(43px,4.8vw,74px);line-height:.94;letter-spacing:-.05em}
.publicCallout p:not(.eyebrow){max-width:850px;margin:0;color:var(--muted);line-height:1.72}
.publicCallout>.actions{margin:0;min-width:300px}
.publicSplit{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1fr);gap:9vw;background:radial-gradient(circle at 88% 20%,rgba(230,40,135,.12),transparent 25%),#080405}
.publicSplit h2{margin:0;font-size:clamp(54px,5.8vw,92px);line-height:.92;letter-spacing:-.058em}
.publicProse{color:var(--muted);font-size:17px;line-height:1.82}
.publicProse p:first-child{margin-top:0;color:#f3e4e8;font-size:20px}
.publicProse blockquote{margin:42px 0 0;padding:28px 0 28px 28px;border-left:3px solid var(--hot-pink);color:var(--ivory);font:italic 400 27px/1.45 Georgia,serif}
.principleCards{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;padding:0 clamp(22px,7vw,110px) 120px;background:#080405}
.principleCards article{min-height:270px;padding:27px;border:1px solid rgba(255,155,178,.18);background:#12080c}
.principleCards b,.contactGrid>article>b,.pathCards>article>b,.serviceGrid>article>b{color:var(--scarlet);font:italic 400 20px Georgia,serif}
.principleCards h3{margin:65px 0 12px;font:400 27px/1 Georgia,serif}
.principleCards p{color:var(--muted);font-size:13px;line-height:1.65}
.portraitGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:0 clamp(18px,5vw,80px) 120px;background:linear-gradient(145deg,#080405,#14070b)}
.portraitGrid figure{position:relative;min-height:520px;margin:0;overflow:hidden;border:1px solid rgba(255,155,178,.16);background:var(--blood)}
.portraitGrid figure:nth-child(1),.portraitGrid figure:nth-child(8){grid-column:span 2}
.portraitGrid img{width:100%;height:100%;min-height:520px;object-fit:cover;object-position:center 18%;transition:transform .65s ease,filter .65s ease}
.portraitGrid figure:hover img{transform:scale(1.04);filter:saturate(1.08)}
.portraitGrid figcaption{position:absolute;inset:auto 0 0;padding:70px 22px 20px;background:linear-gradient(transparent,rgba(5,3,5,.95))}
.portraitGrid figcaption span{display:block;font:400 28px Georgia,serif}.portraitGrid figcaption small{display:block;margin-top:6px;color:var(--rose);font-size:9px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.contactGrid,.pathCards,.serviceGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:110px clamp(22px,7vw,110px);background:radial-gradient(circle at 86% 8%,rgba(230,40,135,.14),transparent 25%),#080405}
.contactGrid>article,.pathCards>article,.serviceGrid>article{display:flex;flex-direction:column;min-height:390px;padding:31px;border:1px solid rgba(255,155,178,.2);background:linear-gradient(150deg,#250710,#100018)}
.contactGrid>article:nth-child(even),.serviceGrid>article:nth-child(even){background:linear-gradient(150deg,#290735,#0b0309)}
.contactGrid h2,.pathCards h2,.serviceGrid h2{margin:62px 0 15px;font-size:36px;line-height:1}
.contactGrid p,.pathCards p,.serviceGrid p{margin:0;color:var(--muted);line-height:1.7}
.contactGrid a,.serviceGrid a{display:flex;justify-content:space-between;gap:20px;margin-top:auto;padding-top:22px;border-top:1px solid rgba(255,155,178,.2);color:var(--rose);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.publicNotice{margin:0;padding:32px clamp(22px,7vw,110px);border-block:1px solid rgba(255,155,178,.2);background:#17070c}
.publicNotice strong{display:block;color:var(--rose);font:400 29px Georgia,serif}.publicNotice p{max-width:1000px;margin:9px 0 0;color:var(--muted);line-height:1.72}
.pathCards{grid-template-columns:repeat(3,minmax(0,1fr))}
.pathCards>article{min-height:590px}.pathCards>article>span{align-self:flex-end;padding:8px 10px;background:rgba(230,40,135,.18);color:var(--rose);font-size:9px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.pathCards h2{font-size:41px}.pathCards ol{margin:30px 0;padding:0;list-style:none}.pathCards li{padding:12px 0 12px 22px;border-top:1px solid rgba(255,155,178,.16);color:var(--muted);font-size:13px}.pathCards li::before{content:"◆";float:left;margin-left:-21px;color:var(--hot-pink)}.pathCards .button{width:100%;margin-top:auto}
.serviceGrid{grid-template-columns:repeat(4,minmax(0,1fr))}.serviceGrid>article{min-height:400px}.serviceGrid h2{font-size:31px}
.articleGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:0 clamp(18px,6vw,94px) 120px;background:linear-gradient(145deg,#080405,#14070b)}
.articleCard{position:relative;display:flex;flex-direction:column;min-height:420px;padding:30px;overflow:hidden;border:1px solid rgba(255,155,178,.18);background:linear-gradient(150deg,#250710,#100018);transition:transform .3s ease,border-color .3s ease}
.articleCard:nth-child(3n+2){background:linear-gradient(150deg,#290735,#0b0309)}.articleCard:hover{transform:translateY(-7px);border-color:var(--hot-pink)}
.articleCard>b{color:var(--scarlet);font:italic 400 22px Georgia,serif}.articleCard>small{margin:54px 0 11px;color:var(--rose);font-size:9px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.articleCard h2{margin:0;font:400 37px/1 Georgia,serif}.articleCard p{color:var(--muted);line-height:1.65}.articleCard>span{display:flex;justify-content:space-between;margin-top:auto;padding-top:18px;border-top:1px solid rgba(255,155,178,.18);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.articleCard i{color:var(--hot-pink);font-style:normal}
.articleMasthead{padding:190px clamp(22px,11vw,180px) 90px;border-bottom:1px solid rgba(255,155,178,.2);background:radial-gradient(circle at 80% 20%,rgba(230,40,135,.2),transparent 28%),linear-gradient(135deg,#080405,#350711)}
.articleMasthead h1{max-width:1150px;margin:0;font-size:clamp(68px,8.2vw,132px);line-height:.88;letter-spacing:-.065em}.articleMasthead>p:last-child{max-width:720px;margin:28px 0 0;color:#f2e4e8;font-size:21px;line-height:1.65}
.articleBody,.legalBody{width:min(900px,calc(100% - 40px));margin:auto;padding:85px 0 115px}
.articleLead{margin:0 0 70px;color:#f5e8eb;font:400 clamp(23px,2.3vw,31px)/1.55 Georgia,serif}
.articleBody>section,.legalBody>section{position:relative;padding:0 0 55px;margin:0 0 55px;border-bottom:1px solid rgba(255,155,178,.18)}
.articleBody>section>span{position:absolute;left:-76px;top:5px;color:var(--scarlet);font:italic 400 20px Georgia,serif}
.articleBody h2,.legalBody h2{margin:0 0 22px;font-size:clamp(36px,4vw,55px);line-height:1;letter-spacing:-.04em}.articleBody p,.legalBody p{color:var(--muted);font-size:17px;line-height:1.82}.articleBody ul{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:28px 0 0;padding:0;list-style:none}.articleBody li{padding:14px 16px 14px 34px;background:#14070b;color:#e7d5da;font-size:14px}.articleBody li::before{content:"◆";float:left;margin-left:-20px;color:var(--hot-pink)}
.articleScope{margin:0 0 65px;padding:26px 28px;border-left:3px solid var(--hot-pink);background:#17070c}.articleScope strong{font:400 26px Georgia,serif}.articleScope p{margin:8px 0 0!important;font-size:14px!important}
.articleNext{display:grid;border-top:1px solid rgba(255,155,178,.2)}.articleNext>.eyebrow{margin-top:30px}.articleNext a{display:flex;justify-content:space-between;gap:24px;padding:18px 0;border-bottom:1px solid rgba(255,155,178,.18);font:400 24px Georgia,serif}.articleNext a span{color:var(--hot-pink)}
.legalDirectory{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;padding:75px clamp(22px,7vw,110px);background:rgba(255,155,178,.18)}.legalDirectory a{display:grid;grid-template-columns:1fr auto;gap:9px 20px;padding:25px;background:#10070c}.legalDirectory b{font:400 27px Georgia,serif}.legalDirectory span{grid-column:1;color:var(--muted);font-size:12px;line-height:1.5}.legalDirectory i{grid-column:2;grid-row:1/3;color:var(--hot-pink);font-style:normal}
.legalBody a{color:var(--rose);text-decoration:underline;text-underline-offset:4px}.legalBody .plainDate{color:var(--faint);font-size:12px}.textArrow{display:flex;justify-content:space-between;padding:20px 0;border-block:1px solid rgba(255,155,178,.2);font:400 25px Georgia,serif}.textArrow span{color:var(--hot-pink)}
.ageChoice{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:110px clamp(22px,7vw,110px);background:#080405}.ageChoice article{display:flex;flex-direction:column;min-height:430px;padding:35px;border:1px solid rgba(255,155,178,.2);background:linear-gradient(150deg,#250710,#100018)}.ageChoice b{color:var(--rose);font:italic 400 22px Georgia,serif}.ageChoice h2{margin:65px 0 14px;font-size:44px}.ageChoice p{color:var(--muted);line-height:1.7}.ageChoice .button{width:100%;margin-top:auto}
.publicFooter{position:relative}.publicFooter .copyright{grid-column:1/-1}

@media(max-width:1180px){.directoryGrid,.articleGrid{grid-template-columns:1fr 1fr}.portraitGrid{grid-template-columns:repeat(3,1fr)}.serviceGrid{grid-template-columns:1fr 1fr}.pathCards{grid-template-columns:1fr}.pathCards>article{min-height:470px}.principleCards{grid-template-columns:1fr 1fr}.legalDirectory{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.publicHero{min-height:720px;padding:405px 20px 68px}.publicHero>img{width:100%;height:540px;opacity:.68;object-position:center top}.publicHeroShade{background:linear-gradient(180deg,rgba(5,3,5,.1),rgba(5,3,5,.34) 38%,#050305 74%)}.publicHero h1{font-size:clamp(58px,18vw,78px)}.publicHeroCopy>p:last-child{font-size:16px}.directoryIntro,.publicSplit{grid-template-columns:1fr;padding:78px 20px;gap:30px}.directoryIntro>.eyebrow{grid-column:auto;margin-bottom:0}.directoryIntro h2,.publicSplit h2{font-size:52px}.directoryGrid,.articleGrid{grid-template-columns:1fr;padding:0 15px 82px}.directoryCard{min-height:420px}.publicCallout{grid-template-columns:1fr;padding:64px 20px}.publicCallout>.actions{min-width:0}.principleCards{grid-template-columns:1fr;padding:0 16px 80px}.principleCards article{min-height:230px}.portraitGrid{grid-template-columns:1fr;padding:0 12px 80px}.portraitGrid figure:nth-child(1),.portraitGrid figure:nth-child(8){grid-column:auto}.portraitGrid figure,.portraitGrid img{min-height:520px}.contactGrid,.pathCards,.serviceGrid{grid-template-columns:1fr;padding:75px 15px}.contactGrid>article,.serviceGrid>article{min-height:350px}.pathCards>article{min-height:520px}.articleMasthead{padding:150px 20px 70px}.articleMasthead h1{font-size:58px}.articleMasthead>p:last-child{font-size:18px}.articleBody,.legalBody{width:calc(100% - 36px);padding:65px 0 85px}.articleBody>section>span{position:static;display:block;margin-bottom:12px}.articleBody h2,.legalBody h2{font-size:39px}.articleBody p,.legalBody p{font-size:16px}.articleBody ul{grid-template-columns:1fr}.articleNext a{font-size:21px}.legalDirectory{grid-template-columns:1fr;padding:55px 15px}.ageChoice{grid-template-columns:1fr;padding:75px 15px}.publicFooter{padding-bottom:85px}}

/* Individual-post content store */
.membersStorePage,.contentPostPage,.joinPage{min-height:100vh;background:radial-gradient(circle at 82% 0,rgba(158,16,51,.24),transparent 25%),#050305}
.membersHeaderActions>span{padding:10px 12px;border:1px solid rgba(255,155,178,.24);color:var(--rose);font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.storeMasthead{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.55fr);gap:55px 8vw;align-items:end;padding:105px clamp(20px,7vw,110px) 72px;background:linear-gradient(135deg,rgba(5,3,5,.4),rgba(59,7,19,.82)),url('/images/majesty-cash.webp') center 24%/cover}.storeMasthead h1,.contentPostCopy h1,.joinHero h1{margin:0;font:400 clamp(59px,6.8vw,108px)/.9 Georgia,serif;letter-spacing:-.06em;text-shadow:0 8px 34px rgba(0,0,0,.35)}.storeMasthead h1 em,.joinHero h1 em{color:var(--scarlet);font-weight:400}.storeMasthead>p{max-width:590px;margin:0 0 10px;color:#f4e8eb;font-size:18px;line-height:1.75;text-shadow:0 2px 18px #000}.storeMetrics{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;border:1px solid rgba(255,155,178,.24);background:rgba(255,155,178,.24)}.storeMetrics span{padding:20px;background:rgba(8,3,5,.88);color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;backdrop-filter:blur(12px)}.storeMetrics strong{display:block;margin-bottom:6px;color:var(--rose);font:400 31px Georgia,serif;letter-spacing:-.04em}
.storeControls{padding:42px clamp(18px,6vw,90px) 22px;border-bottom:1px solid var(--line);background:#090406}.storeSearch{display:grid;grid-template-columns:1fr auto;gap:8px;max-width:760px}.storeSearch label{display:grid;gap:8px;color:var(--rose);font-size:9px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.storeSearch input{width:100%;padding:15px 17px;border:1px solid rgba(255,155,178,.3);outline:0;background:#17070c;color:var(--ivory);font-size:14px}.storeSearch input:focus{border-color:var(--scarlet);box-shadow:0 0 24px rgba(237,23,76,.16)}.storeSearch button{align-self:end;min-height:48px;padding:0 22px;border:0;background:var(--crimson);color:#fff;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.themeFilters{display:flex;gap:7px;overflow-x:auto;margin-top:22px;padding-bottom:6px}.themeFilters a{flex:0 0 auto;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(255,155,178,.2);color:#cbb8bd;font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.themeFilters a.active,.themeFilters a:hover{border-color:var(--scarlet);background:rgba(158,16,51,.28);color:#fff}.themeFilters small{display:grid;place-items:center;min-width:20px;height:20px;border-radius:50%;background:rgba(255,255,255,.09);color:var(--rose)}
.contentFeed{padding:36px clamp(14px,4.2vw,70px) 110px}.feedHeading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;color:var(--faint);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.feedHeading p{margin:0}.feedHeading strong{color:var(--rose);font:400 22px Georgia,serif}.contentGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.contentCard{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:linear-gradient(155deg,#1a080e,#080405);transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}.contentCard:hover{z-index:2;transform:translateY(-7px);border-color:rgba(255,59,100,.64);box-shadow:0 28px 60px rgba(54,3,18,.55)}.contentCardMedia{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;background:radial-gradient(circle at 50% 42%,rgba(158,16,51,.33),transparent 42%),#0b0507}.contentCardMedia img,.contentCardMedia video{width:100%;height:100%;object-fit:cover;transition:transform .6s ease,filter .6s ease}.contentCard:hover .contentCardMedia img,.contentCard:hover .contentCardMedia video{transform:scale(1.045);filter:saturate(1.08)}.contentCardMedia::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 67%,rgba(5,3,5,.72))}.contentCardMedia>b{position:absolute;z-index:2;right:12px;top:12px;padding:7px 9px;background:rgba(5,3,5,.78);color:var(--rose);font-size:8px;letter-spacing:.12em;text-transform:uppercase;backdrop-filter:blur(8px)}.cardPending{display:grid;place-items:center;align-content:center;gap:13px;width:100%;height:100%;color:var(--rose);background-image:linear-gradient(rgba(255,59,100,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,59,100,.05) 1px,transparent 1px);background-size:35px 35px}.cardPending span{font:400 56px Georgia,serif;letter-spacing:-.06em}.cardPending small{font-size:8px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.contentCardCopy{position:relative;min-height:210px;padding:19px 19px 17px}.contentCardCopy>p{margin:0 0 10px;color:var(--rose);font-size:8px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.contentCardCopy h2{margin:0 0 45px;font:400 clamp(20px,1.7vw,27px)/1.12 Georgia,serif}.contentCardCopy h2 a:hover{color:var(--rose)}.contentMeta{position:absolute;left:19px;right:19px;bottom:16px;display:flex;justify-content:space-between;padding-top:12px;border-top:1px solid rgba(255,255,255,.1);color:var(--faint);font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.reviewBadge{position:absolute;left:12px;top:-39px;z-index:3;max-width:calc(100% - 24px);padding:7px 9px;background:#360915;color:var(--blush);font-size:7px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.feedEmpty{padding:80px 20px;border:1px dashed var(--line);color:var(--muted);text-align:center}.feedEmpty strong{color:var(--rose);font:400 30px Georgia,serif}.feedPager{display:flex;justify-content:space-between;margin-top:34px}.feedPager a{padding:13px 16px;border:1px solid rgba(255,155,178,.3);color:var(--rose);font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.feedPager a:hover{background:var(--wine)}
.contentPost{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,.72fr);min-height:calc(100vh - 82px)}.contentPostMedia{display:grid;place-items:center;min-height:780px;background:radial-gradient(circle,rgba(158,16,51,.18),transparent 53%),#080405}.contentPostMedia img,.contentPostMedia video{width:100%;height:100%;max-height:calc(100vh - 82px);object-fit:contain}.mediaPending{display:grid;justify-items:center;gap:13px;color:var(--muted);text-align:center}.mediaPending span{color:rgba(255,155,178,.18);font:400 120px Georgia,serif}.mediaPending strong{color:var(--rose);font:400 28px Georgia,serif}.contentPostCopy{display:flex;flex-direction:column;justify-content:center;padding:65px clamp(30px,5vw,78px);border-left:1px solid var(--line);background:linear-gradient(155deg,#210810,#080405)}.contentPostCopy h1{font-size:clamp(40px,4.2vw,68px);line-height:1}.contentPostCopy dl{display:grid;gap:1px;margin:42px 0;background:rgba(255,255,255,.1)}.contentPostCopy dl div{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:15px;background:#0d0508}.contentPostCopy dt{color:var(--rose);font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.contentPostCopy dd{margin:0;color:var(--muted);font-size:12px}.postNav{display:flex;justify-content:space-between;margin-top:20px}.postNav a{color:var(--rose);font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.joinHero{display:grid;grid-template-columns:1fr minmax(360px,520px);gap:8vw;align-items:center;min-height:calc(100vh - 82px);padding:85px clamp(20px,8vw,130px);background:linear-gradient(90deg,rgba(5,3,5,.96),rgba(5,3,5,.54)),url('/images/majesty-chair.webp') center 19%/cover}.joinHero>div>p:not(.eyebrow){max-width:660px;color:#f0e1e5;font-size:18px;line-height:1.75}.joinHero aside{padding:38px;border:1px solid rgba(255,155,178,.45);background:rgba(8,3,5,.9);box-shadow:0 45px 100px rgba(0,0,0,.55);backdrop-filter:blur(18px)}.joinHero aside>span{color:var(--rose);font-size:9px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.joinHero aside>strong{display:block;margin:20px 0 5px;color:#fff;font:400 92px/.85 Georgia,serif;letter-spacing:-.07em}.joinHero aside>strong small{font-size:.45em;color:var(--scarlet)}.joinHero aside>p{color:var(--muted);line-height:1.65}.joinHero aside>.button{width:100%;margin:20px 0}.joinHero button:disabled{opacity:.62;cursor:not-allowed}.joinHero aside>small{display:block;color:var(--faint);font-size:10px;line-height:1.55}
@media (max-width:1180px){.contentGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.storeMasthead{grid-template-columns:1fr}.storeMasthead>p{max-width:800px}.contentPost{grid-template-columns:1fr 420px}}
@media (max-width:820px){.contentGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.storeMetrics{grid-template-columns:1fr 1fr}.contentPost{grid-template-columns:1fr}.contentPostMedia{min-height:60vh}.contentPostCopy{border-left:0;border-top:1px solid var(--line)}.joinHero{grid-template-columns:1fr}.joinHero aside{max-width:560px}}
@media (max-width:540px){.storeMasthead{padding:72px 18px 48px}.storeMasthead h1{font-size:54px}.storeMetrics{grid-template-columns:1fr}.storeControls{padding-inline:14px}.storeSearch{grid-template-columns:1fr}.contentFeed{padding-inline:9px}.contentGrid{grid-template-columns:1fr 1fr;gap:5px}.contentCardCopy{min-height:176px;padding:14px}.contentCardCopy h2{font-size:18px;margin-bottom:38px}.contentMeta{left:14px;right:14px}.contentMeta time{display:none}.contentPostMedia{min-height:52vh}.contentPostCopy{padding:48px 20px}.contentPostCopy h1{font-size:42px}.joinHero{padding:62px 18px}.joinHero h1{font-size:58px}.joinHero aside{padding:27px}.joinHero aside>strong{font-size:78px}}

/* Private website messaging */
.messagesPage{background:radial-gradient(circle at 82% 8%,rgba(230,40,135,.2),transparent 28%),var(--black)}
.messagesHero{min-height:690px;background:linear-gradient(90deg,rgba(5,3,5,.98),rgba(5,3,5,.5)),url('/images/majesty-smile.webp') 75% 24%/cover}
.messagePrices{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:1px;padding:1px clamp(16px,6vw,94px) 80px;background:rgba(255,155,178,.2)}
.messagePrices article{display:flex;flex-direction:column;min-width:0;min-height:440px;padding:32px;background:linear-gradient(150deg,#18070d,#100018)}
.messagePrices article.is-featured{background:radial-gradient(circle at 80% 8%,rgba(255,79,154,.24),transparent 32%),linear-gradient(145deg,#570b1d,#24052f);box-shadow:0 22px 70px rgba(158,16,51,.25)}
.messagePrices article>span{color:var(--rose);font-size:9px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.messagePrices strong{margin:30px 0 5px;font:400 clamp(64px,6vw,96px)/.9 Georgia,serif;letter-spacing:-.07em}.messagePrices h2{margin:22px 0 10px;font-size:31px}.messagePrices p{color:var(--muted);line-height:1.7}.messagePrices .button{width:100%;margin-top:auto}
.messageDesk{display:grid;grid-template-columns:minmax(240px,330px) minmax(0,1fr);width:min(1260px,calc(100% - 32px));margin:0 auto 110px;border:1px solid var(--line);background:#0b0508}
.messageDesk>aside{padding:25px;border-right:1px solid var(--line);background:#10070c}.messageDesk>aside>button{display:grid;width:100%;gap:5px;padding:15px 12px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ivory);text-align:left;cursor:pointer}.messageDesk>aside>button:hover,.messageDesk>aside>button.is-active{background:rgba(158,16,51,.28)}.messageDesk>aside small{color:var(--rose);text-transform:uppercase}.messageDesk .messageNew{margin-bottom:16px;border:1px solid var(--line);color:var(--rose);font-weight:800}.messageEmpty{color:var(--faint)}
.messageComposer{min-width:0;padding:30px}.messageEntitlement{display:grid;gap:7px;margin-bottom:24px;padding:18px;border-left:3px solid var(--hot-pink);background:#17070c}.messageEntitlement span{color:var(--muted);font-size:13px}.messageHistory{display:grid;gap:10px;max-height:520px;overflow:auto;margin-bottom:20px;padding-right:8px}.messageHistory article{max-width:78%;padding:16px 18px;border:1px solid var(--line);background:#14070b}.messageHistory article.fromMajesty{justify-self:start;border-color:rgba(255,79,154,.46);background:#24052f}.messageHistory article.fromMember{justify-self:end}.messageHistory p{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted);line-height:1.65}.messageHistory small{color:var(--faint)}.messageComposer form{display:grid;gap:15px}.messageComposer label{display:grid;gap:8px;color:var(--rose);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.messageComposer input,.messageComposer textarea{width:100%;padding:14px 16px;border:1px solid rgba(255,155,178,.3);border-radius:0;outline:0;background:#17070c;color:var(--ivory);font:400 16px/1.55 Inter,Arial,sans-serif;resize:vertical}.messageComposer input:focus,.messageComposer textarea:focus{border-color:var(--scarlet);box-shadow:0 0 24px rgba(237,23,76,.16)}.messageComposer button{justify-self:end}.messageSignin{padding:60px 5%;text-align:center}.messageSignin h2{font-size:42px}.messageSignin p{color:var(--muted)}.messageSignin .button{margin-top:20px}
@media(max-width:850px){.messagePrices{grid-template-columns:1fr}.messagePrices article{min-height:360px}.messageDesk{grid-template-columns:1fr}.messageDesk>aside{border-right:0;border-bottom:1px solid var(--line)}.messagesHero{background-position:62% 20%}}
@media(max-width:560px){.messagePrices{padding-inline:10px}.messagePrices article{padding:25px}.messageDesk{width:calc(100% - 20px);margin-bottom:70px}.messageComposer{padding:18px}.messageHistory article{max-width:92%}.messageComposer button{width:100%}}

/* 2026 publication polish: ruby, hot pink and midnight-purple atmosphere */
.hero::after{content:"";position:absolute;z-index:-1;inset:auto -10% -28% 30%;height:52%;background:radial-gradient(ellipse at center,rgba(230,40,135,.2),transparent 68%);filter:blur(35px);pointer-events:none;animation:velvetGlow 7s ease-in-out infinite}
@keyframes velvetGlow{50%{opacity:.45;transform:translate3d(-3%, -4%, 0) scale(1.08)}}
.buttonRuby{position:relative;overflow:hidden}.buttonRuby::after{content:"";position:absolute;inset:-120% auto -120% -35%;width:22%;transform:rotate(18deg);background:rgba(255,255,255,.28);filter:blur(7px);transition:left .65s ease}.buttonRuby:hover::after{left:120%}
.entrance{background:radial-gradient(circle at 88% 10%,rgba(230,40,135,.22),transparent 28%),radial-gradient(circle at 12% 88%,rgba(90,11,105,.22),transparent 30%),linear-gradient(145deg,#080405,#13070a)}
.readingRoom{background:linear-gradient(140deg,var(--smoke),var(--midnight-purple))}
.statement{background:linear-gradient(125deg,#100609,#350711 62%,var(--deep-plum))}
.demoGalleryPage{background:radial-gradient(circle at 80% 8%,rgba(158,16,51,.2),transparent 25%),radial-gradient(circle at 8% 45%,rgba(90,11,105,.2),transparent 30%),var(--black)}
.demoIntro{min-height:720px;padding-right:min(44vw,660px);background:radial-gradient(circle at 44% 16%,rgba(230,40,135,.2),transparent 31%),linear-gradient(125deg,#090406,var(--deep-plum))}
.demoIntroPortrait{position:absolute;inset:0 0 0 auto;width:min(42vw,640px);overflow:hidden}.demoIntroPortrait img{width:100%;height:100%;object-fit:cover;object-position:center 18%;filter:saturate(.94) contrast(1.06)}.demoIntroPortrait::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--deep-plum),transparent 42%),linear-gradient(0deg,rgba(5,3,5,.78),transparent 56%)}
.demoPageCard:nth-child(4n+2)::after{background:var(--magenta)}.demoPageCard:nth-child(4n+3)::after{background:var(--violet)}.demoPageCard:nth-child(4n+4)::after{background:var(--hot-pink)}
.demoPageCard:has(small:nth-last-child(2)){border-color:rgba(255,155,178,.12)}
.demoGateCard h1 em{color:var(--hot-pink);font-weight:400;text-shadow:0 0 35px rgba(230,40,135,.35)}
@media(max-width:1050px){.demoIntro{padding-right:clamp(22px,7vw,110px)}.demoIntroPortrait{opacity:.32;width:72vw}.demoIntroPortrait::after{background:linear-gradient(90deg,var(--deep-plum),rgba(16,0,24,.3)),linear-gradient(0deg,var(--deep-plum),transparent 58%)}}
@media(max-width:720px){.appetitePicker{gap:6px}.appetitePicker button{flex:1 1 calc(50% - 6px)}.demoIntro{min-height:680px}.demoIntroPortrait{width:100%;opacity:.27}.demoIntro h1{font-size:53px}.hero::after{display:none}}
@media(prefers-reduced-motion:reduce){.homePage::before,.hero::after{animation:none!important}.buttonRuby::after{display:none}}

/* Publication-ready legal and privacy pages */
.plainPage{min-height:100vh;background:radial-gradient(circle at 78% 8%,rgba(230,40,135,.2),transparent 27%),radial-gradient(circle at 12% 70%,rgba(90,11,105,.19),transparent 31%),var(--black)}
.plainTopbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:20px clamp(20px,6vw,88px);border-bottom:1px solid var(--line);background:rgba(5,3,5,.94);backdrop-filter:blur(18px)}.plainTopbar>a:last-child{color:var(--rose);font-size:10px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.plainArticle{width:min(900px,calc(100% - 36px));margin:0 auto;padding:105px 0 130px}.plainArticle h1{margin:0 0 32px;font:400 clamp(62px,8vw,118px)/.88 Georgia,serif;letter-spacing:-.065em}.plainLead{margin:0 0 62px;padding:26px 28px;border-left:3px solid var(--hot-pink);background:linear-gradient(90deg,rgba(87,11,29,.7),rgba(16,0,24,.72));color:#f7e9ed;font-size:clamp(19px,2vw,25px);line-height:1.65}.plainArticle h2{margin:48px 0 12px;color:var(--rose);font:400 clamp(29px,3vw,42px)/1.05 Georgia,serif}.plainArticle p:not(.eyebrow):not(.plainLead){color:var(--muted);font-size:17px;line-height:1.8}.plainDate{margin-top:70px!important;padding-top:20px;border-top:1px solid var(--line);font-size:12px!important}
@media(max-width:720px){.plainArticle{padding:75px 0 95px}.plainArticle h1{font-size:64px}.plainLead{padding:21px 20px}.plainArticle p:not(.eyebrow):not(.plainLead){font-size:16px}}

/* Complete A to Z library */
.libraryPage{background:radial-gradient(circle at 76% 8%,rgba(90,11,105,.24),transparent 28%),var(--black)}
.libraryPage .siteHeader{position:absolute}
.libraryHero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:850px;padding:150px clamp(22px,7vw,110px) 95px;overflow:hidden;background:var(--midnight-purple)}
.libraryHero>img{position:absolute;z-index:-3;inset:0 0 0 auto;width:min(54vw,850px);height:100%;object-fit:cover;object-position:center 15%;filter:saturate(.92) contrast(1.06);animation:heroBreath 15s ease-in-out infinite alternate}
.libraryHeroShade{position:absolute;z-index:-2;inset:0;background:radial-gradient(circle at 72% 32%,rgba(255,79,154,.18),transparent 26%),linear-gradient(90deg,#070205 0%,rgba(7,2,5,.98) 37%,rgba(16,0,24,.72) 61%,rgba(16,0,24,.12) 82%,rgba(7,2,5,.5))}
.libraryHeroCopy{max-width:850px}.libraryHeroCopy h1{max-width:900px;margin:0;font:400 clamp(62px,7vw,112px)/.86 Georgia,"Times New Roman",serif;letter-spacing:-.067em}.libraryHeroCopy h1 em{color:var(--hot-pink);font-weight:400;text-shadow:0 0 40px rgba(255,79,154,.26)}.libraryHeroCopy>p:not(.eyebrow){max-width:660px;margin:31px 0 36px;color:#f2e2eb;font-size:19px;line-height:1.72}
.libraryHeroStats{position:absolute;right:clamp(22px,5vw,76px);bottom:48px;display:flex;gap:1px;border:1px solid rgba(255,155,178,.28);background:rgba(255,155,178,.25);box-shadow:0 24px 60px rgba(0,0,0,.4)}.libraryHeroStats span{min-width:125px;padding:16px 18px;background:rgba(8,2,7,.82);color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;backdrop-filter:blur(16px)}.libraryHeroStats b{display:block;margin-bottom:5px;color:var(--rose);font:400 30px Georgia,serif;letter-spacing:-.04em;text-transform:none}
.libraryNotice{padding:23px clamp(22px,7vw,110px);border-block:1px solid rgba(255,119,173,.24);background:linear-gradient(90deg,rgba(158,16,51,.5),rgba(36,5,47,.82));color:#f0dce7;font-size:13px;line-height:1.7}.libraryNotice strong{color:#fff}
.libraryExplorer{padding:110px clamp(18px,5vw,80px) 140px;background:radial-gradient(circle at 12% 14%,rgba(158,16,51,.17),transparent 24%),radial-gradient(circle at 87% 72%,rgba(90,11,105,.18),transparent 25%),#070305}
.libraryControls{display:grid;grid-template-columns:minmax(330px,1.3fr) minmax(260px,.8fr) minmax(240px,.72fr);gap:14px;align-items:end;max-width:1500px;margin:0 auto 27px}.libraryControls h2{margin:0;font:400 clamp(45px,5vw,77px)/.92 Georgia,serif;letter-spacing:-.055em}.libraryControls label{display:grid;gap:9px;color:var(--rose);font-size:9px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.libraryControls input,.libraryControls select{width:100%;min-height:57px;padding:0 17px;border:1px solid rgba(255,155,178,.3);border-radius:0;outline:0;background:#16070e;color:var(--ivory);font-size:13px}.libraryControls input:focus,.libraryControls select:focus{border-color:var(--hot-pink);box-shadow:0 0 30px rgba(230,40,135,.16)}.libraryControls option{background:#16070e}
.libraryResultLine{display:flex;align-items:baseline;gap:13px;max-width:1500px;margin:0 auto 22px;padding:18px 0;border-top:1px solid var(--line);color:var(--faint);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.libraryResultLine strong{color:var(--hot-pink);font:400 32px Georgia,serif;letter-spacing:-.03em}
.libraryGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-width:1500px;margin:auto}.libraryCard{position:relative;display:flex;flex-direction:column;min-height:385px;padding:23px;overflow:hidden;border:1px solid rgba(255,155,178,.14);background:linear-gradient(150deg,rgba(51,7,22,.92),rgba(10,3,8,.98) 68%);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.libraryCard:nth-child(4n+2){background:linear-gradient(150deg,rgba(61,9,88,.72),rgba(10,3,8,.98) 68%)}.libraryCard:nth-child(4n+3){background:linear-gradient(150deg,rgba(110,5,49,.75),rgba(10,3,8,.98) 68%)}.libraryCard:after{content:"";position:absolute;right:-85px;bottom:-105px;width:220px;height:220px;border:1px solid rgba(255,119,173,.18);border-radius:50%;box-shadow:0 0 0 34px rgba(230,40,135,.045),0 0 0 68px rgba(90,11,105,.035);transition:transform .5s ease}.libraryCard:hover{z-index:2;transform:translateY(-8px);border-color:rgba(255,79,154,.65);box-shadow:0 28px 70px rgba(90,0,45,.43)}.libraryCard:hover:after{transform:scale(1.12)}.libraryCard>div{display:flex;justify-content:space-between;color:var(--faint);font-size:9px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.libraryCard>div span{color:var(--scarlet);font:400 20px Georgia,serif}.libraryCard>div i{font-style:normal}.libraryCard>p{margin:42px 0 12px;color:var(--rose);font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.libraryCard h3{position:relative;z-index:1;margin:0 0 14px;font:400 clamp(24px,2vw,33px)/1.02 Georgia,serif;letter-spacing:-.025em}.libraryCard>small{position:relative;z-index:1;display:-webkit-box;overflow:hidden;color:var(--muted);font-size:12px;line-height:1.55;-webkit-line-clamp:4;-webkit-box-orient:vertical}.libraryCard>b{position:relative;z-index:1;display:flex;justify-content:space-between;margin-top:auto;padding-top:15px;border-top:1px solid rgba(255,255,255,.11);color:#fff;font-size:8px;letter-spacing:.11em;text-transform:uppercase}.libraryCard>b i{color:var(--hot-pink);font-size:16px;font-style:normal}.libraryMore{margin:40px auto 0;border:0}
.libraryPage>footer{background:linear-gradient(125deg,#0a0407,#24052f)}
@media(max-width:1180px){.libraryGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.libraryControls{grid-template-columns:1fr 1fr}.libraryControls>div{grid-column:1/-1}}
@media(max-width:820px){.libraryHero{min-height:790px;align-items:end;padding-top:125px;padding-bottom:160px}.libraryHero>img{width:100%;opacity:.47}.libraryHeroShade{background:linear-gradient(180deg,rgba(7,2,5,.46),rgba(7,2,5,.52) 38%,#070205 84%)}.libraryHeroStats{right:18px;left:18px;bottom:35px}.libraryHeroStats span{flex:1;min-width:0}.libraryControls{grid-template-columns:1fr}.libraryControls>div{grid-column:auto}.libraryGrid{grid-template-columns:1fr 1fr}.libraryCard{min-height:345px}}
@media(max-width:540px){.libraryPage .siteHeader nav{display:none}.libraryHero{min-height:720px;padding-inline:19px}.libraryHeroCopy h1{font-size:53px}.libraryHeroCopy>p:not(.eyebrow){font-size:16px}.libraryHeroStats span{padding:13px 10px}.libraryHeroStats b{font-size:24px}.libraryExplorer{padding:75px 9px 100px}.libraryControls,.libraryResultLine{padding-inline:9px}.libraryControls h2{font-size:45px}.libraryGrid{gap:5px}.libraryCard{min-height:325px;padding:15px}.libraryCard>p{margin-top:30px}.libraryCard h3{font-size:20px}.libraryCard>small{-webkit-line-clamp:3}}

/* The complete Majesty homepage: biography, portraits, kinks and standards. */
.statementCopy .titleLine{margin-top:22px;padding-top:18px;border-top:1px solid rgba(255,155,178,.22);color:var(--muted);font-size:15px;letter-spacing:.04em}.statementCopy .titleLine b{display:block;margin-bottom:5px;color:var(--rose);font-size:9px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}
.promoCampaign{display:grid;grid-template-columns:minmax(310px,.82fr) minmax(560px,1.18fr);gap:clamp(42px,7vw,110px);align-items:center;padding:clamp(86px,10vw,150px) clamp(22px,7vw,112px);overflow:hidden;background:radial-gradient(circle at 77% 14%,rgba(230,40,135,.22),transparent 30%),linear-gradient(135deg,#080405,#23070e 54%,#22062c)}.promoCampaignCopy{max-width:650px}.promoCampaignCopy h2{margin:.2em 0 .45em;font:400 clamp(54px,6vw,94px)/.88 Georgia,"Times New Roman",serif;letter-spacing:-.06em}.promoCampaignCopy h2 em{color:var(--hot-pink);font-weight:400;text-shadow:0 0 38px rgba(237,23,76,.34)}.promoCampaignCopy>p:not(.eyebrow){color:var(--muted);font-size:17px;line-height:1.78}.promoCampaignCopy>small{display:block;margin-top:24px;padding-left:16px;border-left:2px solid var(--scarlet);color:var(--faint);font-size:11px;line-height:1.65}.promoMosaic{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:1fr 1fr;gap:10px;min-height:690px;transform:rotate(1.2deg)}.promoMosaic figure{position:relative;margin:0;overflow:hidden;border:1px solid rgba(255,155,178,.25);background:#14050d;box-shadow:0 30px 80px rgba(0,0,0,.34)}.promoMosaicMain{grid-row:1/-1}.promoMosaic img{width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(1.08) sepia(.05);transition:transform .8s cubic-bezier(.2,.7,.3,1),filter .5s ease}.promoMosaicMain img{object-position:center}.promoMosaic figure:nth-child(2) img{object-position:center 15%}.promoMosaic figure:nth-child(3) img{object-position:center}.promoMosaic figcaption{position:absolute;right:0;bottom:0;left:0;padding:42px 16px 14px;background:linear-gradient(180deg,transparent,rgba(8,2,7,.94));color:var(--rose);font:italic 400 17px Georgia,serif;letter-spacing:.04em}.promoMosaic figure:hover img{transform:scale(1.045);filter:saturate(1.03) contrast(1.07)}
.gallery{padding:clamp(78px,9vw,135px) clamp(20px,6vw,94px);background:radial-gradient(circle at 88% 18%,rgba(230,40,135,.18),transparent 28%),linear-gradient(145deg,#080405,var(--midnight-purple))}.gallery .sectionHeading{margin-bottom:32px}.galleryRail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:12px;max-width:1500px;margin:auto;padding:4px 2px 18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-color:var(--scarlet) var(--midnight-purple);scrollbar-width:thin}.galleryCard{position:relative;margin:0;overflow:hidden;scroll-snap-align:start;border:1px solid rgba(255,155,178,.22);background:var(--midnight-purple);transition:transform .45s cubic-bezier(.2,.7,.3,1),border-color .45s ease,box-shadow .45s ease}.galleryCard img{width:100%;aspect-ratio:3/4;object-fit:cover;filter:saturate(1.03) contrast(1.04);transition:transform .7s cubic-bezier(.2,.7,.3,1),filter .5s ease}.galleryCard figcaption{position:absolute;inset:auto 0 0;padding:46px 17px 16px;background:linear-gradient(180deg,transparent,rgba(9,0,15,.96));color:var(--ivory);font:italic 400 16px Georgia,serif}.galleryCard:hover{z-index:2;transform:translateY(-7px);border-color:var(--scarlet);box-shadow:0 24px 60px rgba(237,23,76,.3)}.galleryCard:hover img{transform:scale(1.045);filter:saturate(1.13) contrast(1.05)}
.kinkSection{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(380px,1.18fr);gap:clamp(32px,6vw,86px);align-items:start;max-width:1500px;margin:clamp(80px,10vw,150px) auto;padding:clamp(30px,5vw,62px);border:1px solid rgba(255,155,178,.2);background:radial-gradient(circle at 9% 0,rgba(230,40,135,.16),transparent 42%),linear-gradient(150deg,#1b0512,var(--midnight-purple) 60%,#26050d)}.kinkIntro h2{margin:.25em 0 .6em;font:400 clamp(42px,4.8vw,72px)/.96 Georgia,serif;letter-spacing:-.045em}.kinkIntro h2 em{color:var(--scarlet);font-weight:400}.kinkIntro p{color:var(--muted);font-size:16px;line-height:1.78}.kinkCaveat{margin-top:20px;padding-left:17px;border-left:2px solid var(--scarlet);font-style:italic}.kinkList{margin:0;padding:0;list-style:none}.kinkList li{display:flex;gap:16px;align-items:baseline;padding:14px;border-bottom:1px solid rgba(255,155,178,.14);transition:background .3s ease,padding-left .3s ease}.kinkList li:first-child{border-top:1px solid rgba(255,155,178,.14)}.kinkList li:hover{padding-left:23px;background:rgba(87,11,29,.35)}.kinkList b{flex:none;min-width:34px;color:var(--scarlet);font:italic 400 17px Georgia,serif}.kinkList span{display:flex;flex-direction:column;gap:3px}.kinkList strong{color:var(--ivory);font:400 20px Georgia,serif}.kinkList small{color:var(--muted);font-size:14px;line-height:1.48}.kinkList li:nth-child(-n+3) strong{color:var(--rose)}
.subsSection{display:grid;grid-template-columns:minmax(320px,1.18fr) minmax(280px,.82fr);gap:clamp(34px,6vw,90px);align-items:center;max-width:1500px;margin:clamp(80px,10vw,150px) auto;padding-inline:clamp(20px,6vw,94px)}.subsCopy h2{margin:.25em 0 .7em;font:400 clamp(42px,5vw,72px)/.96 Georgia,serif;letter-spacing:-.045em}.subsCopy p{color:var(--muted);font-size:16px;line-height:1.78}.subsGrid{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:28px}.subsGrid span{padding:10px 16px;border:1px solid rgba(255,155,178,.3);color:var(--rose);font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;transition:background .3s ease,color .3s ease,transform .3s ease}.subsGrid span:hover{transform:translateY(-2px);background:linear-gradient(110deg,var(--ruby),var(--magenta));color:var(--ivory)}.subsPortrait{position:relative;overflow:hidden;border:1px solid rgba(255,155,178,.24);box-shadow:0 35px 90px rgba(0,0,0,.42)}.subsPortrait::after{content:"MF";position:absolute;right:-5px;bottom:-34px;color:rgba(255,255,255,.09);font:italic 400 120px Georgia,serif}.subsPortrait img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.3,1)}.subsPortrait:hover img{transform:scale(1.04)}
.communityInvite{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(42px,7vw,110px);align-items:center;padding:clamp(80px,10vw,145px) clamp(22px,7vw,112px);background:radial-gradient(circle at 84% 10%,rgba(230,40,135,.22),transparent 28%),linear-gradient(145deg,#12060a,#25052f)}.communityInviteCopy h2{margin:0;font:400 clamp(52px,6vw,94px)/.93 Georgia,"Times New Roman",serif;letter-spacing:-.055em}.communityInviteCopy h2 em{color:var(--scarlet);font-weight:400;text-shadow:0 0 36px rgba(237,23,76,.34)}.communityInviteCopy>p:not(.eyebrow){max-width:720px;color:var(--muted);font-size:18px;line-height:1.75}.communityInviteNotes{display:grid;gap:12px}.communityInviteNotes article{padding:clamp(24px,3vw,38px);border:1px solid rgba(255,155,178,.27);background:rgba(8,3,7,.63)}.communityInviteNotes b{color:var(--rose);font:400 29px Georgia,"Times New Roman",serif}.communityInviteNotes p{margin:10px 0 0;color:var(--muted);line-height:1.65}
@media(max-width:980px){.promoCampaign{grid-template-columns:1fr}.promoCampaignCopy{max-width:800px}.promoMosaic{min-height:640px;transform:none}}
@media(max-width:860px){.kinkSection,.subsSection,.communityInvite{grid-template-columns:1fr}.kinkSection{margin-inline:14px}.subsPortrait{order:-1;max-height:680px}.galleryRail{grid-auto-columns:minmax(185px,72%)}.galleryCard:hover{transform:none}}
@media(max-width:560px){.promoCampaign{padding-inline:14px}.promoCampaignCopy{padding-inline:6px}.promoMosaic{grid-template-columns:1fr;grid-template-rows:380px 250px 250px;min-height:auto}.promoMosaicMain{grid-row:auto}.gallery{padding-inline:12px}.gallery .sectionHeading{padding-inline:8px}.kinkSection{padding:26px 20px}.kinkIntro h2,.subsCopy h2{font-size:45px}.subsSection{padding-inline:18px}.kinkList li{padding-inline:4px}}
@media(prefers-reduced-motion:reduce){.promoMosaic img,.galleryCard,.galleryCard img,.kinkList li,.subsGrid span,.subsPortrait img{transition:none!important}}

/* Restored old-homepage map and complete Submit & Surrender pathway. */
.surrenderSection{display:grid;grid-template-columns:minmax(360px,.78fr) minmax(540px,1.22fr);min-height:980px;background:radial-gradient(circle at 78% 17%,rgba(230,40,135,.21),transparent 26%),linear-gradient(135deg,#080405,#31071b 56%,var(--midnight-purple))}.surrenderPortrait{position:relative;min-height:760px;overflow:hidden;border-right:1px solid rgba(255,155,178,.2)}.surrenderPortrait>img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.92) contrast(1.08);transition:transform 1s ease}.surrenderPortrait::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 45%,rgba(26,4,14,.94)),linear-gradient(0deg,rgba(5,3,5,.9),transparent 55%)}.surrenderPortrait>div{position:absolute;z-index:2;inset:auto 28px 38px;display:flex;align-items:baseline;gap:13px;color:rgba(255,248,248,.92);font:italic 400 clamp(36px,4vw,66px)/.9 Georgia,serif}.surrenderPortrait>div i{color:var(--hot-pink);font-size:.58em}.surrenderContent{align-self:center;padding:100px clamp(36px,7vw,118px)}.surrenderContent h2,.surrenderPathIntro h2,.surrenderCode h2{margin:.15em 0 .45em;font:400 clamp(54px,6vw,95px)/.88 Georgia,serif;letter-spacing:-.06em}.surrenderContent h2 em,.surrenderPathIntro h2 em,.surrenderCode h2 em{color:var(--hot-pink);font-weight:400}.surrenderLead{max-width:820px;color:#f1dfe7;font-size:18px;line-height:1.78}.surrenderGrid{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:42px;border:1px solid rgba(255,155,178,.2);background:rgba(255,155,178,.18)}.surrenderDoor{display:grid;grid-template-columns:38px 1fr auto;gap:14px;align-items:start;min-height:142px;padding:20px;background:rgba(10,3,9,.78);transition:background .3s ease,transform .3s ease}.surrenderDoor:hover{z-index:2;transform:translateY(-3px);background:linear-gradient(130deg,rgba(87,11,29,.96),rgba(36,5,47,.96))}.surrenderDoor>b{color:var(--scarlet);font:italic 400 18px Georgia,serif}.surrenderDoor>span{display:grid;gap:7px}.surrenderDoor strong{font:400 21px/1.05 Georgia,serif}.surrenderDoor small{color:var(--muted);font-size:12px;line-height:1.55}.surrenderDoor>i{color:var(--hot-pink);font-style:normal}.surrenderStatus{margin:22px 0 0;padding:15px 18px;border-left:2px solid var(--hot-pink);background:rgba(16,0,24,.6);color:var(--muted);font-size:12px;line-height:1.65}.surrenderStatus strong{color:var(--rose)}
.oldEmpire{padding:clamp(90px,10vw,150px) clamp(20px,6vw,94px);background:radial-gradient(circle at 12% 12%,rgba(90,11,105,.23),transparent 25%),radial-gradient(circle at 88% 80%,rgba(158,16,51,.18),transparent 28%),#070305}.oldEmpirePanels{max-width:1500px;margin:auto;border-top:1px solid rgba(255,155,178,.22)}.oldEmpire details{border-bottom:1px solid rgba(255,155,178,.22)}.oldEmpire summary{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:27px 5px;cursor:pointer;list-style:none}.oldEmpire summary::-webkit-details-marker{display:none}.oldEmpire summary span{font:400 clamp(27px,3vw,44px)/1 Georgia,serif}.oldEmpire summary b{color:var(--scarlet);font-size:9px;letter-spacing:.14em;text-transform:uppercase}.oldEmpire summary::after{content:"+";color:var(--hot-pink);font:400 30px Georgia,serif}.oldEmpire details[open] summary::after{content:"−"}.nameCloud{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;padding:0 0 28px;background:rgba(255,155,178,.12)}.nameCloud a{display:flex;justify-content:space-between;gap:13px;align-items:center;min-height:70px;padding:15px 17px;background:#10070c;color:var(--muted);font-size:12px;line-height:1.35;transition:background .25s ease,color .25s ease}.nameCloud a:hover{background:linear-gradient(120deg,var(--wine),var(--deep-plum));color:var(--ivory)}.nameCloud a span{color:var(--hot-pink)}.kinkCloud a:nth-child(3n+2){background:#17051e}.kinkCloud a:nth-child(3n+3){background:#210710}.oldEmpireCallout{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:25px;margin-bottom:28px;background:linear-gradient(110deg,rgba(87,11,29,.72),rgba(36,5,47,.78))}.oldEmpireCallout p{max-width:850px;color:var(--muted);line-height:1.7}.oldEmpireCallout .button{width:max-content}

.surrenderPage,.bookingPage{background:var(--black)}.surrenderHero,.bookingHero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:820px;padding:140px clamp(22px,7vw,110px) 95px;overflow:hidden}.surrenderHero>img,.bookingHero>img{position:absolute;z-index:-3;inset:0 0 0 auto;width:min(56vw,900px);height:100%;object-fit:cover;object-position:center 15%;filter:saturate(.94) contrast(1.07)}.surrenderHeroShade,.bookingShade{position:absolute;z-index:-2;inset:0;background:radial-gradient(circle at 72% 28%,rgba(255,79,154,.18),transparent 26%),linear-gradient(90deg,#070205 0%,rgba(7,2,5,.98) 39%,rgba(16,0,24,.68) 64%,rgba(16,0,24,.18) 85%)}.surrenderHeroCopy,.bookingCopy{max-width:850px}.surrenderHero h1,.bookingHero h1{margin:0;font:400 clamp(72px,9vw,142px)/.8 Georgia,serif;letter-spacing:-.075em}.surrenderHero h1 em,.bookingHero h1 em{color:var(--hot-pink);font-weight:400}.surrenderHeroCopy>p:not(.eyebrow),.bookingCopy>p:not(.eyebrow){max-width:660px;margin:30px 0;color:#f1e1e8;font-size:18px;line-height:1.75}.surrenderPath{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(560px,1.28fr);gap:clamp(40px,7vw,115px);padding:120px clamp(22px,7vw,110px);background:radial-gradient(circle at 12% 10%,rgba(158,16,51,.18),transparent 26%),#080405}.surrenderPathIntro{position:sticky;top:45px;align-self:start}.surrenderPathIntro p:not(.eyebrow){color:var(--muted);line-height:1.75}.surrenderPathGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.surrenderPathGrid>a{display:flex;flex-direction:column;min-height:300px;padding:25px;border:1px solid rgba(255,155,178,.18);background:linear-gradient(150deg,#24070f,#100018);transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.surrenderPathGrid>a:nth-child(3n+2){background:linear-gradient(150deg,#290736,#0c030a)}.surrenderPathGrid>a:hover{transform:translateY(-7px);border-color:var(--hot-pink);box-shadow:0 28px 65px rgba(158,16,51,.27)}.surrenderPathGrid>a>div{display:flex;justify-content:space-between;color:var(--scarlet);font:italic 400 18px Georgia,serif}.surrenderPathGrid>a>div small{font:800 8px Inter,sans-serif;letter-spacing:.13em;text-transform:uppercase}.surrenderPathGrid h3{margin:45px 0 13px;font:400 31px/1 Georgia,serif}.surrenderPathGrid p{color:var(--muted);font-size:13px;line-height:1.65}.surrenderPathGrid>a>span{display:flex;justify-content:space-between;margin-top:auto;padding-top:17px;border-top:1px solid rgba(255,255,255,.11);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.surrenderPathGrid i{color:var(--hot-pink);font-size:18px;font-style:normal}.surrenderCode{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:110px clamp(22px,7vw,110px);background:linear-gradient(135deg,#26050d,var(--midnight-purple))}.surrenderCode ol{margin:0;padding:0;list-style:none}.surrenderCode li{display:flex;gap:18px;padding:22px 0;border-bottom:1px solid rgba(255,155,178,.22)}.surrenderCode li>b{color:var(--scarlet);font:italic 400 19px Georgia,serif}.surrenderCode li span{display:grid;gap:5px}.surrenderCode li strong{font:400 24px Georgia,serif}.surrenderCode li small{color:var(--muted);font-size:13px;line-height:1.6}
.bookingHero{background:var(--midnight-purple)}.bookingHero>img{object-position:center 10%}.bookingClosed{display:inline-flex;padding:13px 17px;border:1px solid var(--hot-pink);background:rgba(87,11,29,.72);color:var(--rose);font-size:9px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.bookingBody{padding:110px clamp(20px,7vw,110px) 140px;background:radial-gradient(circle at 90% 20%,rgba(230,40,135,.16),transparent 25%),#080405}.bookingIntro{display:grid;grid-template-columns:1fr .8fr;gap:8vw;align-items:end;max-width:1500px;margin:auto}.bookingIntro h2,.bookingChecklist h2{margin:.25em 0 0;font:400 clamp(50px,6vw,92px)/.9 Georgia,serif;letter-spacing:-.055em}.bookingIntro h2 em{color:var(--hot-pink);font-weight:400}.bookingIntro>p:last-child{color:var(--muted);font-size:17px;line-height:1.78}.sessionGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;max-width:1500px;margin:70px auto}.sessionGrid article{min-height:280px;padding:25px;border:1px solid rgba(255,155,178,.18);background:linear-gradient(145deg,#23070f,#100018)}.sessionGrid article:nth-child(even){background:linear-gradient(145deg,#2a0735,#0b0309)}.sessionGrid b{color:var(--scarlet);font:italic 400 19px Georgia,serif}.sessionGrid h3{margin:50px 0 13px;font:400 28px/1 Georgia,serif}.sessionGrid p{color:var(--muted);font-size:13px;line-height:1.68}.bookingChecklist{display:grid;grid-template-columns:1fr 1fr;gap:8vw;max-width:1500px;margin:90px auto;padding:55px;border:1px solid rgba(255,155,178,.22);background:linear-gradient(120deg,rgba(87,11,29,.55),rgba(36,5,47,.72))}.bookingChecklist ul{margin:0;padding:0;list-style:none}.bookingChecklist li{padding:18px 0 18px 25px;border-bottom:1px solid rgba(255,155,178,.2);color:var(--muted);line-height:1.6}.bookingChecklist li::before{content:"◆";float:left;margin-left:-24px;color:var(--hot-pink)}.bookingNotice{max-width:1000px;margin:auto;padding:35px;border-left:3px solid var(--hot-pink);background:#16070e}.bookingNotice strong{font:400 30px Georgia,serif}.bookingNotice p{color:var(--muted);line-height:1.7}.bookingNotice a{color:var(--rose);font-size:10px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}

@media(max-width:1100px){.surrenderSection{grid-template-columns:.7fr 1.3fr}.surrenderGrid{grid-template-columns:1fr}.nameCloud{grid-template-columns:repeat(3,1fr)}.surrenderPath{grid-template-columns:1fr}.surrenderPathIntro{position:static}.sessionGrid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.surrenderSection{grid-template-columns:1fr}.surrenderPortrait{min-height:620px;border-right:0}.surrenderPortrait::after{background:linear-gradient(0deg,#250713 0%,transparent 60%)}.surrenderContent{padding:68px 20px 85px}.surrenderContent h2,.surrenderPathIntro h2,.surrenderCode h2{font-size:55px}.surrenderGrid{grid-template-columns:1fr}.nameCloud{grid-template-columns:1fr 1fr}.oldEmpireCallout{grid-template-columns:1fr}.oldEmpireCallout .button{width:100%}.surrenderHero,.bookingHero{min-height:760px;align-items:end;padding:480px 20px 70px}.surrenderHero>img,.bookingHero>img{width:100%;height:610px;opacity:.55;object-position:center top}.surrenderHeroShade,.bookingShade{background:linear-gradient(180deg,rgba(7,2,5,.2),rgba(7,2,5,.42) 36%,#070205 73%)}.surrenderHero h1,.bookingHero h1{font-size:68px}.surrenderPath{padding:80px 18px}.surrenderPathGrid{grid-template-columns:1fr}.surrenderPathGrid>a{min-height:260px}.surrenderCode{grid-template-columns:1fr;padding:80px 20px}.bookingBody{padding:80px 16px 100px}.bookingIntro,.bookingChecklist{grid-template-columns:1fr}.sessionGrid{grid-template-columns:1fr}.bookingChecklist{padding:28px 22px}.bookingIntro h2,.bookingChecklist h2{font-size:53px}}
@media(max-width:480px){.nameCloud{grid-template-columns:1fr}.surrenderDoor{grid-template-columns:32px 1fr auto}.oldEmpire summary span{font-size:25px}.oldEmpire summary b{display:none}}
@media(prefers-reduced-motion:reduce){.surrenderPortrait>img,.surrenderDoor,.surrenderPathGrid>a{transition:none!important}}

/* ============ accessibility & interaction hardening (Priority 3) ============ */
.skipLink{position:fixed;top:-100px;left:16px;z-index:1000;background:var(--ruby);color:var(--ivory);
  padding:12px 18px;border-radius:0 0 12px 12px;font-weight:600;text-decoration:none;
  box-shadow:0 8px 30px rgba(0,0,0,.5);transition:top .18s ease}
.skipLink:focus{top:0;outline:2px solid var(--hot-pink);outline-offset:3px}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,
select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{
  outline:2px solid var(--hot-pink);outline-offset:3px;border-radius:6px}
/* guarantee comfortable touch targets on primary navigation */
.siteHeader nav a{min-height:44px;display:inline-flex;align-items:center}
.mobileDock a{min-height:48px;display:inline-flex;align-items:center;justify-content:center}
@media (prefers-reduced-motion:reduce){.skipLink{transition:none}}

/* ============================================================
   Tribute, loyalty and shop rooms.

   The overlap fix: .pathCards>article>span was floated to the right with
   align-self:flex-end while <b> followed it in normal flow, so a long price
   like "£69 once" collided with the card number underneath. The head is now
   an explicit row with space-between and a gap, and the price is allowed to
   wrap rather than sit on top of anything.
   ============================================================ */

.pathCards > article > span,
.serviceGrid > article > span {
  align-self: flex-start;
  max-width: 100%;
  margin-bottom: 10px;
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.5;
}
.pathCards > article > b,
.serviceGrid > article > b { margin-bottom: 6px; }
.pathCards > article > h2 { margin-top: 0; }

/* ---- tribute rail ---- */
.tributeRail {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
  padding: 0 clamp(22px, 7vw, 110px) 90px;
}
.tributeCard {
  display: flex; flex-direction: column; gap: 10px;
  padding: 28px;
  border: 1px solid rgba(255, 155, 178, .2);
  background: linear-gradient(150deg, #250710, #100018);
}
.tributeCard.is-featured {
  border-color: var(--rose, #ff3b64);
  background: linear-gradient(150deg, #4a0824, #16021c);
  box-shadow: 0 22px 60px rgba(237, 23, 76, .28);
}
.tributeCardHead {
  display: flex; flex-wrap: wrap; align-items: baseline;
  justify-content: space-between; gap: 10px;
}
.tributeCardHead b {
  color: var(--pink, #ff9bb2);
  font: 400 clamp(28px, 4vw, 40px)/1 Georgia, serif;
  font-style: normal;
}
.tributeCardHead span {
  padding: 5px 9px;
  border: 1px solid var(--rose, #ff3b64);
  color: var(--rose, #ff3b64);
  font: 900 9px/1 Arial, sans-serif;
  letter-spacing: .12em; text-transform: uppercase;
  white-space: nowrap;
}
.tributeCard h2 { margin: 0; font: 400 21px/1.2 Georgia, serif; color: #fff; }
.tributeCard p { margin: 0; color: #dac7cc; font-size: 15px; line-height: 1.65; }
.tributeCard ul { margin: 0; padding-left: 18px; color: #ff9bb2; font-size: 13.5px; line-height: 1.8; }
.tributeCard .button { margin-top: auto; align-self: flex-start; }

/* ---- loyalty ---- */
.loyaltyEarn { list-style: none; margin: 14px 0 24px; padding: 0; }
.loyaltyEarn li {
  display: flex; gap: 14px; align-items: baseline;
  padding: 10px 0; border-bottom: 1px solid rgba(255, 155, 178, .14);
  color: #dac7cc;
}
.loyaltyEarn b { min-width: 46px; color: var(--pink, #ff9bb2); font: italic 400 18px Georgia, serif; }
.loyaltyTable { width: 100%; border-collapse: collapse; margin-top: 14px; }
.loyaltyTable th {
  padding: 10px 12px; text-align: left;
  border-bottom: 1px solid rgba(255, 155, 178, .3);
  color: var(--rose, #ff3b64);
  font: 900 10px/1 Arial, sans-serif; letter-spacing: .14em; text-transform: uppercase;
}
.loyaltyTable td {
  padding: 12px; border-bottom: 1px solid rgba(255, 155, 178, .12);
  color: #dac7cc; font-size: 14.5px; vertical-align: top;
}
.loyaltyTable td b { color: #fff; font: 400 16px Georgia, serif; }

/* ---- shop ---- */
.shopGrid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; margin-top: 16px; }
.shopCard {
  display: flex; flex-direction: column; gap: 9px; padding: 24px;
  border: 1px solid rgba(255, 155, 178, .2);
  background: linear-gradient(150deg, #250710, #100018);
}
.shopCardHead b { color: var(--pink, #ff9bb2); font: 400 26px/1 Georgia, serif; font-style: normal; }
.shopCard h3 { margin: 0; font: 400 19px/1.25 Georgia, serif; color: #fff; }
.shopCard p { margin: 0; color: #dac7cc; font-size: 14.5px; line-height: 1.65; }
.shopCard .button { margin-top: auto; align-self: flex-start; }
.shopNote { margin-top: 16px; color: #a894b8; font-size: 13.5px; font-style: italic; }

@media (max-width: 720px) {
  .tributeRail { padding-left: 18px; padding-right: 18px; }
  .loyaltyTable thead { display: none; }
  .loyaltyTable tr { display: block; margin-bottom: 12px; border: 1px solid rgba(255,155,178,.16); padding: 8px; }
  .loyaltyTable td { display: block; border: 0; padding: 4px 6px; }
}

/* v41: homepage cinema + Royal Archive spotlight. */
.homeCinema{display:grid;grid-template-columns:minmax(420px,1.08fr) minmax(320px,.92fr);gap:clamp(42px,7vw,105px);align-items:center;padding:clamp(82px,9vw,138px) clamp(22px,7vw,112px);background:radial-gradient(circle at 18% 20%,rgba(201,22,67,.2),transparent 26%),radial-gradient(circle at 88% 78%,rgba(90,11,105,.24),transparent 28%),linear-gradient(135deg,#070304,#15060b 55%,#13051d)}
.homeCinemaMedia{position:relative;min-height:650px;overflow:hidden;border:1px solid rgba(255,155,178,.24);background:#100609;box-shadow:0 38px 95px rgba(0,0,0,.42)}
.homeCinemaMedia video,.homeCinemaMedia>img{width:100%;height:100%;min-height:650px;object-fit:cover;object-position:center;display:block}
.homeCinemaShade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,3,5,.05),rgba(5,3,5,.12) 56%,rgba(5,3,5,.78)),linear-gradient(90deg,rgba(201,22,67,.06),transparent 40%);pointer-events:none}
.homeCinemaMark{position:absolute;right:20px;bottom:18px;display:grid;place-items:center;width:74px;height:74px;border:1px solid rgba(255,155,178,.7);border-radius:50%;background:rgba(38,5,13,.76);color:var(--rose);font:italic 400 24px Georgia,serif;backdrop-filter:blur(10px);box-shadow:0 0 45px rgba(237,23,76,.2)}
.homeCinemaCopy{max-width:670px}.homeCinemaCopy h2{margin:.16em 0 .45em;font:400 clamp(52px,5.8vw,92px)/.9 Georgia,"Times New Roman",serif;letter-spacing:-.06em}.homeCinemaCopy h2 em{color:var(--hot-pink);font-weight:400}.homeCinemaCopy>p:not(.eyebrow){max-width:64ch;color:var(--muted);font-size:18px;line-height:1.8}
.archiveSpotlight{display:grid;grid-template-columns:minmax(380px,.92fr) minmax(420px,1.08fr);gap:clamp(44px,7vw,110px);align-items:center;padding:clamp(92px,10vw,155px) clamp(22px,7vw,112px);background:radial-gradient(circle at 8% 18%,rgba(230,40,135,.16),transparent 25%),radial-gradient(circle at 90% 70%,rgba(90,11,105,.2),transparent 28%),linear-gradient(135deg,#080405,#21070f 52%,#15051d);border-block:1px solid rgba(255,79,154,.2)}
.archiveSpotlightImages{position:relative;min-height:650px}.archiveSpotlightImages figure{position:absolute;margin:0;overflow:hidden;border:1px solid rgba(255,155,178,.25);background:#11060a;box-shadow:0 28px 75px rgba(0,0,0,.38)}.archiveSpotlightImages img{width:100%;height:100%;object-fit:cover;display:block}.archiveSpotlightMain{width:67%;height:84%;left:5%;top:4%;z-index:2}.archiveSpotlightImages figure:nth-of-type(2){width:42%;height:42%;right:0;top:3%;z-index:3;transform:rotate(2.4deg)}.archiveSpotlightImages figure:nth-of-type(3){width:43%;height:43%;right:2%;bottom:2%;z-index:4;transform:rotate(-2.2deg)}.archiveSpotlightImages>span{position:absolute;z-index:8;left:0;bottom:1%;display:grid;place-content:center;text-align:center;width:148px;height:148px;border-radius:50%;border:1px solid var(--scarlet);background:rgba(38,5,13,.93);box-shadow:0 0 54px rgba(237,23,76,.24)}.archiveSpotlightImages>span b{font:400 37px/1 Georgia,serif}.archiveSpotlightImages>span small{margin-top:7px;color:var(--rose);font-size:9px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.archiveSpotlightCopy{max-width:760px}.archiveSpotlightCopy h2{margin:.16em 0 .4em;font:400 clamp(54px,6vw,96px)/.88 Georgia,"Times New Roman",serif;letter-spacing:-.062em}.archiveSpotlightCopy h2 em{color:var(--hot-pink);font-weight:400}.archiveSpotlightCopy>p:not(.eyebrow){color:var(--muted);font-size:18px;line-height:1.8}.archiveSpotlightStats{display:flex;flex-wrap:wrap;gap:9px;margin:28px 0 8px}.archiveSpotlightStats span{padding:10px 13px;border:1px solid rgba(255,155,178,.22);background:rgba(8,3,5,.5);color:var(--muted);font-size:11px;letter-spacing:.04em}.archiveSpotlightStats b{color:var(--rose);font:400 19px Georgia,serif;margin-right:5px}
@media(max-width:1000px){.homeCinema,.archiveSpotlight{grid-template-columns:1fr}.homeCinemaMedia{min-height:600px}.homeCinemaMedia video,.homeCinemaMedia>img{min-height:600px}.archiveSpotlightImages{min-height:600px}.archiveSpotlightCopy{max-width:850px}}
@media(max-width:720px){.homeCinema,.archiveSpotlight{padding:78px 18px}.homeCinemaMedia{min-height:500px}.homeCinemaMedia video,.homeCinemaMedia>img{min-height:500px}.homeCinemaCopy h2,.archiveSpotlightCopy h2{font-size:50px}.archiveSpotlightImages{min-height:500px}.archiveSpotlightImages>span{width:112px;height:112px}.archiveSpotlightImages>span b{font-size:29px}.archiveSpotlightMain{width:72%;height:79%}.archiveSpotlightImages figure:nth-of-type(2),.archiveSpotlightImages figure:nth-of-type(3){width:43%;height:38%}}

/* v42: prime-photo system + universal navigation polish. */
.siteHeader nav{max-width:min(980px,64vw);overflow-x:auto;scrollbar-width:none;white-space:nowrap;padding:3px 1px}
.siteHeader nav::-webkit-scrollbar{display:none}
.homeCinemaFallback{position:absolute;inset:0;overflow:hidden;background:#0a0407}
.homeCinemaFallback img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transform:scale(1.02);animation:mfCinemaStill 18s ease-in-out infinite}
.homeCinemaFallback img:nth-child(1){opacity:1;animation-delay:0s}
.homeCinemaFallback img:nth-child(2){animation-delay:6s;object-position:center 56%}
.homeCinemaFallback img:nth-child(3){animation-delay:12s;object-position:center 20%}
@keyframes mfCinemaStill{0%,27%{opacity:1;transform:scale(1.02)}33%,94%{opacity:0;transform:scale(1.08)}100%{opacity:1;transform:scale(1.02)}}
.homeCinemaMedia:has(.homeCinemaFallback)::before{content:"MOTION ARCHIVE · FILM SLOT READY";position:absolute;z-index:4;left:18px;top:18px;padding:8px 10px;border:1px solid rgba(255,155,178,.42);background:rgba(5,3,5,.7);color:var(--rose);font-size:9px;font-weight:900;letter-spacing:.15em;backdrop-filter:blur(10px)}
.galleryCard:nth-child(10) img,.galleryCard:nth-child(11) img,.galleryCard:nth-child(12) img{object-position:center}
@media(max-width:1150px){.siteHeader{grid-template-columns:1fr auto}.siteHeader nav{grid-column:1/-1;grid-row:2;max-width:100%;justify-self:stretch}.headerCta{grid-column:2;grid-row:1}}
@media(max-width:720px){.siteHeader nav{display:flex!important;gap:20px!important}.siteHeader nav a{flex:none}.homeCinemaFallback img{object-position:center}}
@media(prefers-reduced-motion:reduce){.homeCinemaFallback img{animation:none!important;opacity:0}.homeCinemaFallback img:first-child{opacity:1}}
.publicDungeonWindow{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(500px,1.22fr);gap:clamp(42px,7vw,100px);align-items:start;padding:clamp(90px,10vw,150px) clamp(22px,7vw,112px);background:radial-gradient(circle at 82% 12%,rgba(230,40,135,.15),transparent 28%),radial-gradient(circle at 12% 78%,rgba(90,11,105,.22),transparent 30%),linear-gradient(145deg,#070304,#16060c 55%,#100018);border-block:1px solid rgba(255,79,154,.18)}
.publicDungeonWindowIntro{position:sticky;top:110px;max-width:650px}.publicDungeonWindowIntro h2{margin:.18em 0 .45em;font:400 clamp(52px,5.8vw,90px)/.9 Georgia,"Times New Roman",serif;letter-spacing:-.058em}.publicDungeonWindowIntro h2 em{color:var(--hot-pink);font-weight:400}.publicDungeonWindowIntro>p:not(.eyebrow){color:var(--muted);font-size:17px;line-height:1.78}.publicDungeonPosts{display:grid;gap:12px}.publicDungeonPost{padding:clamp(20px,2.4vw,30px);border:1px solid rgba(255,155,178,.22);background:linear-gradient(145deg,rgba(38,5,13,.48),rgba(8,3,7,.9));box-shadow:0 24px 65px rgba(0,0,0,.25)}.publicDungeonPostHead{display:flex;align-items:center;gap:11px}.publicDungeonPostHead img{width:46px;height:46px;border-radius:50%;object-fit:cover;border:1px solid rgba(255,155,178,.38)}.publicDungeonPostHead div{display:grid}.publicDungeonPostHead strong{font:400 20px Georgia,serif}.publicDungeonPostHead span{color:var(--faint);font-size:10px}.publicDungeonPostBody{white-space:pre-wrap;overflow-wrap:anywhere;color:#f3e8eb;font-size:16px;line-height:1.68}.publicDungeonPostMedia{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin:16px 0;border-radius:15px;overflow:hidden}.publicDungeonPostMedia>:only-child{grid-column:1/-1}.publicDungeonPostMedia img,.publicDungeonPostMedia video{width:100%;height:min(520px,55vw);object-fit:cover;background:#080305}.publicDungeonPost footer{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:16px;padding-top:12px;border-top:1px solid rgba(255,255,255,.07);color:var(--faint);font-size:10px}.publicDungeonPost footer a{color:var(--rose);font-weight:850}.publicDungeonPoll{display:grid;gap:6px}.publicDungeonPoll div{display:flex;justify-content:space-between;padding:8px 10px;border:1px solid rgba(255,155,178,.18);background:rgba(8,3,7,.54);font-size:11px}.publicDungeonPoll small{color:var(--rose)}.publicDungeonEmpty{padding:34px;border:1px dashed rgba(255,155,178,.3);background:rgba(8,3,7,.55)}.publicDungeonEmpty strong{font:400 27px Georgia,serif;color:var(--rose)}.publicDungeonEmpty p{color:var(--muted);line-height:1.65}.publicDungeonEmpty a{color:var(--rose);font-weight:850}.publicDungeonNoscript{grid-column:1/-1;color:var(--muted)}
@media(max-width:980px){.publicDungeonWindow{grid-template-columns:1fr}.publicDungeonWindowIntro{position:static;max-width:820px}}@media(max-width:620px){.publicDungeonWindow{padding:76px 16px}.publicDungeonWindowIntro h2{font-size:50px}.publicDungeonPost footer{align-items:flex-start;flex-direction:column}.publicDungeonPostMedia img,.publicDungeonPostMedia video{height:62vw}}

/* ============================================================
   Majestys Dungeon.
   Uses the existing ruby/wine/plum tokens rather than a new palette,
   so the social side reads as the same site, not a bolted-on app.
   ============================================================ */

.dungeon { max-width: 700px; margin: 0 auto; padding: clamp(20px,5vw,56px) clamp(16px,4vw,28px) 90px; }

.dgHead { display: flex; flex-wrap: wrap; gap: 16px; align-items: flex-end; justify-content: space-between; margin-bottom: 20px; }
.dgHead h1 { margin: 4px 0 0; font: 400 clamp(28px,5vw,42px)/1 Georgia, serif; color: #fff; }

.dgTabs { display: flex; gap: 4px; }
.dgTabs button {
  padding: 9px 18px; border: 1px solid rgba(255,155,178,.24); background: transparent;
  color: #dac7cc; font: 900 11px/1 Arial, sans-serif; letter-spacing: .12em;
  text-transform: uppercase; cursor: pointer;
}
.dgTabs button:hover { border-color: var(--rose,#ff3b64); color: #fff; }
.dgTabs button.is-active { border-color: var(--rose,#ff3b64); background: rgba(230,40,135,.16); color: #fff; }

.dgComposer {
  padding: 16px; margin-bottom: 22px;
  border: 1px solid rgba(255,155,178,.22);
  background: linear-gradient(150deg,#250710,#100018);
}
.dgComposer textarea {
  width: 100%; min-height: 88px; padding: 12px; resize: vertical;
  border: 1px solid rgba(255,155,178,.18); background: rgba(6,1,6,.6);
  color: #f4e6ec; font: 16px/1.6 Georgia, serif;
}
.dgComposer textarea:focus { outline: 2px solid var(--rose,#ff3b64); outline-offset: 1px; }
.dgComposerRow { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-top: 10px; }
.dgAudience select {
  padding: 8px 10px; border: 1px solid rgba(255,155,178,.28);
  background: rgba(6,1,6,.7); color: #f4e6ec; font: 12px/1 Arial, sans-serif;
}
.dgHint { flex: 1 1 160px; color: #a894b8; font-size: 12px; }
.dgCount { color: #a894b8; font: 900 12px/1 Arial, sans-serif; }
.dgCount.is-low { color: var(--rose,#ff3b64); }
.dgError { margin: 10px 0 0; padding: 9px 12px; border-left: 3px solid var(--rose,#ff3b64);
  background: rgba(164,7,53,.16); color: #ffd6e2; font-size: 14px; }

.dgStatus, .dgEmpty { padding: 22px 0; color: #a894b8; text-align: center; }
.dgEmpty { font: italic 17px/1.5 Georgia, serif; }

.dgSkeleton div {
  height: 92px; margin-bottom: 10px;
  border: 1px solid rgba(255,155,178,.12); background: rgba(10,3,8,.6);
  animation: dgPulse 1.4s ease-in-out infinite;
}
.dgSkeleton div:nth-child(2) { animation-delay: .15s }
.dgSkeleton div:nth-child(3) { animation-delay: .3s }
@keyframes dgPulse { 0%,100% { opacity: .35 } 50% { opacity: .7 } }
@media (prefers-reduced-motion: reduce) { .dgSkeleton div { animation: none } }

.dgFeed { list-style: none; margin: 0; padding: 0; }
.dgPost {
  padding: 16px; margin-bottom: 10px;
  border: 1px solid rgba(255,155,178,.16); background: rgba(10,3,8,.72);
}
.dgPost header { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; }
.dgAuthor { display: flex; flex-wrap: wrap; gap: 7px; align-items: baseline; text-decoration: none; }
.dgAuthor b { color: #fff; font: 400 17px/1.2 Georgia, serif; }
.dgAuthor span { color: #a894b8; font-size: 13px; }
.dgAuthor em {
  padding: 2px 6px; border: 1px solid var(--rose,#ff3b64); color: var(--rose,#ff3b64);
  font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; text-transform: uppercase; font-style: normal;
}
.dgPost time { color: #8c7a97; font-size: 12px; white-space: nowrap; }
.dgBody { margin: 10px 0 0; color: #e7d4df; font-size: 16px; line-height: 1.66; white-space: pre-wrap; overflow-wrap: anywhere; }
.dgTag { color: var(--pink,#ff9bb2); text-decoration: none; }
.dgTag:hover { text-decoration: underline; }

.dgActions { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin-top: 12px; }
.dgActions button, .dgActions a {
  min-height: 40px; padding: 8px 12px; border: 1px solid transparent; background: transparent;
  color: #b9a5c2; font: 900 11px/1 Arial, sans-serif; letter-spacing: .1em;
  text-transform: uppercase; text-decoration: none; cursor: pointer;
}
.dgActions button:hover, .dgActions a:hover { border-color: rgba(255,155,178,.3); color: #fff; }
.dgActions button[aria-pressed="true"] { color: var(--rose,#ff3b64); }
.dgActions b { margin-left: 5px; color: #f4e6ec; font-weight: 900; }
.dgAudienceTag {
  margin-left: auto; padding: 3px 8px; border: 1px solid rgba(255,155,178,.24);
  color: #a894b8; font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; text-transform: uppercase;
}

.dgGate { padding: clamp(28px,6vw,56px); text-align: center;
  border: 1px solid rgba(255,155,178,.24); background: linear-gradient(150deg,#3d0117,#16021c); }
.dgGate h1 { margin: 6px 0 14px; font: 400 clamp(30px,6vw,48px)/1 Georgia, serif; color: #fff; }
.dgGate p { max-width: 46ch; margin: 0 auto; color: #dac7cc; line-height: 1.7; }
.dgGateActions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-top: 22px; }

.visuallyHidden {
  position: absolute; width: 1px; height: 1px; overflow: hidden;
  clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
}

@media (max-width: 560px) {
  .dgHead { flex-direction: column; align-items: stretch; }
  .dgTabs button { flex: 1; }
  .dgActions { gap: 2px; }
  .dgActions button, .dgActions a { padding: 8px 9px; font-size: 10px; }
}

/* ============================================================
   Self-assessment tests. Existing ruby/wine/plum tokens only.
   ============================================================ */

.testPage { max-width: 720px; margin: 0 auto; padding: clamp(24px,5vw,64px) clamp(16px,4vw,28px) 100px; }

.testIntro h1, .testResult h1 { margin: 6px 0 14px; font: 400 clamp(32px,6vw,54px)/1 Georgia, serif; color: #fff; }
.testIntro h1 em { color: var(--hot-pink,#ff77ad); font-style: italic; }
.testLede { max-width: 56ch; color: #dac7cc; font-size: 17px; line-height: 1.72; }

.testPromises { list-style: none; margin: 26px 0; padding: 0; display: grid; gap: 10px; }
.testPromises li {
  padding: 14px 16px; border-left: 3px solid var(--rose,#ff3b64);
  background: rgba(164,7,53,.12); color: #e7d4df; font-size: 15px; line-height: 1.6;
}
.testPromises b { color: #fff; }

.testSmall { margin-top: 20px; color: #a894b8; font-size: 12.5px; line-height: 1.65; }

/* ---- runner ---- */
.testProgress { display: flex; align-items: center; gap: 12px; margin-bottom: 30px; }
.testProgressTrack { flex: 1; height: 3px; background: rgba(255,155,178,.16); }
.testProgressFill { height: 100%; background: var(--rose,#ff3b64); transition: width .25s ease; }
.testProgress span { color: #a894b8; font: 900 11px/1 Arial, sans-serif; letter-spacing: .1em; white-space: nowrap; }
@media (prefers-reduced-motion: reduce) { .testProgressFill { transition: none } }

.testRestored { margin: 0 0 18px; color: var(--hot-pink,#ff77ad); font-size: 13px; }
.testAsks { margin: 0 0 8px; color: var(--rose,#ff3b64); font: 900 11px/1 Arial, sans-serif; letter-spacing: .14em; text-transform: uppercase; }
.testQuestion { margin: 0 0 28px; font: 400 clamp(21px,3.4vw,30px)/1.34 Georgia, serif; color: #fff; }

.testOptions { display: grid; gap: 7px; }
.testOptions button {
  min-height: 52px; padding: 14px 18px; text-align: left;
  border: 1px solid rgba(255,155,178,.22); background: rgba(10,3,8,.6);
  color: #e7d4df; font: 16px/1.4 Georgia, serif; cursor: pointer;
  transition: border-color .15s ease, background .15s ease;
}
.testOptions button:hover { border-color: var(--rose,#ff3b64); background: rgba(164,7,53,.16); color: #fff; }
.testOptions button:focus-visible { outline: 2px solid var(--rose,#ff3b64); outline-offset: 2px; }
.testOptions button.is-chosen { border-color: var(--rose,#ff3b64); background: rgba(230,40,135,.2); color: #fff; }

.testSkips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.testSkips button {
  min-height: 40px; padding: 9px 14px; border: 1px dashed rgba(255,155,178,.26);
  background: transparent; color: #a894b8; font-size: 13px; cursor: pointer;
}
.testSkips button:hover { border-color: var(--rose,#ff3b64); color: #f4e6ec; }

.testNav { display: flex; justify-content: space-between; gap: 10px; margin-top: 30px; }
.testNav button {
  min-height: 40px; padding: 9px 14px; border: 0; background: transparent;
  color: #8c7a97; font: 900 11px/1 Arial, sans-serif; letter-spacing: .1em;
  text-transform: uppercase; cursor: pointer;
}
.testNav button:hover:not(:disabled) { color: #fff; }
.testNav button:disabled { opacity: .35; cursor: default; }

/* ---- result ---- */
.testBars { list-style: none; margin: 30px 0; padding: 0; display: grid; gap: 20px; }
.testBarHead { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.testBarHead b { color: #fff; font: 400 20px/1.2 Georgia, serif; }
.testBarHead span { color: var(--hot-pink,#ff77ad); font: 900 10px/1 Arial, sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.testBarTrack { height: 8px; margin: 9px 0; background: rgba(255,155,178,.13); }
.testBarFill { height: 100%; background: linear-gradient(90deg, var(--rose,#ff3b64), var(--hot-pink,#ff77ad)); }
.testBarBlurb { margin: 0; color: #dac7cc; font-size: 14.5px; line-height: 1.6; }
.testBarGo { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 9px; }
.testBarGo a { color: var(--hot-pink,#ff77ad); font: 900 11px/1 Arial, sans-serif; letter-spacing: .08em; text-transform: uppercase; text-decoration: none; }
.testBarGo a:hover { text-decoration: underline; }

.testGap { margin: 34px 0; padding: 20px; border: 1px solid rgba(255,119,173,.3); background: rgba(61,9,88,.2); }
.testGap h2 { margin: 0 0 10px; font: 400 22px/1.25 Georgia, serif; color: var(--hot-pink,#ff77ad); }
.testGap p { color: #e7d4df; line-height: 1.68; }
.testGap ul { margin: 12px 0 0; padding-left: 20px; color: #dac7cc; line-height: 1.8; }
.testGap b { color: #fff; }

.testNext h2 { margin: 34px 0 14px; font: 400 24px/1.2 Georgia, serif; color: #fff; }
.testNextGrid { display: flex; flex-wrap: wrap; gap: 9px; }

.testResultFoot { margin-top: 40px; padding-top: 22px; border-top: 1px solid rgba(255,155,178,.18); }

@media (max-width: 560px) {
  .testNextGrid .button { width: 100%; }
  .testBarHead { flex-direction: column; gap: 3px; }
}

/* ============================================================
   Member profiles at /@handle.
   ============================================================ */

.profilePage { max-width: 700px; margin: 0 auto; padding: 0 0 90px; }
.profileBanner {
  height: clamp(120px, 22vw, 200px);
  background: linear-gradient(135deg, #3d0117, #16021c) center/cover no-repeat;
  border-bottom: 1px solid rgba(255,155,178,.22);
}
.profileHead {
  display: flex; flex-wrap: wrap; gap: 14px; align-items: flex-end;
  padding: 0 clamp(16px,4vw,26px); margin-top: -42px;
}
.profileAvatar {
  width: 84px; height: 84px; flex: 0 0 84px; overflow: hidden;
  display: grid; place-items: center;
  border: 2px solid rgba(255,155,178,.4); border-radius: 50%;
  background: linear-gradient(150deg,#3d0117,#16021c);
}
.profileAvatar img { width: 100%; height: 100%; object-fit: cover; }
.profileAvatar span { color: var(--hot-pink,#ff77ad); font: 400 34px Georgia, serif; }
.profileIdentity { flex: 1 1 200px; }
.profileIdentity h1 { display: flex; flex-wrap: wrap; gap: 9px; align-items: baseline; margin: 0; font: 400 26px/1.2 Georgia, serif; color: #fff; }
.profileIdentity h1 em {
  padding: 3px 7px; border: 1px solid var(--rose,#ff3b64); color: var(--rose,#ff3b64);
  font: 900 9px/1 Arial, sans-serif; letter-spacing: .1em; text-transform: uppercase; font-style: normal;
}
.profileHandle { margin: 3px 0 0; color: #a894b8; font-size: 14px; }
.profileRoles { display: flex; flex-wrap: wrap; gap: 5px; list-style: none; margin: 9px 0 0; padding: 0; }
.profileRoles li {
  padding: 3px 9px; border: 1px solid rgba(255,155,178,.3);
  color: #f0d7e5; font: 900 9.5px/1.5 Arial, sans-serif; letter-spacing: .09em; text-transform: uppercase;
}

.profileBio { margin: 18px clamp(16px,4vw,26px) 0; color: #e7d4df; font-size: 16px; line-height: 1.7; white-space: pre-wrap; overflow-wrap: anywhere; }
.profileError { margin: 12px clamp(16px,4vw,26px); padding: 9px 12px; border-left: 3px solid var(--rose,#ff3b64); background: rgba(164,7,53,.16); color: #ffd6e2; font-size: 14px; }

.profileStats { display: flex; flex-wrap: wrap; gap: 22px; margin: 20px clamp(16px,4vw,26px); padding: 0; }
.profileStats div { margin: 0; }
.profileStats dt { color: #8c7a97; font: 900 9.5px/1 Arial, sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.profileStats dd { margin: 4px 0 0; color: #fff; font: 400 20px Georgia, serif; }

.profileSectionHead { margin: 26px clamp(16px,4vw,26px) 12px; font: 400 20px Georgia, serif; color: var(--hot-pink,#ff77ad); }
.profileEmpty { margin: 0 clamp(16px,4vw,26px); color: #a894b8; font-style: italic; }
.profilePosts { list-style: none; margin: 0 clamp(16px,4vw,26px); padding: 0; display: grid; gap: 9px; }
.profilePosts li { padding: 15px; border: 1px solid rgba(255,155,178,.16); background: rgba(10,3,8,.7); }
.profilePosts p { margin: 0; color: #e7d4df; font-size: 15.5px; line-height: 1.66; white-space: pre-wrap; overflow-wrap: anywhere; }
.profilePosts footer { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 10px; color: #8c7a97; font-size: 11px; }
.profilePosts footer b { color: var(--hot-pink,#ff77ad); text-transform: uppercase; letter-spacing: .08em; }

.profileGate { padding: clamp(40px,8vw,80px) clamp(16px,4vw,26px); text-align: center; }
.profileGate h1 { margin: 8px 0 12px; font: 400 clamp(26px,5vw,38px)/1.1 Georgia, serif; color: #fff; }
.profileGate p { max-width: 44ch; margin: 0 auto; color: #dac7cc; line-height: 1.68; }
.profileGateActions { display: flex; flex-wrap: wrap; gap: 9px; justify-content: center; margin-top: 20px; }

.profileSkeleton { padding-bottom: 20px; }
.profileSkeletonBanner { height: 160px; background: rgba(255,155,178,.08); animation: dgPulse 1.4s ease-in-out infinite; }
.profileSkeletonLine { height: 16px; margin: 14px clamp(16px,4vw,26px); background: rgba(255,155,178,.08); animation: dgPulse 1.4s ease-in-out infinite; }

@media (max-width: 560px) {
  .profileHead { flex-direction: column; align-items: flex-start; }
  .profileStats { gap: 16px; }
}

/* ---- Where Do You Start? ---- */
.discoverQuestions { list-style: none; margin: 26px 0; padding: 0; display: grid; gap: 22px; }
.discoverQuestions > li { padding-bottom: 20px; border-bottom: 1px solid rgba(255,155,178,.12); }
.discoverQuestions p { margin: 0 0 10px; color: #f0e2e8; font: 17px/1.5 Georgia, serif; }
.discoverQuestions p span { color: var(--rose,#ff3b64); font-weight: 700; }
.discoverOptions { display: flex; gap: 6px; }
.discoverOptions button {
  flex: 1; min-height: 46px; padding: 11px;
  border: 1px solid rgba(255,155,178,.22); background: rgba(10,3,8,.6);
  color: #dac7cc; font: 900 11px/1 Arial, sans-serif; letter-spacing: .1em;
  text-transform: uppercase; cursor: pointer;
}
.discoverOptions button:hover { border-color: var(--rose,#ff3b64); color: #fff; }
.discoverOptions button:focus-visible { outline: 2px solid var(--rose,#ff3b64); outline-offset: 2px; }
.discoverOptions button.is-chosen { border-color: var(--rose,#ff3b64); background: rgba(230,40,135,.22); color: #fff; }
.discoverFinish { margin-top: 24px; }
.discoverList { list-style: none; margin: 28px 0; padding: 0; display: grid; gap: 18px; }
.discoverList li { padding: 18px; border: 1px solid rgba(255,155,178,.2); background: rgba(10,3,8,.72); }
.discoverList h2 { margin: 0 0 6px; font: 400 21px Georgia, serif; color: #fff; }
.discoverList p { margin: 0; color: #dac7cc; line-height: 1.6; }
.discoverWords { display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0 10px; }
.discoverWords a {
  padding: 4px 9px; border: 1px solid rgba(255,155,178,.26);
  color: var(--hot-pink,#ff77ad); font-size: 12px; text-decoration: none; text-transform: capitalize;
}
.discoverWords a:hover { border-color: var(--rose,#ff3b64); color: #fff; }

/* ---- Limits Map ---- */
.limitsPage { max-width: 780px; margin: 0 auto; padding: clamp(24px,5vw,64px) clamp(16px,4vw,28px) 100px; }
.limitsBar { display: flex; flex-wrap: wrap; gap: 9px; align-items: center; position: sticky; top: 0; z-index: 5; padding: 12px 0; background: rgba(9,3,7,.96); border-bottom: 1px solid rgba(255,155,178,.16); }
.limitsBar input, .limitsBar select {
  min-height: 42px; padding: 9px 12px; border: 1px solid rgba(255,155,178,.24);
  background: rgba(6,1,6,.7); color: #f4e6ec; font: 14px/1 Georgia, serif;
}
.limitsBar input { flex: 1 1 180px; }
.limitsCount { margin: 0 0 0 auto; color: #a894b8; font: 900 10.5px/1 Arial, sans-serif; letter-spacing: .1em; text-transform: uppercase; }

.limitsList { list-style: none; margin: 18px 0 0; padding: 0; display: grid; gap: 8px; }
.limitsList > li { padding: 14px; border: 1px solid rgba(255,155,178,.15); background: rgba(10,3,8,.7); }
.limitsHead { display: flex; flex-wrap: wrap; gap: 10px; align-items: baseline; }
.limitsHead b { color: #fff; font: 400 17px Georgia, serif; }
.limitsWhat { border: 0; background: none; color: var(--hot-pink,#ff77ad); font-size: 11.5px; cursor: pointer; text-decoration: underline; }
.limitsFlag { padding: 2px 7px; border: 1px solid var(--rose,#ff3b64); color: var(--rose,#ff3b64); font: 900 9px/1.6 Arial, sans-serif; letter-spacing: .09em; text-transform: uppercase; }
.limitsDefinition { margin: 9px 0; padding: 10px 12px; border-left: 3px solid rgba(255,119,173,.4); background: rgba(61,9,88,.2); color: #e3d2dd; font-size: 13.5px; line-height: 1.65; white-space: pre-wrap; }

.limitsRow { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 9px; }
.limitsRow > span { min-width: 62px; color: #8c7a97; font: 900 10px/1 Arial, sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.limitsStances { display: flex; flex-wrap: wrap; gap: 4px; }
.limitsStances button {
  min-height: 40px; padding: 8px 11px; border: 1px solid rgba(255,155,178,.2);
  background: transparent; color: #b9a5c2; font-size: 12px; cursor: pointer;
}
.limitsStances button:hover { border-color: rgba(255,155,178,.5); color: #fff; }
.limitsStances button:focus-visible { outline: 2px solid var(--rose,#ff3b64); outline-offset: 2px; }
.limitsStances button.is-chosen { color: #fff; font-weight: 700; }
.limitsStances .tone-want { border-color: #3fbf7f; background: rgba(63,191,127,.18); }
.limitsStances .tone-maybe { border-color: var(--hot-pink,#ff77ad); background: rgba(255,119,173,.18); }
.limitsStances .tone-decline { border-color: #8c7a97; background: rgba(140,122,151,.2); }
.limitsStances .tone-stop { border-color: var(--rose,#ff3b64); background: rgba(230,40,135,.26); }

@media (max-width: 560px) {
  .limitsCount { margin: 4px 0 0; width: 100%; }
  .limitsRow > span { min-width: 100%; }
}

/* ---- Complete six-tool assessment suite ---- */
.assessmentHub { width: min(1160px,calc(100% - 32px)); margin: 0 auto; padding: clamp(42px,7vw,90px) 0 100px; }
.assessmentHubHero { max-width: 760px; }
.assessmentHubHero h1 { margin: 8px 0 18px; color: #fff; font: 400 clamp(40px,7vw,78px)/.96 Georgia,serif; }
.assessmentHubHero h1 em { color: var(--hot-pink,#ff77ad); font-weight: 400; }
.assessmentHubHero > p:last-child { max-width: 62ch; color: #dac7cc; font-size: 18px; line-height: 1.72; }
.assessmentGrid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin-top: 38px; }
.assessmentGrid article { position: relative; min-height: 310px; display: flex; flex-direction: column; padding: 26px; overflow: hidden; border: 1px solid rgba(255,155,178,.2); background: radial-gradient(circle at 100% 0,rgba(230,40,135,.18),transparent 38%),linear-gradient(145deg,rgba(61,1,23,.72),rgba(10,3,8,.94)); }
.assessmentGrid article > span { position: absolute; right: 18px; top: 4px; color: rgba(255,255,255,.05); font: italic 400 92px/1 Georgia,serif; }
.assessmentGrid article > p { position: relative; margin: 0; color: var(--rose,#ff3b64); font: 900 10px/1.3 Arial,sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.assessmentGrid h2 { position: relative; margin: 28px 0 12px; color: #fff; font: 400 28px/1.1 Georgia,serif; }
.assessmentGrid article > div { position: relative; color: #dac7cc; line-height: 1.65; }
.assessmentGrid a { position: relative; display: flex; justify-content: space-between; gap: 14px; margin-top: auto; padding-top: 24px; color: var(--hot-pink,#ff77ad); font: 900 11px/1 Arial,sans-serif; letter-spacing: .1em; text-transform: uppercase; text-decoration: none; }
.assessmentGrid a:hover { color: #fff; }
.assessmentGrid i { font-style: normal; }
.assessmentPrivacy { max-width: 840px; margin-top: 46px; padding: 24px; border-left: 3px solid var(--rose,#ff3b64); background: rgba(164,7,53,.12); }
.assessmentPrivacy h2 { margin: 0 0 8px; color: #fff; font: 400 25px Georgia,serif; }
.assessmentPrivacy p { margin: 0; color: #dac7cc; line-height: 1.7; }

.assessmentScore { display: inline-flex; align-items: baseline; gap: 5px; margin: 24px 0 0; padding: 11px 14px; border: 1px solid rgba(255,155,178,.25); color: #dac7cc; font: 900 10px/1 Arial,sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.assessmentScore b { color: #fff; font: 400 28px/1 Georgia,serif; }
.assessmentScore span { color: #8c7a97; }
.assessmentSheet { margin: 28px 0 0; padding: 20px; border: 1px solid rgba(255,155,178,.28); background: rgba(164,7,53,.13); }
.assessmentSheet h2 { margin: 0 0 12px; color: #fff; font: 400 23px Georgia,serif; }
.assessmentSheet ul,.assessmentNotes { margin: 0; padding-left: 22px; color: #e7d4df; line-height: 1.72; }
.assessmentSheetSoft { background: rgba(61,9,88,.2); }
.assessmentSheetStop { border-color: rgba(255,59,100,.52); background: rgba(81,3,26,.28); }
.assessmentNotes { margin: 28px 0; padding: 18px 18px 18px 38px; border-left: 3px solid var(--hot-pink,#ff77ad); background: rgba(61,9,88,.16); }
.assessmentActions { display: flex; flex-wrap: wrap; gap: 9px; }
.assessmentActions p { flex-basis: 100%; }
.testNav a { display: inline-flex; align-items: center; min-height: 40px; padding: 9px 14px; color: #8c7a97; font: 900 11px/1 Arial,sans-serif; letter-spacing: .1em; text-transform: uppercase; text-decoration: none; }
.testNav a:hover { color: #fff; }

@media (max-width: 800px) { .assessmentGrid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 560px) {
  .assessmentGrid { grid-template-columns: 1fr; }
  .assessmentGrid article { min-height: 270px; }
  .assessmentActions .button { width: 100%; }
}
@media print {
  .siteHeader,.publicHeader,.publicFooter,.testNext,.assessmentActions button { display: none!important; }
  body,.testPage { background: #fff!important; color: #111!important; }
  .testResult h1,.testBarHead b,.assessmentSheet h2 { color: #111!important; }
  .testLede,.testBarBlurb,.assessmentSheet ul,.assessmentNotes { color: #222!important; }
  .testBarTrack { border: 1px solid #999; background: #eee!important; }
}
