/*
Theme Name:     Oaks Press
Theme URI:      https://oikosdesigns.com
Template:       kadence
Author:         Matthew Anderson
Author URI:     n/a
Description:    Child Theme Description
Version:        1.0
License:        GNU General Public License v3.0 (or later)
License URI:    https://www.gnu.org/licenses/gpl-3.0.html
*/
.section-title,
.woocommerce .upsells h2,
.woocommerce .related.products h2,
h1.entry-title:not(.product_title),
.archive-title,
.post-archive-title h1,
.white-line {
    display: flex;
    max-width: 1000px;
    margin: 0 auto 2rem;
    width: 100%;
    justify-content: center;
    align-items: center;
    text-align: center;
    text-transform: uppercase;
}
.section-title:before,
.woocommerce .upsells h2:before,
.woocommerce .related.products h2:before,
h1.entry-title:not(.product_title):before,
.archive-title:before,
.post-archive-title h1::before,
.white-line::before {
    content: '';
    margin-right: 15px;
    flex: 1;
    max-width: 80px;
    border-top: 1px solid currentColor;
}

.section-title:after,
.woocommerce .upsells h2:after,
.woocommerce .related.products h2:after,
h1.entry-title:not(.product_title):after,
.archive-title:after,
.post-archive-title h1::after,
.white-line::after {
    content: '';
    margin-left: 15px;
    flex: 1;
    max-width: 80px;
    border-top: 1px solid currentColor;
}


.white-line::before,
.white-line::after {
    border-color: var(--global-palette9);
}

p.form-submit{
	text-align: center;
}

.callout.blog {
    position: relative;
    margin: 0 0 1rem 0;
    padding: 1rem;
    border: 0;
    border-radius: 0;
    background-color: var(--global-palette8);
    color: #444;
}
.excerpt {
    margin-left: auto;
    margin-bottom: 1.5rem;
    text-align: left;
    font-size: 1.5rem;
}
span.drop-caps {
    color: var(--global-palette1);
    float: left;
    font-size: 6.9rem;
    line-height: 0.80;
    padding-right: 8px;
    padding-left: 3px;
    float: left;
}
/*
Forms etc
*/
.input-group-button{
    display: inline-block;
}
input[type=text], input[type=email], input[type=url], input[type=password], input[type=search], input[type=number], input[type=tel], input[type=range], input[type=date], input[type=month], input[type=week], input[type=time], input[type=datetime], input[type=datetime-local], input[type=color], textarea {
    border-radius: 0!important;
    padding: .33em .5em;
}
.wc-block-components-quantity-selector__input {
    padding: 0.33em 0!important;
}
/*
Podcast Player
*/
.podcast-player-slim {
  width: 100%;
  padding: 1rem;
  border-radius: 10px;
  color: var(--global-palette9);
  box-sizing: border-box;
}

/* The top row: image + meta side by side */
.podcast-top-row {
  display: flex;
  align-items: center;
  gap: 1rem;
}

/* Image */
.podcast-image {
  width: 90px;
  height: 90px;
  object-fit: cover;
  border-radius: 8px;
  flex-shrink: 0;
}

/* Meta */
.podcast-meta {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0; /* prevent overflow */
}

.podcast-title {
  margin: 0;
  font-size: 1rem;
  font-weight: bold;
  color: var(--global-palette9);
}

.latest-episode,
.podcast-date {
  font-size: 0.85rem;
  color: var(--global-palette6);
  margin-top: 0.1rem;
}
/* === Mobile Styles (max-width: 500px) === */

@media (max-width: 504px) {
  .podcast-title {
    font-size: .85rem; /* slightly smaller title */
  }

  .podcast-date,
  .latest-episode {
    font-size: 0.65rem; /* smaller meta text */
  }

  .podcast-audio-wrapper {
    width: 100%;
    margin-top: 1rem;
  }
}
.mejs-container, .mejs-container .mejs-controls, .mejs-embed, .mejs-embed body {
    background: transparent!important;
    margin-top:12px;
}

.mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current, .mejs-controls .mejs-time-rail .mejs-time-loaded{
    background: var(--global-palette6)!important;
}
.mejs-controls .mejs-time-rail .mejs-time-current{
    background: var(--global-palette2)!important;
}
/*
WooCommerce 
*/
/* video on product pages */
.video-container .kb-dynamic-html-inner-wrap p {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%; /* 16:9 ratio */
  height: 0;
  overflow: hidden;
}
/* video on product pages */
.kb-dynamic-html-inner-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
/* PDF viewer */
.acf-pdf-embed iframe {
  width: 100%;
  height: 100%;
  border: none;
}

.jdgm-prev-badge__text{
    font-size: .85rem;
}

@media (min-width: 1025px) {
  /* Desktop WooCommerce loop */
  /* Target WooCommerce product archives using CSS Grid */
  /* Unified WooCommerce Grid Layout */
  /* Grid layout – EXCLUDE any ul inside .square-images */
  ul.products.grid-cols:not(.square-images ul),
  ul.wc-block-grid__products:not(.square-images ul) {
    display: grid !important;
    justify-content: center;
  }
}

*/
/* Center product items */
ul.products.grid-cols li.product:not(.square-images li),
ul.wc-block-grid__products li.wc-block-grid__product:not(.square-images li) {
  justify-self: center;
}

/* Product image containers */
.woocommerce ul.products li a.woocommerce-loop-product__link:not(.square-images a),
.woocommerce ul.products li a.woocommerce-loop-image-link:not(.square-images a),
.wc-block-grid__product a.wc-block-grid__product-link:not(.square-images a) {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  height: 330px;
}

/* Product images */
.woocommerce ul.products li a.woocommerce-loop-product__link img:not(.square-images img),
.woocommerce ul.products li a.woocommerce-loop-image-link img:not(.square-images img),
.wc-block-grid__product a.wc-block-grid__product-link img:not(.square-images img) {
  height: auto;
  max-height: 100%;
  width: auto;
  object-fit: contain;
}

/* Tablet & Smaller */
@media (max-width: 1024px) {
  .woocommerce ul.products li a.woocommerce-loop-product__link:not(.square-images a),
  .woocommerce ul.products li a.woocommerce-loop-image-link:not(.square-images a),
  .wc-block-grid__product a.wc-block-grid__product-link:not(.square-images a) {
    height: 280px;
  }

  .woocommerce ul.products li a.woocommerce-loop-product__link img:not(.square-images img),
  .woocommerce ul.products li a.woocommerce-loop-image-link img:not(.square-images img),
  .wc-block-grid__product a.wc-block-grid__product-link img:not(.square-images img) {
    max-height: 280px;
  }
}



/** Affilitate Links **/
.affiliate-wrapper{
    padding: 1rem;
    background-color: var(--global-palette8);
    margin-top: 1rem;
}

.affiliate-box {
  display: flex;
  flex-wrap: wrap; 
  gap: 1rem; /* adjust spacing between buttons if needed */
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 1rem; /* optional, helps with iOS scroll cut-off */
}
.affiliate-box .kb-button.kb-btn-global-outline{
    border-radius: 0px;
    border: 1px solid var(--global-palette4);
    color: solid var(--global-palette4);
    line-height: 1;
    font-size: .85rem;
    padding: .85em;
}
.affiliate-box .kb-button.kb-btn-global-outline:hover, .affiliate-box .kb-button.kb-btn-global-outline:focus {
    color: var(--global-palette9);
    background: var(--global-palette4);
    border-color: var(--global-palette4);
}
.affiliate-box a .button-label{
    font-weight: 700;
}
.affiliate-box a .button-price{
    font-size: .85rem;
}
/**
Courses Styles (Some come from enqueued styles from Foundations by Zurb)
**/
.single-courses .content-area{
    margin-top:0;
}
.single-content ul.course-tabs{
   padding-left:0;
}
.tabs-content{
    border-left:0;
}
.course-details {
    border: solid #e6e6e6;
    padding: 1em;
    border-width: 0px 1px 0px 1px;
}
.tabs-title>a:focus, .tabs-title>a[aria-selected=true] {
    background: var(--global-palette8)!important;
    color: var(--global-palette1)!important;
}
.tabs-title>a {
    display: block;
    padding: 1.25rem 1.5rem;
    font-size: .85rem;
    line-height: 1;
    color: var(--global-palette1)!important;
}

/**
Authors Stuff
**/

/* Product Single Authors name */
.product-author {
text-decoration: none;
text-transform: uppercase;
font-size: .85rem;
}
/* Author Social Icons */
.container.social ul.nav {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	list-style: none;
	padding: 0;
	margin: 1rem 0;
}

.container.social ul.nav li.nav-item {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background-color: var(--global-palette1);
	transition: background-color 0.3s ease;
}

.container.social ul.nav li.nav-item a {
	color: #fff;
	font-size: 16px;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
}

.container.social ul.nav li.nav-item:hover {
	background-color: var(--global-palette2); /* Optional: subtle hover */
}