/*** ---------- Block ---------- ***/


/*** ---------- Block:  Text & Media ---------- ***/
.wpb-block--text-media .wpb-image:has(.wpb-logo-wrapper){ position: relative; }
.wpb-block--text-media .wpb-image .wpb-logo-wrapper{ position: absolute; }
.wpb-block--text-media .wpb-image .wpb-logo-wrapper:first-of-type{ left: -2rem; bottom: -2rem; }
.wpb-block--text-media .wpb-image .wpb-logo-wrapper:nth-child(2){ top: -2.5rem; right: 4rem; }
.wpb-block--text-media .wpb-image:has(.wpb-logo-wrapper:nth-child(3)) .wpb-logo-wrapper:nth-child(1){ left: 4rem; bottom: -3rem; }
.wpb-block--text-media .wpb-image:has(.wpb-logo-wrapper:nth-child(3)) .wpb-logo-wrapper:nth-child(2){ top: -4rem;  }
.wpb-block--text-media .wpb-image:has(.wpb-logo-wrapper:nth-child(3)) .wpb-logo-wrapper:nth-child(3){ bottom: -2rem; right: 6rem; }
.wpb-block--text-media .wpb-image:has(.wpb-logo-wrapper:nth-child(3)) .wpb-logo-wrapper:nth-child(4){ top: 4rem; left: -2rem; }

.wpb-block--text-media .wpb-image .wpb-logo-wrapper img{ background-color: transparent; border: none; }
.wpb-block--text-media .wpb-image img { max-height: 50rem; object-fit: cover; }

/*** ---------- Block: Media ---------- ***/
.wpb-block--media .wpb-text { margin-bottom: 2rem; }


/*** ---------- Block: FAQ ---------- ***/
.wpb-block--faq .container { display: grid; grid-template-columns: 1fr; column-gap: 2rem; row-gap: 2rem; }

@media (min-width: 992px) {
    .wpb-block--faq-primary, .wpb-block--faq-secondary { align-items: start; }
    .wpb-block--faq-primary .container, .wpb-block--faq-secondary .container { column-gap: 3.2rem; }
    .wpb-block--faq-primary .container .wpb-accordion { order: -1; }
    :is(.wpb-block--faq-primary, .wpb-block--faq-secondary) .container{ --faq-width: 60rem; grid-template-columns: 1fr var(--faq-width); row-gap: 3.2rem; }
    .wpb-block--faq-primary .container{ grid-template-columns: var(--faq-width) 1fr; }
}
@media (min-width: 1400px) {
    .wpb-block--faq-primary .container, .wpb-block--faq-secondary .container { column-gap: 6.4rem; }
    .wpb-block--faq .container{ --faq-width: 80rem; }
}


/*** ---------- Block: Blurb ---------- ***/
.wpb-block--blurb .wpb-text { margin-bottom: 6.4rem; }

 
/*** ---------- Block: Tread ---------- ***/
.wpb-block--tread .wpb-text { margin-bottom: 3.4rem; }
.wpb-block--tread .wpb-image { position: relative; }
.wpb-block--tread .wpb-image img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.wpb-block--tread .wpb-image::after { content: ''; display: block; width: 100%; padding-top: 75%; }

@media (min-width: 576px){ 
    .wpb-block--tread .wpb-text { margin-right: 20rem; }
}

/*** ---------- Block: Header ---------- ***/
.wpb-header .wpb-header__toolbar { display: flex; align-items: center; gap: 1.6rem; padding-bottom: 2.8rem; }
.wpb-header .wpb-header__toolbar .btn { white-space: nowrap; }
.wpb-header .wpb-breadcrumbs { margin: 0; --excerpt-line-clamp: 1; display: -webkit-box; -webkit-line-clamp: var(--excerpt-line-clamp); -webkit-box-orient: vertical; overflow: hidden; }
.wpb-header .wpb-breadcrumbs span * { --clr: var(--clr-text); font-size: clamp(1.4rem, 1.5vw, 1.8rem); font-weight: 300; }
.wpb-header .wpb-breadcrumbs span span a{ display: flex; gap: .5rem; }
.wpb-header .wpb-breadcrumbs span span a .wpb-icon{ --w: 1.6rem; --h: 1.6rem; }

/*** ---------- Block: Text media tabs ---------- ***/
.wpb-block--media-tabs .container > .wpb-text { margin-bottom: 2rem; }
.wpb-block--media-tabs .inner { gap: 3.2rem; align-items: center; }
.wpb-block--media-tabs .tab__images { display: grid; overflow: hidden; } 
.wpb-block--media-tabs .tab__images > figure { grid-row: 1/-1; grid-column: 1/-1; opacity: 0; transition: opacity var(--ts-15) ease; transition-delay: var(--ts-35); }
.wpb-block--media-tabs .tab__images figure.active { opacity: 1; transform: scale(1); }
.wpb-block--media-tabs .tab__images figure img { height: 100%; width: 100%; object-fit: contain; }
.wpb-block--media-tabs .tab__content { display: grid; position: relative; gap: 2rem; }
.wpb-block--media-tabs .tab__item { display: grid; align-items: center; }
.wpb-block--media-tabs .tab__item.has-icon { grid-template-columns: 6.4rem 1fr; -ms-grid-columns: 6.4rem 1fr; gap: 1.6rem; }
.wpb-block--media-tabs .tab__item .icon { background-color: var(--wpb-primary); border-radius: 50%; width: 6.4rem; height: 6.4rem; padding: 1.4rem; transition: box-shadow var(--ts-15) ease; }
.wpb-block--media-tabs .tab__item .icon img { width: 100%; height: 100%; object-fit: contain; }

@media (min-width: 992px) {
    .wpb-block--media-tabs .inner { gap: 8.2rem; }
}


/*** ---------- Block: Tabs ---------- ***/
.wpb-block--tabs .wpb-text { margin-bottom: 2rem; }



/*** ---------- Block: wpb-block--articles ---------- ***/
.wpb-block--articles { --gc: repeat(auto-fit, minmax(25rem, 1fr)); --gap: 1.5rem; }
.wpb-block--articles .inner { display: grid; grid-template-columns: var(--gc); -ms-grid-columns: var(--gc); gap: var(--gap); }
.wpb-block--articles .container--articles { display: grid; gap: 1.5rem; }
.wpb-block--articles .container:not(:first-child){ margin-top: 4rem; }
.wpb-block--articles .btn-group{ justify-content: center; }

@media (min-width: 992px) {
    .wpb-block--articles .container--articles.has-searchbar { grid-template-columns: 35rem 1fr; }
}
@media (min-width: 1200px) {
    .wpb-block--articles .container--articles.has-searchbar { grid-template-columns: 40rem 1fr; }
}
@media (min-width: 1400px) {
    .wpb-block--articles .container--articles.has-searchbar { grid-template-columns: 50rem 1fr; }
}



/*** ---------- Block: Text Shortcode ---------- ***/
.wpb-block--text-shortcode .container { column-gap: 2rem; row-gap: 2rem; }

@media (min-width: 992px) {
    .wpb-block--text-shortcode .container { column-gap: 3.2rem; }
    .wpb-block--text-shortcode-primary .wpb-card { order: -1; }
}

@media (min-width: 1200px) {
    .wpb-block--text-shortcode .container { column-gap: 6.4rem; }
}

@media (min-width: 1200px) {
    .wpb-block--text-shortcode .container { column-gap: 9.8rem; }
}


/*** ---------- Block: Youtube embed ---------- ***/
.wpb-block--youtube .container { column-gap: 2rem; row-gap: 2rem; }
.wpb-block--youtube .wpb-ratio :is(iframe, img) { border-radius: .5rem; }
.wpb-block--youtube .wpb-ratio .youtube-play { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 5; cursor: pointer; transition: opacity var(--ts-35) ease; }
.wpb-block--youtube .wpb-ratio .youtube-play img { object-fit: cover; width: 100%; height: 100%; }
.wpb-block--youtube .wpb-ratio .youtube-play .play-icon { position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; display: -ms-grid; display: grid; place-items: center; z-index: 2; background-color: #0000; width: 100%; height: 100%; border-radius: 0; transition: .25s ease; }
.wpb-block--youtube .wpb-ratio .youtube-play .play-icon i { --clr: rgb(255,255,255); }
.wpb-block--youtube .wpb-ratio:hover .youtube-play .play-icon { transform: scale(1.065); }

@media (min-width: 992px) {
    .wpb-block--youtube .container { column-gap: 3.2rem; }
    .wpb-block--youtube.wpb-block--youtube-primary .wpb-ratio { order: -1; }
}

@media (min-width: 1200px) {
    .wpb-block--youtube .container { column-gap: 6.4rem; }
}

@media (min-width: 1400px) {
    .wpb-block--youtube .container { column-gap: 9.8rem; }
}



/*** ---------- Block: Timeframe ---------- ***/
.wpb-block--timeframe .wpb-text { margin-bottom: 2rem; }
.wpb-block--timeframe .wpb-timeframe__content { padding: 3.2rem 0; display: -ms-grid; display: grid; overflow-x: auto; }
.wpb-block--timeframe .wpb-timeframe__content::-webkit-scrollbar { height: 1rem; }
.wpb-block--timeframe .wpb-timeframe__content::-webkit-scrollbar-track { background: #ccc; border-radius: .35rem; }
.wpb-block--timeframe .wpb-timeframe__content::-webkit-scrollbar-thumb { background: #000; border-radius: .35rem; }

.wpb-block--timeframe .wpb-timeframe__content .wpb-timeframe__grid { grid-row: 1/-1; grid-column: 1/-1; position: relative; display: grid; grid-template-columns: repeat(99, minmax(0, 1fr)); gap: 1.5rem 0; } 
.wpb-block--timeframe .wpb-timeframe__content .wpb-timeframe__grid--items { z-index: 3; margin: 2.2rem 0; }
.wpb-block--timeframe .wpb-timeframe__content .wpb-timeframe__grid--indicators { z-index: 1; }

.timeframe-item { background-color: var(--clr-primary); display: inline-block; padding: 1rem 1.5rem; border-radius: .5rem; position: relative; margin-right: .5rem; margin-left: .5rem; }
.timeframe-item.timeframe-item--primary { background-color: var(--clr-primary); }
.timeframe-item.timeframe-item--striped :is(strong, span) { color: #fff; position: relative; z-index: 2; }
.timeframe-item.timeframe-item--striped::before { content: ''; border-radius: .8rem; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: repeating-linear-gradient(-65deg, rgba(255,255,255,.1), rgba(255,255,255,.1) 1.25rem, transparent 1.25rem, transparent 2.5rem); }

.timeframe-item strong { display: block; font-size: 1.6rem; line-height: 1.4; color: #fff; }
.timeframe-item span { display: block; font-size: 1.4rem; line-height: 1.4; color: #fff;  }
.timeframe-item:first-child { margin-left: 0!important; }
.timeframe-item:last-child { margin-right: 0!important; }

.wpb-timeframe__indicator { position: relative; width: .1rem; background-color: var(--clr-border); }
.wpb-timeframe__indicator::before { content: attr(data-phase); color: var(--clr-text); position: absolute; bottom: calc(100% + 1rem); left: 50%; transform: translateX(-50%); white-space: nowrap; font-size: 1.4rem; line-height: 1.4; }
.wpb-timeframe__indicator:first-of-type::before { left: 100%; transform: none; }
.wpb-timeframe__indicator:last-of-type::before { left: auto; right: 100%; transform: none; }


/*** ---------- Block: Reviews ---------- ***/
.wpb-block--reviews { --gc: 1; }
.wpb-block--reviews .wpb-text{ margin-bottom: 4rem; }
.wpb-block--reviews .inner { display: grid; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); column-gap: 2rem; row-gap: 2rem }

@media (min-width: 768px) {
    .wpb-block--reviews { --gc: 2; }
}
@media (min-width: 1200px) {
    .wpb-block--reviews { --gc: 3; }
}


/*** ---------- Block: Content card ---------- ***/
.wpb-block.wpb-block--content-card .wpb-row{ --br: 1.5rem; border-radius: var(--br); overflow: hidden; }
.wpb-block.wpb-block--content-card .wpb-text{ --p: 2rem; padding: var(--p); }
.wpb-block.wpb-block--content-card .wpb-text p:has(+ :is(h1, h2, h3)) em{ opacity: .7; }
.wpb-block.wpb-block--content-card .wpb-image{ --br: 0; overflow: hidden; }
.wpb-block.wpb-block--content-card .wpb-image.col-split{ max-height: 35rem; }
.wpb-block.wpb-block--content-card .btn-group { --mt: 2.4rem; }
@media (min-width: 768px) {
    .wpb-block.wpb-block--content-card .wpb-text{ --p: 4rem; }
}
@media (min-width: 768px) {
    .wpb-block.wpb-block--content-card .wpb-image{ height: 100%; }
    .wpb-block.wpb-block--content-card .wpb-image img{ height: 100%; object-fit: cover; }
}
@media (min-width: 1200px) {
    .wpb-block.wpb-block--content-card .wpb-text{ --p: 8rem; }
}

