.elementor-410 .elementor-element.elementor-element-d7efd13{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}/* Start custom CSS *//* ============================================================
   ANDREENSE FM — PÁGINA PROGRAMAÇÃO
   CSS para Elementor (Custom CSS ou Site Settings > Custom CSS)
   Versão: 1.0 | 2025
   
   COMO USAR NO ELEMENTOR:
   1. Elementor > Site Settings > Custom CSS → cole aqui
   2. OU: cada seção > Advanced > Custom CSS
   3. Importe as fontes no header (ver comentário abaixo)
   
   FONTES — adicione no header via Elementor:
   <link href="https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,700;0,900;1,700;1,900&family=DM+Sans:opsz,wght@9..40,300;9..40,400;9..40,500;9..40,600;9..40,700&family=DM+Mono:wght@400;500&display=swap" rel="stylesheet"/>
============================================================ */

/* ── VARIÁVEIS GLOBAIS ─────────────────────────────────────── */
:root {
  --afm-v1: #2D6A4F;
  --afm-v2: #1B4433;
  --afm-v3: #4A9B77;
  --afm-v4: #E8F5EE;
  --afm-am: #F2C94C;
  --afm-am2: #C9A800;
  --afm-am3: #FFF3CC;
  --afm-dk: #0E1A14;
  --afm-d2: #1C2E24;
  --afm-d3: #2A3E30;
  --afm-ow: #F8F6F0;
  --afm-cr: #F0EDE5;
  --afm-lg: #E4E0D8;
  --afm-gr: #6B7A71;
  --afm-g2: #9CAA9F;
  --afm-sans: 'DM Sans', system-ui, sans-serif;
  --afm-serif: 'Playfair Display', Georgia, serif;
  --afm-mono: 'DM Mono', 'Courier New', monospace;
  --afm-radius: 12px;
  --afm-radius-lg: 16px;
  --afm-radius-pill: 50px;
}

/* ── RESET BASE ────────────────────────────────────────────── */
.afm-page * {
  box-sizing: border-box;
}
.afm-page {
  font-family: var(--afm-sans);
  background: var(--afm-ow);
  color: var(--afm-dk);
  overflow-x: hidden;
}

/* ============================================================
   COMPONENTE: PLAYER BAR FIXO (rodapé)
   Elementor: adicione uma seção com classe "afm-player-bar"
============================================================ */
.afm-player-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  height: 54px;
  background: var(--afm-d2);
  border-top: 2px solid var(--afm-am);
  display: flex;
  align-items: center;
  padding: 0 clamp(16px, 4vw, 40px);
  gap: 16px;
  box-shadow: 0 -4px 24px rgba(0,0,0,.35);
}
.afm-player-bar__live {
  display: flex;
  align-items: center;
  gap: 7px;
  flex-shrink: 0;
}
.afm-player-bar__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--afm-am);
  animation: afm-pulse 2s infinite;
}
.afm-player-bar__label {
  font-family: var(--afm-mono);
  font-size: 9px;
  color: var(--afm-am);
  letter-spacing: .14em;
  text-transform: uppercase;
}
.afm-player-bar__info {
  flex: 1;
  min-width: 0;
}
.afm-player-bar__prog {
  font-weight: 600;
  font-size: 13px;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.afm-player-bar__sub {
  font-size: 10px;
  color: var(--afm-g2);
}
.afm-player-bar__wave {
  display: flex;
  align-items: center;
  gap: 2.5px;
  height: 22px;
  flex-shrink: 0;
}
.afm-player-bar__wave span {
  width: 2.5px;
  border-radius: 2px;
  background: var(--afm-v3);
  animation: afm-wave 1.1s ease-in-out infinite;
}
.afm-player-bar__wave span:nth-child(1){height:6px; animation-delay:0s}
.afm-player-bar__wave span:nth-child(2){height:14px;animation-delay:.12s}
.afm-player-bar__wave span:nth-child(3){height:8px; animation-delay:.24s}
.afm-player-bar__wave span:nth-child(4){height:18px;animation-delay:.36s}
.afm-player-bar__wave span:nth-child(5){height:10px;animation-delay:.18s}
.afm-player-bar__wave span:nth-child(6){height:16px;animation-delay:.3s}
.afm-player-bar__wave span:nth-child(7){height:6px; animation-delay:.06s}
.afm-player-bar__btn {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: var(--afm-am);
  color: var(--afm-dk);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  flex-shrink: 0;
  border: none;
  transition: transform .2s;
}
.afm-player-bar__btn:hover {
  transform: scale(1.08);
  background: #ffd84d;
}
.afm-player-bar__plats {
  display: flex;
  gap: 6px;
  flex-shrink: 0;
}
.afm-player-bar__plat {
  height: 28px;
  padding: 0 11px;
  border-radius: 6px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.1);
  font-size: 10.5px;
  color: rgba(255,255,255,.5);
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 5px;
  cursor: pointer;
  transition: all .2s;
}
.afm-player-bar__plat:hover {
  background: rgba(255,255,255,.13);
  color: var(--afm-am);
}
@media (max-width: 640px) {
  .afm-player-bar__plats,
  .afm-player-bar__wave { display: none; }
}

/* ============================================================
   COMPONENTE: NAV / HEADER FIXO
   Elementor: seção com classe "afm-nav"
============================================================ */
.afm-nav {
  position: sticky;
  top: 0;
  z-index: 900;
  background: var(--afm-d2);
  height: 54px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 clamp(16px, 4vw, 40px);
  border-bottom: 2px solid var(--afm-am);
  transition: background .35s, box-shadow .35s;
}
.afm-nav.scrolled {
  background: rgba(28,46,36,.97);
  backdrop-filter: blur(20px);
  box-shadow: 0 1px 0 rgba(255,255,255,.06);
}
.afm-nav__logo {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}
.afm-nav__mark {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--afm-am);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--afm-serif);
  font-weight: 900;
  font-size: 17px;
  color: var(--afm-dk);
  flex-shrink: 0;
}
.afm-nav__name {
  font-family: var(--afm-serif);
  font-weight: 700;
  font-size: 13px;
  color: #fff;
  display: block;
  line-height: 1.1;
}
.afm-nav__sub {
  font-family: var(--afm-mono);
  font-size: 8px;
  color: var(--afm-am);
  letter-spacing: .1em;
  text-transform: uppercase;
}
.afm-nav__links {
  display: flex;
  gap: 2px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.afm-nav__links a {
  font-size: 11px;
  color: rgba(255,255,255,.55);
  padding: 6px 11px;
  border-radius: 6px;
  text-decoration: none;
  transition: all .2s;
}
.afm-nav__links a:hover,
.afm-nav__links a.current-menu-item {
  background: rgba(255,255,255,.08);
  color: #fff;
}
.afm-nav__right {
  display: flex;
  align-items: center;
  gap: 8px;
}
.afm-nav__live-chip {
  display: flex;
  align-items: center;
  gap: 6px;
  background: rgba(242,201,76,.1);
  border: 1px solid rgba(242,201,76,.22);
  padding: 5px 12px;
  border-radius: 20px;
  font-family: var(--afm-mono);
  font-size: 9px;
  font-weight: 600;
  color: var(--afm-am);
  letter-spacing: .06em;
}
.afm-nav__cta {
  background: var(--afm-am);
  color: var(--afm-dk);
  font-family: var(--afm-sans);
  font-size: 11px;
  font-weight: 700;
  padding: 7px 16px;
  border-radius: 20px;
  text-decoration: none;
  transition: background .2s;
}
.afm-nav__cta:hover {
  background: #ffd84d;
  color: var(--afm-dk);
}
.afm-nav__burger {
  display: none;
  flex-direction: column;
  gap: 5px;
  cursor: pointer;
  background: none;
  border: none;
}
.afm-nav__burger span {
  width: 22px;
  height: 2px;
  background: #fff;
  border-radius: 1px;
  display: block;
  transition: .3s;
}
@media (max-width: 960px) {
  .afm-nav__links { display: none; }
  .afm-nav__burger { display: flex; }
  .afm-nav__live-chip { display: none; }
}
@media (max-width: 580px) {
  .afm-nav__cta { display: none; }
}

/* Menu mobile */
.afm-mobile-menu {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 850;
  background: var(--afm-d2);
  padding: 80px 28px 40px;
  flex-direction: column;
  gap: 6px;
}
.afm-mobile-menu.open {
  display: flex;
}
.afm-mobile-menu a {
  font-family: var(--afm-serif);
  font-weight: 700;
  font-size: 26px;
  color: #fff;
  padding: 11px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
  text-decoration: none;
  transition: color .2s;
}
.afm-mobile-menu a:hover {
  color: var(--afm-am);
}

/* ============================================================
   DOBRA 1: HERO DA PROGRAMAÇÃO
   Elementor: seção com classe "afm-hero-prog"
============================================================ */
.afm-hero-prog {
  background: var(--afm-dk);
  padding: clamp(52px,8vw,80px) clamp(20px,5vw,60px) clamp(48px,7vw,72px);
  position: relative;
  overflow: hidden;
  text-align: center;
}
.afm-hero-prog::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 75% 65% at 50% 40%,rgba(45,106,79,.38) 0%,transparent 62%);
  pointer-events: none;
}
.afm-hero-prog::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(45,106,79,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(45,106,79,.04) 1px, transparent 1px);
  background-size: 36px 36px;
  pointer-events: none;
}
.afm-hero-prog__inner {
  position: relative;
  z-index: 2;
  max-width: 720px;
  margin: 0 auto;
}
.afm-hero-prog__eyebrow {
  font-family: var(--afm-mono);
  font-size: 9.5px;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--afm-v3);
  display: block;
  margin-bottom: 14px;
}
.afm-hero-prog__h1 {
  font-family: var(--afm-serif);
  font-weight: 900;
  font-size: clamp(34px, 6vw, 58px);
  line-height: .95;
  letter-spacing: -.025em;
  color: #fff;
  margin: 0 0 16px;
}
.afm-hero-prog__h1 em {
  color: var(--afm-am);
  font-style: italic;
  display: block;
}
.afm-hero-prog__sub {
  font-size: clamp(13px, 1.4vw, 15px);
  color: rgba(255,255,255,.48);
  font-weight: 300;
  line-height: 1.8;
  max-width: 500px;
  margin: 0 auto 32px;
}
.afm-hero-prog__filters {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 16px;
}
.afm-ftab {
  font-family: var(--afm-sans);
  font-size: 12px;
  font-weight: 600;
  padding: 9px 20px;
  border-radius: var(--afm-radius-pill);
  border: 1.5px solid rgba(255,255,255,.15);
  color: rgba(255,255,255,.5);
  cursor: pointer;
  transition: all .2s;
  background: transparent;
}
.afm-ftab:hover,
.afm-ftab.active {
  background: var(--afm-am);
  color: var(--afm-dk);
  border-color: var(--afm-am);
}
.afm-hero-prog__days {
  display: flex;
  justify-content: center;
  gap: 6px;
  flex-wrap: wrap;
}
.afm-dpill {
  font-family: var(--afm-mono);
  font-size: 10px;
  padding: 5px 14px;
  border-radius: 20px;
  border: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.4);
  cursor: pointer;
  transition: all .2s;
  background: transparent;
}
.afm-dpill:hover,
.afm-dpill.active {
  background: rgba(45,106,79,.3);
  border-color: var(--afm-v3);
  color: rgba(255,255,255,.9);
}

/* ============================================================
   DOBRA 2: AO VIVO AGORA
   Elementor: seção com classe "afm-ao-vivo"
============================================================ */
.afm-ao-vivo {
  background: var(--afm-v2);
  padding: 28px clamp(20px,5vw,60px);
  position: relative;
  overflow: hidden;
}
.afm-ao-vivo::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 60% 80% at 70% 50%,rgba(242,201,76,.05) 0%,transparent 55%);
  pointer-events: none;
}
.afm-ao-vivo__inner {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 28px;
  align-items: center;
  max-width: 900px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.afm-ao-vivo__left {
  display: flex;
  align-items: center;
  gap: 18px;
}
.afm-ao-vivo__badge {
  background: var(--afm-am);
  color: var(--afm-dk);
  font-family: var(--afm-mono);
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  padding: 5px 13px;
  border-radius: 20px;
  display: flex;
  align-items: center;
  gap: 5px;
  flex-shrink: 0;
  white-space: nowrap;
}
.afm-ao-vivo__badge-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--afm-dk);
  animation: afm-pulse 2s infinite;
}
.afm-ao-vivo__prog {
  font-family: var(--afm-serif);
  font-weight: 700;
  font-size: clamp(18px, 3vw, 24px);
  color: #fff;
  margin: 0 0 3px;
}
.afm-ao-vivo__time {
  font-family: var(--afm-mono);
  font-size: 11px;
  color: var(--afm-v3);
  display: block;
  margin-bottom: 4px;
}
.afm-ao-vivo__desc {
  font-size: 12px;
  color: rgba(255,255,255,.5);
  line-height: 1.55;
}
.afm-ao-vivo__right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
}
.afm-ao-vivo__presenter {
  display: flex;
  align-items: center;
  gap: 10px;
}
.afm-ao-vivo__av {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 13px;
  color: #fff;
  flex-shrink: 0;
}
.afm-ao-vivo__pname {
  font-weight: 600;
  font-size: 13px;
  color: #fff;
  display: block;
}
.afm-ao-vivo__prole {
  font-size: 10px;
  color: rgba(255,255,255,.4);
}
.afm-ao-vivo__play {
  background: var(--afm-am);
  color: var(--afm-dk);
  font-family: var(--afm-sans);
  font-size: 13px;
  font-weight: 700;
  padding: 10px 22px;
  border-radius: var(--afm-radius-pill);
  border: none;
  cursor: pointer;
  transition: all .2s;
  display: flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  text-decoration: none;
}
.afm-ao-vivo__play:hover {
  background: #ffd84d;
  transform: translateY(-1px);
}
@media (max-width: 680px) {
  .afm-ao-vivo__inner {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .afm-ao-vivo__right {
    align-items: flex-start;
  }
}

/* ============================================================
   DOBRA 3: GRADE SEMANAL (TIMELINE)
   Elementor: seção com classe "afm-grade"
============================================================ */
.afm-grade {
  background: var(--afm-ow);
  padding: clamp(48px,7vw,72px) clamp(20px,5vw,60px);
}
.afm-grade__header {
  text-align: center;
  margin-bottom: 44px;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}
.afm-grade__h2 {
  font-family: var(--afm-serif);
  font-weight: 700;
  font-size: clamp(24px,4vw,38px);
  color: var(--afm-dk);
  margin: 0 0 10px;
  line-height: 1.1;
}
.afm-grade__h2 em {
  color: var(--afm-v1);
  font-style: italic;
}
.afm-grade__sep {
  width: 44px;
  height: 3px;
  background: var(--afm-am);
  margin: 14px auto 12px;
}
.afm-grade__sub {
  font-size: 13.5px;
  color: var(--afm-gr);
  line-height: 1.7;
}

/* Timeline */
.afm-timeline {
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.afm-prog-row {
  display: grid;
  grid-template-columns: 64px 1fr;
  align-items: stretch;
}
.afm-prog-row__time {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 18px;
  position: relative;
}
.afm-prog-row__time-lbl {
  font-family: var(--afm-mono);
  font-size: 10px;
  color: var(--afm-g2);
  font-weight: 500;
  white-space: nowrap;
}
.afm-prog-row__time-line {
  width: 1px;
  background: var(--afm-lg);
  flex: 1;
  margin-top: 8px;
}
.afm-prog-row__time-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--afm-lg);
  position: absolute;
  top: 30px;
  right: -4px;
  z-index: 2;
}
.afm-prog-row__time-dot--live {
  background: var(--afm-am);
  box-shadow: 0 0 0 3px rgba(242,201,76,.25);
}
.afm-prog-row__content {
  padding-left: 20px;
  padding-bottom: 12px;
}

/* Program card */
.afm-prog-card {
  background: #fff;
  border: 1px solid var(--afm-lg);
  border-radius: var(--afm-radius-lg);
  overflow: hidden;
  transition: transform .22s, box-shadow .22s;
  cursor: pointer;
}
.afm-prog-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 36px rgba(0,0,0,.09);
}
.afm-prog-card--live {
  border-color: var(--afm-v3);
  border-width: 1.5px;
}
.afm-prog-card--live .afm-prog-card__head {
  background: linear-gradient(135deg, var(--afm-v2), var(--afm-v1));
}
.afm-prog-card--podcast .afm-prog-card__head {
  background: linear-gradient(135deg, #2D1B4E, #5B3D9E);
}
.afm-prog-card--sabado .afm-prog-card__head {
  background: linear-gradient(135deg, #5A3800, #8B6500);
}
.afm-prog-card__head {
  padding: 18px 20px 14px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.afm-prog-card__live-tag {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: var(--afm-am);
  color: var(--afm-dk);
  font-family: var(--afm-mono);
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .08em;
  padding: 3px 9px;
  border-radius: 10px;
  margin-bottom: 8px;
}
.afm-prog-card__live-tag-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--afm-dk);
  animation: afm-pulse 2s infinite;
}
.afm-prog-card__time {
  font-family: var(--afm-mono);
  font-size: 10.5px;
  color: var(--afm-v3);
  display: block;
  margin-bottom: 5px;
}
.afm-prog-card--live .afm-prog-card__time,
.afm-prog-card--podcast .afm-prog-card__time,
.afm-prog-card--sabado .afm-prog-card__time {
  color: rgba(255,255,255,.45);
}
.afm-prog-card__name {
  font-family: var(--afm-serif);
  font-weight: 700;
  font-size: 17px;
  color: var(--afm-dk);
  margin: 0 0 6px;
  line-height: 1.2;
}
.afm-prog-card--live .afm-prog-card__name,
.afm-prog-card--podcast .afm-prog-card__name,
.afm-prog-card--sabado .afm-prog-card__name {
  color: #fff;
}
.afm-prog-card__desc {
  font-size: 12.5px;
  color: var(--afm-gr);
  line-height: 1.65;
}
.afm-prog-card--live .afm-prog-card__desc,
.afm-prog-card--podcast .afm-prog-card__desc,
.afm-prog-card--sabado .afm-prog-card__desc {
  color: rgba(255,255,255,.55);
}
.afm-prog-card__avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 14px;
  color: #fff;
  flex-shrink: 0;
}
.afm-prog-card__foot {
  border-top: 1px solid var(--afm-lg);
  padding: 11px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.afm-prog-card--live .afm-prog-card__foot,
.afm-prog-card--podcast .afm-prog-card__foot,
.afm-prog-card--sabado .afm-prog-card__foot {
  border-top-color: rgba(255,255,255,.12);
}
.afm-prog-card__foot-left {
  display: flex;
  align-items: center;
  gap: 10px;
}
.afm-prog-card__av-sm {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 10px;
  color: #fff;
  flex-shrink: 0;
}
.afm-prog-card__pname {
  font-size: 12px;
  font-weight: 600;
  color: var(--afm-dk);
  display: block;
}
.afm-prog-card--live .afm-prog-card__pname,
.afm-prog-card--podcast .afm-prog-card__pname,
.afm-prog-card--sabado .afm-prog-card__pname {
  color: #fff;
}
.afm-prog-card__prole {
  font-size: 10px;
  color: var(--afm-g2);
}
.afm-prog-card--live .afm-prog-card__prole,
.afm-prog-card--podcast .afm-prog-card__prole,
.afm-prog-card--sabado .afm-prog-card__prole {
  color: rgba(255,255,255,.38);
}
.afm-prog-card__tag {
  font-family: var(--afm-mono);
  font-size: 9px;
  font-weight: 500;
  padding: 3px 10px;
  border-radius: 20px;
  background: var(--afm-v4);
  color: var(--afm-v1);
}
.afm-prog-card__play {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--afm-v4);
  color: var(--afm-v1);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  cursor: pointer;
  border: none;
  transition: all .2s;
  flex-shrink: 0;
}
.afm-prog-card__play:hover {
  background: var(--afm-v1);
  color: #fff;
}
.afm-prog-card--live .afm-prog-card__play {
  background: var(--afm-am);
  color: var(--afm-dk);
}
@media (max-width: 600px) {
  .afm-prog-row { grid-template-columns: 48px 1fr; }
  .afm-prog-card__head { gap: 8px; }
}

/* ============================================================
   DOBRA 4: APRESENTADORES
   Elementor: seção com classe "afm-apresentadores"
============================================================ */
.afm-apresentadores {
  background: #fff;
  padding: clamp(48px,7vw,72px) clamp(20px,5vw,60px);
}
.afm-apresentadores__header {
  text-align: center;
  max-width: 540px;
  margin: 0 auto 44px;
}
.afm-apresentadores__h2 {
  font-family: var(--afm-serif);
  font-weight: 700;
  font-size: clamp(24px,4vw,36px);
  color: var(--afm-dk);
  margin: 0 0 10px;
  line-height: 1.1;
}
.afm-apresentadores__h2 em {
  color: var(--afm-v1);
  font-style: italic;
}
.afm-apresentadores__p {
  font-size: 13.5px;
  color: var(--afm-gr);
  line-height: 1.7;
}
.afm-ap-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  max-width: 900px;
  margin: 0 auto;
}
.afm-ap-card {
  background: var(--afm-ow);
  border: 1px solid var(--afm-lg);
  border-radius: var(--afm-radius-lg);
  overflow: hidden;
  transition: transform .25s, box-shadow .25s;
}
.afm-ap-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 14px 44px rgba(0,0,0,.1);
}
.afm-ap-card__head {
  height: 140px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.afm-ap-card__initial {
  font-family: var(--afm-serif);
  font-weight: 900;
  font-size: 68px;
  color: rgba(255,255,255,.12);
  position: relative;
  z-index: 1;
  line-height: 1;
  user-select: none;
}
.afm-ap-card__badge {
  position: absolute;
  bottom: 12px;
  left: 12px;
  right: 12px;
  background: rgba(14,26,20,.8);
  backdrop-filter: blur(8px);
  border-radius: 8px;
  padding: 8px 12px;
  z-index: 2;
}
.afm-ap-card__badge-time {
  font-family: var(--afm-mono);
  font-size: 8.5px;
  color: var(--afm-am);
  letter-spacing: .08em;
  display: block;
  margin-bottom: 2px;
}
.afm-ap-card__badge-prog {
  font-size: 11px;
  font-weight: 600;
  color: #fff;
}
.afm-ap-card__body {
  padding: 18px;
}
.afm-ap-card__name {
  font-family: var(--afm-serif);
  font-weight: 700;
  font-size: 19px;
  color: var(--afm-dk);
  margin: 0 0 2px;
}
.afm-ap-card__cargo {
  font-size: 11.5px;
  color: var(--afm-v1);
  font-weight: 600;
  display: block;
  margin-bottom: 10px;
}
.afm-ap-card__bio {
  font-size: 12px;
  color: var(--afm-gr);
  line-height: 1.65;
  margin-bottom: 14px;
}
.afm-ap-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.afm-ap-card__tag {
  font-size: 10.5px;
  font-weight: 500;
  padding: 3px 10px;
  border-radius: 20px;
  background: var(--afm-v4);
  color: var(--afm-v1);
}
@media (max-width: 860px) {
  .afm-ap-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
  .afm-ap-grid { grid-template-columns: 1fr; }
}

/* ============================================================
   DOBRA 5: PODCAST
   Elementor: seção com classe "afm-podcast-strip"
============================================================ */
.afm-podcast-strip {
  background: var(--afm-dk);
  padding: clamp(48px,7vw,72px) clamp(20px,5vw,60px);
  position: relative;
  overflow: hidden;
}
.afm-podcast-strip::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 55% 65% at 15% 55%,rgba(45,106,79,.2) 0%,transparent 55%),
    radial-gradient(ellipse 35% 45% at 85% 20%,rgba(242,201,76,.05) 0%,transparent 50%);
  pointer-events: none;
}
.afm-podcast-strip__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 52px;
  align-items: center;
  max-width: 900px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.afm-podcast-strip__eyebrow {
  font-family: var(--afm-mono);
  font-size: 9.5px;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--afm-am);
  display: block;
  margin-bottom: 12px;
}
.afm-podcast-strip__h2 {
  font-family: var(--afm-serif);
  font-weight: 700;
  font-size: clamp(24px,4vw,36px);
  color: #fff;
  margin: 0 0 14px;
  line-height: 1.1;
}
.afm-podcast-strip__h2 em {
  color: var(--afm-am);
  font-style: italic;
}
.afm-podcast-strip__sep {
  width: 44px;
  height: 3px;
  background: var(--afm-am);
  margin-bottom: 16px;
}
.afm-podcast-strip__body {
  font-size: 13.5px;
  color: rgba(255,255,255,.5);
  line-height: 1.8;
  font-weight: 300;
  margin-bottom: 24px;
}
.afm-podcast-strip__plats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 28px;
}
.afm-podcast-strip__plat {
  display: flex;
  align-items: center;
  gap: 6px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.1);
  padding: 7px 14px;
  border-radius: 8px;
  font-size: 11.5px;
  color: rgba(255,255,255,.55);
  font-weight: 500;
  cursor: pointer;
  transition: all .2s;
  text-decoration: none;
}
.afm-podcast-strip__plat:hover {
  background: rgba(255,255,255,.12);
  border-color: rgba(242,201,76,.3);
  color: var(--afm-am);
}
.afm-ep-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.afm-ep-row {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 12px;
  padding: 14px 16px;
  display: flex;
  align-items: center;
  gap: 14px;
  cursor: pointer;
  transition: all .2s;
  text-decoration: none;
}
.afm-ep-row:hover {
  background: rgba(255,255,255,.09);
  border-color: rgba(242,201,76,.2);
}
.afm-ep-row__av {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 15px;
  color: #fff;
}
.afm-ep-row__info {
  flex: 1;
  min-width: 0;
}
.afm-ep-row__name {
  font-weight: 600;
  font-size: 13px;
  color: #fff;
  display: block;
  margin-bottom: 2px;
}
.afm-ep-row__desc {
  font-size: 11px;
  color: rgba(255,255,255,.35);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.afm-ep-row__play {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--afm-am);
  color: var(--afm-dk);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  flex-shrink: 0;
  transition: transform .2s;
  border: none;
  cursor: pointer;
}
.afm-ep-row:hover .afm-ep-row__play {
  transform: scale(1.1);
}
@media (max-width: 860px) {
  .afm-podcast-strip__inner { grid-template-columns: 1fr; gap: 36px; }
}

/* ============================================================
   DOBRA 6: INSCREVA-SE
   Elementor: seção com classe "afm-subscribe"
============================================================ */
.afm-subscribe {
  background: var(--afm-cr);
  padding: clamp(48px,7vw,72px) clamp(20px,5vw,60px);
}
.afm-subscribe__inner {
  max-width: 620px;
  margin: 0 auto;
  text-align: center;
}
.afm-subscribe__h2 {
  font-family: var(--afm-serif);
  font-weight: 700;
  font-size: clamp(22px,4vw,34px);
  color: var(--afm-dk);
  margin: 0 0 10px;
  line-height: 1.1;
}
.afm-subscribe__h2 em {
  color: var(--afm-v1);
  font-style: italic;
}
.afm-subscribe__sep {
  width: 44px;
  height: 3px;
  background: var(--afm-am);
  margin: 14px auto 12px;
}
.afm-subscribe__p {
  font-size: 13.5px;
  color: var(--afm-gr);
  line-height: 1.75;
  margin-bottom: 28px;
}
.afm-sub-form {
  display: flex;
  flex-direction: column;
  gap: 10px;
  text-align: left;
}
.afm-sub-form__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.afm-sub-form__input {
  background: #fff;
  border: 1px solid var(--afm-lg);
  border-radius: 8px;
  padding: 12px 16px;
  font-family: var(--afm-sans);
  font-size: 13px;
  color: var(--afm-dk);
  outline: none;
  transition: border .2s;
  width: 100%;
  appearance: none;
}
.afm-sub-form__input:focus {
  border-color: var(--afm-v3);
  box-shadow: 0 0 0 3px rgba(74,155,119,.12);
}
.afm-sub-form__input::placeholder {
  color: var(--afm-g2);
}
.afm-sub-form__submit {
  background: var(--afm-v1);
  color: #fff;
  font-family: var(--afm-sans);
  font-weight: 700;
  font-size: 13.5px;
  padding: 14px;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  transition: background .2s, transform .15s;
  width: 100%;
}
.afm-sub-form__submit:hover {
  background: var(--afm-v3);
  transform: translateY(-1px);
}
.afm-sub-form__fine {
  font-size: 11px;
  color: var(--afm-g2);
  text-align: center;
  margin-top: 4px;
}
@media (max-width: 560px) {
  .afm-sub-form__row { grid-template-columns: 1fr; }
}

/* ============================================================
   DOBRA 7: ANUNCIE
   Elementor: seção com classe "afm-anuncie"
============================================================ */
.afm-anuncie {
  background: var(--afm-v1);
  padding: clamp(48px,7vw,68px) clamp(20px,5vw,60px);
  position: relative;
  overflow: hidden;
}
.afm-anuncie::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 55% 70% at 95% 50%,rgba(242,201,76,.06) 0%,transparent 55%);
  pointer-events: none;
}
.afm-anuncie__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  max-width: 900px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  flex-wrap: wrap;
}
.afm-anuncie__eyebrow {
  font-family: var(--afm-mono);
  font-size: 9px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--afm-am);
  display: block;
  margin-bottom: 10px;
}
.afm-anuncie__h2 {
  font-family: var(--afm-serif);
  font-weight: 700;
  font-size: clamp(22px,4vw,34px);
  color: #fff;
  margin: 0 0 12px;
  line-height: 1.1;
}
.afm-anuncie__h2 em {
  color: var(--afm-am);
  font-style: italic;
}
.afm-anuncie__txt {
  font-size: 13px;
  color: rgba(255,255,255,.55);
  line-height: 1.75;
  max-width: 420px;
  margin-bottom: 22px;
}
.afm-anuncie__btns {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.afm-btn-gold {
  background: var(--afm-am);
  color: var(--afm-dk);
  font-family: var(--afm-sans);
  font-weight: 700;
  font-size: 13px;
  padding: 11px 22px;
  border-radius: var(--afm-radius-pill);
  border: none;
  cursor: pointer;
  transition: all .2s;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.afm-btn-gold:hover {
  background: #ffd84d;
  transform: translateY(-1px);
}
.afm-btn-ghost {
  border: 1.5px solid rgba(255,255,255,.25);
  color: rgba(255,255,255,.8);
  font-family: var(--afm-sans);
  font-weight: 600;
  font-size: 13px;
  padding: 11px 22px;
  border-radius: var(--afm-radius-pill);
  background: transparent;
  cursor: pointer;
  transition: all .2s;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.afm-btn-ghost:hover {
  border-color: var(--afm-am);
  color: var(--afm-am);
}
.afm-anuncie__stats {
  display: flex;
  gap: 28px;
  flex-shrink: 0;
}
.afm-anuncie__stat-n {
  font-family: var(--afm-serif);
  font-weight: 700;
  font-size: 32px;
  color: var(--afm-am);
  display: block;
  line-height: 1;
}
.afm-anuncie__stat-l {
  font-size: 11px;
  color: rgba(255,255,255,.4);
  margin-top: 4px;
  line-height: 1.4;
}

/* ============================================================
   FOOTER
   Elementor: seção com classe "afm-footer"
============================================================ */
.afm-footer {
  background: var(--afm-dk);
  padding: 28px clamp(20px,5vw,60px);
  border-top: 2px solid var(--afm-am);
  text-align: center;
}
.afm-footer__logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  text-decoration: none;
}
.afm-footer__mark {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--afm-am);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--afm-serif);
  font-weight: 900;
  font-size: 18px;
  color: var(--afm-dk);
}
.afm-footer__name {
  font-family: var(--afm-serif);
  font-weight: 700;
  font-size: 14px;
  color: #fff;
}
.afm-footer__slogan {
  font-family: 'Georgia', serif;
  font-style: italic;
  font-size: 12px;
  color: rgba(255,255,255,.3);
  display: block;
  margin-bottom: 10px;
}
.afm-footer__links {
  display: flex;
  justify-content: center;
  gap: 14px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}
.afm-footer__links a {
  font-size: 11px;
  color: rgba(255,255,255,.28);
  text-decoration: none;
  transition: color .2s;
}
.afm-footer__links a:hover {
  color: var(--afm-am);
}
.afm-footer__copy {
  font-size: 10px;
  color: rgba(255,255,255,.15);
}

/* ============================================================
   ANIMAÇÕES GLOBAIS
============================================================ */
@keyframes afm-pulse {
  0%   { box-shadow: 0 0 0 0 rgba(242,201,76,.5); }
  70%  { box-shadow: 0 0 0 8px rgba(242,201,76,0); }
  100% { box-shadow: 0 0 0 0 rgba(242,201,76,0); }
}
@keyframes afm-wave {
  0%, 100% { transform: scaleY(.3); }
  50%       { transform: scaleY(1); }
}
@keyframes afm-fadeup {
  from { opacity: 0; transform: translateY(24px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Reveal on scroll */
.afm-reveal {
  opacity: 0;
  transform: translateY(26px);
  transition: opacity .65s ease, transform .65s ease;
}
.afm-reveal.afm-in {
  opacity: 1;
  transform: translateY(0);
}
.afm-reveal[data-delay="1"] { transition-delay: .1s; }
.afm-reveal[data-delay="2"] { transition-delay: .2s; }
.afm-reveal[data-delay="3"] { transition-delay: .3s; }
.afm-reveal[data-delay="4"] { transition-delay: .4s; }

/* ============================================================
   JAVASCRIPT MÍNIMO — cole num bloco HTML do Elementor
   (Elementor > Widget HTML > cole o script abaixo)
============================================================ */
/*
<script>
// Scroll reveal
const observer = new IntersectionObserver(entries => {
  entries.forEach(e => {
    if (e.isIntersecting) { e.target.classList.add('afm-in'); observer.unobserve(e.target); }
  });
}, { threshold: 0.1, rootMargin: '0px 0px -40px 0px' });
document.querySelectorAll('.afm-reveal').forEach(el => observer.observe(el));

// Filter tabs
document.querySelectorAll('.afm-ftab').forEach(btn => {
  btn.addEventListener('click', () => {
    document.querySelectorAll('.afm-ftab').forEach(b => b.classList.remove('active'));
    btn.classList.add('active');
  });
});

// Day pills
document.querySelectorAll('.afm-dpill').forEach(btn => {
  btn.addEventListener('click', () => {
    document.querySelectorAll('.afm-dpill').forEach(b => b.classList.remove('active'));
    btn.classList.add('active');
  });
});

// Nav sticky
const nav = document.querySelector('.afm-nav');
if (nav) {
  window.addEventListener('scroll', () => {
    nav.classList.toggle('scrolled', window.scrollY > 60);
  }, { passive: true });
}

// Mobile menu
const burger = document.querySelector('.afm-nav__burger');
const mobileMenu = document.querySelector('.afm-mobile-menu');
if (burger && mobileMenu) {
  burger.addEventListener('click', () => mobileMenu.classList.toggle('open'));
  mobileMenu.querySelectorAll('a').forEach(a =>
    a.addEventListener('click', () => mobileMenu.classList.remove('open'))
  );
}

// Play button toggle
let isPlaying = false;
document.querySelectorAll('.afm-player-bar__btn, .afm-ao-vivo__play').forEach(btn => {
  btn.addEventListener('click', () => {
    isPlaying = !isPlaying;
    const pbBtn = document.querySelector('.afm-player-bar__btn');
    if (pbBtn) pbBtn.textContent = isPlaying ? '⏸' : '▶';
  });
});
</script>
*/

/* ============================================================
   RESPONSIVE GLOBAL
============================================================ */
@media (max-width: 860px) {
  .afm-anuncie__inner { flex-direction: column; gap: 28px; }
  .afm-anuncie__stats { gap: 20px; }
}
@media (max-width: 480px) {
  .afm-ao-vivo__left { flex-direction: column; align-items: flex-start; gap: 12px; }
  .afm-prog-card__foot { flex-direction: column; align-items: flex-start; gap: 8px; }
}/* End custom CSS */