/*!
Theme Name: Kadence Child
Theme URI: https://www.kadencewp.com/kadence-theme/
Template: kadence
Author: Kadence WP
Author URI: https://www.kadencewp.com/
Description: A child theme for the Kadence Theme.
Version: 1.0.0
License: GNU General Public License v3.0 (or later)
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Text Domain: kadence-child
*/

/* Theme customization starts here
-------------------------------------------------------------- */

:root body {
    --global-kb-font-size-xxxl: clamp(4rem, 3.2692rem + 3.0769vw, 5rem);
    --global-kb-font-size-xxl: clamp(1.6rem, 1.1381rem + 2.3093vw, 3rem); /* h1 */
    --global-kb-font-size-xl: clamp(1.8rem, 1.5303rem + 1.0787vw, 2.4rem); /* h2 */
    --global-kb-font-size-lg: clamp(1.4rem, 1.3101rem + 0.3596vw, 1.6rem); /* h3 */
    --global-kb-font-size-md: clamp(1.2rem, 1.0538rem + 0.6154vw, 1.4rem); /* h4 */
    --global-kb-font-size-sm: 0.8rem;
    --global-kb-font-size-xsm: 0.6rem;
	
	--global-grey: #777777;
}

body a {
    text-decoration: none;
}

body h1 { font-size: var(--global-kb-font-size-xxl); }
body h2 { font-size: var(--global-kb-font-size-xl);  }
body h3 { font-size: var(--global-kb-font-size-lg); }
body h4 { font-size: var(--global-kb-font-size-md); }
body h5 { font-size: var(--global-kb-font-size-sm); }
body h6 { font-size: var(--global-kb-font-size-xsm); }

@media screen and (max-width: 425px) {
	body h1 { font-size: var(--global-kb-font-size-xxl, 1.6rem); }
}

/*Text balance */
.balance {
    text-wrap: balance;
}

/* Our sponsors images slide */
.idx-sponsors .splide__list {
	padding: 10px !important;
}

/* Fix accordions lip/edge */
div.wp-block-kadence-accordion .kt-accordion-pane .kt-acccordion-button-label-show.kt-accordion-panel-active {
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}

div.wp-block-kadence-accordion .kt-accordion-pane .kt-accordion-panel .kt-accordion-panel-inner {
	border-top-right-radius: 0;
	border-top-left-radius: 0;
}

/* HOME */

/************************************
 * Site Logo
 ************************************/
.site-branding .idx-logo.site-description {
    margin: 0;
}
div.site-branding a.brand {
    gap: 0.5em;
}
.site-branding a.brand img.custom-logo {
    border-right: 2px solid var(--global-palette9);
    padding-right: 0.5em;
}
.site-branding a.brand img.custom-logo.kadence-sticky-logo {
    border-right: 2px solid var(--global-palette6);
}

/* Ticker */
.idx-ticker-wrap .idx-ticker {
    overflow-x: hidden;
	display: flex;
    align-items: center;
	width: 100%;
}

div.idx-ticker-wrap .idx-ticker .kt-inside-inner-col > .idx-ticker-1,
div.idx-ticker-wrap .idx-ticker .kt-inside-inner-col > .idx-ticker-2 {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	animation: ticker 40s linear infinite;
}

/* Keyframe animation for ticker 1 */
@keyframes ticker {
    0% {
        transform: translateX(0%);
    }
    100% {
        transform: translateX(-100%);
    }
}

/* ------------------------------------------------------------- */

/* SPEAKERS CAROUSEL */
.idx-speakers-carousel .kt-blocks-post-grid-item img {
	border-radius: 10px;
}

.idx-speakers-carousel .kt-blocks-post-grid-item .kt-blocks-post-top-meta {
	flex-direction: column;
}

.idx-speakers-carousel .kt-blocks-post-grid-item .kt-blocks-post-top-meta p {
	margin: 0;
}

.idx-speakers-carousel .kb-splide .splide__arrow {
	top: 105%;
	border: none;
}

@media screen and (min-width: 768px) {
	.idx-speakers-carousel .kb-splide .splide__arrow--prev {
		left: 35%;
	}

	.idx-speakers-carousel .kb-splide .splide__arrow--next {
		right: 35%;
	}
}

@media screen and (min-width: 1024px) {
	.idx-speakers-carousel .kb-splide .splide__arrow--prev {
		left: 40%;
	}

	.idx-speakers-carousel .kb-splide .splide__arrow--next {
		right: 40%;
	}
}

@media screen and (min-width: 1280px) {
	.idx-speakers-carousel .kb-splide .splide__arrow--prev {
		left: 40%;
	}

	.idx-speakers-carousel .kb-splide .splide__arrow--next {
		right: 40%;
	}
}

/* ------------------------------------------------------------- */

/* FOOTER */

/* Fix odd paragraph tag for form??  */
footer section#block-14 > p {
	display: none;
}

/* Add red wire */
footer .site-top-footer-wrap .site-top-footer-inner-wrap {
	position: relative;
}

/* Red line */
footer .site-top-footer-wrap .site-top-footer-inner-wrap::before {
    content: '';
    background: url(http://idx.uk.w3pcloud.com/wp-content/uploads/2024/09/red-wave.svg) repeat-x left center / 35px 15px;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 15px;
}

/* ------------------------------------------------------------- */

/* SPEAKER ARCHIVE + SESSION ARCHIVE */
.post-type-archive-speaker .custom-archive-loop-item p {
	color: var(--global-grey);
	font-size: 0.9rem;
}

/* Breadcrumbs used if the whole page is replaced rather than loop content */
.post-type-archive-session .kadence-breadcrumbs {
	color: var(--global-palette9);
}

.post-type-archive-session .kadence-breadcrumbs a:hover {
	color: var(--global-palette1);
}

.post-type-archive-session a.idx-speaker {
	color: var(--global-palette4);
}

.post-type-archive-session .idx-speakers {
	display: flex;
}

.post-type-archive-session .idx-speakers p {
	font-size: var( --global-kb-font-size-md );
	margin: 0;
}

.post-type-archive-session #archive-container {
	gap: 0;
}

.idx-after-speaker-loop-row {
	width: calc( var( --global-content-width ) - ( var( --global-content-edge-padding ) * 2 ) );
	margin: 0 auto;
}

/* ------------------------------------------------------------- */

/* SINGLE session + SINGLE SPEAKER */

/* All linked posts */
.single-session .idx-speakers,
.single-speaker .idx-sessions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--global-lg-spacing);
	padding: 15px 0;
}

/* Individual linked post */
.single-session .idx-speakers .idx-speaker,
.single-speaker .idx-sessions .idx-session {
	display: flex;
	flex-direction: column;
	gap: var(--global-xs-spacing);
	max-width: 265px;
}

/* Images */
.single-session .idx-speakers .idx-speaker figure,
.single-speaker .idx-sessions .idx-session figure {
	aspect-ratio: 1 / 1;
	width: 100%;
	overflow: hidden;
	margin: 0;
}

.single-session .idx-speakers .idx-speaker figure img,
.single-speaker .idx-sessions .idx-session figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	border-radius: 10px;
}

/* Information */
.single-speaker .idx-sessions .session-info,
.single-session .idx-speakers .speaker-info {
	display: grid;
    grid-template-rows: 1fr auto auto;
	max-height: 100px;
}

.single-session .idx-speakers .idx-speaker h3,
.single-speaker .idx-sessions .idx-session h3,
.single-session .idx-speakers .idx-speaker h3 a:hover,
.single-speaker .idx-sessions .idx-session h3 a:hover {
	color: var(--global-palette6);
	margin: 0;
}

.single-session .idx-speakers .idx-speaker p,
.single-speaker .idx-sessions .idx-session p {
	margin: 0;
	color: var(--global-grey);
	font-size: 0.9rem;
}

.single-speaker .idx-sessions .idx-session h3 {
	font-size: 1.25rem;
	text-wrap: balance;
}

/* Navigation */
.idx-navigation {
	display: flex;
	flex-direction: column;
	align-items: center;
	border-top: solid 1px var(--global-palette8);
	padding: var(--global-md-spacing) 0;
	gap: var(--global-xs-spacing);
}

.idx-navigation .top-row {
	display: grid;
	width: 100%;
	justify-items: center;
	gap: var(--global-md-spacing);
}

@media screen and (min-width: 769px) {
	.idx-navigation .top-row {
		display: flex;
	}
}

.idx-navigation .top-row > div {
	display: flex;
	align-items: center;
}

.idx-navigation .previous-post,
.idx-navigation .next-post {
	gap: var(--global-xs-spacing);
	flex: 1;
}

.idx-navigation .next-post {
	justify-content: flex-end;
}

.idx-navigation .previous-post > div,
.idx-navigation .next-post > div {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: var(--global-xs-spacing);
	height: 100%;
}

.idx-navigation .previous-post a.post-title,
.idx-navigation .next-post  a.post-title {
	font-weight: bold;
	text-wrap: balance;
}

.idx-navigation .previous-post figure,
.idx-navigation .next-post figure {
	aspect-ratio: 1 / 1;
	width: 100%;
	height: auto;
	max-height: 100px;
	max-width: 100px;
	overflow: hidden;
	margin: 0;
}

.idx-navigation .previous-post figure img,
.idx-navigation .next-post figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	border-radius: 10px;
}

.idx-navigation .previous span {
	margin-right: 1rem;
}

.idx-navigation .next span {
	margin-left: 1rem;
}