:root{--navy:#15253b;--ink:#1e293b;--muted:#6d7785;--orange:#e41473;--line:#e6eaf0;--pale:#f6f8fb}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:15px/1.6 system-ui,-apple-system,Segoe UI,sans-serif}a{text-decoration:none;color:inherit}button,select{font:inherit}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.notice{background:#101d2f;color:#d5dce5;text-align:center;padding:7px;font-size:12px}.header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.nav{display:flex;align-items:center;justify-content:space-between;min-height:82px;gap:22px}.logo{font-size:25px;font-weight:850;line-height:1;color:var(--navy);letter-spacing:-1px}.logo span{color:var(--orange)}.logo small{display:block;font-size:9px;letter-spacing:2.4px;color:#8a94a2;margin-top:7px}.nav nav,.actions{display:flex;align-items:center;gap:26px}.nav nav a,.login{font-weight:600;font-size:13px}.btn{border:0;background:var(--orange);color:#fff;padding:15px 24px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;font-weight:750;cursor:pointer}.btn:hover{background:#bd0e5c}.btn.small{padding:11px 18px;font-size:13px}.hero{background:radial-gradient(circle at 85% 30%,#793052 0,transparent 40%),linear-gradient(120deg,#301629,#51203c);color:white;padding:84px 0 78px}.eyebrow{color:#ffb5d4;font-weight:800;letter-spacing:2px;font-size:11px}.hero h1{font-size:clamp(39px,5.4vw,70px);line-height:1.12;letter-spacing:-2px;margin:18px 0}.hero h1 em{font-style:normal;color:#ff8cbd}.hero p{color:#c7d2df;max-width:550px;font-size:16px}.search{background:white;border-radius:13px;padding:10px;display:flex;max-width:880px;gap:8px;margin-top:34px;box-shadow:0 14px 35px #0a162433}.search label{flex:1;display:flex;flex-direction:column;padding:6px 14px;min-width:0}.search label span{font-size:11px;color:#8290a0;font-weight:800;text-transform:uppercase}.search select{width:100%;border:0;background:transparent;outline:0;padding:5px 0;color:#27384c}.search .btn{min-width:190px}.hero-foot{display:flex;gap:24px;flex-wrap:wrap;margin-top:23px;color:#d7e0e8;font-size:12px}.section{padding-top:75px;padding-bottom:75px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:27px}.eyebrow.dark{color:#d91970}h2{font-size:clamp(26px,3vw,36px);letter-spacing:-.8px;margin:6px 0}h3{margin:0 0 8px}.section-head p,.steps p{margin:0;color:var(--muted)}.cities{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.cities a{border:1px solid var(--line);padding:18px;border-radius:10px;display:flex;align-items:center;gap:12px;font-weight:700;transition:.2s}.cities a:hover{border-color:var(--orange);transform:translateY(-2px)}.pin{color:var(--orange);font-size:24px}.arrow{margin-left:auto;color:#9da6b0}.listings{background:var(--pale)}.outline{display:inline-flex;border:1px solid #d8dee6;border-radius:8px;padding:11px 17px;font-weight:700;background:#fff}.adgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ad,.empty{border:1px solid var(--line);background:#fff;border-radius:12px;padding:24px}.adtop,.adbottom{display:flex;align-items:center;justify-content:space-between}.avatar{display:grid;place-items:center;width:49px;height:49px;border-radius:10px;background:#fff0f7;color:#c61563;font-weight:800}.tag{font-size:11px;color:#a31155;background:#fff0f7;padding:5px 9px;border-radius:20px}.ad h3{margin-top:19px}.ad p{color:var(--muted);min-height:70px}.adbottom{border-top:1px solid var(--line);padding-top:15px;font-size:12px;color:#788494}.empty{grid-column:1/-1;text-align:center;padding:55px 15px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.steps>div{padding:27px;border:1px solid var(--line);border-radius:12px}.steps b{font-size:28px;color:var(--orange)}.steps h3{margin-top:13px}.safety{background:var(--navy);border-radius:16px;padding:44px;display:flex;align-items:center;justify-content:space-between;gap:25px;color:white}.safety p{color:#c6d2df;max-width:700px}.btn.light{background:white;color:var(--navy);white-space:nowrap}footer{background:#101c2c;color:#e3e8ee;padding:50px 0 25px}.foot{display:flex;justify-content:space-between;gap:30px}.foot strong{font-size:22px}.foot p{max-width:420px;color:#a9b5c4}.foot>div:last-child{display:flex;gap:25px}.copyright{font-size:12px;color:#8b9aab;border-top:1px solid #293749;padding-top:20px;margin-top:25px}.age-overlay{position:fixed;inset:0;z-index:1000;background:#08101cde;display:flex;align-items:center;justify-content:center;padding:20px}.age-overlay.hidden{display:none}.agebox{width:min(440px,100%);background:white;border-radius:18px;padding:35px;text-align:center;box-shadow:0 20px 70px #0004}.ageicon{margin:auto;background:#fff0f7;color:#c61563;border-radius:50%;width:70px;height:70px;display:grid;place-items:center;font-size:24px;font-weight:850}.agebox p,.agebox small{color:var(--muted)}.check{display:block;text-align:left;background:var(--pale);padding:14px;border-radius:8px;font-size:13px;margin:20px 0}.check a{color:#c61563;text-decoration:underline}.agebuttons{display:flex;gap:10px;justify-content:center;margin-bottom:15px}.agebuttons>*{flex:1}.btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:800px){.nav nav{display:none}.cities{grid-template-columns:repeat(3,1fr)}.adgrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.wrap{width:calc(100% - 30px)}.nav{min-height:70px}.logo{font-size:21px}.actions{gap:12px}.login{font-size:12px}.btn.small{padding:9px 11px}.hero{padding:56px 0}.hero h1{letter-spacing:-1px}.search{flex-direction:column}.search label{padding:9px 12px;border-bottom:1px solid var(--line)}.search .btn{width:100%}.hero-foot{gap:10px}.section{padding-top:52px;padding-bottom:52px}.cities{grid-template-columns:repeat(2,1fr)}.cities a{padding:13px;font-size:13px}.adgrid,.steps{grid-template-columns:1fr}.section-head{align-items:start;flex-direction:column}.safety{padding:26px;display:block}.foot{display:block}.foot>div:last-child{flex-wrap:wrap;margin-top:22px}.agebox{padding:23px}}

.faq-list{max-width:900px;margin:auto}.faq-list details{border:1px solid var(--line);border-radius:10px;margin:12px 0;background:#fff;overflow:hidden}.faq-list summary{cursor:pointer;padding:19px 22px;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:15px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font-size:23px;color:var(--orange);line-height:1}.faq-list details[open] summary:after{content:'−'}.faq-list details p{padding:0 22px 20px;margin:0;color:var(--muted)}.auth-page{min-height:75vh;display:grid;place-items:center;background:var(--pale);padding:45px 15px}.auth-card{background:white;border:1px solid var(--line);border-radius:16px;padding:32px;width:min(450px,100%);box-shadow:0 12px 40px #1e293b0a}.auth-card h1{font-size:29px;margin:0 0 8px}.auth-card p{color:var(--muted)}.auth-card label{display:block;font-weight:650;margin:14px 0 5px}.auth-card input:not([type=checkbox]){width:100%;border:1px solid #d7dde6;border-radius:8px;padding:12px;font:inherit}.auth-card button{width:100%;margin-top:18px}.auth-card .switch{text-align:center;margin-top:18px}.auth-card .switch a{color:#c61563;font-weight:700}.form-error{background:#fff0ee;color:#9f2929;padding:12px;border-radius:8px}.form-success{background:#eaf8ed;color:#25653c;padding:12px;border-radius:8px}

/* Justcallgirl visual refresh v4 */
:root{--orange:#e60074;--navy:#24142a;--pale:#fff7fb}
body{background:#fff;color:#2b2130}
.notice{background:#2b1024;color:#ffe0ef;letter-spacing:.2px}
.header{box-shadow:0 2px 18px #48162c0b}
.logo{font-size:27px;letter-spacing:-1.3px}.logo small{letter-spacing:1.8px}
.nav{min-height:76px}
.nav nav a:hover,.login:hover{color:var(--orange)}
.btn{border-radius:12px;box-shadow:0 7px 16px #e6007422}
.hero{padding:62px 0 65px;background:radial-gradient(ellipse at 75% 25%,#82385f 0,transparent 43%),linear-gradient(120deg,#271329,#54213f 68%,#68274a)}
.hero-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(285px,.78fr);gap:55px;align-items:center}
.hero h1{font-size:clamp(38px,4.4vw,61px);line-height:1.13;letter-spacing:-1.9px;margin:16px 0}
.hero h1 em{color:#ff8ebf}.hero p{font-size:15px;line-height:1.8;color:#f2dbe8;max-width:570px}
.hero .search{max-width:100%;margin-top:29px;border-radius:16px;box-shadow:0 20px 40px #140d2040}
.search .btn{min-width:160px}.hero-foot{gap:16px}
.hero-panel{border:1px solid #ffffff40;border-radius:23px;padding:30px;background:linear-gradient(150deg,#ffffff25,#ffffff0b);box-shadow:0 25px 60px #16081a30;backdrop-filter:blur(8px)}
.hero-panel .panel-kicker{color:#ffafd3;font-size:11px;letter-spacing:2px;font-weight:850}
.hero-panel h2{font-size:27px;margin:10px 0 3px;color:white}.hero-panel p{font-size:13px;margin:0 0 20px}
.panel-cities{display:grid;grid-template-columns:1fr 1fr;gap:10px}.panel-cities a{padding:14px 13px;border-radius:11px;background:#ffffffed;color:#3d2233;font-weight:750;font-size:13px;display:flex;justify-content:space-between;align-items:center}.panel-cities a:hover{background:#ffe0f0;color:#c00060}.panel-cities span{color:#e60074}.panel-note{font-size:12px;color:#ffd7e8;margin-top:24px}
.section{padding-top:64px;padding-bottom:64px}.cities a{background:#fff;border-radius:14px;box-shadow:0 4px 18px #46132a07}.cities a:hover{background:#fff4fa}
.listings{background:#fff7fb}.ad,.empty,.steps>div{border-radius:16px}.safety{background:linear-gradient(110deg,#31162d,#70264c);border-radius:22px}
footer{background:#281426}.agebox{border-radius:23px}.ageicon{background:#ffdeed;color:#d30069}
@media(max-width:950px){.hero-layout{grid-template-columns:1fr;gap:30px}.hero-panel{max-width:100%}.hero{padding:50px 0}.hero h1{max-width:680px}}
@media(max-width:600px){.nav{min-height:66px}.logo{font-size:21px}.hero{padding:43px 0}.hero h1{font-size:40px}.hero-panel{padding:21px}.hero-panel h2{font-size:23px}.search .btn{min-width:0}.panel-cities a{padding:12px 10px}.hero-foot{gap:8px;font-size:11px}.hero-layout{gap:24px}}

/* Compact homepage v6: scoped so login/register remain unchanged */
.compact-home{background:#fff;color:#222;font-family:Arial,Helvetica,sans-serif;font-size:15px}
.compact-home .compact-container{max-width:1040px;margin:0 auto;padding:0 20px}
.compact-home .compact-header{background:#fff;border-bottom:1px solid #e9e9e9}
.compact-home .compact-nav{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.compact-home .compact-logo{font-size:25px;font-weight:800;letter-spacing:-1px;color:#202331;text-decoration:none;line-height:1}
.compact-home .compact-logo span{color:#e60074}.compact-home .compact-logo small{display:block;font-size:10px;font-weight:600;letter-spacing:2px;text-align:right;color:#777;margin-top:5px}
.compact-home .compact-actions{display:flex;align-items:center;gap:20px}.compact-home .compact-actions a{font-weight:600;color:#252525;text-decoration:none}.compact-home .compact-actions .compact-post{background:#e60074;color:white;padding:11px 19px;border-radius:5px}
.compact-home .compact-intro{padding:42px 0 27px}.compact-home .compact-intro h1{font-size:34px;line-height:1.2;letter-spacing:-.7px;color:#222;margin:0 0 12px}.compact-home .compact-intro p{margin:0;color:#666;line-height:1.6}
.compact-home .compact-search{background:#24242b;border-radius:7px;padding:23px 28px;display:flex;align-items:end;justify-content:center;gap:12px}.compact-home .compact-search label{color:white;font-size:13px;font-weight:600;display:flex;flex-direction:column;gap:7px;flex:1;max-width:330px}.compact-home .compact-search select{height:43px;border:1px solid #ddd;border-radius:5px;background:white;color:#222;padding:0 12px;width:100%;font-size:15px}.compact-home .compact-search button{background:#e60074;color:white;border:0;border-radius:5px;height:43px;padding:0 24px;font-weight:700;cursor:pointer}
.compact-home .compact-section{margin:45px 0}.compact-home .compact-section h2{font-size:23px;color:#222;margin:0 0 5px}.compact-home .compact-subtitle{color:#777;margin:0 0 23px;font-size:14px}.compact-home .compact-city-grid{border:1px solid #e8e8e8;border-radius:5px;padding:24px 30px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px 25px}.compact-home .compact-city-grid a{color:#e60074;text-decoration:none;font-size:15px}.compact-home .compact-city-grid a:hover{text-decoration:underline}
.compact-home .compact-faq{max-width:900px}.compact-home .compact-faq details{border-bottom:1px solid #eaeaea;padding:14px 0}.compact-home .compact-faq summary{cursor:pointer;font-weight:600;color:#333}.compact-home .compact-faq details p{color:#666;line-height:1.65;margin:12px 0 4px}.compact-home .compact-empty{color:#777}.compact-home .compact-results{display:grid;gap:12px}.compact-home .compact-results article{border:1px solid #eee;border-radius:6px;padding:17px}.compact-home .compact-results h3{margin:0 0 8px;font-size:18px}.compact-home .compact-results p{color:#666;margin:0 0 10px}.compact-home .compact-results small{color:#888}
.compact-home .compact-footer{border-top:1px solid #eee;margin-top:55px;padding:23px 0;color:#777;font-size:13px}.compact-home .compact-footer .compact-container{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.compact-home .compact-footer nav{display:flex;gap:18px}.compact-home .compact-footer a{color:#666;text-decoration:none}
@media(max-width:700px){.compact-home .compact-nav{min-height:65px}.compact-home .compact-logo{font-size:21px}.compact-home .compact-intro{padding:30px 0 22px}.compact-home .compact-intro h1{font-size:27px}.compact-home .compact-search{padding:17px;flex-direction:column;align-items:stretch}.compact-home .compact-search label{max-width:none;width:100%}.compact-home .compact-city-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:20px;gap:15px}.compact-home .compact-section{margin:34px 0}.compact-home .compact-section h2{font-size:21px}}

/* Justcallgirl original design refresh v7 — homepage and shared login logo */
.compact-home{font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:#fffafb;color:#251d26}
.compact-home .compact-container{max-width:1080px}
.compact-home .compact-header{border-bottom:1px solid #f4e4ec;background:#fff}
.compact-home .compact-nav{min-height:84px}
.compact-logo{display:inline-flex;align-items:center;gap:11px;line-height:1.05;text-decoration:none!important;white-space:nowrap}
.compact-logo .brand-mark{display:grid;place-items:center;flex-shrink:0;width:43px;height:43px;border-radius:14px;background:linear-gradient(140deg,#f42c94,#b70065);color:#fff;font-weight:900;font-size:26px;box-shadow:0 5px 12px #e600742b}
.compact-logo .brand-name{font-weight:850;letter-spacing:-.9px;font-size:24px;color:#261725}
.compact-logo .brand-name>span{color:#e60074}
.compact-logo .brand-name small{display:block!important;margin-top:5px;font-size:9px;letter-spacing:2px;font-weight:750;color:#977e8c;text-align:left}
.compact-home .compact-actions .compact-post{border-radius:24px;padding:11px 21px;box-shadow:0 5px 15px #e6007424}
.compact-home .compact-intro{padding:57px 0 25px;max-width:780px}
.compact-home .intro-eyebrow,.compact-home .section-label{font-size:11px;letter-spacing:2px;font-weight:800;color:#c40065;margin-bottom:12px}
.compact-home .compact-intro h1{font-size:clamp(32px,4.4vw,53px);letter-spacing:-1.8px;font-weight:850;margin-bottom:12px;color:#2a1827}
.compact-home .compact-intro h1 span{color:#e60074}
.compact-home .compact-intro p{font-size:15px;color:#756b73}
.compact-home .compact-search{background:#fff;border:1px solid #f0d9e5;border-radius:18px;box-shadow:0 15px 40px #7a214b12;padding:14px;justify-content:stretch;gap:10px}
.compact-home .compact-search label{color:#7d6875;max-width:none;gap:5px;padding:0 8px;font-size:11px;text-transform:uppercase;letter-spacing:.7px}
.compact-home .compact-search select{height:48px;border:1px solid #efdfE7;border-radius:10px;background:#fffafb;font-size:15px;color:#2a1827}
.compact-home .compact-search button{height:48px;border-radius:11px;padding:0 26px;align-self:end;white-space:nowrap;background:#e60074}
.compact-home .compact-search button:hover{background:#bd005f}
.compact-home .compact-section{margin:48px 0}
.compact-home .compact-section h2{font-size:26px;letter-spacing:-.7px;color:#2a1827;margin:0 0 20px}
.compact-home .compact-city-grid{border:0;padding:0;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}
.compact-home .compact-city-grid a{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid #f2e2ea;border-radius:12px;padding:13px 15px;font-size:14px;font-weight:650;color:#372532;transition:background .15s,border-color .15s}
.compact-home .compact-city-grid a:hover{background:#fff0f7;border-color:#ef8cbd;text-decoration:none}
.compact-home .city-dot{width:7px;height:7px;border-radius:50%;background:#e60074;flex-shrink:0}
.compact-home .city-arrow{margin-left:auto;color:#cb6a9b}
.compact-home .compact-faq details{border:1px solid #f2e2ea;border-radius:10px;padding:14px 16px;margin:9px 0;background:white}
.compact-home .compact-footer{background:#fff;border-top:1px solid #f4e4ec}
.auth-brand .brand-name{font-size:24px}.auth-brand .brand-name small{font-size:9px}
.header .auth-brand{font-size:initial;letter-spacing:normal}
@media(max-width:700px){.compact-home .compact-nav{min-height:73px}.compact-logo .brand-mark{width:36px;height:36px;font-size:22px;border-radius:11px}.compact-logo .brand-name{font-size:19px}.compact-logo .brand-name small{font-size:7px;letter-spacing:1.2px}.compact-home .compact-actions{gap:11px}.compact-home .compact-actions .compact-post{padding:9px 12px;font-size:12px}.compact-home .compact-intro{padding:35px 0 22px}.compact-home .compact-intro h1{letter-spacing:-1px}.compact-home .compact-search{padding:14px;flex-direction:column}.compact-home .compact-search label{padding:0}.compact-home .compact-search button{width:100%;align-self:stretch}.compact-home .compact-city-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.compact-home .compact-city-grid a{padding:11px;font-size:13px}.auth-brand .brand-name{font-size:19px}}

/* v8: restore original wordmark, improve typography across pages */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap');
body,.compact-home,button,input,select,textarea{font-family:'DM Sans',Arial,sans-serif!important;}
.compact-logo,.auth-brand{display:inline-block!important;font-family:'DM Sans',Arial,sans-serif!important;font-size:27px!important;font-weight:800!important;letter-spacing:-1.2px!important;line-height:1.05!important;color:#15253b!important;white-space:nowrap;}
.compact-logo>span,.auth-brand>span{color:#e60074!important;}
.compact-logo>small,.auth-brand>small{display:block!important;color:#8a94a2!important;font-size:9px!important;letter-spacing:2px!important;font-weight:700!important;margin-top:6px!important;}
.compact-home .compact-intro h1,.compact-home .compact-section h2{font-family:'DM Sans',Arial,sans-serif!important;font-weight:800!important;}
@media(max-width:700px){.compact-logo,.auth-brand{font-size:21px!important}.compact-logo>small,.auth-brand>small{font-size:7px!important;letter-spacing:1.5px!important}}


