
:root{
  --bg:#080a0f;--bg2:#0c0f16;--card:#10141d;--card2:#141925;--text:#f3f5f8;
  --muted:#9aa5b8;--muted2:#717d91;--line:#222937;--line2:#181e29;
  --violet:#a987ff;--cyan:#75dfff;--pink:#ff8fbd;--green:#7ee2b8;--amber:#ffd28a;
  --gutter:clamp(16px,3vw,72px);--section:clamp(64px,7vw,124px);
  --radius:22px;--shadow:0 24px 80px rgba(0,0,0,.26);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:
 radial-gradient(900px 500px at 95% -10%,rgba(103,80,210,.12),transparent 65%),
 radial-gradient(800px 520px at -10% 20%,rgba(64,173,220,.07),transparent 70%),
 var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 line-height:1.62;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
[hidden]{display:none!important}
.skip{position:fixed;left:12px;top:-60px;z-index:9999;background:#fff;color:#000;padding:10px 14px;border-radius:10px}
.skip:focus{top:12px}
.shell{width:100%;padding-inline:var(--gutter)}
.reading{width:min(100%,78ch)}
.section{padding-block:var(--section)}
.section.slim{padding-block:clamp(44px,5vw,86px)}
.kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:900;color:#90dfff}
h1,h2,h3,h4{line-height:1.08;letter-spacing:-.025em}
h1{font-size:clamp(44px,5.9vw,104px);margin:.12em 0 .25em;max-width:14ch}
h2{font-size:clamp(34px,3.8vw,68px);margin:0 0 18px;max-width:18ch}
h3{font-size:clamp(20px,1.6vw,30px);margin:0 0 10px}
p{margin:0 0 1em}
.lead{font-size:clamp(18px,1.45vw,24px);color:#b3bccb;max-width:70ch}
.muted{color:var(--muted)}
.tiny{font-size:12px;color:var(--muted2)}
.gradient-text{background:linear-gradient(90deg,#d3c0ff,#83e8ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 16px;border-radius:12px;border:1px solid var(--line);background:#121722;color:#f6f8fb;font-weight:800;font-size:13px}
.btn:hover{border-color:#3a4560;transform:translateY(-1px)}
.btn.primary{border-color:rgba(173,136,255,.35);background:linear-gradient(135deg,#7b54e6,#5657d7);box-shadow:0 12px 34px rgba(94,70,195,.25)}
.btn.ghost{background:rgba(255,255,255,.025)}
.btn.adult{background:linear-gradient(135deg,#9b3e78,#7e365f);border-color:rgba(255,145,190,.26)}
.btn[aria-disabled=true],.btn.disabled{opacity:.52;pointer-events:none}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.badge{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);padding:5px 8px;border-radius:999px;font-size:10px;letter-spacing:.09em;text-transform:uppercase;font-weight:900;color:#98a2b4;background:#0d1118}
.badge.good{color:var(--green);border-color:rgba(126,226,184,.18)}
.badge.adult{color:#ffafd0;border-color:rgba(255,143,189,.2)}
.badge.warn{color:var(--amber);border-color:rgba(255,210,138,.2)}
.status-dot{width:7px;height:7px;border-radius:99px;background:var(--green);box-shadow:0 0 16px rgba(126,226,184,.45)}
.notice{padding:16px 18px;border:1px solid rgba(167,132,255,.18);border-radius:14px;background:rgba(130,94,220,.055);color:#b7c0cf}
.notice strong{color:#fff}

/* NAV */
.nav{position:sticky;top:0;z-index:100;background:rgba(7,9,14,.82);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.055)}
.nav-inner{min-height:74px;display:flex;align-items:center;gap:22px}
.brand{display:flex;align-items:center;min-width:158px}
.brand img{height:52px;width:auto;object-fit:contain}
.navlinks{display:flex;align-items:center;gap:clamp(10px,1.2vw,22px);margin-left:auto}
.navlinks a{font-size:12px;color:#9ea8ba;font-weight:800;white-space:nowrap}
.navlinks a:hover,.navlinks a.active{color:#fff}
.nav-actions{display:flex;gap:8px;align-items:center}
.menu-btn{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:12px;background:#10141d;padding:10px}
.menu-btn span{display:block;height:2px;background:#dce1e9;margin:5px 0;border-radius:2px}
.mobile-menu{border-top:1px solid var(--line2);padding:12px var(--gutter) 20px;background:#090c12}
.mobile-menu a{display:block;padding:11px 4px;border-bottom:1px solid var(--line2);color:#b6c0d0;font-weight:800;font-size:14px}

/* HERO / LAYOUT */
.hero{padding:clamp(64px,7vw,130px) 0 clamp(62px,6vw,110px);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);gap:clamp(28px,5vw,92px);align-items:center}
.hero-copy h1{max-width:12ch}
.hero-copy .lead{max-width:60ch}
.hero-visual{min-height:560px;border:1px solid var(--line);border-radius:30px;position:relative;overflow:hidden;background:
 radial-gradient(360px 300px at 72% 28%,rgba(153,95,255,.17),transparent 70%),
 radial-gradient(420px 300px at 25% 75%,rgba(77,200,255,.1),transparent 70%),
 linear-gradient(145deg,#0f131c,#0a0d13)}
.app-window{position:absolute;inset:8%;border-radius:22px;border:1px solid #2b3342;background:#0b0e14;box-shadow:var(--shadow);overflow:hidden}
.app-top{height:50px;border-bottom:1px solid #1f2633;display:flex;align-items:center;padding:0 16px;justify-content:space-between}
.app-dots{display:flex;gap:6px}.app-dots i{width:7px;height:7px;border-radius:99px;background:#31394a}
.app-body{height:calc(100% - 50px);display:grid;grid-template-columns:180px 1fr}
.app-side{border-right:1px solid #1c2330;padding:14px}
.fake-row{height:10px;border-radius:10px;background:#202837;margin-bottom:12px}.fake-row.sm{width:62%}
.chat{padding:22px;display:flex;flex-direction:column;gap:12px;justify-content:flex-end}
.bubble{max-width:72%;padding:13px 15px;border-radius:16px;font-size:12px;color:#cbd3df;background:#161c27;border:1px solid #252e3d}
.bubble.you{align-self:flex-end;background:#211832;border-color:#3b2850}
.avatar-orb{position:absolute;right:5%;top:7%;width:128px;height:128px;border-radius:50%;border:1px solid rgba(173,137,255,.35);background:radial-gradient(circle at 40% 35%,#bd9cff,#5a3ca7 45%,#131527 75%);box-shadow:0 0 80px rgba(125,79,222,.25)}

.page-hero{padding:clamp(64px,7vw,116px) 0 clamp(42px,5vw,80px)}
.page-hero h1{max-width:16ch}
.page-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:clamp(28px,5vw,86px);align-items:center}
.panel{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,#111620,#0d1118);padding:clamp(22px,2.5vw,40px)}
.dark-band{background:#0b0e14;border-block:1px solid var(--line2)}
.grid{display:grid;gap:clamp(14px,1.7vw,28px)}
.grid.auto{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}
.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{border:1px solid var(--line);border-radius:18px;background:#0f131b;padding:clamp(20px,2vw,30px)}
.card p,.card li{color:#8e99ac}
.card .meta{margin-top:18px;color:#baa7f5;font-size:12px;font-weight:900}
.card.feature{min-height:260px;display:flex;flex-direction:column}
.card.feature .meta{margin-top:auto}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px}
.section-head p{max-width:68ch;color:#929caf}
.trust{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line2);background:#0b0e14}
.trust div{padding:20px var(--gutter);border-right:1px solid var(--line2)}
.trust div:last-child{border-right:0}.trust b{display:block;margin-bottom:4px}.trust span{font-size:12px;color:#7f8a9f}

/* PRODUCT / STORE */
.product-card{position:relative;overflow:hidden}
.product-card:before{content:"";position:absolute;inset:auto -80px -100px auto;width:240px;height:240px;border-radius:50%;background:rgba(129,88,221,.07)}
.price{font-size:clamp(34px,3vw,52px);font-weight:950;letter-spacing:-.04em}
.list{list-style:none;padding:0;margin:18px 0;display:grid;gap:9px}
.list li{padding-left:20px;position:relative;color:#9aa5b8}
.list li:before{content:"✓";position:absolute;left:0;color:#7ee2b8;font-weight:900}
.filterbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}
.filter{border:1px solid var(--line);background:#0f131b;color:#98a3b6;border-radius:999px;padding:9px 12px;font-size:12px;font-weight:800}
.filter.active,.filter:hover{color:#fff;border-color:#4a3c6b;background:#181326}

/* ORIGINALS */
.originals-hero{background:
 radial-gradient(700px 450px at 85% 20%,rgba(255,100,162,.09),transparent 68%),
 radial-gradient(650px 430px at 10% 80%,rgba(141,79,219,.1),transparent 68%)}
.profile-strip{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:20px;border:1px solid var(--line);border-radius:18px;background:#0d1118}
.profile-pic{width:72px;height:72px;border-radius:50%;object-fit:cover;border:2px solid #39233a}
.gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:120px;gap:12px}
.gallery-item{position:relative;border-radius:18px;overflow:hidden;border:1px solid var(--line);background:#141823}
.gallery-item img{width:100%;height:100%;object-fit:cover}
.gallery-item:nth-child(1){grid-column:span 5;grid-row:span 3}
.gallery-item:nth-child(2){grid-column:span 3;grid-row:span 3}
.gallery-item:nth-child(3){grid-column:span 4;grid-row:span 2}
.gallery-item:nth-child(4){grid-column:span 4;grid-row:span 2}
.gallery-item:nth-child(5){grid-column:span 4;grid-row:span 3}
.gallery-item:nth-child(6){grid-column:span 4;grid-row:span 3}
.gallery-item.locked img{filter:blur(20px) saturate(.75);transform:scale(1.08)}
.lock{position:absolute;inset:0;display:grid;place-items:center;background:rgba(5,6,9,.28);text-align:center;padding:16px}
.lock span{display:inline-flex;padding:8px 11px;border-radius:999px;background:rgba(8,10,15,.86);border:1px solid rgba(255,255,255,.1);font-size:11px;font-weight:900}
.feed{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.42fr);gap:26px;align-items:start}
.post{border:1px solid var(--line);border-radius:20px;background:#0e121a;overflow:hidden;margin-bottom:18px}
.post-head{display:flex;gap:12px;align-items:center;padding:16px 18px}
.post-head img{width:42px;height:42px;border-radius:50%;object-fit:cover}
.post-media{aspect-ratio:16/11;background:#131722;overflow:hidden}
.post-media img{width:100%;height:100%;object-fit:cover}
.post-body{padding:17px 18px;color:#a4aebe}
.sidebar{position:sticky;top:100px}

/* MESSAGING PREVIEW */
.messages{display:grid;grid-template-columns:290px minmax(0,1fr);min-height:600px;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#0b0e14}
.thread-list{border-right:1px solid var(--line2);padding:14px}
.thread{display:flex;gap:10px;padding:12px;border-radius:12px;background:#121722}
.thread img{width:44px;height:44px;border-radius:50%;object-fit:cover}
.thread small{color:#768196}
.conversation{display:grid;grid-template-rows:auto 1fr auto}
.conv-head{padding:15px 18px;border-bottom:1px solid var(--line2);font-weight:900}
.conv-body{padding:24px;display:flex;flex-direction:column;gap:12px;overflow:auto}
.msg{max-width:72%;padding:11px 13px;border:1px solid #283142;border-radius:14px;background:#151b26;color:#c6cfdd;font-size:13px}
.msg.mine{align-self:flex-end;background:#211832;border-color:#3c2950}
.message-form{display:flex;gap:8px;border-top:1px solid var(--line2);padding:13px}
.message-form input{flex:1;padding:11px 13px;border-radius:11px;border:1px solid var(--line);background:#0d1118;color:#fff}

/* FAQ / FORMS */
.faq{display:grid;gap:10px}
.faq details{border:1px solid var(--line);border-radius:15px;background:#0f131b;padding:0 18px}
.faq summary{padding:17px 0;font-weight:900;cursor:pointer}
.faq details p{color:#929daf;margin:0 0 18px}
.form{display:grid;gap:14px}
.field label{display:block;font-size:12px;color:#a7b0c0;font-weight:800;margin-bottom:6px}
.field input,.field textarea,.field select{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:11px;background:#0b0f16;color:#fff}
.field textarea{min-height:140px;resize:vertical}
.form-note{font-size:12px;color:#798498}

/* BLOG */
.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:20px}
.blog-card{border:1px solid var(--line);border-radius:18px;background:#0e121a;padding:24px}
.blog-card .eyebrow{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#7c8799;font-weight:900}
.blog-card h3{margin-top:10px}
.blog-card p{color:#8e99ac}
.article{padding-bottom:100px}
.article header{padding:74px 0 30px}
.article h1{max-width:15ch}
.article-body{width:min(100%,78ch)}
.article-body h2{font-size:clamp(28px,2.6vw,46px);margin-top:52px}
.article-body h3{margin-top:32px}
.article-body p,.article-body li{font-size:clamp(16px,1.1vw,19px);color:#a8b1c1}
.article-note{padding:16px 18px;border-left:3px solid #9f7fff;background:#10141c;border-radius:10px;color:#a9b3c3;margin:28px 0}

/* LEGAL */
.legal{padding-bottom:100px}
.legal .article-body{max-width:88ch}
.legal h2{margin-top:46px}
.policy-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.policy-links a{font-size:12px;color:#adbacd;border:1px solid var(--line);border-radius:999px;padding:7px 10px}

/* AGE GATE */
.age-gate{position:fixed;inset:0;z-index:1000;background:rgba(4,5,8,.95);backdrop-filter:blur(20px);display:grid;place-items:center;padding:22px}
.age-panel{width:min(100%,560px);padding:32px;border:1px solid rgba(255,143,189,.22);border-radius:24px;background:linear-gradient(155deg,#12141c,#1a1018);box-shadow:0 30px 100px rgba(0,0,0,.55)}
.age-panel h2{font-size:36px;margin:10px 0 12px}
.age-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}

/* FOOTER */
.footer{border-top:1px solid var(--line2);padding:48px 0 22px;background:#07090d}
.footer-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:30px}
.footer-logo{height:54px;width:auto;margin-bottom:14px}
.footer p{color:#798498;max-width:42ch;font-size:13px}
.footer-col b{display:block;margin-bottom:11px;font-size:12px}
.footer-col a{display:block;color:#7f8a9d;font-size:12px;padding:4px 0}
.footer-col a:hover{color:#fff}
.footer-bottom{margin-top:34px;padding-top:18px;border-top:1px solid var(--line2);display:flex;justify-content:space-between;gap:16px;color:#657084;font-size:11px}

/* responsive */
@media(max-width:1180px){
  .navlinks{display:none}.menu-btn{display:block}
  .hero-grid,.page-grid{grid-template-columns:1fr}
  .hero-visual{min-height:520px}
  .trust{grid-template-columns:1fr 1fr}
  .trust div:nth-child(2){border-right:0}
  .feed{grid-template-columns:1fr}.sidebar{position:static}
  .footer-grid{grid-template-columns:1.4fr repeat(2,1fr)}
}
@media(max-width:820px){
  .grid.two,.grid.three,.grid.four{grid-template-columns:1fr}
  .gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:190px}
  .gallery-item,.gallery-item:nth-child(n){grid-column:span 1;grid-row:span 1}
  .gallery-item:first-child{grid-column:1/-1}
  .messages{grid-template-columns:1fr}.thread-list{display:none}
  .footer-grid{grid-template-columns:1fr 1fr}
  .profile-strip{grid-template-columns:auto 1fr}.profile-strip .actions{grid-column:1/-1;margin-top:0}
}
@media(max-width:620px){
  :root{--gutter:16px}
  .desktop-cta{display:none}
  .hero{padding-top:52px}
  .hero-visual{min-height:430px}
  .app-window{inset:5%}.app-body{grid-template-columns:110px 1fr}.avatar-orb{width:92px;height:92px}
  .trust{grid-template-columns:1fr}.trust div{border-right:0;border-bottom:1px solid var(--line2)}
  .gallery{grid-template-columns:1fr;grid-auto-rows:260px}.gallery-item:first-child{grid-column:auto}
  .footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}
  .section-head{align-items:flex-start;flex-direction:column}
  h1{font-size:clamp(42px,14vw,68px)}
}
@media(min-width:1900px){
  .hero-grid{grid-template-columns:minmax(0,1fr) minmax(640px,.95fr)}
  .hero-visual{min-height:680px}
  .grid.auto{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}
  .gallery{grid-auto-rows:155px}
}
@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
