/* =====================================================
   NO BRAINER PODCAST — Modern CSS Skin
   Dark Navy + Gold — Mobile-First Override Layer
   ===================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Roboto+Slab:wght@500;700&display=swap');

/* ── CSS Variables ── */
:root {
  --nb-navy:       #0a0f1e;
  --nb-navy-2:     #111827;
  --nb-navy-3:     #1a2540;
  --nb-gold:       #c9a837;
  --nb-gold-light: #e8c850;
  --nb-gold-dim:   #a08020;
  --nb-text:       #e2e8f0;
  --nb-text-muted: #94a3b8;
  --nb-white:      #ffffff;
  --nb-border:     rgba(201,168,55,0.18);
  --nb-shadow:     0 4px 32px rgba(0,0,0,0.4);
  --nb-radius:     12px;
  --nb-radius-sm:  6px;
  --nb-transition: 0.25s ease;
  --nb-max-w:      900px;
}

/* ── Reset & Base ── */
*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  background-color: var(--nb-navy) !important;
  color: var(--nb-text) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 16px;
  line-height: 1.7;
  margin: 0;
}

a {
  color: var(--nb-gold) !important;
  text-decoration: none;
  transition: color var(--nb-transition);
}
a:hover { color: var(--nb-gold-light) !important; text-decoration: underline; }

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

h1, h2, h3, h4, h5, h6 {
  font-family: 'Roboto Slab', serif !important;
  color: var(--nb-white) !important;
  line-height: 1.3;
}

/* ── Scrollbar ── */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--nb-navy-2); }
::-webkit-scrollbar-thumb { background: var(--nb-gold-dim); border-radius: 3px; }

/* =====================================================
   HEADER
   ===================================================== */
.elementor-location-header,
[data-elementor-type="header"] {
  background: linear-gradient(135deg, var(--nb-navy) 0%, var(--nb-navy-2) 100%) !important;
  border-bottom: 2px solid var(--nb-gold-dim) !important;
  box-shadow: 0 2px 20px rgba(0,0,0,0.5) !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 9999 !important;
}

/* Site Logo */
.elementor-widget-image a img,
.elementor-widget-theme-site-logo img {
  filter: brightness(1.1) !important;
  max-height: 60px !important;
  width: auto !important;
  transition: transform var(--nb-transition) !important;
}
.elementor-widget-image a:hover img { transform: scale(1.04) !important; }

/* GET IN TOUCH button */
.elementor-button-link,
.elementor-button {
  background: linear-gradient(135deg, var(--nb-gold-dim) 0%, var(--nb-gold) 100%) !important;
  color: var(--nb-navy) !important;
  border: none !important;
  border-radius: 25px !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.06em !important;
  padding: 10px 22px !important;
  text-decoration: none !important;
  transition: all var(--nb-transition) !important;
  box-shadow: 0 2px 12px rgba(201,168,55,0.3) !important;
}
.elementor-button-link:hover,
.elementor-button:hover {
  background: linear-gradient(135deg, var(--nb-gold) 0%, var(--nb-gold-light) 100%) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 20px rgba(201,168,55,0.45) !important;
  color: var(--nb-navy) !important;
  text-decoration: none !important;
}

/* =====================================================
   HERO SECTION (first section with background)
   ===================================================== */
.elementor-section[data-settings*="background_background"]:first-of-type,
.elementor-element-7dff3646,
.elementor-element-ffe44b4 {
  background: linear-gradient(160deg, var(--nb-navy-3) 0%, var(--nb-navy) 60%, #0d1526 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Gold shimmer line on hero */
.elementor-section[data-settings*="background_background"]:first-of-type::before,
.elementor-element-7dff3646::before {
  content: '' !important;
  position: absolute !important;
  top: 0; left: 0; right: 0;
  height: 3px !important;
  background: linear-gradient(90deg, transparent, var(--nb-gold), transparent) !important;
}

/* Post title / Episode title */
.elementor-heading-title.elementor-size-xl,
h1.elementor-heading-title {
  font-size: clamp(1.8rem, 4vw, 2.8rem) !important;
  color: var(--nb-white) !important;
  text-shadow: 0 2px 20px rgba(0,0,0,0.6) !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
}

/* Post date */
.elementor-post-info a,
.elementor-post-info__item--type-date {
  color: var(--nb-gold) !important;
  font-size: 13px !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
}

/* =====================================================
   CONTENT AREA
   ===================================================== */
.elementor-widget-theme-post-content,
.elementor-widget-text-editor {
  max-width: var(--nb-max-w) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Paragraphs */
.elementor-widget-text-editor p,
.entry-content p {
  color: var(--nb-text) !important;
  font-size: 16px !important;
  line-height: 1.8 !important;
  margin-bottom: 1.2em !important;
}

/* Subheadings in content */
.elementor-widget-text-editor h2,
.entry-content h2 {
  font-size: 1.5rem !important;
  color: var(--nb-white) !important;
  border-left: 4px solid var(--nb-gold) !important;
  padding-left: 16px !important;
  margin-top: 2em !important;
  margin-bottom: 0.8em !important;
}

/* Lists */
.elementor-widget-text-editor ul,
.elementor-widget-text-editor ol {
  color: var(--nb-text) !important;
  padding-left: 1.5em !important;
}
.elementor-widget-text-editor li { margin-bottom: 0.5em !important; }

/* =====================================================
   PODCAST PLAYER IFRAME
   ===================================================== */
.elementor-widget-html iframe {
  border-radius: var(--nb-radius) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.5) !important;
  border: 1px solid var(--nb-border) !important;
  width: 100% !important;
  display: block !important;
}

/* =====================================================
   VIDEO EMBED
   ===================================================== */
.elementor-video,
.elementor-wrapper { border-radius: var(--nb-radius) !important; overflow: hidden !important; }
.elementor-widget-video {
  box-shadow: 0 8px 40px rgba(0,0,0,0.5) !important;
  border-radius: var(--nb-radius) !important;
  overflow: hidden !important;
}

/* =====================================================
   SHARE BUTTONS
   ===================================================== */
.elementor-share-btn {
  background: linear-gradient(135deg, var(--nb-navy-2), var(--nb-navy-3)) !important;
  border: 1px solid var(--nb-border) !important;
  border-radius: 50px !important;
  padding: 10px 20px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  transition: all var(--nb-transition) !important;
  cursor: pointer !important;
}
.elementor-share-btn:hover {
  background: linear-gradient(135deg, var(--nb-gold-dim), var(--nb-gold)) !important;
  border-color: var(--nb-gold) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(201,168,55,0.3) !important;
}
.elementor-share-btn:hover .elementor-share-btn__title { color: var(--nb-navy) !important; }
.elementor-share-btn:hover svg { fill: var(--nb-navy) !important; }

.elementor-share-btn__title { color: var(--nb-text) !important; font-size: 13px !important; font-weight: 600 !important; }
.elementor-share-btn svg { fill: var(--nb-text-muted) !important; width: 16px !important; height: 16px !important; }

.elementor-share-btn_facebook:hover { background: linear-gradient(135deg, #1877F2, #4299e1) !important; border-color: #1877F2 !important; }
.elementor-share-btn_twitter:hover  { background: linear-gradient(135deg, #1DA1F2, #60aff5) !important; border-color: #1DA1F2 !important; }
.elementor-share-btn_linkedin:hover { background: linear-gradient(135deg, #0077B5, #2196F3) !important; border-color: #0077B5 !important; }
.elementor-share-btn_email:hover    { background: linear-gradient(135deg, var(--nb-gold-dim), var(--nb-gold)) !important; }

.elementor-share-btn_facebook:hover .elementor-share-btn__title,
.elementor-share-btn_twitter:hover .elementor-share-btn__title,
.elementor-share-btn_linkedin:hover .elementor-share-btn__title { color: #fff !important; }
.elementor-share-btn_facebook:hover svg,
.elementor-share-btn_twitter:hover svg,
.elementor-share-btn_linkedin:hover svg { fill: #fff !important; }

h2.elementor-heading-title.elementor-size-default {
  font-size: 0.75rem !important;
  color: var(--nb-text-muted) !important;
  font-family: 'Inter', sans-serif !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid var(--nb-border) !important;
  padding-bottom: 12px !important;
  margin-bottom: 16px !important;
}

/* =====================================================
   EPISODE NAVIGATION (Prev / Next)
   ===================================================== */
.elementor-post-navigation {
  display: flex !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
}
.elementor-post-navigation__link {
  flex: 1 !important;
  min-width: 220px !important;
}
.elementor-post-navigation__link a {
  display: block !important;
  background: linear-gradient(135deg, var(--nb-navy-2) 0%, var(--nb-navy-3) 100%) !important;
  border: 1px solid var(--nb-border) !important;
  border-radius: var(--nb-radius) !important;
  padding: 20px 24px !important;
  color: var(--nb-text) !important;
  text-decoration: none !important;
  transition: all var(--nb-transition) !important;
}
.elementor-post-navigation__link a:hover {
  border-color: var(--nb-gold) !important;
  background: linear-gradient(135deg, var(--nb-navy-3), #1e2d4a) !important;
  transform: translateY(-2px) !important;
  box-shadow: var(--nb-shadow) !important;
  text-decoration: none !important;
}

.post-navigation__prev--label,
.post-navigation__next--label {
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  color: var(--nb-gold) !important;
  display: block !important;
  margin-bottom: 6px !important;
}

.post-navigation__prev--title,
.post-navigation__next--title {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--nb-white) !important;
  line-height: 1.4 !important;
}

.post-navigation__arrow-prev,
.post-navigation__arrow-next { color: var(--nb-gold) !important; }

/* =====================================================
   HOST BIOS SECTION
   ===================================================== */
.elementor-element-ffe44b4 {
  background: linear-gradient(160deg, var(--nb-navy-2) 0%, var(--nb-navy) 100%) !important;
  border-top: 1px solid var(--nb-border) !important;
  border-bottom: 1px solid var(--nb-border) !important;
}

/* Circular host headshots with gold ring */
.elementor-widget-image img[class*="wp-image-95"],
.elementor-widget-image img[class*="wp-image-96"],
.elementor-widget-image img[class*="attachment-thumbnail"] {
  border-radius: 50% !important;
  border: 3px solid var(--nb-gold) !important;
  box-shadow: 0 0 24px rgba(201,168,55,0.3) !important;
  width: 100px !important;
  height: 100px !important;
  object-fit: cover !important;
  transition: box-shadow var(--nb-transition), transform var(--nb-transition) !important;
}
.elementor-widget-image a:hover img[class*="attachment-thumbnail"] {
  box-shadow: 0 0 36px rgba(201,168,55,0.55) !important;
  transform: scale(1.05) !important;
}

/* Host text blocks */
.elementor-element-b8e1e40 p,
.elementor-element-92b96fe p { color: var(--nb-text-muted) !important; font-size: 14px !important; }

/* =====================================================
   PLATFORM ICONS SECTION (Spotify, Apple, etc.)
   ===================================================== */
.elementor-element-eae79b8,
.elementor-element-bf97967 {
  background: var(--nb-navy-2) !important;
}

/* Platform logo images */
.elementor-element-eae79b8 img,
.elementor-element-bf97967 img {
  max-height: 40px !important;
  width: auto !important;
  opacity: 0.75 !important;
  filter: brightness(0) invert(1) !important;
  transition: all var(--nb-transition) !important;
}
.elementor-element-eae79b8 a:hover img,
.elementor-element-bf97967 a:hover img {
  opacity: 1 !important;
  filter: brightness(0) invert(1) drop-shadow(0 0 6px var(--nb-gold)) !important;
  transform: scale(1.12) !important;
}

/* "Or grab your phone..." text */
.elementor-element-d2cff71 p { color: var(--nb-text-muted) !important; text-align: center !important; font-size: 13px !important; }

/* =====================================================
   FOOTER
   ===================================================== */
.elementor-location-footer,
[data-elementor-type="footer"] {
  background: linear-gradient(180deg, var(--nb-navy-2) 0%, var(--nb-navy) 100%) !important;
  border-top: 1px solid var(--nb-border) !important;
}

/* Social icons in footer */
.elementor-social-icons-wrapper a.elementor-icon {
  background: var(--nb-navy-3) !important;
  border: 2px solid var(--nb-border) !important;
  border-radius: 50% !important;
  width: 46px !important;
  height: 46px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all var(--nb-transition) !important;
}
.elementor-social-icons-wrapper a.elementor-icon:hover {
  background: var(--nb-gold) !important;
  border-color: var(--nb-gold) !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 6px 20px rgba(201,168,55,0.4) !important;
}
.elementor-social-icons-wrapper a.elementor-icon svg {
  fill: var(--nb-text-muted) !important;
  width: 20px !important;
  height: 20px !important;
}
.elementor-social-icons-wrapper a.elementor-icon:hover svg { fill: var(--nb-navy) !important; }

/* Footer logo */
.elementor-widget-theme-site-logo img { max-height: 50px !important; }

/* =====================================================
   DIVIDERS
   ===================================================== */
.elementor-divider-separator {
  border-top: 1px solid var(--nb-border) !important;
}
.elementor-widget-divider { margin: 0 !important; }

/* =====================================================
   SECTION BACKGROUNDS
   ===================================================== */
.elementor-section {
  background-color: transparent !important;
}

.elementor-section.elementor-top-section:not([data-settings*="background_background"]) {
  background: var(--nb-navy) !important;
}

/* Alternating sections */
.elementor-element-fae051f,
.elementor-element-eae79b8,
.elementor-element-bf97967,
.elementor-element-d2cff71 {
  background: var(--nb-navy-2) !important;
}

/* Shape dividers */
.elementor-shape-fill { fill: var(--nb-navy) !important; }

/* =====================================================
   ELEMENTOR SPACERS — reduce excess whitespace
   ===================================================== */
.elementor-spacer-inner { min-height: 20px !important; }

/* =====================================================
   HOME PAGE — Episode Card Grid
   ===================================================== */
.wp-block-post-template,
.wp-block-query,
.is-layout-grid {
  gap: 24px !important;
}

/* =====================================================
   RESPONSIVE — 768px and below
   ===================================================== */
@media (max-width: 768px) {
  .elementor-section-wrap { padding: 0 !important; }

  .elementor-col-50, .elementor-col-33, .elementor-col-25 {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .elementor-heading-title.elementor-size-xl { font-size: 1.5rem !important; }

  .elementor-post-navigation { flex-direction: column !important; }
  .elementor-post-navigation__link { min-width: unset !important; }

  .elementor-share-btn { padding: 8px 14px !important; font-size: 12px !important; }

  .elementor-element-eae79b8 .elementor-container,
  .elementor-element-bf97967 .elementor-container {
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
  }
}

/* =====================================================
   RESPONSIVE — 480px and below
   ===================================================== */
@media (max-width: 480px) {
  body { font-size: 14px !important; }
  .elementor-button { padding: 8px 16px !important; font-size: 12px !important; }
  h1.elementor-heading-title { font-size: 1.3rem !important; }
}

/* =====================================================
   UTILITY — Hide Wayback Machine remnant elements
   ===================================================== */
#wm-ipp-base,
#playback,
.wm-logo,
[id^="wm-"],
[class^="wm-"] { display: none !important; }

/* Fix wp-emoji style block if any remnant */
img.wp-smiley, img.emoji {
  display: inline !important;
  border: none !important;
  height: 1em !important;
  width: 1em !important;
  margin: 0 0.07em !important;
}
