
@font-face { font-family:"Geist"; font-style:normal; font-weight:100 900; font-display:swap; src:url("../fonts/geist-8ac0455e797f/geist-98bbbccb.woff2") format("woff2"); }
@font-face { font-family:"Geist Mono"; font-style:normal; font-weight:100 900; font-display:swap; src:url("../fonts/geist-mono-00e989178794/geist-mono-013b2f2f.woff2") format("woff2"); }
:root { --font-geist-sans:"Geist",Arial,sans-serif; --font-geist-mono:"Geist Mono",monospace; }

:root { --ink:#160f12; --paper:#fff8f3; --cream:#f4e8df; --coral:#ff645c; --coral-dark:#d9413d; --pink:#ffaaa4; --muted:#74676c; --line:rgba(22,15,18,.14); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial, Helvetica, sans-serif; font-size:16px; line-height:1.65; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
h1,h2,h3,p { margin-top:0; }
h1,h2 { font-family:Georgia, "Times New Roman", serif; font-weight:500; letter-spacing:-.045em; line-height:.98; }
h1 { font-size:clamp(3.4rem, 8vw, 7.8rem); }
h2 { font-size:clamp(2.4rem, 5vw, 5rem); }
h3 { line-height:1.15; }
.skip-link { position:fixed; z-index:100; top:-100px; left:20px; background:white; padding:10px 16px; border-radius:10px; }
.skip-link:focus { top:12px; }
.site-header { height:78px; padding:0 clamp(20px,4vw,64px); display:flex; align-items:center; justify-content:space-between; gap:30px; border-bottom:1px solid var(--line); background:rgba(255,248,243,.94); backdrop-filter:blur(16px); position:sticky; top:0; z-index:30; }
.brand { display:flex; align-items:center; gap:10px; font-weight:800; letter-spacing:-.04em; font-size:1.12rem; }
.brand em { color:var(--coral-dark); font-style:normal; font-size:.72em; letter-spacing:.05em; }
.brand-mark { width:35px; height:35px; display:grid; place-items:center; border-radius:50%; background:var(--coral); color:var(--ink); font-family:Georgia,serif; font-size:1.25rem; }
.site-header nav { display:flex; gap:clamp(14px,2.2vw,32px); font-size:.86rem; font-weight:700; }
.site-header nav a:hover, .site-header nav a:focus-visible { color:var(--coral-dark); }
.button { display:inline-flex; justify-content:center; align-items:center; gap:12px; min-height:54px; padding:0 24px; border-radius:999px; background:var(--ink); color:white; font-weight:800; line-height:1; transition:transform .2s, background .2s; }
.button:hover { transform:translateY(-2px); background:var(--coral-dark); }
.button:focus-visible,.text-link:focus-visible,a:focus-visible,summary:focus-visible { outline:3px solid #8456d8; outline-offset:4px; }
.button-small { min-height:42px; padding:0 18px; font-size:.82rem; }
.button-light { background:white; color:var(--ink); }
.text-link { font-weight:800; border-bottom:1px solid currentColor; padding-bottom:3px; }
.eyebrow { margin-bottom:18px; text-transform:uppercase; letter-spacing:.16em; font-size:.72rem; font-weight:900; color:var(--coral-dark); }
.lede { font-size:clamp(1.08rem,1.5vw,1.35rem); color:#5e5257; max-width:720px; }
.section { padding:clamp(80px,10vw,150px) clamp(20px,5.5vw,90px); }
.site-header + main > .breadcrumbs { margin-top:20px; }
.breadcrumbs { display:flex; gap:10px; align-items:center; padding:12px clamp(20px,5.5vw,90px); color:var(--muted); font-size:.82rem; }
.home-hero { min-height:calc(100vh - 78px); display:grid; grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr); align-items:center; gap:7vw; padding:70px clamp(20px,5.5vw,90px); overflow:hidden; }
.hero-copy h1 { max-width:850px; margin-bottom:30px; }
.hero-copy h1 em { color:var(--coral-dark); font-style:italic; }
.hero-actions { margin-top:34px; display:flex; gap:25px; align-items:center; flex-wrap:wrap; }
.pulse { width:8px; height:8px; background:var(--coral); border-radius:50%; display:inline-block; margin-right:7px; box-shadow:0 0 0 6px rgba(255,100,92,.12); }
.trust-line { margin-top:35px; display:flex; gap:10px; flex-wrap:wrap; }
.trust-line span { padding:7px 12px; border:1px solid var(--line); border-radius:999px; color:var(--muted); font-size:.75rem; }
.hero-collage { position:relative; min-height:660px; border-radius:47% 47% 28px 28px; background:radial-gradient(circle at 50% 25%, #ffb0aa, #ff7168 45%, #46242c 100%); overflow:visible; }
.hero-main { position:absolute; inset:auto 7% 0; width:86%; height:95%; object-fit:cover; object-position:top; border-radius:45% 45% 25px 25px; filter:saturate(.9) contrast(1.03); }
.message-card { position:absolute; z-index:3; background:rgba(255,255,255,.94); box-shadow:0 20px 60px rgba(37,12,20,.22); border:1px solid rgba(255,255,255,.7); backdrop-filter:blur(12px); }
.message-one { left:-8%; top:22%; width:245px; padding:18px 20px; border-radius:18px 18px 18px 5px; }
.message-one b,.message-one span { display:block; }
.message-one b { color:var(--coral-dark); font-size:.78rem; margin-bottom:4px; }
.message-two { right:-5%; bottom:22%; padding:14px 18px; border-radius:16px 16px 5px 16px; display:flex; flex-direction:column; }
.message-two small { color:var(--muted); }
.typing { color:var(--coral); letter-spacing:.25em; font-size:1.2rem; }
.mini-portrait { position:absolute; z-index:4; width:130px; height:160px; right:-4%; top:8%; border:6px solid var(--paper); border-radius:20px; overflow:hidden; transform:rotate(5deg); box-shadow:0 15px 50px rgba(37,12,20,.28); }
.mini-portrait img { width:100%; height:100%; object-fit:cover; }
.mini-portrait span { position:absolute; bottom:0; inset-inline:0; background:rgba(22,15,18,.72); color:white; font-size:.7rem; text-align:center; padding:5px; }
.spark { position:absolute; color:var(--paper); font-size:2rem; z-index:5; }
.spark-one { left:5%; top:9%; }.spark-two { right:8%; top:38%; }
.intro-strip { background:var(--ink); color:white; padding:90px clamp(20px,9vw,150px); text-align:center; }
.intro-strip p { color:var(--pink); text-transform:uppercase; letter-spacing:.17em; font-weight:800; font-size:.75rem; }
.intro-strip h2 { max-width:1080px; margin:0 auto; }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:50px; margin-bottom:55px; }
.section-heading h2 { margin:0; }
.section-heading > p { max-width:520px; color:var(--muted); margin-bottom:8px; }
.character-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.character-card { position:relative; min-height:500px; overflow:hidden; border-radius:20px; background:#3e2c32; }
.character-card img { width:100%; height:100%; position:absolute; object-fit:cover; transition:transform .6s; }
.character-card:hover img { transform:scale(1.035); }
.character-overlay { position:absolute; inset:auto 0 0; padding:80px 22px 20px; color:white; background:linear-gradient(transparent,rgba(17,7,11,.9)); }
.character-overlay span { font-size:.66rem; text-transform:uppercase; letter-spacing:.12em; }
.character-overlay h3 { font-family:Georgia,serif; font-size:2rem; margin:4px 0; }
.character-overlay p { font-size:.82rem; margin:0; opacity:.82; }
.center { margin-top:35px; display:flex; justify-content:center; align-items:center; gap:15px; }
.feature-story { background:#f0dfd6; display:grid; grid-template-columns:.85fr 1.15fr; gap:8vw; }
.feature-sticky { align-self:start; position:sticky; top:120px; }
.feature-sticky h2 { margin-bottom:25px; }
.feature-sticky > p:not(.eyebrow) { color:var(--muted); max-width:520px; }
.feature-list article { padding:28px 0 38px; border-top:1px solid var(--line); display:grid; grid-template-columns:60px 1fr; column-gap:10px; }
.feature-list article span { color:var(--coral-dark); font-weight:900; }
.feature-list article h3 { font-size:1.5rem; margin:0 0 8px; }
.feature-list article p { grid-column:2; color:var(--muted); margin:0; }
.steps-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; }
.steps-grid ol { margin:0; padding:0; list-style:none; }
.steps-grid li { display:grid; grid-template-columns:64px 1fr; gap:20px; padding:25px 0; border-top:1px solid var(--line); }
.steps-grid li > span { width:44px; height:44px; display:grid; place-items:center; border-radius:50%; background:var(--coral); font-weight:800; }
.steps-grid h3 { margin-bottom:6px; }.steps-grid li p { color:var(--muted); margin:0; }
.faq { background:white; display:grid; grid-template-columns:.65fr 1.35fr; gap:8vw; }
.faq-list details { padding:23px 0; border-top:1px solid var(--line); }
.faq-list summary { cursor:pointer; font-weight:800; font-size:1.08rem; list-style:none; display:flex; justify-content:space-between; }
.faq-list summary:after { content:"+"; color:var(--coral-dark); font-size:1.4rem; }.faq-list details[open] summary:after { content:"−"; }
.faq-list details p { color:var(--muted); max-width:780px; margin:15px 0 0; }
.cta { margin:0 clamp(20px,5.5vw,90px) 90px; padding:clamp(45px,7vw,90px); border-radius:30px; background:var(--coral); display:flex; align-items:end; justify-content:space-between; gap:40px; position:relative; overflow:hidden; }
.cta:after { content:"✦"; position:absolute; right:8%; top:-40px; font-size:12rem; color:rgba(255,255,255,.18); }
.cta h2 { max-width:800px; margin-bottom:15px; position:relative; z-index:1; }.cta p { max-width:620px; }.cta .eyebrow { color:#5a1918; }.cta .button { position:relative; z-index:2; flex:none; }
.page-hero { min-height:560px; padding:72px clamp(20px,7vw,120px); display:grid; grid-template-columns:1.2fr .8fr; gap:5vw; align-items:center; border-bottom:1px solid var(--line); overflow:hidden; }
.page-hero h1 { font-size:clamp(2.8rem,5.2vw,5.2rem); max-width:900px; margin-bottom:26px; }.page-hero .hero-actions { margin-top:28px; }
.hero-orbit { justify-self:center; width:min(28vw,340px); aspect-ratio:1; border:1px solid rgba(217,65,61,.4); border-radius:50%; display:grid; place-items:center; position:relative; }
.hero-orbit:before,.hero-orbit:after { content:""; position:absolute; inset:13%; border:1px solid rgba(217,65,61,.25); border-radius:46% 54% 51% 49%; transform:rotate(35deg); }.hero-orbit:after { inset:-17%; transform:rotate(-18deg); }
.hero-orbit span { padding:14px 22px; border-radius:999px; background:var(--coral); font-family:Georgia,serif; font-style:italic; font-size:1.2rem; transform:rotate(-7deg); }.hero-orbit i { position:absolute; right:8%; top:8%; font-size:2rem; color:var(--coral-dark); }
.prompt-chip { margin-top:30px; max-width:620px; padding:18px 22px; border:1px solid var(--line); border-radius:14px; background:white; font-family:Georgia,serif; font-size:1.1rem; }
.answer-card { margin:60px auto 0; width:min(920px,calc(100% - 40px)); padding:28px 34px; background:var(--ink); color:white; border-radius:18px; }.answer-card strong { color:var(--pink); text-transform:uppercase; letter-spacing:.12em; font-size:.75rem; }.answer-card p { margin:8px 0 0; }.answer-card .text-link { display:inline-block; margin-top:12px; }
.content-split { display:grid; grid-template-columns:1fr 1fr; gap:9vw; align-items:start; }.content-split p:not(.eyebrow) { color:var(--muted); }.content-split h2 { margin-bottom:25px; }
.number-stack article { border-top:1px solid var(--line); padding:22px 0; display:grid; grid-template-columns:50px 1fr; }.number-stack b { color:var(--coral-dark); }.number-stack h3 { margin:0; }.number-stack p { grid-column:2; margin:5px 0 0; }
.comparison { background:white; }.comparison > div:first-child { max-width:760px; }.table-wrap { overflow-x:auto; }.comparison table { width:100%; border-collapse:collapse; margin-top:35px; }.comparison th,.comparison td { text-align:left; padding:18px 16px; border-bottom:1px solid var(--line); min-width:180px; }.comparison th { background:var(--ink); color:white; font-size:.75rem; letter-spacing:.08em; text-transform:uppercase; }.comparison td:first-child { font-weight:800; color:var(--coral-dark); }
.cards { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }.cards article { min-height:260px; padding:30px; border:1px solid var(--line); border-radius:18px; background:#fffdfa; }.cards article span { color:var(--coral-dark); font-size:1.8rem; }.cards article h3,.cards article b { font-size:1.25rem; display:block; margin:12px 0; }.cards article p { color:var(--muted); }
.chat-demo { display:grid; grid-template-columns:1fr 1fr; gap:8vw; align-items:center; background:#f0dfd6; }.chat-window { background:#fffdfa; border:1px solid var(--line); border-radius:22px; padding:20px; box-shadow:0 30px 80px rgba(48,20,29,.12); }.chat-top { display:flex; gap:12px; align-items:center; padding-bottom:18px; border-bottom:1px solid var(--line); }.chat-top div { display:flex; flex-direction:column; }.chat-top small { color:var(--muted); }.avatar-dot { width:42px; height:42px; display:grid; place-items:center; background:var(--coral); border-radius:50%; font-family:Georgia,serif; }.bubble { max-width:80%; margin-top:16px; padding:12px 15px; border-radius:15px; }.theirs { background:#f4e8df; border-bottom-left-radius:3px; }.yours { background:var(--ink); color:white; margin-left:auto; border-bottom-right-radius:3px; }.chat-note { margin-top:20px; text-align:center; color:var(--muted); font-size:.68rem; text-transform:uppercase; letter-spacing:.1em; }
.starter-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; }.starter-grid article { padding:26px; border:1px solid var(--line); border-radius:16px; }.starter-grid span { color:var(--coral-dark); text-transform:uppercase; letter-spacing:.12em; font-size:.7rem; font-weight:900; }.starter-grid p { font-family:Georgia,serif; font-size:1.2rem; margin:10px 0 0; }
.boundary-card,.quote-card { background:var(--ink); color:white; border-radius:22px; padding:40px; }.boundary-card li { margin:12px 0; color:#e8dcd8; }.quote-card span { color:var(--coral); font-size:3rem; }.quote-card blockquote { font-family:Georgia,serif; font-size:clamp(1.5rem,3vw,2.5rem); line-height:1.2; margin:20px 0; }
.principles { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); padding-block:1px; }.principles article { background:var(--paper); padding:35px; }.principles span { color:var(--coral-dark); font-weight:900; }.principles h3 { margin:40px 0 10px; font-size:1.35rem; }.principles p { color:var(--muted); }
.experience-list { display:grid; grid-template-columns:.75fr 1.25fr; gap:8vw; }.experience-list ol { padding:0; margin:0; list-style:none; }.experience-list li { display:grid; gap:5px; padding:22px 0; border-top:1px solid var(--line); }.experience-list li span { color:var(--muted); }
.contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:8vw; }.contact-main { background:var(--coral); padding:45px; border-radius:24px; }.contact-main .eyebrow { color:#5a1918; }.contact-main h2 { font-size:clamp(1.7rem,3vw,3rem); word-break:break-word; }.contact-main .fine { margin-top:25px; font-size:.82rem; }.contact-options article { display:grid; grid-template-columns:50px 1fr; gap:15px; padding:23px 0; border-top:1px solid var(--line); }.contact-options span { color:var(--coral-dark); font-weight:900; }.contact-options p { color:var(--muted); }
.legal-hero { padding:100px clamp(20px,12vw,210px) 70px; border-bottom:1px solid var(--line); }.legal-hero h1 { margin-bottom:25px; }.legal-hero > span { display:block; margin-top:25px; color:var(--muted); font-size:.82rem; }.legal-copy { width:min(850px,calc(100% - 40px)); margin:70px auto 120px; }.legal-copy h2 { font-family:Arial,sans-serif; letter-spacing:-.02em; font-size:1.5rem; line-height:1.2; margin:45px 0 12px; }.legal-copy p { color:#5e5257; }.legal-copy a { color:var(--coral-dark); text-decoration:underline; }
.site-footer { background:var(--ink); color:white; padding:85px clamp(20px,5.5vw,90px) 30px; }.footer-lead { display:grid; grid-template-columns:.35fr .65fr; gap:4vw; align-items:start; border-bottom:1px solid rgba(255,255,255,.16); padding-bottom:65px; }.footer-lead h2 { max-width:820px; }.footer-lead > p:last-child { color:#bcaeb3; max-width:400px; grid-column:2; }.footer-links { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; padding:55px 0; }.footer-links div { display:flex; flex-direction:column; gap:8px; }.footer-links strong { color:var(--pink); margin-bottom:8px; }.footer-links a { color:#cdbfc4; }.footer-bottom { border-top:1px solid rgba(255,255,255,.16); padding-top:25px; display:flex; justify-content:space-between; gap:20px; color:#9e9095; font-size:.75rem; }

@media (max-width:1000px) { .site-header nav { display:none; }.home-hero { grid-template-columns:1fr; padding-top:50px; }.hero-collage { min-height:570px; width:min(620px,92%); margin:auto; }.character-grid { grid-template-columns:1fr 1fr; }.feature-story,.steps-grid,.faq,.content-split,.chat-demo,.experience-list,.contact-grid { grid-template-columns:1fr; }.feature-sticky { position:static; }.page-hero { grid-template-columns:1fr; }.hero-orbit { width:250px; margin:30px 0; }.principles { grid-template-columns:1fr 1fr; }.cards { grid-template-columns:1fr; }.footer-lead { grid-template-columns:1fr; }.footer-lead > p:last-child { grid-column:auto; }.section-heading { align-items:start; flex-direction:column; } }
@media (max-width:620px) { .site-header { height:68px; }.button-small { display:none; }.brand { font-size:1rem; }.home-hero { min-height:auto; }.hero-collage { min-height:440px; width:100%; margin-top:15px; }.message-one { left:-3%; width:210px; top:18%; }.message-two { right:-3%; bottom:15%; }.mini-portrait { right:0; width:98px; height:124px; }.character-grid,.starter-grid,.principles,.footer-links { grid-template-columns:1fr; }.character-card { min-height:520px; }.section { padding-block:75px; }.page-hero { padding-block:55px; min-height:auto; }.hero-orbit { display:none; }.cta { align-items:start; flex-direction:column; }.footer-bottom { flex-direction:column; }.center { flex-wrap:wrap; }.contact-main { padding:30px; }.legal-hero { padding-block:65px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; } }

/* Candy.ai-inspired application layout */
:root { --app-bg:#0c0b10; --app-panel:#141218; --app-card:#1b1820; --app-soft:#24202b; --app-line:rgba(255,255,255,.09); --app-text:#f7f4f8; --app-muted:#9d96a4; --app-accent:#ff4d79; --app-purple:#8c5cff; }
body { background:var(--app-bg); color:var(--app-text); padding-left:238px; font-family:var(--font-geist-sans),Arial,sans-serif; }
h1,h2 { font-family:var(--font-geist-sans),Arial,sans-serif; font-weight:750; letter-spacing:-.045em; }
.app-main { min-width:0; }
.site-header { position:fixed; inset:0 auto 0 0; width:238px; height:100vh; padding:24px 18px 18px; display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start; gap:25px; border:0; border-right:1px solid var(--app-line); background:#111015; backdrop-filter:none; z-index:40; }
.brand { color:white; padding:0 8px; font-size:1.38rem; letter-spacing:-.06em; }.brand-mark { width:38px; height:38px; background:linear-gradient(145deg,var(--app-accent),#ff7b56); color:white; font-weight:900; }.brand-dot { color:var(--app-accent); }.brand em { color:#ada4b4; border:1px solid var(--app-line); border-radius:5px; padding:2px 4px; margin-left:4px; }
.site-header nav { display:flex; flex-direction:column; gap:5px; font-size:.88rem; }.site-header nav .nav-label { color:#69636f; font-size:.65rem; text-transform:uppercase; letter-spacing:.14em; padding:0 13px 8px; }.site-header nav a { display:flex; gap:13px; align-items:center; min-height:42px; padding:0 13px; border-radius:10px; color:#aaa4b0; font-weight:650; transition:background .2s ease,color .2s ease,transform .2s ease; }.site-header nav a.active,.site-header nav a:hover { color:white; background:var(--app-soft); }.site-header nav a.active { box-shadow:inset 0 0 0 1px rgba(174,124,255,.13); }.site-header nav a:hover { transform:translateX(2px); }.site-header nav a:focus-visible { outline:2px solid #9d6cff; outline-offset:1px; }.nav-text-mobile { display:none; }
.site-header .nav-icon { width:20px; height:20px; color:#8f8897; position:relative; display:block; flex:none; transition:color .2s ease; }.site-header nav a.active .nav-icon,.site-header nav a:hover .nav-icon { color:#c8a9ff; }
.nav-icon-home:before { content:""; position:absolute; width:11px; height:10px; left:4px; top:7px; border:1.7px solid currentColor; border-top:0; border-radius:2px; }.nav-icon-home:after { content:""; position:absolute; width:9px; height:9px; left:5px; top:3px; border-left:1.7px solid currentColor; border-top:1.7px solid currentColor; transform:rotate(45deg); border-radius:2px 0 0; }
.nav-icon-discover { border:1.7px solid currentColor; border-radius:50%; }.nav-icon-discover:before { content:""; position:absolute; width:5px; height:5px; left:6px; top:6px; border:1.5px solid currentColor; transform:rotate(45deg); }.nav-icon-discover:after { content:""; position:absolute; width:2px; height:2px; left:8px; top:8px; border-radius:50%; background:currentColor; }
.nav-icon-chat:before { content:""; position:absolute; inset:3px 2px 5px; border:1.7px solid currentColor; border-radius:6px; }.nav-icon-chat:after { content:""; position:absolute; width:5px; height:5px; left:5px; bottom:3px; border-left:1.7px solid currentColor; transform:skew(-28deg); }
.nav-icon-collection { border:1.7px solid currentColor; border-radius:4px; background:linear-gradient(currentColor 0 0) 4px 4px/4px 4px no-repeat,linear-gradient(currentColor 0 0) 11px 4px/4px 4px no-repeat,linear-gradient(currentColor 0 0) 4px 11px/4px 4px no-repeat,linear-gradient(currentColor 0 0) 11px 11px/4px 4px no-repeat; }
.nav-icon-generate:before,.nav-icon-generate:after { content:""; position:absolute; left:9px; top:2px; width:2px; height:16px; border-radius:2px; background:currentColor; }.nav-icon-generate:after { transform:rotate(90deg); }.nav-icon-generate { transform:rotate(45deg) scale(.85); }.nav-icon-generate:before { box-shadow:6px 6px 0 -1px currentColor,-6px -6px 0 -1px currentColor; }
.nav-icon-create { border:1.7px solid currentColor; border-radius:5px; }.nav-icon-create:before,.nav-icon-create:after { content:""; position:absolute; left:5px; top:8px; width:8px; height:1.7px; border-radius:2px; background:currentColor; }.nav-icon-create:after { transform:rotate(90deg); }
.nav-icon-heart { transform:rotate(-45deg) scale(.72); border-left:2px solid currentColor; border-bottom:2px solid currentColor; border-radius:0 0 0 4px; }.nav-icon-heart:before,.nav-icon-heart:after { content:""; position:absolute; border:2px solid currentColor; }.nav-icon-heart:before { width:11px; height:17px; left:-2px; top:-9px; border-left:0; border-radius:0 10px 10px 0; }.nav-icon-heart:after { width:17px; height:11px; left:0; top:-2px; border-bottom:0; border-radius:10px 10px 0 0; }
.premium-card { display:flex; flex-direction:column; gap:3px; margin-top:auto; padding:16px; border-radius:14px; background:linear-gradient(145deg,#33214b,#21172f); border:1px solid rgba(167,105,255,.28); }.premium-card small { color:#bba6d2; }.premium-card strong { font-size:1rem; }.premium-card strong b { color:#ffcf56; font-size:.72rem; }.premium-card > span { color:#d9cbef; font-size:.73rem; margin-top:5px; }.side-utils { display:grid; grid-template-columns:1fr 1fr; gap:7px; padding:0 6px; font-size:.7rem; color:#77717c; }.side-utils span { grid-column:1/-1; }
.top-bar { min-height:74px; display:flex; align-items:center; justify-content:space-between; padding:0 28px; border-bottom:1px solid var(--app-line); background:rgba(12,11,16,.92); backdrop-filter:blur(15px); position:sticky; top:0; z-index:30; }.category-tabs { display:flex; gap:8px; }.category-tabs a { padding:8px 17px; border-radius:9px; color:#a49eaa; font-size:.82rem; font-weight:700; transition:color .2s ease,background .2s ease,transform .2s ease; }.category-tabs a.active { color:white; background:var(--app-soft); box-shadow:inset 0 0 0 1px rgba(255,255,255,.04); }.category-tabs a:hover { color:white; transform:translateY(-1px); }.account-actions { display:flex; gap:16px; align-items:center; font-size:.82rem; font-weight:700; }.account-actions .button { background:white; color:#151218; }.account-actions .button:hover { background:#f0eaf2; }
.app-main > main { animation:page-in .28s ease both; }
@keyframes page-in { from { opacity:.72; transform:translateY(7px); } to { opacity:1; transform:none; } }
.discover-shell { padding:24px 28px 85px; max-width:1500px; margin:auto; }.promo-banner { height:420px; overflow:hidden; position:relative; display:flex; align-items:center; border-radius:20px; background:radial-gradient(circle at 76% 25%,rgba(255,255,255,.28),transparent 25%),linear-gradient(115deg,#551f50 0%,#a13578 44%,#f0677c 100%); }.promo-banner:before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(20,5,22,.54),transparent 60%); }.promo-copy { position:relative; z-index:4; width:55%; padding:36px 48px; }.promo-copy h1 { font-size:clamp(2.3rem,3.7vw,4.2rem); line-height:.92; margin:13px 0 15px; max-width:680px; }.promo-copy h1 em { color:#ffd1dc; font-style:normal; }.promo-copy p { color:#f7dce6; max-width:530px; line-height:1.45; margin-bottom:12px; }.promo-pill { display:inline-flex; padding:7px 12px; background:rgba(19,10,22,.28); border:1px solid rgba(255,255,255,.18); border-radius:99px; font-size:.68rem; text-transform:uppercase; letter-spacing:.1em; }.promo-button { background:white; color:#26121f; margin-top:6px; }.promo-people { position:absolute; z-index:2; inset:0 2% 0 49%; }.promo-person { position:absolute; bottom:-14%; width:44%; height:105%; object-fit:cover; object-position:top; filter:saturate(.9) contrast(1.03); border-radius:45% 45% 0 0; box-shadow:0 25px 55px rgba(16,5,14,.35); }.p-one { left:0; transform:rotate(-5deg) scale(.88); z-index:1; }.p-two { left:27%; z-index:3; }.p-three { right:-2%; transform:rotate(5deg) scale(.9); z-index:2; }.sale-badge { position:absolute; z-index:5; right:22px; top:22px; width:82px; aspect-ratio:1; border-radius:50%; background:#ffcf56; color:#2c1728; display:grid; place-content:center; text-align:center; transform:rotate(8deg); box-shadow:0 12px 30px rgba(43,12,30,.25); }.sale-badge b { font-size:1.3rem; line-height:1; }.sale-badge span { font-size:.62rem; text-transform:uppercase; }
.live-row { padding:36px 0 28px; }.discover-heading { display:flex; align-items:end; justify-content:space-between; margin-bottom:20px; }.discover-heading h2,.explore-bar h2 { font-size:1.65rem; margin:0; letter-spacing:-.03em; }.discover-heading p { margin:3px 0 0; color:var(--app-muted); font-size:.8rem; }.discover-heading > a { color:#c5bcc9; font-size:.78rem; }.story-list { display:flex; gap:clamp(18px,2.8vw,42px); overflow-x:auto; scrollbar-width:none; }.story-list a { flex:0 0 76px; display:flex; flex-direction:column; align-items:center; gap:2px; text-align:center; }.story-list a > span { width:72px; height:72px; border-radius:50%; padding:3px; margin-bottom:6px; background:linear-gradient(135deg,#ff4d79,#9d5dff); }.story-list img { width:100%; height:100%; border-radius:50%; object-fit:cover; border:3px solid var(--app-bg); }.story-list b { font-size:.75rem; }.story-list small { color:#55d89a; font-size:.62rem; }
.explore-bar { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:12px 0 20px; }.filter-chips { display:flex; gap:7px; }.filter-chips a { border:1px solid var(--app-line); background:var(--app-card); color:#a9a2ae; border-radius:9px; padding:8px 14px; font-size:.72rem; cursor:pointer; white-space:nowrap; transition:background .2s ease,color .2s ease; }.filter-chips a.active,.filter-chips a:hover { background:white; color:#18141b; }.discover-shell .character-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }.discover-shell .character-card { min-height:420px; border-radius:13px; background:var(--app-card); }.discover-shell .character-overlay { padding:80px 16px 15px; }.discover-shell .character-overlay h3 { font-family:inherit; font-size:1.15rem; letter-spacing:-.02em; }.discover-shell .character-overlay span { color:#ddd4e1; }.discover-shell .character-overlay p { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }.browse-more { display:flex; justify-content:center; padding-top:30px; }.browse-more .button { background:var(--app-soft); border:1px solid var(--app-line); }
.intro-strip { background:#15121a; border-block:1px solid var(--app-line); padding:80px clamp(25px,8vw,120px); }.intro-strip p { color:var(--app-accent); }.intro-strip h2 { max-width:950px; font-size:clamp(2.3rem,4vw,4.6rem); }
.section { padding-inline:clamp(24px,5vw,76px); }.feature-story { background:#100e14; }.feature-sticky > p:not(.eyebrow),.feature-list article p,.steps-grid li p,.faq-list details p,.section-heading > p,.content-split p:not(.eyebrow),.number-stack p,.cards article p,.legal-copy p,.contact-options p { color:var(--app-muted); }.feature-list article,.steps-grid li,.faq-list details,.number-stack article,.contact-options article { border-color:var(--app-line); }.steps-grid { background:#17141c; }.faq { background:#0c0b10; }.faq-list summary { color:white; }.cta { background:linear-gradient(115deg,#7a2d69,#ee5e7a); }.site-footer { margin:0; background:#08070a; border-top:1px solid var(--app-line); }.footer-lead,.footer-bottom { border-color:var(--app-line); }
.breadcrumbs { color:#7f7885; }.page-hero { background:radial-gradient(circle at 80% 20%,rgba(159,65,129,.22),transparent 35%),#0c0b10; border-color:var(--app-line); }.hero-orbit { border-color:rgba(255,77,121,.45); }.hero-orbit span { background:var(--app-accent); }.answer-card { background:var(--app-card); border:1px solid var(--app-line); }.comparison { background:#121016; }.comparison th { background:#25212b; }.comparison th,.comparison td { border-color:var(--app-line); }.cards article,.starter-grid article { background:var(--app-card); border-color:var(--app-line); }.chat-demo { background:#15121a; }.chat-window { background:#211d25; border-color:var(--app-line); }.chat-top,.theirs { border-color:var(--app-line); }.theirs { background:#302a35; }.boundary-card,.quote-card { background:#201b25; border:1px solid var(--app-line); }.principles { background:var(--app-line); }.principles article { background:#121016; }.contact-main { background:linear-gradient(145deg,#8f315f,#ed5b72); }.legal-hero,.legal-copy { border-color:var(--app-line); }.legal-copy a { color:#ff7d9e; }

.dating-hero { --hero-accent:#ff5d83; --hero-soft:#ffc1d0; min-height:610px; padding:58px clamp(28px,5.8vw,94px); display:grid; grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr); gap:clamp(34px,5vw,82px); align-items:center; overflow:hidden; position:relative; isolation:isolate; border-bottom:1px solid var(--app-line); background:radial-gradient(circle at 78% 14%,rgba(255,93,131,.14),transparent 31%),#0c0b10; }
.dating-hero:before { content:""; position:absolute; z-index:-1; width:430px; aspect-ratio:1; right:2%; top:5%; border-radius:50%; background:var(--hero-accent); filter:blur(130px); opacity:.1; }
.dating-hero-copy { position:relative; z-index:3; max-width:760px; }.dating-hero-copy .eyebrow { color:var(--hero-accent); margin-bottom:16px; }.dating-hero-copy h1 { font-size:clamp(2.75rem,4.7vw,4.9rem); line-height:.98; letter-spacing:-.055em; margin:0 0 24px; text-wrap:balance; }.dating-hero-copy h1 em { display:block; color:var(--hero-soft); font-style:normal; }.dating-hero-copy .lede { max-width:650px; color:#b8afbc; font-size:clamp(1rem,1.25vw,1.16rem); line-height:1.6; }
.dating-hero-notes { display:flex; flex-wrap:wrap; gap:8px; margin:25px 0 28px; }.dating-hero-notes span { padding:7px 11px; border:1px solid var(--app-line); border-radius:999px; color:#c8c0cb; font-size:.68rem; font-weight:700; letter-spacing:.02em; background:rgba(255,255,255,.025); }.dating-hero-button { min-height:52px; padding-inline:25px; background:linear-gradient(110deg,var(--hero-accent),#b34cff); box-shadow:0 14px 38px color-mix(in srgb,var(--hero-accent) 24%,transparent); }.dating-hero-button:hover { background:linear-gradient(110deg,var(--hero-accent),#7d3bdf); }
.dating-hero-visual { justify-self:end; width:min(100%,570px); height:500px; position:relative; }.dating-hero-visual:before,.dating-hero-visual:after { content:""; position:absolute; border:1px solid color-mix(in srgb,var(--hero-accent) 36%,transparent); border-radius:50%; }.dating-hero-visual:before { width:360px; height:360px; right:-55px; top:-28px; }.dating-hero-visual:after { width:250px; height:250px; left:-8px; bottom:-38px; opacity:.45; }
.dating-portrait { position:absolute; inset:0 12px 0 auto; width:72%; overflow:hidden; border-radius:46% 46% 26px 26px; border:1px solid rgba(255,255,255,.13); background:#21141d; box-shadow:0 35px 80px rgba(0,0,0,.45); }.dating-portrait:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 50%,rgba(8,6,10,.86)); pointer-events:none; }.dating-portrait img { width:100%; height:100%; object-fit:cover; object-position:center 18%; transition:transform .7s ease; }.dating-hero:hover .dating-portrait img { transform:scale(1.025); }.dating-portrait-meta { position:absolute; z-index:2; inset:auto 20px 18px; display:flex; gap:10px; align-items:center; }.dating-portrait-meta div { display:flex; flex-direction:column; }.dating-portrait-meta b { font-size:.92rem; }.dating-portrait-meta small { color:#c6bdc9; font-size:.67rem; }.status-dot { width:9px; height:9px; border-radius:50%; flex:none; background:#52de98; box-shadow:0 0 0 5px rgba(82,222,152,.12); }
.dating-message { position:absolute; z-index:5; left:0; bottom:58px; width:min(270px,54%); padding:17px 18px; border:1px solid rgba(255,255,255,.13); border-radius:18px 18px 18px 5px; background:rgba(27,22,31,.9); backdrop-filter:blur(16px); box-shadow:0 18px 50px rgba(0,0,0,.3); }.dating-message > span { color:var(--hero-accent); }.dating-message p { font-family:Georgia,serif; font-size:1.02rem; line-height:1.35; margin:6px 0 7px; }.dating-message small { color:#8f8794; font-size:.63rem; text-transform:uppercase; letter-spacing:.11em; }
.dating-private { position:absolute; z-index:5; left:5%; top:34px; width:90px; aspect-ratio:1; display:grid; place-content:center; text-align:center; border-radius:50%; color:#25131d; background:var(--hero-soft); font-size:.64rem; line-height:1.25; text-transform:uppercase; letter-spacing:.06em; transform:rotate(-8deg); box-shadow:0 14px 35px rgba(0,0,0,.25); }.dating-private b { font-size:.72rem; }
.dating-hero-anime { --hero-accent:#58dfff; --hero-soft:#c699ff; background:radial-gradient(circle at 78% 18%,rgba(58,203,255,.14),transparent 30%),linear-gradient(125deg,#0a0a10 20%,#101225 100%); }.dating-hero-anime .dating-hero-button { background:linear-gradient(110deg,#249dc5,#9658ff); }.dating-hero-anime .dating-portrait { background:#101629; }.dating-hero-guys { --hero-accent:#ff784f; --hero-soft:#71dcff; background:radial-gradient(circle at 82% 18%,rgba(38,183,255,.14),transparent 30%),linear-gradient(125deg,#0a0b10 25%,#131119 100%); }.dating-hero-guys .dating-portrait img { object-position:center center; }

@media (max-width:1100px) { body { padding-left:82px; }.site-header { width:82px; padding:20px 12px; }.brand > span:last-child,.nav-label { display:none; }.site-header nav a { justify-content:center; padding:0; }.site-header nav a .nav-text,.site-header nav a .nav-text-mobile { display:none; }.premium-card,.side-utils { display:none; }.brand { padding:0; justify-content:center; }.promo-copy { width:58%; padding:35px; }.promo-people { left:40%; }.discover-shell .character-grid { grid-template-columns:repeat(3,1fr); }.dating-hero { grid-template-columns:minmax(0,1fr) minmax(330px,.8fr); padding-inline:42px; gap:30px; }.dating-hero-copy h1 { font-size:clamp(2.65rem,5.4vw,4.15rem); }.dating-hero-visual { height:450px; } }
@media (max-width:760px) { body { padding-left:0; padding-bottom:78px; }.site-header { inset:auto 0 0; width:100%; height:78px; padding:6px 8px; flex-direction:row; border:0; border-top:1px solid var(--app-line); box-shadow:0 -12px 35px rgba(0,0,0,.28); }.site-header .brand,.site-header nav .nav-label,.premium-card,.side-utils { display:none; }.site-header nav { width:100%; height:100%; flex-direction:row; justify-content:space-around; gap:3px; }.site-header nav a { width:20%; min-width:0; min-height:64px; padding:7px 3px 5px; justify-content:center; flex-direction:column; gap:5px; border-radius:12px; font-size:.61rem; line-height:1; letter-spacing:.01em; }.site-header nav a .nav-text { display:block; }.site-header nav a .nav-text-mobile { display:none; }.site-header nav a:has(.nav-text-mobile) .nav-text { display:none; }.site-header nav a .nav-text-mobile { display:block; }.site-header nav a.active { background:linear-gradient(180deg,rgba(143,89,220,.24),rgba(92,56,130,.18)); box-shadow:inset 0 0 0 1px rgba(180,131,255,.24); }.site-header nav a:hover { transform:none; }.site-header .nav-icon { width:21px; height:21px; }.site-header nav a:nth-of-type(n+6) { display:none; }.top-bar { min-height:60px; padding:0 15px; }.category-tabs a { padding:7px 10px; }.account-actions > a:first-child { display:none; }.account-actions .button { display:flex; min-height:36px; padding:0 12px; }.discover-shell { padding:15px 14px 60px; }.promo-banner { height:560px; align-items:flex-start; }.promo-copy { width:100%; padding:24px; z-index:6; }.promo-copy h1 { font-size:2.55rem; }.promo-copy p { max-width:335px; font-size:.9rem; }.promo-people { inset:53% -5% -10% 3%; }.promo-person { height:76%; }.sale-badge { width:65px; }.story-list { gap:18px; }.discover-shell .character-grid { grid-template-columns:1fr 1fr; }.discover-shell .character-card { min-height:360px; }.explore-bar { align-items:flex-start; flex-direction:column; }.filter-chips { width:100%; overflow-x:auto; }.site-footer { padding-bottom:100px; }.dating-hero { grid-template-columns:1fr; padding:48px 20px 60px; gap:42px; }.dating-hero-copy h1 { font-size:clamp(2.55rem,11vw,4rem); }.dating-hero-copy .lede { font-size:.98rem; }.dating-hero-visual { justify-self:center; width:min(100%,520px); height:460px; }.dating-private { left:1%; }.dating-message { left:0; } }
@media (max-width:460px) { .dating-hero-visual { height:400px; }.dating-portrait { width:78%; right:0; }.dating-message { width:62%; bottom:34px; padding:13px 14px; }.dating-message p { font-size:.9rem; }.dating-private { width:72px; top:20px; }.dating-hero-notes span:nth-child(2) { display:none; } }

body:has(.redirect-page) { padding:0; background:#08060b; }
.redirect-page { min-height:100svh; display:grid; place-items:center; overflow:hidden; position:relative; isolation:isolate; background:radial-gradient(circle at 50% 45%,#32162f 0%,#130c17 42%,#070609 75%); color:white; text-align:center; padding:30px; }
.redirect-glow { position:absolute; width:46vw; aspect-ratio:1; border-radius:50%; filter:blur(90px); opacity:.22; z-index:-1; animation:glow-drift 4s ease-in-out infinite alternate; }.glow-one { left:-14%; top:-25%; background:#ff3974; }.glow-two { right:-18%; bottom:-30%; background:#8c5cff; animation-delay:-2s; }
.desire-orbit { width:150px; aspect-ratio:1; border:1px solid rgba(255,255,255,.15); border-radius:50%; display:grid; place-items:center; position:absolute; top:18%; left:50%; transform:translate(-50%,-50%); animation:orbit-pulse 1.4s ease-in-out infinite; }.desire-orbit:before,.desire-orbit:after { content:""; position:absolute; inset:16px; border:1px solid rgba(255,77,121,.34); border-radius:43% 57% 58% 42%; animation:orbit-spin 5s linear infinite; }.desire-orbit:after { inset:-16px; animation-direction:reverse; animation-duration:8s; }.desire-orbit span { width:66px; aspect-ratio:1; border-radius:50%; display:grid; place-items:center; background:linear-gradient(145deg,#ff3d73,#b94cff); box-shadow:0 0 55px rgba(255,61,115,.5); font-size:1.55rem; }.desire-orbit i,.desire-orbit b { position:absolute; width:7px; height:7px; border-radius:50%; background:#ff8aaa; }.desire-orbit i { left:4px; top:55%; }.desire-orbit b { right:16px; top:12px; }
.redirect-copy { margin-top:150px; width:min(690px,100%); }.redirect-copy p { color:#ff789d; font-size:.7rem; letter-spacing:.22em; font-weight:850; }.redirect-copy h1 { font-size:clamp(2.7rem,6vw,5.7rem); line-height:.95; margin:18px 0 40px; background:linear-gradient(180deg,#fff,#cfbccf); -webkit-background-clip:text; color:transparent; }.redirect-progress { width:min(360px,80vw); height:4px; background:rgba(255,255,255,.1); border-radius:10px; margin:0 auto 15px; overflow:hidden; }.redirect-progress span { display:block; height:100%; background:linear-gradient(90deg,#ff3d73,#b94cff); animation:redirect-load 1.25s cubic-bezier(.65,0,.35,1) forwards; }.redirect-copy small { color:#93899a; }.redirect-copy noscript a { display:block; color:#ff8aaa; margin-top:20px; }
@keyframes redirect-load { from { width:0; } to { width:100%; } } @keyframes orbit-spin { to { transform:rotate(360deg); } } @keyframes orbit-pulse { 50% { scale:1.06; } } @keyframes glow-drift { to { transform:translate(8%,10%) scale(1.15); } }
.affiliate-disclosure { max-width:780px; margin:0 0 24px; color:#8f8792; font-size:.72rem; line-height:1.6; }
