/* GottaGF — pg13-critical.css
 * Scoped CSS for the PG13 front page only.
 * Replaces style.css on the homepage for ~80% CSS payload reduction.
 * DO NOT add rules here manually — maintain in style.css then re-extract.
 */

/* =========================================================
   LEGACY STYLESHEET (FROZEN) — 2026-01-19
   Do not add new fixes here.
   All new changes go in: /assets/css/ggf-clean.css
   ========================================================= */


/*
Theme Name: GottaGF App Theme
Version: 2.0.1
Description: GottaGF App Theme v2.0 — stable PG-13 fullscreen shell, members hub, x-rated sales page, influencer / Kylie sidebar.
Author: GottaGF Dev
*/


/* =========================================================
   RESET / BASE
   ====================================================== */

html, body {
  margin: 0;
  padding: 0;
  font-family: "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI",
    Roboto, Arial, sans-serif;
  background: #fff;
  color: #111;
}

img { max-width: 100%; height: auto; display: block; }

/* =========================================================
   HEADER / NAV
   ====================================================== */

.pg13-top-nav {
  position: sticky;
  top: 0;
  z-index: 999;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  background: #fff;
  padding: 14px 22px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.06);
}

.pg13-logo {
  font-size: 20px;
  font-weight: 800;
  color: #111;
}
.pg13-logo span { color: #ff2e86; }

.pg13-top-links {
  display: flex;
  align-items: center;
  gap: 16px;
  flex: 1;                 /* take the middle space */
  justify-content: center; /* center links inside that space */
}


.pg13-top-link {
  text-decoration: none;
  font-weight: 600;
  font-size: 14px;
  color: #444;
  padding: 6px 10px;
  border-radius: 8px;
  transition: background 0.2s ease, color 0.2s ease;
}

.pg13-top-link:hover {
  background: #f3f4f6;
  color: #111;
}

.pg13-top-link--active {
  background: #111;
  color: #fff !important;
}

/* Support pink pill */
.pg13-top-pill {
  border-radius: 999px;
  padding: 8px 18px;
  background: #ff2e86;
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  font-size: 13px;
}

/* X-Rated red pill */
.pg13-top-link--xrated {
  background: #e50914;
  color: #fff !important;
  border-radius: 999px;
  padding: 6px 14px;
}
.pg13-top-link--xrated:hover {
  background: #c10810;
  color: #fff !important;
}


/* Default site header (used on single video pages & non-app pages) */
.site-header {
  padding: 12px 16px;
  border-bottom: 1px solid #f0f0f0;
  margin-bottom: 12px;
  display: none !important;
}

.site-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.site-logo-main {
  font-weight: 700;
  letter-spacing: 0.05em;
}

.site-logo-q {
  color: #ff2e86;
  margin-left: 3px;
}

/* Hide default site header on app-style shells where we use pg13-top-nav */
body.tax-ggf_model .site-header,
body.home .site-header,
body.page-x-rated .site-header,
.xrated-shell .site-header,
.xrated-body .site-header {
  display: none !important;
}

/* Keep PG13 top nav flush to top; only offset when admin bar is visible */
.pg13-top-nav {
  top: 0;
}

.admin-bar .pg13-top-nav {
  top: 32px; /* standard desktop admin bar height */
}

@media (max-width: 782px) {
  .admin-bar .pg13-top-nav {
    top: 46px; /* taller admin bar on mobile */
  }
}

/* Sidebar wrapper — layout-transparent so fixed children position correctly.
   Prevents the div rendering in document flow and flashing near the top. */
.ggf-left-sidebar { display: contents; }


.ggf-swipe-intro {
  display: block;
  max-width: 540px;
  margin: 12px auto 8px;
  text-align: center;
  color: #999;
  font-size: 13px;
}

.xrated-shell .ggf-swipe-intro,
.xrated-body .ggf-swipe-intro {
  max-width: 540px;
  margin: 12px auto 8px;
  text-align: center;
  color: #999;
  font-size: 13px;
}

/* Disable the PG13 pseudo-label on X-Rated so inner text shows */
.xrated-shell .ggf-swipe-intro::before,
.xrated-body .ggf-swipe-intro::before {
  content: none;
}

/* =========================================================

.pg13-fullscreen-shell .ggf-video-subtitle,
.xrated-shell .ggf-video-subtitle {
  display: none !important;
}

/* Hide large feed titles in fullscreen / swipe feeds (home PG13, X-rated members, model swipe) */
.pg13-fullscreen-shell .ggf-title,
.model-feed-swipe .ggf-title,
.xrated-shell .ggf-title {
  display: none !important;
}


/* =========================================================
/* =========================================================
   X-RATED LANDING – TILE SIZING (/x-rated/ page-id-1737)
   Final values: stack 560px mobile, 720px desktop
   ====================================================== */

/* Stack layout: column, centered */
body.page-id-1737 .ggf-x-landing-inner {
  display: flex;
  flex-direction: column !important;
  align-items: center;
  gap: 32px;
}

body.page-id-1737 .ggf-x-landing-video,
body.page-id-1737 .ggf-x-landing-form {
  width: 100% !important;
  max-width: 720px;
}

body.page-id-1737 .ggf-x-landing-player-stack {
  display: flex;
  flex-direction: column;
  gap: 18px;
  max-width: 560px !important;
  margin: 32px auto 8px !important;
}

body.page-id-1737 .ggf-x-landing-player {
  display: flex !important;
  justify-content: center !important;
  margin: 0 auto 32px !important;
}

/* Video tile: portrait, PG13-style */
body.page-id-1737 .ggf-x-landing-player .ggf-x-landing-video-tag {
  display: block !important;
  width: 100% !important;
  max-width: 560px !important;
  margin: 0 auto 24px !important;
  aspect-ratio: 9 / 16 !important;
  object-fit: cover !important;
  border-radius: 22px !important;
  box-shadow: 0 20px 50px rgba(15, 23, 42, 0.55) !important;
}

/* Desktop: wider column */
@media (min-width: 1024px) {
  body.page-id-1737 .ggf-x-landing-player-stack {
    max-width: 720px !important;
    margin: 32px auto 16px !important;
  }

  body.page-id-1737 .ggf-x-landing-player .ggf-x-landing-video-tag {
    max-width: 720px !important;
    max-height: 90vh;
    height: auto;
  }
}

   HOME – LEFT FOOTER SIDEBAR LINKS (TikTok-style)
   Shown on PG13 fullscreen homepage template only
   ====================================================== */

/* Sidebar wrapper — display:contents makes it layout-transparent.
   Its fixed-position children (spotlight, footer) position against
   the viewport correctly. Without this the div renders in document
   flow and flashes near the top before CSS loads. */
.ggf-left-sidebar {
  display: contents;
}

.pg13-fullscreen-shell .ggf-left-footer {
  position: fixed;
  left: 20px;
  bottom: 20px;
  z-index: 900;
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 16px;          /* larger base font */
  color: #555555;           /* medium gray for legibility */
  pointer-events: auto;
}

/* Links */
.pg13-fullscreen-shell .ggf-left-footer a {
  text-decoration: none;
  color: #555555;           /* same as base */
  transition: color 0.2s ease;
}

.pg13-fullscreen-shell .ggf-left-footer a:hover {
  color: #ff2e86;           /* pink hover color */
}

/* Copyright line */
.pg13-fullscreen-shell .ggf-left-footer-copy {
  margin-top: 6px;
  font-size: 15px;
  color: #777777;
}

/* Hide on very small screens so it doesn't compete with feed UI */
@media (max-width: 640px) {
  .pg13-fullscreen-shell .ggf-left-footer {
    display: none;
  }
}

/* =========================================================
   FIX: iOS email input overflow on X-RATED landing
   ====================================================== */
body.page-id-1737 .ggf-x-landing-form input[type="email"] {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  padding-right: 12px; /* prevents text from touching edge */
  overflow: hidden;
}

@supports (-webkit-touch-callout: none) {
  body.page-id-1737 .ggf-x-landing-form input[type="email"] {
    max-width: calc(100% - 8px) !important;
  }
}

/* =========================================================
   FIX: Remove legacy PG13 heart bubble (replaced by overlay)
   ====================================================== */
.pg13-fullscreen-shell .model-feed-swipe .ggf-player::after,
.pg13-fullscreen-shell .ggf-feed.fullscreen .ggf-player::after,
body.home .model-feed-swipe .ggf-player::after {
  content: none !important;
  display: none !important;
}

/* =========================================================
   FIX: Remove legacy standalone heart button on PG13 feed
   (we now use the in-frame overlay like button instead)
   ====================================================== */

/* Old Short-Form Video hearts – desktop & mobile */
.pg13-fullscreen-shell .sfv-like-button,
.pg13-fullscreen-shell .sfv-like-toggle,
.pg13-fullscreen-shell .sfv-like-wrapper,
.pg13-fullscreen-shell .sfv-like-column,
.pg13-fullscreen-shell .sfv-mobile-like,
.pg13-fullscreen-shell .sfv-icon-like {
  display: none !important;
}

/* Catch-all: any sfv* element whose class name includes "like" */
.pg13-fullscreen-shell [class*="sfv"][class*="like"] {
  display: none !important;
}


.ggf-account-chip {
  position: fixed;
  top: 14px;
  right: 14px;
  z-index: 999;
  background: rgba(0,0,0,0.65);
  border-radius: 999px;
  padding: 6px 12px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: "Helvetica Neue", -apple-system, system-ui, sans-serif;
  font-size: 12px;
  color: #ffffff;
}

.ggf-account-name {
  opacity: 0.9;
}

.ggf-account-login,
.ggf-account-signup,
.ggf-account-members,
.ggf-account-logout {
  color: #ff2c71;
  text-decoration: none;
  font-weight: 600;
}


.ggf-account-login:hover,
.ggf-account-signup:hover,
.ggf-account-logout:hover {
  text-decoration: underline;
}

.ggf-account-sep {
  color: #999999;
}


/* Join Page */
.ggf-join-wrapper {
  max-width: 420px;
  margin: 80px auto;
  padding: 40px;
  background: rgba(0,0,0,0.85);
  border-radius: 16px;
  color: #ffffff;
  text-align: center;
}
.ggf-join-wrapper h2 {
  margin-bottom: 20px;
  font-size: 22px;
}
.ggf-join-errors {
  background: #ff2c71;
  color: #ffffff;
  padding: 10px 14px;
  border-radius: 8px;
  margin-bottom: 20px;
  font-size: 14px;
}
.ggf-join-form .ggf-field {
  margin-bottom: 12px;
}
.ggf-join-form input {
  width: 100%;
  padding: 12px;
  border-radius: 10px;
  border: none;
  background: #222222;
  color: #ffffff;
  font-size: 14px;
}
.ggf-join-form input::placeholder {
  color: #888888;
}
.ggf-btn-primary {
  background: #ff2c71;
  border: none;
  border-radius: 999px;
  padding: 12px 20px;
  color: #ffffff;
  font-weight: 600;
  cursor: pointer;
  font-size: 14px;
}
.ggf-btn-primary:hover {
  background: #ff4789;
}

.ggf-join-logo {
  margin-bottom: 16px;
}
.ggf-join-logo img {
  max-width: 180px;
  height: auto;
}


/* Hide account chip on fullscreen PG13 shell to avoid overlap with Login pill */
.pg13-fullscreen-shell .ggf-account-chip {
  display: none;
}


.pg13-top-actions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.pg13-top-pill--members {
  background-color: #ffffff;
  color: #ff2c71;
  border: 1px solid #ff2c71;
}
.pg13-top-pill--members:hover {
  background-color: #ffe6f0;
}

/* On the PG-13 fullscreen home, hide the main site header */
body.home.page-template-pg13-swipe-fullscreen .site-header {
  display: none;
}

/* Improve visibility of Tap to Unmute text */
.ggf-unmute-tip {
  color: rgba(255, 255, 255, 0.95);   /* brighter white for better contrast */
  font-weight: 600;                   /* slightly bolder */
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.6); /* glow for visibility on light or complex video backgrounds */
  letter-spacing: 0.3px;
}

/* Optional subtle pulse for attention */
@keyframes unmutePulse {
  0% { opacity: 1; }
  50% { opacity: 0.6; }
  100% { opacity: 1; }
}

.ggf-unmute-tip {
  animation: unmutePulse 2.8s ease-in-out infinite;
}

/* === Align logo + nav spacing on PG-13 home with X-Rated/Members === */

/* Remove extra gap under the logo on the home PG-13 feed */
body.home .site-header {
  margin-bottom: 0;
}

/* Kill any extra top spacing on the PG-13 shell directly under the header */
body.home .site-header + .pg13-fullscreen-shell {
  margin-top: 0;
  padding-top: 0;
}

/* Make sure the PG-13 top nav itself sits flush under the logo on home */
body.home .pg13-top-nav {
  margin-top: 0;
}


/* All Girlfriends page – search bar polish */
.page-template-members-models .ggf-members-heading {
  max-width: 1100px;
  margin: 0 auto 24px;
}


body.home {
    margin-top: 0;
    padding-top: 0;
}

/* Some themes add padding to the main wrapper – neutralize only on home */
body.home .ggf-main,
body.home .site-content,
body.home .page-wrapper {
    margin-top: 0;
    padding-top: 0;
}

@media (min-width: 900px) {
  .pg13-top-nav {
    position: sticky;  /* was relative */
    top: 0;
    z-index: 999;      /* keep it above the feed */
  }

  .pg13-top-links {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    flex: 0 0 auto;
    justify-content: center;
  }

  /* rest of the media-query stays as-is */
}


  /* Logo stays left, pills stay right */
  .pg13-logo {
    position: relative;
    z-index: 2;
  }

  .pg13-top-actions {
    margin-left: auto;
    position: relative;
    z-index: 2;
  }

/********************************************
 * KEEP ONLY (Global + X-Members)
 * (All /x-rated/ landing CSS moved to assets/css/xrated-landing.css)
 ********************************************/

/* === Global username overlay upgrade (PG13, X-Rated members, Model swipe) === */
.ggf-model-name {
  font-size: 16px !important;
  font-weight: 700 !important;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.85) !important;
  letter-spacing: 0.02em;
}

/* === /x-rated-members/ header alignment === */
body.page-x-rated-members .pg13-top-nav {
  display: flex;
  align-items: center;
}

/* Push the pill group (Support / Logout) to the far right on this page */
body.page-x-rated-members .pg13-top-actions {
  margin-left: auto;
  display: flex;
  align-items: center;
}


.pg13-fullscreen-shell .ggf-home-influencer-spotlight {
  position: fixed;
  left: 24px;
  top: 140px; /* space under header/logo */
  width: 210px;
  z-index: 900;
  display: flex;
  flex-direction: column;
  gap: 24px; /* was 18px – more breathing room */
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text",
               "Helvetica Neue", Arial, sans-serif;
}

/* Label above influencer */
.pg13-fullscreen-shell .ggf-home-influencer-label {
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  font-weight: 700;
  color: #9ca3af;
}

/* Card + thumb */
.pg13-fullscreen-shell .ggf-home-influencer-card {
  text-decoration: none;
}

.pg13-fullscreen-shell .ggf-home-influencer-thumb {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0,0,0,0.4);
}

.pg13-fullscreen-shell .ggf-home-influencer-thumb-img {
  display: block;
  width: 100%;
  height: auto;
}

/* Pill now shows influencer name directly on image */
.pg13-fullscreen-shell .ggf-home-influencer-pill {
  position: absolute;
  left: 10px;
  bottom: 10px;
  padding: 6px 14px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.65);
  color: #f9fafb;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: none;
}

/* Instagram handle below the thumb */
.pg13-fullscreen-shell .ggf-home-influencer-handle {
  margin-top: 4px;
  font-size: 13px;
  font-weight: 500;
  color: #9ca3af;
}

/* === Kylie Callout – PG13 Sidebar Queen Mode 💅 === */

.pg13-fullscreen-shell .ggf-home-kylie-callout {
  margin-top: 20px; /* subtle bump for breathing room */
}

/* Kylie title – Queen mode */
.pg13-fullscreen-shell .ggf-home-kylie-title {
  margin: 0;                /* kill default h2 margins */
  font-size: 60px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.01em;
}

/* “Kylie.” stays pure brand pink */
.pg13-fullscreen-shell .ggf-home-kylie-main {
  font-size: 64px; /* smaller “Call me?” */
  display: block;
  color: #ff2e86;
}

/* “Call me?” gets softer accent */
.pg13-fullscreen-shell .ggf-home-kylie-accent {
  font-size: 32px;
  display: block;
  color: #f9739a; /* muted pink accent */
}

/* Subtitle under Kylie – now hugs the title */
.pg13-fullscreen-shell .ggf-home-kylie-subtitle {
  margin-top: 6px;          /* nice tight gap under the title */
  font-size: 13px;
  font-weight: 500;
  color: #6b7280;           /* softer gray, reads like a tagline */
}

/* Extra CTA under Kylie – stronger & slightly further away */
.pg13-fullscreen-shell .ggf-home-kylie-extra {
  margin-top: 24px;         /* more space from subtitle */
  font-size: 18px;
  font-weight: 700;
  color: #374151;
}

/* Only “X-rated” is red + linked */
.pg13-fullscreen-shell .ggf-home-kylie-xrated-link {
  color: #ef4444;       /* red for X-rated continuity */
  text-decoration: none;
  font-weight: 700;
}

.pg13-fullscreen-shell .ggf-home-kylie-xrated-link:hover {
  text-decoration: underline;
}


/* Hide the sidebar entirely on mobile (portrait iOS) */
@media (max-width: 768px) {
  .pg13-fullscreen-shell .ggf-home-influencer-spotlight {
    display: none;
  }
}

/* --- PG13 sandbox feed layout --- */
.pg13-fullscreen-feed .ggf-video-card-sandbox {
  max-width: 380px;
  margin: 24px auto;
  text-align: left;
}

.pg13-fullscreen-feed .ggf-video-thumb img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 24px;
}

.pg13-fullscreen-feed .ggf-video-meta {
  margin-top: 8px;
  font-size: 14px;
}

.pg13-fullscreen-feed .ggf-video-title {
  display: inline-block;
  font-weight: 600;
  text-decoration: none;
}

/* Hide the raw blue link-style title WordPress outputs by default */
.pg13-fullscreen-feed .ggf-video-thumb-link {
  color: inherit;
  text-decoration: none;
}

/* ================================
   PG13 Optimized Sandbox Styling
   (only affects pg13-optimized-sandbox)
   ================================ */

.pg13-fullscreen-shell .pg13-fullscreen-feed {
  max-width: 430px;
  margin: 0 auto;
}

html.ggf-scroll-locked,
body.ggf-scroll-locked {
  overflow: hidden;
}

body, html {
  overflow-x: hidden;
}

.ggf-influencer-gallery,
.ggf-influencer-sets {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: center;
  max-width: 100%;
  box-sizing: border-box;
}

/* Influencer promo video shell */
.ggf-influencer-promo-shell {
  max-width: 720px;            /* keeps it from dominating page */
  margin: 32px auto;           /* center in content column */
  padding: 16px 0;
}

/* Wrap around the <video> element */
.ggf-influencer-promo-video-wrap {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.45);
}

/* Make video responsive, not full-bleed body-width */
.ggf-influencer-promo-video-wrap video {
  display: block;
  width: 100%;
  height: auto;
}

/* Optional: small playlist dots / labels if you want them later */
.ggf-influencer-promo-playlist {
  display: flex;
  gap: 8px;
  justify-content: center;
  margin-top: 12px;
  font-size: 11px;
  opacity: 0.8;
}

.ggf-influencer-promo-playlist span {
  padding: 4px 8px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.3);
}

.ggf-influencer-promo-playlist span.is-active {
  font-weight: 600;
  border-color: rgba(255, 255, 255, 0.8);
}

.ggf-influencer-handle {
  margin-top: 4px;
  margin-bottom: 8px;
  font-size: 0.95rem;
  opacity: 0.85;
}

/* Hard override: remove gap above global top nav */
body.wp-theme-gottagf-app-theme-115 header.pg13-top-nav {
  margin-top: 0 !important;
  padding-top: 0 !important;
  top: 0 !important;
}

/* Still respect the WP admin bar when logged in */
body.admin-bar.wp-theme-gottagf-app-theme-115 header.pg13-top-nav {
  top: 32px !important; /* desktop admin bar */
}

@media (max-width: 782px) {
  body.admin-bar.wp-theme-gottagf-app-theme-115 header.pg13-top-nav {
    top: 46px !important; /* mobile admin bar */
  }
}

/* Normalize admin-bar spacing: remove WP html margin, use body padding instead */
html {
  margin-top: 0 !important;
}

/* Desktop admin bar */
@media (min-width: 783px) {
  body.admin-bar {
    padding-top: 32px; /* height of the black WP admin bar */
  }
}

/* Mobile / small admin bar */
@media (max-width: 782px) {
  body.admin-bar {
    padding-top: 46px; /* taller admin bar on small screens */
  }
}

body.home .pg13-fullscreen-shell .ggf-home-influencer-spotlight{
  width: 210px !important; /* keep sidebar column width */
  top: 132px !important;   /* optional: slightly tighter under header */
}

body.home .pg13-fullscreen-shell .ggf-home-influencer-thumb{
  width: 160px !important;     /* shrink the card, not the column */
  margin: 0 auto !important;   /* center inside 210px column */
  border-radius: 16px;
  overflow: hidden;
  aspect-ratio: 4 / 5;         /* stabilizes layout */
}

body.home .pg13-fullscreen-shell .ggf-home-influencer-thumb-img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}



/* Add a touch of top breathing without increasing overall header height */
body.home .pg13-top-nav{
  padding-top: 18px !important;
  padding-bottom: 12px !important;
}

/* Stop active button from "whiting out" on hover (covers both variants we’ve used) */
body.home .pg13-top-link--active:hover{
  background: #111 !important;
  color: #fff !important;
}
body.home .pill--pg13.pill--active:hover,
body.home .pill--pg13.is-active:hover{
  background: #111 !important;
  color: #fff !important;
}
/* === /GGF_POLISH_20260106 === */


/* === GGF_POLISH_20260106: influencer thumb shrink (revert: delete this block) === */
:where(#secondary, .sidebar, .site-sidebar, .ggf-sidebar) :where(.ggf-influencer, .ggf-influencer-card, .ggf-influencer-widget, .ggf-sidebar-influencer) img {
  width: 100%;
  max-width: 260px;     /* was effectively larger; adjust 220–280 as desired */
  aspect-ratio: 4 / 5;  /* consistent, prevents layout shift */
  height: auto;
  object-fit: cover;
  border-radius: 14px;
  display: block;
}
/* === /GGF_POLISH_20260106 === */

/* === GGF_POLISH_20260106: influencer sidebar thumb shrink (revert: delete block) === */
.pg13-fullscreen-shell .ggf-home-influencer-spotlight{
  width: 160px;  /* was 210px (~14% smaller) */
  top: 132px;    /* optional: slightly tighter under header */
}

.pg13-fullscreen-shell .ggf-home-influencer-thumb{
  border-radius: 16px;  /* slightly tighter */
  aspect-ratio: 4 / 5;  /* stabilizes layout */
}

.pg13-fullscreen-shell .ggf-home-influencer-thumb-img{
  width: 100%;
  height: 100%;
  object-fit: cover;    /* works with aspect-ratio above */
  display: block;
}
/* === /GGF_POLISH_20260106 === */

/* === GGF_POLISH_20260106_TWEAK3: scroll hint spacing (revert: delete block) === */
body.home .pg13-fullscreen-shell .ggf-feed-page--pg13{
  padding-top: 14px !important; /* pushes hint below nav */
}


  line-height: 1.15;
}

/* Scoped override for PG13 and X-Members shells */
html.ggf-pg13-shell .ggf-meta-who,
html.ggf-xm-shell .ggf-meta-who,
html.ggf-xm .ggf-meta-who,
html.ggf-pg13 .ggf-meta-who{
  display: inline-flex !important;
  white-space: nowrap !important;
  width: fit-content !important;
  max-width: min(320px, calc(100% - 28px)) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

html.ggf-pg13-shell .ggf-meta,
html.ggf-xm-shell .ggf-meta,
html.ggf-xm .ggf-meta,
html.ggf-pg13 .ggf-meta{
  width: auto !important;
  max-width: min(320px, calc(100% - 28px)) !important;
}

/* ===== Members Models – tile sizing (scoped, safe) ===== */
body.page-template-members-models .ggf-members-card{


/* 1) Main clears the fixed stack (admin bar + header) */
body.home main.pg13-main{
  padding-top: var(--ggf-fixed-top, 0px) !important;
}

/* 2) Kill ALL extra top padding on the swipe wrapper */
body.home main.pg13-main > section.model-feed-swipe{
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* 3) Kill card internal top padding (this was adding “dead” air before media) */
body.home main.pg13-main article.ggf-card{
  padding-top: 0 !important;
}

/* 4) Safety: no special casing needed */
body.home main.pg13-main article.ggf-card:first-of-type{
  margin-top: 0 !important;
}

/* Home: align legacy header var to real fixed stack (admin + header) */
body.home .ggf-feed-page--pg13{
  --ggf-header-h: var(--ggf-fixed-top, 78px);
}


