/* ==========================================================================
   R2L WordPress - Responsive CSS
   Overrides Framer CSS for mobile/tablet layouts
   ========================================================================== */

/* ===== DESKTOP REGRESSION FIX (Framer card rows collapsing to 1px) ===== */
.framer-6qF4n .framer-an511j,
.framer-6qF4n .framer-1zu3pp,
.framer-6qF4n .framer-1qh4o5p {
  height: auto !important;
  min-height: 0 !important;
  flex: 0 0 auto !important;
  overflow: visible !important;
}

.framer-6qF4n .framer-1skh5oz,
.framer-6qF4n .framer-1beonkt,
.framer-6qF4n .framer-2fuei3,
.framer-6qF4n .framer-12livdx,
.framer-6qF4n .framer-u9oyk6,
.framer-6qF4n .framer-l5ipy7,
.framer-6qF4n .framer-a7ap7o {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}

.framer-6qF4n .framer-1l6qsu6,
.framer-6qF4n .framer-1vkf6j4,
.framer-6qF4n .framer-mu1oy2,
.framer-6qF4n .framer-1i4je0i,
.framer-6qF4n .framer-37zuud,
.framer-6qF4n .framer-6ezlg,
.framer-6qF4n .framer-1prb3bu {
  height: 320px !important;
  min-height: 320px !important;
  overflow: hidden !important;
  flex: 0 0 auto !important;
}

/* ===== FOOTER NAV SPACING: MATCH ORIGINAL FRAMER LAYOUT ===== */
@media (min-width: 769px) {
  .framer-yscky .framer-1e6nomj {
    gap: 50px !important;
  }

  .framer-yscky .framer-mhekn3 {
    justify-content: space-between !important;
    align-self: stretch !important;
    width: auto !important;
    gap: 0 !important;
  }

  .framer-yscky .framer-8opsum,
  .framer-yscky .framer-wnoshy {
    gap: 10px !important;
    justify-content: flex-start !important;
  }
}

/* ===== BLOGS SECTION SPACING RESTORE (desktop/tablet) ===== */
@media (min-width: 769px) and (max-width: 1439.98px) {
  .framer-6qF4n .framer-11airuy {
    gap: 40px !important;
  }

  .framer-6qF4n .framer-bwlfwk {
    height: auto !important;
    flex: 0 0 auto !important;
    place-content: flex-start !important;
  }
}

/* ===== HAMBURGER MENU ===== */
.hamburger-toggle {
  display: none;
  background: none;
  border: none;
  cursor: pointer;
  padding: 10px;
  z-index: 200;
  position: relative;
}
.hamburger-toggle span {
  display: block;
  width: 22px;
  height: 1.5px;
  background: #c8a45e;
  margin: 3px 0;
  transition: transform 0.3s ease, opacity 0.3s ease;
  border-radius: 0;
}
.hamburger-toggle.active span {
  background: #c8a45e;
}
.hamburger-toggle.active span:nth-child(1) {
  transform: rotate(45deg) translate(4px, 4px);
}
.hamburger-toggle.active span:nth-child(2) {
  opacity: 0;
}
.hamburger-toggle.active span:nth-child(3) {
  transform: rotate(-45deg) translate(4px, -4px);
}

/* ===== MOBILE NAV OVERLAY ===== */
.mobile-nav {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.97);
  z-index: 150;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 25px;
  padding: 20px;
}
.mobile-nav.active {
  display: flex;
}
.mobile-nav a {
  color: rgba(255, 255, 255, 0.85);
  text-decoration: none;
  font-family: "Inter", sans-serif;
  font-size: 18px;
  font-weight: 400;
  padding: 10px 20px;
  letter-spacing: 0.5px;
  transition: color 0.2s;
}
.mobile-nav a:hover,
.mobile-nav a:active {
  color: #c8a45e;
}
.mobile-nav .mobile-subscribe-btn {
  background: rgb(182, 50, 46);
  border-radius: 30px;
  padding: 12px 30px;
  margin-top: 15px;
  font-weight: 700;
}


/* Mobile-only pills (hidden by default) */
.hero-pills-mobile {
  display: none;
}

/* ===== TABLET: max-width 1024px ===== */
@media (max-width: 1024px) {
  /* Force all Framer containers to be fluid */
  .framer-6qF4n.framer-72rtr7,
  .framer-wuOM1.framer-119p4sd,
  .framer-cRx5Q.framer-1a5s48y,
  .framer-aHfgS.framer-19z301x,
  .framer-g1udl.framer-pydnqp,
  [data-framer-root] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    align-items: stretch !important;
  }

  /* Navbar - all variants */
  .framer-f4Gny.framer-1n50557 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 20px 30px !important;
    height: auto !important;
    min-height: 70px !important;
  }

  /* Navbar outer container - all pages */
  .framer-kk53s3-container,
  .framer-1390vnj-container,
  .framer-73az1d-container,
  .framer-11cxcqz-container,
  .framer-1pevdoj-container {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }

  /* Hero */
  .framer-vwx3uq {
    height: auto !important;
    max-height: none !important;
    min-height: auto !important;
    padding: 120px 40px 40px !important;
  }

  /* Episodes */
  .framer-6y3rri {
    height: auto !important;
    padding: 50px 40px !important;
  }

  /* Host */
  .framer-ce6ds {
    height: auto !important;
    padding: 50px 40px !important;
  }

  /* Blogs */
  .framer-11airuy {
    height: auto !important;
    padding: 50px 40px !important;
  }

  /* Promo */
  .framer-tpp3wd {
    height: auto !important;
    padding: 50px 40px !important;
  }

  /* Footer */
  .framer-yscky.framer-dxqbki,
  .framer-yscky {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 60px 40px !important;
  }
}

/* ===== MOBILE: max-width 768px ===== */
@media (max-width: 768px) {
  /* Prevent horizontal scroll */
  html, body {
    overflow-x: hidden !important;
    width: 100% !important;
  }

  /* ---- GLOBAL FLUID RESET ---- */
  /* Force ALL framer containers to be fluid */
  [class*="framer-"] {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Root containers - all pages */
  .framer-6qF4n.framer-72rtr7,
  .framer-wuOM1.framer-119p4sd,
  .framer-cRx5Q.framer-1a5s48y,
  .framer-aHfgS.framer-19z301x,
  .framer-g1udl.framer-pydnqp,
  [data-framer-root] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
    align-items: stretch !important;
  }

  /* All images should be responsive */
  img {
    max-width: 100% !important;
    height: auto !important;
  }

  /* Preserve background/cover images */
  [data-framer-background-image-wrapper] img {
    object-fit: cover !important;
    height: 100% !important;
  }

  /* Show hamburger, hide desktop nav */
  .hamburger-toggle,
  .hamburger-toggle.active {
    position: fixed !important;
    top: 0 !important;
    right: 16px !important;
    z-index: 200 !important;
    height: 60px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
  }
  .hamburger-toggle {
    display: flex !important;
    flex-direction: column;
    justify-content: center;
  }
  /* Hide nav links pill on mobile - all pages */
  .framer-6vaqie-container {
    display: none !important;
  }
  /* Hide subscribe button on mobile - all pages */
  .framer-ptinic-container {
    display: none !important;
  }

  /* ---- NAVBAR ---- */
  /* Navbar outer container - all pages */
  .framer-kk53s3-container,
  .framer-1390vnj-container,
  .framer-73az1d-container,
  .framer-11cxcqz-container,
  .framer-1pevdoj-container {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
  }

  /* Navbar bar - all variants */
  .framer-f4Gny.framer-1n50557 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 15px 20px !important;
    height: 60px !important;
    min-height: 60px !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
  }

  /* Logo - smaller on mobile */
  .framer-1hgse6m {
    max-width: 300px !important;
    flex-shrink: 0 !important;
  }
  .framer-1hgse6m img,
  a.framer-11e7qqa img {
    max-width: 240px !important;
    height: auto !important;
  }
  a.framer-11e7qqa {
    width: 300px !important;
  }

  /* ---- HERO ---- */
  .framer-vwx3uq {
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    padding: 22vh 20px 25px !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 16px !important;
    position: relative !important;
    display: flex !important;
    overflow: visible !important;
  }

  /* Hero background - full cover */
  .framer-4m9may {
    position: absolute !important;
    inset: 0 !important;
    height: 100% !important;
    width: 100% !important;
  }
  .framer-4m9may img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  /* ---- HERO CARD ---- */
  .framer-tls5bk {
    background: transparent !important;
    padding: 0 !important;
    border-radius: 0 !important;
    gap: 20px !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    position: relative !important;
    z-index: 2 !important;
    box-shadow: none !important;
  }

  /* Headline bubble */
  .framer-1f1l1o5 {
    background: rgba(255, 255, 255, 0.85) !important;
    border-radius: 20px !important;
    padding: 20px !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  .framer-1m6bmh6 h1.framer-text {
    font-size: 36px !important;
    line-height: 1.1 !important;
  }
  .framer-1g0r7gh {
    width: 100% !important;
    min-width: 0 !important;
  }

  /* Hide desktop pills inside card */
  .framer-tls5bk > .ssr-variant {
    display: none !important;
  }

  /* Spotify embed */
  .framer-1e8ios-container {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    position: relative !important;
    z-index: 2 !important;
    margin-top: 16px !important;
  }
  .framer-1e8ios-container iframe {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    border-radius: 12px !important;
  }

  /* Mobile pills - below spotify */
  .hero-pills-mobile {
    display: block !important;
    width: 100% !important;
    padding-top: 10px !important;
    position: relative !important;
    z-index: 2 !important;
  }
  .hero-pills-mobile .framer-e0hMQ {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
  }
  .hero-pills-mobile .framer-1nc1cxs .framer-text {
    color: rgb(0, 0, 0) !important;
  }
  .hero-pills-mobile .framer-ei0kod {
    flex-wrap: nowrap !important;
    flex-direction: row !important;
    gap: 8px !important;
    justify-content: flex-start !important;
  }
  .hero-pills-mobile a.framer-rdp8r5,
  .hero-pills-mobile a.framer-rr53c1,
  .hero-pills-mobile a.framer-2x28az {
    flex-shrink: 0 !important;
    white-space: nowrap !important;
  }

  /* ---- EPISODES ---- */
  .framer-6y3rri {
    height: auto !important;
    min-height: auto !important;
    padding: 40px 15px !important;
    gap: 25px !important;
    overflow: visible !important;
  }
  .framer-1lf1su9 h1,
  .framer-1lf1su9 .framer-text {
    font-size: 28px !important;
    line-height: 1.2 !important;
  }

  /* Episodes grid - stack vertically */
  .framer-an511j {
    flex-direction: column !important;
    gap: 20px !important;
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
  }
  /* Episode cards - full width, override Framer 1px trick */
  .framer-1skh5oz,
  .framer-1beonkt,
  .framer-2fuei3 {
    width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
    height: auto !important;
    overflow: visible !important;
  }
  /* Episode card image containers - override Framer 1px height */
  .framer-1l6qsu6,
  .framer-1vkf6j4,
  .framer-mu1oy2 {
    height: 300px !important;
    width: 100% !important;
    overflow: hidden !important;
    flex: none !important;
  }
  /* Episode card titles */
  .framer-urkmnb,
  .framer-wgwf3f,
  .framer-96ouiw {
    height: auto !important;
    overflow: visible !important;
    width: 100% !important;
  }
  /* Episode card tag containers + arrow icons */
  .framer-544ml9,
  .framer-7u7yz3,
  .framer-ss843l {
    flex-wrap: wrap !important;
    gap: 6px !important;
  }
  .framer-ntm3gq,
  .framer-te71a3,
  .framer-gtfrd9 {
    flex-shrink: 0 !important;
  }
  /* Episode card overlay layers */
  .framer-1p9ahqa,
  .framer-1en35tn,
  .framer-1clab32 {
    position: absolute !important;
    inset: 0 !important;
  }

  /* ---- HOST SECTION ---- */
  .framer-ce6ds {
    height: auto !important;
    min-height: auto !important;
    flex-direction: column !important;
    padding: 40px 15px !important;
    gap: 25px !important;
  }
  /* Host image */
  .framer-1c02jqh {
    width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
    height: 350px !important;
    border-radius: 20px !important;
    overflow: hidden !important;
  }
  .framer-1c02jqh img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
  /* Host text */
  .framer-113qmq {
    width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
    gap: 25px !important;
  }
  .framer-1cl6wyl h1,
  .framer-1cl6wyl .framer-text {
    font-size: 28px !important;
    line-height: 1.2 !important;
  }

  /* ---- BLOGS ---- */
  .framer-11airuy {
    height: auto !important;
    min-height: auto !important;
    padding: 40px 15px !important;
    gap: 25px !important;
    overflow: visible !important;
  }
  .framer-1fidgc4 h1,
  .framer-1fidgc4 .framer-text {
    font-size: 28px !important;
    line-height: 1.2 !important;
  }
  .framer-bwlfwk {
    gap: 20px !important;
    height: auto !important;
  }
  /* Blog rows - stack vertically, override Framer 1px height */
  .framer-1zu3pp,
  .framer-1qh4o5p {
    flex-direction: column !important;
    gap: 20px !important;
    height: auto !important;
    overflow: visible !important;
  }
  /* Blog cards - full width, override Framer 1px trick */
  .framer-12livdx,
  .framer-u9oyk6,
  .framer-l5ipy7,
  .framer-a7ap7o {
    width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
    height: auto !important;
    overflow: visible !important;
  }
  /* Blog card image containers - override Framer 1px height */
  .framer-1i4je0i,
  .framer-37zuud,
  .framer-6ezlg,
  .framer-1prb3bu {
    height: 250px !important;
    width: 100% !important;
    overflow: hidden !important;
    flex: none !important;
  }
  /* Blog card titles - prevent truncation */
  .framer-1l1ysc3,
  .framer-9b0nd8,
  .framer-ud8miy,
  .framer-1rsh4g3 {
    height: auto !important;
    overflow: visible !important;
    width: 100% !important;
  }
  .framer-1l1ysc3 .framer-text,
  .framer-9b0nd8 .framer-text,
  .framer-ud8miy .framer-text,
  .framer-1rsh4g3 .framer-text,
  .framer-1q3xgbb .framer-text,
  .framer-10xsvha .framer-text,
  .framer-1ircjdw .framer-text,
  .framer-10980fq .framer-text {
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
    text-overflow: unset !important;
  }
  /* Blog card overlay layers */
  .framer-1thke6o,
  .framer-1kol26u,
  .framer-1s9l2om,
  .framer-jmwzbz {
    position: absolute !important;
    inset: 0 !important;
  }
  /* Blog card tag containers */
  .framer-gk94ox,
  .framer-p414y3,
  .framer-y1f1qd,
  .framer-194qtqg {
    flex-wrap: wrap !important;
    gap: 6px !important;
  }

  /* ---- PROMO SECTION ---- */
  .framer-tpp3wd {
    height: auto !important;
    min-height: auto !important;
    flex-direction: column !important;
    padding: 40px 15px !important;
    gap: 25px !important;
  }
  .framer-r4b98a {
    width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
    height: 350px !important;
    border-radius: 20px !important;
    overflow: hidden !important;
  }
  .framer-r4b98a img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
  .framer-rboe3k {
    width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
    gap: 25px !important;
  }

  /* ---- FOOTER ---- */
  .framer-1jj1u1i-container,
  .framer-1ilpu3g-container {
    width: 100% !important;
    overflow: hidden !important;
  }
  .framer-yscky,
  .framer-yscky.framer-dxqbki {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 40px 20px !important;
    gap: 40px !important;
  }
  .framer-l5p4wk {
    width: 100% !important;
  }
  .framer-az2dvr {
    flex-direction: column !important;
    gap: 30px !important;
    width: 100% !important;
  }
  .framer-i4bdyb {
    align-items: center !important;
    text-align: center !important;
    width: 100% !important;
  }
  /* Footer logo smaller */
  .framer-1j6arpd {
    width: 120px !important;
    height: 120px !important;
  }
  .framer-1j6arpd img {
    width: 120px !important;
    height: 120px !important;
  }
  .framer-1e6nomj {
    width: 100% !important;
    min-width: 0 !important;
  }
  .framer-mhekn3 {
    flex-direction: column !important;
    align-items: center !important;
    gap: 10px !important;
  }
  .framer-8opsum,
  .framer-wnoshy {
    flex-direction: row !important;
    gap: 15px !important;
    justify-content: center !important;
  }
  .framer-ei0kod {
    flex-wrap: nowrap !important;
    flex-direction: row !important;
    justify-content: center !important;
    gap: 8px !important;
  }
  .framer-1lkrbi7-container {
    width: 100% !important;
  }

  /* Footer copyright text centering */
  .framer-ffccqd {
    text-align: center !important;
    width: 100% !important;
  }

  /* ---- INNER PAGE CONTENT SECTIONS ---- */

  /* About Us page content */
  .framer-1c7wkt4 {
    padding: 0 !important;
  }
  .framer-1wf1dub {
    padding: 40px 15px !important;
    height: auto !important;
  }
  .framer-14o2t6q {
    width: 100% !important;
    min-width: 0 !important;
    padding: 20px !important;
  }
  /* About Us icon set - stack vertically */
  .framer-qyp70q {
    flex-direction: column !important;
    gap: 20px !important;
    align-items: center !important;
    width: 100% !important;
  }
  .framer-1lp01m4,
  .framer-r9fgzl,
  .framer-1lx1mp7 {
    width: 100% !important;
    min-width: 0 !important;
  }

  /* About Us content area — basic fluid setup (detailed rules in scoped section below) */
  .framer-eqlulx {
    padding: 20px 10px !important;
    height: auto !important;
    overflow: visible !important;
  }
  .framer-mipz1h {
    width: 100% !important;
    min-width: 0 !important;
  }
  /* About Us bottom image */
  .framer-1qb9a7m {
    height: 300px !important;
    width: 100% !important;
  }

  /* General inner page sections (exclude homepage hero "Introduce") */
  [data-framer-name="About Us - Primary"],
  [data-framer-name="Product - Primary"],
  [data-framer-name="Blog - Primary"],
  [data-framer-name="Contact Us - Primary"] {
    padding: 40px 15px !important;
    height: auto !important;
  }

  [data-framer-name="Content"],
  [data-framer-name="Content 1"] {
    width: 100% !important;
    padding: 15px !important;
  }

  [data-framer-name="Section 1"] {
    flex-direction: column !important;
    padding: 40px 15px !important;
    height: auto !important;
  }

  [data-framer-name="Icon set"] {
    flex-direction: column !important;
    gap: 20px !important;
    align-items: flex-start !important;
  }

  [data-framer-name="Socialize"] {
    flex-direction: column !important;
    gap: 20px !important;
    align-items: center !important;
    width: 100% !important;
  }

  /* ===== EPISODES PAGE ===== */
  /* Root container */
  .framer-cRx5Q.framer-1a5s48y {
    width: 100% !important;
  }
  /* Hero - stack vertically */
  .framer-cRx5Q .framer-staqgf {
    flex-direction: column !important;
    height: auto !important;
    padding: 80px 20px 30px !important;
    align-items: flex-start !important;
  }
  /* Hero card - full width */
  .framer-cRx5Q .framer-3p47mi {
    width: 100% !important;
    max-width: 100% !important;
  }
  .framer-cRx5Q .framer-ozrh2z {
    width: 100% !important;
  }
  /* Episode container */
  .framer-cRx5Q .framer-jt3siq {
    padding: 30px 20px !important;
    gap: 30px !important;
    overflow: visible !important;
  }
  /* Episode cards row - stack vertically */
  .framer-cRx5Q .framer-v45abl {
    flex-direction: column !important;
    gap: 20px !important;
  }
  /* Episode cards - full width, override 1px trick */
  .framer-cRx5Q .framer-1wfc6ln,
  .framer-cRx5Q .framer-1o6cxol,
  .framer-cRx5Q .framer-1rvdmxe {
    width: 100% !important;
    flex: none !important;
    height: auto !important;
  }
  /* Episode card images - override 1px height */
  .framer-cRx5Q .framer-303wmq,
  .framer-cRx5Q .framer-hs7jmj,
  .framer-cRx5Q .framer-16qq6if {
    height: 300px !important;
    flex: none !important;
    width: 100% !important;
    overflow: hidden !important;
  }
  /* Episode card titles */
  .framer-cRx5Q .framer-rwf7c8,
  .framer-cRx5Q .framer-75n6fv,
  .framer-cRx5Q .framer-8n3xz0 {
    height: auto !important;
    overflow: visible !important;
  }

  /* ===== BLOGS PAGE ===== */
  /* Blog hero section — compact like Episodes */
  .framer-aHfgS .framer-1ognk90 {
    height: auto !important;
    min-height: auto !important;
    padding: 80px 20px 25px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 20px !important;
  }
  /* Blog hero card — full width, match Episodes */
  .framer-aHfgS .framer-1bkvtyu {
    width: 100% !important;
    background-color: rgba(255, 255, 255, 0.85) !important;
    gap: 25px !important;
    padding: 25px !important;
    overflow: visible !important;
  }
  /* Blog subscribe bar — push outside card */
  .framer-aHfgS .framer-1bkvtyu > [class*="framer-"][class*="-container"]:last-child {
    margin-top: 10px !important;
    margin-left: -25px !important;
    margin-right: -25px !important;
    width: calc(100% + 50px) !important;
    padding: 10px 15px !important;
  }
  /* Blog content row - stack vertically */
  .framer-f2806b {
    flex-direction: column !important;
    width: 100% !important;
    gap: 30px !important;
    overflow: visible !important;
  }
  /* Blog cards - full width */
  .framer-8w7suu,
  .framer-wxmu35,
  .framer-1b6iguy {
    width: 100% !important;
    flex: none !important;
    height: auto !important;
    overflow: visible !important;
  }
  /* Blog card images */
  .framer-1u42to4,
  .framer-14cdt2r,
  .framer-glv2vt {
    width: 100% !important;
    height: 250px !important;
  }
  /* Blog container */
  .framer-i2833u {
    padding: 30px 20px !important;
    gap: 30px !important;
    overflow: visible !important;
    align-items: stretch !important;
  }
  /* Blog inner content wrapper */
  .framer-uli6s9 {
    align-items: stretch !important;
    width: 100% !important;
    gap: 20px !important;
  }
  /* Blog hero headline */
  .framer-37eskp {
    width: 100% !important;
    overflow: visible !important;
  }

  /* ===== ABOUT US PAGE ===== */
  /* Introduce section — scoped to match Framer specificity */
  .framer-wuOM1 .framer-1wf1dub {
    height: auto !important;
    min-height: 200px !important;
    overflow: visible !important;
    flex-direction: column !important;
    padding: 80px 20px 30px !important;
    gap: 15px !important;
  }
  /* Hero card — semi-transparent on mobile */
  .framer-wuOM1 .framer-14o2t6q {
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    width: 100% !important;
    background-color: rgba(255, 255, 255, 0.85) !important;
  }
  /* Icon set — align left */
  .framer-wuOM1 .framer-qyp70q {
    height: auto !important;
    overflow: visible !important;
    width: 100% !important;
    align-items: flex-start !important;
  }
  /* Icon rows - keep horizontal, align left */
  .framer-wuOM1 .framer-1lp01m4,
  .framer-wuOM1 .framer-r9fgzl,
  .framer-wuOM1 .framer-1lx1mp7 {
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
  }
  /* Icon circles - keep compact */
  .framer-wuOM1 .framer-1cm8eni,
  .framer-wuOM1 .framer-1y0i4ky,
  .framer-wuOM1 .framer-1i0c875 {
    flex-shrink: 0 !important;
  }
  /* Icon text - fill remaining space, align left */
  .framer-wuOM1 .framer-1e9vlqf,
  .framer-wuOM1 .framer-10j4gnz,
  .framer-wuOM1 .framer-18zscb8 {
    width: 1px !important;
    flex: 1 1 auto !important;
    align-items: flex-start !important;
  }
  .framer-wuOM1 .framer-1so4d5z {
    width: 100% !important;
  }
  /* Content timeline — scoped — keep horizontal like original */
  .framer-wuOM1 .framer-eqlulx {
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
    padding: 20px 10px !important;
    font-size: 16px !important;
    gap: 20px !important;
  }
  /* Main row container — KEEP horizontal (row) like original */
  .framer-wuOM1 .framer-mipz1h {
    flex-direction: row !important;
    gap: 0 !important;
    overflow: visible !important;
  }
  /* Vertical timeline line — KEEP visible, just thinner */
  .framer-wuOM1 .framer-zdte2t {
    display: block !important;
    width: 1px !important;
    min-width: 1px !important;
    flex: none !important;
    background-color: #000 !important;
  }
  /* Content column beside the line */
  .framer-wuOM1 .framer-66x8rx {
    width: calc(100% - 1px) !important;
    flex: 1 1 auto !important;
    gap: 30px !important;
    overflow: visible !important;
  }
  /* Force readable text on all About Us content */
  .framer-wuOM1 .framer-eqlulx .framer-text,
  .framer-wuOM1 .framer-eqlulx p,
  .framer-wuOM1 .framer-eqlulx span {
    font-size: 14px !important;
    line-height: 1.5 !important;
    white-space: normal !important;
    word-break: break-word !important;
  }
  .framer-wuOM1 .framer-eqlulx h1.framer-text,
  .framer-wuOM1 .framer-eqlulx h2.framer-text,
  .framer-wuOM1 .framer-eqlulx h3.framer-text {
    font-size: 20px !important;
    line-height: 1.3 !important;
  }
  .framer-wuOM1 .framer-eqlulx h4.framer-text {
    font-size: 16px !important;
    line-height: 1.4 !important;
  }
  /* Decorative "Part" labels — force horizontal text */
  .framer-wuOM1 .framer-ebpmdy,
  .framer-wuOM1 .framer-f7adlj {
    padding: 3px 10px !important;
    border-radius: 16px !important;
    width: max-content !important;
    min-width: max-content !important;
    flex-direction: row !important;
  }
  .framer-wuOM1 .framer-ebpmdy *,
  .framer-wuOM1 .framer-f7adlj * {
    display: inline !important;
    white-space: nowrap !important;
  }
  .framer-wuOM1 .framer-1yzckgi,
  .framer-wuOM1 .framer-159mf2u {
    display: block !important;
    white-space: nowrap !important;
  }
  /* Timeline parts — KEEP horizontal (row) like original */
  .framer-wuOM1 .framer-rx3k8p,
  .framer-wuOM1 .framer-eza61o {
    flex-direction: row !important;
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
    gap: 0 !important;
  }
  /* Horizontal connectors — keep visible, compact */
  .framer-wuOM1 .framer-5eva5a,
  .framer-wuOM1 .framer-1wfqg95 {
    width: 15px !important;
    min-width: 15px !important;
    flex: none !important;
    padding: 10px 0 0 !important;
  }
  .framer-wuOM1 .framer-139bi6i,
  .framer-wuOM1 .framer-2vsqjo {
    width: 15px !important;
    min-width: 15px !important;
    flex: none !important;
  }
  /* Timeline content columns — fill remaining space */
  .framer-wuOM1 .framer-qt4ajf,
  .framer-wuOM1 .framer-22to6p {
    width: 1px !important;
    flex: 1 1 auto !important;
    overflow: visible !important;
    gap: 8px !important;
  }
  /* Timeline headlines */
  .framer-wuOM1 .framer-1nm0lk3,
  .framer-wuOM1 .framer-1695vwq {
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
  }
  /* Timeline subheadlines — keep row, overflow visible */
  .framer-wuOM1 .framer-1e8x8g7,
  .framer-wuOM1 .framer-wredao {
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
    flex: 1 1 auto !important;
  }
  /* Timeline sub-rows — keep horizontal but allow wrapping */
  .framer-wuOM1 .framer-1m8vr0v,
  .framer-wuOM1 .framer-wju5dc {
    flex-direction: column !important;
    gap: 10px !important;
  }
  .framer-wuOM1 .framer-1jihfwq,
  .framer-wuOM1 .framer-ly8ksk {
    width: 100% !important;
    flex: none !important;
    flex-direction: column !important;
    gap: 10px !important;
  }
  /* Timeline text - make readable */
  .framer-eqlulx .framer-text {
    font-size: 14px !important;
    line-height: 1.5 !important;
    white-space: normal !important;
    word-break: break-word !important;
  }
  /* White card containers — full width */
  .framer-wuOM1 .framer-syo0ut,
  .framer-wuOM1 .framer-1xsvndr {
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
    flex: none !important;
    padding: 15px !important;
  }
  /* Card sub-rows — stack vertically to fit narrow space */
  .framer-wuOM1 .framer-19w1xpb,
  .framer-wuOM1 .framer-1jzhyhz {
    flex-direction: column !important;
    gap: 8px !important;
    width: 100% !important;
    height: auto !important;
  }
  /* Card items — full width */
  .framer-wuOM1 .framer-pfg9a8,
  .framer-wuOM1 .framer-1t51k1v,
  .framer-wuOM1 .framer-50djv,
  .framer-wuOM1 .framer-klqrme,
  .framer-wuOM1 .framer-b67y1l {
    width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
    height: auto !important;
  }
  /* Text blocks inside cards */
  .framer-wuOM1 .framer-1olmwjq,
  .framer-wuOM1 .framer-9kmowo {
    width: 100% !important;
    flex: none !important;
  }
  /* Kill all flex-grow on timeline children that use inline 1px trick */
  .framer-wuOM1 .framer-eqlulx [style*="flex: 1 0 0"],
  .framer-wuOM1 .framer-eqlulx [style*="flex:1 0 0"] {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    height: auto !important;
  }

  /* ===== CONTACT US PAGE ===== */
  /* Hero section */
  .framer-g1udl .framer-1aa8q9h {
    height: auto !important;
    min-height: auto !important;
    padding: 80px 20px 25px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    overflow: visible !important;
  }
  /* Form card — full width + semi-transparent */
  .framer-g1udl .framer-j4zg40 {
    width: 100% !important;
    background-color: rgba(255, 255, 255, 0.85) !important;
    overflow: visible !important;
    padding: 25px !important;
  }
  /* Social section */
  .framer-zksb6f {
    height: auto !important;
    padding: 30px 20px !important;
    overflow: visible !important;
  }
  .framer-4qesgo {
    width: 100% !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 20px !important;
    overflow: visible !important;
    height: auto !important;
  }
  /* Social link items - full width so text doesn't truncate */
  .framer-94poni,
  .framer-1hpxo24 {
    width: auto !important;
    min-width: 80px !important;
    overflow: visible !important;
  }
  .framer-py2gh5 {
    width: auto !important;
    overflow: visible !important;
  }

  /* ===== GLOBAL TEXT SIZE FIX FOR INNER PAGES ===== */
  /* Framer sets body font-size: 12px — override for readability on paragraphs only */
  .framer-cRx5Q p.framer-text,
  .framer-i2833u p.framer-text,
  .framer-1aa8q9h p.framer-text,
  .framer-zksb6f p.framer-text {
    font-size: 14px !important;
    line-height: 1.5 !important;
  }
  /* ALL h1 headings — consistent size across every page */
  h1.framer-text {
    font-size: 36px !important;
    line-height: 1.1 !important;
  }
  /* ALL h2 headings */
  h2.framer-text {
    font-size: 28px !important;
    line-height: 1.2 !important;
  }

  /* ===== AUDIT FIXES ===== */

  /* ALL pages: body paragraph text minimum 15px */
  p.framer-text {
    font-size: 15px !important;
    line-height: 1.6 !important;
  }
  /* Footer paragraph text */
  .framer-yscky p.framer-text {
    font-size: 14px !important;
    line-height: 1.5 !important;
  }
  /* Footer nav links bigger */
  .framer-yscky .framer-8opsum .framer-text,
  .framer-yscky .framer-wnoshy .framer-text {
    font-size: 15px !important;
  }
  /* Footer copyright bottom padding — safe area for notched phones */
  .framer-yscky .framer-ffccqd {
    padding-bottom: 20px !important;
  }

  /* Homepage: tighten all major section gaps */
  .framer-6qF4n .framer-13wg1wy,
  .framer-6qF4n .framer-1qgfxs6,
  .framer-6qF4n .framer-6y3rri {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
    gap: 20px !important;
  }
  /* Homepage: latest episodes section */
  .framer-6qF4n .framer-13wg1wy {
    padding: 20px !important;
    gap: 15px !important;
  }

  /* Episodes: reduce section padding, remove dead space */
  .framer-cRx5Q .framer-jt3siq {
    padding: 20px !important;
    gap: 25px !important;
    height: auto !important;
    min-height: auto !important;
    align-items: stretch !important;
  }
  /* Episodes hero — tighter padding below card */
  .framer-cRx5Q .framer-staqgf {
    height: auto !important;
    min-height: auto !important;
    padding: 80px 20px 20px !important;
  }
  .framer-cRx5Q .framer-v45abl {
    flex-direction: column !important;
    gap: 20px !important;
    height: auto !important;
    overflow: visible !important;
  }
  /* Episode cards — auto height */
  .framer-cRx5Q .framer-1wfc6ln,
  .framer-cRx5Q .framer-1o6cxol,
  .framer-cRx5Q .framer-1rvdmxe {
    height: auto !important;
    width: 100% !important;
    flex: none !important;
  }
  .framer-cRx5Q .framer-303wmq,
  .framer-cRx5Q .framer-hs7jmj,
  .framer-cRx5Q .framer-16qq6if {
    height: 300px !important;
    flex: none !important;
  }

  /* About Us: increase timeline body text */
  .framer-wuOM1 .framer-eqlulx p.framer-text {
    font-size: 15px !important;
    line-height: 1.6 !important;
  }

  /* Contact: reduce gaps between ALL sections */
  .framer-g1udl.framer-pydnqp {
    gap: 0 !important;
  }
  /* Contact/Blog hero bg image — don't take full viewport */
  .framer-g1udl .framer-ka6ds0,
  .framer-aHfgS .framer-1ognk90 > div:first-child {
    height: 100% !important;
  }

  /* Blog content section padding */
  .framer-aHfgS .framer-i2833u {
    padding: 30px 20px !important;
    gap: 30px !important;
  }

  /* ALL pages: kill excess space before footer — footer subscribe bar containers */
  .framer-1jj1u1i-container,
  .framer-1ilpu3g-container {
    margin-top: 0 !important;
    padding: 0 !important;
  }
  /* All pages: root page containers — no gap between sections */
  .framer-6qF4n.framer-72rtr7,
  .framer-cRx5Q.framer-1a5s48y,
  .framer-aHfgS.framer-19z301x,
  .framer-g1udl.framer-pydnqp {
    gap: 0 !important;
  }
  /* About Us: bottom decorative image — compact */
  .framer-1qb9a7m {
    height: 200px !important;
  }
  /* About Us: Luxury Part section — more breathing room above */
  .framer-wuOM1 .framer-eza61o {
    padding-top: 10px !important;
  }
  /* Contact: tighten social section to footer */
  .framer-g1udl .framer-zksb6f {
    margin-bottom: 0 !important;
    padding-bottom: 10px !important;
    padding-top: 15px !important;
  }
  /* Contact: form container itself — slightly less bottom padding */
  .framer-g1udl .framer-j4zg40 {
    margin-bottom: 0 !important;
  }
  /* Footer nav rows: comfortable horizontal spacing */
  .framer-yscky .framer-8opsum,
  .framer-yscky .framer-wnoshy {
    gap: 20px !important;
    justify-content: center !important;
  }
  /* Blog cards: tighten gap between cards */
  .framer-f2806b {
    gap: 20px !important;
  }
  .framer-aHfgS .framer-f2806b {
    gap: 20px !important;
  }
  /* All inner sections — stretch children full width */
  .framer-cRx5Q .framer-jt3siq,
  .framer-aHfgS .framer-i2833u,
  .framer-g1udl .framer-pydnqp {
    align-items: stretch !important;
  }
  /* Contact form: disable textarea resize on mobile */
  .framer-g1udl textarea {
    resize: vertical !important;
  }
  /* Homepage blog cards — full-width aligned */
  .framer-11airuy {
    align-items: stretch !important;
  }
  .framer-bwlfwk {
    align-items: stretch !important;
    width: 100% !important;
  }
  /* Global: any Framer section with flex-start alignment — stretch on mobile */
  .framer-6qF4n section,
  .framer-cRx5Q section,
  .framer-aHfgS section,
  .framer-wuOM1 section,
  .framer-g1udl section {
    align-items: stretch !important;
  }
  /* Ensure inner page hero cards are full-width and centered */
  .framer-cRx5Q .framer-3p47mi,
  .framer-aHfgS .framer-1bkvtyu {
    width: 100% !important;
    align-self: stretch !important;
  }

  /* Inner page hero card subscribe pills — horizontal row, outside card */
  .framer-cRx5Q .framer-ei0kod,
  .framer-aHfgS .framer-ei0kod,
  .framer-g1udl .framer-ei0kod {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
  }
  .framer-cRx5Q .framer-zxta8i,
  .framer-aHfgS .framer-zxta8i {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
  }
  /* Episodes hero card — overflow visible so pills can escape */
  .framer-cRx5Q .framer-3p47mi {
    overflow: visible !important;
    padding-bottom: 10px !important;
  }
  /* Move subscribe bar below the card on mobile */
  .framer-cRx5Q .framer-1recs11-container {
    margin-top: 20px !important;
    margin-left: -30px !important;
    margin-right: -30px !important;
    width: calc(100% + 60px) !important;
    padding: 15px 20px !important;
  }

  /* Contact social section — fix clipping */
  .framer-g1udl .framer-4qesgo {
    flex-direction: column !important;
    align-items: flex-start !important;
    height: auto !important;
    width: 100% !important;
    gap: 15px !important;
  }
  .framer-g1udl .framer-1cwu2ho {
    width: 100% !important;
    overflow: visible !important;
    height: auto !important;
  }
  .framer-g1udl .framer-1pknjbl {
    width: 100% !important;
    overflow: visible !important;
    height: auto !important;
    flex-direction: column !important;
    gap: 15px !important;
  }
  .framer-g1udl .framer-94poni,
  .framer-g1udl .framer-1hpxo24 {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    overflow: visible !important;
    flex: none !important;
    box-sizing: border-box !important;
  }
  .framer-g1udl .framer-py2gh5,
  .framer-g1udl .framer-165pgl6 {
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    overflow: visible !important;
    flex: none !important;
  }

  /* ===== SHARED INNER PAGE FIXES ===== */
  /* All inner page roots */
  .framer-cRx5Q.framer-1a5s48y,
  .framer-aHfgS,
  .framer-g1udl {
    width: 100% !important;
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }
  /* Inner page hero cards - full width */
  .framer-cRx5Q .framer-ozrh2z,
  .framer-37eskp {
    width: 100% !important;
  }
  /* Footer */
  .framer-yscky.framer-dxqbki,
  .framer-yscky.framer-v-6t7td5.framer-dxqbki {
    width: 100% !important;
    padding: 30px 20px 20px !important;
    gap: 25px !important;
  }
  .framer-yscky .framer-az2dvr {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0 !important;
  }
  /* Left column (logo + copyright) — restructure for mobile */
  .framer-yscky .framer-i4bdyb {
    width: 100% !important;
    flex: none !important;
    gap: 20px !important;
    display: contents !important;
  }
  /* Logo — stays at top */
  .framer-yscky .framer-1j6arpd {
    order: 1 !important;
    margin-bottom: 20px !important;
  }
  /* © 2025 — push to absolute bottom */
  .framer-yscky .framer-ffccqd {
    width: 100% !important;
    order: 99 !important;
    margin-top: 20px !important;
    text-align: center !important;
  }
  /* Right column (nav + subscribe) — middle */
  .framer-yscky .framer-1e6nomj {
    width: 100% !important;
    gap: 20px !important;
    order: 3 !important;
  }
  .framer-yscky .framer-mhekn3 {
    flex-wrap: wrap !important;
    gap: 20px !important;
    flex-direction: column !important;
  }
  .framer-yscky .framer-8opsum,
  .framer-yscky .framer-wnoshy {
    width: 100% !important;
  }
  /* Footer subscribe bar - stack label above pills, centered */
  .framer-yscky .framer-zxta8i,
  .framer-yscky .framer-e0hMQ {
    flex-direction: column !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    overflow: visible !important;
  }
  .framer-yscky .framer-ei0kod {
    flex-wrap: wrap !important;
    gap: 8px !important;
    width: 100% !important;
    justify-content: center !important;
  }
  .framer-yscky .framer-1nc1cxs {
    width: 100% !important;
    overflow: visible !important;
  }
  /* Footer subscribe link container */
  .framer-yscky .framer-1lkrbi7-container {
    width: 100% !important;
  }
}

/* ===== SMALL MOBILE: max-width 480px ===== */
@media (max-width: 480px) {
  /* ---- HEADINGS ---- */
  .framer-1lf1su9 h1,
  .framer-1lf1su9 .framer-text,
  .framer-1fidgc4 h1,
  .framer-1fidgc4 .framer-text,
  .framer-1cl6wyl h1,
  .framer-1cl6wyl .framer-text {
    font-size: 24px !important;
  }

  /* ---- NAVBAR ---- */
  a.framer-11e7qqa {
    width: 168px !important;
  }

  /* ---- FOOTER ---- */
  .framer-1j6arpd,
  .framer-1j6arpd img {
    width: 100px !important;
    height: 100px !important;
  }
  .framer-yscky,
  .framer-yscky.framer-dxqbki {
    padding: 30px 15px !important;
    gap: 30px !important;
  }

  /* Platform pills - keep horizontal */
  .framer-ei0kod {
    flex-wrap: nowrap !important;
    flex-direction: row !important;
    gap: 6px !important;
    justify-content: flex-start !important;
  }

  /* Host/Promo images shorter */
  .framer-1c02jqh,
  .framer-r4b98a {
    height: 280px !important;
  }

  /* About Us subheadline text even smaller */
  .framer-1e8x8g7 h4,
  .framer-wredao h4 {
    font-size: 14px !important;
  }
  /* About Us connector even tighter on small screens */
  .framer-wuOM1 .framer-5eva5a,
  .framer-wuOM1 .framer-1wfqg95 {
    width: 10px !important;
    min-width: 10px !important;
  }
  .framer-wuOM1 .framer-139bi6i,
  .framer-wuOM1 .framer-2vsqjo {
    width: 10px !important;
    min-width: 10px !important;
  }
}

/* ===== HOMEPAGE SPACING LOCK (approved baseline) ===== */
@media (min-width: 769px) and (max-width: 1439.98px) {
  .framer-6qF4n .framer-6y3rri {
    padding: 40px !important;
    gap: 50px !important;
  }

  .framer-6qF4n .framer-ce6ds,
  .framer-6qF4n .framer-tpp3wd {
    padding: 40px !important;
    gap: 40px !important;
  }

  .framer-6qF4n .framer-11airuy {
    padding: 40px !important;
    gap: 24px !important;
  }

  .framer-6qF4n .framer-bwlfwk {
    gap: 80px !important;
  }

  .framer-yscky .framer-1e6nomj {
    gap: 50px !important;
  }

  .framer-yscky .framer-mhekn3 {
    justify-content: space-between !important;
    gap: 0 !important;
  }

  .framer-yscky .framer-8opsum,
  .framer-yscky .framer-wnoshy {
    gap: 10px !important;
  }
}
