/* Theme style */

:root {
    --wp--custom--border-radius--s: 4px;
    --wp--custom--border-radius--m: 16px;
    --wp--custom--border-radius--l: 25px;
    --wp--custom--section-padding--x: var(--wp--preset--spacing--xl);
}

@media screen and (max-width: 996px) {
    :root {
        --wp--custom--section-padding--x: var(--wp--preset--spacing--l);
    }
}

@media (max-width: 768px) {
    :root {
        --wp--custom--header-height--top: 70px;
        --wp--custom--section-padding--x: var(--wp--preset--spacing--m);
    }
}

@media (max-width: 510px) {
    :root {
        --wp--custom--section-padding--x: var(--wp--preset--spacing--s);
    }
}

/* ==========================================================================
Base styles
========================================================================== */

body {
    background-color: var(--wp--preset--color--neutral-3);
}

main {
    margin-top: calc(var(--wp--custom--header-height--total) + 40px);
}

/* Qase Sections
========================================================================== */

.qt-section,
.qt-section.has-background {
    padding: var(--wp--preset--spacing--xxxl)
        var(--wp--custom--section-padding--x);
}

.qt-section:not(.has-background, .is-style-subhero)
    + .qt-section:not(.has-background, .is-style-subhero) {
    padding-top: var(--wp--preset--spacing--m);
}

.qt-section.has-secondary-light-background-color .wp-block-paragraph,
.qt-section.has-secondary-light-background-color .wp-block-heading
{
	color: var(--wp--preset--color--secondary-dark);
}

/* Headings
========================================================================== */


.has-heading-display-font-family {
    line-height: 1.25;
    margin-bottom: 0.5em;
}

.has-heading-font-family {
    font-weight: 500;
}

/* Paragraphs
========================================================================== */

.is-style-eyebrow,
.is-style-eyebrow-blue,
.is-style-eyebrow-pink,
.is-style-eyebrow-inverted {
    padding: var(--wp--preset--spacing--tiny) var(--wp--preset--spacing--xxs);
    background-color: var(--wp--preset--color--black);
    font-size: var(--wp--preset--font-size--xxs);
    color: var(--wp--preset--color--white);
    width: fit-content;
    margin-bottom: var(--wp--preset--spacing--xs);
}

.is-style-eyebrow-blue {
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--primary-primary-dark);
}

.is-style-eyebrow-pink {
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--secondary-dark);
}

.is-style-eyebrow-inverted {
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--black);
}

.is-style-tag {
    font-size: var(--wp--preset--font-size--xxs);
    text-transform: uppercase;
    color: var(--wp--preset--color--secondary);
}

.is-style-cta-text {
    font-size: var(--wp--preset--font-size--l);
	line-height: 1.1;
}

strong {
    font-weight: 700;
}

.is-style-large-paragraph {
    font-size: var(--wp--preset--font-size--);
}

.is-style-number {
    font-size: var(--wp--preset--font-size--xxl);
}

/* Typography spacing
========================================================================== */

.wp-block-heading:last-child {
	margin-bottom: 0;
}

.is-style-eyebrow-blue + .wp-block-heading,
.is-style-eyebrow-pink + .wp-block-heading,
.is-style-eyebrow-inverted + .wp-block-heading{
	margin-top: 0;
}

/* Links
========================================================================== */

.is-style-navigation-link {
    margin-bottom: 0;
    padding: var(--wp--preset--spacing--xs) 0;
    border-bottom: 1px solid var(--wp--preset--color--primary);
}

.is-style-navigation-link > a {
    width: 100%;
    text-decoration: none;
    position: relative;
    display: flex;
    justify-content: space-between;
}

.is-style-navigation-link a:after {
    content: "";
    display: inline-block;
    background-image: url("../images/arrow-with-circle.svg");
    width: 25px;
    height: 25px;
    background-repeat: no-repeat;
}

.is-style-arrow-link {
    margin-bottom: 0;
    padding: 0;
    position: relative;
    display: flex;
    gap: var(--wp--preset--spacing--xxs);
    text-decoration: none;
    align-items: center;
}

.is-style-arrow-link:after {
    content: "";
    display: inline-block;
    background-image: url("../images/icon-arrow-right.svg");
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
}

.is-style-inverted-arrow-link {
    margin-bottom: 0;
    padding: 0;
    color: var(--wp--preset--color--white);
    position: relative;
    display: flex;
    gap: var(--wp--preset--spacing--xs);
    text-decoration: none;
}

.is-style-inverted-arrow-link:after {
    content: "";
    display: inline-block;
    background-image: url("../images/icon-arrow-right.svg");
    width: 25px;
    height: 25px;
    background-repeat: no-repeat;
    filter: invert(1) brightness(100);
}

/* Lists
========================================================================== */

ul.wp-block-list {
    list-style: none;
    margin-left: 0;
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--xxs);
}

ul.wp-block-list li {
    align-items: center;
    padding-left: var(--wp--preset--spacing--s);
    position: relative;;
}

ul.wp-block-list li:before {
    content: "";
    width: 8px;
    height: 8px;
    background-color: var(--wp--preset--color--primary);
	position: absolute;
    left: 0;
    top: 7px;
}

ol.wp-block-list {
  list-style: none;
  counter-reset: item;
	margin-left: 0;
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--xxs);
}

ol.wp-block-list li {
  counter-increment: item;
  position: relative;
  padding-left: 2.5rem;
}

ol.wp-block-list strong {
  display: block;
	margin-bottom: var(--wp--preset--spacing--tiny);
}

ol.wp-block-list li::before {
  content: counter(item);
  position: absolute;
  left: 0;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 4px;
  background: var(--wp--preset--color--black);
  color: var(--wp--preset--color--white);
  text-align: center;
  line-height: 1.5rem;
}



/* Buttons
========================================================================== */

.wp-block-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: var(--wp--preset--spacing--s);
    margin-top: var(--wp--preset--spacing--m);
}

.wp-block-buttons .wp-block-button__link {
    display: flex;
    align-items: center;
}

@media screen and (max-width: 510px) {
	.wp-block-buttons {
		gap: var(--wp--preset--spacing--xs);
		margin-top: var(--wp--preset--spacing--s);
	}
}

/* Inputs
========================================================================== */

/* Label */
label {
    font-size: var(--wp--preset--font-size--xxs);
}

/* Input fields */

input,
textarea,
select {
    border: 1px solid var(--wp--preset--color--secondary);
    border-radius: var(--wp--custom--border-radius--s);
}

/* Checkbox & radio button */

[type="radio"],
[type="checkbox"] {
    border: 1px solid var(--wp--preset--color--secondary);
    border-radius: 2px;
}

/* Focus and active statements */

/* Acceptance */

/* Submit */
[type="submit"] {
    margin-top: var(--wp--preset--spacing--s);
    width: fit-content;
    background-color: var(--wp--preset--color--accent-primary);
    border-radius: 30px;
    border-color: transparent;
    border-width: 1px;
    border-style: solid;
    color: var(--wp--preset--color--black);
    font-size: var(--wp--preset--font-size--xs);
    padding-top: 12px;
    padding-right: var(--wp--preset--spacing--s);
    padding-bottom: 12px;
    padding-left: var(--wp--preset--spacing--s);
}

/* Contact form 7
========================================================================== */

.is-style-contact-form .qt-container.has-background:has(.wpcf7) {
    padding: var(--wp--preset--spacing--l) var(--wp--preset--spacing--m);
}

.wpcf7-form {
    gap: var(--wp--preset--spacing--s);
}

.wpcf7-list-item-label {
    font-size: 13px;
}

.wpcf7-form-control-wrap {
    margin-top: 0.5em;
    gap: var(--wp--preset--spacing--tiny);
}

@media screen and (max-width: 768px) {
    .is-style-contact-form .grid {
        grid-template-columns: 1fr;
    }
}

@media screen and (max-width: 510px) {
    .is-style-contact-form .qt-container.has-background:has(.wpcf7) {
        padding: var(--wp--preset--spacing--l) var(--wp--preset--spacing--s);
    }
}

/* Media
========================================================================== */

/* Images */
.wp-block-image img {
    width: 100%;
}

.wp-block-image .aligncenter,
.wp-block-image .alignleft,
.wp-block-image .alignright,
.wp-block-image.aligncenter,
.wp-block-image.alignleft,
.wp-block-image.alignright {
    display: block;
}

/* Video */

/* Iframe & embedded */

/* Files */

/* ==========================================================================
Layout
========================================================================== */

/* Paddings and margins
========================================================================== */

.qt-section__inner.has-background {
	padding: var(--wp--preset--spacing--xl) var(--wp--preset--spacing--l);
    border-radius: var(--wp--custom--border-radius--s);
}

.qt-container.has-background {
    padding: var(--wp--preset--spacing--s);
    border-radius: var(--wp--custom--border-radius--s);
}

@media screen and (max-width: 510px) {
	.qt-section__inner.has-background {
		padding: var(--wp--preset--spacing--l) var(--wp--preset--spacing--s);
		border-radius: var(--wp--custom--border-radius--s);
	}
}

/* Max widths
========================================================================== */

/* Grids
========================================================================== */

.grid-col-4 .qt-container.is-horizontally-stretched,
.grid-col-3 .qt-container.is-horizontally-stretched {
    margin-bottom: var(--wp--style--block-gap);
}

.grid-col-1 {
    row-gap: calc(2 * var(--wp--style--block-gap));
}

.grid-col-2:not(.has-background) {
    grid-gap: calc(2 * var(--wp--style--block-gap));
}

.is-style-grid-33-66 .grid {
    grid-template-columns: 1fr 2fr;
}

.is-style-grid-66-33 .grid {
    grid-template-columns: 2fr 1fr;
}

.is-style-grid-66-33.has-background .grid,
.is-style-grid-33-66.has-background .grid {
    grid-gap: calc(4 * var(--wp--style--block-gap));
}

@media (max-width: 768px) {
    .grid-col-1 {
        grid-gap: calc(2 * var(--wp--style--block-gap));
    }
	
	.grid-col-4 .qt-container.is-horizontally-stretched,
	.grid-col-3 .qt-container.is-horizontally-stretched {
		margin-bottom: var(--wp--preset--spacing--xs);
	}

    .grid-col-2,
	.grid-col-2:not(.has-background){
        grid-gap: var(--wp--style--block-gap);
    }

    .is-style-grid-66-33.has-background .grid,
    .is-style-grid-33-66.has-background .grid {
        grid-gap: calc(2 * var(--wp--style--block-gap));
    }
}

@media (max-width: 610px) {
    .grid-col-1 {
        grid-gap: calc(1.5 * var(--wp--style--block-gap));
    }

    .is-style-grid-66-33 .grid,
    .is-style-grid-33-66 .grid {
        grid-template-columns: 1fr;
    }

    .is-style-grid-66-33.has-background .grid,
    .is-style-grid-33-66.has-background .grid {
        grid-gap: calc(1.5 * var(--wp--style--block-gap));
    }
	
	.is-style-grid-66-33 .qt-container:has(.wp-block-image),
	.is-style-grid-33-66 .qt-container:has(.wp-block-image){
		display: none;
	}
}

/* ==========================================================================
Announcement bar
========================================================================== */

/* ==========================================================================
Top bar
========================================================================== */

/* ==========================================================================
Header
========================================================================== */

header {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: 0 2px 4px rgb(0 0 0 / 5%);
}

.is-style-header-top {
    background-color: var(--wp--preset--color--neutral-3);
    border-bottom: 0;
    padding: 0 var(--wp--custom--section-padding--x);
}

.is-style-header-top .qt-container:has(.mega-menu:not(.mega-menu-mobile)) {
    justify-content: center;
}

.is-style-header-top .qt-section__inner {
    gap: calc(3 * var(--wp--style--block-gap));
}

.is-style-header-top .qt-container:has(.wp-block-buttons) {
    display: flex;
    justify-content: flex-end;
}

header .menu {
    grid-gap: 10px;
}

header .menu .menu-item a,
header .menu .menu-item span {
    font-weight: 500;
    font-size: var(--wp--preset--font-size--xs);
    padding: 5px 15px;
}

header .menu > .menu-item.menu-item-has-children > :is(a, span) {
    padding: 5px 5px 5px 15px;
}

header .menu > .menu-item > a:hover,
header .menu > .menu-item > span:hover,
header .menu > .menu-item.is-open > :is(a, span) {
    background-color: var(--wp--preset--color--teal);
    border-radius: 10px;
    opacity: 1;
}

@media (min-width: 1201px) {
    header .menu .menu-item > :is(a, span) + .sub-menu {
        top: 100%;
        box-shadow: none;
    }

    header .menu > .menu-item > :is(a, span) {
        display: inline-block;
        height: auto;
    }
	
	 header .menu > .menu-item > :is(a, span):hover {
        color: var(--wp--preset--color--primary);
    }

    header .menu > .menu-item > :is(a, span) img {
        vertical-align: middle;
    }

    .mega-menu .mega-menu-item-parent .chevron {
        margin-left: var(--wp--preset--spacing--xxs);
    }
}

@media (max-width: 670px) {
    .is-style-header-top .wp-block-site-logo img {
        max-width: 136px;
    }
}

/* Desktop menu
========================================================================== */

/* Site logo */

/* Header button */

/* Hamburger icon
========================================================================== */

/* User toolbar
========================================================================== */

@media (max-width: 1200px) {
    .qt-container:has(.hamburger) .wp-block-buttons {
        margin-right: var(--wp--preset--spacing--s);
    }
}

@media (max-width: 768px) {
    header .kontigo-login {
        display: none;
    }
}

/* ==========================================================================
Footer
========================================================================== */

.is-style-footer-top img {
    max-width: 320px;
}

.is-style-footer-top .qt-section__inner {
    grid-template-columns: 1fr auto auto;
    gap: var(--wp--preset--spacing--xxxl);
}

/* Footer Bottom */

.is-style-footer-bottom .qt-section__inner {
    border-top: 1px solid rgb(204 236 241 / 25%);
    padding-top: var(--wp--preset--spacing--l);
    grid-gap: var(--wp--style--block-gap);
}

.is-style-footer-bottom img {
    max-height: 56px;
}

@media screen and (max-width: 670px) {
    .is-style-footer-top .grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-gap: calc(2 * var(--wp--style--block-gap));
    }

    .is-style-footer-bottom .wp-block-list {
        justify-content: flex-start;
    }
	
	.is-style-footer-top img {
		max-width: 240px;
	}
}

@media screen and (max-width: 480px) {
    .is-style-footer-top .grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Navigation
========================================================================== */

.mega-menu-header-m,
.mega-menu-back {
    border-bottom: 0.5px solid var(--wp--preset--color--black-lighter);
}

.mega-menu-header-m span {
    display: none;
}

.mega-menu:not(.mega-menu-mobile)
    .menu
    > .mega-menu-item-parent:not(.mega-menu-item)
    > .sub-menu {
    padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--s);
    background-color: var(--wp--preset--color--neutral-2);
    border-radius: var(--wp--custom--border-radius--s);
}

.footer-heading,
.is-style-footer-heading {
    font-size: var(--wp--preset--font-size--xs);
    color: var(--wp--preset--color--secondary-light);
    margin-bottom: 1.5em;
    text-transform: uppercase;
}

.footer-menu .menu {
    display: block;
    line-height: 2.25;
    margin-top: 1em;
    color: var(--wp--preset--color--secondary-light);
}

.footer-menu .menu-item a {
    font-size: var(--wp--preset--font-size--xs);
    text-decoration: none;
}

.footer-menu .menu-item a:hover {
    text-decoration: underline;
    opacity: 1;
}

@media screen and (min-width: 1201px) {
	
	
    .mega-menu:not(.mega-menu-mobile) .mega-menu-item-parent:hover > .sub-menu,
	.mega-menu:not(.mega-menu-mobile) .mega-menu-item-parent.is-open > .sub-menu
	{
        display: flex;
        flex-wrap: wrap;
        gap: var(--wp--preset--spacing--xs);
        justify-content: space-between;
        max-width: var(--wp--custom--maxwidth--default);
        margin: 0 auto;
        background-color: var(--wp--preset--color--neutral);
        border-top: 1px solid rgba(0, 0, 0, 0.1);
		border-top-left-radius: 0;
		border-top-right-radius: 0;
        border-bottom-left-radius: var(--wp--custom--border-radius--s);
        border-bottom-right-radius: var(--wp--custom--border-radius--s);
        padding: var(--wp--preset--spacing--s)
            var(--wp--custom--section-padding--x);
    }

    header .menu .sub-menu > .menu-item:not(.menu-cta) :is(span, a) {
        font-size: var(--wp--preset--font-size--xxs);
        width: 100%;
        text-decoration: none;
		position: relative;
		display: flex;
		gap: var(--wp--preset--spacing--xxs);
		color: var(--wp--preset--color--primary-dark);
    }
	
	header .menu .sub-menu > .menu-item:not(.menu-cta) :is(span, a):after {
           content: "";
		display: inline-block;
		width: 18px;
		height: 18px;
		background-image: url("../../../q-theme/modules/mega-menu/images/chevron-down.svg");
		background-repeat: no-repeat;
		background-position: center;
		background-size: 20px 20px;
		background-color: var(--wp--preset--color--primary-light);
		border-radius: 999px;
		transform: rotate(-90deg);
    }
}

/* ==========================================================================
Utility classes
========================================================================== */

/* ==========================================================================
Components and modules
========================================================================== */

.social-links {
    display: flex;
    gap: var(--wp--preset--spacing--xs);
    margin-left: 0;
}

.social-links .social-links__icon {
    height: 24px;
    width: 24px;
}

/* Breadcrumbs
========================================================================== */

.qt-section.is-style-breadcrumbs {
    padding: var(--wp--preset--spacing--m) var(--wp--custom--section-padding--x);
}

.is-style-breadcrumbs p {
    font-size: var(--wp--preset--font-size--xxs);
    display: flex;
    gap: var(--wp--preset--spacing--xxs);
}

.is-style-breadcrumbs a,
.is-style-breadcrumbs span:not(.last) {
    opacity: 0.4;
}

@media screen and (max-width: 670px) {
	.qt-section.is-style-breadcrumbs {
    	display: none;
	}	
}

/* Pagination
========================================================================== */

/* Current, hover */
:is(.wp-block-query-pagination, .pagination) .page-numbers.current,
:is(.wp-block-query-pagination, .pagination) .page-numbers.current:hover {
    background-color: var(--wp--preset--color--black);
    color: var(--wp--preset--color--white);
}

:is(.wp-block-query-pagination, .pagination) .page-numbers:hover {
	background-color: var(--wp--preset--color--neutral);
    color: var(--wp--preset--color--black);
	border-color: var(--wp--preset--color--black);
}



.wp-block-query-pagination-previous:hover,
.wp-block-query-pagination-next:hover {
    border-color: var(--wp--preset--color--black);
}

/* Prev, next */
.pagination .page-numbers,
.wp-block-query-pagination .page-numbers {
    background-color: var(--wp--preset--color--neutral);
    border: 1px solid transparent;
    border-radius: 4px;
}

.pagination .page-numbers path {
    fill: var(--wp--preset--color--black);
}

.pagination .page-numbers:hover path {
    fill: var(--wp--preset--color--black);
}

.pagination .page-numbers:is(.prev, .next):hover {
    background-color: var(--wp--preset--color--neutral);
    color: var(--wp--preset--color--black);
	border-color: var(--wp--preset--color--black)
}

.wp-block-query-pagination .wp-block-query-pagination-previous,
.wp-block-query-pagination .wp-block-query-pagination-next,
.pagination .page-numbers.prev,
.pagination .page-numbers.next {
    background-color: var(--wp--preset--color--neutral);
    color: var(--wp--preset--color--black);
    border-radius: 4px;
}

/* Accordion
========================================================================== */

.qt-accordion .qt-section__inner {
    gap: 0;
}

.accordion-item {
    background-color: transparent;
	border: 0px;
    border-bottom: 1px solid var(--wp--preset--color--primary);
}

.accordion-item__content * {
    font-size: var(--wp--preset--font-size--xs);
}

.accordion-item__heading.wp-block-heading,
button[data-accordion="accordion-trigger"] {
    font-size: var(--wp--preset--font-size--xs);
    font-family: var(--wp--preset--font-family--paragraph);
    font-weight: 700;
}

button[data-accordion="accordion-trigger"],
.accordion-content__inner {
    padding-left: 0;
    padding-right: 0;
	color: var(--wp--preset--color--primary-dark);
}

.accordion-content__inner {
    padding-top: 0;
    font-weight: 500;
}

.accordion-item__icon {
    height: 25px;
    width: 25px;
    border-radius: 50px;
    background-color: var(--wp--preset--color--primary-dark);
    display: flex;
    align-items: center;
    justify-content: center;
}

.accordion-icon__inner::before,
.accordion-icon__inner::after {
    background-color: var(--wp--preset--color--primary-light);
}

/* Accordion content */

/* Accordion icon */

/* Tabs
========================================================================== */

/* Splide slider
========================================================================== */

.splide .splide__arrow {
    background-color: var(--wp--preset--color--dark-teal);
    border-radius: 10px;
}

.splide__arrow:hover:not(:disabled) {
    opacity: 0.6;
    background-color: var(--wp--preset--color--dark-teal);
}

.splide__track .splide__slide {
    margin: 0;
    padding: 0;
}

/* Slider header */

/* ==========================================================================
Styles for pages, sections, blocks and others.
========================================================================== */

/* Page: Search results 
========================================================================== */

/* Section: Hero
========================================================================== */

.is-style-hero {
    padding: var(--wp--preset--spacing--xxxl)
        var(--wp--custom--section-padding--x);
	margin-top: var(--wp--preset--spacing--m);
}

.is-style-hero .wp-block-cover {
    padding: 0;
    border-radius: var(--wp--custom--border-radius--s);
    height: 75vh;
    max-height: 800px;
	border: 8px solid var(--wp--preset--color--secondary);
	overflow: hidden;
}

.is-style-hero .wp-block-cover .qt-section__inner {
    padding: var(--wp--custom--section-padding--x);
}

@media screen and (max-width: 768px) {
    .is-style-hero {
        padding: 0 0 var(--wp--preset--spacing--xxxl) 0;
        margin-top: 0;
    }

    .is-style-hero .wp-block-cover {
        border-radius: 0;
		border: 0px solid transparent;
    }
}

/* Section: Subhero
========================================================================== */

.qt-section.is-style-subhero {
    padding-top: 0;
    padding-bottom: 0;
}

.is-style-subhero .qt-section__inner {
    padding: var(--wp--preset--spacing--xl)
        0;
    row-gap: var(--wp--preset--spacing--l);
}

.is-style-subhero.has-primary-dark-background-color .wp-block-image img,
.is-style-subhero.has-primary-light-background-color .wp-block-image img {
	border: 4px solid var(--wp--preset--color--primary);
}

.is-style-subhero.has-black-background-color .wp-block-image img {
	border: 4px solid var(--wp--preset--color--white);
}

.is-style-subhero .wp-block-image {
    height: 100%;
}

.is-style-subhero img {
    height: 100%;
    object-fit: cover;
}

@media screen and (max-width: 768px) {
	
    .is-style-subhero .qt-section__inner {
        grid-template-columns: 1fr;
    }
}

@media screen and (max-width: 510px) {
    .is-style-subhero .qt-section__inner {
        padding: var(--wp--preset--spacing--l) 0
            var(--wp--preset--spacing--l);
    }
}

/* Section: Stacked boxes
========================================================================== */

.is-style-text-column:first-child {
    padding-left: 0;
}

/* Section - KPI values
========================================================================== */
.is-style-kpi .grid:not(.grid.grid-col-1) {
    grid-gap: var(--wp--preset--spacing--l);
}

/* Section - Grid Styles
========================================================================== */

/* Section - Boxes with aspect ratio
========================================================================== */

[class*="is-style-boxes-"] .qt-container > a {
    display: flex;
    flex-direction: column;
    text-decoration: none;
}

[class*="is-style-boxes-"] .qt-container {
    padding: 0;
}
[class*="is-style-boxes-"] .qt-container > a {
    padding: var(--wp--preset--spacing--m);
}

[class*="is-style-boxes-"] p:last-of-type {
    margin-top: auto;
}

@media (max-width: 768px) {
    [class*="is-style-boxes-"] .grid-col-3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    [class*="is-style-boxes-"] .qt-container > a {
        aspect-ratio: 1/1 !important;
    }
}

@media (max-width: 670px) {
    [class*="is-style-boxes-"] .grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Boxes with portrait cards */
.is-style-boxes-portrait .qt-container > a {
    aspect-ratio: 2/3;
}

/* Boxes with landscape cards */
.is-style-boxes-landscape .qt-container > a {
    aspect-ratio: 16/9;
}

/* Boxes with square cards */
.is-style-boxes-square .qt-container > a {
    aspect-ratio: 1/1;
}

/* TEMP */
.is-style-boxes-portrait .qt-container > a,
.is-style-boxes-square .qt-container > a,
.is-style-boxes-landscape .qt-container > a {
    aspect-ratio: unset;
}

/* Service cards
========================================================================== */

@media screen and (max-width: 1218px) {
    .qt-section__inner.grid-col-4:has(.service-card) {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media screen and (max-width: 768px) {
    .qt-section__inner.grid:has(.service-card) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media screen and (max-width: 510px) {
    .qt-section__inner.grid:has(.service-card) {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
}

/* Container Styles
========================================================================== */

.is-style-image-column figure.alignright {
    display: flex;
    justify-content: flex-end;
}

.is-style-image-column figure.alignright img {
    width: auto;
}

.is-style-image-column .wp-block-video {
	aspect-ratio: 4/3;
	border-radius: 4px;
	overflow: hidden;
}

.is-style-image-column .wp-block-video video {
	object-fit: cover;
	height: 100%;
}

.is-style-text-column {
    padding: 0;
    place-self: center;
}

.is-style-flex-column .wp-block-paragraph {
	margin-top: var(--wp--preset--spacing--xs);
}

.is-style-flex-row {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: var(--wp--style--block-gap);
    align-items: flex-end;
}

.is-style-flex-column {
    display: flex;
    flex-direction: column;
    gap: var(--wp--style--block-gap);
}

.is-style-flex-column > * {
    margin-top: 0;
    margin-bottom: 0;
}

.is-style-flex-row > * {
    margin-top: 0;
    margin-bottom: 0;
}

.qt-container.is-style-align-left {
    margin-left: 0;
}

/* Section: Logos */

.qt-section.is-style-logos {
	padding-bottom: var(--wp--preset--spacing--m);
	padding-top: var(--wp--preset--spacing--m);
}

.is-style-logos figure {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}

.is-style-logos figure img {
    max-height: 48px;
    width: auto;
    object-fit: cover;
}

/* Container: Left Padding */

.is-style-padding-left {
    padding-left: var(--wp--custom--section-padding--x);
}

.is-style-padding-right {
    padding-right: var(--wp--custom--section-padding--x);
}

@media screen and (max-width: 980px) {
	.is-style-logos .qt-section__inner.grid-col-4 {
		grid-template-columns: repeat(4, minmax(0, 1fr))
	}
}

@media screen and (max-width: 768px) {
    .is-style-padding-left,
	.is-style-padding-right {
        padding: 0;
    }
}

@media screen and (max-width: 510px) {
	
	.qt-section.is-style-logos {
		padding-bottom: var(--wp--preset--spacing--s);
		padding-top: var(--wp--preset--spacing--s);
	}
	
	.is-style-logos figure img {
		max-height: 40px;
	}
	
	.is-style-flex-row {
    	align-items: center;
	}
}

/* Service Card Styles
========================================================================== */

.service-card {
    position: relative;
    padding: var(--wp--preset--spacing--s);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    aspect-ratio: 4/3;
    border-radius: var(--wp--custom--border-radius--s);
    overflow: hidden;
	border: 4px solid var(--wp--preset--color--secondary);
}

.service-card,
.service-card > * {
    text-decoration: none;
}

.service-card__image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

.service-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.service-card__image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.75), transparent);
    z-index: 1;
}

.service-card__content {
    position: relative;
}

.service-card__title {
    color: var(--wp--preset--color--white);
}

.service-card .is-style-inverted-arrow-link {
    gap: var(--wp--preset--spacing--xxs);
}

.service-card .is-style-inverted-arrow-link:after {
    height: 20px;
    width: 20px;
}

/* Page: Articles
========================================================================== */

.articles.grid,
.latest-articles.grid {
    grid-gap: var(--wp--style--block-gap);
}
/* Filter buttons */
.articles__filter-buttons {
    margin-bottom: calc(2 * var(--wp--style--block-gap));
    margin-top: 0;
    display: flex;
    place-self: center;
	justify-content: center;
}

.articles__filter-buttons .wp-block-button__link {
    border: 1px solid var(--wp--preset--color--accent-primary);
    background-color: var(--wp--preset--color--accent-primary);
	font-size: var(--wp--preset--font-size--xxs);
}

.articles__filter-buttons .wp-block-button__link:is(.active) {
    background-color: var(--wp--preset--color--black);
    color: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--black);
}

@media screen and (max-width: 768px) {
	.articles__filter-buttons {
    	margin-bottom: var(--wp--style--block-gap);
	}
}

/* Single: Article
========================================================================== */

/* Post meta */
.single .post-meta:has(.post-meta__categories) {
    margin-top: 0;
    margin-bottom: var(--wp--preset--spacing--xxs);
}

.single .post-meta:has(.post-meta__date) {
    margin-top: 0;
}

.single .post-meta__categories {
    display: flex;
    margin: 0;
	flex-wrap: wrap;
}

.single .post-meta__categories::before {
    display: none;
}

.single .post-meta__categories li:not(:last-child)::after {
    margin-left: var(--wp--preset--spacing--xxs);
    margin-right: var(--wp--preset--spacing--xxs);
    content: "/";
}

.single .post-meta__category .is-style-tag {
    text-decoration: none;
    font-weight: 500;
    color: var(--wp--preset--color--dark-teal);
}

.post-meta__category-link {
    text-decoration: none;
}

/* Featured image */
.single .wp-block-post-featured-image img {
    aspect-ratio: var(--wp--custom--aspect-ratio--landscape-wide);
    border-radius: 20px;
}

/* Cases
========================================================================== */

/* Case Singles */

.case-facts {
	padding-top: var(--wp--preset--spacing--xs);
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--s);
}

.case-facts__label {
	text-transform: uppercase;
	font-size: 13px;
	margin-bottom: var(--wp--preset--spacing--xxs);
	opacity: 0.8;
}

/* Case Cards */

.card--case {
    text-decoration: none;
}

.card--case .card__image {
    aspect-ratio: var(--wp--custom--aspect-ratio--landscape);
    border-radius: var(--wp--custom--border-radius--s);
    overflow: hidden;
	position: relative;
}
/*
.card--case .card__image:after{
	position: absolute;
	content: "";
	width: 32px;
	height: 32px;
	background-image: url("../images/icon-arrow-right.svg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 24px 24px;
	background-color: var(--wp--preset--color--secondary-light);
	border-radius: 999px;
	top: var(--wp--preset--spacing--s);
	right: var(--wp--preset--spacing--s);
}*/

.card--case .card__image img {
    height: 100%;
    object-fit: cover;
	border: 4px solid var(--wp--preset--color--secondary);
}

.card--case .card__title {
    margin-bottom: 0;
}

.card--case .card__content {
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--xs);
}

.card--case .card__excerpt {
    margin-bottom: 0;
}

/* Case Video Block
========================================================================== */

.qt-section.section-case-video-block.is-style-hero.container-default {
	margin-top: 0;
	padding-top: 0;
	padding-bottom: var(--wp--preset--spacing--l);
}

.section-case-video-block .case-video-block {
	border: 8px solid var(--wp--preset--color--secondary-light);
	height: 60vh;
}

.case-video-block video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: var(--wp--custom--aspect-ratio--landscape);
}

@media screen and (max-width: 768px) {
	.section-case-video-block .case-video-block {
		border: none;
	}
	
	.qt-section.section-case-video-block.is-style-hero.container-default {
		padding-bottom: var(--wp--preset--spacing--m);
	}
}

/* Case Gallery Slider 
========================================================================== */

.case-gallery-slider.is-style-thumbnails {
    margin-top: var(--wp--preset--spacing--xs);
}

.case-gallery-slider.is-style-main-image .splide__arrows {
    display: flex;
    flex-direction: row;
    position: absolute;
    top: var(--wp--preset--spacing--s);
    left: var(--wp--preset--spacing--s);
    gap: var(--wp--preset--spacing--xxs);
}

.case-gallery-slider.is-style-main-image .splide__arrow {
    border-radius: 50px;
    background-color: var(--wp--preset--color--secondary-light);
    position: relative;
    top: 0%;
    transform: translateY(0%);
    height: 40px;
    width: 40px;
    filter: none;
}

.case-gallery-slider.is-style-main-image .splide__arrow svg {
    height: 1.25rem;
    width: 1.25rem;
}

.case-gallery-slider.is-style-thumbnails .splide__slide.is-active {
    opacity: 0.6;
    border: 1px solid var(--wp--preset--color--black-20);
}

.case-gallery-image {
    aspect-ratio: var(--wp--custom--aspect-ratio--landscape);
    display: grid;
    place-items: center;
    border-radius: var(--wp--custom--border-radius--s);
    overflow: hidden;
}

.case-gallery-image img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    border-radius: var(--wp--custom--border-radius--s);
}

@media screen and (hover: hover) {
    .case-gallery-slider.is-style-main-image .splide__arrow:hover {
        opacity: 0.6;
    }
}

@media screen and (max-width: 510px) {
    .case-gallery-slider.is-style-thumbnails {
        display: none;
    }
}

/* Single: Publication
========================================================================== */

/* Section: Employees
========================================================================== */

.card--employee {
    display: grid;
    grid-template-columns: 1fr 2fr;
    grid-template-rows: auto 1fr;
    grid-gap: calc(1.5 * var(--wp--style--block-gap));
    align-items: flex-start;
}

.card--employee .card__image-img {
    aspect-ratio: var(--wp--custom--aspect-ratio--square);
}

.card--employee .card__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

.card--employee .card__content [class*="card__"] {
    margin-bottom: 0;
}

.card--employee .is-style-tag {
    background-color: transparent;
    border: 1.5px solid var(--wp--preset--color--dark-teal);
    color: inherit;
}

.card--employee .card__name {
    margin-bottom: 0.5em !important;
    font-weight: 500;
}

.card--employee .card__phone::before {
    content: "T:";
    font-weight: 600;
}

.card--employee .card__email::before {
    content: "E:";
    font-weight: 600;
}

.card--employee .card__description {
    font-size: var(--wp--preset--font-size--xs);
    grid-column: 1/-1;
}

@media screen and (max-width: 670px) {
    .card--employee {
        grid-gap: var(--wp--style--block-gap);
    }
}

/* Section: Testimonial slider
========================================================================== */

.testimonials *::-webkit-scrollbar {
    display: none;
}

.testimonials {
    padding-right: 0;
    -ms-overflow-style: none;
    scrollbar-width: none;
    overflow-x: hidden;
}

.testimonials .qt-section__inner {
    display: grid;
    grid-gap: var(--wp--style--block-gap) 0;
    max-width: none;
    grid-template-columns:
        1fr calc(
            var(--wp--custom--maxwidth--default) + var(--wp--preset--spacing--m)
        )
        1fr;
}

.testimonials .qt-container {
    grid-column: 2 / -1;
    position: relative;
    left: var(--wp--preset--spacing--s);
}

.slider-testimonials {
    grid-column: 2 / -1;
    grid-gap: 0;
    left: calc(-1 * var(--wp--preset--spacing--s));
    /* width: calc(100% + var(--wp--preset--spacing--s)); */
    position: relative;
}

.slider-testimonials .splide__list {
    display: flex;
    gap: 0;
}

.slider-testimonials .splide__arrows {
    width: 100px;
    position: relative;
    left: var(--wp--preset--spacing--2);
    top: unset;
    margin-top: calc(3 * var(--wp--style--block-gap));
}

.slider-testimonials .splide__arrow--prev {
    left: 0;
}

@media (max-width: 1104px) {
    .testimonials .qt-section__inner {
        grid-template-columns: minmax(0, 1fr);
    }

    .testimonials .qt-container {
        grid-column: 1;
    }
}

/* Testimonial card */
.card--testimonial {
    padding: var(--wp--preset--spacing--m);
    border-radius: 20px;
    display: grid;
    grid-template-columns: 1fr 3fr;
    grid-gap: var(--wp--preset--spacing--m) var(--wp--preset--spacing--l);
}

.card--testimonial .is-style-tag {
    margin-bottom: 0;
}

.card--testimonial .card__content {
    grid-column: 2/3;
}

.card--testimonial .card__author {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: var(--wp--preset--spacing--m);
}

.card--testimonial .card__author-name {
    font-weight: 500;
    color: inherit;
}

.card--testimonial .card__author-subheadline {
    opacity: 0.6;
}

.card--testimonial .card__content {
    font-size: var(--wp--preset--font-size--xs);
}

.card--testimonial .card__quotatation {
    padding: var(--wp--preset--spacing--m);
}

@media (max-width: 670px) {
    .card--testimonial {
        grid-template-columns: 1fr;
    }

    .card--testimonial .card__quotatation {
        padding: var(--wp--preset--spacing--s) 0;
    }

    .card--testimonial .card__quotatation img {
        width: 45px;
    }

    .card--testimonial .card__author,
    .card--testimonial .card__content {
        grid-column: 1/-1;
    }

    .card--testimonial .is-style-tag {
        margin-bottom: 0;
    }
}

/* Testimonial card - Odd */
.splide__slide:nth-child(odd) .card--testimonial {
    background-color: var(--wp--preset--color--teal);
}

.splide__slide:nth-child(odd) .card--testimonial img {
    filter: brightness(0) saturate(100%) invert(13%) sepia(62%) saturate(514%)
        hue-rotate(141deg) brightness(90%) contrast(103%);
}

.splide__slide:nth-child(odd) .card--testimonial .is-style-tag {
    background-color: var(--wp--preset--color--dark-teal);
    color: var(--wp--preset--color--teal);
}

.splide__slide:nth-child(odd) .card--testimonial .card__author,
.splide__slide:nth-child(odd) .card--testimonial .card__content {
    color: var(--wp--preset--color--dark-teal);
}

.splide__slide:nth-child(odd) .card--testimonial .card__author-subheadline {
    color: var(--wp--preset--color--dark-teal);
}

/* Testimonial card - Even */
.splide__slide:nth-child(even) .card--testimonial {
    background-color: var(--wp--preset--color--dark-teal);
}
.splide__slide:nth-child(even) .card--testimonial img {
    filter: brightness(0) saturate(100%) invert(94%) sepia(8%) saturate(571%)
        hue-rotate(142deg) brightness(97%) contrast(95%);
}

.splide__slide:nth-child(even) .card--testimonial .is-style-tag {
    color: var(--wp--preset--color--dark-teal);
}

.splide__slide:nth-child(even) .card--testimonial .card__author,
.splide__slide:nth-child(even) .card--testimonial .card__content {
    color: var(--wp--preset--color--teal);
}

.splide__slide:nth-child(even) .card--testimonial .card__author-subheadline {
    color: var(--wp--preset--color--teal);
}

/* Section: Feature slider
========================================================================== */

.slider-features {
    display: grid;
    grid-template-columns: 2fr 10fr;
    grid-gap: calc(2 * var(--wp--style--block-gap));
    align-items: center;
    margin-right: calc(-1 * var(--wp--preset--spacing--m));
}

.slider-features .splide__track {
    grid-column: 2 / 3;
}

.slider-features .splide__pagination {
    grid-area: 1 / 1 / -1 / 2;
    position: relative;
    padding: 0;

    flex-direction: column;
    gap: var(--wp--style--block-gap);
    align-items: flex-start;
    justify-content: center;
}

/* Slider pagination */
.slider-features .splide__pagination__page {
    margin: 0;
    background: none;
    width: auto;
    height: auto;
    transform: none;
    color: var(--wp--preset--color--teal);
    font-weight: 500;
    text-align: left;
    line-height: 1.5;
    border-radius: 0;
    transform: none;
    opacity: 0.4;
    transition: all 150ms linear;
}

.slider-features .splide__pagination__page:hover,
.slider-features .splide__pagination__page.is-active {
    opacity: 1;
}

/* Feature card */
.card--feature {
    display: grid;
    grid-template-columns: 4fr 5fr;
    grid-gap: calc(2 * var(--wp--style--block-gap));
    align-items: center;
}

.card--feature .card__image-img {
    border-radius: 20px;
    aspect-ratio: var(--wp--custom--aspect-ratio--square);
    object-fit: cover;
}

.card--feature h3.card__content-heading {
    color: var(--wp--preset--color--teal);
    font-size: var(--wp--preset--font-size--l);
}

.card--feature .card__content-text {
    font-size: var(--wp--preset--font-size--xs);
}

.card--feature .card__content-text ul {
    list-style: initial;
}

@media (max-width: 768px) {
    .slider-features {
        display: flex;
    }

    .card--feature {
        display: flex;
        flex-direction: column;
        gap: var(--wp--style--block-gap);
    }
}

/* Section: Image gallery with lightbox
========================================================================== */

/* Section: FAQ
========================================================================== */

.qt-accordion .accordion-item__heading .wp-block-heading {
    font-size: var(--wp--preset--font-size--m);
}

/* TEMP */
.is-style-boxes-portrait .qt-container > a,
.is-style-boxes-square .qt-container > a,
.is-style-boxes-landscape .qt-container > a {
    aspect-ratio: unset;
}

.header-lang-switcher {
    display: none !important;
}

main {
    margin-top: var(--wp--custom--header-height--total);
}
