@font-face { font-family: UleySans; src: local("Arial"); font-display: swap; }
:root { --black:#151515; --ink:#232323; --muted:#6e6e6e; --line:#e6e3dd; --soft:#f6f4ef; --yellow:#ffd34e; --green:#188d52; --red:#c94343; --main:1200px; --radius:18px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; min-width:320px; color:var(--ink); background:#fff; font-family:UleySans,Arial,sans-serif; -webkit-font-smoothing:antialiased; }
body.locked { overflow:hidden; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
button { cursor:pointer; }
button:disabled { cursor:not-allowed; opacity:.38; }
svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
:focus-visible { outline:3px solid #2563eb; outline-offset:3px; }
.main { width:min(var(--main),calc(100% - 40px)); margin-inline:auto; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link { position:fixed; z-index:999; top:8px; left:8px; padding:12px 16px; color:#fff; background:#155eef; transform:translateY(-150%); }
.skip-link:focus { transform:none; }
.trust-strip { min-height:30px; display:flex; align-items:center; justify-content:center; gap:9px; padding:5px 12px; color:#fff; background:#080808; font-size:10px; font-weight:800; letter-spacing:.13em; text-align:center; }
.trust-strip span { color:var(--yellow); }
.site-header { color:#fff; background:var(--black); }
.header-row { min-height:76px; display:flex; align-items:center; gap:16px; }
.icon-button,.profile-button { padding:0; color:inherit; background:none; border:0; }
.icon-button { width:44px; height:44px; display:grid; place-items:center; border-radius:12px; }
.icon-button:hover { background:#282828; }
.logo { display:inline-flex; align-items:center; gap:7px; color:#fff; }
.logo-mark { width:32px; height:32px; display:grid; place-items:center; color:var(--black); background:var(--yellow); border-radius:50% 50% 50% 12%; font-size:21px; font-weight:800; }
.logo-word { font-size:29px; font-weight:800; letter-spacing:-.055em; }
.header-tools { margin-left:auto; display:flex; align-items:center; gap:12px; }
.location-button { min-height:44px; display:flex; align-items:center; gap:5px; padding:8px 13px; color:#fff; background:#292929; border:1px solid #393939; border-radius:11px; }
.location-button svg { width:16px; }
.add-button { min-height:44px; display:flex; align-items:center; padding:10px 17px; color:var(--black); background:var(--yellow); border-radius:11px; font-size:14px; font-weight:800; }
.profile-button { min-height:44px; display:flex; align-items:center; gap:7px; padding:0 8px; font-size:14px; }
.category-nav { position:sticky; top:0; z-index:25; background:rgba(255,255,255,.97); border-bottom:1px solid var(--line); box-shadow:0 4px 18px rgba(0,0,0,.04); backdrop-filter:blur(12px); }
.category-scroll { min-height:56px; display:flex; align-items:center; gap:5px; overflow-x:auto; scrollbar-width:none; }.category-scroll::-webkit-scrollbar{display:none}
.category-scroll a,.filter-open { min-height:40px; flex:0 0 auto; display:flex; align-items:center; padding:9px 13px; color:#505050; background:transparent; border:0; border-radius:10px; font-size:14px; font-weight:700; }
.category-scroll a:hover { background:var(--soft); color:#000; }
.filter-open { gap:7px; color:#111; background:var(--yellow); }.filter-open svg{width:18px}
.eyebrow { display:block; color:#756000; font-size:11px; font-weight:900; letter-spacing:.14em; }
.hero { padding:34px 0 36px; background:linear-gradient(135deg,#f7f2e5,#f3f0e9 55%,#ece8df); }
.hero-grid { display:grid; grid-template-columns:1.35fr .8fr; gap:26px; }
.hero-copy { display:flex; flex-direction:column; justify-content:center; padding:28px 0; }
.hero h1 { max-width:760px; margin:14px 0 16px; font-size:clamp(38px,5.3vw,68px); line-height:.98; letter-spacing:-.055em; }
.hero-copy>p { max-width:650px; margin:0; color:#555; font-size:18px; line-height:1.55; }
.hero-search { max-width:690px; min-height:62px; margin-top:27px; display:flex; align-items:center; gap:11px; padding:7px 7px 7px 18px; background:#fff; border:1px solid #ded9cf; border-radius:15px; box-shadow:0 14px 40px rgba(35,30,20,.08); }
.hero-search input { min-width:0; flex:1; padding:10px 0; border:0; outline:0; font-size:16px; }
.hero-search button { min-height:46px; padding:10px 24px; color:#fff; background:var(--black); border:0; border-radius:10px; font-weight:800; }
.hero-facts { margin-top:19px; display:flex; flex-wrap:wrap; gap:16px; color:#555; font-size:12px; font-weight:700; }.hero-facts span::first-letter{color:var(--green)}
.hero-feature { position:relative; min-height:465px; overflow:hidden; border-radius:24px; background:#ddd url('/assets/models-contact-sheet.png') 100% 100%/200% 200%; box-shadow:0 22px 60px rgba(0,0,0,.16); }
.hero-feature::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.82),transparent 58%); }
.hero-feature>div { position:absolute; z-index:1; inset:auto 25px 25px; color:#fff; }.hero-feature span{color:var(--yellow);font-size:10px;font-weight:900;letter-spacing:.14em}.hero-feature strong{display:block;margin-top:8px;font-size:33px}.hero-feature p{margin:5px 0 0;color:#ddd}
.home-section { padding:64px 0 0; }
.listing-head { margin-bottom:20px; display:flex; align-items:end; justify-content:space-between; gap:20px; }
.listing-head h2 { margin:0; font-size:clamp(28px,4vw,42px); letter-spacing:-.04em; }.listing-head p{margin:7px 0 0;color:var(--muted)}
.listing-head>a { display:flex; align-items:center; gap:4px; font-size:14px; font-weight:800; }.listing-head>a svg{width:18px}
.card-block { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }.card-block.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.model-card { position:relative; min-width:0; overflow:hidden; background:#fff; border:1px solid var(--line); border-radius:var(--radius); transition:transform .2s,box-shadow .2s; }
.model-card:hover { transform:translateY(-3px); box-shadow:0 16px 38px rgba(0,0,0,.09); }
.model-card--link { position:absolute; inset:0; z-index:3; }
.model-photo { aspect-ratio:4/4.75; background:#ddd url('/assets/models-contact-sheet.png') center/200% 200%; transition:transform .45s; }.model-card:hover .model-photo{transform:scale(1.025)}
.card-top { position:absolute; z-index:5; inset:11px 11px auto; display:flex; justify-content:space-between; pointer-events:none; }
.verified-badge { padding:6px 8px; color:#135f37; background:rgba(235,255,243,.94); border-radius:8px; font-size:10px; font-weight:800; backdrop-filter:blur(8px); }
.favorite { width:40px; height:40px; display:grid; place-items:center; padding:0; color:#fff; background:rgba(20,20,20,.42); border:0; border-radius:50%; backdrop-filter:blur(8px); pointer-events:auto; }.favorite.active{color:#fff;background:#e64f69}.favorite.active svg{fill:currentColor}
.work-status { position:absolute; z-index:2; left:11px; bottom:144px; padding:5px 8px; color:#fff; background:var(--green); border-radius:7px; font-size:10px; font-weight:800; }.work-status.offline{background:#555}.work-status.inline{position:static;display:inline-flex;min-height:30px;align-items:center}
.media-count { position:absolute; z-index:2; right:11px; bottom:144px; padding:5px 8px; color:#fff; background:rgba(20,20,20,.52); border-radius:7px; font-size:10px; }
.model-info { position:relative; min-height:138px; padding:13px; }
.name-line { display:flex; align-items:center; gap:8px; }.name-line h3{margin:0;font-size:18px;letter-spacing:-.02em}.new-badge{padding:3px 5px;color:#6b5600;background:var(--yellow);border-radius:5px;font-size:8px;font-weight:900}
.model-place { margin-top:6px; overflow:hidden; color:var(--muted); white-space:nowrap; text-overflow:ellipsis; font-size:12px; }
.price-row { margin-top:11px; display:flex; align-items:baseline; gap:6px; }.price-row strong{font-size:16px}.price-row span{color:var(--muted);font-size:11px}
.card-tags { position:relative; z-index:5; margin-top:10px; display:flex; gap:5px; overflow:hidden; }.card-tags a,.card-tags span{flex:0 0 auto;padding:5px 7px;color:#5d5d5d;background:var(--soft);border-radius:6px;font-size:9px}.card-tags a:hover{background:var(--yellow)}
.ad-banner { margin-top:64px; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:28px 32px; color:#fff; background:linear-gradient(115deg,#171717,#2e2a22); border-radius:20px; }.ad-banner span{display:block;color:var(--yellow);font-size:9px;font-weight:900;letter-spacing:.14em}.ad-banner strong{display:block;margin-top:7px;font-size:23px}.ad-banner p{margin:6px 0 0;color:#aaa;font-size:13px}.ad-banner a{flex:0 0 auto;padding:13px 18px;color:var(--black);background:var(--yellow);border-radius:10px;font-weight:800}
.services { padding:72px 0 0; }.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.service-grid>a{min-height:92px;display:flex;align-items:center;gap:12px;padding:17px;background:var(--soft);border:1px solid transparent;border-radius:14px;transition:.2s}.service-grid>a:hover{background:#fff;border-color:#dcd7cb;box-shadow:0 10px 25px rgba(0,0,0,.06)}.service-grid>a>svg{margin-left:auto;width:18px}.service-icon{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;color:#6c5600;background:var(--yellow);border-radius:10px;font-size:10px;font-weight:900}.service-grid strong,.service-grid small{display:block}.service-grid small{margin-top:5px;color:var(--muted);font-size:11px}
.seo-panel { margin-top:72px; margin-bottom:72px; padding:38px; background:var(--soft); border-radius:22px; }.seo-copy h2{max-width:800px;margin:10px 0;font-size:clamp(27px,4vw,42px);letter-spacing:-.04em}.seo-copy>p{max-width:890px;color:var(--muted);line-height:1.7}.benefit-grid{margin-top:26px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.benefit-grid>div{padding:18px;background:#fff;border-radius:14px}.benefit-grid b{display:block;color:#9c7d09;font-size:11px}.benefit-grid strong,.benefit-grid span{display:block}.benefit-grid strong{margin-top:12px}.benefit-grid span{margin-top:5px;color:var(--muted);font-size:12px}.hashtags{margin-top:28px;display:flex;flex-wrap:wrap;gap:8px}.hashtags a,.service-tags a{min-height:36px;display:inline-flex;align-items:center;padding:8px 12px;color:#555;background:#fff;border:1px solid var(--line);border-radius:999px;font-size:12px}.hashtags a:hover,.service-tags a:hover{background:var(--yellow);border-color:var(--yellow)}
.catalog-head { padding:48px 0 22px; display:flex; align-items:end; justify-content:space-between; gap:20px; }.catalog-head h1{margin:9px 0 7px;font-size:clamp(32px,4vw,48px);letter-spacing:-.045em}.catalog-head p{margin:0;color:var(--muted)}.result-count{color:var(--muted);font-size:13px}
.catalog-layout { padding-bottom:72px; display:grid; grid-template-columns:245px 1fr; gap:26px; align-items:start; }.desktop-filters{position:sticky;top:76px;padding:20px;background:var(--soft);border-radius:16px}.filter-title{display:flex;align-items:center;justify-content:space-between}.filter-title strong{font-size:20px}.filter-title button{padding:5px;color:var(--muted);background:none;border:0;font-size:11px;text-decoration:underline}.desktop-filters>label,.mobile-filter-form label{margin-top:22px;display:grid;gap:8px;color:#555;font-size:12px;font-weight:700}.desktop-filters input,.desktop-filters select,.mobile-filter-form input,.mobile-filter-form select{width:100%;min-height:44px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:9px}.price-inputs{display:grid;grid-template-columns:1fr 1fr;gap:7px}.check-label{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center}.check-label input{width:20px!important;height:20px!important;min-height:0!important}.apply-filters{margin-top:22px}.search-box{min-height:54px;display:flex;align-items:center;gap:10px;padding:5px 5px 5px 15px;background:var(--soft);border:1px solid var(--line);border-radius:13px}.search-box input{min-width:0;flex:1;padding:8px 0;background:transparent;border:0;outline:0}.search-submit{min-height:42px;padding:9px 17px;color:#fff;background:var(--black);border:0;border-radius:9px;font-weight:800}.catalog-filter-row{margin:13px 0 20px;display:flex;flex-wrap:wrap;gap:7px}.filter{min-height:38px;padding:8px 12px;color:#555;background:#fff;border:1px solid var(--line);border-radius:999px;font-size:12px}.filter.active{color:#211b00;background:var(--yellow);border-color:var(--yellow)}.sort-row{margin-bottom:15px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px}.sort-row select{min-height:40px;padding:8px 28px 8px 10px;background:#fff;border:1px solid var(--line);border-radius:8px}.empty-state{padding:70px 20px;text-align:center}.empty-state strong,.empty-state span{display:block}.empty-state span{margin-top:8px;color:var(--muted)}.empty-state button{margin-top:20px;padding:10px 15px;background:var(--yellow);border:0;border-radius:9px}
.breadcrumbs{padding-top:26px;display:flex;gap:8px;color:var(--muted);font-size:12px}.detail{padding:22px 0 72px;display:grid;grid-template-columns:minmax(420px,1fr) minmax(390px,.88fr);gap:46px;align-items:start}.detail-gallery{position:sticky;top:82px}.detail-photo{position:relative;min-height:calc(100vh - 140px);max-height:820px;background:#ddd url('/assets/models-contact-sheet.png') center/200% 200%;border-radius:20px}.detail-photo>span{position:absolute;right:14px;bottom:14px;padding:6px 9px;color:#fff;background:rgba(0,0,0,.48);border-radius:8px;font-size:11px}.detail-thumbs{margin-top:10px;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.detail-thumb{aspect-ratio:1.3;background:url('/assets/models-contact-sheet.png') center/200% 200%;border:2px solid transparent;border-radius:10px}.detail-thumb.active{border-color:var(--yellow)}.detail-title{display:flex;align-items:start;justify-content:space-between;gap:18px}.detail-status{display:flex;gap:7px}.verified-line{min-height:30px;display:inline-flex;align-items:center;padding:5px 8px;color:#135f37;background:#e9fff2;border-radius:7px;font-size:10px;font-weight:800}.detail-title h1{margin:18px 0 6px;font-size:clamp(38px,5vw,58px);letter-spacing:-.055em}.detail-title p{margin:0;color:var(--muted)}.detail-favorite{flex:0 0 auto;color:#555;background:var(--soft);border:1px solid var(--line)}.contact-actions{margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.contact-button{min-height:52px;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border:0;border-radius:11px;font-size:13px;font-weight:800}.contact-button.telegram{color:#fff;background:#168bd2}.contact-button.phone{color:var(--black);background:var(--yellow)}.contact-button.revealed{color:#444;background:var(--soft)}.booking-card{margin-top:16px;padding:18px;background:var(--soft);border-radius:14px}.booking-card>div:first-child>span,.booking-total>span{display:block;color:var(--muted);font-size:11px}.duration-pills{margin-top:9px;display:flex;gap:7px}.duration-pills button{min-height:39px;padding:8px 12px;background:#fff;border:1px solid var(--line);border-radius:9px;font-size:12px}.duration-pills button.active{background:var(--yellow);border-color:var(--yellow)}.booking-total{margin-top:17px;padding-top:15px;border-top:1px solid #ddd8ce}.booking-total strong{display:block;margin-top:4px;font-size:28px}.booking-total small{color:var(--muted)}.facts{margin:16px 0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.facts>div{padding:13px;background:var(--soft);border-radius:10px}.facts span,.facts strong{display:block}.facts span{color:var(--muted);font-size:10px}.facts strong{margin-top:5px;font-size:13px}.detail-section{padding:19px 0;border-top:1px solid var(--line)}.detail-section h2{margin:0;font-size:21px}.detail-section p{color:var(--muted);line-height:1.65}.section-title-row{display:flex;align-items:center;justify-content:space-between}.section-title-row span{color:var(--muted);font-size:11px}.service-tags{margin-top:13px;display:flex;flex-wrap:wrap;gap:7px}.related{padding-bottom:72px}
.primary-button{width:100%;min-height:48px;padding:12px 18px;color:var(--black);background:var(--yellow);border:0;border-radius:10px;font-weight:900}.primary-button.compact{width:auto}.login-wrap{min-height:680px;display:grid;place-items:center;padding:45px 20px;background:var(--soft)}.login-card{width:min(460px,100%);padding:36px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 18px 50px rgba(0,0,0,.07)}.logo.dark{color:var(--black);margin-bottom:30px}.login-card h1{margin:10px 0 6px;font-size:34px}.login-card>p{color:var(--muted);line-height:1.5}.field{margin:17px 0;display:grid;gap:7px;color:#555;font-size:12px;font-weight:700}.field input,.field textarea{padding:13px;border:1px solid var(--line);border-radius:9px}.field small{color:var(--muted);font-weight:400}.notice{display:none;margin-top:14px;color:var(--muted);font-size:12px}.not-found{min-height:600px;display:grid;place-content:center;justify-items:center;text-align:center}.not-found>span{color:var(--yellow);font-size:70px;font-weight:900}
.dashboard{padding:54px 0 80px}.dashboard-head{display:flex;align-items:end;justify-content:space-between;gap:20px}.dashboard-head h1{margin:9px 0 5px;font-size:44px;letter-spacing:-.04em}.dashboard-head p{margin:0;color:var(--muted)}.dashboard-tip{margin:25px 0 14px;padding:13px 16px;color:#6b5700;background:#fff6cf;border:1px solid #f0dc83;border-radius:10px;font-size:12px}.admin-list{display:grid;gap:10px}.admin-row{display:grid;grid-template-columns:100px 1fr auto;gap:16px;align-items:center;padding:12px;background:#fff;border:1px solid var(--line);border-radius:14px}.admin-photo{width:100px;aspect-ratio:1;background:url('/assets/models-contact-sheet.png') center/200% 200%;border-radius:10px}.admin-main h2{margin:7px 0 4px;font-size:19px}.admin-main p,.admin-extras{margin:0;color:var(--muted);font-size:11px}.admin-extras{margin-top:10px}.status-pill{padding:4px 7px;color:#126338;background:#e8fff1;border-radius:6px;font-size:9px;font-weight:800}.status-pill.paused{color:#6a5700;background:#fff3c4}.admin-actions{max-width:410px;display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px}.admin-actions button{min-height:36px;padding:7px 9px;background:var(--soft);border:1px solid var(--line);border-radius:8px;font-size:10px}.admin-actions .danger{color:#a22d2d;background:#fff0f0}.admin-empty{padding:50px;color:var(--muted);background:var(--soft);border-radius:14px;text-align:center}
.footer{padding:48px 0 96px;color:#bbb;background:var(--black)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:45px}.footer-logo{margin-bottom:16px}.footer p{max-width:440px;color:#888;line-height:1.6;font-size:12px}.footer h3{margin:8px 0 15px;color:#fff;font-size:13px}.footer-grid>div:not(:first-child) a{margin:10px 0;display:block;font-size:12px}.adult-mark{width:56px;height:56px;display:grid;place-items:center;color:#fff;border:2px solid var(--yellow);border-radius:50%;font-weight:900}.copyright{margin-top:30px;padding-top:20px;border-top:1px solid #303030;color:#6f6f6f;font-size:11px}.mobile-nav{display:none}
.age-gate,.modal-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.82);backdrop-filter:blur(10px)}.age-card{width:min(430px,100%);padding:32px;background:#fff;border-radius:18px;text-align:center}.age-card .adult-mark{margin:0 auto;color:var(--black)}.age-card h2{margin:20px 0 10px;font-size:27px}.age-card p{color:var(--muted);line-height:1.55}.age-card .primary-button{margin-top:10px}.age-no{min-height:44px;margin-top:8px;color:var(--muted);background:none;border:0}
.drawer-backdrop{position:fixed;inset:0;z-index:90;visibility:hidden;background:rgba(0,0,0,0);transition:.22s}.drawer-backdrop.open{visibility:visible;background:rgba(0,0,0,.5)}.drawer{width:min(430px,94vw);height:100%;padding:24px;background:#fff;transform:translateX(-100%);transition:transform .22s ease;overflow-y:auto}.open .drawer{transform:translateX(0)}.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.drawer-head h2{margin:6px 0;font-size:27px}.drawer-close,.modal-close{width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;background:var(--soft);border:0;border-radius:50%}.drawer-links{margin-top:22px;display:grid}.drawer-links a{min-height:49px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-weight:700}.drawer-links svg{width:17px}.mobile-filter-form{margin-top:15px}.edit-modal{width:min(520px,100%);max-height:90vh;overflow:auto;padding:28px;background:#fff;border-radius:18px}.edit-modal h2{margin:5px 0}.modal-backdrop{z-index:110}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr}.card-block.four{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}.catalog-layout{grid-template-columns:1fr}.desktop-filters{display:none}.detail{gap:26px}.footer-grid{grid-template-columns:2fr 1fr 1fr}.footer-grid .adult-mark{display:none}.admin-row{grid-template-columns:85px 1fr}.admin-photo{width:85px}.admin-actions{grid-column:1/-1;max-width:none;justify-content:flex-start}}
@media(max-width:680px){.main{width:min(100% - 24px,var(--main))}.trust-strip{font-size:8px}.header-row{min-height:62px}.logo-mark{width:28px;height:28px;font-size:18px}.logo-word{font-size:25px}.header-tools .add-button,.profile-button,.menu-button{display:none}.location-button{margin-left:auto;min-height:40px;font-size:11px}.category-scroll{width:100%;min-height:51px;padding-inline:12px}.category-scroll a,.filter-open{min-height:38px;padding:8px 10px;font-size:11px}.hero{padding:20px 0 22px}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:18px 0}.hero h1{font-size:40px}.hero-copy>p{font-size:15px}.hero-search{min-height:55px;margin-top:20px}.hero-search button{padding-inline:15px}.hero-facts{gap:9px}.hero-feature{min-height:330px}.home-section{padding-top:44px}.listing-head{align-items:center}.listing-head h2{font-size:27px}.listing-head p{font-size:12px}.listing-head>a{font-size:0}.listing-head>a svg{width:24px;height:24px}.card-block,.card-block.four{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.model-card{border-radius:13px}.model-photo{aspect-ratio:4/5}.model-info{min-height:136px;padding:10px}.name-line h3{font-size:15px}.model-place{font-size:10px}.price-row{display:block;margin-top:8px}.price-row strong{display:block;font-size:13px}.card-top{inset:7px 7px auto}.verified-badge{padding:5px 6px;font-size:8px}.favorite{width:36px;height:36px}.favorite svg{width:19px}.work-status{left:7px;bottom:139px;font-size:8px}.media-count{display:none}.card-tags a,.card-tags span{font-size:8px}.card-tags a:nth-child(n+2){display:none}.ad-banner{margin-top:44px;display:block;padding:23px}.ad-banner strong{font-size:20px}.ad-banner a{margin-top:18px;display:inline-flex}.services{padding-top:50px}.service-grid{grid-template-columns:1fr}.seo-panel{margin-top:50px;margin-bottom:45px;padding:24px}.benefit-grid{grid-template-columns:1fr}.catalog-head{padding-top:30px;align-items:start}.catalog-head h1{font-size:32px}.catalog-head p{font-size:12px}.result-count{white-space:nowrap}.catalog-filter-row{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.sort-row label{font-size:0}.sort-row select{font-size:11px}.search-submit{display:none}.breadcrumbs{padding-top:16px}.detail{grid-template-columns:1fr;padding-top:14px}.detail-gallery{position:static}.detail-photo{min-height:72vh;max-height:760px;border-radius:14px}.detail-thumbs{overflow-x:auto;grid-template-columns:repeat(4,95px)}.detail-title h1{font-size:42px}.contact-actions{grid-template-columns:1fr}.duration-pills{overflow-x:auto}.duration-pills button{flex:0 0 auto}.facts{grid-template-columns:1fr 1fr}.related{padding-bottom:45px}.footer{padding:38px 0 96px}.footer-grid{grid-template-columns:1fr 1fr;gap:24px}.footer-grid>div:first-child{grid-column:1/-1}.mobile-nav{position:fixed;z-index:40;inset:auto 0 0;height:calc(66px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(5,1fr);background:rgba(255,255,255,.97);border-top:1px solid var(--line);box-shadow:0 -5px 24px rgba(0,0,0,.08);backdrop-filter:blur(16px)}.mobile-nav a,.mobile-nav button{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#888;background:none;border:0;font-size:9px}.mobile-nav svg{width:20px;height:20px}.mobile-nav .active{color:var(--black)}.login-card{padding:27px 22px}.dashboard{padding-top:35px}.dashboard-head{align-items:start;flex-direction:column}.dashboard-head h1{font-size:35px}.admin-row{grid-template-columns:70px 1fr;gap:11px}.admin-photo{width:70px}.admin-main h2{font-size:16px}.admin-extras{line-height:1.45}.admin-actions button{flex:1 1 auto}.edit-modal{padding:22px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* 2026 editorial refresh: warm, intimate and deliberately restrained. */
:root {
  --black:#160f10;
  --ink:#241a1c;
  --muted:#766a6c;
  --line:#e8dede;
  --soft:#f6f0ef;
  --yellow:#d6a963;
  --gold:#d6a963;
  --wine:#682d3b;
  --wine-dark:#3d1721;
  --green:#397a5b;
  --main:1280px;
  --radius:22px;
}

/* Upload and direct-contact refinements. */
.upload-zone{position:relative}
.upload-zone input{left:0;top:0}
.contact-button{text-decoration:none}
.contact-button.disabled{opacity:.5;cursor:not-allowed}
body { background:#fcfaf8; color:var(--ink); font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
h1,h2,.hero-feature strong,.logo-word { font-family:Georgia,"Times New Roman",serif; font-weight:500; }
button,a,input,select,textarea { -webkit-tap-highlight-color:transparent; }
button,a { transition:color .22s ease,background-color .22s ease,border-color .22s ease,transform .22s ease,box-shadow .22s ease; }
:focus-visible { outline:2px solid #9c5264; outline-offset:3px; }
.main { width:min(var(--main),calc(100% - 64px)); }

.trust-strip { min-height:32px; color:#dacdca; background:#0d090a; font-size:9px; letter-spacing:.21em; }
.trust-strip span { color:var(--gold); }
.site-header { background:var(--black); }
.header-row { min-height:84px; }
.icon-button { border:1px solid rgba(255,255,255,.12); border-radius:50%; }
.icon-button:hover { background:rgba(255,255,255,.08); transform:rotate(-4deg); }
.logo { gap:10px; }
.logo-mark { width:36px; height:36px; color:#fff; background:var(--wine); border:1px solid rgba(255,255,255,.15); border-radius:50% 50% 50% 12%; font-family:Georgia,serif; font-size:24px; font-style:italic; font-weight:400; box-shadow:0 8px 26px rgba(104,45,59,.38); }
.logo-word { font-size:31px; font-style:italic; font-weight:500; letter-spacing:-.06em; }
.location-button { background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.11); border-radius:999px; }
.location-button:hover { background:rgba(255,255,255,.11); }
.add-button { min-height:46px; color:#fff; background:var(--wine); border:1px solid rgba(255,255,255,.1); border-radius:999px; box-shadow:0 8px 24px rgba(104,45,59,.25); }
.add-button:hover { background:#7b3647; transform:translateY(-1px); }
.profile-button { min-height:46px; padding:0 13px; border-radius:999px; }
.profile-button:hover { background:rgba(255,255,255,.07); }
.category-nav { top:0; background:rgba(252,250,248,.91); border-color:rgba(104,45,59,.1); box-shadow:0 10px 35px rgba(39,19,24,.055); }
.category-scroll { min-height:62px; gap:9px; }
.category-scroll a,.filter-open { min-height:44px; border-radius:999px; }
.category-scroll a:hover { color:var(--wine); background:#f1e7e6; }
.filter-open { color:#fff; background:var(--wine); box-shadow:0 7px 20px rgba(104,45,59,.18); }
.filter-open:hover { background:#7b3647; }

.eyebrow { color:#9a7150; font-size:10px; letter-spacing:.23em; }
.hero { position:relative; overflow:hidden; padding:58px 0 64px; color:#fff; background:linear-gradient(118deg,#150e10 0%,#211315 55%,#351c20 100%); }
.hero::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.22; background:radial-gradient(circle at 13% 15%,rgba(214,169,99,.36),transparent 28%),linear-gradient(110deg,transparent 60%,rgba(104,45,59,.35)); }
.hero-glow { position:absolute; width:540px; height:540px; right:9%; bottom:-60%; border:1px solid rgba(214,169,99,.14); border-radius:50%; box-shadow:0 0 0 80px rgba(214,169,99,.025),0 0 0 160px rgba(214,169,99,.02); }
.hero-grid { position:relative; grid-template-columns:minmax(0,1fr); }
.hero-copy { max-width:900px; }
.hero-copy { padding:42px 0 30px; }
.hero .eyebrow { color:#d8b67f; }
.hero h1 { max-width:800px; margin:18px 0 24px; font-size:clamp(54px,6.4vw,91px); line-height:.92; letter-spacing:-.055em; }
.hero h1 em { color:#d5a9b2; font-weight:400; }
.hero-copy>p { max-width:590px; color:#cfc1c0; font-size:18px; line-height:1.65; }
.hero-search { max-width:680px; min-height:68px; margin-top:34px; padding:7px 7px 7px 20px; background:rgba(255,255,255,.97); border:1px solid rgba(255,255,255,.18); border-radius:18px; box-shadow:0 25px 65px rgba(0,0,0,.26); }
.hero-search>span { color:var(--wine); }
.hero-search button { min-height:52px; padding-inline:27px; background:var(--wine); border-radius:12px; }
.hero-search button:hover { background:#7b3647; }
.hero-facts { margin-top:23px; gap:28px; color:#a99a9a; font-size:11px; letter-spacing:.04em; }
.hero-facts span { display:flex; align-items:center; gap:9px; }
.hero-facts span::before { content:""; width:5px; height:5px; background:var(--gold); border-radius:50%; box-shadow:0 0 0 4px rgba(214,169,99,.1); }
.hero-feature { min-height:570px; border:1px solid rgba(255,255,255,.13); border-radius:160px 160px 26px 26px; background-position:100% 100%; box-shadow:0 36px 85px rgba(0,0,0,.43); }
.hero-feature::after { background:linear-gradient(0deg,rgba(17,8,10,.91),rgba(17,8,10,.02) 68%); }
.hero-feature::before { content:""; position:absolute; z-index:2; inset:14px; border:1px solid rgba(255,255,255,.22); border-radius:150px 150px 18px 18px; pointer-events:none; }
.hero-feature:hover { transform:translateY(-5px); box-shadow:0 44px 95px rgba(0,0,0,.5); }
.hero-feature>div { inset:auto 36px 36px; }
.hero-feature strong { margin-top:10px; font-size:42px; font-style:italic; }
.hero-feature p { display:flex; align-items:center; gap:9px; color:#d8cbca; }
.hero-feature p i { width:5px; height:5px; background:#65b487; border-radius:50%; box-shadow:0 0 0 4px rgba(101,180,135,.14); }
.hero-feature-index { position:absolute; z-index:3; top:45px; right:36px; color:#fff!important; font-family:Georgia,serif; font-size:12px!important; font-weight:400!important; letter-spacing:.1em!important; }

.home-section { padding-top:92px; }
.listing-head { margin-bottom:28px; }
.listing-head h2 { font-size:clamp(36px,4.3vw,54px); letter-spacing:-.045em; }
.listing-head p { margin-top:10px; }
.listing-head>a { min-height:44px; padding:0 6px 0 15px; color:var(--wine); border:1px solid #decfd0; border-radius:999px; font-size:12px; }
.listing-head>a:hover { color:#fff; background:var(--wine); border-color:var(--wine); }
.card-block { gap:20px; }
.model-card { border-color:#eadfdd; border-radius:var(--radius); box-shadow:0 9px 30px rgba(55,28,34,.055); }
.model-card:hover { transform:translateY(-7px); box-shadow:0 24px 55px rgba(55,28,34,.14); }
.model-photo { aspect-ratio:4/5.3; }
.model-card:hover .model-photo { transform:scale(1.045); }
.model-card::after { content:""; position:absolute; z-index:1; inset:0 0 138px; pointer-events:none; background:linear-gradient(180deg,rgba(18,8,10,.12),transparent 32%,rgba(18,8,10,.25)); }
.verified-badge { min-height:29px; display:flex; align-items:center; padding:6px 10px; color:#fff; background:rgba(34,24,25,.56); border:1px solid rgba(255,255,255,.2); border-radius:999px; }
.favorite { width:44px; height:44px; background:rgba(25,14,16,.42); border:1px solid rgba(255,255,255,.24); }
.favorite:hover { transform:scale(1.06); background:rgba(104,45,59,.85); }
.favorite.active { background:var(--wine); }
.like-button { min-width:44px; width:auto; padding:0 11px; display:flex; align-items:center; justify-content:center; gap:6px; color:#fff; font-weight:800; cursor:pointer; }
.like-button svg { width:18px; height:18px; fill:transparent; }
.like-button span { font-size:11px; }
.like-button.active { opacity:1; cursor:default; }
.like-button.active svg { fill:currentColor; }
.like-button.pending { opacity:.65; }
.work-status { left:13px; bottom:151px; min-height:27px; display:flex; align-items:center; gap:6px; padding:5px 10px; background:rgba(34,91,61,.88); border:1px solid rgba(255,255,255,.17); border-radius:999px; backdrop-filter:blur(10px); }
.work-status::before { content:""; width:5px; height:5px; background:#8de0a9; border-radius:50%; }
.work-status.offline { background:rgba(45,39,40,.72); }
.work-status.offline::before { background:#bfb7b7; }
.media-count { right:13px; bottom:151px; padding:6px 9px; border:1px solid rgba(255,255,255,.16); border-radius:999px; backdrop-filter:blur(10px); }
.model-info { min-height:146px; padding:16px; background:#fff; }
.name-line h3 { font-family:Georgia,serif; font-size:22px; font-weight:500; }
.new-badge { color:#fff; background:var(--wine); border-radius:999px; }
.price-row strong { color:var(--wine-dark); font-size:17px; }
.card-tags { gap:6px; }
.card-tags a,.card-tags span { min-height:26px; display:flex; align-items:center; padding:5px 8px; color:#716466; background:#f7f1f0; border-radius:999px; }
.card-tags a:hover { color:#fff; background:var(--wine); }

.ad-banner { position:relative; overflow:hidden; margin-top:92px; padding:38px 44px; background:linear-gradient(120deg,#241417,#3e1d25 58%,#6b3040); border:1px solid rgba(214,169,99,.24); border-radius:26px; box-shadow:0 25px 60px rgba(74,31,42,.18); }
.ad-banner::after { content:""; position:absolute; width:320px; height:320px; right:120px; border:1px solid rgba(214,169,99,.16); border-radius:50%; box-shadow:0 0 0 55px rgba(214,169,99,.025); }
.ad-banner>div:not(.ad-monogram),.ad-banner>a { position:relative; z-index:1; }
.ad-banner span { color:#dcb878; letter-spacing:.2em; }
.ad-banner strong { margin-top:10px; font-family:Georgia,serif; font-size:31px; font-weight:500; }
.ad-banner p { color:#bfaeb0; }
.ad-banner a { min-height:50px; display:flex; align-items:center; gap:8px; color:#2b171b; background:#e2bd80; border-radius:999px; }
.ad-banner a:hover { background:#f1d398; transform:translateY(-2px); }
.ad-banner a svg { width:17px; }
.ad-monogram { position:relative; z-index:1; width:64px; height:64px; display:grid; place-items:center; flex:0 0 auto; color:#e8c88e; border:1px solid rgba(232,200,142,.35); border-radius:50%; font-family:Georgia,serif; font-size:34px; font-style:italic; }

.services { padding-top:92px; }
.service-grid { gap:14px; }
.service-grid>a { min-height:112px; padding:20px; background:#f7f1f0; border-color:#eadfdd; border-radius:18px; }
.service-grid>a:hover { border-color:#ceb5b9; box-shadow:0 17px 35px rgba(82,39,49,.1); transform:translateY(-3px); }
.service-icon { width:40px; height:40px; color:#fff; background:var(--wine); border-radius:50%; }
.service-grid strong { font-family:Georgia,serif; font-size:17px; font-weight:500; }
.seo-panel { margin-top:92px; padding:52px; background:linear-gradient(135deg,#f5ecea,#f9f5f2); border:1px solid #eadeda; border-radius:28px; }
.seo-copy h2 { font-size:clamp(36px,4.5vw,54px); }
.benefit-grid>div { min-height:132px; padding:23px; border:1px solid #ede2df; border-radius:17px; }
.benefit-grid b { color:var(--wine); }
.hashtags a,.service-tags a { min-height:40px; color:#655759; border-color:#e0d3d2; }
.hashtags a:hover,.service-tags a:hover { color:#fff; background:var(--wine); border-color:var(--wine); }

.catalog-head { padding-top:62px; }
.catalog-head h1,.detail-title h1,.dashboard-head h1,.login-card h1 { font-family:Georgia,serif; font-weight:500; }
.catalog-head h1 { font-size:clamp(42px,5vw,62px); }
.result-count { padding:9px 13px; background:#f3e9e7; border-radius:999px; }
.desktop-filters { top:80px; padding:23px; background:#f6efed; border:1px solid #e9dcda; border-radius:20px; }
.desktop-filters input,.desktop-filters select,.mobile-filter-form input,.mobile-filter-form select,.field input,.field textarea { border-color:#ded0cf; border-radius:11px; }
.search-box { min-height:60px; padding-left:18px; background:#fff; border-color:#e3d6d5; border-radius:16px; box-shadow:0 9px 30px rgba(61,30,37,.05); }
.search-submit { min-height:48px; background:var(--wine); border-radius:11px; }
.filter { min-height:42px; border-color:#dfd2d1; }
.filter:hover,.filter.active { color:#fff; background:var(--wine); border-color:var(--wine); }
.sort-row select { border-color:#dfd2d1; border-radius:10px; }
.primary-button { min-height:50px; color:#fff; background:var(--wine); border-radius:12px; }
.primary-button:hover { background:#7b3647; transform:translateY(-1px); box-shadow:0 9px 24px rgba(104,45,59,.18); }

.breadcrumbs { padding-top:34px; }
.detail { grid-template-columns:minmax(440px,1.04fr) minmax(390px,.82fr); gap:58px; }
.detail-photo { border-radius:24px 110px 24px 24px; box-shadow:0 24px 60px rgba(52,27,32,.18); }
.detail-photo::after { content:""; position:absolute; inset:12px; border:1px solid rgba(255,255,255,.27); border-radius:17px 100px 17px 17px; pointer-events:none; }
.detail-thumb { border-radius:12px; }
.detail-thumb.active { border-color:var(--wine); box-shadow:0 0 0 2px rgba(104,45,59,.13); }
.detail-title h1 { font-size:clamp(48px,5.6vw,68px); }
.verified-line { color:#65512e; background:#f4ead5; border-radius:999px; }
.work-status.inline { border-radius:999px; }
.detail-favorite { min-height:46px; color:var(--wine); background:#f4eae9; border:1px solid #dfcecf; border-radius:999px; }
.detail-favorite.active { color:#fff; background:var(--wine); border-color:var(--wine); }
.contact-button { min-height:56px; border-radius:13px; }
.contact-button.telegram { background:#2b7da6; }
.contact-button.phone { color:#fff; background:var(--wine); }
.booking-card { padding:22px; background:#f5eeec; border:1px solid #e7dad8; border-radius:18px; }
.duration-pills button { min-height:44px; border-color:#ded0cf; border-radius:999px; }
.duration-pills button.active { color:#fff; background:var(--wine); border-color:var(--wine); }
.facts>div { padding:16px; background:#f8f3f1; border:1px solid #eee3e1; border-radius:13px; }
.detail-section h2 { font-family:Georgia,serif; font-size:25px; font-weight:500; }

.footer { color:#c6b9b8; background:#130d0e; }
.footer h3 { color:#e7dad8; }
.footer p { color:#948486; }
.footer-grid>div:not(:first-child) a:hover { color:#dcb47b; }
.adult-mark { border-color:#b97887; }
.age-gate,.modal-backdrop { background:rgba(15,8,10,.86); }
.age-card,.edit-modal,.login-card { border:1px solid #e4d6d4; border-radius:24px; box-shadow:0 28px 80px rgba(33,12,17,.25); }
.age-card h2 { font-family:Georgia,serif; font-size:31px; font-weight:500; }
.age-card .adult-mark { color:var(--wine); border-color:var(--wine); }
.drawer { background:#fcfaf8; }
.drawer-close,.modal-close { background:#f2e9e7; }
.drawer-links a:hover { color:var(--wine); padding-left:6px; }
.login-wrap { background:radial-gradient(circle at 20% 10%,#efe0dd,transparent 34%),#f7f1ef; }
.dashboard-tip { color:#694554; background:#f7ebed; border-color:#e8ccd3; }
.admin-row { border-color:#e6d9d7; border-radius:18px; box-shadow:0 8px 22px rgba(50,25,31,.035); }
.status-pill { border-radius:999px; }
.admin-actions button { min-height:40px; border-radius:10px; }

.dashboard-head-actions{display:flex;align-items:center;gap:8px}.admin-preview,.admin-logout{min-height:42px;display:inline-flex;align-items:center;padding:9px 14px;border:1px solid #d9c9c8;border-radius:10px;background:#fff;color:#62454d;font-size:12px;font-weight:800}.admin-logout{color:#8d3349}.admin-tabs{margin-top:34px;display:flex;gap:8px;border-bottom:1px solid #e2d5d3}.admin-tabs button{min-height:48px;padding:10px 16px;color:#7d6f71;background:none;border:0;border-bottom:3px solid transparent;font-weight:800}.admin-tabs button.active{color:var(--wine);border-bottom-color:var(--wine)}.admin-tabs span{margin-left:5px;padding:3px 7px;background:#f0e6e4;border-radius:999px;font-size:10px}.admin-panel{display:none}.admin-panel.active{display:block}.admin-panel-head{margin:26px 0 14px;display:flex;align-items:end;justify-content:space-between;gap:20px}.admin-panel-head h2{margin:0 0 5px;font-family:Georgia,serif;font-size:28px;font-weight:500}.admin-panel-head p{margin:0;color:var(--muted);font-size:12px}.banner-list{display:grid;gap:12px}.banner-row{display:grid;grid-template-columns:minmax(260px,.8fr) 1fr auto;gap:18px;align-items:center;padding:13px;background:#fff;border:1px solid #e6d9d7;border-radius:18px}.banner-preview{min-height:112px;display:flex;flex-direction:column;justify-content:end;padding:16px;color:#fff;background:linear-gradient(105deg,var(--banner-start),var(--banner-end));background-position:center;background-size:cover;border-radius:13px;overflow:hidden}.banner-preview span{font-size:8px;font-weight:900;letter-spacing:.12em}.banner-preview strong{margin-top:4px;font-family:Georgia,serif;font-size:19px}.banner-preview small{margin-top:8px;opacity:.75}.banner-meta h3{margin:10px 0 5px;font-size:16px}.banner-meta p{margin:0;color:var(--muted);font-size:11px}

.edit-modal--wide{width:min(1040px,calc(100vw - 32px));padding:0}.modal-sticky{position:sticky;z-index:3;top:0;padding:24px 26px;background:rgba(255,255,255,.96);border-bottom:1px solid #e8dcda;backdrop-filter:blur(12px)}.editor-sections{display:grid;gap:14px;padding:20px 26px}.editor-section{min-width:0;margin:0;padding:18px;border:1px solid #e5d8d6;border-radius:16px}.editor-section legend{padding:0 8px;color:#4b3037;font-family:Georgia,serif;font-size:20px}.editor-section .field{margin:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}.field select{width:100%;padding:13px;border:1px solid #ded0cf;border-radius:11px;background:#fff}.field input[type=color]{height:46px;padding:5px}.section-help{margin:0 0 12px;color:var(--muted);font-size:12px}.option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.option-check{min-height:42px;display:flex;align-items:center;gap:8px;padding:8px 10px;background:#f8f3f1;border:1px solid #ece0de;border-radius:10px;font-size:11px}.option-check input{accent-color:var(--wine)}.service-group{margin-top:8px;border:1px solid #e8dcda;border-radius:12px;overflow:hidden}.service-group summary{display:flex;justify-content:space-between;padding:13px 15px;background:#f8f3f1;cursor:pointer;font-weight:800}.service-group summary span{color:var(--muted);font-size:10px}.service-group .option-grid{padding:12px}.price-editor{display:grid;grid-template-columns:1fr 1fr;gap:18px}.price-editor h3{margin:0 0 12px;font-size:14px}.upload-zone{min-height:110px;display:grid;place-content:center;justify-items:center;padding:20px;border:1px dashed #bda6aa;border-radius:14px;background:#fbf7f6;cursor:pointer;text-align:center}.upload-zone input{position:absolute;width:1px;height:1px;opacity:0}.upload-zone strong{color:var(--wine)}.upload-zone span{margin-top:5px;color:var(--muted);font-size:10px}.image-previews{margin-top:12px;display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.image-previews>div{position:relative;aspect-ratio:4/5;background:#eee center/cover;border-radius:10px}.image-previews button{position:absolute;right:5px;top:5px;width:25px;height:25px;color:#fff;background:rgba(0,0,0,.7);border:0;border-radius:50%}.image-previews span{position:absolute;left:5px;bottom:5px;padding:3px 6px;color:#fff;background:var(--wine);border-radius:5px;font-size:8px}.modal-actions{position:sticky;bottom:0;display:grid;grid-template-columns:160px 1fr;gap:10px;padding:16px 26px;background:rgba(255,255,255,.97);border-top:1px solid #e8dcda;backdrop-filter:blur(12px)}.secondary-button{min-height:48px;padding:12px 18px;color:#5d4d50;background:#f3ecea;border:1px solid #dfd1cf;border-radius:10px;font-weight:800}
.service-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px}.service-option{min-width:0;min-height:48px;display:grid;grid-template-columns:minmax(0,1fr) 118px;align-items:center;gap:8px;padding:7px 8px 7px 11px;background:#f8f3f1;border:1px solid #ece0de;border-radius:10px}.service-option>label:first-child{min-width:0;display:flex;align-items:center;gap:8px;font-size:11px}.service-option>label:first-child span{overflow:hidden;text-overflow:ellipsis}.service-option input[type=checkbox]{flex:0 0 auto;accent-color:var(--wine)}.service-price{height:34px;display:flex;align-items:center;overflow:hidden;background:#fff;border:1px solid #ded0cf;border-radius:8px}.service-price span{flex:0 0 auto;padding-left:8px;color:var(--muted);font-size:10px}.service-price input{width:100%;min-width:0;height:100%;padding:6px;border:0;outline:0;font-size:11px}

@media(max-width:980px){
  .main { width:min(var(--main),calc(100% - 40px)); }
  .hero-grid { grid-template-columns:1fr; }
  .hero h1 { font-size:58px; }
  .hero-feature { min-height:500px; }
}
@media(max-width:680px){
  .main { width:min(100% - 24px,var(--main)); }
  .header-row { min-height:66px; }
  .logo-mark { width:30px; height:30px; }
  .logo-word { font-size:27px; }
  .category-nav { top:0; }
  .category-scroll { min-height:54px; }
  .hero { padding:35px 0 32px; }
  .hero-grid { gap:30px; }
  .hero-copy { padding:8px 0 0; }
  .hero h1 { margin:15px 0 19px; font-size:48px; line-height:.94; }
  .hero-copy>p { font-size:15px; line-height:1.6; }
  .hero-search { min-height:58px; margin-top:24px; border-radius:15px; }
  .hero-search button { min-height:46px; }
  .hero-facts { gap:10px 18px; }
  .hero-feature { min-height:460px; border-radius:110px 110px 22px 22px; }
  .hero-feature::before { border-radius:101px 101px 15px 15px; }
  .hero-feature>div { inset:auto 26px 28px; }
  .hero-feature strong { font-size:37px; }
  .home-section,.services { padding-top:58px; }
  .listing-head { margin-bottom:20px; }
  .listing-head h2 { font-size:34px; }
  .model-card { border-radius:16px; }
  .model-card::after { bottom:139px; }
  .model-info { min-height:139px; padding:11px; }
  .name-line h3 { font-size:17px; }
  .work-status { bottom:142px; }
  .ad-banner { margin-top:58px; padding:28px; }
  .ad-banner::after,.ad-monogram { display:none; }
  .ad-banner strong { font-size:26px; }
  .seo-panel { margin-top:58px; padding:27px 22px; border-radius:22px; }
  .seo-copy h2 { font-size:35px; }
  .catalog-head h1 { font-size:39px; }
  .detail { gap:24px; }
  .detail-photo { min-height:76vh; border-radius:18px 72px 18px 18px; }
  .detail-photo::after { border-radius:12px 64px 12px 12px; }
  .detail-title h1 { font-size:49px; }
  .mobile-nav { background:rgba(252,250,248,.94); border-color:#e4d7d5; }
  .mobile-nav .active { color:var(--wine); }
  .dashboard-head-actions{width:100%}.admin-preview,.admin-logout{flex:1;justify-content:center}.admin-tabs{overflow-x:auto}.admin-panel-head{align-items:stretch;flex-direction:column}.admin-panel-head .primary-button{width:100%}.banner-row{grid-template-columns:1fr}.banner-preview{min-height:130px}.banner-row .admin-actions{grid-column:auto}.edit-modal--wide{width:100%;max-height:100vh;height:100vh;border-radius:0}.modal-sticky{padding:18px}.editor-sections{padding:14px}.editor-section{padding:14px}.form-grid,.form-grid--four,.price-editor{grid-template-columns:1fr}.option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.image-previews{grid-template-columns:repeat(3,1fr)}.modal-actions{grid-template-columns:1fr 1.5fr;padding:12px 14px}.service-group .option-grid{grid-template-columns:1fr}
}

/* Admin workspace: quick shift management and compact daily operations. */
.admin-overview{margin-top:28px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-overview>div{padding:18px 20px;background:#fff;border:1px solid #e6d9d7;border-radius:16px;box-shadow:0 8px 24px rgba(50,25,31,.035)}.admin-overview span,.admin-overview strong{display:block}.admin-overview span{color:var(--muted);font-size:11px;font-weight:700}.admin-overview strong{margin-top:6px;font-family:Georgia,serif;font-size:30px;font-weight:500}.admin-overview .shift{color:#17623e;background:#effaf3;border-color:#caead7}.admin-toolbar{margin-bottom:10px;display:flex;align-items:end;justify-content:space-between;gap:16px;padding:14px;background:#f7f1ef;border:1px solid #e7d9d7;border-radius:16px}.admin-search{min-width:260px;display:grid;gap:6px;color:#715e63;font-size:10px;font-weight:800}.admin-search input{min-height:43px;padding:10px 13px;background:#fff;border:1px solid #dbcac8;border-radius:10px;font:inherit;font-size:12px}.admin-filters{display:flex;flex-wrap:wrap;gap:6px}.admin-filters button{min-height:40px;padding:8px 13px;color:#705f63;background:#fff;border:1px solid #dfd0ce;border-radius:999px;font-size:11px;font-weight:800}.admin-filters button.active{color:#fff;background:var(--wine);border-color:var(--wine)}.admin-save-state{min-height:24px;margin:0 2px 8px;color:#8a7b7e;font-size:10px;text-align:right}.admin-save-state[data-state="saving"]{color:#806a19}.admin-save-state[data-state="saved"]{color:#187047}.admin-save-state[data-state="error"]{color:#a22d2d}.admin-row{grid-template-columns:92px minmax(230px,1fr) 150px minmax(240px,auto);gap:14px}.admin-row.is-hidden{background:#fcf9f8;opacity:.8}.admin-photo{position:relative;width:92px}.shift-dot{position:absolute;right:6px;bottom:6px;width:13px;height:13px;background:#aaa;border:3px solid #fff;border-radius:50%;box-shadow:0 2px 6px rgba(0,0,0,.2)}.shift-dot.online{background:#24ad69}.admin-statuses{display:flex;flex-wrap:wrap;gap:6px}.status-pill.on-shift{color:#11663d;background:#e4f8ec}.status-pill.off-shift{color:#685f61;background:#eee9e8}.admin-main h2{margin-top:8px}.admin-quick{display:flex}.shift-toggle{width:100%;min-height:58px;padding:9px 12px;color:#64585a;background:#f5efed;border:1px solid #ded2d0;border-radius:12px;text-align:left}.shift-toggle span,.shift-toggle small{display:block}.shift-toggle span{font-weight:900}.shift-toggle small{margin-top:3px;color:#8b7c7f;font-size:9px}.shift-toggle.active{color:#12663d;background:#e6f8ed;border-color:#bfe5cd}.admin-actions{max-width:310px}.admin-actions a,.admin-actions button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;padding:7px 9px;background:var(--soft);border:1px solid var(--line);border-radius:8px;color:#5b4c50;font-size:10px}.admin-actions .accent{color:#fff;background:var(--wine);border-color:var(--wine)}.admin-actions .more-action{display:none}.admin-empty strong,.admin-empty span{display:block}.admin-empty span{margin-top:7px}

@media(max-width:1100px){.admin-row{grid-template-columns:82px 1fr 140px}.admin-photo{width:82px}.admin-actions{grid-column:1/-1;max-width:none;justify-content:flex-start}.admin-actions .more-action{display:inline-flex}}
@media(max-width:680px){.dashboard{padding-top:24px}.dashboard-head h1{font-size:34px}.admin-overview{grid-template-columns:1fr 1fr;gap:8px}.admin-overview>div{padding:14px}.admin-overview strong{font-size:25px}.admin-toolbar{align-items:stretch;flex-direction:column}.admin-search{min-width:0}.admin-filters{display:grid;grid-template-columns:1fr 1fr}.admin-filters button{padding-inline:8px}.admin-row{grid-template-columns:68px minmax(0,1fr);padding:10px}.admin-photo{width:68px}.admin-main h2{font-size:17px}.admin-main p{line-height:1.45}.admin-extras{display:none}.admin-quick{grid-column:1/-1}.shift-toggle{text-align:center}.admin-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.admin-actions a,.admin-actions button{min-height:42px}.admin-actions .danger{grid-column:1/-1}.admin-panel-head{margin-top:22px}.admin-save-state{text-align:left}}

/* Keep mobile card rows content-sized in Safari. Without explicit row sizing,
   a stale/intermediate stylesheet could stretch the first row to the viewport. */
@media(max-width:680px){
  .card-block,
  .card-block.four {
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:max-content;
    align-items:start;
  }
  .model-card {
    height:auto;
    min-height:0;
    align-self:start;
  }
  .model-photo {
    display:block;
    width:100%;
    height:auto;
    min-height:0;
    aspect-ratio:4 / 5.3;
  }
  .model-info {
    height:auto;
  }
}

/* The visual redesign overrides the original detail grid later in this file.
   Stack it until both minimum columns fit, so phones and narrow tablets never
   push the profile content beside/off the photo. */
@media(max-width:930px){
  .detail {
    grid-template-columns:minmax(0,1fr);
  }
  .detail-gallery,
  .detail-content,
  .detail-photo {
    min-width:0;
    width:100%;
  }
  .detail-gallery {
    position:static;
  }
}
@media(max-width:680px){
  html,
  body {
    max-width:100%;
    overflow-x:hidden;
  }
  .detail {
    width:calc(100% - 24px);
  }
  .hero-copy,
  .hero-feature,
  .catalog-results {
    min-width:0;
  }
}

/* Profile price matrix, MAX contact and the dark honeycomb brand refresh. */
:root {
  --black:#111213;
  --wine:#202224;
  --wine-dark:#111213;
}
h1,h2,.hero-feature strong { font-family:Georgia,"Times New Roman",serif; }
.logo-word {
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:27px;
  font-style:normal;
  font-weight:850;
  letter-spacing:.12em;
}
.logo-mark {
  color:var(--gold);
  background:#181a1b;
  border:1px solid rgba(214,169,99,.55);
  border-radius:10px;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:17px;
  font-style:normal;
  font-weight:900;
  box-shadow:none;
}
.site-header,.hero,.footer,.ad-banner {
  background-color:#111213;
  background-image:
    linear-gradient(30deg,rgba(255,255,255,.06) 12%,transparent 12.5%,transparent 87%,rgba(255,255,255,.06) 87.5%,rgba(255,255,255,.06)),
    linear-gradient(150deg,rgba(255,255,255,.06) 12%,transparent 12.5%,transparent 87%,rgba(255,255,255,.06) 87.5%,rgba(255,255,255,.06)),
    linear-gradient(30deg,rgba(255,255,255,.06) 12%,transparent 12.5%,transparent 87%,rgba(255,255,255,.06) 87.5%,rgba(255,255,255,.06)),
    linear-gradient(150deg,rgba(255,255,255,.06) 12%,transparent 12.5%,transparent 87%,rgba(255,255,255,.06) 87.5%,rgba(255,255,255,.06)),
    linear-gradient(60deg,rgba(214,169,99,.045) 25%,transparent 25.5%,transparent 75%,rgba(214,169,99,.045) 75%,rgba(214,169,99,.045));
  background-position:0 0,0 0,22px 38px,22px 38px,0 0;
  background-size:44px 76px;
}
.hero::before { opacity:.16; }
.add-button,.filter-open,.primary-button,.duration-pills button.active {
  background:#232527;
  box-shadow:none;
}
.add-button:hover,.filter-open:hover,.primary-button:hover { background:#303335; }
.contact-actions { grid-template-columns:repeat(3,minmax(0,1fr)); }
.contact-button.max { color:#fff; background:#5b35d5; }
.contact-button.phone { color:#fff; background:#232527; }
.max-sign { width:23px; height:23px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.55); border-radius:7px; font-size:12px; font-weight:950; }
.booking-card { padding:22px; }
.booking-heading { display:flex; align-items:end; justify-content:space-between; gap:16px; }
.booking-heading span { color:var(--ink); font-family:Georgia,"Times New Roman",serif; font-size:26px; }
.booking-heading strong { color:var(--muted); font-size:10px; font-weight:700; text-align:right; }
.price-columns { margin-top:17px; display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.price-column { overflow:hidden; background:#fff; border:1px solid #e5d9d7; border-radius:14px; }
.price-column h3 { margin:0; padding:13px 14px; color:#fff; background:#202224; font-size:13px; letter-spacing:.02em; }
.price-list>div { min-height:45px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 14px; border-top:1px solid #eee5e3; }
.price-list>div:first-child { border-top:0; }
.price-list span { color:var(--muted); font-size:11px; }
.price-list strong { color:var(--ink); font-size:13px; }
.extras-price-list { margin-top:14px; display:grid; gap:7px; }
.extras-price-list>div { min-height:47px; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:10px 13px; background:#f8f3f1; border:1px solid #eee3e1; border-radius:11px; }
.extras-price-list a { color:#514547; font-size:12px; font-weight:750; }
.extras-price-list strong { flex:0 0 auto; color:var(--ink); font-size:12px; }
.service-section{margin-top:18px}.service-section h3{margin:0 0 9px;color:#4b3037;font-size:14px;letter-spacing:.03em;text-transform:uppercase}.service-name{display:flex;align-items:center;gap:9px;color:#514547;font-size:12px;font-weight:750}.service-name b{color:#21a35b;font-size:16px}.extras-price-list strong{padding:5px 8px;color:#166d3e;background:#ecfff3;border:1px solid #a7e4bf;border-radius:7px}

@media(max-width:680px){
  .logo-word { font-size:22px; letter-spacing:.1em; }
  .contact-actions { grid-template-columns:1fr; }
  .booking-card { padding:16px; }
  .booking-heading { align-items:start; flex-direction:column; gap:4px; }
  .booking-heading strong { text-align:left; }
  .price-columns { grid-template-columns:1fr; }
  .price-list>div { min-height:43px; }
  .service-option-grid{grid-template-columns:1fr}.service-option{grid-template-columns:minmax(0,1fr) 112px}
}
/* Public mobile navigation contains three supported destinations. */
.mobile-nav { grid-template-columns:repeat(3,1fr); }
