/*
Theme Name: artcorp
Text Domain: artcorp
*/

:root {
    --accent: #E2040C;
    --dark: #292929;
    --light: #E9E9E9;
    --white: #ffffff;
    --black: #1b1b1b;
}

@font-face {
  font-family: 'Satoshi-Bold';
  src: url('/wp-content/themes/artcorp/fonts/Satoshi-Bold.woff2') format('woff2'),
       url('/wp-content/themes/artcorp/fonts/Satoshi-Bold.woff') format('woff'),
       url('/wp-content/themes/artcorp/fonts/Satoshi-Bold.ttf') format('truetype');
  font-weight: 700;
  font-display: swap;
  font-style: normal;
}

@font-face {
  font-family: 'myicons';
  src:  url('/wp-content/themes/artcorp/fonts/myicons.eot?5ddlw9');
  src:  url('/wp-content/themes/artcorp/fonts/myicons.eot?5ddlw9#iefix') format('embedded-opentype'),
    url('/wp-content/themes/artcorp/fonts/myicons.ttf?5ddlw9') format('truetype'),
    url('/wp-content/themes/artcorp/fonts/myicons.woff?5ddlw9') format('woff'),
    url('/wp-content/themes/artcorp/fonts/myicons.svg?5ddlw9#myicons') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="ico-"], [class*=" ico-"] {
  font-family: 'myicons' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ico-arrow-right:before {
  content: "\a100";
}

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    vertical-align: baseline;
}

a {
    text-decoration: none;
    transition: all 0.3s ease;
    color: var(--bright);
}

button {
outline: 0;
}

ol,ul {
list-style: none;
}

blockquote,q {
quotes: none;
}

blockquote:before,blockquote:after,q:before,q:after {
content: '';
content: none;
}

q {
display: inline;
font-style: italic;
}

q:before {
content: '"';
font-style: normal;
}

q:after {
content: '"';
font-style: normal;
}

textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"] {
-webkit-appearance: none;
appearance: none;
border-radius: 0;
}

input[type="search"] {
-webkit-appearance: textfield;
}

table {
border-collapse: collapse;
border-spacing: 0;
}

th,td {
padding: 2px;
}

big {
font-size: 120%;
}

small,sup,sub {
font-size: 80%;
}

sup {
vertical-align: super;
}

sub {
vertical-align: sub;
}

dd {
margin-left: 20px;
}

kbd,tt {
font-family: courier;
font-size: 12px;
}

ins {
text-decoration: underline;
}

del,strike,s {
text-decoration: line-through;
}

dt {
font-weight: bold;
}

address,cite,var {
font-style: italic;
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
display: block;
}

* {
box-sizing: border-box;
-webkit-tap-highlight-color: transparent;
}

html {
    max-width: 100%;
    overflow-y: scroll;
    overflow-x: hidden;
    scroll-behavior: smooth;
}

body {
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    overflow: hidden;
    font-family: "Funnel Sans", sans-serif;
    background: var(--white);
    font-size: 15px;
    color: var(--black);
}

p {
    font-family: "Arial", sans-serif;
    font-size: 15px;
    line-height: 1.3;
    font-weight: 400;
}

h1, h2, h3, h4, h5, h6 {
    font-family: "Funnel Display", sans-serif;
    font-weight: 500;
    line-height: 1.05;
}

h1 {
    font-size: 50px;
}

h2 {
    font-size: 50px;
}

h2.large {
    font-size: clamp(30px, 6.7vw, 90px);
}

h3 {
    font-size: 45px;
    line-height: 1.2;
}

h4 {
    font-size: 24px;
    line-height: 1.2;
}

h5 {
    font-size: 17px; 
    line-height: 1.2;
    letter-spacing: -0.02em;
}

h6 {
    font-size: 15px; 
    line-height: 1.2;
}


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

.light h1 {
    color: var(--white);
}

strong {
    font-weight: 700;
}

img {
    width: 100%;
    height: auto;
    display: block;
}

.center {
    text-align: center;
}

/*layout*/
section {
    width: 100%;
}

.row.in-grid {
    max-width: 1300px;
    padding-left: 50px;
    padding-right: 50px;
    margin: auto;
    position: relative;
    z-index: 2;
}

.columns-wrapper {
    display: flex;
    display: -ms-flexbox;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    float: none;
    width: 100%;
}

.columns-wrapper.middle {
    align-items: center;
}

.col-12 {
    flex: 0 0 100%;
    width: 100%;
}

.col-11 {
    flex: 0 0 91.66666667%;
    width: 91.66666667%;
}

.col-10 {
    flex: 0 0 83.33333333%;
    width: 83.33333333%;
}

.col-9 {
    flex: 0 0 75%;
    width: 75%;
}

.col-8 {
    flex: 0 0 66.66666667%;
    width: 66.66666667%;
}

.col-7 {
    flex: 0 0 58.33333333%;
    width: 58.33333333%;
}

.col-6 {
    flex: 0 0 50%;
    max-width: 50%;
}

.col-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
}

.col-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
}

.col-3 {
    flex: 0 0 25%;
    max-width: 25%;
}

.col-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
}

.col-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
}

.col-4-5 {
    width: 80%;
}

.col-3-5 {
    width: 60%;
}

.col-2-5 {
    width: 40%;
}

.col-1-5 {
    width: 20%;
}

.col-3-0 {
    width: 30%;
}

.col-7-0 {
    width: 70%;
}

.content-container {
    position: relative;
    z-index: 2;
    max-width: 1300px;
    /*padding-left: 50px;
    padding-right: 50px;*/
    margin: 0 auto;
}


@media (max-width: 1000px) {
    .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1, .col-4-5, .col-3-5, .col-2-5, .col-1-5, .col-3-0, .col-7-0 {
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        padding-left: 0%;
        padding-right: 0%;
    }
}

main {
    margin-top: -94px;
}

a.main-btn {
    font-family: 'Satoshi-Bold';
    font-size: 16px;
    line-height: 1;
    position: relative;
    display: inline-block;
    transition: all 0.3s ease;
    padding: 19px 90px 19px 28px;
    background: var(--accent);
    color: #fff;
}

a.main-btn i {
    position: absolute;
    font-size: 11px;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

a.main-btn.outline {
    padding: 18px 60px 18px 28px;
    border: 1px solid var(--light);
    background: transparent;
}

a.main-btn.outline.light {
    color: #fff;
}

a.main-btn.white {
    background: #fff;
    color: #1B1B1B;
    padding-right: 65px;
}

a.main-btn.white:hover {
    background: #1B1B1B;
    color: #fff;
}

a.main-btn:hover {
    background: var(--accent);
    border-color: var(--accent);
    box-shadow: 0 3px 30px rgb(226 4 12 / 45%);
    transform: translateY(-3px);
}

/*HEADER*/

@media (min-width: 1000px) {
    button.drawer-toggle.drawer-hamburger {
        display: none;
    }
}

header {
    display: flex;
    z-index: 3;
    align-items: center;
    position: relative;
    height: 100%;
    width: 100%;
    padding: 20px 40px;
}

.logo {
    z-index: 3;
    margin-right: 5vw;
}

.logo svg {
    height: 50px;
    width: auto !important;
}

#header .logo a {
    display: flex;
}

ul.menu {
    display: flex;
    justify-content: flex-start;
    align-items:center;
}

ul.menu>li>a {
    color: #fff;
    margin: auto 25px;
    font-size: 15px;
    text-decoration: none;
    font-weight: 400;
    position: relative;
   /*font-family: 'Funnel Display'; */
}

ul.menu>li>a:hover {
    color: var(--accent);
}

ul.menu>li:first-child>a {
    margin-left: 0;
}

.header-right {
    margin-left: auto;
    margin-right: 0;
    display: flex;
    gap: 40px;
    align-items: center;
}

ul.sub-menu {
    position: absolute;
    width: 100vw;
    height: auto;
    left: 50%;
    top: 94px;
    opacity: 0;
    transition: all 0.35s ease;
    transform: translate(-50%,10px);
    visibility: hidden;
    z-index: -1;
    padding: 0px;
    margin-top: -95px;
    background: #fff;
    box-shadow: 0 10px 100px rgba(0,0,0,0.5);
}

li.menu-item-has-children:hover ul.sub-menu {
    opacity: 1;
    transform: translate(-50%,0px);
    visibility: visible;
}

.megamenu-kategorie {
    padding-bottom: 50px;
    margin-top: 94px;
    background: #fff;
    position: relative;
    border-top: 1px solid #C7C7C7;
}

.megamenu-kategorie a h4 {
    transition: all 0.3s ease;
    color: var(--black);
}

.megamenu-kategorie a:hover h4 {
    color: var(--accent);
}

.megamenu-kategorie h4 {
    max-width: 280px;
    padding-top: 30px;
    font-size: 25px;
}

.megamenu-kategorie .cat-image {
    position: relative;
    width: 100%;
    margin-top: 30px;
    overflow: hidden;
}

.megamenu-kategorie .cat-image img {
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    width: 100%;
    height: 100%;
    border: 1px solid #fff;
    transition: all 0.4s ease;
}

.megamenu-kategorie .cat-image {
    padding-bottom: 60%;
}

.megamenu-kategorie a {
    position: relative;
}

.megamenu-kategorie a:before {
    content: '';
    width: 0%;
    height: 3px;
    position: absolute;
    top: -2px;
    left: 0;
    background: var(--accent);
    transition: all 0.5s ease;
}

.megamenu-kategorie a:hover:before {
    width: 100%;
}

.megamenu-kategorie .col-4 {
    padding-right: 20px;
    padding-left: 20px;
}

.hover-shape {
    position: absolute;
    color: var(--accent);
    font-size: 13px;
    bottom: 0;
    right: 0;
}

.hover-shape i {
   position: relative;
   right: 20px;
   bottom: 16px;
   opacity: 0;
   transition: all 0.5s ease;
   transition-delay: 0s;
}

.hover-shape:before {
    content: '';
    bottom: -10px;
    right: -110px;
    background: #fff;
    width: 150px;
    height: 150px;
    position: absolute;
    transform: rotate(-45deg) scale(0);
    transition: all 0.5s ease;
    transform-origin: bottom right;
}

.megamenu-kategorie a:hover .hover-shape:before {
    transform: rotate(-45deg) scale(1);
}

.megamenu-kategorie a:hover .hover-shape i {
    opacity: 1;
    transition-delay: 0.3s;
}

#header.opened ul.menu>li>a {
    color: var(--black);
}

.logo path.white {
    transition: all 0.3s ease;
}

#header.opened .logo path.white {
    fill: var(--black);
}

.section.megamenu-kategorie .row.in-grid {
    padding-right: 30px;
    padding-left: 30px;
}

li.menu-item-has-children>a {
    position: relative;
    padding-left: 20px;
}

li.menu-item-has-children>a:before {
    content: '';
    height: 13px;
    width: 1px;
    position: absolute;
    background: #fff;
    left: 6px;
    top: 3px;
    transition: all 0.3s ease;
}

li.menu-item-has-children>a:after {
    content: '';
    height: 1px;
    width: 13px;
    position: absolute;
    background: #fff;
    left: 0px;
    top: 9px;
    transition: all 0.3s ease;
}

li.menu-item-has-children:hover>a:before {
    opacity: 0;
}

li.menu-item-has-children:hover>a:after {
    background: var(--black);
}

#header.opened a.main-btn.outline.light {
    color: var(--black);
    border-color: var(--black);
}


/*homepage*/
.section.home-1 {
    position: relative;
    background: var(--dark);
    padding-top: 230px;
    min-height: 900px;
}

.section.home-1 h1 {
    font-size: 60px;
    margin-bottom: 40px;
}

#typewriter {
    display: inline-block;
}

span.bracket {
    color: var(--accent);
}

.main-bgr {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}


/* FUNKCNE POVODNE*/

/*
.bgr-image {
    position: absolute;
    -webkit-mask-image: url(/wp-content/uploads/2025/11/main-mask.svg);
    -webkit-mask-position: top right;
    -webkit-mask-repeat: no-repeat;
    width: 100%;
    height: 900px;
    top: 0;
    left: 0;
    mask-size: auto 100%;
}

.bgr-image img {
    width: auto;
    height: 900px;
    object-fit: contain;
    top: 0%;
    right: 0%;
    position: absolute;
}

img.main-lines {
    top: 0%;
    right: 0%;
    position: absolute;
    width: auto;
    height: 1411px;
    z-index: 1;
}

img.stamp {
    z-index: 2;
    position: absolute;
    max-width: 170px;
    top: 500px;
    right: 180px;
}
*/
.bgr-image {
    position: absolute;
    -webkit-mask-image: url(/wp-content/uploads/2025/11/main-mask.svg);
    -webkit-mask-position: top right;
    -webkit-mask-repeat: no-repeat;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    mask-size: auto 100%;
    z-index: 2;
    max-height: 1050px;
}

.bgr-image img {
    width: auto;
    height: 100vh;
    object-fit: contain;
    top: 0%;
    right: 0%;
    position: absolute;
    max-height: 1050px;
}

img.main-lines {
    top: 0%;
    right: 0%;
    position: absolute;
    width: auto;
    height: 156.8vh;
    z-index: 1;
    max-height: 1647px;
}

img.stamp {
    z-index: 2;
    position: absolute;
    max-width: 170px;
    top: clamp(300px, 55vh, 600px);
    right: 19vh;
}

.home-1-cta p {
    display: flex;
    align-items: center;
    gap: 10px;
}

.home-1-cta .number {
    font-size: 45px;
    font-weight: 500;
    font-family: "Funnel Display";
    line-height: 1;
}

a.cta {
    color: var(--accent);
    text-decoration: underline;
}

.home-1-cta {
    display: inline-block;
    position: absolute;
    bottom: -200px;
    left: 340px;
}

.section.home-2.light {
    background: var(--dark);
    padding-top: 50px;
    padding-bottom: 120px;
    position: relative;
}

.section.home-2 img.bgr-shape {
    position: absolute;
    max-width: 220px;
    bottom: 0;
    left: 0;
}

h5.subtitle {
    margin-top: 10px;
    position: relative;
    margin-right: 20px;
}

.home-2 h5.subtitle {
    max-width: 240px;
}

h5.subtitle:after {
    content: '';
    width: 11px;
    height: 11px;
    position: absolute;
    background: var(--accent);
    right: 0;
    top: 6px;
}
    
.about-cta {
    display: flex;
    gap: 50px;
    align-items: center;
    margin-top: 50px;
}

.about-cta a.main-btn {
    white-space: nowrap;
}

.about-cta p {
    max-width: 550px;
}

#selector-section {
    height: clamp(700px, 100vh, 900px);
    position: relative;
}

#selector-section .overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgb(0 0 0 / 12%), rgb(0 0 0 / 50%));
    top: 0;
    left: 0;
}

#selector-section img.bgr-shape {
    position: absolute;
    bottom: 0;
    right: 0;
    max-width: 375px;
}

#selector-section .bgr {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
}

#selector-section .selector-image {
    position: absolute;
    height: 100%;
    width: 100%;
    background-size: cover;
    background-position: center;
    opacity: 0;
    transition: all 1s ease;
    top: 0;
    left: 0;
}

#selector-section .selector-image.selector-image--active {
    opacity: 1;
}

#selector-section .row.in-grid,
#selector-section .row.in-grid .columns-wrapper,
#selector-section .row.in-grid .columns-wrapper .col-12{
    height: 100%;
}

#selector-section .row.in-grid .columns-wrapper .col-12 {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    position: relative;
}

.selector-titles {
    padding-bottom: 70px;
    position: relative;
    display: inline-block;
}

.selector-image {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    opacity: 0;
    transition: opacity .5s ease;
}
.selector-image--active {
    opacity: 1;
}

.selector__link {
    position: relative;
    display: inline-block;
    text-decoration: none;
    opacity: 1;
    transition: all .4s ease;
    padding-left: 30px;
    padding-top: 10px;
}

.selector__link--active {
    opacity: 1;
    transform: translateX(15px);
}

.selector__link h2 {
    color: #fff;
}

.selector-bracket {
    position: absolute;
    top: 0;
    color: var(--accent);
    font-size: clamp(30px, 6.7vw, 90px);
    pointer-events: none;
    transform: translateY(-50%);
    transition: top .35s cubic-bezier(.22,.61,.36,1), 
                left .35s cubic-bezier(.22,.61,.36,1);
    line-height: 1.2;
}

.selector-bracket--left {
    left: 0;
}
.selector-bracket--right {
    left: 0; 
}

.selector-bracket {
    opacity: 0;
    transition: opacity 0.2s ease, top 0.2s ease, left 0.2s ease;
}

.selector-titles.selector-titles--has-active .selector-bracket {
    opacity: 1;
}

.top-label {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 16px;
    line-height: 1;
    font-weight: 700;
    color: #fff;
    padding: 12px 30px;
    transform: rotate(-90deg) translateX(-100%);
    transform-origin: top left;
}

.top-label.accent {
    background: var(--accent);
}

.section.realizacie-vyber {
    padding-top: 90px;
    padding-bottom: 50px;
}

.realizacie-vyber .col-8 {
    display: flex;
    align-items: center;
}

.realizacie-vyber .subtitle {
    margin-left: 35px;
    position: relative;
    margin-top: 12px;
    width: 270px;
}

.realizacie-vyber .subtitle:after {
    content: '';
    width: 11px;
    height: 11px;
    position: absolute;
    background: var(--accent);
    right: 0;
    top: 26px;
}

.realizacie-vyber .col-4 {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 30px;
}

a.cta.dark {
    color: var(--black);
}

button.nav-prev.slick-arrow,
button.nav-next.slick-arrow{
    background: #F0F0F0;
    border: none;
    width: 65px;
    height: 65px;
    line-height: 65px;
    cursor: pointer;
    transition: all 0.3s ease;
}

button.nav-prev.slick-arrow path,
button.nav-next.slick-arrow path{
    fill: none;
    stroke: #1b1b1b;
    transition: all 0.3s ease;
}

.realizacie-nav {
    display: flex;
    gap: 6px;
}

button.nav-prev.slick-arrow:hover,
button.nav-next.slick-arrow:hover {
   background: var(--accent); 
}

button.nav-prev.slick-arrow:hover path,
button.nav-next.slick-arrow:hover path{
   stroke: #fff; 
}

.realizacie-slick-slider {
    margin-top: 35px;
}

.realizacie-slick-slider .slick-list {
    overflow: visible;
}

.realizacie-slick-slider .slick-track {
    display: flex;
}

.realizacie-slick-slider .slick-slide {
    float: none;
    height: auto;
}

.realizacie-slick-slider .slick-track {
    gap: 20px;
}

.realizacia-thumb {
    position: relative;
    width: 100%;
    padding-bottom: 60%;
    margin-bottom: 15px;
    overflow: hidden;
}

.realizacia-thumb img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

a.realizacia-link:hover .hover-shape:before {
    transform: rotate(-45deg) scale(1);
}

a.realizacia-link:hover .hover-shape i {
    opacity: 1;
    transition-delay: 0.3s;
}

.realizacia-hlavne-zameranie {
    color: #999;
}

h4.realizacia-title {
    color: #323232;
    transition: all 0.3s ease;
}

a.realizacia-link:hover h4.realizacia-title {
    color: var(--accent);
}




/*FAQ*/

.section.faq {
    padding-top: 80px;
    padding-bottom: 150px;
    position: relative;
}

.faq-text {
    display: none;
    padding: 20px 40px 20px 0px;
}

h4.faq-heading {
    cursor: pointer;
}

li.faq-item {
    padding: 17px 0px 17px 40px; 
    border-top: 1px solid rgb(0 0 0 / 40%);
    position: relative;
}

li.faq-item h4 {
    padding-right: 20px;
    position: relative;
}

li.faq-item h4 i.plus {
    position: absolute;
    width: 15px;
    height: 15px;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    transition: transform 0.3s ease;
}

li.faq-item h4 i.plus:before {
    content: '';
    position: absolute;
    width: 1px;
    height: 15px;
    background: var(--black);
    left: 7px; 
    top: 0;
}

li.faq-item h4 i.plus:after {
    content: '';
    position: absolute;
    width: 15px;
    height: 1px;
    background: var(--black);
    top: 7px; 
    left: 0;
}

li.faq-item.the-active h4 i.plus {
    transform: translateY(-50%) rotate(45deg);
}

ul.faq-list {
    counter-reset: faq-counter;
    margin-top: 50px;
}

ul.faq-list li.faq-item {
    position: relative;
    padding-left: 32px;
    counter-increment: faq-counter;
}

ul.faq-list li.faq-item::before {
    content: "0" counter(faq-counter);
    position: absolute;
    left: 0;
    top: 24px;
    font-size: 15px;
    line-height: 1;
    color: #323232;
    opacity: 0.5;
    font-family: 'Funnel Display';
    font-weight: 500;
}

.section.faq h2.large {
    padding-left: 320px;
}

.section.faq .bgr {
    position: absolute;
    bottom: 0;
    left: 0;
}

.section.faq .bgr img {
    max-width: clamp(300px, 45vw, 700px);
}

/*reviews*/
.section.reviews {
    background: var(--dark);
    padding-top: 80px;
    padding-bottom: 80px;
}

.reference-item {
    padding: 0px 25px;
    position: relative;
    border-right: 1px solid rgb(255 255 255 / 30%);
}

.review-author {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 40px;
}

.review-authorimage {
    flex: 0 0 80px;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    border: 7px solid rgb(255 255 255 / 6%);
    position: relative;
}

.review-authorimage img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
    top: 0;
    left: 0;
}

.review-authorinfo p {
    color: #fff;
}

p.review-text {
    font-size: 15px;
    font-family: 'Funnel display';
    line-height: 1.4;
}

.stars {
    --percent: calc(var(--rating) / 5 * 100%);
    display: inline-block;
    font-size: 18px;
    font-family: Times;
    line-height: 1;
    margin-top: 5px;
}

.stars::before {
  content: "★★★★★";
  letter-spacing: 2px;
  background: linear-gradient(90deg, var(--accent) var(--percent), rgb(233 233 233 / 40%) var(--percent));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.reviews .slick-list.draggable,
.reviews .slick-track {
    overflow: visible;
}

.reviews-slider:before {
    content: '';
    position: absolute;
    background: var(--dark);
    width: 100%;
    height: 100%;
    left: -100%;
    z-index: 2;
}

.section.reviews .col-4 {
    position: relative;
    z-index: 3;
}

.section.reviews button.nav-prev.slick-arrow, 
.section.reviews button.nav-next.slick-arrow,
.section.single-top button.nav-prev.slick-arrow, 
.section.single-top button.nav-next.slick-arrow {
    background: #484848;
}

.section.reviews button.nav-prev.slick-arrow:hover, 
.section.reviews button.nav-next.slick-arrow:hover,
.section.single-top button.nav-prev.slick-arrow:hover, 
.section.single-top button.nav-next.slick-arrow:hover {
    background: var(--accent);
}

.section.reviews button.nav-prev.slick-arrow path, 
.section.reviews button.nav-next.slick-arrow path,
.section.single-top button.nav-prev.slick-arrow path, 
.section.single-top button.nav-next.slick-arrow path {
    stroke: #fff;
}

.reviews-nav {
    display: flex;
    gap: 6px;
    margin-top: 40px;
}

.single-nav {
    display: flex;
    gap: 6px;
}

.section.home-5 {
    background: var(--dark);
    padding-top: 30px;
    padding-bottom: 80px;
}

.stavebniny-img {
    position: relative;
    margin-bottom: 30px;
}

.stavebniny-img img.lines {
    position: absolute;
    z-index: -1;
    top: -50px;
    left: -150px;
}

img.stav-img {
    max-width: 320px;
}

h5.subtitle.reverse {
    padding-left: 30px;
    margin-right: 0;
}

h5.subtitle.reverse:after {
    right: auto;
    left: 0;
    top:4px;
}

.section.home-5 h3 {
    max-width: 674px;
    margin-top: 20px;
    margin-bottom: 40px;
}

.section.home-6 {
    background: var(--dark);
    padding-top: 40px;
    padding-bottom: 90px;
}

.partners.slick-slider {
    margin-top: 40px;
}

.logo-clients {
    background: #212121;
    aspect-ratio: 3 / 1.8;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    padding: 40px;
    align-items: center;
}

.logo-clients img {
    max-width: 90%;
}

.partners.slick-slider .slick-track {
    display: flex;
    align-items: center;
    gap: 12px;
    overflow: visible;
}

.partners.slick-slider .slick-list {
    overflow: visible;
}

.section.contact-cta {
    position: relative;
    background: var(--accent);
}

.contact-cta .bgr {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 100%;
    max-width: 65vw;
    background: url(/wp-content/uploads/2025/11/CTA_img-1.webp);
    background-size: cover;
    background-position: right top;
    background-repeat: no-repeat;
}

.contact-cta .columns-wrapper {
    position: relative;
    padding-top: 300px;
    padding-bottom: 70px;
}

.top-label.black {
    background: var(--black);
    top: -1px;
}

.contact-cta h3 {
    max-width: 450px;
}

.contact-cta-kontakt {
    display: flex;
    align-items: center;
    gap: 6vw;
    margin-top: 30px;
}

.contact-cta-kontakt .review-author {
    margin-top: 0;
}

.contact-cta-kontakt .review-authorimage {
    border: 7px solid rgb(255 255 255 / 20%);
}

/*REALIZACIE archive*/
.section.realizacie-top {
    background: var(--dark);
    position: relative;
    padding-top: 160px;
    padding-bottom: 70px;
}

.realizacie-top img.bgr-lines {
    position: absolute;
    top: 0;
    left: 60%;
    transform: translateX(-50%);
    max-width: 469px;
}

.realizacie-top h5 {
    text-align: right;
}

.section.realizacie.archive {
    background: var(--dark);
    padding-bottom: 80px;
}

.article-nav-component {
    margin-top: 20px;
}

.article-nav-component li a {
    color: #fff;
    font-family: 'Funnel Display';
    font-weight: 600;
    font-size: 24px;
    opacity: 0.2;
    position: relative;
    display: inline-block;
    transition: all 0.45s ease;
    transform: translateX(0px)
}

.article-nav-component li {
    margin-bottom: 10px;
}

.article-nav-component li a:after {
    content: '';
    width: 11px;
    height: 11px;
    position: absolute;
    background: var(--accent);
    left: -21px;
    top: 10px;
    opacity: 0;
    transition: all 0.35s ease;
}

.article-nav-component li.active a:after,
.article-nav-component li:hover a:after{
    opacity: 1;
}

.article-nav-component li.active a,
.article-nav-component li:hover a{
    transform: translateX(21px);
    opacity: 1;
}

.realizacie.archive .col-3 {
    flex: 0 0 25%;
    max-width: 250px;
}

.realizacie.archive .col-9 {
    flex: 0 0 100%;
    max-width: calc(100% - 250px);
}

.vc_column-inner.sidebar__inner {
    padding-bottom: 100px;
}

.realizacie-grid {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
}

.realizacie-grid .realizacia-slide {
    box-sizing: border-box;
    width: 50%;
    padding: 10px;
    margin-bottom: 25px;
}

.realizacie-grid .realizacia-slide:nth-child(5n) {
    width: 100%;
}

.realizacie-grid .realizacia-slide a {
    color: #999999;
}

.realizacie-grid .realizacia-slide h4 {
    color: #fff;
    font-weight: 600;
    letter-spacing: -0.02em;
}

.realizacie-grid .hover-shape:before {
    background: #292929;
}


/*single realizacie*/

.section.single-top {
    background: var(--dark);
    position: relative;
    padding-top: 160px;
}

.section.single-top img.bgr-lines {
    position: absolute;
    top: 0;
    left: 60%;
    transform: translateX(-50%);
    max-width: 469px;
}

.section.single-top h1 {
    font-size: 45px;
}

.section.single-top .col-12.single-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
}

.section.single-top .slick-list.draggable,
.section.single-top .slick-track {
    overflow: visible;
}

.section.single-top .slick-track {
 display: flex;
 gap: 18px;
}

.realizacia-gallery-slide {
    position: relative;
    aspect-ratio: 16 / 9.5;
}

.realizacia-gallery-slide img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 0.3s ease;
}

.realizacia-gallery-slide:hover img {
    opacity: 0.7;
}

.section.single-info {
    padding-bottom: 100px;
    background: var(--dark);
}

.section.single-info .columns-wrapper {
    position: relative;
    padding-top: 70px;
}

.section.single-info .top-label.black {
    top: 0;
}

.section.single-info .col-2-5 {
    padding-left: 60px;
    padding-right: 60px;
    border-right: 1px solid rgb(255 255 255 / 20%);
}

.section.single-info .col-3-5 {
    padding: 10px 0px 30px 60px;
}

table.info-table {
    color: #fff;
    width: 100%;
    border-top: 1px solid rgb(255 255 255 / 20%);
}

table.info-table td {
    color: #fff;
    font-size: 15px;
    font-family: 'Funnel Display';
    padding: 12px 0;
}

table.info-table td:last-child {
    text-align: right;
}

table.info-table tr {
    border-bottom: 1px solid rgb(255 255 255 / 20%);
}

.prace-na-projekte {
    margin-top: 11px;
    margin-bottom: 25px;
    display: flex;
    color: #fff;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
}

span.work-item {
   font-family: 'Funnel Display';
    padding: 7px 13px;
    border: 1px solid #fff;
}

.popis-projekt p {
    font-family: 'Funnel Display';
    padding-bottom: 0.8em;
    line-height: 1.4;
    color: #fff;
}

.section.single-info a.main-btn {
    margin-top: 40px;
}

.single-realizacie .section.realizacie-vyber {
    padding-top: 40px;
    padding-bottom: 40px;
}

.single-realizacie .realizacie-vyber .subtitle {
    width: 390px;
}

/*PAGE */
.section.page-top {
    position: relative;
    height: 524px;
    background: var(--dark);
    z-index: 1;
}

.section.page-top .row.in-grid {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

.section.page-top h1 {
    max-width: 600px;
    margin-bottom: 30px;
}

.section.page-top h6 {
    font-weight: 400;
    max-width: 350px;
}

.section.page-top .bgr {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
}

.page-bgr-image {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 65%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    max-width: 1500px;
}

.page-bgr-cover {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 70%;
    background-size: cover;
    background-position: center;
    background: url(/wp-content/uploads/2025/11/page-top-cover-1.svg);
    background-repeat: no-repeat;
    max-width: 1500px;
}

/*contact*/
.section.contact-form {
    position: relative;
    background: var(--accent);
    padding-top: 50px;
    padding-bottom: 80px;
    color: #fff;
}

.section.contact-form h3 {
    color :#fff;
    max-width: 490px;
    margin-bottom: 50px;
}

.section.contact-form h3 span.bracket {
    color: var(--black);
}

.contact-form .bgr {
    position: absolute;
    width: 49%;
    height: 100%;
    right: 0;
    top: 0;
    max-width: 1000px;
}

.contact-form .image,
.contact-form .cover {
    position: absolute;
    width: 100%;
    height: 100%;
    right: 0;
    top: 0;
    background-size: cover;
    background-position: center;
}

.contact-form .cover {
    background-position: center left;
}

.col-6.form-col {
    padding-right: 35px;
}

/*contact form*/
/*contact form*/
.wpcf7-form textarea, .wpcf7-form input[type="text"], 
.wpcf7-form input[type="email"] {
    border: 1px solid rgb(255 255 255 / 30%);
    border-left: 1px solid rgb(255 255 255 / 100%);
    width: 100%;
    background: transparent;
    margin-bottom: 20px;
    height: 50px;
    font-size: 15px;
    color: var(--white);
    padding: 10px 20px 10px 20px;
    border-radius: 0px;
    box-shadow: none;
    font-family: 'Funnel Display';
    outline: none;
    margin-top: 7px;
    transition: all 0.3s ease;
}

.wpcf7-form textarea::placeholder, .wpcf7-form input[type="text"]::placeholder, 
.wpcf7-form input[type="email"]::placeholder {
    color: rgb(255 255 255 / 30%);
}

.wpcf7-form textarea:focus, .wpcf7-form input[type="text"]:focus, 
.wpcf7-form input[type="email"]:focus {
    border: 1px solid #fff;
}

.wpcf7-form textarea {
    height: 90px;
}

.wpcf7 label {
    font-size: 15px;
}

.wpcf7-form .col-6 {
    padding-right: 5px;
    padding-left: 5px;
}

.wpcf7-form .columns-wrapper {
    width: calc(100% + 10px);
    margin-left: -5px;
}

.wpcf7-form .btn-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 30px;
}

.wpcf7 input[type="checkbox"] {
    padding: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    -webkit-appearance: none;
    width: 0px !important;
}

span.wpcf7-list-item label {
    display: flex;
    opacity: 1;
}

.wpcf7-list-item {
    margin: 0;
}

span.wpcf7-list-item-label {
    position: relative;
    padding-left: 50px;
    line-height: 1.1;
    color: var(--white);
    cursor: pointer;
    text-transform: none;
    text-align: left;
    margin-left: -5px;
    font-size: 12px;
    font-family: 'Funnel Display';
    letter-spacing: 0.03em;
}

span.wpcf7-list-item-label a {
    text-decoration: underline;
    color: var(--white);
}

span.wpcf7-list-item-label:before {
    content: '';
    width: 40px;
    height: 40px;
    position: absolute;
    border: 1px solid #fff;
    background: transparent;
    display: block;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

span.wpcf7-list-item-label:after {
    content: '';
    width: 40px;
    height: 40px;
    position: absolute;
    border: 1px solid #fff;
    display: block;
    left: 0px;
    top: 50%;
    transform: translateY(-50%);
    background: #fff;
    transition: all 0.2s ease;
    background-image: url(/wp-content/uploads/2025/11/icon-check-1.svg);
    background-size: 21px;
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0;
}

input[type="checkbox"]:checked + span.wpcf7-list-item-label:after {
    transform: translateY(-50%);
    opacity: 1;
}

span.wpcf7-not-valid-tip {
    top: auto !important;
    padding: 0 !important;
    background: transparent;
    box-shadow: none !important;
    color: #000000 !important;
    font-size: 11px;
    top: 19px !important;
    position: absolute;
    left: auto;
    right: 10px;
    height: auto;
    font-weight: 500;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    background: rgb(0 0 0 / 20%);
    border-color: #000000;
    color: #000;
    font-size: 15px;
    line-height: 1.5;
    padding: 15px;
    border-radius: 9px;
    text-align: center;
}

.gdpr span.wpcf7-not-valid-tip {
    margin-top: 10px;
    top: auto !important;
    bottom: auto !important;
    left: 49px !important;
    position: relative;
}

.codedropz-upload-handler {
	border: none;
	background: rgb(39 39 39 / 14%);
    border-radius: 0;
    margin-top: 6px;
}

.codedropz-upload-inner {
	text-align: left;
	display: flex;
	padding-left: 90px;
	align-items: center;
	justify-content: space-between;
	position: relative;
	padding-top: 20px;
	padding-bottom: 20px;
}

.codedropz-upload-inner h3 {
    margin: 0 !important;
    font-size: 13px;
    line-height: 1.5;
	font-weight: 400;
    max-width: 260px !important;
}

.codedropz-upload-inner:before {
	content: '';
	width: 56px;
	height: 56px;
	position: absolute;
	background: url(/wp-content/uploads/2025/11/icon-upload.svg);
	left: 10px;
	top: 50%;
	transform: translateY(-50%);
	background-size: contain;
	background-repeat: no-repeat;
}

.codedropz-upload-inner span {
	display: none;
}

a.cd-upload-btn {
	font-size: 15px;
	color: var(--light);
	padding: 12px 20px 5px 0px;
	border-bottom: 1px solid var(--white);
	position: relative;
	transition: all 0.3s ease;
}

a.cd-upload-btn:hover {
	color: #000;
    border-color: #000;
}

a.cd-upload-btn:after {
	content: '+';
	font-size: 20px;
	position: absolute;
	right: 0px;
	top: 55%;
	transform: translateY(-50%);
}

button.main-btn {
    font-family: 'Satoshi-Bold';
    font-size: 16px;
    line-height: 1;
    position: relative;
    display: inline-block;
    transition: all 0.3s ease;
    padding: 19px 60px 19px 28px;
    background: var(--white);
    color: #1B1B1B;
	border: none;
	cursor: pointer;
}

button.main-btn i {
    position: absolute;
    font-size: 11px;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

button.main-btn:hover {
    background: #1B1B1B;
    color: #fff;
	box-shadow: 0 3px 30px rgb(0 0 0 / 25%);
    transform: translateY(-3px);
}

/*FOOTER*/
#footer {
    background: var(--black);
    position: relative;
}

#footer img.bgr-lines {
    max-width: 426px;
    position: absolute;
    right: 0;
    bottom: 0;
    height: auto;
}

.section.footer-top,
.section.footer-bottom {
    padding-top: 90px;
}

#footer h6 {
    font-weight: 600;
    margin-bottom: 20px;
}

#footer p {
    font-family: 'Funnel Display';
}

#footer ul.menu {
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
}

#footer ul.menu a {
    margin: 0;
}

#footer a.cta {
    margin-top: 14px;
    display: inline-block;
}

img.footer-logo {
    max-width: 150px;
}

.footer-contacts a {
    font-size: 45px;
    color:#fff;
    font-family: 'Funnel Display';
    font-weight: 500;
}

.footer-contacts a.accent {
    color: var(--accent);
}

.section.footer-copyright {
    padding-top: 30px;
    padding-bottom: 30px;
}

.reCaptcha p {
    font-size: 10px;
    font-family: 'Funnel Sans' !important;
    opacity: 0.6;
    line-height: 1.6;
    max-width: 240px;
}

.footer-social {
    display: flex;
    gap: 8px;
}

a.social-btn {
    display: inline-block;
    color: #fff;
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgb(255 255 255 / 20%);
    padding: 8px 25px 8px 13px;
    border-radius: 200px;
    transition: all 0.3s ease;
}

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

a.social-btn img {
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
}

.copyright p {
    text-align: right;
}


/************* RESPONSIVE *****************/


@media (max-width: 1000px) {
	/***** Pridane*****/
	li.menu-item-has-children>a:before {
    content: '';
    height: 13px;
    width: 1px;
    position: absolute;
    background: #fff;
    left: 6px;
    top: 13px;
    transition: all 0.3s ease;
}

li.menu-item-has-children>a:after {
    content: '';
    height: 1px;
    width: 13px;
    position: absolute;
    background: #fff;
    left: 0px;
    top: 19px;
    transition: all 0.3s ease; }
	/***** Pridane*****/
	
	
header {
    padding: 20px;
}

header > nav#menu, 
.header-right {
    display: none;
}

nav.drawer-nav {
    z-index: 10;
}

.drawer-hamburger, .drawer-hamburger:hover {
    position: absolute;
    margin-top: 20px;
    margin-right: 15px;
    padding: 13px 9px 25px;
}

.drawer-hamburger {
    width: 35px;
}

.drawer-hamburger-icon, 
.drawer-hamburger-icon:after, 
.drawer-hamburger-icon:before {
    background-color: var(--white);
    height: 1px;
}

.drawer-hamburger-icon:before {
    top: -8px;
}

.drawer-hamburger-icon:after {
    top: 8px;
    right: 0;
    left: auto;
} 

.drawer-open .drawer-hamburger:before {
    opacity: 1;
}

.drawer--right.drawer-open .drawer-hamburger {
    right: 0px;
    position:fixed;
    z-index: 100;
}

.drawer-open .drawer-hamburger-icon:after, .drawer-open .drawer-hamburger-icon:before {
    width: 35px;
}


/*content*/
h1 {
    font-size: 34px;
}

h5.subtitle {
    margin-top: 10px;
    margin-bottom: 25px;
}

h2 {
    font-size: 30px;
}

h3 {
    font-size: 26px;
    line-height: 1.2;
}

h4 {
    font-size: 20px;
}

/*home*/
.row.in-grid {
    padding-left: 20px;
    padding-right: 20px;
}

.section.home-1 h1 {
    font-size: clamp(28px, 8vw, 35px);
    line-height: 1.2;
}

.section.home-1 {
    padding-top: 50vh;
    min-height: 95vh;
}

.bgr-image {
    -webkit-mask-image: url(/wp-content/uploads/2025/11/main-mask.svg);
    -webkit-mask-position: top right -60px;
    -webkit-mask-repeat: no-repeat;
    width: 100%;
    height: 55vh;
}

.bgr-image img {
    height: 60vh;
    left: 0px
}

img.main-lines {
    right: -60px;
    height: 86vh;
}

img.stamp {
    max-width: 110px;
    top: clamp(100px, 30vh, 500px);
    right: 4vh;
}

.home-1-cta {
    display: inline-block;
    position: relative;
    bottom: auto;
    left: 0;
    margin-top: 35px;
}

.about-cta {
    gap: 30px;
    align-items: flex-start;
    flex-direction: column-reverse;
}

.section.home-2.light {
    padding-bottom: 60px;
}

#selector-section {
    height: clamp(500px, 100vh, 650px);
}

.selector__link {
    padding-left: 10px;
    padding-top: 15px;
}

#selector-section .row.in-grid .columns-wrapper .col-12 {
padding-bottom: 150px;
}

#selector-section img.bgr-shape {
    position: absolute;
    bottom: 0;
    right: 0;
    max-width: 100%;
    max-height: 250px;
    object-fit: contain;
    object-position: bottom right;
}

#selector-section h2.large {
    font-size: 40px;
}

.selector-bracket {
    font-size: 36px;
    margin-top: 4px;
}

.section.realizacie-vyber {
    padding-top: 60px;
    padding-bottom: 30px;
}

.realizacie-vyber .col-8 {
    display: flex;
    align-items: flex-start;
    flex-direction: column-reverse;
    margin-bottom: 25px;
}

.realizacie-vyber .subtitle {
    margin-left: 0px;
    margin-top: 0px;
}

.realizacie-vyber .col-8 {
    order: 1;
}

.realizacie-vyber .col-4 {
    order: 3;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    flex-direction: row-reverse;
}

.realizacie-vyber .col-12 {
    order: 2;
}

.realizacie-slick-slider {
    margin-top: 10px;
    margin-bottom: 35px;
}

.realizacia-slide.slide-40 .realizacia-thumb {
    padding-bottom: 55%;
}

.realizacia-slide.slide-60 .realizacia-thumb {
    padding-bottom: 65%;
}

.section.faq {
    padding-top: 50px;
    padding-bottom: 250px;
}

.section.faq h2.large {
    padding-left: 0px;
}

.section.faq .bgr img {
    max-height: 320px;
}

.section.reviews .col-4 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
}

.reviews-nav {
    display: flex;
    gap: 6px;
    margin-top: 0px;
}

.section.home-5 .columns-wrapper {
    flex-direction: column-reverse;
}

.section.home-5 {
    padding-bottom: 60px;
    padding-top: 0;
}

.section.home-5 h3 {
    font-size: 24px;
}

.stavebniny-img {
    margin-top: 40px;
}

.stavebniny-img img.lines {
    position: absolute;
    z-index: -1;
    top: -150px;
    left: 150px;
    max-width: 300px;
}

img.stav-img {
    max-width: 450px;
}

.logo-clients {
    padding: 10px;
}

.section.home-6 {
    padding-bottom: 50px;
}

.contact-cta .columns-wrapper {
    padding-top: 300px;
    padding-bottom: 40px;
}

.contact-cta-kontakt {
    align-items: flex-start;
    gap: 20px;
    flex-direction: column-reverse;
}

.contact-cta .bgr {
    height: 450px;
    width: 100%;
    max-width: 100%;
    background: url(/wp-content/uploads/2025/12/CTA_img-mobile.webp);
    background-size: contain;
    background-position: right top;
    background-repeat: no-repeat;
}

.contact-cta h3 {
    max-width: 300px;
}

.section.realizacie-top {
    padding-top: 120px;
    padding-bottom: 50px;
}

.realizacie-top h5 {
    text-align: left;
    margin-top: 20px;
}

.realizacie.archive .col-3,
.realizacie.archive .col-9 {
    flex: 0 0 100%;
    max-width: 100%;
}

.vc_column-inner.sidebar__inner {
    padding-bottom: 20px;
}

.article-nav-component li a {
    font-size: 17px;
    margin-right: 35px;
}

.article-nav-component li.active a,
.article-nav-component li:hover a{
    transform: translateX(15px);
}

.article-nav-component li a:after {
    width: 8px;
    height: 8px;
    left: -15px;
    top: 7px;
}

.article-nav-component ul {
    display: flex;
    flex-wrap: wrap;
}

.article-nav-component li {
    margin-bottom: 15px;
}

.realizacie-grid {
    margin-left: -5px;
    margin-right: -5px;
}

.realizacie-grid .realizacia-slide {
    padding: 5px;
}

.realizacie-grid .realizacia-slide h4 {
    font-size: 16px;
}

.section.single-top {
    padding-top: 120px;
}

.section.single-top .col-12.single-title {
    align-items: flex-end;
    flex-direction: column;
    gap: 15px;
    margin-bottom: 20px;
}

.section.single-top h1 {
    font-size: 30px;
}

.section.single-info {
    padding-bottom: 40px;
}

.section.single-info .top-label {
    left: -20px;
}

.section.single-info .columns-wrapper {
    padding-top: 40px;
}

.section.single-info .col-2-5 {
    padding-left: 40px;
    padding-right: 0px;
    border-right: none;
    margin-bottom: 30px;
}

.section.single-info .col-3-5 {
    padding: 10px 0px 30px 0px;
}

.single-realizacie .section.realizacie-vyber {
    padding-top: 50px;
    padding-bottom: 10px;
}

.section.page-top {
    height: 524px;
}

.section.page-top .row.in-grid {
    justify-content: flex-end;
    padding-bottom: 40px;
}

.page-bgr-image {
    width: 100%;
}

.page-bgr-cover {
    width: 115%;
    background-size: cover;
    background-position: center left;
}

.section.page-top .bgr {
    position: absolute;
    top: 0;
    left: 0;
    height: 280px;
    width: 100%;
}

.section.contact-form {
    padding-top: 50px;
    padding-bottom: 230px;
}

.col-6.form-col {
    padding-right: 0px;
}

.section.contact-form h3 {
    margin-bottom: 20px;
}

.wpcf7-form .btn-wrapper {
    margin-top: 40px;
    flex-direction: column;
    gap: 30px;
}

.codedropz-upload-inner {
	align-items: flex-start;
    flex-direction: column;
    gap: 20px;
}

.contact-form .bgr {
    width: 90%;
    height: 250px;
    top: auto;
    bottom: 0;
}

#footer {
    display: flex;
    flex-direction: column;
}

.section.footer-bottom {
    padding-top: 50px;
}

.section.footer-top {
    order: 2;
}

.section.footer-bottom {
    order: 1;
}

.section.footer-copyright {
    order: 3;
}

#footer h6 {
    margin-top: 35px;
    margin-bottom: 15px;
}

.section.footer-top {
    padding-top: 0px;
    padding-bottom: 20px;
}

.footer-contacts a {
    font-size: 30px;
}

.section.footer-top .columns-wrapper > * {
    flex: 0 0 48%;
    max-width: 48%;
    margin-right: 2%;
}

.section.footer-copyright .col-3.reCaptcha {
    order: 3;
    margin-top: 10px;
}

.copyright p {
    text-align: left;
}

.footer-social {
    margin-bottom: 30px;
}

#footer img.bgr-lines {
    max-width: 226px;
}

.drawer--right .drawer-nav {
    right: -90vw;
}

.drawer-nav {
    width: 90vw;
    height: 100%;
    color: #fff;
    background-color: var(--dark);
    padding: 70px 25px 40px 25px;
    overflow: auto;
}

.drawer-nav ul.menu {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
}

.drawer-nav ul.menu>li>a {
    color: #fff;
    font-size: 28px;
    padding-top: 0;
    padding-bottom: 0;
}

.drawer-nav ul.menu>li {
    padding-top: 15px;
    padding-bottom: 15px;
}

#header ul.menu>li.menu-expand.menu-item {
    display: block;
    position: relative;
    width: 100%;
}

li.menu-item-has-children ul.sub-menu {
    position: relative;
    width: 100%;
    height: 0;
    left: 0px;
    top: 0;
    opacity: 0;
    transition: all 0.35s ease;
    transform: translate(0, 0px);
    visibility: hidden;
    z-index: 1;
    padding: 0px !important;
    margin-top: 10px !important;
    box-shadow: none;
    display: none;
    margin-bottom: 0px;
    padding-left: 5px;
    min-width: 100%;
    background: transparent;
}

li.menu-item-has-children:hover ul.sub-menu {
    opacity: 1;
    transform: translateY(0px);
    visibility: visible;
}

li.menu-item-has-children.open ul.sub-menu {
    transform: translate(0%, 0px);
    visibility: visible;
    text-align: left;
    height: auto;
    opacity: 1;
    display: block;
}

.megamenu-kategorie {
    padding-bottom: 20px;
    margin-top: 0px;
    background: transparent;
    border-top: none;
}

.megamenu-kategorie a:before {
    display: none;
}

.megamenu-kategorie a h4 {
    max-width: 180px;
    padding-top: 20px;
    font-size: 18px;
    color: #fff;
}

.megamenu-kategorie .col-4 {
    padding-right: 0px;
    padding-left: 0px;
}

.megamenu-kategorie .cat-image {
    display: none;
}

li.menu-item-has-children:hover>a:after {
    background: var(--white);
}

.drawer-nav .menu-menu-right-container {
    margin-top: 15px;
    margin-bottom: 25px;
}

.drawer-overlay {
    z-index: 3;
    background-color: rgba(0, 0, 0, .5);
}
}