/* MOSAIC — чёрная «стена» тумб без зазоров (цветные), подпись появляется поверх при наведении,
   лаймовый акцент, крупные 5 новых на главной. Поверх theme-amber.css (общая разметка). */
:root{--bg:#000;--surface:#0c0c0c;--surface-2:#161616;--line:#232323;--text:#f4f4f4;--muted:#8c8c8c;--accent:#c6ff00;--accent-2:#9ed000;--ab-ink:#000;
--t2:#d2d2d2;--t3:#c4c4c4;--t4:#bdbdbd;--t5:#cfcfcf;--t6:#e6e6e6;--ph:#6d6d6d;--hi:#fff;--acc-h:#dcff5c;--acc-b:#dcff5c;--hdr:rgba(0,0,0,.84);--foot:#000;--sugg:#0c0c0c;
--acc-a12:rgba(198,255,0,.1);--acc-a13:rgba(198,255,0,.1);--acc-a15:rgba(198,255,0,.15);--acc-a45:rgba(198,255,0,.4);--acc2-a04:rgba(198,255,0,.03);
--font:'Space Grotesk','Poppins',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;--pad:24px}
.shell{max-width:1920px;padding-inline:var(--pad)}
.topbar{border-bottom:1px solid #151515}
.brand.sk-logo{flex:none;max-width:none;overflow:visible;font:700 22px/1 var(--font);letter-spacing:.3em;text-transform:uppercase;color:#fff}
.brand.sk-logo span{color:inherit;background:none;margin:0;padding:0;font:inherit}
.brand.sk-logo .sk-b{color:var(--accent)}
.brand.sk-logo .sk-dot{display:none}
.nav a,.nav summary{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#bdbdbd}
.nav a:hover,.nav a[aria-current]{background:none;color:#fff;box-shadow:inset 0 -2px var(--accent)}
.search{background:transparent;border:0;border-bottom:1px solid #333}
.search:focus-within{box-shadow:none;border-color:var(--accent)}
.search button{border-left:0!important}
.age-badge{border-color:#444;color:#bdbdbd}
/* стена тумб */
.grid,.related-grid{gap:0!important}
.grid:has(.card>a>.caption){row-gap:0}
.frame{background:#111;overflow:hidden}
.frame img{transition:filter .35s,transform .5s}
@media(hover:hover){.card a:hover .frame img{transform:scale(1.03)}}
.ab-ov{padding:60px 14px 13px;background:linear-gradient(transparent,rgba(0,0,0,.55) 40%,rgba(0,0,0,.94));opacity:0;transition:opacity .25s}
.card a:hover .ab-ov,.card a:focus-visible .ab-ov{opacity:1}
@media(hover:none){.ab-ov{opacity:1;padding:34px 8px 7px}.ab-ov small,.ab-ov b{display:none!important}.ab-ov .caption{font-size:12px}}
.ab-ov small{display:block;color:var(--accent);font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
.ab-ov b{display:block;margin-top:3px;color:#fff;font-size:17px;font-weight:700;line-height:1.15}
.ab-ov .caption{margin-top:2px;color:#cfcfcf;font-size:13px;font-weight:400}
.card a:hover .ab-ov .caption{color:#fff}
/* главная */
.mz-hero,.mz-filter,.mz-grid{margin-inline:calc(var(--pad) * -1)}
.mz-hero{display:grid;grid-template-columns:2fr 1fr 1fr;border:0}
.mz-hero>.card:first-child{grid-row:span 2}
.mz-hero>.card:first-child .frame{height:100%;aspect-ratio:auto}
.mz-hero .ab-ov{opacity:1;padding:90px 18px 18px}
.mz-hero .ab-ov b{font-size:22px}
.mz-hero>.card:first-child .ab-ov{padding:120px 24px 24px}
.mz-hero>.card:first-child .ab-ov b{font-size:clamp(28px,2.6vw,40px);letter-spacing:-.02em}
.mz-hero>.card:first-child .ab-ov .caption{font-size:15px}
.mz-filter{display:flex;align-items:center;gap:8px;overflow-x:auto;scrollbar-width:none;padding:14px var(--pad);border-bottom:1px solid #151515}
.mz-filter::-webkit-scrollbar{display:none}
.mz-filter span{flex:none;margin-right:8px;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase}
.mz-filter a{flex:none;padding:5px 12px;border:1px solid #333;color:#ddd;font-size:13px}
.mz-filter a:hover{border-color:var(--accent);color:#fff}
.mz-filter a[aria-current]{background:var(--accent);border-color:var(--accent);color:#000}
.mz-sec{margin-top:8px}
.mz-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 0 14px}
.mz-head h1,.mz-head h2{margin:0;font-size:14px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.mz-head h1 small{color:var(--muted);font-size:1em;font-weight:500}
.mz-head>a{color:var(--muted);font-size:12px;letter-spacing:.18em;text-transform:uppercase}
.mz-head>a:hover{color:var(--accent)}
.mz-head .sort-count{display:none}
.mz-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}
@media(min-width:1301px){.mz-grid>.mz-x{display:none}}
.mz-lede{max-width:880px;margin:30px 0 0;color:#a9a9a9;font-size:15px}
.mz-sec .ab-stars{grid-template-columns:repeat(8,minmax(0,1fr));gap:0;margin-inline:calc(var(--pad) * -1)}
.mz-sec .ab-stars li{position:relative}
.mz-sec .ab-stars b{position:absolute;inset:auto 0 0;margin:0;padding:40px 10px 9px;background:linear-gradient(transparent,rgba(0,0,0,.9));font-size:13px}
.mz-sec .ab-stars small{display:none}
.mz-sec .ab-stars a:hover img{filter:none}
/* прочее */
.sort-links{background:none;border-color:#333}
.sort-links a[aria-current]{background:var(--accent);color:#000}
.ab-head h2,.related-head h2{font-size:14px;letter-spacing:.22em;text-transform:uppercase}
.ab-head>a,.related-head a{font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.ab-sponsors a{background:#0a0a0a}
.footer{background:#000;border-top:1px solid #151515}
.footer .brand.sk-logo{font-size:20px}
.ab-fh{letter-spacing:.24em}
.ab-photos .photo a{background:#111}
@media(max-width:1300px){.mz-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.mz-sec .ab-stars{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){
:root{--pad:12px}
.shell{padding-inline:var(--pad)!important}
.brand.sk-logo{font-size:18px;letter-spacing:.24em}
.mz-hero{grid-template-columns:1fr 1fr}
.mz-hero>.card:first-child{grid-column:1/-1;grid-row:auto}
.mz-hero>.card:first-child .frame{aspect-ratio:2/3}
.mz-hero .ab-ov{padding:40px 10px 10px}.mz-hero .ab-ov b{font-size:15px}.mz-hero .ab-ov .caption{display:none}
.mz-hero .ab-ov small,.mz-hero .ab-ov b{display:block!important}
.mz-hero>.card:first-child .ab-ov b{font-size:26px}.mz-hero>.card:first-child .ab-ov .caption{display:block}
.mz-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.grid,.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.mz-sec .ab-stars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.mz-head{flex-wrap:wrap}
}

/* ── Подвал Mosaic: крупный логотип + разделы, три колонки плашек, полоса снизу ── */
.footer.mz-foot{margin-top:40px;padding:0;border-top:1px solid #1c1c1c;background:#000}
.footer .mz-fhero{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding-top:46px;padding-bottom:30px;border-bottom:1px solid #1c1c1c}
.mz-fbrand .brand.sk-logo{font-size:clamp(30px,4.4vw,64px);letter-spacing:.22em;line-height:1}
.mz-fbrand p{max-width:440px;margin:16px 0 0;color:#8c8c8c;font-size:13.5px;line-height:1.6}
.mz-fnav{display:flex;flex-wrap:wrap;gap:6px 26px}
.mz-fnav a{color:#f4f4f4;font-size:15px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;box-shadow:inset 0 -2px transparent;transition:box-shadow .15s,color .15s}
.mz-fnav a:hover{color:var(--accent);box-shadow:inset 0 -2px var(--accent)}
.footer .mz-fgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.mz-fgrid section{padding:26px 26px 30px 0}
.mz-fgrid section+section{padding-left:26px;border-left:1px solid #1c1c1c}
.mz-fh{display:flex;align-items:baseline;gap:10px;margin:0 0 14px;color:#f4f4f4;font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.mz-fh span{color:var(--accent);font-weight:700}
.mz-fh a{margin-left:auto;color:#6d6d6d;font-size:11px;letter-spacing:.16em}
.mz-fh a:hover{color:var(--accent)}
.mz-chips{display:flex;flex-wrap:wrap;gap:6px}
.mz-chips a{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border:1px solid #262626;color:#cfcfcf;font-size:13px;line-height:1.2;transition:border-color .15s,color .15s,background .15s}
.mz-chips a small{color:#6d6d6d;font-size:11px}
.mz-chips a:hover{border-color:var(--accent);background:var(--accent);color:#000}
.mz-chips a:hover small{color:#000}
.mz-foot .site-friends{margin-top:0;border-top:1px solid #1c1c1c}
.mz-foot .site-friends a{background:transparent;border-color:#262626}
.footer .mz-fbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px;padding-top:18px;padding-bottom:22px;border-top:1px solid #1c1c1c;color:#6d6d6d;font-size:12px}
.mz-fbar nav{display:flex;flex-wrap:wrap;gap:4px 18px}
.mz-fbar a{color:#9a9a9a;letter-spacing:.08em;text-transform:uppercase;font-size:11.5px}
.mz-fbar a:hover{color:var(--accent)}
@media(max-width:1000px){.footer .mz-fhero{flex-direction:column;align-items:flex-start}.footer .mz-fgrid{grid-template-columns:1fr}.mz-fgrid section,.mz-fgrid section+section{padding:22px 0;border-left:0;border-top:1px solid #1c1c1c}.mz-fgrid section:first-child{border-top:0}}
@media(max-width:760px){.footer .mz-fhero{padding-top:32px;padding-bottom:22px}.mz-fnav{gap:8px 18px}.mz-fnav a{font-size:13px}.footer .mz-fbar{flex-direction:column;align-items:flex-start}}
.mz-foot .site-friends{padding-bottom:24px}

/* списки моделей / спонсоров: имя и число — поверх фото внизу, на градиенте (в стене без зазоров подпись под фото «липла» к следующему ряду) */
.card>a>.caption{position:absolute;inset:auto 0 0;z-index:1;padding:46px 12px 11px;background:linear-gradient(transparent,rgba(0,0,0,.6) 45%,rgba(0,0,0,.92));color:#fff;font-size:15px;font-weight:600;line-height:1.25;pointer-events:none}
.card>a>.caption small{margin-top:3px;color:var(--accent);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.card a:hover>.caption{color:var(--accent)}
.grid:has(.card>a>.caption){row-gap:0}
@media(max-width:760px){.card>a>.caption{padding:34px 9px 8px;font-size:13.5px}.card>a>.caption small{font-size:10px;letter-spacing:.1em}}
