@font-face{font-family:PulseSans;src:local("Arial");font-display:swap}
:root{color-scheme:dark;--ink:#f7f3ef;--muted:#bdb5b0;--hot:#f24f2e;--hot2:#ff7154;--night:#080808;--panel:rgba(10,10,11,.84);--line:rgba(255,255,255,.14)}
*{box-sizing:border-box}
html{background:var(--night);scroll-behavior:smooth}
body{margin:0;min-width:280px;color:var(--ink);font-family:PulseSans,Arial,sans-serif;background:#080808;line-height:1.55}
button,summary,[role="button"]{font:inherit}
button,[role="button"],summary{cursor:pointer}
button{color:inherit}
[hidden]{display:none!important}
body::before{content:"";position:fixed;inset:0;background-image:linear-gradient(90deg,#000 0%,#000 55%,rgba(0,0,0,.84) 67%,rgba(0,0,0,.18) 91%),linear-gradient(0deg,rgba(0,0,0,.78),transparent 45%),url("/images/gentlove-background.webp");background-size:cover;background-position:center;z-index:0}
.aurora-field{position:fixed;inset:0;z-index:1;pointer-events:none;background:radial-gradient(circle at 18% 30%,rgba(242,79,46,.24),transparent 28%),radial-gradient(circle at 78% 74%,rgba(71,61,255,.22),transparent 26%);mix-blend-mode:screen}
.ambient-target{position:absolute;inset:0 0 auto;height:100svh;z-index:2;outline-offset:-5px}
.passage-shell{position:relative;z-index:3;min-height:100svh;width:min(1180px,100%);margin:0 auto;padding:24px clamp(20px,4vw,64px) 44px}
.brand-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;min-width:0}
.brand-lockup,.consent-mark{display:flex;align-items:center;gap:12px;font-size:1.25rem;font-weight:800;letter-spacing:-.03em;min-width:0}
.brand-lockup img,.consent-mark img{width:34px;height:34px;object-fit:contain;flex:none}
.brand-lockup span,.consent-mark span{white-space:nowrap}
.passage-button{border:1px solid var(--line);border-radius:999px;padding:13px 22px;background:rgba(8,8,8,.58);backdrop-filter:blur(14px);font-weight:800;transition:transform .2s ease,border-color .2s ease,background .2s ease}
.passage-button:hover,.passage-button:focus-visible{transform:translateY(-2px);border-color:rgba(255,113,84,.7)}
.passage-button-primary{background:linear-gradient(135deg,var(--hot),var(--hot2));border-color:transparent;box-shadow:0 18px 42px rgba(242,79,46,.28)}
.passage-button-quiet{background:rgba(255,255,255,.05)}
.passage-button-small{padding:9px 17px;font-size:.9rem}
.passage-grid{min-height:calc(100svh - 98px);display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);align-items:center;gap:clamp(32px,6vw,86px);padding:48px 0 64px}
.message-panel{min-width:0;max-width:650px}
.signal-line{display:flex;align-items:center;gap:10px;margin:0 0 18px;color:#efc8bf;text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;font-weight:900}
.signal-line span{width:38px;height:1px;background:var(--hot2);box-shadow:0 0 16px var(--hot)}
h1{margin:0;max-width:13ch;font-size:clamp(3.15rem,6.4vw,6.7rem);line-height:.88;letter-spacing:-.065em;text-wrap:balance}
.lead-copy{max-width:580px;margin:28px 0 0;color:#d7d0cc;font-size:clamp(1rem,1.5vw,1.22rem)}
.action-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.trust-line{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.trust-line span{padding:6px 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.75rem;background:rgba(0,0,0,.3)}
.portrait-orbit{position:relative;height:min(650px,70vh);min-height:520px;isolation:isolate}
.portrait-card{position:absolute;margin:0;border-radius:28px;overflow:hidden;background:#0e0d0d;border:1px solid var(--line);box-shadow:0 28px 90px rgba(0,0,0,.48);transition:transform .25s ease,border-color .25s ease}
.portrait-card:hover,.portrait-card:focus-visible{border-color:rgba(255,113,84,.8);z-index:4}
.portrait-card img{display:block;width:100%;height:100%;object-fit:cover}
.portrait-card figcaption{position:absolute;left:16px;right:16px;bottom:14px;padding:9px 12px;border-radius:12px;background:rgba(0,0,0,.68);font-size:.8rem;font-weight:800;backdrop-filter:blur(10px)}
.portrait-card-woman{width:58%;height:78%;left:2%;top:4%;transform:rotate(-5deg)}
.portrait-card-woman:hover,.portrait-card-woman:focus-visible{transform:rotate(-2deg) translateY(-6px)}
.portrait-card-man{width:52%;height:68%;right:0;bottom:1%;transform:rotate(6deg)}
.portrait-card-man:hover,.portrait-card-man:focus-visible{transform:rotate(2deg) translateY(-6px)}
.profile-pulse{position:absolute;z-index:5;right:4%;top:7%;display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:12px;width:min(250px,68%);margin:0;padding:10px 14px 10px 10px;border-radius:18px;background:rgba(19,18,20,.9);border:1px solid rgba(255,113,84,.55);box-shadow:0 18px 45px rgba(0,0,0,.46)}
.profile-pulse img{width:58px;height:58px;border-radius:14px;object-fit:cover}
.profile-pulse figcaption{display:flex;flex-direction:column;min-width:0}
.profile-pulse strong{font-size:.9rem}
.profile-pulse span{font-size:.7rem;color:var(--muted)}
.consent-reading{position:relative;margin:0 auto;max-width:980px;border:1px solid var(--line);border-radius:24px;background:rgba(9,9,10,.9);box-shadow:0 30px 90px rgba(0,0,0,.48);backdrop-filter:blur(18px)}
.consent-reading>summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 26px;list-style:none;font-weight:900}
.consent-reading>summary::-webkit-details-marker{display:none}
.consent-reading>summary::after{content:"+";display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);font-size:1.35rem;flex:none}
.consent-reading[open]>summary::after{content:"−"}
.consent-reading>summary span{display:block}
.consent-reading>summary small{margin-left:auto;color:var(--muted);font-weight:500;text-align:right}
.reading-card{padding:12px clamp(22px,5vw,68px) 54px;border-top:1px solid var(--line);color:#d8d2ce}
.reading-card h2{margin:42px 0 12px;color:#fff;font-size:clamp(1.75rem,4vw,3rem);line-height:1.05;letter-spacing:-.04em}
.reading-card h3{margin:34px 0 10px;color:#ffd4cb;font-size:1.35rem}
.reading-card p{max-width:74ch}
.passage-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:28px 4px 0;color:var(--muted);font-size:.82rem}
.passage-footer button{border:0;background:none;color:#ffd0c5;font-weight:800}
.consent-layer,.invite-layer{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:18px;background:rgba(0,0,0,.72);backdrop-filter:blur(15px)}
.consent-card,.invite-card{width:min(500px,100%);padding:clamp(26px,6vw,48px);border:1px solid rgba(255,113,84,.5);border-radius:30px;background:linear-gradient(145deg,rgba(25,22,22,.98),rgba(8,8,9,.98));box-shadow:0 38px 120px rgba(0,0,0,.72),inset 0 1px rgba(255,255,255,.08)}
.consent-kicker,.invite-kicker{margin:26px 0 7px;color:#f6a18d;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:900}
.consent-card h2,.invite-card h2{margin:0;font-size:clamp(1.8rem,6vw,3rem);line-height:1;letter-spacing:-.045em}
.consent-card p,.invite-card p{color:#c9c1bd}
.consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}
.consent-actions button{border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:rgba(255,255,255,.05);font-weight:900}
#EnterGate{background:linear-gradient(135deg,var(--hot),var(--hot2));border-color:transparent}
.invite-layer{z-index:15}
.invite-card{position:relative;text-align:center}
.invite-card>img{width:84px;height:84px;border-radius:24px;object-fit:cover;box-shadow:0 0 0 7px rgba(242,79,46,.12)}
.invite-close{position:absolute;right:17px;top:14px;border:0;background:none;font-size:1.8rem;color:#c9c1bd}
.invite-card .passage-button{width:100%;margin-top:12px}
.invite-later{margin-top:12px;border:0;background:none;color:var(--muted)}
@media (max-width:850px){
.passage-grid{grid-template-columns:minmax(0,1fr);padding-top:76px}
h1{max-width:12ch}
.portrait-orbit{width:min(520px,100%);height:580px;margin:0 auto}
}
@media (max-width:520px){
.passage-shell{padding:18px 16px 32px}
.brand-lockup{font-size:.9rem;flex:0 0 auto}.brand-lockup img{width:28px;height:28px}.passage-button-small{padding:8px 10px;font-size:.72rem}.brand-strip{gap:8px}.brand-strip .passage-button{width:auto;flex:0 0 auto}
.passage-grid{min-height:auto;padding:84px 0 42px;gap:36px}
h1{font-size:clamp(3rem,16vw,4.3rem);max-width:100%}
.lead-copy{font-size:.98rem}
.action-row{display:grid}.action-row .passage-button,.invite-card .passage-button{width:100%}
.portrait-orbit{height:480px;min-height:480px}
.portrait-card-woman{width:62%;height:76%;left:0}
.portrait-card-man{width:56%;height:67%;right:0}
.profile-pulse{top:auto;bottom:0;right:7%;width:76%}
.consent-reading>summary{align-items:flex-start;padding:18px}.consent-reading>summary small{display:none}
.passage-footer{align-items:flex-start}
.consent-card,.invite-card{border-radius:24px;padding:26px 22px}
.consent-actions{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.passage-button,.portrait-card{transition:none}}
.dialog-label{margin:0 0 14px;font-size:clamp(1.55rem,4vw,2.2rem);font-weight:800;line-height:1.1}
