@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{color-scheme:dark;--bg:#140c12;--text:#fff5f4;--muted:#bca9b0;--pink:#ff8eaa;--hot:#ff5e83;--line:#ffffff17;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:15px}a{color:inherit;text-decoration:none}.topbar{height:82px;max-width:1320px;margin:auto;padding:0 5.2%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:22px;font-weight:700;letter-spacing:-1px}.brand>span,.brand-dot{color:var(--hot)}.topbar nav{display:flex;gap:38px;color:var(--muted);font-size:13px}.topbar nav .active{color:var(--text)}.top-cta{border:1px solid #ff8eaa66;padding:12px 17px;border-radius:3px;color:#ffd7df;font-size:12px}.top-cta span{margin-left:13px;color:var(--pink)}.hero{min-height:615px;max-width:1320px;margin:auto;padding:74px 8.5% 55px;display:grid;grid-template-columns:1fr 1fr;position:relative;overflow:hidden}.hero-copy{z-index:1;padding-top:44px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:10px;font-weight:700;color:var(--pink)}.hero-copy .eyebrow i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--hot);box-shadow:0 0 12px var(--hot);margin:0 9px 1px 0}.hero h1{font:500 clamp(56px,6.2vw,82px)/1.04 var(--serif);letter-spacing:-3px;margin:28px 0 20px}.hero h1 em,.section-heading em,.closing em,.gate-card h2 em{color:var(--pink);font-weight:500}.hero-text{max-width:380px;line-height:1.8;color:var(--muted);font-size:14px}.hero-link{display:inline-flex;gap:40px;align-items:center;border-bottom:1px solid #ff8eaa88;padding:16px 0 10px;margin-top:20px;font-size:12px}.hero-link span{color:var(--pink)}.hero-art{position:relative;min-height:430px}.halo{position:absolute;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,#e846701d 0%,#e8467010 45%,transparent 70%);right:3%;top:-7%}.hero-photo{position:absolute;width:min(340px,73%);height:410px;right:12%;top:5px;border-radius:48% 48% 4px 4px;background:linear-gradient(180deg,transparent 55%,#140c12 100%),url('/images/hero.jpg') center 40%/cover;filter:saturate(.72)}.floating-note{position:absolute;padding:12px 15px;background:#261721ef;border:1px solid #ffffff1a;box-shadow:0 12px 36px #0004;font-size:11px;z-index:1}.floating-note span{color:var(--pink);margin-right:7px}.note-one{top:24%;left:0}.note-two{bottom:18%;right:0}.orbit-heart{position:absolute;right:8%;top:8%;color:var(--hot);font-size:25px;filter:drop-shadow(0 0 14px #ff5e83aa)}.hero-bottom{grid-column:1/-1;display:flex;align-items:center;gap:17px;align-self:end;color:#a9919c;font-size:10px;letter-spacing:1px}.hero-rule{height:1px;width:75px;background:var(--hot)}.people-section{background:#1a1017;padding:91px max(7%,calc((100% - 1120px)/2)) 83px;border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:34px}.section-heading .eyebrow{margin:0 0 13px}.section-heading h2{font:500 clamp(32px,4vw,48px) var(--serif);letter-spacing:-1.3px;margin:0}.sample-tag{font-size:9px;letter-spacing:1.5px;color:#b59ba7;border:1px solid #ffffff20;padding:8px 10px}.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:21px}.profile-card{background:#211720;border:1px solid #ffffff0d;transition:transform .2s,border-color .2s}.profile-card:hover{transform:translateY(-4px);border-color:#ff8eaa44}.profile-image{height:320px;position:relative;overflow:hidden}.profile-image:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#160e15c9)}.profile-image img{height:100%;width:100%;object-fit:cover;filter:saturate(.72)}.online{position:absolute;z-index:1;left:14px;bottom:14px;font-size:10px}.online i{display:inline-block;background:#b5e5b8;width:6px;height:6px;border-radius:50%;margin-right:5px;box-shadow:0 0 8px #b5e5b8}.heart-button{position:absolute;z-index:2;right:12px;top:12px;border:1px solid #fff5;background:#140c1280;color:white;border-radius:50%;width:34px;height:34px;font-size:21px;cursor:pointer}.heart-button.saved{color:var(--hot)}.profile-info{padding:18px 18px 20px;position:relative}.profile-info h3{margin:0 0 8px;font:500 23px var(--serif)}.distance{font-size:10px;color:var(--pink)}.profile-index{position:absolute;right:18px;top:20px;color:#735e69;font-size:10px}.profile-info p{color:#b9a9af;line-height:1.6;font-size:11px;min-height:35px;margin:15px 0}.view-profile{width:100%;border:0;border-top:1px solid var(--line);background:none;color:#ffe5e9;text-align:left;padding:14px 0 0;font:12px var(--sans);cursor:pointer}.view-profile span{float:right;color:var(--pink)}.privacy-note{margin:28px auto 0;text-align:center;color:#a9949d;font-size:10px}.privacy-note span{color:var(--pink);margin-right:6px}.closing{text-align:center;padding:90px 20px 100px;background:radial-gradient(ellipse at 50% 100%,#56203545,transparent 65%)}.closing>span{color:var(--hot);font-size:21px}.closing p{font-size:10px;text-transform:uppercase;letter-spacing:2px;color:#d0a8b5}.closing h2{font:500 52px/1.1 var(--serif);margin:18px}.closing a{display:inline-block;background:var(--hot);color:#210e16;padding:14px 22px;border-radius:2px;font-size:11px;font-weight:700;margin-top:13px}.closing a span{margin-left:17px}footer{max-width:1320px;margin:auto;padding:24px 5%;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:#9c8791;font-size:10px}footer .brand{font-size:17px;color:var(--text)}.gate-backdrop{position:fixed;z-index:10;inset:0;display:grid;place-items:center;padding:20px;background:transparent;backdrop-filter:none;transition:opacity .4s,visibility .4s}.gate-card{width:min(100%,450px);padding:36px 40px 26px;background:#1e141c;border:1px solid #ffffff1c;box-shadow:0 24px 100px #0009;text-align:center;position:relative}.gate-icon{margin:auto auto 14px;width:44px;height:44px;border:1px solid #ff8eaa50;border-radius:50%;display:grid;place-items:center;color:var(--pink);font-size:19px;box-shadow:0 0 32px #ff5e8318}.gate-card .eyebrow{font-size:9px}.gate-card h2{font:500 34px/1.18 var(--serif);margin:14px 0}.gate-card>p:not(.eyebrow):not(.gate-status):not(.gate-foot){font-size:12px;line-height:1.7;color:#bdaab2}.location-detail{display:flex;text-align:left;gap:13px;margin:23px 0;padding:14px;background:#ffffff08;border:1px solid var(--line)}.pin{color:var(--pink);font-size:22px}.location-detail strong,.location-detail small{display:block}.location-detail strong{font-size:11px;margin:2px 0 5px}.location-detail small{font-size:10px;color:#ad99a2;line-height:1.55}.allow-button{width:100%;border:0;padding:15px;background:linear-gradient(100deg,#ff8eaa,#ff6f91);color:#280f19;font:700 12px var(--sans);cursor:pointer}.allow-button span{float:right;font-size:17px;line-height:12px}.allow-button:disabled{opacity:.65;cursor:wait}.gate-status{font-size:10px;color:#c3abb5;min-height:14px;margin:13px 0 0}.retry-button{display:block;margin:8px auto 0;background:none;border:0;color:var(--pink);text-decoration:underline;font:11px var(--sans);cursor:pointer}.gate-foot{font-size:9px;color:#8f7d86;margin:17px 0 0}.gate-backdrop.is-unlocked{opacity:0;visibility:hidden;pointer-events:none}body:not(.is-unlocked) main{filter:none;pointer-events:none;user-select:none}.profile-dialog{width:min(90vw,420px);padding:36px;background:#211720;color:var(--text);border:1px solid #ffffff20}.profile-dialog::backdrop{background:#08050bd9;backdrop-filter:blur(6px)}.profile-dialog h2{font:500 34px var(--serif);margin:10px 0}.profile-dialog>p:not(.eyebrow){color:#c0adb5;line-height:1.7;font-size:13px}.profile-dialog .dialog-foot{font-size:10px!important;color:var(--pink)!important}.dialog-close{float:right;background:none;border:0;color:white;font-size:25px;cursor:pointer}@media(max-width:760px){.topbar{height:68px}.topbar nav{display:none}.top-cta{padding:10px;font-size:10px}.hero{padding:38px 7% 30px;grid-template-columns:1fr;min-height:auto}.hero-copy{padding-top:16px}.hero h1{font-size:60px}.hero-art{min-height:340px;margin-top:15px}.hero-photo{height:320px;right:17%;width:65%}.hero-bottom{margin-top:15px}.people-section{padding:64px 6%}.profile-grid{grid-template-columns:1fr;gap:15px}.profile-image{height:380px}.section-heading{align-items:start;gap:12px}.section-heading h2{font-size:35px}.sample-tag{font-size:8px;white-space:nowrap;margin-top:20px}.closing h2{font-size:44px}footer{gap:10px;flex-wrap:wrap}.gate-card{padding:30px 25px 23px}.gate-card h2{font-size:31px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
/* Keep the cards readable while the consent prompt is open. */
.gate-backdrop{background:#08050b66}
body:not(.is-unlocked) main{filter:none;pointer-events:none;user-select:none}
.gate-card{transition:box-shadow .2s ease}
.gate-card.is-shaking{animation:gentle-shake .38s ease-in-out}
@keyframes gentle-shake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
.allow-button{transition:filter .18s,transform .18s}.allow-button:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}
:is(button,a):focus-visible{outline:2px solid #ffd2dc;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.gate-card.is-shaking,.allow-button{animation:none;transition:none}}
.pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin:32px auto 0}
.pagination button{min-width:36px;height:36px;border:1px solid #ffffff24;background:#211720;color:#f8e8ed;font:12px var(--sans);cursor:pointer;transition:background .18s,border-color .18s}
.pagination button:hover:not(:disabled),.pagination .page-number.is-active{background:#ff8eaa;color:#241019;border-color:#ff8eaa}
.pagination button:disabled{opacity:.35;cursor:default}
.pagination .page-arrow{font-size:19px}
.pagination .page-count{margin:0 7px;color:#b9a9af;font-size:11px}
@media(max-width:420px){.pagination{gap:5px}.pagination button{min-width:32px;height:32px}.pagination .page-count{font-size:10px;margin:0 3px}}

.gate-card{max-height:calc(100vh - 32px);overflow-y:auto}
.camera-detail{margin-top:18px}
.camera-button{background:linear-gradient(100deg,#ffacc0,#ff8eaa)}
.camera-stage{margin-top:14px}
.camera-stage video,.camera-stage img{display:block;width:min(100%,280px);max-height:220px;margin:0 auto 12px;object-fit:cover;border-radius:12px;background:#09060a}
.camera-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.camera-action{border:0;border-radius:9px;padding:11px 14px;background:var(--hot);color:#210e16;font:700 11px var(--sans);cursor:pointer}
.camera-action.secondary{background:#352431;color:#ffe5e9;border:1px solid var(--line)}
.camera-action:disabled{opacity:.6;cursor:wait}
.camera-stage[hidden],.camera-stage [hidden]{display:none}
.people-section{background:linear-gradient(145deg,#1c121a,#191018);border-top-color:#ffffff0c}
.profile-card{overflow:hidden;border:1px solid #ffffff12;border-radius:14px;background:linear-gradient(155deg,#251a22,#1e151d);box-shadow:0 10px 28px #08050b22}
.profile-card:hover{transform:translateY(-3px);border-color:#ff8eaa55;box-shadow:0 16px 34px #08050b55}
.profile-image{height:320px}
.profile-image img{transition:transform .5s ease,filter .5s ease}
.profile-card:hover .profile-image img{transform:scale(1.035);filter:saturate(.85)}
.online{left:12px;bottom:12px;padding:7px 10px;border:1px solid #ffffff20;border-radius:999px;background:#140c1299;backdrop-filter:blur(8px)}
.heart-button{border-radius:50%;box-shadow:0 3px 12px #08050b55;backdrop-filter:blur(8px)}
.profile-info{padding:19px 19px 21px}
.profile-info p{min-height:38px}
.view-profile{border-top-color:#ffffff10;padding:13px 13px;background:#ffffff08;border-radius:9px;color:#ffe5e9;transition:background .18s,color .18s}
.view-profile:hover{background:#ff8eaa22;color:#fff}
.pagination{gap:7px;padding:7px;width:max-content;max-width:100%;border:1px solid #ffffff12;border-radius:999px;background:#211720aa;box-shadow:0 8px 24px #08050b22}
.pagination button{border:0;border-radius:999px;background:transparent}
.pagination .page-number.is-active{box-shadow:0 3px 12px #ff5e8340}
.gate-card,.profile-dialog{border-radius:18px;box-shadow:0 24px 80px #0005}
.location-detail{border-radius:12px}
.allow-button{border-radius:10px;box-shadow:0 8px 24px #ff5e8324}
.gate-icon{border-radius:50%;box-shadow:0 4px 20px #ff5e831a}
.dialog-close{border-radius:50%;width:34px;height:34px;line-height:28px;background:#ffffff0a}
@media(max-width:760px){.profile-card{border-radius:13px}.profile-image{height:380px}}
@media(prefers-reduced-motion:reduce){.profile-image img,.profile-card,.view-profile{transition:none}}
.profile-image{height:auto;aspect-ratio:4/5}
@media(max-width:760px){.profile-image{height:auto;aspect-ratio:4/5}}
.profile-image{aspect-ratio:2/3}
.profile-image:after{inset:72% 0 0}
.profile-image img{filter:saturate(1)}
.profile-card:hover .profile-image img{filter:saturate(1.05)}
.sample-disclaimer{margin:10px 0 0;color:#a9949d;font-size:11px;line-height:1.5}
