/*
 Theme Name:   Podcaster Plus
 Theme URI:    https://podcasterplus.com
 Description:  Lightweight theme for Podcaster Plus
 Author:       Dan Maby
 Author URI:   https://blue37.com
 Template:     generatepress
 Version:      0.1
*/

/*----- Global -----*/
/* Colors -----*/
/* main */
/* body:not(.page-id-67858, .parent-pageid-67858),
.site-content:not(.page-id-67858 .site-content, .parent-pageid-67858 .site-content) {
  background: rgb(255, 255, 255);
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 1) 0%,
    rgba(243, 244, 246, 1) 100%
  );
} */

/* button transitions */
a,
button,
input {
  transition: color 0s ease-in-out, background-color 0s ease-in-out;
}

/* headings */

/* h2 links */
h2 a {
  color: var(--podcaster-plus-color-default-darker);
}
/* h2 a:hover,
h2 a:focus,
h2 a:active {
  color: var(--podcaster-plus-color-primary);
} */

/* Layout -----*/
/* stretch beyond container */
.stretch {
  width: 100vw;
  position: relative;
  left: calc(-50vw + 50%);
}
/* ol ul */
ol,
ul {
  margin: 0 0 1em 2em;
}

/* full width purple backgrounds -----*/

/* left */
.pp-purple-gb-left {
  background: rgb(241, 237, 253);
  background: linear-gradient(
    90deg,
    rgba(241, 237, 253, 1) 50%,
    rgba(255, 255, 255, 1) 50%
  );
}

/* right */
.pp-purple-gb-right {
  background: rgb(241, 237, 253);
  background: linear-gradient(
    270deg,
    rgba(241, 237, 253, 1) 50%,
    rgba(255, 255, 255, 1) 50%
  );
}

/* ----- Equal Height ----- */
.pp-equal-height .gb-grid-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.pp-equal-height .gb-grid-column {
  flex: 1 1 calc(33.333% - 16px); /* Ensures each column takes equal width */
  display: flex;
  min-width: 300px;
}

.pp-equal-height .gbp-card--border {
  display: flex;
  flex-direction: column; /* Keeps children stacked vertically */
  justify-content: space-between;
  height: 100%; /* Makes this div fill the height of the parent */
  background-color: var(--podcaster-plus-color-white);
}

/* Header -----*/

/* header background */
.site-header {
  border-bottom: 1px solid var(--contrast-3);
}

/* menu */
nav a {
  border-bottom: solid;
  border-color: transparent;
  border-bottom-width: 2px;
}

.wp-block-navigation ul {
  padding: 3px 3px 0 3px;
}
.wp-block-navigation ul li {
  padding: 0 10px;
}

/* submenu */
.wp-block-navigation-submenu li {
  padding: 0 !important;
  font-size: 0.85rem !important;
}

/*nav a:hover,
nav a:focus,
nav a:active,
.current-menu-item > a {
  border-bottom: solid;
  border-color: var(--podcaster-plus-color-primary);
  border-bottom-width: 2px;
}*/

/* CTA */
nav .pp-btn-primary {
  color: #ffffff !important;
  font-size: 0.75em !important;
  font-weight: 600 !important;
  border-bottom: 0;
}

nav .pp-btn-primary:hover,
nav .pp-btn-primary:focus,
nav .pp-btn-primary:active {
  border-bottom: 0;
}

.main-navigation .main-nav ul li a {
  padding: 0;
}

.main-navigation li {
  padding-left: 15px;
  padding-right: 15px;
}

/* Sidebars -----*/

/* sticky right sidebar */
.inside-right-sidebar {
  height: 100%;
  background-color: transparent;
}
.sidebar .widget {
  background-color: transparent;
}
/* sticky upsell */
#block-8 {
  position: -webkit-sticky;
  position: sticky;
  top: 50px;
}
.widget-area .widget {
  padding: 20px;
}

/* recent posts */
.recent-posts li {
  margin-bottom: 1em !important;
}
.recent-posts a {
  font-size: 0.85em;
}
#block-7 {
  padding-bottom: 0;
}

/* recent posts bottom boarder */
.wp-block-latest-posts__list li {
  border-bottom: solid;
  border-bottom-width: 1px;
  border-bottom-color: var(--podcaster-plus-color-default-darker);
  padding-bottom: 0.5em;
}
.wp-block-latest-posts__list li:last-child {
  border-bottom: none;
}

/* visited links */
/* a.wp-block-latest-posts__post-title:visited,
article
  a:visited:not(
    .wp-block-wpseopress-table-of-contents a,
    .simpletoc a,
    a.gb-button
  ) {
  color: var(--podcaster-plus-color-primary);
} */

/* Buttons -----*/
/* CTA */
.cta a {
  color: var(--podcaster-plus-color-default) !important;
  font-size: 1em;
  background-color: var(--podcaster-plus-color-white);
  border: solid;
  border-color: var(--podcaster-plus-color-primary) !important;
  border-width: 1px;
  border-radius: 0.25em;
  font-size: 1em !important;
  font-weight: 600 !important;
  padding: 0.5em 1em !important;
  line-height: 1em !important;
}
.cta a:hover,
.cta a:focus,
.cta a:active {
  background-color: var(--podcaster-plus-color-secondary) !important;
  color: var(--podcaster-plus-color-primary) !important;
}

/* Podcaster Plus Global Buttons */
.gb-button-pp-primary,
.gb-button-pp-secondary {
  line-height: 1;
}
/* a .gb-button-pp-secondary:visited {
  color: var(--podcaster-plus-color-primary) !important;
} */

/* Body -----*/
/* links */
.inside-article a:not(.gb-button, .cta a),
article a:not(.gb-button, .cta a, .simpletoc a, .betterdocs-articles-list a) {
  border-bottom: solid;
  border-bottom-width: 1px;
  border-bottom-color: var(--podcaster-plus-color-primary);
}
.inside-article a:not(.gb-button, .cta a):hover,
.inside-article a:not(.gb-button, .cta a):active,
.inside-article a:not(.gb-button, .cta a):focus,
article a:not(.gb-button, .cta a):hover,
article a:not(.gb-button, .cta a):active,
article a:not(.gb-button, .cta a):focus {
  border-bottom-width: 2px;
  transition: 0.1s;
  /* font-weight: 600; */
  /* color: var(--podcaster-plus-color-default); */
}
a.wp-block-latest-posts__post-title:hover {
  border-bottom: solid;
  border-bottom-width: 1px;
  transition: 0.1s;
  color: var(--podcaster-plus-color-default-darker);
  border-bottom-color: var(--podcaster-plus-color-primary);
}

/* images */
article img:not(.no-pp-img-shadow img, img.no-pp-img-shadow) {
  border-radius: 0.25em;
  border: 1px solid var(--base);
  box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, 0.1);
}

/* Beta sign up */
.page-id-54123 .site-content {
  padding: 0;
}

/* Modal -----*/
/* subheading */
.beta-title {
  text-align: center;
  margin-top: -30px;
  margin-bottom: -15px;
}
/* modal background */
div#frm-modal-0 {
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  background-color: transparent;
}

/* Dropdown Menu -----*/
/* allignment */
/* .main-navigation:not(.toggled) ul li.sfHover > ul, */
/* .main-navigation:not(.toggled) ul li:hover > ul { */
/* left: calc(-100% - -7px); */
/* margin-top: 10px; */
/* border-top: solid;
  border-top-width: 10px;
  border-top-color: var(--podcaster-plus-color-primary); */
/* transition-delay: 0ms; */
/* } */

/* Footer -----*/
/* links */
.site-footer a:not(.cta-beta):hover,
.site-footer a:not(.cta-beta):focus,
.site-footer a:not(.cta-beta):active {
  color: var(--podcaster-plus-color-default-darker);
  text-decoration: underline;
}

/* coming soon */
.soon:after {
  content: "coming";
  font-size: 0.65rem;
  font-weight: 600;
  position: relative;
  top: -8px;
  left: 8px;
  background: var(--podcaster-plus-color-secondary);
  color: var(--podcaster-plus-color-default-darker);
  padding: 0.25em 0.5em;
  border-radius: 0.5em;
}
.soon {
  cursor: no-drop;
}

/*----- Formidable Forms -----*/
/* General -----*/
/* submit button */
.frm_submit .frm_button_submit,
.frm_submit .frm_final_submit {
  border-radius: 4px !important;
}

/*----- Blog -----*/
/* Table of contents -----*/
/* li */
.wp-block-wpseopress-table-of-contents li,
.simpletoc li {
  margin: 0.25em 0;
}
/* links */
.wp-block-wpseopress-table-of-contents a,
.simpletoc a {
  border-bottom: none;
  color: var(--podcaster-plus-color-default-darker);
}
.wp-block-wpseopress-table-of-contents a:hover,
.wp-block-wpseopress-table-of-contents a:focus,
.wp-block-wpseopress-table-of-contents a:active,
.simpletoc a:hover,
.simpletoc a:focus,
.simpletoc a:active {
  text-decoration: underline;
  color: var(--podcaster-plus-color-primary);
}

/*----- Plugin: Better Docs -----*/

/* Archive /docs page -----*/
/* temporarily hide page content */
.post-type-archive-docs .betterdocs-wrapper,
.post-type-archive-docs .site-content {
  flex-direction: column;
}

/* container background */
.separate-containers .inside-article,
.separate-containers .comments-area,
.separate-containers .page-header,
.one-container .container,
.separate-containers .paging-navigation,
.inside-page-header {
  background-color: transparent;
}

/* replace default green */
.betterdocs-search-wrapper
  .betterdocs-search-details
  .betterdocs-search-content
  .betterdocs-search-info-tab
  .betterdocs-tab-items.active {
  border-bottom-color: var(--podcaster-plus-color-primary) !important;
}

.betterdocs-sidebar.betterdocs-sidebar-layout-7
  .betterdocs-sidebar-content
  .betterdocs-category-grid-wrapper
  .betterdocs-category-grid-inner-wrapper
  .betterdocs-single-category-wrapper
  .betterdocs-single-category-inner
  .betterdocs-body
  .betterdocs-articles-list
  li
  a.active,
.betterdocs-sidebar.betterdocs-sidebar-layout-7
  .betterdocs-sidebar-content
  .betterdocs-category-grid-wrapper
  .betterdocs-category-grid-inner-wrapper
  .betterdocs-single-category-wrapper
  .betterdocs-single-category-inner
  .betterdocs-body
  .betterdocs-articles-list
  li
  a:focus,
.betterdocs-sidebar.betterdocs-sidebar-layout-7
  .betterdocs-sidebar-content
  .betterdocs-category-grid-wrapper
  .betterdocs-category-grid-inner-wrapper
  .betterdocs-single-category-wrapper
  .betterdocs-single-category-inner
  .betterdocs-body
  .betterdocs-articles-list
  li
  a:hover,
.betterdocs-category-archive-wrapper.betterdocs-wraper
  .betterdocs-category-layout-7
  .betterdocs-content-wrapper
  .betterdocs-shortcode
  .betterdocs-categories-folder.layout-4
  .category-box:hover,
.betterdocs-category-archive-wrapper.betterdocs-wraper
  .doc-category-layout-7
  .betterdocs-content-wrapper
  .betterdocs-shortcode
  .betterdocs-categories-folder.layout-4
  .category-box:hover {
  /* background: var(--podcaster-plus-color-secondary) !important; */
  background: transparent;
}

.doc-category-layout-7
  .betterdocs-title-excerpt-lists
  .betterdocs-title-excerpt-list:hover {
  background: var(--podcaster-plus-color-white) !important;
}

/* search form */
.betterdocs-search-form-wrapper {
  padding: 0 20px !important;
}

/* search icons */
svg.docs-search-close,
svg.docs-search-loader {
  width: 20px !important;
  height: 20px !important;
}

/* search categories */
span.betterdocs-search-category {
  background: var(--podcaster-plus-color-secondary);
  border-radius: 3px;
  padding: 3px 12px !important;
  font-size: 0.75rem !important;
}

/* reactions */
.betterdocs-wrapper.betterdocs-single-layout-8
  .betterdocs-content-wrapper
  .docs-content-full-main
  .betterdocs-content-inner-area
  .betterdocs-entry-footer
  .betterdocs-article-reactions
  .betterdocs-article-reactions-box
  .layout-2
  li
  a.betterdocs-emoji
  img {
  max-width: 40px !important;
}

.betterdocs-wrapper.betterdocs-single-layout-8
  .betterdocs-content-wrapper
  .docs-content-full-main
  .betterdocs-content-inner-area
  .betterdocs-entry-footer
  .betterdocs-article-reactions
  .betterdocs-article-reactions-box
  .layout-2
  li
  a.betterdocs-emoji {
  height: 50px !important;
  width: 50px !important;
}

/* heading fonts */
.betterdocs-wrapper.betterdocs-single-layout-8
  .betterdocs-content-wrapper
  .docs-content-full-main
  .betterdocs-content-inner-area
  .betterdocs-entry-header
  .betterdocs-entry-title {
  font-family: inherit !important;
}

/* Instant Answers -----*/

/* Remove Powered by BetterDocs */
.betterdocs-ia-footer-group {
  display: none !important;
}

/* docs archive -----*/

/* container */
.archive.tax-knowledge_base
  .grid-container:not(.archive.tax-knowledge_base .site-header .grid-container),
.archive.tax-doc_category
  .grid-container:not(.archive.tax-doc_category .site-header .grid-container) {
  max-width: 800px;
}
.archive.tax-knowledge_base .betterdocs-wrapper.betterdocs-docs-archive-wrapper,
.archive.tax-doc_category .site-content,
.archive.tax-knowledge_base .site-content {
  background: transparent;
}

.archive.tax-knowledge_base.one-container .site-content {
  padding: 40px 0px !important;
}
.betterdocs-content-wrapper.betterdocs-display-flex.doc-category-layout-3 {
  padding: 0 !important;
}

/* last edited */
.archive.tax-knowledge_base .betterdocs-last-update {
  display: none;
}

/* icons */
.archive.tax-knowledge_base .betterdocs-folder-icon {
  background: none !important;
  width: 60px !important;
  height: 60px !important;
}

/* Breadcrumbs -----*/
.archive.post-type-archive-docs .pp-breadcrumb,
.archive.tax-knowledge_base .pp-breadcrumb,
.archive.tax-doc_category .pp-breadcrumb {
  max-width: 800px;
}

/* Sidebar -----*/
.betterdocs-sidebar.betterdocs-sidebar-layout-3
  .betterdocs-sidebar-content
  .betterdocs-single-category-wrapper.active
  .betterdocs-single-category-inner
  .betterdocs-category-header {
  background-color: rgb(126 34 206 / 10%) !important;
  border-color: var(--podcaster-plus-color-primary) !important;
}
.betterdocs-sidebar.betterdocs-sidebar-layout-3
  .betterdocs-sidebar-content
  .betterdocs-single-category-wrapper.active
  .betterdocs-single-category-inner
  .betterdocs-category-header
  .betterdocs-category-header-inner
  .betterdocs-category-title:not(a) {
  color: var(--podcaster-plus-color-default-darker) !important;
}
.betterdocs-sidebar.betterdocs-sidebar-layout-3
  .betterdocs-sidebar-content
  .betterdocs-single-category-wrapper
  .betterdocs-single-category-inner
  .betterdocs-category-header
  .betterdocs-category-header-inner
  .betterdocs-category-title:not(a):hover {
  color: var(--podcaster-plus-color-primary) !important;
}

.betterdocs-sidebar-content a.active {
  width: 100%;
  border-radius: 0 !important;
  border-right: solid var(--podcaster-plus-color-primary);
  background-color: var(--podcaster-plus-color-secondary) !important;
}

.betterdocs-sidebar-content a:hover,
.betterdocs-sidebar-content a:focus,
.betterdocs-sidebar-content a:active {
  background: transparent !important;
  color: var(--podcaster-plus-color-primary) !important;
}

.betterdocs-sidebar.betterdocs-sidebar-layout-7
  .betterdocs-sidebar-content
  .betterdocs-category-grid-wrapper
  .betterdocs-category-grid-inner-wrapper
  .betterdocs-single-category-wrapper.active.default.show:before,
.betterdocs-sidebar.betterdocs-sidebar-layout-7
  .betterdocs-sidebar-content
  .betterdocs-category-grid-wrapper
  .betterdocs-category-grid-inner-wrapper
  .betterdocs-single-category-wrapper
  .betterdocs-single-category-inner
  .betterdocs-body
  .betterdocs-articles-list
  li
  a.active:before {
  display: none;
}

.betterdocs-sidebar.betterdocs-sidebar-layout-7
  .betterdocs-sidebar-content
  .betterdocs-category-grid-wrapper
  .betterdocs-category-grid-inner-wrapper
  .betterdocs-single-category-wrapper
  .betterdocs-single-category-inner
  .betterdocs-body
  .betterdocs-articles-list
  li
  > svg {
  display: flex !important;
}

.betterdocs-sidebar.betterdocs-sidebar-layout-7
  .betterdocs-sidebar-content
  .betterdocs-category-grid-wrapper
  .betterdocs-category-grid-inner-wrapper
  .betterdocs-single-category-wrapper
  .betterdocs-single-category-inner
  .betterdocs-body {
  padding: 10px 10px 0 !important;
}

h2.betterdocs-category-title {
  font-weight: 500;
  line-height: 1.4em !important;
}

/* Sub-categories -----*/
.betterdocs-wrapper.betterdocs-taxonomy-wrapper
  .betterdocs-content-area
  .betterdocs-content-inner-area
  .betterdocs-entry-body
  .betterdocs-nested-category-wrapper
  .betterdocs-nested-category-title
  a {
  font-size: 20px !important;
  font-weight: 800;
}

/* Single Docs -----*/

/* container */
.single-docs .grid-container:not(.single-docs .site-header .grid-container),
.single-docs .pp-breadcrumb {
  max-width: 1400px;
}
body.single-docs,
body.tax-doc_category,
.single-docs .site-content {
  background: var(--wp--preset--color--podcaster-plus-color-white);
}

/* icon */
.single-docs .betterdocs-category-icon {
  display: none;
}

/* left sidebar */
.single-docs .betterdocs-category-header .betterdocs-category-header-inner {
  justify-content: space-between !important;
}

/*----- Changelog -----*/

/* Changelog page container -----*/

/* Changelog page h2 */
.pp-changelog h2 {
  margin-top: 1em;
  padding-top: 1em;
  border-top: solid;
  border-width: 1px;
  border-top-color: var(--contrast-3);
}

/*----- Small Screen below 768px -----*/
@media (max-width: 768px) {
  .mobile-header-sticky #mobile-header.toggled .main-nav > ul {
    height: 100vh;
    display: flex;
    flex-direction: column;
    padding: 20px;
  }

  .main-navigation .site-logo.navigation-logo img,
  .mobile-header-navigation .site-logo.mobile-header-logo img {
    height: 75px;
  }
  /* menu */
  .main-navigation.toggled .main-nav > ul {
    /* padding: 30px 20px; */
    font-size: 0.85em;
  }
  .main-navigation .main-nav ul li a {
    padding: 5px 0;
  }
  .cta.pp-modal.menu-item {
    padding-top: 20px;
  }

  /* widgets */
  .widget-area .widget {
    padding: 40px 0px;
  }

  /* Beta sign up -----*/

  /* mobile menu cta */
  .main-navigation.toggled .main-nav > ul li.cta {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 3em;
  }

  /* page container */
  .page-id-54123.one-container .site-content {
    padding: 40px 0;
  }
  .with_frm_style .frm_combo_inputs_container > .frm_form_subfield-first,
  .with_frm_style .frm_combo_inputs_container > .frm_form_subfield-middle,
  .with_frm_style .frm_combo_inputs_container > .frm_form_subfield-last,
  #frm_field_7_container,
  #frm_field_conf_7_container {
    margin-bottom: 20px !important;
    grid-column: 1 / span 12 !important;
  }
  .with_frm_style .frm_hidden_container .frm_primary_label,
  .with_frm_style .frm_pos_hidden,
  .frm_hidden_container .frm_primary_label {
    display: none;
  }
  /* full width purple backgrounds -----*/

  /* left and right */
  .pp-purple-gb-left,
  .pp-purple-gb-right {
    background: transparent;
  }

  /*----- Plugin: BetterDocs -----*/

  /* Search field -----*/

  /* container */
  .betterdocs-searchform-input-wrap {
    border: none !important;
    margin-bottom: 0 !important;
  }
  .betterdocs-search-form-wrapper {
    padding: 0 !important;
  }
  .betterdocs-content-area {
    padding: 0 0 20px !important;
  }
  .betterdocs-wrapper.betterdocs-taxonomy-wrapper
    .betterdocs-content-area
    .betterdocs-content-inner-area,
  .betterdocs-wrapper.betterdocs-single-wrapper .betterdocs-content-wrapper {
    padding: 0 !important;
  }
  .betterdocs-wrapper.betterdocs-docs-archive-wrapper
    .betterdocs-content-wrapper {
    padding: 0 1em !important;
  }

  /* category box */
  .betterdocs-category-box-inner-wrapper {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  /* breadcrumb */
  .betterdocs-breadcrumb .betterdocs-breadcrumb-item {
    font-size: 0.65rem !important;
  }
}

/*================= Clean this up Dan! =======================*/

/* Pricing Page */

/* 1) Make the PRO card the positioning context */
.gb-container-pro-plan {
  position: relative; /* nearest positioned ancestor */
}

/* 2) Absolutely position the badge in the top-right */
.gb-container-pro-plan .gb-container-popular-badge {
  position: absolute;
  top: 0.5rem; /* tweak to taste */
  right: 0.5rem; /* tweak to taste */
  z-index: 10; /* ensure it sits above content */

  /* Helpful defaults so a GB container behaves like a badge */
  display: inline-flex;
  align-items: center;
  gap: 0.35em;
  width: auto; /* override any block-level width */
  max-width: 90%; /* avoid overflow on small screens */
  padding: 0.35em 0.6em;
  font-size: clamp(12px, 1.2vw, 14px); /* responsive size */
  border-radius: 999px; /* optional “pill” look */
}

/* sticky table header */
/* price-table.css - CSS for stable sticky header */

/* Container setup */
.table-container {
  position: relative;
  overflow: visible;
}

thead.sticky-thead {
  background: #fff;
}

.sticky-thead th {
  border: none;
  font-size: 0.875rem;
}

/* Table setup */
.pricing-comparison-table table {
  /* position: relative;
    width: 100%;
    border-collapse: collapse; */
  table-layout: fixed;
}

/* Base styles for the table header */
/* .pricing-comparison-table thead {
    background: #2c3e50;
    color: white;
    z-index: 100;
} */

/* Ensure header cells have consistent styling */
.pricing-comparison-table th {
  /* background: var(--podcaster-plus-color-white);
    background-image: linear-gradient(180deg, var(--podcaster-plus-color-white), var(--base));
    color: var(--podcaster-plus-color-default-darker);
    border: solid 1px var(--contrast-3); */
  font-weight: 600;
  /* text-transform: uppercase; */
  font-size: 0.875rem;
  /* letter-spacing: 0.5px;
    padding: 16px; */
  text-align: left;
  box-sizing: border-box;
  background: #fff;
  border: none;
}

/* When sticky, maintain table header appearance */
/* .table-container.is-sticky thead {
    box-shadow: 0 5px 10px rgba(0,0,0,0.2);
    border-collapse: collapse;
} */

/* Ensure cells maintain borders when sticky */
/* .table-container.is-sticky th {
    border-right: 1px solid rgba(255,255,255,0.1);
} */

/* .table-container.is-sticky th:last-child {
    border-right: none;
} */

/* remove first row of cells border  */
.pricing-comparison-table tr:first-child td {
  border: none;
}

/* Table body cells */
.pricing-comparison-table td {
  font-size: 1rem;
  padding: 16px;
  text-align: left;
  /* border: 1px solid #e0e0e0; */
  background: white;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
  border-left: none;
  border-right: none;
}

/* pricing table footer */
.pricing-comparison-table tfoot {
  position: relative;
  top: 10px;
  border-top: 3px solid var(--podcaster-plus-color-primary);
}

.pricing-comparison-table tfoot td:first-child {
  background: none;
  border-left: none;
  border-bottom: none;
}

/* Hover effect for body rows */
.pricing-comparison-table tbody tr:hover td {
  background-color: #f8f9fa;
}

/* Last row styling */
.pricing-comparison-table tbody tr:last-child td {
  border-bottom: none;
}

/* Strong text in first column */
.pricing-comparison-table td strong {
  font-weight: 600;
  color: #2c3e50;
}

/* Placeholder for smooth scrolling */
.thead-placeholder {
  display: block;
  visibility: hidden;
}

/* Checkmark */
.checkmark svg {
  max-width: 30px;
}

/* X Mark (now a dash) */
.xmark {
  font-size: 1.75rem;
  line-height: 1.75rem;
  letter-spacing: -0.8px;
  color: var(--contrast-3);
}

/* Bottom cell border */
/* .pricing-comparison-table table tr:last-child {
    border-bottom: solid;
} */

/* Lists - remove marker */
.pp-list-no-mark {
  list-style: none;
  margin-left: 0;
}
.pp-list-no-mark ul {
  list-style: none;
}

/* Soon CTA */

.cta-soon {
  cursor: no-drop;
  position: relative;
}

.cta-soon:hover:before {
  content: "available soon";
  position: absolute;
  background: var(--podcaster-plus-color-default-darker);
  color: white;
  border-radius: 0.25em;
  width: 100%;
  height: 100%;
  top: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/*----- Support Portal -----*/

/* support portal button */
.pp-support-contianer .button {
  padding: 0;
}

/* Responsive adjustments */
@media screen and (max-width: 768px) {
  .pricing-comparison-table th,
  .pricing-comparison-table td {
    padding: 12px 8px;
    font-size: 0.8rem;
  }

  .pricing-comparison-table th {
    font-size: 0.75rem;
  }

  /* Allow horizontal scroll on mobile if needed */
  .table-container {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .pricing-comparison-table {
    min-width: 727px;
  }

  /* Ensure no sticky behavior on mobile */
  .pricing-comparison-table thead {
    position: static !important;
  }

  .table-container.is-sticky thead {
    position: static !important;
    box-shadow: none !important;
  }

  .thead-placeholder {
    display: none !important;
  }
}

/* Print styles */
@media print {
  .pricing-comparison-table thead {
    position: static !important;
    display: table-header-group;
  }

  .thead-placeholder {
    display: none !important;
  }
}

/*----- CLEAN THIS UP -----*/

table {
  border-width: 0;
}
.pricing-comparison-table thead {
  border: none;
  /* border: 1px solid #2c3e50; */
  /* border-bottom: 4px solid #2c3e50; */
}
/* pricing table */
th .centre,
td .centre {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.price-launch,
.price-grow,
.price-scale {
  display: block;
  font-weight: 800;
  font-size: 1.5rem;
  padding: 0.5rem 0;
  /* display: flex;
  justify-content: center; */
  text-transform: lowercase;
}

.pricing-comparison-table .price-launch,
.pricing-comparison-table .price-grow,
.pricing-comparison-table .price-scale {
  text-align: center;
}
.pricing-comparison-table .split-pay-toggle-container,
.sticky-thead .split-pay-toggle-container {
  justify-content: center !important;
}

/* Launch Pricing CTA */
.launch-offer {
  /* position: absolute; */
  position: relative;
  top: -6px;
  font-size: 12px;
  background-color: red;
  padding: 2px 10px;
  border-radius: 3px;
  box-shadow: 0 5px 12px 0 rgba(0, 0, 0, 0.4);
  /* transform: scale(1) perspective(1000px) rotate(-9deg) translate3d(-111px, -20px, 0); */
}

/* .launch-offer.launch {
    transform: scale(1) perspective(1000px) rotate(-9deg) translate3d(-111px, -20px, 0);
}

.launch-offer.grow {
    transform: scale(1) perspective(1000px) rotate(0deg) translate3d(-54px, -9px, 0);
}

.launch-offer.scale {
    transform: scale(1) perspective(1000px) rotate(10deg) translate3d(11px, -2px, 0);
} */

/* section headers */
.section-header-title {
  display: inline-table;
  flex-direction: column;
  margin: -16px;
  padding: 16px 0;
  background-color: transparent;
  font-weight: 800;
  font-size: 20px;
  border-bottom: 3px solid;
  border-bottom-color: var(--podcaster-plus-color-primary);
  /* border-bottom: 2px solid;
    border-bottom-color: var(--podcaster-plus-color-primary); */
}

@media screen and (max-width: 768px) {
  .section-header-title {
    font-size: 16px;
  }
}
/* tr:has(.section-header-title) {
    border-top: solid 2px;
} */

/* .wp-block-table .has-fixed-layout, */
.pricing-comparison-table.wp-block-table .has-fixed-layout {
  table-layout: auto;
}

.pricing-comparison-table td:first-child:has(:not(.section-header-title)) {
  min-width: 150px;
}

td:has(.section-header-title) {
  padding-top: 3em;
  background-color: transparent;
  border: none;
}

tr:has(.section-header-title) td:hover {
  background: none !important;
}

/*----- Checklist SVG Checkmark -----*/

/* Tunables */
.pp-checklist {
  --pp-icon-size: 1.25rem;
  --pp-icon-accent: #7e22ce; /* stroke & ring */
  --pp-icon-bg: #f1edfd; /* ellipse fill */
}

/* Reset bullets & spacing for the icon */
.pp-checklist {
  list-style: none;
  margin: 0;
  padding: 0;
}
.pp-checklist li {
  position: relative;
  padding-left: calc(var(--pp-icon-size) + 0.6rem);
  margin: 0.35rem 0;
}

/* Base for both layers */
.pp-checklist li::before,
.pp-checklist li::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0.2em; /* tweak to your line-height */
  width: var(--pp-icon-size);
  height: var(--pp-icon-size);
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;
}

/* BACK layer: ellipse fill */
.pp-checklist li::before {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><ellipse cx='10.5' cy='12' rx='7.5' ry='8.88' fill='%23F1EDFD'/></svg>");
}

/* FRONT layer: ring + check via mask; color comes from background-color */
.pp-checklist li::after {
  background-color: var(--pp-icon-accent);

  /* Safari/iOS */
  -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M21,12a9,9,0,1,1-9-9A9,9,0,0,1,21,12Z M8,12l3,3 5-5' fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/></svg>");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;

  /* Other modern browsers */
  mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M21,12a9,9,0,1,1-9-9A9,9,0,0,1,21,12Z M8,12l3,3 5-5' fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/></svg>");
  mask-repeat: no-repeat;
  mask-size: contain;
}

/* Optional: hover */
.pp-checklist li:hover {
  --pp-icon-accent: #6b21a8;
}

/*----- Checklist SVG Checkmark END -----*/

/* background image ---*/
/* 14 day-gurantee */
.gb-container-cta-content:before {
  opacity: 0.3;
}

@media screen and (max-width: 768px) {
  .section-header-title {
    margin: -16px -9px;
  }
}

/*----- Gradient Borders with Movement and Hover -----*/
.gradient-border {
  --border-width: 3px;
  position: relative;
  background: transparent;
  isolation: isolate;
}

/* Gradient background - Purple with metallic silver */
.gradient-border::before {
  position: absolute;
  content: "";
  inset: calc(-1 * var(--border-width));
  background: linear-gradient(
    60deg,
    #7e22ce,
    /* Brand purple */ #a855f7,
    /* Light purple */ #e5e7eb,
    /* Silver grey */ #9333ea,
    /* Bright violet */ #f3f4f6,
    /* Light silver */ #7e22ce,
    /* Brand purple */ #d8b4fe,
    /* Pale purple */ #cbd5e1,
    /* Silver blue */ #7e22ce /* Back to brand purple */
  );
  background-size: 300% 300%;
  background-position: 0 50%;
  border-radius: 10px;
  animation: moveGradient 5s alternate infinite;
  z-index: -2;
}

/* Pause animation on hover */
.gradient-border:hover::before {
  animation-play-state: paused;
}

/* Inner mask to create border effect */
.gradient-border::after {
  position: absolute;
  content: "";
  inset: 0;
  background: var(--podcaster-plus-color-white, white);
  border-radius: 6px;
  z-index: -1;
}

@keyframes moveGradient {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 100% 50%;
  }
}

/* ----------------------------------------------
* Base styles for animated elements
* ----------------------------------------
*/

/* Mobile-first approach: visible by default */
.animate-on-scroll {
  opacity: 1;
}

/* Hide on larger screens where animation will run */
@media (min-width: 769px) {
  .animate-on-scroll {
    opacity: 0;
    transition: opacity 0.1s;
  }
}

/* ----------------------------------------------
* animation focus-in-contract-bck-normal
* ----------------------------------------
*/
.focus-in-contract-bck-normal {
  animation: focus-in-contract-bck-normal 0.5s
    cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.1s 1 normal both;
}

@keyframes focus-in-contract-bck-normal {
  0% {
    letter-spacing: 1em;
    transform: translateZ(300px);
    filter: blur(12px);
    opacity: 0;
  }
  100% {
    transform: translateZ(12px);
    filter: blur(0);
    opacity: 1;
  }
}

/* ----------------------------------------------
* animation text-focus-in-normal
* ----------------------------------------
*/
.text-focus-in-normal {
  animation: text-focus-in-normal 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53)
    0.1s 1 normal both;
}

@keyframes text-focus-in-normal {
  /* Fixed: renamed to match the class */
  0% {
    filter: blur(12px);
    opacity: 0;
  }
  100% {
    filter: blur(0px);
    opacity: 1;
  }
}

/* Add more animations here as needed */

/*----- Gradient Background -----*/
/* PP Purple Gradient and Transparent Background */
.pp-gradient-background {
  background-color: var(--podcaster-plus-color-primary);
  background-image: radial-gradient(
      at 63% 45%,
      var(--podcaster-plus-color-primary) 0%,
      transparent 60%
    ),
    radial-gradient(
      at 85% 99%,
      var(--podcaster-plus-color-primary) 0%,
      transparent 50%
    ),
    radial-gradient(at 56% 87%, var(--contrast-3) 0%, transparent 40%),
    radial-gradient(
      at 64% 5%,
      var(--podcaster-plus-color-secondary) 0%,
      transparent 30%
    );
}

/* Mobile: Balanced visibility and subtlety */
@media (max-width: 768px) {
  .pp-gradient-background {
    background-color: #7522ce; /* Slightly darker purple for better contrast */
    background-image: radial-gradient(
        circle 90vw at 75% 10%,
        rgba(241, 237, 253, 0.28) 0%,
        transparent 70%
      ),
      radial-gradient(
        circle 70vw at 15% 90%,
        rgba(204, 204, 204, 0.2) 0%,
        transparent 65%
      ),
      radial-gradient(
        circle 80vw at 95% 50%,
        rgba(241, 237, 253, 0.22) 0%,
        transparent 60%
      );
  }
}

/* PP Purple Gradient and Blue Background */
.pp-gradient-background-header {
  background-color: var(--podcaster-plus-color-primary);
  background-image: radial-gradient(
      at 63% 45%,
      var(--podcaster-plus-color-primary) 0%,
      rgba(91, 33, 182, 0.2) 60%
    ),
    /* Purple-blue blend */
      radial-gradient(
        at 85% 99%,
        var(--podcaster-plus-color-primary) 0%,
        rgba(76, 29, 149, 0.15) 50%
      ),
    /* Deep purple-blue */
      radial-gradient(
        at 56% 87%,
        var(--contrast-3) 0%,
        rgba(91, 33, 182, 0.1) 40%
      ),
    radial-gradient(
      at 64% 5%,
      var(--podcaster-plus-color-secondary) 0%,
      rgba(103, 58, 183, 0.08) 30%
    );
}

/* Mobile: Darker for better contrast */
@media (max-width: 768px) {
  .pp-gradient-background-header {
    background-color: var(--podcaster-plus-color-primary);
    background-image: radial-gradient(
        circle 90vw at 75% 10%,
        rgba(126, 34, 206, 0.3) 0%,
        var(--podcaster-plus-color-primary) 70%
      ),
      radial-gradient(
        circle 70vw at 15% 90%,
        rgba(91, 33, 182, 0.25) 0%,
        var(--podcaster-plus-color-primary) 65%
      ),
      radial-gradient(
        circle 80vw at 95% 50%,
        rgba(103, 58, 183, 0.2) 0%,
        var(--podcaster-plus-color-primary) 60%
      );
  }
}

/*----- FAQ Grid Background -----*/
.gb-container-faq-section,
.pp-grid-background {
  background-color: #f8f9fa;
  background-image: linear-gradient(
      -30deg,
      transparent 0%,
      transparent 40%,
      #f8f9fa 60%,
      #f8f9fa 100%
    ),
    linear-gradient(to right, #e5e7eb 1px, transparent 1px),
    linear-gradient(to bottom, #e5e7eb 1px, transparent 1px);
  background-size: 100% 100%, 40px 40px, 40px 40px;
}

/*----- WP Forms -----*/
/* Remove Text/HTML tab */
.wp-editor-tabs {
  display: none;
}
.wp-editor-tools {
  margin-top: 1rem;
}

/*----- Microtip -----*/

/* Microtip styles */
.tooltip-icon {
  display: inline-block;
  vertical-align: middle;
  cursor: help;
  margin-left: 4px;
}
.tooltip-icon svg {
  display: block;
}

/*----- Quote Block -----*/
/* Blue Quote Block */
blockquote.wp-block-quote.blue-quote {
  font-size: 1.1rem;
  background: #f0f8ff;
  padding: 12px;
  border-left: 3px solid #0073aa;
  margin: 15px 0;
}
/* Grey Quote Block */
blockquote.wp-block-quote.grey-quote {
  font-size: 1.1rem;
  background: #ededed;
  padding: 12px;
  border-left: 3px solid #6b7280;
  margin: 15px 0;
}
/* Yellow Quote Block */
blockquote.wp-block-quote.yellow-quote {
  font-size: 1.1rem;
  background: #fff9e6;
  padding: 12px;
  border-left: 3px solid #ffb900;
  margin: 15px 0;
}

/*- Status Dot -----*/
/* .status-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  background: #22c55e;
  border-radius: 50%;
  margin-right: 6px;
  vertical-align: middle;
  animation: pulse 2s ease-in-out infinite;
}

@keyframes pulse {
  0%, 100% { opacity: 1; box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.6); }
  50% { opacity: 0.7; box-shadow: 0 0 0 4px rgba(34, 197, 94, 0); }
} */

a.status-dot::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background: #22c55e;
  border-radius: 50%;
  margin-right: 6px;
  vertical-align: middle;
  animation: pulse 2s ease-in-out infinite;
}

@keyframes pulse {
  0%,
  100% {
    opacity: 1;
    box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.6);
  }
  50% {
    opacity: 0.7;
    box-shadow: 0 0 0 4px rgba(34, 197, 94, 0);
  }
}
