:root {
    --main: #232428;
    --accent: #1b3764;
    --accent-hover: #2c50c2;

    --bg-gray: #e9e9e9;

    --text-light: #fff;
    --text-dark: #212121;
}

/* GENERAL */

a {
    color: var(--accent);
}

a:hover {
    color: var(--accent-hover);
}

.btn-check:focus + .btn-primary,
.btn-primary:focus,
.btn-dark:focus,
.btn-primary:hover {
    background-color: var(--accent-hover) !important;
    border-color: var(--main) !important;
    color: var(--text-light) !important;
}

.btn {
    background-color: var(--accent);
    color: var(--text-light);
    border: none;
    transition: all 0.25s;
}

.btn-light {
    background-color: var(--accent);
    color: var(--text-light) !important;
    border: none;
}

.btn-cta {
    background-color: var(--text-light);
    color: var(--text-dark);
}

.btn-cta:hover {
    background-color: #e9e9e9 !important;
}

.btn:hover {
    background-color: var(--accent-hover);
}

.btn-light:hover {
    background-color: var(--accent-hover);
}

.btn-icon {
    background-color: var(--accent);
}

.btn-icon .icon,
.btn-icon svg {
    filter: invert(99%) sepia(1%) saturate(2%) hue-rotate(197deg) brightness(116%) contrast(101%) !important;
}

.section {
    background-position: initial;
}

.media-element-icon .icon {
    filter: invert(34%) sepia(57%) saturate(1902%) hue-rotate(209deg) brightness(93%) contrast(105%);
}

#scroll-top-button:active,
#scroll-top-button:focus,
#scroll-top-button:hover {
    background-color: var(--accent-hover);
}

/* Fixes */

.megamenu-two + .mega-menu > .mega-menu__layout {
    --megamenu-columns: 2;
}

/* TERMS & CONDITIONS + PRIVACY POLICY PAGES */

.pane h1,
.pane h2 {
    margin-bottom: 1.5rem !important;
}

/* FAQ PAGE */

.faq {
    max-width: 960px !important;
    margin: 0 auto;
}

.accordion {
    display: grid;
    row-gap: 1rem;
}

.accordion-title {
    position: relative;
    width: 100%;
    padding: 1rem 3rem 1rem 1.16rem;
    background-color: #fff;
    color: #222;
    border: 2px solid var(--accent);
    border-radius: 5px;
    text-align: left;
    cursor: pointer;
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
}

.accordion-title.active {
    background: #c0c0c0;
    color: #222;
    border: none;
}

.accordion-title.active .accordion-icon::after {
    background-color: #e6e6e6;
}

.accordion-title:not(.active):hover {
    background-color: var(--accent-hover);
}

.accordion-content {
    padding-inline: 1rem;
}

.accordion-content::before {
    content: "";
    width: 100%;
    height: 1rem;
    display: block;
}

.accordion-icon::before,
.accordion-icon::after {
    content: "";
    position: absolute;
    width: 1em;
    height: 0.16em;
    top: 50%;
    right: 1.16rem;
    background-color: var(--accent);
    transition: 0.3s ease-in-out all;
    border-radius: 0.03em;
}

.accordion-icon::after {
    transform: rotate(90deg);
}

.accordion-title.active .accordion-icon::after {
    transform: rotate(180deg);
}

.accordion-title.active .accordion-icon::before {
    transform: rotate(90deg) scale(0);
}

/*IMPLEMENTATION*/

@media (max-width: 500px) {
    .site-header__secondary {
        height: calc((2 * var(--header-secondary-height)) + 1rem);
    }
}

.site-header__secondary__info,
.site-header__secondary__prices {
    justify-self: center;
}

/*.site-header__secondary .mega-menu,*/
/*.sub-menu {*/
/*    background-color: var(--main);*/
/*    font-weight: 500;*/
/*}*/

.site-header__main__actions::before {
    content: none;
}

.slide-menu .mega-menu,
.slide-menu .sub-menu {
    background-color: var(--accent);
}

.slide-menu .mega-menu .mega-menu__column {
    color: var(--accent);
}

.mega-menu__column__title a {
    color: var(--accent);
}

.mega-menu__column__title a:hover {
    color: var(--accent-hover);
}

.mega-menu__column__action {
    display: none;
}

.mobile-menu__header__close {
    color: var(--accent);
}

.hero-carousel .swiper-buttons .swiper-arrow.swiper-arrow {
    background-color: rgba(0, 0, 0, 0.7);
    padding: 0.5em;
    border-radius: 10px;
}

/*HEADER+FOOTER CUSTOMIZATION*/

.list-menu a {
    font-size: 14px;
}

.site-footer__primary__menus h2 {
    color: var(--text-light);
    font-size: 1.25rem !important;
}

.site-footer__primary__menus .menu-item > a {
    color: white;
    font-size: 16px;
}

.site-header .site-header__divider {
    opacity: 0;
    display: none;
}

@media (min-width: 1200px) {
    .site-header__main {
        display: grid;
        height: calc(2.5 * var(--header-main-height));
        grid-template-columns: 30% 40% 30%;
        grid-template-rows: auto auto;
        height: unset;
    }

    .site-header__main__logo {
        grid-column: 1/2;
        grid-row: 1/2;
    }

    .site-header__main__actions {
        grid-column: 3/4;
        grid-row: 1/2;
    }

    .site-header__main__menu {
        border-top: 1px solid var(--accent);
        grid-column: 1 / 4;
        grid-row: 2 / 3;
    }

    .primary-menu > .menu-item > a {
        padding: calc((var(--header-main-height) - 2.25em) * 0.5) 0;
    }
}

/*FOOTER*/

.site-footer__primary {
    padding-block-end: 2.5rem;
}

.site-footer__primary__menus h2 {
    font-weight: 600;
}

.site-footer__primary__about .link-logo,
.mobile-menu__header__logo {
    max-width: unset;
    width: 80%;
}

.site-footer__primary__about .link-logo > img {
    max-width: unset;
    width: 80%;
}

.site-footer__primary__about .text-formatted {
    max-width: unset;
    width: 80%;
}

@media (max-width: 1199.98px) {
    .site-footer__primary__about .link-logo {
        max-width: unset;
        width: 80%;
    }
}

/*GENERIC ACCENT COLORS*/

.bubble.-primary,
.cart__header__title .bubble {
    background-color: var(--accent);
    color: var(--text-light);
}

.primary-menu > .menu-item > a::after {
    border-color: var(--accent);
}

a {
    color: var(--accent);
}

.link,
.text-formatted a {
    border-color: var(--accent);
}

:is(.link, .text-formatted a):is(:hover, :focus) {
    color: var(--accent-hover);
}

.list-menu a:hover {
    color: var(--accent-hover);
}

a:hover {
    color: var(--accent-hover);
}

.hamburger-inner,
.hamburger-inner:after,
.hamburger-inner:before {
    background-color: var(--accent);
}

input[type="text"]:focus,
input[type="text"]:active,
input[type="date"]:focus,
input[type="date"]:active,
input[type="datetime-local"]:focus,
input[type="datetime-local"]:active,
input[type="email"]:focus,
input[type="email"]:active,
input[type="month"]:focus,
input[type="month"]:active,
input[type="number"]:focus,
input[type="number"]:active,
input[type="password"]:focus,
input[type="password"]:active,
input[type="search"]:focus,
input[type="search"]:active,
input[type="tel"]:focus,
input[type="tel"]:active,
input[type="time"]:focus,
input[type="time"]:active,
input[type="url"]:focus,
input[type="url"]:active,
input[type="week"]:focus,
input[type="week"]:active,
textarea:focus,
textarea:active,
select:focus,
.sort-widget__button:focus,
select:active,
.sort-widget__button:active {
    outline: none;
    border-color: var(--accent);
}

.pagination__item.-is-active .pagination__link {
    background-color: var(--accent);
    border-color: var(--accent);
}

.social-icon {
    background-color: var(--accent);
}

/*LOGOS*/ /* //Customize logo size  */

.site-header__main__logo .link-logo > img {
    width: 80px;
    height: 80px;
}


@media (min-width: 420px) {
    .site-header__main__logo .link-logo > img {
        width: 90px;
        height: 90px
    }
}

@media (min-width: 575.99px) {
    .site-header__main__logo .link-logo > img {
        width: 100px;
        height: 100px;
    }
}

@media (min-width: 1199.98px) {
    .site-header__main__logo .link-logo > img {
        width: 160px;
        height: 120px;
    }
}

/*SPOT PRICES colors */
.site-header > .container:first-child {
    display: block;
    padding-inline: var(--spacing-lg) !important;
}

@media (min-width: 1500px) {
    .site-header .spot-prices {
        font-size: 1.1rem;
    }
}

/*CONTACT US*/
.contacts__info__list h3 {
    color: var(--accent);
}

/*CHECKOUT*/
.checkout__panel__header__title .bubble {
    background-color: var(--accent);
}

.radio-choose:has(input:checked),
.card-saved-data.-is-selected {
    border-color: var(--accent);
}

input[type="checkbox"]:checked,
input[type="radio"]:checked {
    background-color: var(--accent);
    border-color: var(--accent);
}

/*Static Pages*/

.article.-no-sidebar {
    display: block;
}

.article.-no-sidebar .article__content {
    margin-left: auto;
    margin-right: auto;
    max-width: 1020px;
}

/*Utilities*/
.img-fluid {
    max-width: 100%;
    object-fit: cover;
    display: block;
}

.text-primary {
    color: var(--accent) !important;
}

/* HOME */
/* Certifications */

.certifications-grid {
    --columns: 2;
}

@media (min-width: 576px) {
    .certifications-grid {
        --columns: 3;
    }
}

@media (min-width: 768px) {
    .certifications-grid {
        --columns: 5;
    }
}

@media (min-width: 992px) {
    .certifications-grid {
        --columns: 7;
    }
}
