@font-face {
    font-family: 'MontserratZ';
    src: url('../assets/fonts/MontserratZ-Thin.woff2') format('woff2');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'MontserratZ';
    src: url('../assets/fonts/MontserratZ-ExtraLight.woff2') format('woff2');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'MontserratZ';
    src: url('../assets/fonts/MontserratZ-Light.woff2') format('woff2');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'MontserratZ';
    src: url('../assets/fonts/MontserratZ-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'MontserratZ';
    src: url('../assets/fonts/MontserratZ-Medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'MontserratZ';
    src: url('../assets/fonts/MontserratZ-SemiBold.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'MontserratZ';
    src: url('../assets/fonts/MontserratZ-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'MontserratZ';
    src: url('../assets/fonts/MontserratZ-ExtraBold.woff2') format('woff2');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'MontserratZ';
    src: url('../assets/fonts/MontserratZ-Black.woff2') format('woff2');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

:root {
    --primaryfont: "MontserratZ", sans-serif;
    --accentfont: "MontserratZ", sans-serif;
}


/* ============================= GLOBAL ================================== */

html,
b,
p,
span,
li,
a,
table,
td,
tr,
input,
div {
    font-family: var(--primaryfont) !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--primaryfont) !important;
}

body {
    color: var(--headcol) !important;
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: 200px;
}

@media (max-width: 991.98px) {
    html {
        scroll-padding-top: 5.5rem;
    }
}

#wpadminbar .ab-icon,
#wpadminbar .ab-item:before,
#wpadminbar>#wp-toolbar>#wp-admin-bar-root-default .ab-icon,
.wp-admin-bar-arrow {
    font: normal 20px/1 dashicons !important;
}

::-moz-selection {
    /* Code for Firefox */
    color: var(--primcol);
    background: var(--thirdcol);
}

::selection {
    color: var(--primcol);
    background: var(--thirdcol);
}

::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.3);
    border-radius: 10px;
    background-color: var(--bgcol);
}

::-webkit-scrollbar {
    width: 6px;
    height: 6px;
    background-color: var(--bgcol);
}

::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: var(--seccol);
}

a {
    color: var(--linkcol) !important;
    text-decoration: none !important;
    transition: 0.3s ease all;
    font-weight: 500;
}

a:hover {
    color: var(--seccol) !important;
    text-decoration: none;
    transition: 0.3s ease all;
}

.sr-only-focusable {
    position: absolute;
    left: -9999px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    white-space: nowrap;
}

.sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    clip: auto;
    overflow: visible;
    margin: 1rem;
    padding: 0.5rem 1rem;
    background-color: #000;
    color: #fff;
    z-index: 1000;
    display: inline-block;
    text-decoration: none;
    font-weight: bold;
    border-radius: 4px;
}

a.sr-only-focusable {
    background: white !important;
    color: black !important;
}

.hideThis {
    display: none;
}

p,
section ul li {
    color: var(--parcol) !important;
}

blockquote {
    position: relative;
    padding: 0 2.5em !important;
    margin: 0 !important;
}

blockquote::before {
    content: "";
    background-image: url(../assets/img/quote-before.svg);
    background-size: 30px 30px;
    display: inline-block;
    width: 30px;
    height: 30px;
    position: absolute;
    left: 0;
    top: 0;
}

blockquote::after {
    content: "";
    background-image: url(../assets/img/quote-after.svg);
    background-size: 30px 30px;
    display: inline-block;
    width: 30px;
    height: 30px;
    position: absolute;
    right: 0;
    bottom: 0;
}

span.my-highlight.laurel_branches {
    display: block;
    position: relative;
    padding: 5em 0 5em 0 !important;
    width: 100%;
    text-align: center;
    min-height: 180px;
}

/* .laurel_branches::before {
    content: "";
    background-image: url(../assets/img/specialquote-before.svg);
    background-size: 100%;
    background-repeat: no-repeat;
    display: inline-block;
    width: 100%;
    max-width: 50px;
    height: 100%;
    position: absolute;
    left: 0;
    top: 1.5em;
    margin: auto;
} */

.laurel_branches::after {
    content: "";
    background-image: url(../assets/img/awardafter.svg);
    background-size: 100%;
    background-repeat: no-repeat;
    display: inline-block;
    width: 100%;
    max-width: 120px;
    height: 100%;
    position: absolute;
    right: 0;
    left: 0;
    bottom: -9em;
    margin: auto;
}

/* ============================= BASIC HEADING STYLES ================================== */

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--headcol) !important;
    font-weight: bold !important;
}

/* Desktop */

h1,
.h1 {
    font-size: 2.25rem !important;
    line-height: 1.2 !important;
}

h2,
.h2 {
    font-size: 2rem !important;
    line-height: 1.3 !important;
}

h3,
.h3 {
    font-size: 1.75rem !important;
    line-height: 1.4 !important;
}

h4,
.h4 {
    font-size: 1.5rem !important;
    line-height: 1.4 !important;
}

h5,
.h5 {
    font-size: 1.25rem !important;
    line-height: 1.5 !important;
}

h6,
.h6 {
    font-size: 1rem !important;
    line-height: 1.5 !important;
}

/* Tablets */

@media (max-width: 1024px) {

    h1,
    .h1 {
        font-size: 2.5rem !important;
    }

    h2,
    .h2 {
        font-size: 2.25rem !important;
    }

    h3,
    .h3 {
        font-size: 1.875rem !important;
    }

    h4,
    .h4 {
        font-size: 1.625rem !important;
    }

    h5,
    .h5 {
        font-size: 1.375rem !important;
    }

    h6,
    .h6 {
        font-size: 1.125rem !important;
    }
}

/* Mobile */

@media (max-width: 768px) {

    h1,
    .h1 {
        font-size: 2rem !important;
    }

    h2,
    .h2 {
        font-size: 1.75rem !important;
    }

    h3,
    .h3 {
        font-size: 1.5rem !important;
    }

    h4,
    .h4 {
        font-size: 1.25rem !important;
    }

    h5,
    .h5 {
        font-size: 1rem !important;
    }

    h6,
    .h6 {
        font-size: 0.875rem !important;
    }
}

/* ============================= SOCIAL ICONS ================================== */

.social a svg {
    width: 30px;
    height: 30px;
}

.social {
    display: flex;
    align-items: center;
}

.social a {
    text-decoration: none;
    margin-left: 2px;
    margin-right: 2px;
}

.social a svg path,
.headericon .icon svg path {
    transition: 0.3s ease all;
    fill: var(--svgcol);
}

.social a:hover svg path,
.headericon .icon:hover svg path {
    fill: var(--linkcol);
}

/* Header Six — CSS variables: --h6-menu-main, --h6-menu-hover, --h6-submenu-bg, --h6-contact-link-main, --h6-contact-link-hover (+ social --cs-social-*) */

/* Μενού: κύριο + hover (αντίθεση με .header-row .nav-menu … !important) */
.headerSix .header-row .nav-menu a,
.headerSix .header-row .nav-menu .menu-item>a,
.headerSix .header-row .nav-menu .menu-item div>a,
.headerSix .header-row .nav-menu .opener>a,
.headerSix .header-row .nav-menu button.clean-slate-nav-menu-control,
.headerSix .header-row .nav-menu .menu-item>button.clean-slate-nav-menu-control,
.headerSix .header-row .nav-menu .menu-item div>button.clean-slate-nav-menu-control,
.headerSix .header-row .nav-menu .opener>button.clean-slate-nav-menu-control,
.headerSix .top-row-menu .nav-menu a,
.headerSix .top-row-menu .nav-menu .opener>a,
.headerSix .top-row-menu .nav-menu button.clean-slate-nav-menu-control,
.headerSix .top-row-menu .nav-menu .opener>button.clean-slate-nav-menu-control,
.headericon.headermobmenu button.header-mobile-toggle line {
    color: var(--h6-menu-main) !important;
}

.headerSix .header-row .nav-menu a:hover,
.headerSix .header-row .nav-menu .menu-item div>a:hover,
.headerSix .header-row .nav-menu .opener>a:hover,
.headerSix .header-row .nav-menu li:hover>a,
.headerSix .header-row .nav-menu .active>a,
.headerSix .header-row .nav-menu button.clean-slate-nav-menu-control:hover,
.headerSix .header-row .nav-menu .menu-item div>button.clean-slate-nav-menu-control:hover,
.headerSix .header-row .nav-menu .opener>button.clean-slate-nav-menu-control:hover,
.headerSix .header-row .nav-menu li:hover>button.clean-slate-nav-menu-control,
.headerSix .header-row .nav-menu .active>button.clean-slate-nav-menu-control,
.headerSix .top-row-menu .nav-menu a:hover,
.headerSix .top-row-menu .nav-menu .opener>a:hover,
.headerSix .top-row-menu .nav-menu button.clean-slate-nav-menu-control:hover,
.headerSix .top-row-menu .nav-menu .opener>button.clean-slate-nav-menu-control:hover {
    color: var(--h6-menu-hover) !important;
}

.headerSix .header-row .nav-menu .drop-down ul,
.headerSix .header-row .nav-menu .drop-down .drop-down ul {
    background-color: var(--h6-submenu-bg) !important;
}

.headerSix .header-row .nav-menu .drop-down ul a,
.headerSix .header-row .nav-menu .drop-down .drop-down ul a,
.headerSix .header-row .nav-menu .drop-down ul button.clean-slate-nav-menu-control,
.headerSix .header-row .nav-menu .drop-down .drop-down ul button.clean-slate-nav-menu-control {
    color: var(--h6-menu-main) !important;
}

.headerSix .header-row .nav-menu .drop-down ul a:hover,
.headerSix .header-row .nav-menu .drop-down ul .active>a,
.headerSix .header-row .nav-menu .drop-down ul li:hover>a,
.headerSix .header-row .nav-menu .drop-down .drop-down ul a:hover,
.headerSix .header-row .nav-menu .drop-down ul button.clean-slate-nav-menu-control:hover,
.headerSix .header-row .nav-menu .drop-down ul .active>button.clean-slate-nav-menu-control,
.headerSix .header-row .nav-menu .drop-down ul li:hover>button.clean-slate-nav-menu-control,
.headerSix .header-row .nav-menu .drop-down .drop-down ul button.clean-slate-nav-menu-control:hover {
    color: var(--h6-menu-hover) !important;
}

.headerSix .header-row .nav-menu>ul>li.drop-down .subArrow:before,
.headerSix .header-row .nav-menu>ul>li.drop-down .subArrow:after {
    background: var(--h6-menu-main) !important;
}

/* Offcanvas / mobile menu */
.headerSix-offcanvas .nav-menu a,
.headerSix-offcanvas .nav-menu .opener>a,
.headerSix-offcanvas .nav-menu button.clean-slate-nav-menu-control,
.headerSix-offcanvas .nav-menu .opener>button.clean-slate-nav-menu-control,
.headerSix-offcanvas .mobile-nav a,
.headerSix-offcanvas .mobile-nav .opener>a,
.headerSix-offcanvas .mobile-nav button.clean-slate-nav-menu-control,
.headerSix-offcanvas .mobile-nav .opener>button.clean-slate-nav-menu-control {
    color: var(--h6-menu-main) !important;
}

.headerSix-offcanvas .nav-menu a:hover,
.headerSix-offcanvas .nav-menu .opener>a:hover,
.headerSix-offcanvas .nav-menu button.clean-slate-nav-menu-control:hover,
.headerSix-offcanvas .nav-menu .opener>button.clean-slate-nav-menu-control:hover,
.headerSix-offcanvas .mobile-nav a:hover,
.headerSix-offcanvas .mobile-nav .opener>a:hover,
.headerSix-offcanvas .mobile-nav button.clean-slate-nav-menu-control:hover,
.headerSix-offcanvas .mobile-nav .opener>button.clean-slate-nav-menu-control:hover,
.headerSix-offcanvas .mobile-nav li:hover>a,
.headerSix-offcanvas .mobile-nav .active>a,
.headerSix-offcanvas .mobile-nav li:hover>button.clean-slate-nav-menu-control,
.headerSix-offcanvas .mobile-nav .active>button.clean-slate-nav-menu-control {
    color: var(--h6-menu-hover) !important;
}

.headerSix-offcanvas .nav-menu .drop-down ul,
.headerSix-offcanvas .mobile-nav .drop-down ul,
.headerSix-offcanvas .nav-menu ul ul,
.headerSix-offcanvas .mobile-nav ul ul {
    background-color: var(--h6-submenu-bg) !important;
}

.headerSix-offcanvas .nav-menu ul ul a,
.headerSix-offcanvas .mobile-nav ul ul a,
.headerSix-offcanvas .nav-menu ul ul button.clean-slate-nav-menu-control,
.headerSix-offcanvas .mobile-nav ul ul button.clean-slate-nav-menu-control {
    color: var(--h6-menu-main) !important;
}

.headerSix-offcanvas .nav-menu ul ul a:hover,
.headerSix-offcanvas .mobile-nav ul ul a:hover,
.headerSix-offcanvas .nav-menu ul ul button.clean-slate-nav-menu-control:hover,
.headerSix-offcanvas .mobile-nav ul ul button.clean-slate-nav-menu-control:hover {
    color: var(--h6-menu-hover) !important;
}

/* Επικοινωνία — κείμενο συνδέσμων (όχι SVG) */
.headerSix .top-row-info.tel a,
.headerSix .top-row-info.mail a {
    color: var(--h6-contact-link-main) !important;
}

.headerSix .top-row-info.tel a:hover,
.headerSix .top-row-info.mail a:hover {
    color: var(--h6-contact-link-hover) !important;
}

.headerSix-offcanvas .top-row-info.tel a,
.headerSix-offcanvas .top-row-info.mail a {
    color: var(--h6-contact-link-main) !important;
}

.headerSix-offcanvas .top-row-info.tel a:hover,
.headerSix-offcanvas .top-row-info.mail a:hover {
    color: var(--h6-contact-link-hover) !important;
}

/* Social: SVG odd/even paths + hover */
.headericon.headersocial.cs-social-themed a svg path:nth-of-type(odd) {
    fill: var(--cs-social-main, var(--svgcol)) !important;
    transition: fill 0.3s ease;
}

.headericon.headersocial.cs-social-themed a svg path:nth-of-type(even) {
    fill: var(--cs-social-accent, var(--cs-social-main, var(--svgcol))) !important;
    transition: fill 0.3s ease;
}

.headericon.headersocial.cs-social-themed a:hover svg path {
    fill: var(--cs-social-hover, var(--linkcol)) !important;
}


.headericon .icon svg {
    width: 24px;
    height: 24px;
}

/* ============================= SECTIONS GENERAL ================================== */

section,
.section-padding {
    padding: 50px 0;
    overflow: hidden;
}

section.clean-slate-hero-banner,
section.call_to_action_banner,
section#movingwavesbanner,
section.moving_waves_banner2,
section.banner_simple,
section.banner_slider,
section.simple_banner,
section.simple_banner_slider,
section.video_banner,
section.image_banner,
section.mansory_slider {
    padding: 0 !important;
}

.section-title {
    position: relative;
}

.section-bg {
    background: var(--primcol20) !important;
}

.section-title h2,
.section-title h3,
.section-title h4,
.section-title h5,
.section-title h6 {
    font-family: var(--primaryfont) !important;
    font-size: 35px !important;
    font-weight: 700 !important;
    padding: 0;
    margin: 0 0 5px 0;
    /* letter-spacing: 2px; */
    color: var(--primcol);
}

.section-title p {
    font-family: var(--primaryfont) !important;
    font-size: 20px !important;
    font-weight: 400 !important;
    padding: 0;
    margin: 0 0 5px 0;
    /* letter-spacing: 2px; */
    color: var(--primcol);

}

.section-title h2 span,
.section-title h3 span,
.section-title h4 span,
.section-title h5 span,
.section-title h6 span,
.section-title p span,
.section-title-left h2 span,
.section-title-left h3 span,
.section-title-left h4 span,
.section-title-left h5 span,
.section-title-left h6 span,
.section-title-left p span,
.clean-slate-hero-banner__title span,
.clean-slate-hero-banner__subtitle-heading span {
    color: var(--linkcol) !important;
}

.section-title h2 a,
.section-title h3 a,
.section-title h4 a,
.section-title h5 a,
.section-title h6 a {
    color: var(--primcol) !important;
}

.section-title h2 a:hover,
.section-title h3 a:hover,
.section-title h4 a:hover,
.section-title h5 a:hover,
.section-title h6 a:hover {
    color: var(--seccol) !important;
}

.section-title p {
    margin: 0;
    font-family: var(--primaryfont) !important;
    font-size: 1.125rem !important;
    font-weight: 300 !important;
    color: var(--parcol, var(--primcol));
}

.section-title-center {
    text-align: center;
    padding-bottom: 60px;
}

.section-title-center h2,
.section-title-center h3,
.section-title-center h4,
.section-title-center h5,
.section-title-center h6 {
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 20px;
    padding-bottom: 20px;
    position: relative;
    text-transform: capitalize;
}

.section-title-center h2:after,
.section-title-center h3:after,
.section-title-center h4:after,
.section-title-center h5:after,
.section-title-center h6:after,
.section-title-center p:after {
    content: url('data:image/svg+xml,<svg width="224" height="12" viewBox="0 0 224 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M6.00007 11.7734L0.226563 5.99994L6.00007 0.22644L10.7736 4.99994L213.227 4.99994L218 0.22644L223.774 5.99994L218 11.7734L213.227 6.99994L10.7736 6.99994L6.00007 11.7734Z" fill="var(--svgcol)"/></svg>');
    position: absolute;
    display: block;
    top: 60%;
    left: 0;
    right: 0;
    margin: auto;
}

.section-title-center p {
    margin-bottom: 0;
    color: var(--primcol);
    text-align: center;
}

.section-title .big-title {
    font-size: 7em;
    font-weight: 700;
    text-align: center;
    color: var(--thirdcol40);
    position: absolute;
    left: 0;
    top: -90px;
    z-index: -1;
}

.section-title-left h2,
.section-title-left h3,
.section-title-left h4,
.section-title-left h5,
.section-title-left h6,
.section-title-left p {
    font-family: var(--primaryfont) !important;
    font-size: 1.125rem !important;
    font-weight: 300 !important;
    line-height: 1.45;
    padding: 0;
    margin: 0 0 5px 0;
    color: var(--parcol, var(--primcol));
}


.section-title-left h2::after,
.section-title-left h3::after,
.section-title-left h4::after,
.section-title-left h5::after,
.section-title-left h6::after,
.section-title-left p::after {
    content: none;
    display: none;
}

/* Section Background (ACF): προαιρετικό χρώμα κειμένων — στοχεύει τίτλους/κείμενα, όχι το wrapper μόνο */
.clean-slate-section-bg-heading-tone.section-title :where(h1, h2, h3, h4, h5, h6),
.clean-slate-section-bg-heading-tone.section-title :where(h1, h2, h3, h4, h5, h6) a,
.clean-slate-section-bg-heading-tone.section-title p,
.clean-slate-section-bg-heading-tone.section-title-left :where(h1, h2, h3, h4, h5, h6),
.clean-slate-section-bg-heading-tone.section-title-left :where(h1, h2, h3, h4, h5, h6) a,
.clean-slate-section-bg-heading-tone.section-title-left p,
.clean-slate-section-bg-heading-tone.section-description,
.clean-slate-section-bg-heading-tone.section-description :where(p, li, strong, em, b, i, a, h1, h2, h3, h4, h5, h6),
.clean-slate-section-bg-heading-tone.calculator-section-description,
.clean-slate-section-bg-heading-tone.calculator-section-description :where(p, li, strong, em, b, i, a) {
    color: var(--clean-slate-section-heading-text) !important;
}

/* Spans in section titles/subtitles keep Link Color even with heading tone. */
.clean-slate-section-bg-heading-tone.section-title :where(h1, h2, h3, h4, h5, h6) span,
.clean-slate-section-bg-heading-tone.section-title p span,
.clean-slate-section-bg-heading-tone.section-title-left :where(h1, h2, h3, h4, h5, h6) span,
.clean-slate-section-bg-heading-tone.section-title-left p span {
    color: var(--linkcol) !important;
}

.clean-slate-section-bg-heading-tone.section-title :where(h1, h2, h3, h4, h5, h6) a:hover,
.clean-slate-section-bg-heading-tone.section-title-left :where(h1, h2, h3, h4, h5, h6) a:hover,
.clean-slate-section-bg-heading-tone.section-description a:hover,
.clean-slate-section-bg-heading-tone.calculator-section-description a:hover {
    color: var(--clean-slate-section-heading-text) !important;
}

.clean-slate-section-bg-heading-tone.section-title-left :where(h1, h2, h3, h4, h5, h6, p)::after {
    background: var(--clean-slate-section-heading-text) !important;
}


article .entry-content .section-title h2,
article .entry-content .section-title h3,
article .entry-content .section-title h4,
article .entry-content .section-title h5,
article .entry-content .section-title h6 {
    font-size: 22px !important;
    font-weight: 700 !important;
    padding: 0;
    margin: 0 0 5px 0;
    letter-spacing: 0;
    color: var(--primcol);
}


.section-title h1,
.section-title h2,
.section-title h3,
.section-title h4,
.section-title h5,
.section-title h6,
.section-title h1 a,
.section-title h2 a,
.section-title h3 a,
.section-title h4 a,
.section-title h5 a,
.section-title h6 a,
.section-title-center h1,
.section-title-center h2,
.section-title-center h3,
.section-title-center h4,
.section-title-center h5,
.section-title-center h6,
article .entry-content .section-title h1,
article .entry-content .section-title h2,
article .entry-content .section-title h3,
article .entry-content .section-title h4,
article .entry-content .section-title h5,
article .entry-content .section-title h6,
article .entry-content h1,
article .entry-content h2,
article .entry-content h3,
article .entry-content h4,
article .entry-content h5,
article .entry-content h6 {
    font-family: var(--primaryfont) !important;
    font-weight: 700 !important;
}

.entry-content,
.entry-summary {
    overflow-wrap: break-word;
}

.entry-content pre,
.entry-content table,
.entry-content .wp-block-table,
.entry-content .wp-block-embed {
    max-width: 100%;
}

.entry-content .wp-block-table {
    overflow-x: auto;
}

/* Subtitle under section title — same typeface, lighter weight (not hero banner). */
.section-title-left h1,
.section-title-left h2,
.section-title-left h3,
.section-title-left h4,
.section-title-left h5,
.section-title-left h6,
.section-title-left p,
.section-title p {
    font-family: var(--primaryfont) !important;
    font-weight: 300 !important;
}

section ul {
    margin: 0;
}

/* section ul li {
    list-style-image: url("data:image/svg+xml,%3Csvg width='11' height='12' viewBox='0 0 11 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.4' d='M5.82326 1.99631C6.04967 1.62021 6.72888 1.62021 7.03082 1.99631L9.21943 5.08012C10.6534 7.03572 10.6534 9.36742 9.14399 10.8717C8.46477 11.6238 7.48362 11.9999 6.42713 11.9999C5.37054 11.9999 4.38949 11.5487 3.71027 10.9469C2.65369 9.89389 1.82351 8.08875 3.63483 5.1553L5.82326 1.99631Z' fill='%23436797'/%3E%3Cpath d='M3.25197 0.282076C3.47838 -0.0940252 4.15759 -0.0940252 4.45953 0.282076L6.64814 3.36589C8.08209 5.32149 8.08209 7.65319 6.5727 9.1575C5.89348 9.90961 4.91234 10.2857 3.85584 10.2857C2.79925 10.2857 1.8182 9.83443 1.13898 9.23269C0.0823975 8.17966 -0.747784 6.37452 1.06354 3.44107L3.25197 0.282076ZM2.19539 8.02929C3.02557 8.93186 4.6104 8.93186 5.51602 8.02929C6.49708 7.05153 6.42164 5.54722 5.44058 4.19327L3.85575 1.93685L2.27092 4.11809C0.761432 6.60016 1.81802 7.65319 2.19539 8.02929Z' fill='%23436797'/%3E%3C/svg%3E%0A");
    margin: 0 0 20px 0;
} */


@media (max-width:767px) {

    section {
        padding: 50px 0;
    }

    .section-title-center h2,
    .section-title-center h3,
    .section-title-center h4,
    .section-title-center h5,
    .section-title-center h6 {
        font-size: 24px;
    }


    .section-title-left h2,
    .section-title-left h3,
    .section-title-left h4,
    .section-title-left h5,
    .section-title-left h6,
    .section-title-left p,
    .section-title p {
        font-size: 1rem !important;
        font-family: var(--primaryfont) !important;
        font-weight: 300 !important;
    }

    .section-title h2,
    .section-title h3,
    .section-title h4,
    .section-title h5,
    .section-title h6 {
        font-size: 30px !important;
        font-family: var(--primaryfont) !important;
    }

}


.section-bg-layers {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
}

.section-bg-layers .bg-layer {
    position: absolute;
    inset: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    /* cover πάντα όπως ζήτησες */
    transform: translateZ(0);
}

/* stacking order */
.section-bg-layers .bg-img1 {
    z-index: 1;
}

.section-bg-layers .bg-img2 {
    z-index: 2;
}

.section-bg-layers .bg-grdnt {
    z-index: 3;
}

.img_video_text .z-1 {
    position: relative;
    z-index: 1;
}

/* Αντεστραμμένες αναλογίες (portrait) για horizontal collage */
.ratio-3x4 {
    --bs-aspect-ratio: calc(4 / 3 * 100%);
}

.ratio-9x16 {
    --bs-aspect-ratio: calc(16 / 9 * 100%);
}

.ratio-9x21 {
    --bs-aspect-ratio: calc(21 / 9 * 100%);
}

/* Collage layouts (image_with_text / accordion media) */
.collage-layout {
    width: 100%;
    overflow: visible;
}

.img_video_text .collage-layout,
.img_video_text .collage-layout__row,
.img_video_text .collage-layout__item {
    overflow: visible;
}

/* —— Κάθετη διάταξη 1: στοίβα, κεντραρισμένες —— */
.collage-layout--vertical.collage-layout--v1 {
    display: grid;
    gap: 1.25rem;
    padding-block: 1.25rem;
    justify-items: center;
}

.collage-layout--vertical.collage-layout--v1 .collage-layout__item {
    width: 100%;
    max-width: 100%;
}

/* —— Κάθετη διάταξη 2: 1+3 δεξιά, 2 αριστερά —— */
.collage-layout--vertical-v2 {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    padding-block: 1.25rem;
}

.collage-layout--vertical-v2 .collage-layout__item--1,
.collage-layout--vertical-v2 .collage-layout__item--3 {
    width: 90%;
    max-width: 100%;
    margin-left: auto;
    margin-right: 0;
}

.collage-layout--vertical-v2 .collage-layout__item--2 {
    width: 72%;
    max-width: 100%;
    margin-left: 0;
    margin-right: auto;
}

/* —— Κάθετη διάταξη 3: σκαλοπάτι (αριστερά → κέντρο → δεξιά) —— */
.collage-layout--vertical-v3 {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    padding-block: 1.25rem;
}

.collage-layout--vertical-v3 .collage-layout__item {
    width: 82%;
    max-width: 100%;
}

.collage-layout--vertical-v3 .collage-layout__item--1 {
    margin-left: 0;
    margin-right: auto;
}

.collage-layout--vertical-v3 .collage-layout__item--2 {
    margin-left: 10%;
    margin-right: auto;
}

.collage-layout--vertical-v3 .collage-layout__item--3 {
    margin-left: auto;
    margin-right: 0;
}

/* 2 εικόνες: αριστερά → δεξιά */
.collage-layout--vertical-v3 .collage-layout__item--2:last-child {
    margin-left: auto;
    margin-right: 0;
}

/* —— Οριζόντια: κοινό row —— */
.collage-layout--horizontal {
    padding-block: 1rem;
}

.collage-layout--horizontal .collage-layout__row {
    align-items: flex-end;
}

/* Οριζόντια διάταξη 1: ίσες στήλες, κεντραρισμένες */
.collage-layout--horizontal.collage-layout--h1 .collage-layout__row {
    align-items: center;
    justify-content: center;
}

/* Οριζόντια διάταξη 2: μεσαία εικόνα πιο ψηλά */
.collage-layout--horizontal-h2 {
    padding-top: 5rem;
    padding-bottom: 0.75rem;
}

.collage-layout--horizontal-h2 .collage-layout__row {
    align-items: flex-end;
}

.collage-layout--horizontal-h2 .collage-layout__item--2 {
    transform: translateY(-4.5rem);
}

/* 2 εικόνες: η 2η ψηλότερα */
.collage-layout--horizontal-h2 .collage-layout__item--2:last-child:nth-child(2) {
    transform: translateY(-4.5rem);
}

/* Οριζόντια διάταξη 3: σκαλοπάτι (χαμηλά → ψηλά αριστερά προς δεξιά) */
.collage-layout--horizontal-h3 {
    padding-top: 6rem;
    padding-bottom: 0.75rem;
}

.collage-layout--horizontal-h3 .collage-layout__row {
    align-items: flex-end;
}

.collage-layout--horizontal-h3 .collage-layout__item--2 {
    transform: translateY(-2.75rem);
}

.collage-layout--horizontal-h3 .collage-layout__item--3 {
    transform: translateY(-5.5rem);
}

/* 2 εικόνες */
.collage-layout--horizontal-h3 .collage-layout__item--2:last-child:nth-child(2) {
    transform: translateY(-5.5rem);
}

@media (max-width: 767.98px) {
    .collage-layout--vertical-v2 .collage-layout__item--2 {
        width: 78%;
    }

    .collage-layout--vertical-v3 .collage-layout__item--2 {
        margin-left: 6%;
    }
}

/* “Object fit” επιλογές σου (σαν background-size equivalents) */
.section-bg-layers .object-fit-cover {
    background-size: cover;
}

.section-bg-layers .object-fit-contain {
    background-size: contain;
}

.section-bg-layers .object-fit-fill {
    background-size: 100% 100%;
}

.section-bg-layers .object-fit-scale {
    background-size: auto;
}

/* πιο “ελεύθερο”, αν θες άλλο πες μου */
.section-bg-layers .object-fit-none {
    background-size: auto;
    background-position: center;
}

/* ============================= DEFAULT BUTTONS ================================== */

.btn-prm,
a.btn-prm {
    background: var(--btn-prmbg) !important;
    color: var(--btn-prmcol) !important;
    border: 1px solid var(--btn-prmbg);
}

.btn-prm:hover,
a.btn-prm:hover {
    background: var(--btn-prmcol) !important;
    color: var(--btn-prmbg) !important;
    border: 1px solid var(--btn-prmbg);
    transition: all 0.25s ease-in-out;
}

.btn-prm svg path,
a.btn-prm svg path {
    fill: var(--btn-prmcol) !important;
}

.btn-prm:hover svg path,
a.btn-prm:hover svg path {
    fill: var(--btn-prmbg) !important;
}

.btn-brd,
a.btn-brd {
    background: transparent !important;
    color: var(--btn-prmbg) !important;
    border: 1px solid var(--btn-prmbg);
}

.btn-brd:hover,
a.btn-brd:hover {
    background: var(--btn-prmbg) !important;
    color: var(--btn-prmcol) !important;
    border: 1px solid var(--btn-prmbg);
    transition: all 0.25s ease-in-out;
}

.btn-brd svg path,
a.btn-brd svg path {
    fill: var(--btn-prmbg) !important;
}

.btn-brd:hover svg path,
a.btn-brd:hover svg path {
    fill: var(--btn-prmcol) !important;
}

.btn-scnd,
a.btn-scnd,
button.btn-scnd {
    background: var(--scnd-prmbg);
    color: var(--scnd-prmcol) !important;
    border: 1px solid var(--scnd-prmbg);
}

.btn-scnd svg path,
a.btn-scnd svg path {
    fill: var(--scnd-prmcol) !important;
}

.btn-scnd:hover svg path,
a.btn-scnd:hover svg path {
    fill: var(--scnd-prmbg) !important;
}

.btn-scnd:hover,
a.btn-scnd:hover,
button.btn-scnd:hover {
    background: var(--scnd-prmcol) !important;
    color: var(--scnd-prmbg) !important;
    border: 1px solid var(--scnd-prmbg);
    transition: all 0.25s ease-in-out;
}

.btn-third,
a.btn-third {
    background: var(--third-prmbg);
    color: var(--third-prmcol) !important;
    border: 1px solid var(--third-prmbg);
}

.btn-third svg path,
a.btn-third svg path {
    fill: var(--third-prmcol) !important;
}

.btn-third:hover svg path,
a.btn-third:hover svg path {
    fill: var(--third-prmbg) !important;
}

.btn-third:hover,
a.btn-third:hover {
    background: var(--third-prmcol);
    color: var(--third-prmbg) !important;
    transition: all 0.25s ease-in-out;
}

.btn-prm,
a.btn-prm,
.btn-scnd,
a.btn-scnd,
button.btn-scnd,
.btn-third,
a.btn-third {
    font-size: 15px;
    font-weight: bold;
    padding: 10px 20px !important;
    transition: all 0.25s ease-in-out;
    display: inline-flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    text-wrap-mode: nowrap;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}


.visually-hidden {
    position: absolute !important;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
    word-wrap: normal;
}

.btn-prm,
.btn-scnd,
.btn-third {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    min-height: 44px;
    padding: .5rem 1rem;
}

/* Universal Accessible Focus Visible (WCAG 2.1 AAA & EN 301 549) */
:focus-visible {
    outline: 3px solid var(--focus-ring-color, var(--primcol, #005fcc)) !important;
    outline-offset: 3px !important;
}

.btn-prm:focus-visible,
.btn-scnd:focus-visible,
.btn-third:focus-visible,
.btn:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
a:focus-visible,
a:focus-visible img,
img:focus-visible {
    outline: 3px solid var(--focus-ring-color, var(--primcol, #005fcc)) !important;
    outline-offset: 3px !important;
}

/* Minimum Touch Target 44x44px (WCAG 2.1 AAA & EN 301 549) */
.headericon>a,
.headericon>button,
.header-mobile-toggle,
.social a,
.site-header a.menu-bar-icon,
.pagination-wrapper a,
.pagination-wrapper span.page-numbers {
    min-width: 44px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 991px) {

    .btn-prm,
    a.btn-prm,
    .btn-scnd,
    a.btn-scnd,
    button.btn-scnd,
    .btn-third,
    a.btn-third {
        font-size: 14px;
    }
}


.btn-third .collapse-icon-open {
    display: none;
}

.btn-third[aria-expanded="true"] .collapse-icon-open {
    display: inline-flex;
}

.btn-third[aria-expanded="true"] .collapse-icon-closed {
    display: none;
}

/* Προαιρετικά λίγο spacing */
.btn-third .collapse-icon {
    margin-left: 0.5rem;
    vertical-align: middle;
}


/* ================================== */
/* HEADER 
/* ================================== */


/* ============================= HEADER ΟΝΕ SEARCH BAR ================================== */

.search_bar.header-search {
    position: relative;
}

.search_bar.header-search form input {
    width: 245px !important;
    border-radius: 100px;
    background: var(--bgcol);
    border: 2px solid var(--primcol20);
    padding: 10px 20px;
    box-shadow: 0 0 15px var(--primcol20);
}

.search_bar.header-search form input {
    width: 100%;
}

.search_bar.header-search button {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    border: 0 !important;
    margin: 0 15px;
    background: unset !important;
}


.search.headerSearch svg path {
    fill: var(--svgcol);
}

.search-results-count p {
    font-size: 22px;
}

span.cart-contents-count {
    background: var(--thirdcol);
    padding: 5px 12px;
    border-radius: 100px;
    position: absolute;
    top: -20px;
    font-weight: 700;
    color: var(--bgcol);
}


/* ============================= HEADER LOGO ================================== */

img.custom-logo,
svg.custom-logo {
    max-height: 100px;
    width: auto;
    padding: 5px 0;
}


@media (max-width: 991px) {

    img.custom-logo,
    svg.custom-logo {
        max-height: 65px;
        width: auto;
    }

    .headerTop .right .social {
        display: none;
    }

}


/* ============================= NAVIGATION ================================== */

/* Desktop Navigation */
.header-row .nav-menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.header-row .nav-menu>ul {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
}

.header-row .nav-menu>ul>li {
    position: relative;
    white-space: nowrap;
    padding: 5px 13px 5px 13px;
}

.header-row .nav-menu>ul>li:first-child {
    padding-left: 0px;
}

.header-row .nav-menu a,
.header-row .nav-menu button.clean-slate-nav-menu-control {
    display: block;
    color: var(--cs-header-nav-link, var(--primcol)) !important;
    transition: 0.3s;
    font-size: 1rem;
    padding: 5px 0px;
    letter-spacing: 0px;
    position: relative;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.5s ease-in-out;
    -webkit-appearance: none;
    appearance: none;
}

.header-row .nav-menu button.clean-slate-nav-menu-control {
    background: transparent;
    border: 0;
    margin: 0;
    cursor: pointer;
    text-align: inherit;
    font-family: inherit;
    line-height: inherit;
    box-sizing: border-box;
}

.header-row .nav-menu .menu-item>a,
.header-row .nav-menu .menu-item div>a,
.header-row .nav-menu .menu-item>button.clean-slate-nav-menu-control,
.header-row .nav-menu .menu-item div>button.clean-slate-nav-menu-control {
    color: var(--cs-header-nav-link, var(--headcol)) !important;
}

.header-row .nav-menu a:hover,
.header-row .nav-menu button.clean-slate-nav-menu-control:hover {
    color: var(--cs-header-nav-hover, var(--thirdcol)) !important;
    transition: all 0.5s ease-in-out;
}

.header-row .nav-menu>ul>li.current_page_item>.opener>a,
.header-row .nav-menu>ul>li.current_page_item>.opener>button.clean-slate-nav-menu-control {
    font-weight: bold;
    color: var(--seccol);
}

.header-row .nav-menu>ul>li.current_page_item>a,
.header-row .nav-menu>ul>li.current_page_item>button.clean-slate-nav-menu-control {
    font-weight: bold;
    color: var(--headcol) !important;
}

.header-row .nav-menu>li.current-menu-item a,
.header-row .nav-menu>li.current-menu-item button.clean-slate-nav-menu-control {
    color: var(--seccol) !important;
}

.header-row .nav-menu>ul>li.popup {
    background: var(--linkcol);
    border-radius: 10px;
    padding: 0 10px;
    box-shadow: 0px 7px 10px #00000066;
    transition: all 0.25s ease-in-out;
}

.header-row .nav-menu>ul>li.popup a,
.header-row .nav-menu>ul>li.popup button.clean-slate-nav-menu-control {
    color: var(--seccol) !important;
}

.header-row .nav-menu>ul>li.popup svg {
    margin-right: 7px;
    transition: all 0.25s ease-in-out;
}

.header-row .nav-menu>ul>li.popup:hover {
    box-shadow: unset;
    transition: all 0.25s ease-in-out;
    background: var(--primcol);
}

.header-row .nav-menu>ul>li.popup:hover svg {
    transform: rotate3d(1, 1, 1, 360deg);
    transition: transform 1s ease-in-out;
}

/* .header-row .nav-menu > ul > li.current-page-ancestor a:before {
    content: "";
    width: 10px;
    height: 2px;
    background: var(--seccol);
    display: inline-block;
    position: absolute;
    left: -12px;
    top: 50%;
    margin-top: -1px;
}

.header-row .nav-menu > ul > li.current-page-ancestor a:after {
    content: "";
    width: 10px;
    height: 2px;
    background: var(--seccol);
    display: inline-block;
    position: absolute;
    right: -12px;
    top: 50%;
    margin-top: -1px;
    left: auto;
    bottom: auto;
} */

.header-row .nav-menu>ul>li.current-page-ancestor>.opener a,
.header-row .nav-menu>ul>li.current-page-ancestor>.opener button.clean-slate-nav-menu-control {
    color: var(--seccol);
}

.header-row .nav-menu>ul>li.current-page-ancestor .current_page_item a,
.header-row .nav-menu>ul>li.current-page-ancestor .current_page_item button.clean-slate-nav-menu-control {
    color: var(--seccol);
}

.header-row .nav-menu a:hover:before,
.header-row .nav-menu li:hover>a:before,
.header-row .nav-menu .active>a:before,
.header-row .nav-menu button.clean-slate-nav-menu-control:hover:before,
.header-row .nav-menu li:hover>button.clean-slate-nav-menu-control:before,
.header-row .nav-menu .active>button.clean-slate-nav-menu-control:before {
    visibility: visible;
    width: 100%;
}

.header-row .nav-menu a:hover,
.header-row .nav-menu .active>a,
.header-row .nav-menu li:hover>a,
.header-row .nav-menu button.clean-slate-nav-menu-control:hover,
.header-row .nav-menu .active>button.clean-slate-nav-menu-control,
.header-row .nav-menu li:hover>button.clean-slate-nav-menu-control {
    color: var(--cs-header-nav-hover, var(--thirdcol));
}

.header-row .nav-menu .drop-down ul {
    display: block;
    position: absolute;
    left: 14px;
    top: calc(100% + 30px);
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    padding: 5px 0;
    background: var(--header-bottom-color);
    box-shadow: 0px 0px 30px rgb(127 137 161 / 25%);
    transition: 0.3s;
    border-radius: 5px;
}

.header-row .nav-menu .drop-down:hover>ul {
    opacity: 1;
    top: 100%;
    visibility: visible;
}

.header-row .nav-menu .drop-down li {
    min-width: 180px;
    position: relative;
}

.header-row .nav-menu .drop-down ul a,
.header-row .nav-menu .drop-down ul button.clean-slate-nav-menu-control {
    padding: 5px 20px;
    font-size: 1rem;
    text-transform: none;
    color: var(--cs-header-nav-link, var(--primcol)) !important;
}

.header-row .nav-menu .drop-down ul a:hover,
.header-row .nav-menu .drop-down ul .active>a,
.header-row .nav-menu .drop-down ul li:hover>a,
.header-row .nav-menu .drop-down ul button.clean-slate-nav-menu-control:hover,
.header-row .nav-menu .drop-down ul .active>button.clean-slate-nav-menu-control,
.header-row .nav-menu .drop-down ul li:hover>button.clean-slate-nav-menu-control {
    color: var(--cs-header-nav-hover, var(--seccol));
}

.header-row .nav-menu .drop-down .drop-down ul {
    top: 0;
    left: calc(100% - 30px);
}

.header-row .nav-menu .drop-down .drop-down:hover>ul {
    opacity: 1;
    top: 0;
    left: 100%;
}

.header-row .nav-menu .drop-down .drop-down>a,
.header-row .nav-menu .drop-down .drop-down>button.clean-slate-nav-menu-control {
    padding-right: 35px;
}

.header-row .nav-menu .drop-down:hover .opener>svg {
    transform: rotate(-90deg);
}

.header-row .nav-menu .drop-down .opener>svg {
    width: 12px;
    height: 12px;
    margin-left: 5px;
    transition: 0.3s ease all;
    transform: rotate(-0deg);
}

.header-row .nav-menu .drop-down .drop-down .opener>svg {
    position: absolute;
    right: 15px;
}

@media (max-width: 1366px) {
    .header-row .nav-menu .drop-down .drop-down ul {
        left: -90%;
    }

    .header-row .nav-menu .drop-down .drop-down:hover>ul {
        left: -100%;
    }

    .header-row .nav-menu .drop-down .drop-down>a:after,
    .header-row .nav-menu .drop-down .drop-down>button.clean-slate-nav-menu-control:after {
        content: "\ea9d";
    }

}

.header-row .nav-menu>ul>li.drop-down .subArrow {
    width: 20px;
    height: 20px;
    display: block;
    z-index: 99;
    position: relative;
}

.header-row .nav-menu>ul>li.drop-down .subArrow:before {
    content: "";
    width: 2px;
    height: 9px;
    background: var(--bgcol);
    display: block;
    transform: rotate(136deg);
    position: relative;
    left: 8px;
    top: 2px;
    transition: 0.3s ease all;
}

.header-row .nav-menu>ul>li.drop-down .subArrow:after {
    content: "";
    width: 2px;
    height: 9px;
    background: var(--bgcol);
    display: block;
    transform: rotate(-136deg);
    position: relative;
    left: 8px;
    top: -1px;
    transition: 0.3s ease all;
}

.header-row .nav-menu>ul>li.drop-down:hover .subArrow:before {
    width: 2px;
    height: 10px;
    transform: rotate(220deg);
    left: 12px;
    top: 6px;
}

.header-row .nav-menu>ul>li.drop-down:hover .subArrow:after {
    width: 2px;
    height: 10px;
    transform: rotate(-44deg);
    left: 6px;
    top: -4px;
}

/* Άνοιγμα dropdown όταν υπάρχει focus μέσα στο <li> */
.header-row .nav-menu .drop-down:focus-within>ul {
    opacity: 1;
    top: 100%;
    visibility: visible;
}


@media (min-width: 992px) and (max-width: 1370px) {

    .header-row .nav-menu a,
    .header-row .nav-menu button.clean-slate-nav-menu-control,
    .header-row .nav-menu .drop-down ul a,
    .header-row .nav-menu .drop-down ul button.clean-slate-nav-menu-control {
        font-size: 12px;
    }

    .header-row .nav-menu>ul>li {
        padding: 5px 10px;
    }

}

.header-row.top-bar .nav-menu .menu-item div>a,
.header-row.top-bar .nav-menu .menu-item div>button.clean-slate-nav-menu-control {
    color: unset !important;
}


/* .header-row .nav-menu > ul > li.drop-down ul .subArrow:before {
    background: var(--primcol);
}

.header-row .nav-menu > ul > li.drop-down ul .subArrow:after {
    background: var(--primcol);
} */

/* ============================= Mobile Menu ================================== */

.mobile-nav .drop-down ul a,
.mobile-nav .drop-down ul button.clean-slate-nav-menu-control {
    padding: 0px;
    font-size: 1.2rem;
    font-weight: 400 !important;
}

.mobile-nav .active .opener a,
.mobile-nav .active .opener button.clean-slate-nav-menu-control {
    padding-bottom: 0px;
}

.mobile-nav * {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 1rem;
    font-weight: bold !important;
}

.mobile-nav a,
.mobile-nav button.clean-slate-nav-menu-control {
    font-family: var(--accentfont) !important;
    display: block;
    position: relative;
    color: var(--cs-header-nav-link, var(--headcol)) !important;
    padding: 8px 0px;
    margin: 5px 0;
    outline: none;
    text-decoration: unset;
    font-size: 20px;
    margin: 10px 0;
    -webkit-appearance: none;
    appearance: none;
    background: transparent;
    border: 0;
    width: 100%;
    text-align: inherit;
    cursor: pointer;
    box-sizing: border-box;
}

.mobile-nav a:hover,
.mobile-nav .active>a,
.mobile-nav li:hover>a,
.mobile-nav button.clean-slate-nav-menu-control:hover,
.mobile-nav .active>button.clean-slate-nav-menu-control,
.mobile-nav li:hover>button.clean-slate-nav-menu-control {
    color: var(--cs-header-nav-hover, var(--thirdcol));
    text-decoration: none;
}

.mobile-nav .drop-down .opener {
    justify-content: space-between !important;
}

.mobile-nav .current-page-ancestor .opener a,
.mobile-nav .current-page-ancestor .opener button.clean-slate-nav-menu-control {
    color: var(--cs-header-nav-hover, var(--thirdcol));
}



.mobile-nav .drop-down .opener>svg {
    padding: 5px;
    width: 30px;
    transition: 0.3s ease all;
    height: 35px;
    position: absolute;
    right: 0px;
}


.mobile-nav .current-page-ancestor .current_page_item a,
.mobile-nav .current-page-ancestor .current_page_item button.clean-slate-nav-menu-control {
    color: var(--seccol);
}

.mobile-nav .drop-down .opener>svg path {
    fill: var(--cs-header-nav-hover, var(--thirdcol));
}

.mobile-nav .drop-down>a,
.mobile-nav .drop-down>button.clean-slate-nav-menu-control {
    padding-right: 35px;
}

.mobile-nav .drop-down ul {
    display: none;
    overflow: hidden;
}

.mobile-nav li.drop-down.active>ul {
    display: block;
}

.mobile-nav .drop-down li {
    padding-left: 20px;
}

.mobile-nav-overly {
    width: 100%;
    height: 100%;
    z-index: 9998;
    top: 0;
    left: 0;
    position: fixed;
    background: rgb(255 255 255 / 65%);
    background-position: 100% 50%;
    overflow: hidden;
    display: none;
    transition: ease-in-out 0.2s;
    backdrop-filter: blur(3px);
}

.mobile-nav-overly span {
    position: fixed;
    top: 15px;
    right: 15px;
    color: var(--thirdcol);
    font-size: 1.25rem;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.fa-times-circle:before {
    content: "\f00d";
    color: white;
}

.mobile-nav-overly i:hover {
    color: var(--seccol);
}

.mobile-nav-active {
    overflow: hidden;
}

.mobile-nav-active .mobile-nav {
    opacity: 1;
    visibility: visible;
}

.mobile-nav-active .mobile-nav-toggle span {
    color: var(--primcol);
}

.mobile-nav-logo {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
}

.mobile-nav-logo img {
    max-height: 100px;
    width: auto !important;
}


.mobile-nav li {
    /* border-bottom: 1px solid #aea29966; */
    position: relative;
}

.mobile-nav li:last-child {
    border: none;
}

.mobile-nav .subArrow {
    width: 30px;
    height: 30px;
    display: block;
    z-index: 99;
    position: relative;
}

.mobile-nav .subArrow:before {
    content: "";
    width: 2px;
    height: 14px;
    background: var(--thirdcol);
    display: block;
    transform: rotate(136deg);
    position: relative;
    left: 20px;
    top: 4px;
    transition: 0.3s ease all;
}



.mobile-nav .subArrow:after {
    content: "";
    width: 2px;
    height: 14px;
    background: var(--thirdcol);
    display: block;
    transform: rotate(-136deg);
    position: relative;
    left: 20px;
    top: 0px;
    transition: 0.3s ease all;
}

.mobile-nav .drop-down ul li {
    border: none;
}

.mobile-nav .drop-down .opener {
    cursor: pointer;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
}

.mobile-nav .drop-down .opener button.clean-slate-nav-menu-control {
    background: transparent;
    border: none;
    padding: 0;
    text-align: left;
    cursor: pointer;
    flex-grow: 1;
    color: inherit;
    font: inherit;
}

/* Mobile sub-menu chevron rotation on active state */
.mobile-nav li.drop-down.active > .opener > .subArrow:before {
    transform: rotate(220deg);
    left: 20px;
    top: 6px;
}

.mobile-nav li.drop-down.active > .opener > .subArrow:after {
    transform: rotate(-44deg);
    left: 20px;
    top: -4px;
}




/* ============================= HEADER FOUR ================================== */

/* .headerFour {
    backdrop-filter: blur(5px);
    width: calc(100vw - 50px) !important;
} */

.headerFour li {
    list-style: none;
    margin-right: 5px;
    margin-left: 5px;
}

.headerFour .top-row-info a {
    color: var(--primcol) !important;
    font-weight: 600;
}

.headerFour .top-row-menu a,
.headerFour .main-row a,
.headerFour .top-row-menu button.clean-slate-nav-menu-control,
.headerFour .main-row button.clean-slate-nav-menu-control {
    color: var(--cs-header-nav-link, var(--primcol)) !important;
    font-weight: 600;
}

.headerFour .top-row-info a:hover {
    color: var(--linkcol) !important;
    font-weight: 600;
}

.headerFour .top-row-menu a:hover,
.headerFour .main-row a:hover,
.headerFour .top-row-menu button.clean-slate-nav-menu-control:hover,
.headerFour .main-row button.clean-slate-nav-menu-control:hover {
    color: var(--cs-header-nav-hover, var(--linkcol)) !important;
    font-weight: 600;
}




/* ============================= HEADER HERO ================================== */


#header-hero {
    height: var(--headerheroheigh) !important;
    background-repeat: var(--headerherobgrepeat) !important;
    background-position: var(--headerherobgposition) !important;
    background-size: var(--headerherobgsize) !important;
    padding: 120px 0 25px 0;
    z-index: 0;
}

#header-hero .header-hero-overlay {
    z-index: 1;
}

#header-hero .header-hero-container {
    z-index: 2;
}

#header-hero h1 {
    font-size: 40px !important;
    text-wrap: balance !important;
    font-weight: 900 !important;
    color: var(--headerherotextcolor) !important;
    font-family: var(--accentfont) !important;
}

#header-hero h2 {
    font-size: 24px !important;
    font-weight: 300 !important;
    color: var(--headerherotextcolor) !important;
}

#header-hero .breadcrumbs,
.product-breadcrumbs .breadcrumbs {
    font-size: 18px;
    font-weight: 600;
}

#header-hero a,
#header-hero .breadcrumbs a,
#header-hero a time {
    color: var(--headerherolinkcolor) !important;
}

#header-hero a:hover,
#header-hero .breadcrumbs a:hover,
#header-hero a:hover time {
    color: var(--thirdcol) !important;
}

#header-hero .entry-meta {
    color: var(--headerherotextcolor) !important;
}

#header-hero .breadcrumbs a svg path,
#header-hero .breadcrumbs span svg path {
    fill: var(--headerherolinkcolor) !important;
}

#header-hero .breadcrumbs span {
    margin: 0 5px 0 5px;
    color: var(--headerherotextcolor);
}

.header-hero .breadcrumbs {
    margin-bottom: 25px;
}


#header-hero.type-post h1 {
    font-size: 30px !important;
    font-weight: bold !important;
}

.headerhero-date time {
    font-family: var(--accentfont) !important;
    color: var(--headerherotextcolor) !important;
    font-size: 18px;
    font-weight: 600;
}


@media (max-width: 991px) {


    #header-hero .breadcrumbs {
        font-size: 16px !important;
    }

    #header-hero h1 {
        font-size: 25px !important;
    }

    #header-hero h2 {
        font-size: 18px !important;
    }

}

@media (max-width: 576px) {


    #header-hero {
        height: 100% !important;
        padding: 50px 0;
        width: 100%;
        max-width: 100%;
    }

    #header-hero .breadcrumbs {
        font-size: 12px !important;
    }

    #header-hero h1 {
        font-size: 20px !important;
        text-wrap: balance;
    }

    #header-hero .page-description p {
        font-size: 15px !important;
    }


    #header-hero.type-post h1 {
        font-size: 16px !important;
    }

}


/*hero section mobile*/
@media (max-width: 575px) {

    .checkout-breadcrumbs {
        flex-wrap: wrap;
        justify-content: flex-start;
        line-height: 1.7;
    }

    #header-hero h1 {
        font-size: 30px !important;
    }
}

/* ============================= RESPONSIVE FORM ================================== */

#responsive-form .contact-section-title {
    font-weight: 500;
    font-size: 1rem;
    color: var(--seccol);
    margin: 0;
}

#responsive-form .row label {
    color: var(--primcol);
    font-size: 14px;
    font-weight: 600;
}

#responsive-form span.wpcf7-radio {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 20px 10px;
    margin: 15px auto;
}

#responsive-form span.wpcf7-radio span.wpcf7-list-item {
    border: 1px solid var(--primcol);
    border-radius: 100px;
    padding: 15px 30px;
    min-width: min(300px, 100%);
    margin: 0;
    box-sizing: border-box;
}

@media (max-width: 767px) {
    #responsive-form span.wpcf7-radio span.wpcf7-list-item {
        width: 100%;
    }

    #responsive-form input,
    #responsive-form select,
    #responsive-form textarea,
    #clean-slate-login-form input,
    .clean-slate-register-form input {
        font-size: 1rem;
    }
}

#responsive-form input[type="text"],
#responsive-form input[type="email"],
#responsive-form input[type="url"],
#responsive-form input[type="password"],
#responsive-form input[type="search"],
#responsive-form input[type="number"],
#responsive-form input[type="tel"],
#responsive-form input[type="range"],
#responsive-form input[type="date"],
#responsive-form input[type="month"],
#responsive-form input[type="week"],
#responsive-form input[type="time"],
#responsive-form input[type="datetime"],
#responsive-form input[type="datetime-local"],
#responsive-form input[type="color"],
#clean-slate-login-form input[type=text],
#clean-slate-login-form input[type=password],
.clean-slate-register-form input[type="text"],
.clean-slate-register-form input[type="email"],
#responsive-form textarea,
#responsive-form select {
    color: var(--primcol);
    border: 0;
    border: 1px solid var(--seccol);
    border-radius: 100px;
    padding: 15px 20px;
    background: transparent;
    width: 100%;
}

#responsive-form .field {
    margin: 0 0 30px 0;
}


#responsive-form button,
#responsive-form input[type="button"],
#responsive-form input[type="reset"],
#responsive-form input[type="submit"],
.clean-slate-register-form .clean-slate-register-submit {
    background: var(--primcol) !important;
    color: var(--bgcol) !important;
    font-size: 16px;
    font-weight: bold;
    padding: 10px 20px 10px 30px !important;
    border-radius: 100px;
    border: 1px solid var(--primcol);
    transition: all 0.25s ease-in-out;
    display: inline-flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

#responsive-form button:hover,
#responsive-form input[type="button"]:hover,
#responsive-form input[type="reset"]:hover,
#responsive-form input[type="submit"]:hover {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    background: var(--bgcol) !important;
    color: var(--thirdcol) !important;
    border: 1px solid var(--thirdcol);
    transition: all 0.25s ease-in-out;
}


.wpcf7 input[type="file"]::file-selector-button {
    font-size: 16px;
    font-weight: bold;
    padding: 10px 20px !important;
    transition: all 0.25s ease-in-out;
    display: inline-flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    border-radius: 100px;
    background: var(--third-prmbg);
    color: var(--third-prmcol) !important;
    border: 1px solid var(--third-prmbg);
    cursor: pointer;
}

#responsive-form .wpcf7-checkbox {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    row-gap: 10px;
    margin: 15px 0;
}

#responsive-form .app-info {
    margin: 15px 0;
    font-size: 16px;
    font-style: italic;
    background: var(--thirdcol20);
    padding: 15px;
    border-radius: 10px;
}

#responsive-form .info-tip {
    font-style: italic;
    font-size: 15px;
    margin-left: 15px;
}


select {
    border-radius: 100px;
    border: 1px solid var(--linkcol) !important;
    background: white;
    padding: 5px 15px;
}

input#wp-submit {
    font-size: 15px;
    font-weight: bold;
    padding: 10px 20px !important;
    transition: all 0.25s ease-in-out;
    display: inline-flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    background: var(--scnd-prmbg) !important;
    color: var(--scnd-prmcol) !important;
    border: 1px solid var(--scnd-prmbg);
    border-radius: 50rem;
}

/* ============================= Post Card Carousel ================================== */

.post-carousel #splide-carousel-list h3 a,
.post-carousel #splide-carousel-list .categories a {
    color: var(--headcol) !important;
}

.post-carousel #splide-carousel-list h3 a {
    font-size: 30px;
}

.post-carousel .splide__arrow {

    background: transparent;
    height: 50px;
    width: 50px;
}

.post-carousel .splide__arrow svg {
    fill: #000;
    height: 50px;
    width: 50px;
}

.post-carousel .splide__arrow--prev {
    right: 5em;
    left: unset;
}

.my-carousel-progress {
    background: #212121;
}

.my-carousel-progress-bar {
    background: #03D2FF;
    height: 2px;
    transition: width 400ms ease;
    width: 0;
}

@media (max-width: 991px) {

    .post-carousel #splide-carousel-list h3 a {
        font-size: 20px;
    }

    .post-carousel .post-content {
        background: #ffffff;
        border-radius: 2rem;
        margin-top: -50px;
        min-height: 340px;
    }

}



/* ============================= Menu modal ================================== */

.menumodal-nav li button {
    font-size: 16px !important;
    color: var(--headcol);
    transition: all 0.5s ease-in-out;
}

.menumodal-nav li button.active {
    color: var(--headcol);
    font-weight: 500 !important;
    border-bottom: 2px solid;
    border-radius: 0;
    transition: all 0.5s ease-in-out;
}

.menu-section-title h3 {
    font-size: 25px !important;
    margin-bottom: 5px !important;
}

.menu-section-title p {
    font-size: 18px !important;
    font-weight: 300 !important;
}

.menu-section-element h3 {
    font-size: 20px !important;
    font-weight: 500 !important;
}

.menu-section-element p {
    font-size: 16px !important;
    font-weight: 300 !important;
    font-style: italic;
}

.menu-section-element .the-price {
    font-size: 18px !important;
    font-weight: 700 !important;
}

.menu-section:nth-child(even) {
    background: #F9F9FB;
}

.menu-section:nth-child(even) .menu-section-element {
    background: #fff;
}

.menu-section:nth-child(odd) .menu-section-element {
    background: #F9F9FB;
}

span.element-attr {
    background: var(--primcol);
    padding: 5px 10px;
    color: var(--linkcol);
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 1px;
    border-radius: 5px;
    margin: 0 0 5px 0;
    float: left;
}

/* ============================= Vertical Post Feed ================================== */


.vertical_post_feed .the_post h3 {
    font-size: 30px !important;
}

.vertical_post_feed .the_post h3 a {
    color: var(--headcol) !important;
}

.vertical_post_feed .the_post .categories a {
    color: var(--feed-card-cat-color, #0f172a) !important;
}


@media (max-width: 991px) {

    .vertical_post_feed .the_post h3 a {
        font-size: 20px;
    }

    .vertical_post_feed .the_post .post-content {
        background: #ffffff;
        border-radius: 2rem;
        margin-top: -50px;
        min-height: 340px;
    }

}


/* ============================= Archive Post Feed ================================== */


.archive .my-4 {
    justify-content: center !important;
}




.archive-description p {
    font-size: 15px;
    font-weight: 300;
}


.archive-description p a {
    font-size: 15px;
    font-weight: 400;
    color: var(--thirdcol) !important;
}

.archive-description p a:hover {
    color: var(--seccol) !important;
}


article .feedpost .categories li a article.the-content .thumbnail {
    aspect-ratio: 1 / 1 !important;
    width: 100%;
    height: auto;
    background-size: cover !important;
    background-position: center !important;
}


article .feedpost .feedpost-content {
    border: 1px solid var(--seccol50);
}

/* .feedhorizontal .feedpost .thumbnail .feedpost-date {
    background: #fff 0% 0% no-repeat padding-box;
    border-radius: 19px 0px 20px 0px;
    position: absolute;
    top: 0;
    left: 0;
    width: 70px;
    height: 60px;
    text-align: center;
    font-weight: 700;
    padding: 5px;
    color: var(--primcol);
} */

article.the-content .feedpost-content .feedpost-date {
    font-weight: 600;
}

article .feedpost h3,
article .feedpost h3 a,
article .feedpost a.feedpost-main-link,
article .feedpost a.feedpost-main-link h3,
article .feedpost-card h3,
article .feedpost-card h3 a {
    font-family: var(--accentfont) !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    margin-top: 10px !important;
    margin-bottom: 5px !important;
    color: var(--feed-card-title, #081e46) !important;
    text-decoration: none !important;
}

article .feedpost h3:hover a,
article .feedpost a.feedpost-main-link:hover h3,
article .feedpost-card h3:hover a {
    color: var(--linkcol, #4B83FF) !important;
}

article .feedpost .thumbnail,
.feedloop_featimgontop .thumbnail,
.feedpost-card .thumbnail {
    aspect-ratio: 16 / 10 !important;
    width: 100% !important;
    min-height: 220px !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    border-radius: 1rem 1rem 0 0 !important;
    display: block !important;
}

article .feedpost .excerpt,
article .feedpost .excerpt p,
article .feedpost-card .excerpt,
article .feedpost-card .excerpt p,
.excerpt,
.excerpt p {
    font-size: 15px;
    font-weight: 400;
    color: var(--feed-card-title, #081e46) !important;
}

article .feedpost .categories a.feed-cat,
article .feedpost .categories a.btn-cat,
.btn-cat {
    color: var(--feed-card-cat-color, #0f172a) !important;
    background-color: var(--feed-card-cat-bg, #f1f5f9) !important;
    font-family: var(--accentfont) !important;
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.2;
    border-radius: 999px;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.25rem 0.75rem;
    transition: all 0.2s ease-in-out;
}

article .feedpost-date,
article .feedpost-date time,
article .feedpost-date span,
article .feedpost-date .clean-slate-reading-time,
.feedpost-date,
.feedpost-date time,
.feedpost-date span,
.clean-slate-reading-time {
    font-weight: 500;
    font-size: 13px;
    color: var(--feed-card-text, #64748b) !important;
}

article .feedpost .categories a:hover,
.btn-cat:hover,
.btn-cat:focus {
    background-color: var(--btn-prmbg, #081e46) !important;
    color: var(--btn-prmcol, #ffffff) !important;
    border-color: transparent !important;
    transform: translateY(-1px);
}

/* οι λίστες σου είναι ήδη inline */
article .feedpost .categories [role="list"] li {
    display: inline;
}

/* κόμμα μετά από κάθε li εκτός του τελευταίου */
article .feedpost .categories [role="list"] li:not(:last-child)::after {
    content: "";
}

/* Σαφές keyboard focus (WCAG 2.1) */
.btn-cat:focus-visible {
    outline: 2px solid #000;
    outline-offset: 2px;
}



/* ============================= Comments ================================== */

#comments {
    background: #ffffff;
    padding: 15px;
    border-radius: 10px;
}


#comments .comment {
    list-style: none;
    padding: 20px;
    border-radius: 15px;
    margin: 10px 0;
}

#comments ul {
    margin: 0;
    padding: 0;
}

#comments .comment.even {
    background: #f3f3f3;
}

#comments .comment.odd {
    background: #dedede;
}

.comments-title,
#respond h3 {
    font-size: 1.25rem;
}

#respond {
    background: #f3f3f3;
    padding: 15px;
    border-radius: 15px;
}

.comment-form-comment {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
}

form#commentform .logged-in-as {
    font-size: 0.85rem;
    color: var(--primcol);
}

form#commentform .logged-in-as a {
    font-size: 0.85rem;
    color: var(--primcol);
    transition: all 0.5s ease-in-out;
}

form#commentform .logged-in-as a:hover {
    font-size: 0.85rem;
    color: var(--primcol);
    transition: all 0.5s ease-in-out;
}

.form-submit input#submit {
    background: var(--primcol);
    border: 0;
    padding: 10px 15px;
    color: var(--bgcol);
    transition: all 0.5s ease-in-out;
}

.form-submit input#submit:hover {
    background: var(--bgcol);
    color: var(--primcol);
    transition: all 0.5s ease-in-out;
}

.comment-form-comment label {
    font-size: 1rem;
    color: var(--primcol);
}

.comment-form-comment textarea {
    border: 0;
    border-radius: 10px;
    color: var(--primcol);
    padding: 5px 10px;
    background: #fff;
}

/*Comment Output*/

.commentlist .reply {}

.commentlist .reply a {
    color: var(--primcol);
}

.commentlist .reply a:hover {
    color: var(--primcol);
}

.commentlist .alt {}

.commentlist .odd {
    background: #66666621 !important;
}

.commentlist .even {
    background: #cfcfcf21 !important;
}

.commentlist .thread-alt {}

.commentlist .thread-odd {}

.commentlist .thread-even {}

.commentlist li ul.children .alt {}

.commentlist li ul.children .odd {}

.commentlist li ul.children .even {}

.commentlist .vcard {
    padding: 10px;
}

.commentlist .vcard cite.fn {}

.commentlist .vcard span.says {}

.commentlist .vcard img.photo {}

.commentlist .vcard img.avatar {
    border-radius: 50px;
    margin: 5px;
    width: 100%;
    height: auto;
    max-width: 65px;
}

.commentlist .vcard cite.fn a.url {
    color: var(--primcol) !important;
    font-size: 0.95rem;
}

.commentlist .vcard cite.fn a.url:hover {
    color: var(--primcol) !important;
}

.commentlist .comment-meta {}

.commentlist .comment-meta a {
    color: var(--primcol) !important;
}

.commentlist .comment-meta a:hover {
    color: var(--primcol) !important;
}

.commentlist .commentmetadata {
    font-weight: light !important;
    font-size: 0.85rem;
    font-style: italic;
}

.commentlist .commentmetadata a {
    color: var(--primcol) !important;
}

.commentlist .commentmetadata a:hover {
    color: var(--primcol) !important;
}

.commentlist .parent {}

.commentlist .comment {
    border-radius: 10px;
    overflow: hidden;
}

.commentlist .children {}

.commentlist .pingback {}

.commentlist .bypostauthor {}

.commentlist .comment-author {}

.commentlist .comment-author-admin {}

.commentlist {}

.commentlist li {
    margin: 15px 0;
    border: 0.0125rem solid var(--primcol80);
}

.commentlist li p {
    margin: 35px auto;
    color: var(--primcol);
    font-size: 1rem;
}

.commentlist li ul {}

.commentlist li ul.children li {}

.commentlist li ul.children li.alt {}

.commentlist li ul.children li.byuser {}

.commentlist li ul.children li.comment {}

.commentlist li ul.children li.bypostauthor {}

.commentlist li ul.children li.comment-author-admin {}

.commentlist .reply {
    padding: 10px;
}

#cancel-comment-reply a {
    font-size: 1rem;
}

p.comment-form-author,
p.comment-form-email,
p.comment-form-url {
    max-width: 370px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap: nowrap;
}

input#author,
input#email,
input#url {
    background: var(--primcol80);
    border: 0;
    border-radius: 10px;
    color: var(--primcol);
    padding: 5px 10px;
}



nav.navigation.pagination .nav-links {
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
    margin: 25px auto;
}

nav.pagination-wrapper ul.page-numbers {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    row-gap: 0.25rem;
    max-width: 100%;
    padding-left: 0;
}

nav.pagination-wrapper ul.page-numbers li {
    list-style: none;
}

.post .nav-links {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-around;
    flex-wrap: wrap;
    gap: 0.75rem;
    max-width: 100%;
}

img.prev-next-arrow {
    margin: 5px;
}

span.page-numbers.current {
    color: var(--primcol) !important;
    font-size: 1rem;
    background: #fff 0% 0% no-repeat padding-box;
    border-radius: 50px;
    width: 30px;
    height: 30px;
    text-align: center;
    padding: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 5px;
    box-shadow: 0 0 15px #0000002e;
}

a.page-numbers {
    color: var(--primcol) !important;
    font-size: 1rem;
    padding: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 5px;
    width: 30px;
    height: 30px;
}

a.page-numbers:hover {
    color: var(--darkblue) !important;
    background: #fff 0% 0% no-repeat padding-box;
    border-radius: 50px;
    text-align: center;
    box-shadow: 0 0 15px #0000002e;
}


.sr-only-focusable {
    position: absolute;
    left: -9999px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    white-space: nowrap;
}

.sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    clip: auto;
    overflow: visible;
    margin: 1rem;
    padding: 0.5rem 1rem;
    background-color: #000;
    color: #fff;
    z-index: 1000;
    display: inline-block;
    text-decoration: none;
    font-weight: bold;
    border-radius: 4px;
}

/* Skip link accessibility (WCAG 2.4.1 Bypass Blocks - AAA) */
.visually-hidden-focusable {
    position: absolute !important;
    z-index: 9999999 !important;
}

.visually-hidden-focusable:focus-within,
.visually-hidden-focusable a:focus {
    position: fixed !important;
    top: 15px !important;
    left: 15px !important;
    display: inline-block !important;
    padding: 12px 24px !important;
    background-color: #000000 !important;
    color: #ffffff !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
    border: 3px solid #ffffff !important;
    border-radius: 6px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.6) !important;
    outline: 3px solid #000000 !important;
    outline-offset: 2px !important;
    width: auto !important;
    height: auto !important;
    clip: auto !important;
    clip-path: none !important;
    overflow: visible !important;
    white-space: normal !important;
}

/* 
a.header-espa-logos img {
    max-height: 100px;
    width: auto;
    padding: 5px;
}
 */





/* #primary ul, #primary ol {
    margin: 0 0 1.5em 0em !important;
} */




/*--------------------------------------------------------------
# project
--------------------------------------------------------------*/
.project .project-item {
    margin-bottom: 30px;
}

.project #project-flters {
    padding: 0;
    margin: 0 auto 25px auto;
    list-style: none;
    text-align: center;
    background: #ddd;
    border-radius: 50px;
    padding: 2px 15px;
}

.project #project-flters li {
    cursor: pointer;
    display: inline-block;
    padding: 10px 15px;
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    text-transform: uppercase;
    color: var(--primcol);
    transition: all 0.3s ease-in-out;
}

.project #project-flters li.current-cat a {
    color: var(--seccol) !important;
}

.project #project-flters li:hover,
.project #project-flters li.filter-active {
    color: #0563bb;
}

.project #project-flters li:last-child {
    margin-right: 0;
}

.project #project-flters li.cat-item a,
.project #project-flters li.cat-item-all a {
    color: var(--primcol);
    transition: all 0.5s ease;
}

.project .project-wrap {
    transition: 0.3s;
    position: relative;
    overflow: hidden;
    z-index: 1;
    background: var(--primcol80);
    aspect-ratio: 1 / 1;
}


.project .project-wrap img.img-fluid {
    object-fit: cover !important;
    height: 100%;
    width: auto;
}

.project .project-wrap::before {
    content: "";
    background: var(--primcol60);
    position: absolute;
    transition: all ease-in-out 0.3s;
    z-index: 2;
    opacity: 1;
}

.project .project-wrap .project-info {
    /* opacity: 0; */
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    text-align: center;
    z-index: 3;
    transition: all ease-in-out 0.3s;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: var(--primcol80);
}

.project .project-wrap .project-info::before {
    display: block;
    content: "";
    width: 48px;
    height: 48px;
    position: absolute;
    top: 15px;
    left: 15px;
    border-top: 3px solid var(--thirdcol);
    border-left: 3px solid var(--thirdcol);
    transition: all 0.5s ease 0s;
    z-index: 9994;
}

.project .project-wrap .project-info::after {
    display: block;
    content: "";
    width: 48px;
    height: 48px;
    position: absolute;
    bottom: 15px;
    right: 15px;
    border-bottom: 3px solid var(--thirdcol);
    border-right: 3px solid var(--thirdcol);
    transition: all 0.5s ease 0s;
    z-index: 9994;
}

.project .project-wrap .project-info h3,
.project .project-wrap .project-info h3 a {
    font-size: 20px;
    color: var(--bgcol) !important;
    font-weight: 600;
    padding: 10px;
    line-height: 25px !important;
}

.project .project-wrap .project-info h3 a:hover {
    color: var(--thirdcol) !important;
}

.project .project-wrap .project-info p {
    color: #fff;
    font-size: 14px;
    text-transform: uppercase;
    padding: 0;
    margin: 0;
}

.project .project-wrap .project-info a {
    color: #fff;
}

.project .project-wrap .project-links {
    text-align: center;
    z-index: 4;
}

.project .project-wrap .project-links a {
    color: #45505b;
    margin: 0 2px;
    font-size: 28px;
    display: inline-block;
    transition: 0.3s;
}

.project .project-wrap .project-links a:hover {
    color: #148af9;
}

.project .project-item .title h4 a {
    color: var(--primcol);
    font-size: 1rem;
    font-weight: 600;
}

.project .project-wrap:hover::before {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 1;
    background: var(--primcol70);
    backdrop-filter: blur(12px);
    transition: all ease-in-out 0.3s;
}

.project .project-wrap:hover .project-info {
    opacity: 1;
}

.project .project-wrap:hover .project-info::before {
    top: 0;
    left: 0;
}

.project .project-wrap:hover .project-info::after {
    bottom: 0;
    right: 0;
}

.project .project-wrap .project-info .categories {
    padding: 0 30px;
    hyphens: auto;
    color: var(--thirdcol);
}

.project .project-wrap .project-info .feedpost-date {
    padding: 0 30px;
    hyphens: auto;
    color: var(--thirdcol);
}

.project figure.post-thumbnail {
    height: 100% !important;
    width: auto !important;
}

.project figure.post-thumbnail img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.feedloop_horizontal .ratio-responsive {
    aspect-ratio: 0.55;
}

@media (min-width: 992px) and (max-width: 1100px) {

    .feedloop_horizontal .ratio-responsive {
        aspect-ratio: 0.28;
    }

}


@media (min-width: 769px) and (max-width: 991px) {

    .feedloop_horizontal .ratio-responsive {
        aspect-ratio: 0.25;
    }

}

@media (max-width: 768px) {

    .feedloop_horizontal .ratio-responsive {
        aspect-ratio: 3;
    }

}








.ditty.ditty-ticker {
    background: var(--primcol);
    padding: 15px;
}

.ditty-item__elements {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.ditty.ditty-ticker .ditty-item__elements a {
    color: white !important;
    font-size: 1rem !important;
    font-weight: 700;
}


/* Μεγαλύτερο tap target για το κουμπί Ditty play/pause */
.ditty-playPause {
    /* ελάχιστο μέγεθος για touch */
    min-width: 48px;
    min-height: 48px;

    /* κέντροσε το icon */
    display: flex;
    align-items: center;
    justify-content: center;

    /* προαιρετικά λίγο border-radius για να δείχνει σαν κουμπί */
    border-radius: 4px;
}

/* κράτα το icon σε λογικό μέγεθος */
.ditty-playPause svg {
    width: 20px;
    height: 20px;
}

.ditty .ditty-layout--1_default .ditty-item__elements a {
    pointer-events: auto !important;
}

.ditty .ditty-layout--1_default .ditty-item__elements a:focus {
    outline: 3px solid RED !important;
    outline-offset: 3px !important;
}






/*================================== TIMELINE ==================================*/
/*-- GENERAL STYLES ------------------------------*/
.timeline {
    line-height: 1.4em;
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
}

/*----- TIMELINE ITEM -----*/

.timeline-item {
    padding-left: 40px;
    position: relative;
}

.timeline-item:last-child {
    padding-bottom: 0;
}

/*----- TIMELINE INFO -----*/

.timeline-info .section-title.date h3 {
    font-size: 24px !important;
    font-weight: 900 !important;
    font-style: italic;
}

.timeline-content .section-title h3.timeline-title {
    font-size: 28px !important;
}

/*----- TIMELINE MARKER -----*/

.timeline-marker {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 15px;
}

.timeline-marker:before {
    background: var(--primcol);
    border: 3px solid transparent;
    border-radius: 100%;
    content: "";
    display: block;
    height: 15px;
    position: absolute;
    top: 4px;
    left: 0;
    width: 15px;
    transition: background 0.3s ease-in-out, border 0.3s ease-in-out;
}

.timeline-marker:after {
    content: "";
    width: 3px;
    background: var(--thirdcol);
    display: block;
    position: absolute;
    top: 24px;
    bottom: 0;
    left: 6px;
}

.timeline-item:last-child .timeline-marker:after {
    content: none;
}

.timeline-item:not(.period):hover .timeline-marker:before {
    background: transparent;
    border: 3px solid var(--seccol);
}

/*----- TIMELINE CONTENT -----*/

.timeline-content {
    padding-bottom: 40px;
}

.timeline-content p:last-child {
    margin-bottom: 0;
}



/*---------------------------------------------- MOD: TIMELINE SPLIT ----------------------------------------------*/
@media (min-width: 768px) {

    .timeline-split .timeline,
    .timeline-centered .timeline {
        display: table;
    }

    .timeline-split .timeline-item,
    .timeline-centered .timeline-item {
        display: table-row;
        padding: 0;
    }

    .timeline-split .timeline-info,
    .timeline-centered .timeline-info,
    .timeline-split .timeline-marker,
    .timeline-centered .timeline-marker,
    .timeline-split .timeline-content,
    .timeline-centered .timeline-content,
    .timeline-split .period .timeline-info,
    .timeline-centered .period .timeline-info {
        display: table-cell;
        vertical-align: top;
    }

    .timeline-split .timeline-marker,
    .timeline-centered .timeline-marker {
        position: relative;
    }

    .timeline-split .timeline-content,
    .timeline-centered .timeline-content {
        padding-left: 30px;
    }

    .timeline-split .timeline-info,
    .timeline-centered .timeline-info {
        padding-right: 30px;
    }

    .timeline-split .period .timeline-title,
    .timeline-centered .period .timeline-title {
        position: relative;
        left: -45px;
    }
}

/*---------------------------------------------- MOD: TIMELINE CENTERED ----------------------------------------------*/
@media (min-width: 992px) {

    .timeline-centered,
    .timeline-centered .timeline-item,
    .timeline-centered .timeline-info,
    .timeline-centered .timeline-marker,
    .timeline-centered .timeline-content {
        display: block;
        margin: 0;
        padding: 0;
    }

    .timeline-centered .timeline-item {
        padding-bottom: 100px;
        overflow: hidden;
    }

    .timeline-centered .timeline-marker {
        position: absolute;
        left: 50%;
        margin-left: -7.5px;
    }

    .timeline-centered .timeline-info,
    .timeline-centered .timeline-content {
        width: 50%;
    }

    .timeline-centered>.timeline-item:nth-child(odd) .timeline-info {
        float: left;
        text-align: right;
        padding-right: 30px;
    }

    .timeline-centered>.timeline-item:nth-child(odd) .timeline-content {
        float: right;
        text-align: left;
        padding-left: 30px;
    }

    .timeline-centered>.timeline-item:nth-child(even) .timeline-info {
        float: right;
        text-align: left;
        padding-left: 30px;
    }

    .timeline-centered>.timeline-item:nth-child(even) .timeline-content {
        float: left;
        text-align: right;
        padding-right: 30px;
    }

    .timeline-centered>.timeline-item.period .timeline-content {
        float: none;
        padding: 0;
        width: 100%;
        text-align: center;
    }

    .timeline-centered .timeline-item.period {
        padding: 50px 0 90px;
    }

    .timeline-centered .period .timeline-marker:after {
        height: 30px;
        bottom: 0;
        top: auto;
    }

    .timeline-centered .period .timeline-title {
        left: auto;
    }
}



/* -------------------------------------------------------
   WCAG 2.1 AAA-friendly table styling (focus + readability)
   Works with: .acf-generic-table.GeneratedTable.m-0
-------------------------------------------------------- */

/* Base table */
.acf-generic-table.GeneratedTable {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    background: #fff;
    color: #111;
    font-size: 1rem;
    line-height: 1.5;
}

/* Cells */
.acf-generic-table.GeneratedTable th,
.acf-generic-table.GeneratedTable td {
    border: 2px solid #1b1b1b;
    padding: 12px 10px;
    vertical-align: top;
    word-wrap: break-word;
    overflow-wrap: anywhere;
}

/* Header cells */
.acf-generic-table.GeneratedTable thead th {
    font-weight: 700;
}

/* Section title rows you colored with bgcolor="#84add6" */
.acf-generic-table.GeneratedTable [bgcolor="#84add6"] {
    background: #124a76;
    /* darker for better contrast */
    color: #fff;
}

/* Any links inside header dark text span */
.acf-generic-table.GeneratedTable [bgcolor="#84add6"] a {
    color: #fff;
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* Zebra striping (still works even with some inline bgcolors) */
.acf-generic-table.GeneratedTable tbody tr:nth-child(even) td {
    background: #f6f7f8;
}

/* Keep explicit white cells white */
.acf-generic-table.GeneratedTable [bgcolor="#ffffff"] {
    background: #fff;
}

/* Links (AAA-friendly: underline + offset) */
.acf-generic-table.GeneratedTable a {
    color: #0b3d91;
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* Hover (non-essential, but nice) */
.acf-generic-table.GeneratedTable a:hover {
    text-decoration-thickness: 3px;
}

/* -------------------------------------------------------
   Keyboard focus (very important)
   - td has tabindex="0" so it must have a clear focus style
   - also style links inside cells
-------------------------------------------------------- */

/* Focus ring for any focusable element inside the table */
.acf-generic-table.GeneratedTable :focus {
    outline: 3px solid #000;
    outline-offset: 3px;
}

/* Extra visible focus for the focused cell itself */
.acf-generic-table.GeneratedTable td:focus {
    outline: 4px solid #000;
    outline-offset: -4px;
    /* stays within the cell borders */
    box-shadow: inset 0 0 0 2px #fff;
    /* makes the ring stand out on dark bg */
}

/* If a link is focused inside a focused td, keep both readable */
.acf-generic-table.GeneratedTable td:focus a:focus {
    outline: 3px solid #000;
    outline-offset: 2px;
}

/* Optional: highlight row when any cell in that row is focused */
.acf-generic-table.GeneratedTable tbody tr:has(td:focus) td {
    background: #fff7cc;
}

/* -------------------------------------------------------
   Responsive wrapper (use: <div class="table-responsive"> ... </div>)
-------------------------------------------------------- */
.table-responsive {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* Prevent table from shrinking too much on small screens */
@media (max-width: 768px) {
    .acf-generic-table.GeneratedTable {
        min-width: 720px;
    }
}

/* Optional: reduce padding on very small screens */
@media (max-width: 480px) {

    .acf-generic-table.GeneratedTable th,
    .acf-generic-table.GeneratedTable td {
        padding: 10px 8px;
    }
}


/* Blue header/section rows */
.acf-generic-table.GeneratedTable [bgcolor="#84add6"] {
    background: #0b0081 !important;
    color: #fff !important;
}

/* Make sure any text inside stays white */
.acf-generic-table.GeneratedTable [bgcolor="#84add6"] *,
.acf-generic-table.GeneratedTable [bgcolor="#84add6"] strong,
.acf-generic-table.GeneratedTable [bgcolor="#84add6"] span {
    color: #fff !important;
}

/* Links inside blue header rows */
.acf-generic-table.GeneratedTable [bgcolor="#84add6"] a {
    color: #fff !important;
    text-decoration: underline;
    text-underline-offset: 2px;
}



.callout-box {
    padding: 24px;
    border-radius: 16px;
    /* ή ό,τι radius χρησιμοποιείς */
    background: rgba(140, 220, 190, 0.25);
    /* κοντά στο πράσινο του screenshot */
    border: 1px solid rgba(140, 220, 190, 0.35);
}


/* ========== Εγγραφή μελών / Σελίδα πρόσβασης μελών ========== */
.clean-slate-register-form-wrap {
    max-width: 420px;
    margin: 1.5rem 0;
}

.clean-slate-register-form .clean-slate-register-message {
    margin-bottom: 1rem;
}

.clean-slate-register-form p {
    margin-bottom: 1rem;
}

.clean-slate-register-form label {
    display: block;
    margin-bottom: 0.35rem;
    font-weight: 500;
}

.clean-slate-register-form input[type="text"],
.clean-slate-register-form input[type="email"] {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
}

.clean-slate-register-form .clean-slate-register-submit {
    padding: 0.5rem 1.25rem;
    background: #333;
    color: #fff;
    border: 0;
    border-radius: 4px;
    cursor: pointer;
}

.clean-slate-register-form .clean-slate-register-submit:hover {
    background: #555;
}

.clean-slate-register-success {
    color: #0a0;
}

.clean-slate-register-error {
    color: #c00;
}

/* Μήνυμα χωρίς πρόσβαση + φόρμα login */
.clean-slate-protected-no-access {
    max-width: 420px;
    margin: 2rem auto;
    padding: 1.5rem;
    border: 1px solid #c3c4c7;
    background: #fff;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
}

.clean-slate-no-access-message {
    margin-bottom: 1.25rem;
}

.clean-slate-login-wrap #clean-slate-login-form input[type="text"],
.clean-slate-login-wrap #clean-slate-login-form input[type="password"] {
    width: 100%;
    max-width: 320px;
    padding: 0.5rem 0.75rem;
    box-sizing: border-box;
}

.clean-slate-login-wrap p {
    margin-bottom: 1rem;
}

.clean-slate-no-access-back {
    margin-top: 1.25rem;
    margin-bottom: 0;
}


.footer_logo img {
    max-height: 130px;
}

/* Footer widget titles: semantic h2; stable spacing (UA h2/h3 margins differ) */
.site-footer h2.foot-widg-title {
    margin: 0 0 1.25rem;
}


.site-footer .footer-widget {
    margin: 0 0 2rem 0;
}


/* ============================= EVENTS BREADCRUMBS ================================== */

.breadcrumbs.events-breadcrumbs svg path {
    fill: var(--primcol) !important;
}

.breadcrumbs.events-breadcrumbs a.breadcrumbs__link {
    font-size: 18px;
    font-weight: 700 !important;
}

/* ============================= GOOGLE MAPS (ACF) ================================== */

.acf-map {
    width: 100%;
    height: 650px;
    margin: 20px 0;
}

.acf-map img {
    max-width: inherit !important;
}

/* ==========================================================================
   CLEAN SLATE ADVANCED FEATURES STYLING
   ========================================================================== */

/* 1. Social Sharing */
.clean-slate-social-share {
    padding: 12px 0;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.clean-slate-share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background-color: #f1f5f9;
    color: #334155;
    text-decoration: none;
    transition: all 0.2s ease-in-out;
}

.clean-slate-share-btn:hover,
.clean-slate-share-btn:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.clean-slate-share-btn.share-facebook:hover {
    background-color: #1877f2;
    color: #ffffff;
}

.clean-slate-share-btn.share-twitter:hover {
    background-color: #000000;
    color: #ffffff;
}

.clean-slate-share-btn.share-linkedin:hover {
    background-color: #0a66c2;
    color: #ffffff;
}

.clean-slate-share-btn.share-whatsapp:hover {
    background-color: #25d366;
    color: #ffffff;
}

.clean-slate-share-btn.share-viber:hover {
    background-color: #7360f2;
    color: #ffffff;
}

.clean-slate-share-btn.share-telegram:hover {
    background-color: #229ed9;
    color: #ffffff;
}

.clean-slate-share-btn.share-email:hover {
    background-color: #ea4335;
    color: #ffffff;
}

/* 2. Reading Time */
.clean-slate-reading-time {
    display: inline-flex;
    align-items: center;
    font-size: 0.875rem;
    color: var(--seccol, #64748b);
    background-color: rgba(0, 0, 0, 0.04);
    padding: 3px 10px;
    border-radius: 12px;
}

/* 3. Accessible Breadcrumbs */
.clean-slate-breadcrumbs .breadcrumb-item a {
    color: var(--primcol, #0f828c);
    text-decoration: none;
}

.clean-slate-breadcrumbs .breadcrumb-item a:hover {
    text-decoration: underline;
}

.clean-slate-breadcrumbs .breadcrumb-separator {
    color: #94a3b8;
}

/* 4. WooCommerce Quantity Buttons (+/-) */
.quantity.has-clean-slate-qty-btns {
    gap: 4px;
}

.quantity.has-clean-slate-qty-btns .qty-btn {
    width: 36px;
    height: 38px;
    font-size: 1.1rem;
    font-weight: bold;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    padding: 0;
}

.quantity.has-clean-slate-qty-btns input.qty {
    text-align: center;
    max-width: 60px;
    height: 38px;
}

/* 5. Sticky Add to Cart Bar */
.clean-slate-sticky-cart {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.96);
    backdrop-filter: blur(8px);
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    z-index: 9999;
    transform: translateY(100%);
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.clean-slate-sticky-cart.is-visible {
    transform: translateY(0);
}

/* 6. Smart Sticky Header & Overlay Modes */
.cs-smart-sticky {
    position: sticky !important;
    top: 0 !important;
    z-index: 1020 !important;
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease, background-color 0.3s ease !important;
    will-change: transform;
}

/* Header Overlay Mode (Sits on top of First Element / Banner / Hero without white gap) */
.site-header.cs-header-overlay {
    position: absolute !important;
    top: 0 !important;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1020 !important;
    margin-top: 0 !important;
}

/* Boxed Header Centering: in Normal, Overlay, Sticky and Fixed Modes */
.site-header.container-xxl,
.site-header.container-xl,
.site-header.container-lg,
.site-header.container {
    left: 0 !important;
    right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100%;
}

.site-header.cs-header-overlay.container-xxl,
.site-header.cs-header-overlay.container-xl,
.site-header.cs-header-overlay.container-lg,
.site-header.cs-header-overlay.container {
    left: 0 !important;
    right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
    width: 100%;
}

/* Header and Navigation Dropdown Visibility */
#header,
.site-header {
    position: relative;
    z-index: 1000;
    overflow: visible !important;
}

.site-header .inside-header,
.site-header .header-row,
.site-header .main-row,
.site-header .middle-header {
    overflow: visible;
}

/* Rounded Header Corners - Keep overflow visible for dropdown submenus */
.site-header.rounded-1,
.site-header.rounded-2,
.site-header.rounded-3,
.site-header.rounded-4,
.site-header.rounded-5,
.site-header.rounded-pill {
    overflow: visible !important;
}

/* Top Bar in Overlay Mode */
.top-bar.cs-header-overlay {
    position: absolute !important;
    top: 0 !important;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1021 !important;
}

.top-bar.cs-header-overlay.container-xxl,
.top-bar.cs-header-overlay.container-xl,
.top-bar.cs-header-overlay.container-lg,
.top-bar.cs-header-overlay.container {
    left: 0 !important;
    right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
    width: 100%;
}

.top-bar.cs-header-overlay+.site-header.cs-header-overlay {
    top: var(--cs-topbar-height, 42px) !important;
}

/* When Scrolled: switches to Fixed navbar */
.cs-smart-sticky.cs-header-overlay.cs-header-scrolled {
    position: fixed !important;
    top: 0 !important;
}

.cs-smart-sticky.cs-header-overlay.container-xxl.cs-header-scrolled,
.cs-smart-sticky.cs-header-overlay.container-xl.cs-header-scrolled,
.cs-smart-sticky.cs-header-overlay.container-lg.cs-header-scrolled,
.cs-smart-sticky.cs-header-overlay.container.cs-header-scrolled {
    left: 0 !important;
    right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Hidden when scrolling down: Slides straight up on the Y axis while staying centered */
.cs-smart-sticky.cs-header-hidden,
.cs-smart-sticky.cs-header-overlay.cs-header-hidden,
.cs-smart-sticky.container-xxl.cs-header-hidden,
.cs-smart-sticky.cs-header-overlay.container-xxl.cs-header-hidden,
.cs-smart-sticky.container-xl.cs-header-hidden,
.cs-smart-sticky.cs-header-overlay.container-xl.cs-header-hidden,
.cs-smart-sticky.container-lg.cs-header-hidden,
.cs-smart-sticky.cs-header-overlay.container-lg.cs-header-hidden,
.cs-smart-sticky.container.cs-header-hidden,
.cs-smart-sticky.cs-header-overlay.container.cs-header-hidden {
    transform: translateY(-120%) !important;
    box-shadow: none !important;
}

/* Visible with shadow when scrolling up: Slides down into view staying perfectly centered */
.cs-smart-sticky.cs-header-scrolled:not(.cs-header-hidden),
.cs-smart-sticky.cs-header-overlay.cs-header-scrolled:not(.cs-header-hidden),
.cs-smart-sticky.container-xxl.cs-header-scrolled:not(.cs-header-hidden),
.cs-smart-sticky.cs-header-overlay.container-xxl.cs-header-scrolled:not(.cs-header-hidden),
.cs-smart-sticky.container-xl.cs-header-scrolled:not(.cs-header-hidden),
.cs-smart-sticky.cs-header-overlay.container-xl.cs-header-scrolled:not(.cs-header-hidden),
.cs-smart-sticky.container-lg.cs-header-scrolled:not(.cs-header-hidden),
.cs-smart-sticky.cs-header-overlay.container-lg.cs-header-scrolled:not(.cs-header-hidden),
.cs-smart-sticky.container.cs-header-scrolled:not(.cs-header-hidden),
.cs-smart-sticky.cs-header-overlay.container.cs-header-scrolled:not(.cs-header-hidden) {
    transform: translateY(0) !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.14) !important;
}

/* ==========================================================================
   Minimal Page Header & Breadcrumbs Component
   ========================================================================== */
.clean-slate-minimal-header {
	background-color: var(--cs-minhdr-bg, transparent);
	border-bottom: 1px solid var(--cs-minhdr-border, rgba(125, 125, 125, 0.15));
	padding: 1.75rem 0 1.5rem;
	position: relative;
	transition: background-color 0.2s ease, border-color 0.2s ease;
}

.clean-slate-minimal-header-inner {
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
}

.clean-slate-minimal-header-title {
	font-size: clamp(1.6rem, 2.5vw + 0.6rem, 2.4rem);
	font-weight: 700;
	letter-spacing: -0.025em;
	line-height: 1.25;
	color: var(--cs-minhdr-title, var(--headcol, inherit)) !important;
	margin: 0;
}

.clean-slate-minimal-header-subtitle {
	font-size: 1rem;
	line-height: 1.5;
	color: var(--cs-minhdr-text, var(--parcol, currentColor));
	opacity: 0.85;
	margin: 0;
	max-width: 800px;
}

/* Minimal Breadcrumbs Trail */
.clean-slate-breadcrumbs--minimal .breadcrumb {
	font-size: 0.85rem;
	font-weight: 500;
	color: var(--cs-minhdr-text, var(--parcol, currentColor));
	gap: 0.15rem;
}

.clean-slate-breadcrumbs--minimal .breadcrumb-item a {
	color: var(--cs-minhdr-text, var(--parcol, currentColor));
	opacity: 0.75;
	text-decoration: none;
	transition: color 0.2s ease, opacity 0.2s ease;
}

.clean-slate-breadcrumbs--minimal .breadcrumb-item a:hover {
	color: var(--linkcol, var(--primcol, #2563eb));
	opacity: 1;
}

.clean-slate-breadcrumbs--minimal .breadcrumb-item.active span,
.clean-slate-breadcrumbs--minimal .breadcrumb-item span.fw-semibold {
	color: var(--cs-minhdr-title, var(--headcol, currentColor));
	font-weight: 600;
	opacity: 1;
}

.clean-slate-breadcrumbs--minimal .breadcrumb-separator {
	opacity: 0.45;
	font-size: 0.8rem;
}

@media (max-width: 767.98px) {
	.clean-slate-minimal-header {
		padding: 1.25rem 0 1rem;
	}
	.clean-slate-minimal-header-title {
		font-size: 1.4rem;
	}
}

/* First Element Content Breathing Room when Header Overlay is Active */
body.cs-has-header-overlay .clean-slate-minimal-header {
    padding-top: calc(var(--cs-header-overlay-pad, 110px) + 1.25rem) !important;
}

body.cs-has-header-overlay #header-hero {
    padding-top: calc(var(--cs-header-overlay-pad, 110px) + 0.5rem) !important;
}

body.cs-has-header-overlay .site-main>section:first-child.clean-slate-hero-banner .clean-slate-hero-banner__static,
body.cs-has-header-overlay .site-main>section:first-child.clean-slate-hero-banner .clean-slate-hero-banner__slide,
body.cs-has-header-overlay .site-main>section:first-child.call_to_action_banner .big-padding,
body.cs-has-header-overlay .site-main>section:first-child#movingwavesbanner,
body.cs-has-header-overlay .site-main>section:first-child.moving_waves_banner2,
body.cs-has-header-overlay .site-main>section:first-child.banner_simple,
body.cs-has-header-overlay .site-main>section:first-child.banner_slider,
body.cs-has-header-overlay .site-main>section:first-child.video_banner {
    padding-top: calc(var(--cs-header-overlay-pad, 100px) + 1.5rem) !important;
}

/* Fallback when there is no minimal header or hero banner preceding site-main */
body.cs-has-header-overlay:not(.home) #primary.site-main:first-of-type {
    padding-top: calc(var(--cs-header-overlay-pad, 110px) + 1.5rem);
}

body.cs-has-header-overlay .clean-slate-minimal-header + #primary.site-main,
body.cs-has-header-overlay #header-hero + #primary.site-main {
    padding-top: 0 !important;
}

@media (max-width: 991.98px) {

    body.cs-has-header-overlay .clean-slate-minimal-header {
        padding-top: calc(var(--cs-header-overlay-pad-mobile, 85px) + 1rem) !important;
    }

    body.cs-has-header-overlay #header-hero {
        padding-top: calc(var(--cs-header-overlay-pad-mobile, 85px) + 0.5rem) !important;
    }

    body.cs-has-header-overlay .site-main>section:first-child.clean-slate-hero-banner .clean-slate-hero-banner__static,
    body.cs-has-header-overlay .site-main>section:first-child.clean-slate-hero-banner .clean-slate-hero-banner__slide,
    body.cs-has-header-overlay .site-main>section:first-child.call_to_action_banner .big-padding,
    body.cs-has-header-overlay .site-main>section:first-child#movingwavesbanner,
    body.cs-has-header-overlay .site-main>section:first-child.moving_waves_banner2,
    body.cs-has-header-overlay .site-main>section:first-child.banner_simple,
    body.cs-has-header-overlay .site-main>section:first-child.banner_slider,
    body.cs-has-header-overlay .site-main>section:first-child.video_banner {
        padding-top: calc(var(--cs-header-overlay-pad-mobile, 80px) + 1rem) !important;
    }

    body.cs-has-header-overlay:not(.home) #primary.site-main:first-of-type {
        padding-top: calc(var(--cs-header-overlay-pad-mobile, 85px) + 1rem);
    }

    body.cs-has-header-overlay .clean-slate-minimal-header + #primary.site-main,
    body.cs-has-header-overlay #header-hero + #primary.site-main {
        padding-top: 0 !important;
    }
}

/* 7. Floating Back to Top Button */
.cs-back-to-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 999;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background-color: var(--primcol, #0f828c);
    color: #ffffff;
    border: none;
    outline: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.18);
    opacity: 0;
    visibility: hidden;
    transform: translateY(16px) scale(0.9);
    transition: opacity 0.3s cubic-bezier(0.16, 1, 0.3, 1), transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.3s, background-color 0.2s ease, box-shadow 0.2s ease;
    will-change: opacity, transform;
}

.cs-back-to-top.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
}

.cs-back-to-top:hover,
.cs-back-to-top:focus-visible {
    background-color: var(--primcol, #0f828c);
    filter: brightness(1.12);
    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
    color: #ffffff;
}

.cs-back-to-top.position-left {
    right: auto;
    left: 30px;
}

@media (max-width: 767.98px) {
    .cs-back-to-top {
        bottom: 20px;
        right: 20px;
        width: 42px;
        height: 42px;
    }

    .cs-back-to-top.position-left {
        left: 20px;
    }

    .cs-back-to-top.hide-on-mobile {
        display: none !important;
    }
}

/* 8. Header Seven – Vertical Corporate Bar & Multi-Level Drawer */
:root {
    --cs-vbar-width: 120px;
}

@media (min-width: 1200px) {
    body.cs-has-vertical-header.cs-vertical-bar-left #page {
        padding-left: var(--cs-vbar-width, 120px) !important;
    }

    body.cs-has-vertical-header.cs-vertical-bar-right #page {
        padding-right: var(--cs-vbar-width, 120px) !important;
    }

    body.cs-has-vertical-header.cs-vertical-bar-left .headerSeven-top-strip {
        left: var(--cs-vbar-width, 120px) !important;
        width: calc(100% - var(--cs-vbar-width, 120px)) !important;
        z-index: 1020;
    }

    body.cs-has-vertical-header.cs-vertical-bar-right .headerSeven-top-strip {
        right: var(--cs-vbar-width, 120px) !important;
        left: auto !important;
        width: calc(100% - var(--cs-vbar-width, 120px)) !important;
        z-index: 1020;
    }

    body.cs-has-vertical-header:not(.cs-has-header-overlay) .site-main > section:first-child:not(.clean-slate-hero-banner):not(.call_to_action_banner):not(#movingwavesbanner):not(.moving_waves_banner2) {
        padding-top: 55px;
    }
}

.site-verticalbar {
    width: var(--cs-vbar-width, 120px);
    background-color: var(--cs-vbar-bg, #ffffff);
    color: var(--cs-vbar-fg, #081e46);
    z-index: 1050;
    border-right: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 0 25px rgba(0, 0, 0, 0.06);
    transition: width 0.3s ease, transform 0.3s ease;
    overflow-y: auto;
    scrollbar-width: none;
}

.site-verticalbar::-webkit-scrollbar {
    display: none;
}

.site-verticalbar .vbar-logo img,
.site-verticalbar .vbar-logo svg {
    max-width: 85%;
    max-height: 80px;
    width: auto;
    height: auto;
    object-fit: contain;
}

.site-verticalbar .vbar-trigger-btn {
    color: var(--cs-vbar-fg, #081e46);
    text-decoration: none;
    transition: transform 0.25s ease, opacity 0.25s ease;
    cursor: pointer;
}

.site-verticalbar .vbar-trigger-btn:hover,
.site-verticalbar .vbar-trigger-btn:focus-visible {
    opacity: 0.9;
    transform: scale(1.06);
}

.site-verticalbar .vbar-burger-icon {
    display: flex;
    flex-direction: column;
    gap: 5px;
    width: 32px;
}

.site-verticalbar .vbar-line {
    display: block;
    height: 2.5px;
    background-color: currentColor;
    border-radius: 4px;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.site-verticalbar .vbar-line.line-1 {
    width: 100%;
}

.site-verticalbar .vbar-line.line-2 {
    width: 70%;
    align-self: center;
}

.site-verticalbar .vbar-line.line-3 {
    width: 100%;
}

.site-verticalbar .vbar-trigger-btn:hover .vbar-line.line-2 {
    width: 100%;
}

/* Animate burger lines into X (Close) */
.site-verticalbar .vbar-trigger-btn.is-active .vbar-line.line-1 {
    transform: translateY(7.5px) rotate(45deg);
}

.site-verticalbar .vbar-trigger-btn.is-active .vbar-line.line-2 {
    opacity: 0;
    transform: scaleX(0);
}

.site-verticalbar .vbar-trigger-btn.is-active .vbar-line.line-3 {
    transform: translateY(-7.5px) rotate(-45deg);
}

.site-verticalbar .vbar-burger-text {
    font-size: 11px;
    letter-spacing: 0.12em;
    line-height: 1.2;
}

.site-verticalbar .vbar-divider-line {
    width: 2px;
    height: 60px;
    background-color: currentColor;
    opacity: 0.18;
    border-radius: 2px;
}

.site-verticalbar .vbar-socials a svg path {
    fill: var(--cs-vbar-fg, #081e46) !important;
    transition: fill 0.2s ease, transform 0.2s ease;
}

.site-verticalbar .vbar-socials a:hover svg path {
    fill: var(--cs-mega-accent, #4b83ff) !important;
}

.site-verticalbar .vbar-lang-pill {
    font-size: 11px;
    font-weight: 700;
    color: var(--cs-vbar-fg, #081e46);
    opacity: 0.7;
    text-decoration: none;
    padding: 3px 7px;
    border-radius: 4px;
    transition: all 0.2s ease;
}

.site-verticalbar .vbar-lang-pill:hover,
.site-verticalbar .vbar-lang-pill.active {
    opacity: 1;
    background-color: rgba(0, 0, 0, 0.08);
    color: var(--cs-mega-accent, #4b83ff);
}

/* Top Strip (Header 7) */
.headerSeven-top-strip {
    background: var(--cs-strip-bg, rgba(255, 255, 255, 0.95));
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.top-strip-link {
    color: var(--headcol, #1e293b);
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: color 0.2s ease;
}

.top-strip-link:hover {
    color: var(--linkcol, #4b83ff);
}

.top-strip-nav-list a {
    color: var(--headcol, #1e293b);
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: color 0.2s ease;
}

.top-strip-nav-list a:hover {
    color: var(--linkcol, #4b83ff);
}

/* =========================================================================
   2-STAGE EXPANDABLE MEGA NAVIGATION SYSTEM (Profile Software Standard)
   ========================================================================= */
.vbar-mega-container {
    left: var(--cs-vbar-width, 120px);
    height: 100vh;
    z-index: 1040;
    display: flex;
    opacity: 0;
    visibility: hidden;
    transform: translateX(-20px);
    transition: opacity 0.3s cubic-bezier(0.16, 1, 0.3, 1), transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.3s;
    pointer-events: none;
}

.vbar-mega-container.is-open {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
    pointer-events: auto;
}

/* LEFT COLUMN: 380px */
.vbar-col-left {
    width: var(--cs-drawer-col-w, 380px);
    height: 100vh;
    background-color: var(--cs-mega-bg, #ffffff);
    border-right: 1px solid rgba(0, 0, 0, 0.07);
    box-shadow: 10px 0 35px rgba(0, 0, 0, 0.04);
    z-index: 2;
    overflow: hidden;
}

.vbar-mega-search input {
    background-color: #f1f5f9;
    color: #1e293b;
    border: 1px solid rgba(0, 0, 0, 0.06);
    font-size: 14px;
}

.vbar-mega-search input:focus {
    background-color: #ffffff;
    border-color: var(--cs-mega-accent, #4b83ff);
    box-shadow: 0 0 0 3px rgba(75, 131, 255, 0.18);
}

/* View 1: Main Menu */
.vbar-view-main {
    transition: opacity 0.25s ease, transform 0.25s ease;
}

.vbar-lvl1-item {
    border-bottom: 1px solid rgba(0, 0, 0, 0.04);
}

.vbar-lvl1-link {
    font-size: 24px;
    font-weight: 700;
    color: var(--cs-mega-menu-link, #081e46);
    padding: 14px 0;
    text-decoration: none;
    transition: color 0.2s ease, transform 0.2s ease;
    cursor: pointer;
}

.vbar-lvl1-item.active > .vbar-lvl1-link,
.vbar-lvl1-link:hover {
    color: var(--cs-mega-menu-hover, #4b83ff);
    transform: translateX(4px);
}

.vbar-chevron-svg {
    color: var(--cs-mega-accent, #4b83ff);
    transition: transform 0.2s ease;
}

.vbar-lvl1-link:hover .vbar-chevron-svg,
.vbar-lvl1-item.active .vbar-chevron-svg {
    transform: translateX(3px);
}

/* View 2: Submenu Drill-Down View (replaces main menu in left column) */
.vbar-view-submenu {
    display: none !important;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--cs-mega-bg, #ffffff);
    z-index: 5;
    flex-direction: column;
    justify-content: space-between;
}

.vbar-view-submenu.active {
    display: flex !important;
    animation: vbarSlideInLeft 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.vbar-back-btn {
    font-size: 24px;
    font-weight: 800;
    color: var(--cs-mega-menu-link, #081e46);
    cursor: pointer;
    transition: color 0.2s ease;
}

.vbar-back-btn:hover {
    color: var(--cs-mega-accent, #4b83ff);
}

.vbar-back-arrow {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: rgba(0, 0, 0, 0.05);
    color: var(--cs-mega-accent, #4b83ff);
    transition: all 0.2s ease;
}

.vbar-back-btn:hover .vbar-back-arrow {
    background-color: var(--cs-mega-accent, #4b83ff);
    color: #ffffff;
    transform: translateX(-3px);
}

.vbar-lvl2-item {
    margin-bottom: 6px;
}

.vbar-lvl2-link {
    font-size: 16px;
    font-weight: 600;
    color: var(--cs-mega-sub-link, #081e46);
    padding: 12px 18px;
    border-radius: 30px 0 0 30px;
    text-decoration: none;
    transition: all 0.2s ease;
    cursor: pointer;
}

.vbar-lvl2-item.active > .vbar-lvl2-link {
    background-color: var(--cs-mega-sub-bg, #f2f2f7);
    color: var(--cs-mega-sub-link, #081e46);
    font-weight: 700;
}

.vbar-lvl2-item:not(.active) > .vbar-lvl2-link:hover {
    background-color: #f8fafc;
    color: var(--cs-mega-sub-hover, #4b83ff);
}

.vbar-cat-icon {
    width: 24px;
    height: 24px;
    object-fit: contain;
}

.vbar-chevron-svg-sm {
    color: var(--cs-mega-accent, #4b83ff);
    transition: transform 0.2s ease;
}

.vbar-lvl2-link:hover .vbar-chevron-svg-sm,
.vbar-lvl2-item.active .vbar-chevron-svg-sm {
    transform: translateX(3px);
}

.vbar-footer-contact,
.vbar-footer-link {
    color: var(--cs-mega-footer-text, #64748b);
    font-size: 13px;
    transition: color 0.2s ease;
}

.vbar-footer-contact:hover,
.vbar-footer-link:hover {
    color: var(--cs-mega-accent, #4b83ff);
}

/* RIGHT COLUMN: 670px (Soft Gray #f2f2f7) */
.vbar-col-right {
    display: none !important;
    width: 670px;
    max-width: calc(100vw - var(--cs-vbar-width, 120px) - var(--cs-drawer-col-w, 380px));
    height: 100vh;
    background-color: var(--cs-mega-sub-bg, #f2f2f7);
    z-index: 1;
}

.vbar-col-right.active {
    display: block !important;
    animation: vbarFadeIn 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.vbar-mega-content-panel {
    display: none;
    height: 100%;
}

.vbar-mega-content-panel.active {
    display: block !important;
    animation: vbarFadeIn 0.25s ease forwards;
}

.vbar-mega-heading {
    font-size: 22px;
    font-weight: 800;
    color: var(--cs-mega-sub-link, #081e46);
}

.vbar-mega-link {
    font-size: 15px;
    font-weight: 500;
    color: var(--cs-mega-lvl3-link, #475569);
    text-decoration: none;
    display: inline-block;
    transition: color 0.2s ease, transform 0.2s ease;
}

.vbar-mega-link:hover {
    color: var(--cs-mega-sub-hover, #4b83ff);
    transform: translateX(3px);
}

/* White Card in Right Column */
.vbar-mega-card {
    background: #ffffff;
    border-radius: 18px;
    padding: 26px 22px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.vbar-card-heading {
    font-size: 16px;
    font-weight: 700;
    color: var(--cs-mega-accent, #4b83ff);
}

.vbar-card-link {
    font-size: 15px;
    font-weight: 600;
    color: var(--cs-mega-sub-link, #081e46);
    text-decoration: none;
    display: inline-block;
    transition: color 0.2s ease, transform 0.2s ease;
}

.vbar-card-link:hover {
    color: var(--cs-mega-accent, #4b83ff);
    transform: translateX(3px);
}

/* Dimmed Backdrop Overlay */
.vbar-mega-backdrop {
    position: fixed;
    inset: 0;
    width: auto;
    height: auto;
    background: rgba(8, 30, 70, 0.75);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    z-index: 1030;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.35s ease, visibility 0.35s ease;
}

.vbar-mega-backdrop.is-open {
    opacity: 1;
    visibility: visible;
}

/* Mobile Header & Drawer (< 1200px) */
.headerSeven-mobile {
    z-index: 1030;
}

.headerSeven-mobile .mobile-logo-wrap img,
.headerSeven-mobile .mobile-logo-wrap svg {
    max-height: 48px;
    width: auto;
}

.cs-vertical-mobile-drawer {
    width: 380px !important;
    max-width: 88vw !important;
}

/* Animations */
@keyframes vbarSlideInLeft {
    from {
        opacity: 0;
        transform: translateX(18px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes vbarFadeIn {
    from {
        opacity: 0;
        transform: translateY(6px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (prefers-reduced-motion: reduce) {

    .cs-smart-sticky,
    .cs-back-to-top,
    .site-verticalbar,
    .vbar-line,
    .vbar-mega-container,
    .vbar-mega-backdrop,
    .vbar-view-submenu,
    .vbar-col-right {
        transition: none !important;
    }
}

/* ==========================================================================
   CLEAN SLATE NAVIGATION: MEGA MENU, FULL SCREEN OVERLAY & DRILLDOWN
   ========================================================================== */

/* --- Desktop Mega Menu Engine & Header Sizing --- */
@media (min-width: 992px) {
    /* Anchoring on inner header containers (without forcing relative on fixed/sticky/overlay header wrappers) */
    .site-header .inside-header,
    .site-header .header-row,
    .site-header .main-row {
        position: relative;
    }

    /* Top-level Mega Menu item must be static to let dropdown span the full container width */
    .header-row .nav-menu li.is-mega-menu,
    .header-row .nav-menu li.mega-menu,
    .headerSix .header-row .nav-menu li.is-mega-menu,
    .headerSix .header-row .nav-menu li.mega-menu,
    .headerThree .header-row .nav-menu li.is-mega-menu,
    .headerThree .header-row .nav-menu li.mega-menu,
    .headerTwo .header-row .nav-menu li.is-mega-menu,
    .headerTwo .header-row .nav-menu li.mega-menu,
    .headerFour .header-row .nav-menu li.is-mega-menu,
    .headerFour .header-row .nav-menu li.mega-menu,
    .headerFive .header-row .nav-menu li.is-mega-menu,
    .headerFive .header-row .nav-menu li.mega-menu,
    #header .header-row .nav-menu li.is-mega-menu,
    #header .header-row .nav-menu li.mega-menu {
        position: static !important;
    }

    /* Mega Menu Dropdown Grid Container (Inherits Header Theme Colors) */
    .header-row .nav-menu .is-mega-menu > ul,
    .header-row .nav-menu .mega-menu > ul,
    .header-row .nav-menu .is-mega-menu > ul.mega-menu-grid,
    .headerSix .header-row .nav-menu .is-mega-menu > ul,
    .headerSix .header-row .nav-menu .mega-menu > ul,
    .headerThree .header-row .nav-menu .is-mega-menu > ul,
    .headerThree .header-row .nav-menu .mega-menu > ul,
    .headerTwo .header-row .nav-menu .is-mega-menu > ul,
    .headerTwo .header-row .nav-menu .mega-menu > ul,
    .headerFour .header-row .nav-menu .is-mega-menu > ul,
    .headerFour .header-row .nav-menu .mega-menu > ul,
    .headerFive .header-row .nav-menu .is-mega-menu > ul,
    .headerFive .header-row .nav-menu .mega-menu > ul,
    #header .header-row .nav-menu .is-mega-menu > ul,
    #header .header-row .nav-menu .mega-menu > ul {
        display: grid !important;
        position: absolute !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        top: calc(100% + 14px) !important;
        z-index: 99999 !important;
        padding: 30px 38px !important;
        background-color: var(--h6-submenu-bg, var(--cs-header-submenu-bg, #ffffff)) !important;
        border: 1px solid rgba(125, 125, 125, 0.16) !important;
        border-radius: 14px !important;
        box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22), 0 4px 14px rgba(0, 0, 0, 0.08) !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transition: opacity 0.28s cubic-bezier(0.16, 1, 0.3, 1), top 0.28s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.28s !important;
        grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important;
        gap: 28px 36px !important;
        box-sizing: border-box !important;
        margin: 0 !important;
        backdrop-filter: blur(16px);
        -webkit-backdrop-filter: blur(16px);
    }

    /* Mega Menu Hover Active State */
    .header-row .nav-menu .is-mega-menu:hover > ul,
    .header-row .nav-menu .mega-menu:hover > ul,
    .header-row .nav-menu .is-mega-menu:hover > ul.mega-menu-grid,
    .headerSix .header-row .nav-menu .is-mega-menu:hover > ul,
    .headerSix .header-row .nav-menu .mega-menu:hover > ul,
    .headerThree .header-row .nav-menu .is-mega-menu:hover > ul,
    .headerThree .header-row .nav-menu .mega-menu:hover > ul,
    .headerTwo .header-row .nav-menu .is-mega-menu:hover > ul,
    .headerTwo .header-row .nav-menu .mega-menu:hover > ul,
    .headerFour .header-row .nav-menu .is-mega-menu:hover > ul,
    .headerFour .header-row .nav-menu .mega-menu:hover > ul,
    .headerFive .header-row .nav-menu .is-mega-menu:hover > ul,
    .headerFive .header-row .nav-menu .mega-menu:hover > ul,
    #header .header-row .nav-menu .is-mega-menu:hover > ul,
    #header .header-row .nav-menu .mega-menu:hover > ul {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        top: 100% !important;
    }

    /* Column Width Presets */
    .header-row .nav-menu li.mega-2-col > ul,
    #header .header-row .nav-menu li.mega-2-col > ul {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .header-row .nav-menu li.mega-3-col > ul,
    #header .header-row .nav-menu li.mega-3-col > ul {
        grid-template-columns: repeat(3, 1fr) !important;
    }
    .header-row .nav-menu li.mega-4-col > ul,
    #header .header-row .nav-menu li.mega-4-col > ul {
        grid-template-columns: repeat(4, 1fr) !important;
    }
    .header-row .nav-menu li.mega-5-col > ul,
    #header .header-row .nav-menu li.mega-5-col > ul {
        grid-template-columns: repeat(5, 1fr) !important;
    }

    /* Mega Column (Level 2) */
    .header-row .nav-menu .is-mega-menu > ul > li,
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li,
    #header .header-row .nav-menu .is-mega-menu > ul > li {
        min-width: 0 !important;
        list-style: none !important;
        padding: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        background: transparent !important;
        position: static !important;
    }

    /* Mega Column Header (Level 2 Link / Button) — dynamic header colors */
    .header-row .nav-menu .is-mega-menu > ul > li > .opener > a,
    .header-row .nav-menu .is-mega-menu > ul > li > .opener > button,
    .header-row .nav-menu .is-mega-menu > ul > li > a,
    .header-row .nav-menu .is-mega-menu > ul > li > button,
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li > .opener > a,
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li > .opener > button,
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li > a,
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li > button,
    #header .header-row .nav-menu .is-mega-menu > ul > li > .opener > a,
    #header .header-row .nav-menu .is-mega-menu > ul > li > .opener > button,
    #header .header-row .nav-menu .is-mega-menu > ul > li > a,
    #header .header-row .nav-menu .is-mega-menu > ul > li > button {
        font-weight: 700 !important;
        font-size: 1.02rem !important;
        text-transform: uppercase !important;
        letter-spacing: 0.04em !important;
        color: var(--h6-menu-main, var(--cs-header-nav-link, var(--primcol, #0f172a))) !important;
        padding: 0 0 8px 0 !important;
        border-bottom: 2px solid var(--h6-menu-hover, var(--cs-header-nav-hover, var(--seccol, #4B83FF))) !important;
        margin-bottom: 12px !important;
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
        text-decoration: none !important;
        background: transparent !important;
    }

    .header-row .nav-menu .is-mega-menu > ul > li > .opener > a:hover,
    .header-row .nav-menu .is-mega-menu > ul > li > .opener > button:hover,
    .header-row .nav-menu .is-mega-menu > ul > li > a:hover,
    .header-row .nav-menu .is-mega-menu > ul > li > button:hover,
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li > .opener > a:hover,
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li > .opener > button:hover,
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li > a:hover,
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li > button:hover {
        color: var(--h6-menu-hover, var(--cs-header-nav-hover, var(--seccol, #4B83FF))) !important;
    }

    /* Sub-links inside Mega Column (Level 3) — dynamic header colors */
    .header-row .nav-menu .is-mega-menu > ul > li > ul,
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li > ul,
    #header .header-row .nav-menu .is-mega-menu > ul > li > ul {
        position: static !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        box-shadow: none !important;
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
        transform: none !important;
        margin: 0 !important;
    }

    .header-row .nav-menu .is-mega-menu > ul > li > ul > li,
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li > ul > li,
    #header .header-row .nav-menu .is-mega-menu > ul > li > ul > li {
        min-width: 0 !important;
        padding: 0 !important;
        position: static !important;
        background: transparent !important;
    }

    .header-row .nav-menu .is-mega-menu > ul > li > ul a,
    .header-row .nav-menu .is-mega-menu > ul > li > ul button,
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li > ul a,
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li > ul button,
    #header .header-row .nav-menu .is-mega-menu > ul > li > ul a,
    #header .header-row .nav-menu .is-mega-menu > ul > li > ul button {
        padding: 4px 0 !important;
        font-size: 0.94rem !important;
        font-weight: 500 !important;
        text-transform: none !important;
        color: var(--h6-menu-main, var(--cs-header-nav-link, #475569)) !important;
        opacity: 0.88;
        transition: all 0.2s ease !important;
        display: inline-flex !important;
        align-items: center !important;
        text-decoration: none !important;
        background: transparent !important;
    }

    .header-row .nav-menu .is-mega-menu > ul > li > ul a:hover,
    .header-row .nav-menu .is-mega-menu > ul > li > ul button:hover,
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li > ul a:hover,
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li > ul button:hover {
        color: var(--h6-menu-hover, var(--cs-header-nav-hover, var(--seccol, #4B83FF))) !important;
        opacity: 1;
        transform: translateX(5px) !important;
    }

    /* Column divider borders */
    .header-row .nav-menu .is-mega-menu > ul > li:not(:last-child),
    .headerSix .header-row .nav-menu .is-mega-menu > ul > li:not(:last-child) {
        border-right: 1px solid rgba(125, 125, 125, 0.12) !important;
        padding-right: 20px !important;
    }
}

/* Header Six & Header Two Symmetrical Centering */
.headerSix .main-row,
.headerTwo .main-row {
    display: flex !important;
    justify-content: center !important;
}

.headerSix .main-row .main-menu,
.headerTwo .main-row .main-menu {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
}

.headerSix .main-row .nav-menu,
.headerTwo .main-row .nav-menu {
    display: flex !important;
    justify-content: center !important;
    margin: 0 auto !important;
}

.headerSix .main-row .nav-menu > ul,
.headerTwo .main-row .nav-menu > ul {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.headerSix .header-row .nav-menu > ul > li:first-child,
.headerTwo .header-row .nav-menu > ul > li:first-child {
    padding-left: 13px !important;
}

/* --- Full Screen Menu Overlay --- */
.offcanvas.site-mobile-fullscreen,
.offcanvas.offcanvas-fullscreen {
    position: fixed !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    height: 100dvh !important;
    max-width: 100% !important;
    max-height: 100% !important;
    max-height: 100dvh !important;
    border: none !important;
    border-radius: 0 !important;
    z-index: 999999 !important;
    backdrop-filter: blur(28px) saturate(180%);
    -webkit-backdrop-filter: blur(28px) saturate(180%);
    background: #091224f5 !important;
    color: #ffffff !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.45s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.site-mobile-fullscreen .offcanvas-header {
    padding: 24px 40px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.site-mobile-fullscreen .btn-close.btn-close-lg {
    width: 2.5rem;
    height: 2.5rem;
    padding: 0.5rem;
    background-size: 1.4rem;
    filter: invert(1) brightness(100%);
    opacity: 0.85;
    transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.2s ease;
}

.site-mobile-fullscreen .btn-close.btn-close-lg:hover {
    transform: rotate(90deg) scale(1.15);
    opacity: 1;
}

/* Fullscreen Menu Editorial Typography */
.site-mobile-fullscreen .fullscreen-nav-menu ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.site-mobile-fullscreen .fullscreen-nav-menu > ul > li {
    margin-bottom: 8px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.site-mobile-fullscreen .fullscreen-nav-menu > ul > li > .opener > a,
.site-mobile-fullscreen .fullscreen-nav-menu > ul > li > .opener > button,
.site-mobile-fullscreen .fullscreen-nav-menu > ul > li > a,
.site-mobile-fullscreen .fullscreen-nav-menu > ul > li > button {
    font-size: clamp(1.4rem, 2.8vw, 2.2rem) !important;
    font-weight: 700 !important;
    letter-spacing: -0.02em;
    padding: 10px 0 !important;
    color: #ffffff !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    display: inline-block;
    text-decoration: none;
    background: transparent !important;
}

.site-mobile-fullscreen .fullscreen-nav-menu > ul > li:hover > .opener > a,
.site-mobile-fullscreen .fullscreen-nav-menu > ul > li:hover > .opener > button,
.site-mobile-fullscreen .fullscreen-nav-menu > ul > li:hover > a,
.site-mobile-fullscreen .fullscreen-nav-menu > ul > li:hover > button {
    color: var(--seccol, #4B83FF) !important;
    transform: translateX(10px);
}

/* Fullscreen Submenus */
.site-mobile-fullscreen .nav-menu .drop-down ul {
    position: static !important;
    padding-left: 20px !important;
    box-shadow: none !important;
    background: transparent !important;
    border-left: 2px solid rgba(255, 255, 255, 0.2) !important;
    margin: 6px 0 16px 10px !important;
    border-radius: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.site-mobile-fullscreen .nav-menu .drop-down ul a,
.site-mobile-fullscreen .nav-menu .drop-down ul button {
    font-size: clamp(1rem, 1.5vw, 1.25rem) !important;
    font-weight: 500 !important;
    color: rgba(255, 255, 255, 0.8) !important;
    padding: 6px 0 !important;
    transition: all 0.2s ease;
    background: transparent !important;
}

.site-mobile-fullscreen .nav-menu .drop-down ul a:hover,
.site-mobile-fullscreen .nav-menu .drop-down ul button:hover {
    color: var(--seccol, #4B83FF) !important;
    transform: translateX(6px);
}

/* Fullscreen Sidebar Area */
@media (min-width: 992px) {
    .border-start-lg {
        border-left: 1px solid rgba(255, 255, 255, 0.12) !important;
    }
}

.site-mobile-fullscreen .fullscreen-search-box input[type="search"],
.site-mobile-fullscreen .fullscreen-search-box input[type="text"] {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50px;
    padding: 12px 24px;
    color: #ffffff;
    font-size: 1rem;
    width: 100%;
    transition: all 0.3s ease;
}

.site-mobile-fullscreen .fullscreen-search-box input:focus {
    background: rgba(255, 255, 255, 0.16);
    border-color: var(--seccol, #4B83FF);
    outline: none;
    box-shadow: 0 0 0 3px rgba(75, 131, 255, 0.3);
}

.site-mobile-fullscreen .top-row-info a {
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 1.05rem;
    font-weight: 500;
    transition: color 0.2s ease;
}

.site-mobile-fullscreen .top-row-info a:hover {
    color: var(--seccol, #4B83FF) !important;
}

/* --- Side Offcanvas Drawer Menu (Desktop & Mobile) --- */
.offcanvas.site-mobile-drawer {
    width: 380px !important;
    max-width: 90vw !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15) !important;
}

.site-mobile-drawer .offcanvas-header {
    padding: 1.25rem 1.5rem !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
}

.site-mobile-drawer .offcanvas-body {
    padding: 1.5rem !important;
}

.site-mobile-drawer .mobile-nav > ul > li {
    margin-bottom: 6px;
    border-radius: 8px;
    transition: background 0.2s ease;
}

.site-mobile-drawer .mobile-nav > ul > li:hover {
    background: rgba(0, 0, 0, 0.03);
}

.site-mobile-drawer .mobile-nav > ul > li > .opener,
.site-mobile-drawer .mobile-nav > ul > li > a,
.site-mobile-drawer .mobile-nav > ul > li > button {
    padding: 10px 14px !important;
    font-weight: 600 !important;
    font-size: 1.05rem !important;
}

/* --- Mega Drilldown Mobile Menu --- */
.offcanvas.site-mobile-drilldown {
    width: 440px !important;
    max-width: 92vw !important;
}

.site-mobile-drilldown .mobile-nav > ul > li {
    margin-bottom: 8px;
    border-radius: 10px;
    background: rgba(0, 0, 0, 0.025);
    border: 1px solid rgba(0, 0, 0, 0.06);
    overflow: hidden;
    transition: background 0.2s ease, border-color 0.2s ease;
}

.site-mobile-drilldown .mobile-nav > ul > li:hover {
    background: rgba(0, 0, 0, 0.04);
    border-color: rgba(0, 0, 0, 0.12);
}

.site-mobile-drilldown .mobile-nav > ul > li > .opener,
.site-mobile-drilldown .mobile-nav > ul > li > a,
.site-mobile-drilldown .mobile-nav > ul > li > button {
    padding: 12px 18px !important;
    font-weight: 600 !important;
    font-size: 1.05rem !important;
}

.site-mobile-drilldown .mobile-nav .drop-down ul {
    background: rgba(0, 0, 0, 0.02) !important;
    padding: 12px 16px !important;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)) !important;
    gap: 8px 10px !important;
}

.site-mobile-drilldown .mobile-nav .drop-down ul li {
    min-width: 0 !important;
    list-style: none !important;
}

.site-mobile-drilldown .mobile-nav .drop-down ul a,
.site-mobile-drilldown .mobile-nav .drop-down ul button {
    padding: 8px 12px !important;
    font-size: 0.9rem !important;
    border-radius: 6px;
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.06);
    display: block !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
    transition: transform 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.site-mobile-drilldown .mobile-nav .drop-down ul a:hover,
.site-mobile-drilldown .mobile-nav .drop-down ul button:hover {
    background: var(--seccol, #4B83FF) !important;
    color: #ffffff !important;
    transform: translateY(-2px);
}

/* Desktop Hamburger Toggle Button */
.header-mobile-toggle {
    cursor: pointer;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.header-mobile-toggle:hover {
    transform: scale(1.1);
    opacity: 0.9;
}

/* ==========================================================================
   FEED LOOPS & ARCHIVE CARDS (Theme System & Custom Contrast)
   ========================================================================== */
.feedloop_featimgontop .feedpost-card,
.feedloop_horizontal .feedpost-card,
.feedloop_minimal .feedpost-minimal,
.feedloop_vertical .feedpost-vertical {
    background-color: var(--feed-card-bg, #ffffff) !important;
    color: var(--feed-card-text, #334155) !important;
}

.feedloop_featimgontop h3,
.feedloop_featimgontop h3 a,
.feedloop_featimgontop .entry-title,
.feedloop_featimgontop .entry-title a,
.feedloop_featimgontop a.feedpost-main-link,
.feedloop_featimgontop a.feedpost-main-link h3,
.feedloop_horizontal h3,
.feedloop_horizontal h3 a,
.feedloop_horizontal .section-title h3,
.feedloop_horizontal .section-title h3 a,
.feedloop_horizontal .entry-title,
.feedloop_horizontal .entry-title a,
.feedloop_minimal h3,
.feedloop_minimal h3 a,
.feedloop_minimal .entry-title,
.feedloop_minimal .entry-title a,
.feedloop_vertical h3,
.feedloop_vertical h3 a,
.feedloop_vertical .entry-title,
.feedloop_vertical .entry-title a {
    color: var(--feed-card-title, #081e46) !important;
}

.feedloop_featimgontop h3:hover a,
.feedloop_featimgontop .entry-title:hover a,
.feedloop_featimgontop a.feedpost-main-link:hover h3,
.feedloop_horizontal .section-title h3 a:hover,
.feedloop_horizontal .entry-title a:hover,
.feedloop_minimal .entry-title a:hover,
.feedloop_vertical .entry-title a:hover {
    color: var(--linkcol, #4B83FF) !important;
}

.feedloop_featimgontop .excerpt,
.feedloop_featimgontop .excerpt p,
.feedloop_horizontal .excerpt,
.feedloop_horizontal .excerpt p,
.feedloop_horizontal .section-description,
.feedloop_horizontal .section-description p,
.feedloop_minimal .excerpt,
.feedloop_minimal .excerpt p,
.feedloop_vertical .excerpt,
.feedloop_vertical .excerpt p,
article .feedpost .excerpt,
article .feedpost .excerpt p,
article .feedpost-card .excerpt,
article .feedpost-card .excerpt p,
.excerpt,
.excerpt p {
    color: var(--feed-card-title, #081e46) !important;
}

.feedloop_featimgontop .feedpost-date,
.feedloop_featimgontop .feedpost-date time,
.feedloop_featimgontop .feedpost-date span,
.feedloop_featimgontop .clean-slate-reading-time,
.feedloop_horizontal .feedpost-date,
.feedloop_horizontal .feedpost-date time,
.feedloop_horizontal .feedpost-date span,
.feedloop_horizontal .clean-slate-reading-time,
.feedloop_minimal .feedpost-meta,
.feedloop_minimal .feedpost-meta time,
.feedloop_minimal .feedpost-meta span,
.feedloop_minimal .clean-slate-reading-time,
.feedloop_vertical .feedpost-date,
.feedloop_vertical .feedpost-date time,
.feedloop_vertical .feedpost-date span,
.feedloop_vertical .clean-slate-reading-time,
article .feedpost-date,
article .feedpost-date time,
article .feedpost-date span,
article .feedpost-date .clean-slate-reading-time {
    color: var(--feed-card-text, #64748b) !important;
    opacity: 0.9;
}

/* Full Image Card (Overlay Layout) */
.feedloop_full_img .feedpost-fullimg-card {
    min-height: 340px;
    background: #0f172a;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease;
}

.feedloop_full_img .feedpost-fullimg-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 32px rgba(0, 0, 0, 0.25) !important;
}

.feedloop_full_img .feedpost-fullimg-bg img {
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.feedloop_full_img .feedpost-fullimg-card:hover .feedpost-fullimg-bg img {
    transform: scale(1.06);
}

.feedloop_full_img .feedpost-fullimg-overlay {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.4) 40%, rgba(0, 0, 0, 0.9) 100%);
    pointer-events: none;
}

.feedloop_full_img .feedpost-fullimg-content .entry-title a {
    color: #ffffff !important;
    transition: color 0.2s ease;
}

.feedloop_full_img .feedpost-fullimg-content .entry-title a:hover {
    color: var(--third-prmbg, #38bdf8) !important;
}

/* Feed Card Categories & Badges */
.btn-cat,
.feed-cat,
.singlepost-cat,
article .feedpost .categories a,
article .feedpost .categories a.feed-cat,
article .feedpost .categories a.btn-cat,
article .feedpost-card .categories a,
.feedloop_featimgontop .categories a,
.feedloop_horizontal .categories a,
.feedloop_minimal .categories a,
.feedloop_vertical .categories a,
.categories a.btn-cat,
.categories a.feed-cat {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.3rem 0.85rem;
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.2;
    border-radius: 999px;
    background-color: var(--feed-card-cat-bg, #f1f5f9) !important;
    color: var(--feed-card-cat-color, #0f172a) !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    text-decoration: none !important;
    transition: all 0.2s ease-in-out;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
    min-height: auto;
}

.btn-cat:hover,
.btn-cat:focus,
.feed-cat:hover,
.feed-cat:focus,
.singlepost-cat:hover,
.singlepost-cat:focus,
article .feedpost .categories a:hover,
article .feedpost-card .categories a:hover,
.feedloop_featimgontop .categories a:hover,
.feedloop_horizontal .categories a:hover,
.feedloop_minimal .categories a:hover,
.feedloop_vertical .categories a:hover,
.categories a.btn-cat:hover,
.categories a.feed-cat:hover {
    background-color: var(--btn-prmbg, #081e46) !important;
    color: var(--btn-prmcol, #ffffff) !important;
    border-color: transparent !important;
    transform: translateY(-1px);
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
}

/* Inside Full Image Overlay Card */
.feedloop_full_img .btn-cat,
.feedloop_full_img .feed-cat,
.feedloop_full_img .categories a {
    background-color: rgba(255, 255, 255, 0.2) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, 0.35) !important;
    backdrop-filter: blur(8px);
}

.feedloop_full_img .btn-cat:hover,
.feedloop_full_img .feed-cat:hover,
.feedloop_full_img .categories a:hover {
    background-color: #ffffff !important;
    color: #081e46 !important;
}

/* ==========================================================================
   Editorial Split 2-Column Fullscreen Menu (Volta Skai Architecture)
   ========================================================================== */
.clean-slate-editorial-split-modal {
	height: 100% !important;
	height: 100dvh !important;
	width: 100% !important;
	max-width: 100% !important;
	background: rgba(10, 8, 6, 0.4) !important;
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	border: none !important;
	z-index: 100000 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

.clean-slate-editorial-split-modal .offcanvas-body {
	padding: 0 !important;
	height: 100% !important;
}

/* Minimal Close Button in Top-Right Corner */
.clean-slate-editorial-close-icon-btn {
	position: absolute;
	top: 2rem;
	right: 2.25rem;
	width: 44px;
	height: 44px;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.12);
	color: rgba(255, 255, 255, 0.7);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 100;
	cursor: pointer;
	transition: all 0.25s ease;
}

.clean-slate-editorial-close-icon-btn:hover {
	background: rgba(255, 255, 255, 0.15);
	color: #ffffff;
	border-color: rgba(255, 255, 255, 0.3);
	transform: scale(1.05);
}

.clean-slate-editorial-split-container {
	display: flex;
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
}

/* --- Fullscreen Ambient Texture / Background Layer (Spans 100% of Screen) --- */
.clean-slate-editorial-fullscreen-bg,
.clean-slate-editorial-silk-bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 0;
	pointer-events: none;
	background-image: radial-gradient(circle at 35% 45%, #5e3f2e 0%, #362218 50%, #1a100a 100%);
}

.clean-slate-editorial-silk-overlay {
	display: none !important;
}

/* --- Left Column: Logo, Contacts & Sales Info --- */
.clean-slate-editorial-left-column {
	flex: 0 0 50%;
	width: 50%;
	height: 100%;
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 3rem clamp(200px, 16vw, 270px) 3rem 4rem;
	overflow: hidden;
	background-color: var(--cs-edt-left-shade, rgba(43, 31, 24, 0.75));
}

.clean-slate-editorial-sales-center {
	position: relative;
	z-index: 5;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	max-width: 320px;
	width: 100%;
	margin-right: 0;
}

.clean-slate-editorial-brand-heading {
	margin-bottom: 2rem;
}

.clean-slate-editorial-brand-logo {
	display: inline-block;
	text-decoration: none;
}

.clean-slate-editorial-brand-logo img,
.clean-slate-editorial-brand-logo svg {
	max-height: 52px;
	width: auto;
	color: #ffffff;
}

.clean-slate-editorial-sales-title {
	font-size: 1.35rem;
	font-weight: 400;
	color: rgba(255, 255, 255, 0.9);
	margin: 0 0 2rem;
	letter-spacing: -0.01em;
}

.clean-slate-editorial-dept-list {
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
	width: 100%;
}

.clean-slate-editorial-dept-block {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.2rem;
}

.clean-slate-editorial-dept-tag {
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.5);
	margin-bottom: 0.25rem;
}

.clean-slate-editorial-dept-person {
	font-size: 0.95rem;
	font-weight: 500;
	color: #ffffff;
	margin-bottom: 0.15rem;
}

.clean-slate-editorial-dept-link {
	font-size: 0.88rem;
	color: rgba(255, 255, 255, 0.75);
	text-decoration: underline;
	text-underline-offset: 3px;
	transition: color 0.2s ease;
}

.clean-slate-editorial-dept-link:hover {
	color: var(--cs-edt-accent, #dfc0a2);
}

/* --- Left Column: Site Contacts, Socials & Language (Desktop) --- */
.clean-slate-editorial-site-contacts {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.65rem;
	margin-bottom: 2rem;
	text-align: center;
}

.clean-slate-editorial-contact-item {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.9rem;
	color: rgba(255, 255, 255, 0.85);
}

.clean-slate-editorial-contact-item .contact-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--cs-edt-accent, #dfc0a2);
	flex-shrink: 0;
}

.clean-slate-editorial-contact-item .contact-link {
	color: rgba(255, 255, 255, 0.85);
	text-decoration: none;
	transition: color 0.2s ease;
}

.clean-slate-editorial-contact-item .contact-link:hover {
	color: var(--cs-edt-accent, #dfc0a2);
}

.clean-slate-editorial-desktop-social-block,
.clean-slate-editorial-desktop-lang-block {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5rem;
	margin-top: 2rem;
	text-align: center;
}

.clean-slate-editorial-side-label {
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--cs-edt-accent, #dfc0a2);
}

.clean-slate-editorial-desktop-socials .headersocial.social {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.75rem;
	padding: 0 !important;
	margin: 0;
}

.clean-slate-editorial-desktop-socials .headersocial.social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.12);
	text-decoration: none;
	transition: all 0.25s ease;
}

.clean-slate-editorial-desktop-socials .headersocial.social a:hover {
	background: rgba(255, 255, 255, 0.15);
	border-color: var(--cs-edt-accent, #dfc0a2);
	transform: translateY(-2px);
}

.clean-slate-editorial-desktop-socials .headersocial.social a svg {
	width: 16px;
	height: 16px;
}

.clean-slate-editorial-desktop-lang-switch {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
}

/* --- Center Seam: Floating Portrait Preview Card (40px Radius & WebGL Liquid) --- */
.clean-slate-editorial-floating-stage {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 25;
	pointer-events: none;
	perspective: 1200px;
}

/* Ambient Radial Glow behind the middle card */
.clean-slate-editorial-floating-stage::before {
	content: "";
	position: absolute;
	inset: 6% 3%;
	z-index: 0;
	pointer-events: none;
	border-radius: 40px;
	background: radial-gradient(
		ellipse 70% 65% at 50% 45%,
		color-mix(in srgb, var(--cs-edt-accent, #dfc0a2) 32%, transparent),
		transparent 72%
	);
	filter: blur(28px);
	opacity: 0.85;
	transition: opacity 0.5s ease;
}

.clean-slate-editorial-floating-card {
	width: clamp(280px, 22vw, 390px);
	height: clamp(440px, 58vh, 560px);
	aspect-ratio: 3 / 4;
	max-width: 420px;
	border-radius: 40px;
	overflow: hidden;
	position: relative;
	border: 1px solid rgba(255, 255, 255, 0.15);
	box-shadow:
		0 28px 65px rgba(0, 0, 0, 0.65),
		0 0 60px color-mix(in srgb, var(--cs-edt-accent, #dfc0a2) 22%, transparent),
		0 0 100px color-mix(in srgb, var(--cs-edt-accent, #dfc0a2) 12%, transparent);
	background: #0e0e0e;
	z-index: 1;
	transform-style: preserve-3d;
	will-change: transform;
}

/* --- Frameless Floating Logo / SVG Mode (Transparent, No Box) --- */
.clean-slate-editorial-floating-stage.is-frameless::before {
	opacity: 0.35;
	inset: 16% 12%;
}

.clean-slate-editorial-floating-card.is-frameless {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

.clean-slate-editorial-floating-card.is-frameless .clean-slate-editorial-canvas {
	border-radius: 0;
	filter: drop-shadow(0 20px 35px rgba(0, 0, 0, 0.45));
}

.clean-slate-editorial-floating-card.is-frameless .clean-slate-editorial-card-layer {
	border-radius: 0;
	background-position: center;
	background-repeat: no-repeat;
	filter: drop-shadow(0 20px 35px rgba(0, 0, 0, 0.45));
}

.clean-slate-editorial-floating-card.is-frameless .clean-slate-editorial-card-shine,
.clean-slate-editorial-floating-card.is-frameless .clean-slate-editorial-card-overlay {
	display: none !important;
}

.clean-slate-editorial-canvas {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
	z-index: 2;
	pointer-events: none;
	border-radius: 39px;
}

.clean-slate-editorial-card-layer {
	position: absolute;
	inset: -10px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	will-change: transform, opacity, clip-path;
}

.clean-slate-editorial-card-layer.is-contain,
.clean-slate-editorial-floating-card.is-contain .clean-slate-editorial-card-layer {
	background-size: contain !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
}

.clean-slate-editorial-card-layer.is-next {
	opacity: 0;
	z-index: 2;
}

.clean-slate-editorial-card-layer.is-active {
	opacity: 1;
	z-index: 1;
}

.clean-slate-editorial-card-shine {
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.14) 0%, transparent 55%);
	pointer-events: none;
	z-index: 4;
}

.clean-slate-editorial-card-overlay {
	position: absolute;
	inset: 0;
	z-index: 3;
	pointer-events: none;
	border-radius: 39px;
	background:
		linear-gradient(to top, rgba(0, 0, 0, 0.45) 0%, transparent 45%),
		linear-gradient(135deg, color-mix(in srgb, var(--cs-edt-accent, #dfc0a2) 16%, transparent) 0%, transparent 50%);
}

/* --- Right Column: Navigation, Inline Languages & Secondary Stack --- */
.clean-slate-editorial-right-column {
	flex: 0 0 50%;
	width: 50%;
	height: 100%;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 3.5rem 4rem 3.5rem clamp(200px, 16vw, 270px);
	background: var(--cs-edt-bg, #231a15);
	-webkit-backdrop-filter: blur(20px);
	backdrop-filter: blur(20px);
	overflow-y: auto;
}

.clean-slate-editorial-nav-box {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	max-width: 420px;
	width: 100%;
}

.clean-slate-editorial-lang-inline {
	display: flex;
	align-items: center;
	gap: 0.85rem;
	margin-bottom: 1.5rem;
}

.clean-slate-editorial-lang-text {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.45);
	text-decoration: none;
	transition: color 0.2s ease;
}

.clean-slate-editorial-lang-text:hover,
.clean-slate-editorial-lang-text.is-active {
	color: #ffffff;
}

.clean-slate-editorial-primary-list {
	list-style: none;
	padding: 0;
	margin: 0 0 2.5rem;
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	width: 100%;
}

.clean-slate-editorial-primary-item {
	position: relative;
}

.clean-slate-editorial-primary-link {
	font-size: clamp(1.2rem, 1.65vw, 1.75rem);
	font-weight: 500;
	letter-spacing: -0.015em;
	line-height: 1.35;
	color: rgba(255, 255, 255, 0.7);
	text-decoration: none;
	display: inline-block;
	transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.clean-slate-editorial-primary-link:hover,
.clean-slate-editorial-primary-item.is-active > .clean-slate-editorial-primary-link {
	color: #ffffff;
	transform: translateX(6px);
}

/* --- Item Row & Accessible Submenu Toggle --- */
.clean-slate-editorial-item-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
}

.clean-slate-editorial-sub-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	min-width: 36px;
	min-height: 36px;
	padding: 0;
	margin-left: 0.5rem;
	background: transparent;
	border: 1px solid transparent;
	border-radius: 50%;
	color: rgba(255, 255, 255, 0.65);
	cursor: pointer;
	flex-shrink: 0;
	transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.clean-slate-editorial-sub-toggle:hover {
	color: var(--cs-edt-accent, #dfc0a2);
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.15);
}

.clean-slate-editorial-sub-toggle:focus-visible {
	outline: 2px solid var(--cs-edt-accent, #dfc0a2);
	outline-offset: 2px;
	color: var(--cs-edt-accent, #dfc0a2);
	background: rgba(255, 255, 255, 0.1);
}

.clean-slate-editorial-sub-toggle .toggle-icon {
	width: 18px;
	height: 18px;
	stroke-width: 2.2;
	transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
	transform-origin: center center;
}

/* Arrow rotation when expanded */
.clean-slate-editorial-primary-item.is-open > .clean-slate-editorial-item-row .clean-slate-editorial-sub-toggle .toggle-icon,
.clean-slate-editorial-item.is-open > .clean-slate-editorial-item-row .clean-slate-editorial-sub-toggle .toggle-icon,
.clean-slate-editorial-sub-toggle[aria-expanded="true"] .toggle-icon {
	transform: rotate(180deg);
	color: var(--cs-edt-accent, #dfc0a2);
}

/* Submenu Smooth Collapsible Container */
.clean-slate-editorial-sub-collapse {
	display: grid;
	grid-template-rows: 0fr;
	opacity: 0;
	visibility: hidden;
	transition: grid-template-rows 0.35s cubic-bezier(0.4, 0, 0.2, 1),
	            opacity 0.3s ease,
	            visibility 0.35s ease;
	width: 100%;
}

.clean-slate-editorial-sub-collapse > .clean-slate-editorial-sub-list {
	overflow: hidden;
}

.clean-slate-editorial-item.is-open > .clean-slate-editorial-sub-collapse,
.clean-slate-editorial-primary-item.is-open > .clean-slate-editorial-sub-collapse,
.clean-slate-editorial-sub-collapse.is-open {
	grid-template-rows: 1fr;
	opacity: 1;
	visibility: visible;
}

/* Submenu List & Indentation */
.clean-slate-editorial-sub-list {
	list-style: none;
	padding: 0.4rem 0 0.5rem 1.25rem;
	margin: 0.25rem 0 0.6rem;
	border-left: 2px solid rgba(255, 255, 255, 0.12);
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
}

.clean-slate-editorial-sub-link {
	font-size: 0.95rem;
	font-weight: 400;
	color: rgba(255, 255, 255, 0.55);
	text-decoration: none;
	display: inline-block;
	transition: color 0.2s ease, transform 0.2s ease;
}

.clean-slate-editorial-sub-link:hover,
.clean-slate-editorial-sub-link:focus-visible,
.clean-slate-editorial-sub-list li.is-active > .clean-slate-editorial-sub-link {
	color: var(--cs-edt-accent, #dfc0a2);
	transform: translateX(4px);
}

.clean-slate-editorial-sub-link:focus-visible {
	outline: 2px solid var(--cs-edt-accent, #dfc0a2);
	outline-offset: 2px;
	border-radius: 2px;
}

.clean-slate-editorial-sub-list .clean-slate-editorial-sub-list {
	padding-left: 1rem;
	margin-top: 0.25rem;
	margin-bottom: 0.25rem;
	border-left-color: rgba(255, 255, 255, 0.08);
}

.clean-slate-editorial-secondary-stack {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
	width: 100%;
}

.clean-slate-editorial-secondary-stack a {
	font-size: 0.72rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.4);
	text-decoration: none;
	transition: color 0.2s ease;
}

.clean-slate-editorial-secondary-stack a:hover {
	color: #ffffff;
}

.clean-slate-editorial-socials {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin-top: 1.5rem;
}

.clean-slate-editorial-social-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.12);
	color: rgba(255, 255, 255, 0.7);
	text-decoration: none;
	transition: all 0.25s ease;
}

.clean-slate-editorial-social-btn:hover {
	background: #ffffff;
	color: #231a15;
	transform: translateY(-2px);
}

.clean-slate-editorial-social-btn svg {
	fill: currentColor;
}

/* --- Mobile / Tablet Responsiveness (Screenshot 2 Architecture) --- */
@media (max-width: 991.98px) {
	.clean-slate-editorial-split-modal {
		display: flex !important;
		flex-direction: column !important;
		overflow: hidden !important;
	}

	/* Top Mobile Header Bar: Logo on left, Circular Close on right */
	.clean-slate-editorial-mobile-header {
		display: flex !important;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		padding: 1.15rem 1.5rem;
		flex-shrink: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.08);
		background-color: transparent;
		z-index: 20;
	}

	.clean-slate-editorial-mobile-logo {
		display: inline-flex;
		align-items: center;
		text-decoration: none;
	}

	.clean-slate-editorial-mobile-logo img,
	.clean-slate-editorial-mobile-logo svg {
		max-height: 38px;
		width: auto;
		object-fit: contain;
		display: block;
	}

	.clean-slate-editorial-mobile-close {
		width: 40px;
		height: 40px;
		border-radius: 50%;
		border: 1px solid rgba(255, 255, 255, 0.2);
		background: rgba(255, 255, 255, 0.05);
		color: #ffffff;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		padding: 0;
		cursor: pointer;
		transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
	}

	.clean-slate-editorial-mobile-close:hover,
	.clean-slate-editorial-mobile-close:focus {
		background: rgba(255, 255, 255, 0.15);
		border-color: rgba(255, 255, 255, 0.4);
		color: #ffffff;
		outline: none;
		transform: scale(1.05);
	}

	/* Scrollable Container on Mobile */
	.clean-slate-editorial-split-container {
		flex: 1 1 auto;
		display: flex;
		flex-direction: column;
		width: 100%;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		padding: 0;
	}

	/* Completely hide floating card stage & desktop left column on mobile */
	.clean-slate-editorial-floating-stage,
	.clean-slate-editorial-left-column {
		display: none !important;
	}

	/* Right Column holds the full menu & mobile footer */
	.clean-slate-editorial-right-column {
		width: 100%;
		max-width: 100%;
		flex: 1 1 auto;
		padding: 1rem 1.5rem 2.5rem;
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: stretch;
		background: transparent;
	}

	.clean-slate-editorial-nav-box {
		width: 100%;
		max-width: 100%;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		text-align: left;
		gap: 0;
	}

	/* Hide inline language switch in header area on mobile (rendered in footer) */
	.clean-slate-editorial-nav-box .clean-slate-editorial-lang-inline {
		display: none !important;
	}

	/* Primary Navigation List on Mobile */
	.clean-slate-editorial-primary-nav {
		width: 100%;
	}

	.clean-slate-editorial-primary-list {
		width: 100%;
		display: flex;
		flex-direction: column;
		gap: 0;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.clean-slate-editorial-primary-item {
		width: 100%;
		border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	}

	.clean-slate-editorial-primary-link {
		display: block;
		width: 100%;
		padding: 1.1rem 0;
		font-size: 1.25rem;
		font-weight: 400;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		color: rgba(255, 255, 255, 0.9);
		text-decoration: none;
		transition: color 0.2s ease, padding-left 0.2s ease;
	}

	.clean-slate-editorial-primary-link:hover,
	.clean-slate-editorial-primary-item.is-active > .clean-slate-editorial-primary-link {
		color: var(--cs-edt-accent, #dfc0a2);
		padding-left: 0.35rem;
	}

	/* Submenu Items & Toggle on Mobile */
	.clean-slate-editorial-item-row {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
	}

	.clean-slate-editorial-sub-toggle {
		width: 42px;
		height: 42px;
		min-width: 42px;
		min-height: 42px;
		color: rgba(255, 255, 255, 0.75);
	}

	.clean-slate-editorial-sub-collapse {
		width: 100%;
	}

	.clean-slate-editorial-sub-list {
		display: flex;
		flex-direction: column;
		gap: 0.75rem;
		padding: 0.4rem 0 0.85rem 1.25rem;
		margin: 0.25rem 0 0.5rem;
		border-left: 2px solid rgba(255, 255, 255, 0.18);
		list-style: none;
	}

	.clean-slate-editorial-sub-link {
		font-size: 1.05rem;
		color: rgba(255, 255, 255, 0.75);
		text-decoration: none;
		padding: 0.25rem 0;
		transition: color 0.2s ease;
	}

	.clean-slate-editorial-sub-link:hover {
		color: var(--cs-edt-accent, #dfc0a2);
	}

	/* Secondary Nav Links */
	.clean-slate-editorial-secondary-nav {
		width: 100%;
		margin-top: 1.5rem;
	}

	.clean-slate-editorial-secondary-stack {
		display: flex;
		flex-direction: column;
		gap: 0.75rem;
		margin: 0;
		padding: 0;
		list-style: none;
		align-items: flex-start;
	}

	.clean-slate-editorial-secondary-stack a {
		font-size: 0.82rem;
		letter-spacing: 0.12em;
		text-transform: uppercase;
		color: rgba(255, 255, 255, 0.6);
		text-decoration: none;
		transition: color 0.2s ease;
	}

	.clean-slate-editorial-secondary-stack a:hover {
		color: var(--cs-edt-accent, #dfc0a2);
	}

	/* Mobile Footer: Social Media & Language Switcher (Screenshot 2) */
	.clean-slate-editorial-mobile-footer {
		width: 100%;
		margin-top: 2.25rem;
		padding-top: 1.75rem;
		border-top: 1px solid rgba(255, 255, 255, 0.08);
		display: flex;
		flex-direction: column;
		gap: 1.5rem;
	}

	.clean-slate-editorial-mobile-footer .mobile-footer-block {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 0.75rem;
	}

	.clean-slate-editorial-mobile-footer .mobile-footer-label {
		font-size: 0.72rem;
		font-weight: 600;
		letter-spacing: 0.15em;
		text-transform: uppercase;
		color: var(--cs-edt-accent, #dfc0a2);
	}

	.clean-slate-editorial-mobile-footer .mobile-footer-social {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 0.75rem;
	}

	.clean-slate-editorial-mobile-footer .mobile-footer-social .headersocial.social {
		display: inline-flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 0.75rem;
		padding: 0 !important;
		margin: 0;
	}

	.clean-slate-editorial-mobile-footer .mobile-footer-social .headersocial.social a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 38px;
		height: 38px;
		border-radius: 50%;
		background: rgba(255, 255, 255, 0.05);
		border: 1px solid rgba(255, 255, 255, 0.12);
		text-decoration: none;
		transition: all 0.25s ease;
	}

	.clean-slate-editorial-mobile-footer .mobile-footer-social .headersocial.social a:hover {
		background: rgba(255, 255, 255, 0.15);
		border-color: var(--cs-edt-accent, #dfc0a2);
		transform: translateY(-2px);
	}

	.clean-slate-editorial-mobile-footer .mobile-footer-social .headersocial.social a svg {
		width: 16px;
		height: 16px;
	}

	.clean-slate-editorial-mobile-footer .mobile-footer-lang-switch {
		display: flex;
		align-items: center;
		gap: 0.85rem;
	}

	.clean-slate-editorial-mobile-footer .mobile-footer-lang-switch a {
		font-size: 0.85rem;
		font-weight: 600;
		letter-spacing: 0.1em;
		color: rgba(255, 255, 255, 0.5);
		text-decoration: none;
		transition: color 0.2s ease;
	}

	.clean-slate-editorial-mobile-footer .mobile-footer-lang-switch a:hover,
	.clean-slate-editorial-mobile-footer .mobile-footer-lang-switch a.is-active {
		color: var(--cs-edt-accent, #dfc0a2);
	}
}

/* ==========================================================================
   Lenis Ultra-Smooth Scrolling Engine (https://lenis.dev/)
   ========================================================================== */
html.lenis,
html.lenis body {
	height: auto;
}

.lenis.lenis-smooth {
	scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
	overscroll-behavior: contain;
}

.lenis.lenis-stopped {
	overflow: clip !important;
}

.lenis.lenis-smooth iframe {
	pointer-events: none;
}

/* ==========================================================================
   Creative Motion Suite (Auto-Parallax & Split-Type Reveals)
   ========================================================================== */
[data-parallax] {
	will-change: transform;
	transform: translate3d(0, 0, 0);
}

.cs-split-reveal {
	visibility: visible;
}

.cs-split-reveal .line {
	overflow: hidden !important;
	vertical-align: top;
	display: block;
}

.cs-split-reveal .word {
	display: inline-block;
	transform: translateY(115%);
	opacity: 0;
	transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.5s ease;
	will-change: transform, opacity;
}

.cs-split-reveal.is-revealed .word {
	transform: translateY(0%);
	opacity: 1;
}

/* ==========================================================================
   Universal Creative Motion Modifiers (Parallax, Kinetic, Sticky Stack)
   ========================================================================== */
.cs-sticky-stacked-section {
	position: sticky !important;
	top: 0 !important;
	z-index: 1 !important;
}

.cs-parallax-media-wrap {
	overflow: hidden !important;
	position: relative !important;
}

.cs-parallax-media-wrap img,
.cs-parallax-media-wrap video {
	height: 130% !important;
	object-fit: cover !important;
	position: relative !important;
	top: -15% !important;
	will-change: transform;
}