/***** GLOBAL *****/
:root {
    --primary-color: #260859;
    --headline-color: #1F185A;
    --text-color: #352F60;
    --light-blue: #F9F6FE;
    --br-s: 4px;
    --br-m: 14px;
    --br-l: 28px;
}

::-moz-selection {
    background: var(--primary-color);
    color: #fff;
}

::selection {
    background: var(--primary-color);
    color: #fff;
}

html {
    scroll-behavior: smooth;
}

.container-fluid {
    --bs-gutter-x: 0;
}


body {
    font-family: 'Supreme', sans-serif;
    line-height: 1.7;
    letter-spacing: -0.01125rem;
    font-size: 1.125rem;
    background: #FFFFFF;
    color: var(--text-color);
    -webkit-animation: bodyFadeIn 0.8s;
    animation: bodyFadeIn 0.8s;
}

@-webkit-keyframes bodyFadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes bodyFadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.ct-section>.ct-section-inner-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.ct-section-inner-wrap {
    padding: 90px 40px;
}

.ct-section-inner-wrap,
.header-container {
    max-width: 1400px;
}

.ct-section-inner-wrap {
    margin-left: auto;
    margin-right: auto;
    height: 100%;
    min-height: inherit;
}

.ct-section--margin {
    margin-left: 40px;
    margin-right: 40px;
    width: auto;
}

.ct-section img {
    max-width: 100%;
}

.ct-section--center .ct-section-inner-wrap {
    align-items: center;
    text-align: center;
}

@media only screen and (max-width: 767px) {
    .ct-section-inner-wrap {
        padding: 44px 20px;
    }

    .ct-section--margin {
        margin-left: 20px;
        margin-right: 20px;
    }
}


.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--headline-color);
}

h1 {
    font-size: clamp(3rem, 4vw + 2rem, 5rem);
    letter-spacing: -0.175rem;
    font-weight: 700;
    line-height: 1.1;
    text-wrap: balance;
}

h2,
.h2,
h1.smaller-headline,
.smaller-headline h1 {
    font-size: clamp(2.5rem, 4vw + 1rem, 3rem);
    letter-spacing: -0.125rem;
    line-height: 1.1;
    text-wrap: balance;
}

h3,
.h3,
h2.smaller-headline,
.smaller-headline h2 {
    font-size: clamp(2.3rem, 4vw + 1rem, 3rem);
    letter-spacing: -0.125rem;
    line-height: 1.1;
}

.ct-section-inner-wrap h2 {
    margin-bottom: 2.25rem;
}

.gradient-white-top {
    background: linear-gradient(#FFFFFF, var(--light-blue));
}

.gradient-white-bottom {
    background: linear-gradient(var(--light-blue), #FFFFFF);
}

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

a:hover {
    text-decoration: none;
}


.ct-link-button,
.ct-link-button--transparent,
.btn,
.btn-primary {
    background: linear-gradient(68deg, #E73F38 8.76%, HSL(298.4, 53.4%, 59%) 117.76%, #3DCAFF 100.61%);
    padding: 1.1875rem 2.6875rem;
    position: relative;
    display: inline-block;
    text-align: center;
    text-decoration: none;
    color: #FFF;
    font-size: 1.125rem;
    font-weight: 600;
    letter-spacing: -0.01rem;
    border-radius: 100vw;
    line-height: 1;
    transition: .25s ease-in-out;
    border: 0;
}

.ct-link-button:hover,
.btn:hover,
.btn-primary:hover {
    -webkit-filter: brightness(107%);
    filter: brightness(107%);
    box-shadow: 0px 0px 30px rgba(248, 88, 52, 0.3);
}

.ct-link-button--transparent {
    background: transparent;
    border: 0;
}

.ct-image {
    max-width: 100%;
}

.perex-l {
    font-size: clamp(1.375rem, 2vw, 1.625rem);
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: -0.0175em;

}


/* Podtrzeni odkazu */
.link__underline a,
a.link__underline {
    text-decoration: underline !important;
}

/* Podtrzeni odkazu + nepodrzeni on hover */
.link__underline a:hover,
a.link__underline:hover {
    text-decoration: none !important;
}

/* Nepodtrzeni odkazu */
.link__not-underline a,
.link__not-underline {
    text-decoration: none !important;
    background: unset !important;
}

/* Podtrzeni odkazu pri hover */
.link__underline-hover a:hover,
a.link__underline-hover:hover,
a.link__underline-hover:hover span {
    text-decoration: underline !important;
}


/* Not dragable */
.not-dragable {
    user-drag: none;
    -webkit-user-drag: none;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    pointer-events: none;
}


/***** MENU *****/
header {
    width: 100%;
    z-index: 99;
    position: relative;
    background: #FFF;
}

.header-container {
    padding: 24px 40px;
    margin: 0 auto;
    width: 100%;
    justify-content: space-between !important;
}

.nav-link {
    padding: 0.625rem 1.125rem !important;
    font-size: 1.0625rem;
    font-weight: 500;
    color: var(--primary-color);
}

.nav-link:hover,
.nav-link:focus,
.navbar-nav .nav-link.active,
.navbar-nav .nav-link.show {
    color: var(--primary-color);
    /* color: #e0465b; */
}

.dropdown-toggle::after {
    margin-left: .15em;
    vertical-align: -0.22em;
    border: 0;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMCAyMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE1Ljg3NSA4TDEwIDEzLjg3NUw0LjEyNSA4IiBzdHJva2U9IiMyNjA4NTkiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9zdmc+);
    width: 20px;
    height: 20px;
    transition: .25s ease-in-out;
}

.dropdown-toggle.show::after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.dropdown-menu {
    border: 0;
    padding: 0;
    overflow: hidden;
    box-shadow: 0 0 40px hsla(261.3, 78.9%, 11.2%, 0.15);
}

.dropdown-item {
    padding: 0.5em 1.5em;
    font-weight: 400;
    color: var(--text-color);
}

.dropdown-menu li:first-child .dropdown-item {
    padding-top: .8em;
}

.dropdown-menu li:last-child .dropdown-item {
    padding-bottom: .7em;
}

.dropdown-item:focus,
.dropdown-item:hover {
    color: var(--text-color);
    background-color: #F9F6FE;
}

.ct-link-button--menu {
    background: var(--primary-color) !important;
    font-size: 1.0625rem;
    font-weight: 500;
    padding: 1rem 2.25rem;
    box-shadow: unset;
}

.ct-link-button--menu:hover {
    box-shadow: unset;
    -webkit-filter: brightness(135%);
    filter: brightness(135%);
}

.collapsed .navbar-toggler-icon {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzAiIGhlaWdodD0iMzAiIHZpZXdCb3g9IjAgMCAzMCAzMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTMuNzUgMTJIMjYuMjVDMjYuNTgxNSAxMiAyNi44OTk1IDExLjg2ODMgMjcuMTMzOSAxMS42MzM5QzI3LjM2ODMgMTEuMzk5NSAyNy41IDExLjA4MTUgMjcuNSAxMC43NUMyNy41IDEwLjQxODUgMjcuMzY4MyAxMC4xMDA1IDI3LjEzMzkgOS44NjYxMkMyNi44OTk1IDkuNjMxNyAyNi41ODE1IDkuNSAyNi4yNSA5LjVIMy43NUMzLjQxODQ4IDkuNSAzLjEwMDU0IDkuNjMxNyAyLjg2NjEyIDkuODY2MTJDMi42MzE3IDEwLjEwMDUgMi41IDEwLjQxODUgMi41IDEwLjc1QzIuNSAxMS4wODE1IDIuNjMxNyAxMS4zOTk1IDIuODY2MTIgMTEuNjMzOUMzLjEwMDU0IDExLjg2ODMgMy40MTg0OCAxMiAzLjc1IDEyWk0yNi4yNSAxOEgzLjc1QzMuNDE4NDggMTggMy4xMDA1NCAxOC4xMzE3IDIuODY2MTIgMTguMzY2MUMyLjYzMTcgMTguNjAwNSAyLjUgMTguOTE4NSAyLjUgMTkuMjVDMi41IDE5LjU4MTUgMi42MzE3IDE5Ljg5OTUgMi44NjYxMiAyMC4xMzM5QzMuMTAwNTQgMjAuMzY4MyAzLjQxODQ4IDIwLjUgMy43NSAyMC41SDI2LjI1QzI2LjU4MTUgMjAuNSAyNi44OTk1IDIwLjM2ODMgMjcuMTMzOSAyMC4xMzM5QzI3LjM2ODMgMTkuODk5NSAyNy41IDE5LjU4MTUgMjcuNSAxOS4yNUMyNy41IDE4LjkxODUgMjcuMzY4MyAxOC42MDA1IDI3LjEzMzkgMTguMzY2MUMyNi44OTk1IDE4LjEzMTcgMjYuNTgxNSAxOCAyNi4yNSAxOFoiIGZpbGw9IiMyNjA4NTkiLz4KPC9zdmc+);
}

.navbar-toggler-icon {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIyLjM0OTkgMjAuMDAwNUwyOS41MTY2IDEyLjg1MDVDMjkuODMwNCAxMi41MzY2IDMwLjAwNjcgMTIuMTExIDMwLjAwNjcgMTEuNjY3MUMzMC4wMDY3IDExLjIyMzMgMjkuODMwNCAxMC43OTc2IDI5LjUxNjYgMTAuNDgzOEMyOS4yMDI3IDEwLjE3IDI4Ljc3NzEgOS45OTM2NSAyOC4zMzMyIDkuOTkzNjVDMjcuODg5NCA5Ljk5MzY1IDI3LjQ2MzcgMTAuMTcgMjcuMTQ5OSAxMC40ODM4TDE5Ljk5OTkgMTcuNjUwNUwxMi44NDk5IDEwLjQ4MzhDMTIuNTM2MSAxMC4xNyAxMi4xMTA0IDkuOTkzNjUgMTEuNjY2NiA5Ljk5MzY1QzExLjIyMjcgOS45OTM2NSAxMC43OTcxIDEwLjE3IDEwLjQ4MzIgMTAuNDgzOEMxMC4xNjk0IDEwLjc5NzYgOS45OTMwOCAxMS4yMjMzIDkuOTkzMDggMTEuNjY3MUM5Ljk5MzA4IDEyLjExMSAxMC4xNjk0IDEyLjUzNjYgMTAuNDgzMiAxMi44NTA1TDE3LjY0OTkgMjAuMDAwNUwxMC40ODMyIDI3LjE1MDVDMTAuMzI3IDI3LjMwNTQgMTAuMjAzIDI3LjQ4OTcgMTAuMTE4NCAyNy42OTI4QzEwLjAzMzggMjcuODk1OSA5Ljk5MDIzIDI4LjExMzggOS45OTAyMyAyOC4zMzM4QzkuOTkwMjMgMjguNTUzOCAxMC4wMzM4IDI4Ljc3MTcgMTAuMTE4NCAyOC45NzQ4QzEwLjIwMyAyOS4xNzc5IDEwLjMyNyAyOS4zNjIyIDEwLjQ4MzIgMjkuNTE3MUMxMC42MzgyIDI5LjY3MzMgMTAuODIyNSAyOS43OTczIDExLjAyNTYgMjkuODgyQzExLjIyODcgMjkuOTY2NiAxMS40NDY1IDMwLjAxMDEgMTEuNjY2NiAzMC4wMTAxQzExLjg4NjYgMzAuMDEwMSAxMi4xMDQ0IDI5Ljk2NjYgMTIuMzA3NSAyOS44ODJDMTIuNTEwNiAyOS43OTczIDEyLjY5NSAyOS42NzMzIDEyLjg0OTkgMjkuNTE3MUwxOS45OTk5IDIyLjM1MDVMMjcuMTQ5OSAyOS41MTcxQzI3LjMwNDggMjkuNjczMyAyNy40ODkyIDI5Ljc5NzMgMjcuNjkyMyAyOS44ODJDMjcuODk1NCAyOS45NjY2IDI4LjExMzIgMzAuMDEwMSAyOC4zMzMyIDMwLjAxMDFDMjguNTUzMyAzMC4wMTAxIDI4Ljc3MTEgMjkuOTY2NiAyOC45NzQyIDI5Ljg4MkMyOS4xNzczIDI5Ljc5NzMgMjkuMzYxNiAyOS42NzMzIDI5LjUxNjYgMjkuNTE3MUMyOS42NzI4IDI5LjM2MjIgMjkuNzk2OCAyOS4xNzc5IDI5Ljg4MTQgMjguOTc0OEMyOS45NjYgMjguNzcxNyAzMC4wMDk2IDI4LjU1MzggMzAuMDA5NiAyOC4zMzM4QzMwLjAwOTYgMjguMTEzOCAyOS45NjYgMjcuODk1OSAyOS44ODE0IDI3LjY5MjhDMjkuNzk2OCAyNy40ODk3IDI5LjY3MjggMjcuMzA1NCAyOS41MTY2IDI3LjE1MDVMMjIuMzQ5OSAyMC4wMDA1WiIgZmlsbD0iI0VBNDc2MyIvPgo8L3N2Zz4=);
}


/***** HOMEPAGE *****/
.flashmessage {
    position: fixed;
    z-index: 10;
    right: 20px;
    bottom: 20px;
    margin-left: 20px;
}

/* Hero */
.ct-section--hero {
    border-radius: var(--br-l);
    background-color: var(--primary-color);
    color: #FFFFFF;
    position: relative;
    /*overflow: hidden;*/
}

.ct-section--hero .ct-section-inner-wrap {
    padding-top: 4.25rem;
    padding-bottom: 5.3rem;
}

.ct-section--hero h1,
.ct-section--hero a {
    color: #FFFFFF;
}

.ct-section h1 span,
.ct-section h2 span {
    position: relative;
}

.ct-section h1 span::after,
.ct-section h2 span::after {
    content: '';
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjcyIiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjcyIDE0IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBkPSJNMi45ODE5MiAxMC44MDAzQzEwMy40NjEgMi4yMDMxOSAxNjAuMjQzIDAuMDA0OTQxMjYgMjY5LjM5IDcuMjI4NTgiIHN0cm9rZT0idXJsKCNwYWludDBfbGluZWFyXzkxXzY3MykiIHN0cm9rZS13aWR0aD0iNC44NDExNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+CjxkZWZzPgo8bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MF9saW5lYXJfOTFfNjczIiB4MT0iLTU4LjAyNDciIHkxPSItMS43Mjc4OCIgeDI9IjEwMS41MiIgeTI9IjIzOC4yNDgiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0ZGNUIyOSIvPgo8c3RvcCBvZmZzZXQ9IjAuNTE1NjI1IiBzdG9wLWNvbG9yPSIjRUY3MEIxIi8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzFGQzFGRiIvPgo8L2xpbmVhckdyYWRpZW50Pgo8L2RlZnM+Cjwvc3ZnPg==);
    position: absolute;
    left: 0;
    bottom: -3px;
    width: 100%;
    background-size: contain;
    background-repeat: no-repeat;
    height: 100%;
    z-index: -1;
    background-position: bottom;
}

.ct-section h2 span::after {
    bottom: -5px;
    background-size: 170px;
    z-index: 0;
}

.arrow-down {
    padding-left: 12px;
    padding-top: 12px;
    padding-right: 12px;
    padding-bottom: 12px;
    background-color: #ffffff;
    border-radius: 100vw;
    position: absolute;
    left: 50%;
    bottom: -30px;
    z-index: 3;
    box-shadow: 0px 0px 72px rgba(9, 8, 28, 0.23);
    aspect-ratio: 1/1;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

.arrow-down img {
    transition: .3s ease;
    will-change: transform;
}

.arrow-down:hover img {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
}


.ct-section--hero-bg-container {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border-radius: var(--br-l);
    overflow: hidden;
}

.ct-section--hero-bg {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 45%;
    object-position: 50% 45%;
    will-change: transform;
}

.ct-section--hero-bg {
    -webkit-animation: shrink 2.5s forwards;
    animation: shrink 2.5s forwards;
}

@-webkit-keyframes shrink {
    from {
        -webkit-transform: scale(1.07);
        transform: scale(1.07);
    }

    to {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes shrink {
    from {
        -webkit-transform: scale(1.07);
        transform: scale(1.07);
    }

    to {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}


/*.bg-custom-light {
    background-color: #4B0082;
    color: white;
}*/

/* .svg-row {
    background-image: url('/images/header.svg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 400px;
}

@media (max-width: 768px) {
    .svg-row {
        height: 250px;
        background-size: contain;
    }
}
*/

/* Help you with, badges */
#services h2::after {
    content: '';
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDkiIGhlaWdodD0iODMiIHZpZXdCb3g9IjAgMCA0OSA4MyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMiA3LjE4NkMxNy4xNTYyIDEuMzc5MzggNDcuNDY4NyAtNC40MTczOSA0Ny40Njg3IDE4Ljg0ODRDNDcuNDY4NyA0MS43OTk2IDIyLjA4ODkgNjkuNTEwNiA4Ljg4NDExIDgwLjk3OTJNOC44ODQxMSA4MC45NzkyQzguNzAzMDUgODEuMTM2NSA4LjUyNDI5IDgxLjI5MDcgOC4zNDc5MSA4MS40NDE4TTguODg0MTEgODAuOTc5MkM4LjY5ODg4IDgxLjEzNjEgOC41MjAwMiA4MS4yOTA0IDguMzQ3OTEgODEuNDQxOE04Ljg4NDExIDgwLjk3OTJDMTQuODQyMSA3NS45MzQyIDI3LjM5MTUgNjguMzAyOSAzNC4wMzQ4IDc0Ljk0NjJNOC4zNDc5MSA4MS40NDE4QzEyLjcyNzUgNzcuMjU5IDIxLjQ4NjYgNjYuMTE4MiAyMS40ODY2IDU1LjAxNjgiIHN0cm9rZT0iIzFGMTg1QSIgc3Ryb2tlLXdpZHRoPSIyLjA2Njc2IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KPC9zdmc+);
    width: 46px;
    height: 80px;
    position: absolute;
    right: -44px;
    background-size: contain;
    background-repeat: no-repeat;
}

.badge {
    padding: 0.688rem 1.438rem;
    background: var(--headline-color);
    color: #FFFFFF;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 100vw;
    font-weight: 800;
    font-size: 0.938rem;
    line-height: 1;
    transition: .2s ease;
}

a.badge:hover {
    -webkit-transform: unset;
    transform: unset;
    -webkit-filter: brightness(103%);
    filter: brightness(103%);
}

.badge--blue {
    color: #2F57A7;
    background-color: #D6E0F8;
}

.badge--orange {
    color: #9B6B12;
    background-color: #FDE2B0;
}

.badge--purple {
    color: #60538D;
    background-color: #E2DDF3;
}

.badge--gold {
    color: #96732C;
    background-color: #F2E5CA;
}

.badge--green {
    color: #06602B;
    background-color: #CCFCE0;
}

.badge--pink {
    color: #912B6D;
    background-color: #F9D5EC;
}

.badge--yellow {
    color: #665E24;
    background-color: #FDF3A5;
}

.badge--red {
    color: #B41313;
    background-color: #FBCFCB;
}


/* SERVICES */

.ccs-service,
.c-columns-2 {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr clamp(60px, 8vw, 118px) 1fr;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: clamp(60px, 8vw, 118px);
    width: 100%;
}

.ccs-service__col-content {
    padding: 1.5vw 0;
    max-width: 600px;
}

.ccs-service__section:nth-child(2n+1) {
    background: linear-gradient(#FFFFFF, var(--light-blue));
}

.ccs-service__section:nth-child(2n) {
    background: linear-gradient(var(--light-blue), #FFFFFF);
}

.ccs-service__section:nth-child(2n) .ccs-service__col-content {
    order: 2;
}

.ccs-service h3 {
    margin-bottom: 1.75rem;
    text-wrap: balance
}

.ccs-service__perex {
    font-size: 1.1875rem;
    font-weight: 600;
    line-height: 1.5;
}

.ccs-service .badge {
    padding: 0.625rem 1.313rem;
    font-size: 0.75rem;
    margin-bottom: 1.5rem;
}

.cta-button-box {
    display: inline-flex;
    align-items: center;
    gap: 24px;
    background: #FFF;
    border-radius: 100vw;
    padding: 5px 5px 5px 32px;
    border: 1px solid #E9E7EE;
    margin-top: 2rem;
}

.cta-button-box p {
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
    line-height: 1.2;
    max-width: 234px;
}


.ccs-service__col-image {
    display: flex;
    flex-direction: column;
    justify-content: end;
    position: relative;
    overflow: hidden;
    width: 100%;
    max-height: 735px;
    padding: 2.5rem 2.875rem;
    border-radius: var(--br-l);
}

.ccs-service__col-image img {
    transition: 1s ease;
}

.ccs-service__col-image:hover img {
    -webkit-transform: scale(1.03);
    transform: scale(1.03);
    transition: 2s ease;
}

.ccs-service__col-image-wrapper p {
    font-size: 0.688rem;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.0125rem;
    color: #FFF;
    margin-bottom: 0;
    margin-right: 17px;
}

.ccs-service__col-image-wrapper span {
    width: 67px;
    height: 1px;
    background: HSLA(0, 0%, 100%, 0.8);
    display: flex;
}

.ccs-service__info {
    display: flex;
    flex-direction: row;
    align-items: center;
    z-index: 3;
    position: relative;
}

.ccs-service__image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    -o-object-fit: cover;
    object-fit: cover;
}
.ccs-service__logo {
  z-index: 2;
  position: absolute;
  right: 38px;
  bottom: 30px;
}

.ccs-service__fade {
    background-image: linear-gradient(HSLA(262, 50.5%, 19%, 0), HSLA(262, 50.5%, 19%, 0.6));
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 25%;
}

/* Testimonials */
#testimonials {
    border-radius: var(--br-l) var(--br-l) 0 0;
    border-bottom: 1px solid #F3F2F4;
}


/* Partners */


/*
.badge-custom {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-size: 2rem;
    color: #2F57A7;
    margin: 3rem;
}

.badge-custom-blue {
    background-color: #D6E0F8;
}

.badge-custom-yellow {
    background-color: #FDE2B0;
}

.badge-custom-green {
    background-color: #CCFCE0;
}

.badge-custom-pink {
    background-color: #F9D5EC;
}
.badge-custom-red {
    background-color: #FBCFCB;
}
*/


.card-custom {
    width: 15rem;
}


.a-custom {
    color: inherit;
    text-decoration: none;
}

.a-custom:visited {
    color: inherit;
}

.a-custom:hover {
    text-decoration: underline;
    /* Optional: add underline on hover */
}

.section-img-custom {
    max-width: 601px;
    max-height: 735px;
}


/* TESTIMONIALS */
.testimonial-box {
    display: flex;
    flex-direction: column;
    max-width: 800px;
}

.testimonial-body {
    font-size: clamp(1.125rem, 1vw + 1rem, 1.75rem);
    font-style: italic;
    font-weight: 300;
    line-height: 1.4;
    min-height: 156.8px;
    position: relative;
    z-index: 2;
}

.testimonial__wrapper {
    width: 100%;
    display: flex;
    align-content: space-around;
    gap: 20px;
    max-width: 650px;
}

.testimonial-logo {
    max-width: 134px !important;
    max-height: 80px;
    -o-object-fit: contain;
    object-fit: contain;
}

.testimonial__divider {
    width: 2px;
    background: #E6E3ED;
    height: 48px;
    margin: 0 18px;
}

.testimonial-position {
    font-size: 1rem;
    line-height: 1.2;
}

.carousel__arow {
    width: 58px;
    height: 58px;
    -ms-grid-row-align: center;
    align-self: center;
    justify-content: center;
    display: flex;
    align-content: center;
    align-items: center;
    border-radius: 100vw;
    aspect-ratio: 1/1;
    border: 1px solid HSLA(262.5, 84.8%, 12.9%, 0.10);
    transition: .2s ease;
    cursor: pointer;
}

.carousel__arow:hover {
    border: 1px solid HSLA(262.5, 84.8%, 12.9%, 0.30);
}

.testimonial-body::before {
    content: '';
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTE2IiBoZWlnaHQ9IjEwNSIgdmlld0JveD0iMCAwIDExNiAxMDUiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik05Mi41NTI5IDUuMzkzOTZDOTYuMTQ4OSAxLjc5Nzk5IDk5Ljc0NDggMCAxMDMuMzQxIDBDMTA2LjkzNyAwIDEwOS44NzkgMS4xNDQxNyAxMTIuMTY3IDMuNDMyNTFDMTE0LjQ1NiA1LjM5Mzk3IDExNS42IDguMTcyNjggMTE1LjYgMTEuNzY4N0MxMTUuNiAxNS4zNjQ2IDExMy44MDIgMTguOTYwNiAxMTAuMjA2IDIyLjU1NjZDMTAzLjM0MSAyOS4wOTQ3IDk4LjI3MzggMzUuMzA2IDk1LjAwNDcgNDEuMTkwM0M5Mi4wNjI1IDQ2Ljc0NzcgODkuOTM3NiA1My4yODU5IDg4LjYzIDYwLjgwNDdMODUuNjg3OCA1MC45OTc1Qzk0LjE4NzQgNTAuOTk3NSAxMDEuMDUyIDUzLjQ0OTMgMTA2LjI4MyA1OC4zNTI5QzExMS41MTQgNjMuMjU2NSAxMTQuMTI5IDY5Ljc5NDcgMTE0LjEyOSA3Ny45Njc0QzExNC4xMjkgODUuNDg2MiAxMTEuNjc3IDkxLjg2MDkgMTA2Ljc3MyA5Ny4wOTE0QzEwMi4xOTcgMTAxLjk5NSA5NS44MjIgMTA0LjQ0NyA4Ny42NDkzIDEwNC40NDdDNzkuNDc2NiAxMDQuNDQ3IDczLjEwMTkgMTAxLjgzMiA2OC41MjUyIDk2LjYwMTFDNjMuOTQ4NSA5MS4wNDM3IDYxLjY2MDIgODMuNjg4MiA2MS42NjAyIDc0LjUzNDhDNjEuNjYwMiA2NS43MDgzIDYyLjgwNDMgNTcuMjA4OCA2NS4wOTI3IDQ5LjAzNjFDNjcuNzA3OSA0MC44NjM0IDcxLjMwMzkgMzMuMTgxMSA3NS44ODA2IDI1Ljk4OTFDODAuNDU3MyAxOC40NzAyIDg2LjAxNDcgMTEuNjA1MiA5Mi41NTI5IDUuMzkzOTZaIiBmaWxsPSIjMjUyMTQzIiBmaWxsLW9wYWNpdHk9IjAuMDQiLz4KPHBhdGggZD0iTTMwLjg5MjcgNS4zOTM5NkMzNC40ODg3IDEuNzk3OTkgMzguMDg0NyAwIDQxLjY4MDcgMEM0NS4yNzY2IDAgNDguMjE4OCAxLjE0NDE3IDUwLjUwNzIgMy40MzI1MUM1Mi43OTU1IDUuMzkzOTcgNTMuOTM5NyA4LjE3MjY4IDUzLjkzOTcgMTEuNzY4N0M1My45Mzk3IDE1LjM2NDYgNTIuMTQxNyAxOC45NjA2IDQ4LjU0NTcgMjIuNTU2NkM0MS42ODA3IDI5LjA5NDcgMzYuNjEzNiAzNS4zMDYgMzMuMzQ0NSA0MS4xOTAzQzMwLjQwMjQgNDYuNzQ3NyAyOC4yNzc1IDUzLjI4NTkgMjYuOTY5OCA2MC44MDQ3TDI0LjAyNzcgNTAuOTk3NUMzMi41MjczIDUwLjk5NzUgMzkuMzkyMyA1My40NDkzIDQ0LjYyMjggNTguMzUyOUM0OS44NTMzIDYzLjI1NjUgNTIuNDY4NiA2OS43OTQ3IDUyLjQ2ODYgNzcuOTY3NEM1Mi40Njg2IDg1LjQ4NjIgNTAuMDE2OCA5MS44NjA5IDQ1LjExMzIgOTcuMDkxNEM0MC41MzY1IDEwMS45OTUgMzQuMTYxOCAxMDQuNDQ3IDI1Ljk4OTEgMTA0LjQ0N0MxNy44MTY0IDEwNC40NDcgMTEuNDQxOCAxMDEuODMyIDYuODY1MDUgOTYuNjAxMUMyLjI4ODM1IDkxLjA0MzcgMCA4My42ODgyIDAgNzQuNTM0OEMwIDY1LjcwODMgMS4xNDQxOCA1Ny4yMDg4IDMuNDMyNTMgNDkuMDM2MUM2LjA0Nzc4IDQwLjg2MzQgOS42NDM3NiAzMy4xODExIDE0LjIyMDUgMjUuOTg5MUMxOC43OTcyIDE4LjQ3MDIgMjQuMzU0NiAxMS42MDUyIDMwLjg5MjcgNS4zOTM5NloiIGZpbGw9IiMyNTIxNDMiIGZpbGwtb3BhY2l0eT0iMC4wNCIvPgo8L3N2Zz4=);
    width: 116px;
    height: 105px;
    display: block;
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    left: -57px;
    top: -58px;
}


/* CTA Contact Us */
.cta-contact {
    background: var(--primary-color);
    border-radius: var(--br-l);
}

.cta-contact .ct-section-inner-wrap {
    padding-top: 82px;
    padding-bottom: 82px;
    align-items: center;
}

.cta-contact h2 {
    color: #FFFFFF;
    text-align: center;
    max-width: 730px;
}

.cta-contact__photo {
    max-width: 426px;
    position: absolute;
    bottom: 0;
    right: 3vw;
}


/***** CONTACT US PAGE *****/
.form-control {
    padding: .75rem 1rem;
    color: var(--text-color);
}

.form-control::-webkit-input-placeholder {
    color: var(--text-color);
    opacity: .8;
}

.form-control::-moz-placeholder {
    color: var(--text-color);
    opacity: .8;
}

.form-control:-ms-input-placeholder {
    color: var(--text-color);
    opacity: .8;
}

.form-control::-ms-input-placeholder {
    color: var(--text-color);
    opacity: .8;
}

.form-control::placeholder {
    color: var(--text-color);
    opacity: .8;
}

.form-label {
    font-weight: 500;
}

.form-label span {
    color: #e14556;
}


/***** FOOTER *****/
footer .ct-section-inner-wrap {
    padding-top: 54px;
    padding-bottom: 54px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: space-between;
    width: 100%;
    align-items: center;
}

footer p,
footer a {
    font-size: 0.875rem;
}

footer a {
    text-decoration: none;
}

.footer__links {
    display: flex;
    gap: 26px;
}

.footer__top {
    left: 50%;
    bottom: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(180deg);
    transform: translate(-50%, -50%) rotate(180deg);
    position: absolute;
}

footer .arrow-down::after {
    content: 'back to top';
    position: absolute;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    font-size: 0.625rem;
    min-width: 64px;
    text-transform: uppercase;
    top: 36%;
    right: 116%;
}


/***** TEXT SUBPAGES *****/
.text-subpage  {
  max-width: 790px;
}
.text-subpage h2 {
  margin-bottom: 0.625rem;
  margin-top: 2.25rem;
  font-size: clamp(2rem, 4vw + 1rem, 2.25rem);
  letter-spacing: -0.025em;
}


/* COOKIES */
.cookie-consent-content-container {
  padding-top: 28px;
}
body .cookie-consent-content-title {
  font-size: 1.5rem;
  letter-spacing: -0.05em;
  color: var(--primary-color); 
}
.cookie-preferences-modal-content h2, .cookie-preferences-modal-content h3 {
  letter-spacing: -0.025em;
}

.cookie-disable-interaction body::before {
  background: HSLA(246.3, 59.4%, 12.5%, 0.7) !important;
}
body .cookie-consent-content-description {
  font-size: 0.875rem;
  color: var(--text-color);
  line-height: 1.4;
}

body .cookie-consent-root button,
body .cookie-preferences-modal-content button {
    border-radius: 100vw;
}
body .cookie-consent-button-container button {
  padding: 12px 34px;
  font-weight: 600;
}
body .cookie-consent-button-action button {
  background: #260859;
}







/***** RESPONZIVITA *****/
@media only screen and (min-width: 1200px) {
    .ccs-service__col-content {
        align-content: center;
    }

    .ccs-service__col-image {
        min-height: 735px;
    }
}

@media only screen and (min-width: 992px) {
    .navbar-expand-lg .navbar-nav {
        align-items: center;
    }

    .nav-item:has(.ct-link-button) {
        margin-left: 20px;
    }
}


@media only screen and (min-width: 576px) {
    body .cookie-consent-root {
      margin: 0 40px 40px 40px;
      border-radius: var(--br-m);
    }
}

@media only screen and (max-width: 1366px) {
    .cta-contact__photo {
        max-width: 194px;
        right: -2vw;
    }
}

@media only screen and (max-width: 991px) {

    /* Mobilní menu */
    .navbar-toggler {
        border: 1px solid hsl(262.7, 63%, 94%);
        z-index: 10;
        border-radius: 1000vw;
        aspect-ratio: 1/1;
    }

    .navbar-toggler-icon {
        width: 2.125rem;
        height: 2.125rem;
    }

    .navbar-collapse {
        position: absolute;
        background: #FFF;
        left: 0;
        top: 90px;
        right: 0;
        width: 100%;
        padding: 20px;
        border-radius: 0 0 var(--br-l) var(--br-l);
        box-shadow: 0 41px 17px HSLA(245.8, 57.4%, 21.2%, 0.06);
    }

    .navbar,
    .navbar-wrapper {
        position: static;
    }

    .nav-link,
    .ct-link-button--menu {
        font-size: 1.25rem;
    }

    .ct-link-button--menu {
        margin-top: 1rem;
    }

    .dropdown-menu {
        box-shadow: unset;
        margin-bottom: 16px;
    }

    .dropdown-menu li:first-child .dropdown-item {
        padding-top: 0.5em;
    }

    .dropdown-item {
        padding: 0.5em 2em;
    }

    .ccs-service,
    .c-columns-2-l {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        grid-gap: clamp(28px, 8vw, 40px);
    }

    .ccs-service__col-image {
        min-height: 85vw;
    }

    .ccs-service__col-content {
        order: -5 !important;
    }

    .testimonial-body::before {
        left: 0;
        top: -78px;
    }
}

@media only screen and (max-width: 767px) {
    .ct-section--hero .ct-section-inner-wrap {
        padding: 44px 28px;
    }

    .c-columns-m-1 {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr
    }

    footer .arrow-down::after {
        display: none;
    }
}

@media only screen and (max-width: 575px) {
    body {
        font-size: 1.0625rem;
    }

    .c-columns-s-1 {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        grid-gap: clamp(40px, 8vw, 60px);
    }

    .header-container {
        padding: 16px 20px;
    }

    .ct-section--hero {
        margin: 0 10px 18px 10px;
    }

    .ct-section--hero-hp h1 {
        font-size: 3.75rem
    }

    .ct-section--hero p {
        font-size: 1.125rem !important;
    }

    .ct-section--hero .ct-section-inner-wrap {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .help-you {
        gap: 0.75rem !important;
    }

    #services h2::after {
        right: -5px;
    }

    .ccs-service__col-image {
        min-height: 106vw;
    }
    .ccs-service__col-image {
        padding: 2rem;
    }

    .testimonial__author-wrapper {
        flex-direction: column;
        align-items: start !important;
    }

    .testimonial-body::before {
        top: -28px;
        width: 74px;
    }

    .testimonial-logo {
        margin-bottom: 16px;
        max-width: 100px !important;
        max-height: 40px;
    }

    .testimonial__divider {
        display: none;
    }

    .testimonial-position {
        font-size: 0.875rem;
    }

    .cta-button-box p {
        font-size: 0.875rem;
    }

    .cta-button-box {
        padding: 5px 5px 5px 24px;
    }

    .cta-contact .ct-section-inner-wrap {
        padding-top: 44px;
        padding-bottom: 44px;
    }

    .cta-contact h2 {
        font-size: clamp(2rem, 4vw + 1rem, 3rem);
        letter-spacing: -0.1rem;
    }

    .cta-contact__photo {
        max-width: 146px;
        right: -3vw;
    }

    .contact__box-email a {
        font-size: 1.25rem !important;
    }

    footer .ct-section-inner-wrap {
        flex-direction: column;
    }

    .footer__top {
        order: 9;
        position: relative;
        left: unset;
        bottom: unset;
        display: flex;
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
    }

    .footer__top .arrow-down {
        position: relative;
        left: unset;
        bottom: unset;
        -webkit-transform: unset;
        transform: unset;
        margin-bottom: 20px;
    }

}