/*
Theme Name: OnlyHub
Theme URI: https://onlyhub.club/
Author: OnlyHub
Description: Lightweight presentation theme for the OnlyHub creator directory.
Version: 2.3.3
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: onlyhubmodels
*/

/* OnlyHub 1.0 — premium editorial design system. */

:root {
  --ogh-bg: #f7f5f2;
  --ogh-surface: #ffffff;
  --ogh-text: #111225;
  --ogh-muted: #6f7280;
  --ogh-primary: #6c4dff;
  --ogh-primary-dark: #5637ef;
  --ogh-pink: #ff5c73;
  --ogh-pink-soft: #fff0f6;
  --ogh-violet-soft: #f0eeff;
  --ogh-border: #e7e8f1;
  --ogh-free: #168f5b;
  --ogh-featured: #f59e0b;
  --ogh-sponsored: #e8790c;
  --ogh-shadow: 0 18px 50px rgba(45, 38, 96, .08);
  --ogh-radius: 22px;
  --ogh-container: 1360px;
}


* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ogh-text);
  background: var(--ogh-bg);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.55;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, select { font: inherit; }
.ogh-container { width: min(calc(100% - 32px), var(--ogh-container)); margin-inline: auto; }
.screen-reader-text {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}

.site-header {
  position: sticky; top: 0; z-index: 50;
  border-bottom: 1px solid rgba(231, 232, 241, .9);
  background: rgba(255, 255, 255, .9);
  backdrop-filter: blur(18px);
}
.header-inner { min-height: 74px; display: flex; align-items: center; gap: 28px; }
.brand { display: inline-flex; align-items: center; gap: 10px; font-size: 22px; font-weight: 850; }
.ohm-brand-logo { display: block; width: auto; height: 46px; }
.footer-brand .ohm-brand-logo { height: 42px; }
.custom-logo-link { display: inline-flex; align-items: center; }
.custom-logo { width: auto; max-width: 330px; height: 46px; object-fit: contain; }
.brand-mark {
  width: 38px; height: 38px; display: grid; place-items: center; border-radius: 13px;
  color: white; background: linear-gradient(135deg, var(--ogh-pink), var(--ogh-primary));
  box-shadow: 0 8px 24px rgba(108, 99, 255, .28);
}
.brand-accent { color: var(--ogh-pink); }
.desktop-nav { display: flex; align-items: center; gap: 22px; margin-left: auto; font-weight: 700; }
.desktop-nav .menu-item { list-style: none; }
.desktop-nav a:hover { color: var(--ogh-primary); }
.header-action {
  padding: 11px 17px; color: white; border-radius: 12px;
  background: var(--ogh-primary);
}
.menu-toggle {
  display: none; width: 44px; height: 44px; margin-left: auto; border: 1px solid var(--ogh-border);
  border-radius: 13px; background: white; cursor: pointer;
}

.hero {
  position: relative; overflow: hidden; padding: 92px 0 72px;
  background:
    radial-gradient(circle at 12% 12%, rgba(255, 92, 147, .12), transparent 30%),
    radial-gradient(circle at 86% 18%, rgba(108, 99, 255, .16), transparent 32%),
    linear-gradient(180deg, #fbfaff 0%, #f3f5ff 100%);
}
.hero-copy { max-width: 850px; margin: 0 auto; text-align: center; }
.eyebrow {
  display: inline-flex; align-items: center; gap: 8px; padding: 7px 12px;
  color: var(--ogh-primary-dark); background: var(--ogh-violet-soft); border-radius: 999px;
  font-size: 13px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em;
}
.hero h1 { margin: 20px auto 16px; font-size: clamp(42px, 6vw, 72px); line-height: 1.02; letter-spacing: -.045em; }
.hero h1 span { color: var(--ogh-pink); }
.hero-subtitle { max-width: 650px; margin: 0 auto; color: var(--ogh-muted); font-size: clamp(17px, 2vw, 21px); }

.search-panel {
  max-width: 1020px; margin: 38px auto 0; padding: 16px;
  border: 1px solid rgba(255, 255, 255, .8); border-radius: 24px;
  background: rgba(255, 255, 255, .94); box-shadow: var(--ogh-shadow);
}
.search-row { display: flex; gap: 10px; }
.search-input-wrap { position: relative; flex: 1; }
.search-input-wrap svg { position: absolute; left: 17px; top: 50%; width: 21px; transform: translateY(-50%); color: var(--ogh-muted); }
.search-field {
  width: 100%; height: 56px; padding: 0 18px 0 50px;
  border: 1px solid var(--ogh-border); border-radius: 15px; color: var(--ogh-text); background: #fff;
  outline: none;
}
.search-field:focus { border-color: var(--ogh-primary); box-shadow: 0 0 0 4px rgba(108, 99, 255, .1); }
.primary-button {
  min-width: 130px; border: 0; border-radius: 15px; color: white;
  background: var(--ogh-primary); font-weight: 800; cursor: pointer;
}
.primary-button:hover { background: var(--ogh-primary-dark); }
.filter-row { display: flex; gap: 9px; flex-wrap: wrap; margin-top: 11px; }
.filter-chip {
  min-height: 42px; padding: 0 14px; display: inline-flex; align-items: center; gap: 7px;
  border: 1px solid var(--ogh-border); border-radius: 12px; background: white; font-weight: 700;
}
.filter-chip.is-free { color: var(--ogh-pink); background: var(--ogh-pink-soft); }
.quick-links { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.quick-links a {
  padding: 9px 14px; border: 1px solid var(--ogh-border); border-radius: 999px;
  background: rgba(255, 255, 255, .72); font-weight: 750;
}

.section { padding: 70px 0; }
.section.alt { background: white; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 25px; }
.section-heading h2 { margin: 0; font-size: clamp(28px, 3vw, 40px); letter-spacing: -.03em; }
.section-heading p { max-width: 650px; margin: 6px 0 0; color: var(--ogh-muted); }
.text-link { color: var(--ogh-primary); font-weight: 800; white-space: nowrap; }

.creator-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.creator-card {
  position: relative; overflow: hidden; display: flex; flex-direction: column; border: 1px solid var(--ogh-border);
  border-radius: 20px; background: white; box-shadow: 0 10px 32px rgba(41, 37, 75, .06);
  transition: transform .22s ease, box-shadow .22s ease;
}
.creator-card:hover { transform: translateY(-4px); box-shadow: 0 20px 44px rgba(41, 37, 75, .12); }
.creator-media { position: relative; aspect-ratio: 3 / 4; overflow: hidden; background: var(--ogh-violet-soft); }
.creator-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.creator-card:hover .creator-media img { transform: scale(1.025); }
.creator-slides{position:absolute;inset:0}.creator-slide{position:absolute;inset:0;opacity:0;transition:opacity .22s ease;pointer-events:none}.creator-slide.is-active{opacity:1}.creator-slide img{width:100%;height:100%;object-fit:cover}.creator-slider-button{position:absolute;z-index:4;top:50%;width:34px;height:34px;display:grid;place-items:center;transform:translateY(-50%);border:0;border-radius:50%;color:#181821;background:rgba(255,255,255,.9);font-size:22px;line-height:1;cursor:pointer;opacity:0;transition:opacity .2s ease}.creator-card:hover .creator-slider-button,.creator-slider-button:focus{opacity:1}.creator-slider-prev{left:9px}.creator-slider-next{right:9px}.creator-slider-count{position:absolute;z-index:4;left:50%;bottom:12px;transform:translateX(-50%);padding:4px 8px;border-radius:999px;color:white;background:rgba(17,17,26,.62);font-size:10px;font-weight:800}
.badge-row { position: absolute; inset: 12px 12px auto; display: flex; justify-content: space-between; gap: 8px; }
.badge {
  display: inline-flex; align-items: center; padding: 5px 9px; color: white;
  border-radius: 999px; font-size: 11px; font-weight: 850; letter-spacing: .02em;
  box-shadow: 0 5px 15px rgba(0, 0, 0, .12);
}
.badge.featured { background: var(--ogh-featured); }
.badge.sponsored { background: var(--ogh-sponsored); }
.badge.free { margin-left: auto; background: var(--ogh-free); }
.favorite {
  position: absolute; right: 12px; bottom: 12px; width: 38px; height: 38px;
  display: grid; place-items: center; border: 0; border-radius: 50%; background: rgba(255,255,255,.94);
  color: var(--ogh-pink); cursor: pointer;
}
.creator-body { flex: 1; padding: 17px; display: flex; flex-direction: column; }
.creator-name { margin: 0; font-size: 19px; line-height: 1.2; }
.creator-handle { margin: 3px 0 10px; color: var(--ogh-muted); font-size: 14px; }
.creator-meta { display: flex; justify-content: space-between; gap: 8px; color: var(--ogh-muted); font-size: 13px; }
.tag-list { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 12px; }
.tag-list a { padding: 5px 8px; border-radius: 999px; background: var(--ogh-bg); font-size: 11px; font-weight: 750; }
.card-button {
  width: 100%; min-height: 42px; margin-top: auto; display: grid; place-items: center;
  border-radius: 12px; color: white; background: var(--ogh-primary); font-weight: 800;
}

.taxonomy-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.taxonomy-card {
  min-height: 160px; padding: 20px; display: flex; flex-direction: column; justify-content: end;
  border: 1px solid var(--ogh-border); border-radius: 20px;
  background: linear-gradient(145deg, white, var(--ogh-violet-soft));
}
.taxonomy-card:nth-child(2n) { background: linear-gradient(145deg, white, var(--ogh-pink-soft)); }
.taxonomy-card strong { font-size: 19px; }
.taxonomy-card span { color: var(--ogh-muted); }
.pill-cloud { display: flex; flex-wrap: wrap; gap: 10px; padding: 24px; border-radius: var(--ogh-radius); background: white; box-shadow: var(--ogh-shadow); }
.pill-cloud a { padding: 9px 13px; border: 1px solid var(--ogh-border); border-radius: 999px; background: #fafaff; }
.pill-cloud small { margin-left: 5px; color: var(--ogh-muted); }

.seo-panel {
  display: grid; grid-template-columns: 1.3fr .7fr; gap: 32px; padding: 36px;
  border: 1px solid var(--ogh-border); border-radius: var(--ogh-radius); background: white;
}
.seo-panel h2 { margin-top: 0; font-size: 32px; }
.faq-list details { border-top: 1px solid var(--ogh-border); }
.faq-list summary { padding: 16px 0; font-weight: 800; cursor: pointer; }
.faq-list p { margin: 0 0 16px; color: var(--ogh-muted); }

.site-footer { padding: 60px 0 95px; border-top: 1px solid var(--ogh-border); background: #fff; }
.footer-grid { display: grid; grid-template-columns: 1.5fr repeat(3, 1fr); gap: 38px; }
.footer-brand p { max-width: 390px; color: var(--ogh-muted); }
.footer-column h3 { margin-top: 0; font-size: 15px; }
.footer-column a { display: block; margin: 10px 0; color: var(--ogh-muted); }
.footer-bottom { margin-top: 40px; padding-top: 20px; border-top: 1px solid var(--ogh-border); color: var(--ogh-muted); font-size: 13px; line-height: 1.65; }
.footer-bottom p { margin: 0 0 8px; }
.footer-bottom p:last-child { margin-bottom: 0; max-width: 1180px; }
.footer-bottom a { color: var(--ogh-primary); font-weight: 700; }

.mobile-nav {
  display: none; position: fixed; z-index: 60; inset: auto 0 0; padding: 9px 12px calc(9px + env(safe-area-inset-bottom));
  border-top: 1px solid var(--ogh-border); background: rgba(255,255,255,.96); backdrop-filter: blur(16px);
}
.mobile-nav a { flex: 1; display: grid; place-items: center; gap: 2px; color: var(--ogh-muted); font-size: 11px; font-weight: 750; }
.mobile-nav span { font-size: 19px; }

.site-main-basic { min-height: 60vh; padding: 60px 0; }
.content-card { padding: 34px; border: 1px solid var(--ogh-border); border-radius: var(--ogh-radius); background: white; }
.ogh-legal-page .content-card { max-width: 940px; padding: clamp(28px,5vw,64px); box-shadow: var(--ogh-shadow); }
.ogh-legal-page h1 { margin: 0 0 28px; font-size: clamp(38px,6vw,64px); letter-spacing: -.045em; }
.ogh-legal-page h2 { margin: 38px 0 12px; font-size: clamp(22px,3vw,29px); letter-spacing: -.025em; }
.ogh-legal-page p,.ogh-legal-page li { color: #55596b; font-size: 16px; line-height: 1.75; }
.ogh-legal-page ul,.ogh-legal-page ol { padding-left: 24px; }
.ogh-legal-page li { margin: 7px 0; }
.ogh-legal-page a { color: var(--ogh-primary); font-weight: 750; text-decoration: underline; text-underline-offset: 3px; }
.ogh-legal-lead { max-width: 780px; margin-bottom: 22px; color: #27293b!important; font-size: clamp(18px,2.5vw,22px)!important; line-height: 1.55!important; }
.ogh-legal-note { margin: 22px 0 30px; padding: 17px 20px; border: 1px solid #dcd8ff; border-radius: 14px; color: #4a4764; background: #f5f3ff; line-height: 1.6; }
.ogh-contact-panel { margin: 26px 0 36px; padding: clamp(22px,4vw,34px); border-radius: 20px; color: #fff; background: linear-gradient(135deg,#262941,#6456ee); box-shadow: 0 20px 45px rgba(43,40,105,.2); }
.ogh-contact-panel p { margin-bottom: 0; color: rgba(255,255,255,.8); }
.ogh-contact-label { display: block; margin-bottom: 7px; color: rgba(255,255,255,.72); font-size: 12px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.ogh-contact-email { display: inline-block; color: #fff!important; font-size: clamp(20px,4vw,32px); text-decoration: none!important; }
.ogh-contact-panel-compact { margin-top: 32px; }
.ogh-contact-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin: 32px 0 42px; }
.ogh-contact-grid section { position: relative; padding: 26px; border: 1px solid var(--ogh-border); border-radius: 18px; background: #fbfaff; }
.ogh-contact-grid section > span { display: inline-grid; width: 34px; height: 34px; place-items: center; border-radius: 10px; color: #fff; background: linear-gradient(135deg,var(--ogh-primary),var(--ogh-pink)); font-size: 11px; font-weight: 900; }
.ogh-contact-grid h2 { margin: 18px 0 8px; font-size: 22px; }
.ogh-contact-grid p { margin: 0 0 16px; font-size: 14px; line-height: 1.65; }
.ogh-contact-grid a { font-size: 14px; text-decoration: none; }
@media (max-width: 680px) { .ogh-contact-grid { grid-template-columns: 1fr; } }

/* Rich creator cards */
.creator-price-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 11px 0; }
.creator-price-pill { display: inline-flex; align-items: center; min-height: 31px; padding: 5px 11px; border-radius: 999px; font-size: 13px; font-weight: 900; letter-spacing: .02em; }
.creator-price-pill.is-free { color: #087a3d; border: 1px solid #72d69e; background: linear-gradient(135deg,#e8fbf0,#d7f7e5); box-shadow: 0 6px 16px rgba(8,122,61,.14); }
.creator-price-pill.is-free::before { content: ""; width: 7px; height: 7px; margin-right: 7px; border-radius: 50%; background: #12a463; box-shadow: 0 0 0 3px rgba(18,164,99,.13); }
.creator-price-pill.is-paid { color: #d82475; border: 1px solid #ffc0dc; background: #fff0f7; }
.creator-location { min-width: 0; overflow: hidden; color: var(--ogh-muted); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.creator-stats { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; margin: 10px 0; }
.creator-stat { min-width: 0; min-height: 52px; display: flex; align-items: center; gap: 8px; padding: 8px 9px; border: 1px solid transparent; border-radius: 12px; color: #222330; }
.creator-stat i { width: 27px; height: 27px; flex: 0 0 27px; display: grid; place-items: center; border-radius: 9px; font-style: normal; }
.creator-stat i svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.creator-stat > span { min-width: 0; display: flex; flex-direction: column; line-height: 1.1; }
.creator-stat small { margin-bottom: 3px; color: var(--ogh-muted); font-size: 9px; font-weight: 750; letter-spacing: .02em; }
.creator-stat strong { overflow: hidden; color: #20212b; font-size: 12px; text-overflow: ellipsis; }
.creator-stat-photos { border-color: #d8d4ff; background: #f2f0ff; }
.creator-stat-photos i { color: #6558ed; background: #e2deff; }
.creator-stat-videos { border-color: #ffd2e2; background: #fff1f6; }
.creator-stat-videos i { color: #e23c79; background: #ffdce9; }
.creator-stat-likes { border-color: #ffdcb5; background: #fff7eb; }
.creator-stat-likes i { color: #d97706; background: #ffebcb; }
.creator-stat-followers { border-color: #bfead4; background: #eefbf5; }
.creator-stat-followers i { color: #16875b; background: #d7f5e6; }
.creator-bio { min-height: 52px; margin: 10px 0 0; overflow: hidden; display: -webkit-box; color: var(--ogh-muted); font-size: 12px; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.creator-taxonomy { display: flex; flex-wrap: wrap; gap: 6px; margin: 10px 0 15px; }
.creator-taxonomy a { padding: 5px 9px; border: 1px solid #d8d4ff; border-radius: 999px; color: #574be4; background: #f1efff; font-size: 10px; font-weight: 800; }
.creator-taxonomy a:nth-child(3n+2) { color: #c52d6b; border-color: #ffd0e1; background: #fff0f6; }
.creator-taxonomy a:nth-child(3n+3) { color: #167552; border-color: #bfe8d3; background: #edfaf4; }

/* Rotating Featured referral blocks */
.ogh-featured-strip {
  position: relative;
  overflow: hidden;
  margin-top: 24px;
  padding: 22px;
  border: 2px solid rgba(108, 99, 255, .28);
  border-radius: 24px;
  background:
    radial-gradient(circle at 96% 0, rgba(255, 92, 147, .18), transparent 30%),
    linear-gradient(135deg, #f0eeff 0%, #fff 48%, #fff3f8 100%);
  box-shadow: 0 20px 48px rgba(80, 68, 190, .14);
}
.ogh-featured-strip::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 6px;
  background: linear-gradient(180deg, var(--ogh-primary), var(--ogh-pink));
}
.ogh-featured-strip-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 16px;
}
.ogh-featured-strip-heading h2 {
  margin: 0;
  font-size: clamp(22px, 2.4vw, 34px);
  line-height: 1.1;
  letter-spacing: -.035em;
}
.ogh-featured-kicker {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 11px;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, #f59e0b, #ff7b00);
  box-shadow: 0 8px 18px rgba(245, 158, 11, .25);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.ogh-featured-strip-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 13px;
}
.ogh-featured-mini-card {
  min-width: 0;
  overflow: hidden;
  display: none;
  grid-template-columns: 124px minmax(0, 1fr);
  height: 166px;
  min-height: 166px;
  border: 1px solid rgba(108, 99, 255, .16);
  border-radius: 17px;
  color: var(--ogh-text);
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 10px 24px rgba(45, 38, 96, .09);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.ogh-featured-mini-card.is-selected { display: grid; }
.ogh-featured-mini-card:hover {
  transform: translateY(-3px);
  border-color: rgba(108, 99, 255, .42);
  box-shadow: 0 16px 30px rgba(45, 38, 96, .15);
}
.ogh-featured-mini-media {
  position: relative;
  width: 124px;
  height: 166px;
  min-height: 0;
  overflow: hidden;
  background: linear-gradient(145deg, #ffd6e7, #c8c2ff);
}
.ogh-featured-mini-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ogh-featured-mini-star {
  position: absolute;
  inset: 7px auto auto 7px;
  padding: 4px 7px;
  border-radius: 999px;
  color: #fff;
  background: #f59e0b;
  box-shadow: 0 5px 13px rgba(0, 0, 0, .18);
  font-size: 9px;
  font-weight: 900;
}
.ogh-featured-mini-copy {
  min-width: 0;
  padding: 16px 14px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
.ogh-featured-mini-copy strong {
  width: 100%;
  min-height: 38px;
  overflow: hidden;
  display: -webkit-box;
  font-size: 16px;
  line-height: 1.2;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.ogh-featured-mini-copy small {
  width: 100%;
  overflow: hidden;
  margin-top: 5px;
  color: var(--ogh-muted);
  font-size: 12px;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ogh-featured-mini-copy em {
  margin-top: 14px;
  padding: 6px 9px;
  border-radius: 8px;
  color: #fff;
  background: var(--ogh-primary);
  font-size: 10px;
  line-height: 1;
  font-style: normal;
  font-weight: 850;
  white-space: nowrap;
}
.ogh-profile-wrap > .ogh-featured-strip { margin-top: 24px; }

@media (max-width: 1024px) {
  .creator-grid, .taxonomy-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .seo-panel { grid-template-columns: 1fr; }
  .desktop-nav { display: none; }
  .menu-toggle { display: block; }
  .desktop-nav.is-open {
    position: absolute; display: grid; inset: 74px 16px auto; padding: 20px;
    border: 1px solid var(--ogh-border); border-radius: 18px; background: white; box-shadow: var(--ogh-shadow);
  }
  .ogh-featured-strip-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .hero { padding: 60px 0 52px; }
  .hero h1 { font-size: 43px; }
  .search-row { display: grid; }
  .primary-button { min-height: 52px; }
  .filter-row { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; }
  .filter-chip { flex: 0 0 auto; }
  .section { padding: 50px 0; }
  .section-heading { align-items: start; }
  .creator-grid { gap: 12px; }
  .creator-body { padding: 13px; }
  .creator-name { font-size: 16px; }
  .creator-meta, .creator-handle { font-size: 12px; }
  .tag-list a:nth-child(n+4) { display: none; }
  .creator-slider-button{opacity:.88}
  .creator-stat { min-height: 47px; padding: 7px; gap: 6px; }
  .creator-stat i { width: 24px; height: 24px; flex-basis: 24px; }
  .creator-stat small { display: none; }
  .creator-bio { min-height: 50px; }
  .taxonomy-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
  .taxonomy-card { min-height: 130px; padding: 15px; }
  .seo-panel { padding: 24px; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; }
  .mobile-nav { display: flex; }
  .ogh-featured-strip { padding: 20px 14px 15px; border-radius: 20px; }
  .ogh-featured-strip-heading { align-items: flex-start; flex-direction: column-reverse; gap: 9px; }
  .ogh-featured-strip-heading h2 { font-size: clamp(25px, 7vw, 32px); line-height: 1.08; }
  .ogh-featured-kicker { padding: 8px 12px; font-size: 11px; }
  .ogh-featured-strip-grid { grid-template-columns: 1fr; }
  .ogh-featured-mini-card {
    grid-template-columns: 128px minmax(0, 1fr);
    width: 100%;
    height: 171px;
    min-height: 171px;
    border-radius: 18px;
  }
  .ogh-featured-mini-media { width: 128px; height: 171px; min-height: 0; }
  .ogh-featured-mini-copy { padding: 18px 16px; }
  .ogh-featured-mini-copy strong { min-height: 43px; font-size: 18px; line-height: 1.18; }
  .ogh-featured-mini-copy small { margin-top: 6px; font-size: 13px; }
  .ogh-featured-mini-copy em { margin-top: 16px; padding: 8px 11px; font-size: 11px; }
}
@media (max-width: 390px) {
  .ogh-featured-mini-card {
    grid-template-columns: 112px minmax(0, 1fr);
    height: 150px;
    min-height: 150px;
  }
  .ogh-featured-mini-media { width: 112px; height: 150px; }
  .ogh-featured-mini-copy { padding: 14px 12px; }
  .ogh-featured-mini-copy strong { min-height: 38px; font-size: 16px; }
  .ogh-featured-mini-copy small { font-size: 12px; }
  .ogh-featured-mini-copy em { margin-top: 12px; padding: 7px 9px; }
}

/* Homepage 1.0 */
.site-header { color: #fff; background: rgba(17,18,37,.97); border-color: rgba(255,255,255,.08); }
.site-header .brand-mark { font-family: Georgia,serif; background: linear-gradient(135deg,#ff5c73,#6c4dff); }
.site-header .desktop-nav a:hover { color: #b9aaff; }
.site-header .header-action { background: linear-gradient(135deg,var(--ogh-pink),var(--ogh-primary)); }
.ohm-home { overflow: hidden; background: var(--ogh-bg); }
.ohm-hero { padding: 70px 0 82px; background: radial-gradient(circle at 85% 20%,rgba(108,77,255,.14),transparent 27%),#fbfaf8; }
.ohm-hero-grid { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(440px,.95fr); align-items: center; gap: 58px; }
.ohm-kicker { display: block; margin-bottom: 14px; color: var(--ogh-primary); font-size: 12px; font-weight: 900; letter-spacing: .11em; }
.ohm-hero h1 { max-width: 760px; margin: 0; font-size: clamp(58px,6.2vw,94px); line-height: .96; letter-spacing: -.07em; }
.ohm-hero-copy > p { max-width: 610px; margin: 26px 0 30px; color: var(--ogh-muted); font-size: 18px; }
.ohm-search { max-width: 690px; display: grid; grid-template-columns: 1fr 58px; padding: 7px; border: 1px solid var(--ogh-border); border-radius: 15px; background: #fff; box-shadow: 0 18px 46px rgba(17,18,37,.09); }
.ohm-search label { display: block; }
.ohm-search input { width: 100%; height: 48px; padding: 0 17px; border: 0; outline: 0; background: transparent; }
.ohm-search button { border: 0; border-radius: 11px; color: #fff; background: linear-gradient(135deg,var(--ogh-pink),var(--ogh-primary)); font-size: 27px; cursor: pointer; }
.ohm-proof { display: flex; gap: 26px; margin-top: 30px; color: var(--ogh-muted); font-size: 11px; text-transform: uppercase; }
.ohm-proof span { padding-right: 26px; border-right: 1px solid var(--ogh-border); }
.ohm-proof span:last-child { border: 0; }
.ohm-proof strong { display: block; margin-bottom: 2px; color: var(--ogh-text); font-size: 21px; text-transform: none; }
.ohm-hero-collage { position: relative; min-height: 530px; }
.ohm-portrait { position: absolute; overflow: hidden; width: 42%; height: 390px; border-radius: 22px; background: #e8e4ff; box-shadow: 0 28px 70px rgba(17,18,37,.18); transform: rotate(-4deg); }
.ohm-portrait img { width: 100%; height: 100%; object-fit: cover; }
.ohm-portrait span { position: absolute; inset: auto 13px 13px; padding: 8px 10px; border-radius: 9px; color: #fff; background: rgba(17,18,37,.74); font-size: 12px; font-weight: 800; backdrop-filter: blur(10px); }
.ohm-portrait-1 { left: 2%; top: 88px; }
.ohm-portrait-2 { z-index: 2; left: 30%; top: 18px; height: 480px; transform: rotate(4deg); }
.ohm-portrait-3 { right: 0; top: 113px; transform: rotate(7deg); }
.ohm-section { padding: 72px 0; }
.ohm-section .section-heading h2 { margin: 0 0 8px; font-size: clamp(32px,3vw,46px); letter-spacing: -.045em; }
.ohm-featured-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
.ohm-featured-grid .creator-card { color: #fff; background: #111225; border-color: #111225; }
.ohm-featured-grid .creator-body { background: #111225; }
.ohm-featured-grid .creator-handle,.ohm-featured-grid .creator-location,.ohm-featured-grid .creator-bio { color: #b8bbca; }
.ohm-filter-wrap { position: sticky; top: 74px; z-index: 20; }
.ohm-filters { display: flex; gap: 8px; padding: 12px; overflow-x: auto; border: 1px solid var(--ogh-border); border-radius: 18px; background: rgba(255,255,255,.94); box-shadow: 0 14px 35px rgba(17,18,37,.07); backdrop-filter: blur(14px); }
.ohm-filters a { flex: 0 0 auto; padding: 10px 19px; border: 1px solid transparent; border-radius: 11px; color: var(--ogh-muted); font-weight: 750; }
.ohm-filters a:hover,.ohm-filters a.is-active { color: var(--ogh-primary); border-color: #cfc5ff; background: #f5f2ff; }
.ohm-all-models { padding-top: 54px; }
.ohm-all-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
.ohm-empty { padding: 50px; border: 1px dashed #bbb1e8; border-radius: 22px; text-align: center; background: #f1edff; }
.ohm-category-section { background: #fff; }
.ohm-category-grid { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 12px; }
.ohm-category-grid a { position: relative; isolation: isolate; overflow: hidden; min-height: 230px; display: flex; flex-direction: column; justify-content: flex-end; padding: 21px; border-radius: 18px; color: #fff; background-color: #252744; background-position: center 22%; background-size: cover; box-shadow: var(--ogh-shadow); transition: transform .25s ease,box-shadow .25s ease; }
.ohm-category-grid a::before { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(180deg,rgba(12,13,28,.04) 25%,rgba(12,13,28,.9) 100%); }
.ohm-category-grid a:hover { transform: translateY(-5px); box-shadow: 0 24px 55px rgba(17,18,37,.2); }
.ohm-category-grid span { opacity: .82; font-size: 12px; }
.ohm-category-grid strong { margin-top: 5px; font-size: 23px; text-shadow: 0 2px 14px rgba(0,0,0,.5); }
.ohm-cta { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 42px 54px; border-radius: 24px; color: #fff; background: radial-gradient(circle at 90% 0,rgba(108,77,255,.55),transparent 35%),#111225; }
.ohm-cta h2 { margin: 0 0 7px; font-size: clamp(30px,3vw,45px); }
.ohm-cta p { margin: 0; color: #c4c6d4; }
.ohm-cta a { padding: 14px 28px; border-radius: 999px; background: linear-gradient(135deg,var(--ogh-pink),var(--ogh-primary)); font-weight: 850; white-space: nowrap; }
.ohm-seo { padding-top: 0; color: var(--ogh-muted); }

@media (max-width: 1100px) {
  .ohm-hero-grid { grid-template-columns: 1fr; }
  .ohm-hero-collage { min-height: 480px; }
  .ohm-featured-grid,.ohm-all-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .ohm-category-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .site-header { background: #111225; }
  .site-header .menu-toggle { color: #fff; border-color: rgba(255,255,255,.2); background: transparent; }
  .ohm-hero { padding: 48px 0 56px; }
  .ohm-hero-grid { gap: 35px; }
  .ohm-hero h1 { font-size: clamp(48px,14vw,68px); }
  .ohm-proof { gap: 13px; }
  .ohm-proof span { padding-right: 13px; }
  .ohm-hero-collage { min-height: 350px; }
  .ohm-portrait { height: 265px; border-radius: 16px; }
  .ohm-portrait-1 { top: 60px; }
  .ohm-portrait-2 { top: 4px; height: 330px; }
  .ohm-portrait-3 { top: 72px; }
  .ohm-section { padding: 48px 0; }
  .ohm-featured-grid,.ohm-all-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ohm-category-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ohm-category-grid a { min-height: 145px; }
  .ohm-filter-wrap { top: 72px; }
  .ohm-cta { align-items: flex-start; flex-direction: column; padding: 31px 25px; }
}


/* OnlyHub.club 2.0 — DACH editorial skin */
:root{--ogh-primary:#c89b4b;--ogh-pink:#8d252b;--ogh-bg:#f7f4ef;--oh-dark:#111719;--oh-ink:#202425;--oh-line:#ded8cf;--oh-gold:#c89b4b}
body{background:var(--ogh-bg);color:var(--oh-ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
h1,h2,h3,.brand{font-family:Georgia,"Times New Roman",serif}
.ogh-container{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.adult-bar{height:32px;display:grid;place-items:center;background:#85262d;color:#f7e9dc;font-size:12px;letter-spacing:.02em}
.site-header{position:sticky;top:0;z-index:90;background:rgba(14,20,22,.98);border-bottom:1px solid rgba(255,255,255,.08)}
.header-inner{height:72px;display:flex;align-items:center;gap:48px}.brand{color:#d7ad61!important;font-size:30px;text-decoration:none}.brand span{color:#f1d99e}.desktop-nav{display:flex;gap:36px}.desktop-nav a{color:#f1f0ec;text-decoration:none;font-size:14px}.menu-toggle{margin-left:auto}
.oh-hero{position:relative;min-height:560px;background:#111719;color:#fff;overflow:hidden}.oh-hero-grid{display:grid;grid-template-columns:54% 46%;min-height:500px}.oh-hero-copy{align-self:center;padding:70px 6vw 115px 24px;position:relative;z-index:2}.oh-kicker{display:block;color:var(--oh-gold);font-size:12px;font-weight:800;letter-spacing:.18em}.oh-hero h1{margin:22px 0 12px;font-size:clamp(52px,6vw,80px);line-height:1.03;font-weight:400}.oh-hero h1 em{color:var(--oh-gold);font-style:normal}.oh-hero-copy p{font-size:17px;color:#d7d8d6}.oh-hero-photo{position:relative;clip-path:polygon(18% 0,100% 0,100% 100%,0 100%);border-left:1px solid var(--oh-gold)}.oh-hero-photo-link{position:absolute;inset:0;display:block}.oh-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:opacity .18s ease}.oh-hero-model{position:absolute;z-index:2;right:24px;bottom:86px;max-width:72%;padding:9px 13px;border:1px solid rgba(215,173,97,.48);border-radius:4px;color:#fff;background:rgba(10,14,15,.76);font-size:13px;font-weight:700;backdrop-filter:blur(8px)}.oh-search{position:absolute;z-index:4;left:50%;bottom:40px;transform:translateX(-50%);width:min(960px,calc(100% - 48px));padding:18px;display:flex;gap:12px;background:#fbfaf7;border:1px solid #ded7cd;border-radius:8px;box-shadow:0 18px 45px rgba(0,0,0,.25)}.oh-search label{flex:1}.oh-search input{width:100%;min-height:50px;border:1px solid #d8d5cf;background:#fff;padding:0 18px}.oh-search button,.oh-gold-button{border:0;border-radius:4px;background:linear-gradient(135deg,#b98a3c,#d3ae68);color:#fff;padding:0 34px;font-weight:700;text-decoration:none}
.oh-region{padding:0 0 86px}.oh-country-tabs{width:min(650px,100%);margin:-12px auto 55px;padding:10px;display:grid;grid-template-columns:repeat(3,1fr);position:relative;z-index:5;background:#faf9f6;border:1px solid var(--oh-line);border-radius:8px;box-shadow:0 8px 22px rgba(44,38,31,.08)}.oh-country-tabs a{padding:13px;text-align:center;color:#6d6b68;text-decoration:none;border-radius:4px}.oh-country-tabs .is-active{background:#161c1e;color:#fff}.oh-section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px}.oh-section-head h2,.oh-categories h2,.oh-why h2{font-weight:400;font-size:36px;margin:0 0 8px}.oh-section-head p{margin:0;color:#777}.oh-section-head>a{color:#9a4a47;text-decoration:none}.oh-city-links{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.oh-city-links a{padding:10px 18px;border:1px solid var(--oh-line);border-radius:4px;color:#595854;text-decoration:none}.oh-city-links a:first-child{background:#161c1e;color:#fff}
.oh-creator-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.oh-creator-grid .creator-card{border:1px solid #e1ddd6;border-radius:7px;background:#fff;box-shadow:none}.oh-creator-grid .creator-media{aspect-ratio:3/4;border-radius:6px 6px 0 0}.oh-creator-grid .creator-body{padding:15px}.oh-creator-grid .creator-name{font-size:20px;margin:0}.oh-creator-grid .creator-handle{margin:2px 0 12px}.oh-creator-grid .creator-stats,.oh-creator-grid .creator-bio,.oh-creator-grid .creator-price-row{display:none}.oh-creator-grid .card-button{margin-top:12px;background:#171d1f;color:#fff}.oh-center{text-align:center;margin:54px 0 0}.oh-gold-button{display:inline-block;padding:16px 30px}
.oh-categories{padding:65px 0;background:#12191b;color:#fff;text-align:center}.oh-categories>div>p{color:#afb2b1}.oh-category-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin:36px 0}.oh-category-grid a{min-height:150px;display:grid;place-content:center;gap:14px;border:1px solid #394043;border-radius:5px;color:#fff;text-decoration:none}.oh-category-grid span{color:var(--oh-gold);font-size:40px}.oh-category-grid strong{font-family:Georgia,serif;font-size:17px}.oh-category-all{color:var(--oh-gold);text-decoration:none}
.oh-why{padding:75px 0 88px;text-align:center}.oh-why-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:38px}.oh-why article{padding:10px 48px;border-right:1px solid var(--oh-line)}.oh-why article:last-child{border:0}.oh-why article>span{font-size:44px;color:var(--oh-gold)}.oh-why h3{font-size:21px;font-weight:400}.oh-why p{color:#75736f;line-height:1.7}.oh-seo{padding:65px 0;border-top:1px solid var(--oh-line)}
.site-footer{padding:65px 0 30px;background:#12191b;color:#c4c7c6}.footer-grid{grid-template-columns:1.5fr repeat(3,1fr)}.footer-column h3{color:#fff}.footer-column a,.footer-brand p{color:#aeb2b1}.footer-legal{display:flex;justify-content:center;gap:34px;flex-wrap:wrap;padding:34px 0 25px;border-top:1px solid #303638}.footer-legal a{color:#d5d7d6;text-decoration:none;font-size:15px}.footer-legal a:hover{color:#d4ac62}.footer-bottom{text-align:center;border-top:1px solid #303638;padding-top:25px}.footer-bottom p{max-width:1220px;margin:0 auto 18px;font-size:13px;line-height:1.7}.footer-bottom .footer-contact{margin-bottom:16px;font-size:14px}.footer-bottom a,.footer-bottom strong{color:#d4ac62}.mobile-nav{background:#12191b}
@media(max-width:980px){.oh-hero-grid{grid-template-columns:1fr 42%}.oh-creator-grid{grid-template-columns:repeat(3,1fr)}.oh-category-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.ogh-container{width:min(100% - 28px,1180px)}.adult-bar{height:28px}.header-inner{height:62px}.desktop-nav{display:none}.oh-hero{min-height:650px}.oh-hero-grid{grid-template-columns:1fr}.oh-hero-copy{padding:52px 8px 250px}.oh-hero h1{font-size:46px}.oh-hero-photo{position:absolute;right:0;bottom:0;width:55%;height:330px}.oh-search{bottom:18px;display:grid;padding:12px}.oh-search button{min-height:46px}.oh-country-tabs{margin:0 auto 38px}.oh-region{padding-top:24px}.oh-section-head{align-items:start}.oh-creator-grid{grid-template-columns:repeat(2,1fr);gap:12px}.oh-category-grid{grid-template-columns:repeat(2,1fr)}.oh-why-grid{grid-template-columns:1fr;gap:28px}.oh-why article{border-right:0;border-bottom:1px solid var(--oh-line);padding:20px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}

@media(min-width:1200px){.oh-hero .oh-hero-grid{width:min(1500px,100%);max-width:none}.oh-hero-copy{padding-left:clamp(48px,8vw,150px)}}
.oh-hero h1{font-size:clamp(44px,5vw,70px);max-width:760px}.oh-hero h1 em{display:inline-block;font-size:.72em;line-height:1.15;margin-top:8px}

/* 2.2 photographic category discovery */
.oh-categories{text-align:left}.oh-category-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:30px}.oh-category-heading>div>span{display:block;margin-bottom:10px;color:var(--oh-gold);font-size:11px;font-weight:900;letter-spacing:.18em}.oh-category-heading h2{margin-bottom:4px}.oh-category-heading p{margin:0;color:#afb2b1}.oh-category-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;margin:0}.oh-category-grid a{position:relative;isolation:isolate;overflow:hidden;min-height:300px;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:20px;border:1px solid rgba(215,173,97,.24);border-radius:12px;background:linear-gradient(145deg,#252d2f,#111719);box-shadow:0 18px 38px rgba(0,0,0,.22);transition:transform .25s ease,border-color .25s ease}.oh-category-grid a::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(8,12,13,.04) 28%,rgba(8,12,13,.92) 100%)}.oh-category-grid a:hover{transform:translateY(-6px);border-color:var(--oh-gold)}.oh-category-grid img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .4s ease}.oh-category-grid a:hover img{transform:scale(1.04)}.oh-category-grid span{color:#e0ddd6;font-size:12px}.oh-category-grid strong{margin-top:4px;color:#fff;font-size:23px;text-shadow:0 3px 18px rgba(0,0,0,.65)}.oh-category-all{flex:0 0 auto;color:var(--oh-gold);font-weight:800}
@media(max-width:1100px){.oh-category-grid{grid-template-columns:repeat(3,1fr)}.oh-category-grid a{min-height:270px}}
@media(max-width:760px){.oh-category-heading{align-items:flex-start;flex-direction:column}.oh-category-grid{grid-template-columns:repeat(2,1fr)}.oh-category-grid a{min-height:230px;padding:15px}.oh-category-grid strong{font-size:19px}}
