/*
Theme Name: Šablona na míru od Tomáš Totzauer
Theme URI: https://zajimava.cz
Author: Talmer.cz
Author URI: https://talmer.cz
Description: 
Version: 1.0

#3c2c66 ametyst
#e6ba2d toscan sun
*/

@font-face {
  font-display: swap;
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 300;
  src: url('fonts/poppins-v24-latin_latin-ext-300.woff2') format('woff2');
}
@font-face {
  font-display: swap;
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/poppins-v24-latin_latin-ext-regular.woff2') format('woff2');
}
@font-face {
  font-display: swap;
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 400;
  src: url('fonts/poppins-v24-latin_latin-ext-italic.woff2') format('woff2');
}
@font-face {
  font-display: swap;
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/poppins-v24-latin_latin-ext-600.woff2') format('woff2');
}
@font-face {
  font-display: swap;
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/poppins-v24-latin_latin-ext-700.woff2') format('woff2');
}
@font-face {
  font-display: swap;
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 900;
  src: url('fonts/poppins-v24-latin_latin-ext-900.woff2') format('woff2');
}

input:-webkit-autofill,
input:-webkit-autofill:focus {
    transition: background-color 600000s 0s, color 600000s 0s;
}
input[data-autocompleted] {
    background-color: transparent !important;
}

::selection {background: #ddd;}
::placeholder {color:#ebe9ef;}
html,body {margin: 0px; padding: 0px; color: #3c2c66; font-family: "Poppins", sans-serif; font-size: 1em; line-height: 140%; position: relative;}
img, video {max-width: 100%; height: auto; border: none;}
video {width: 100%; display: block;}

h1 {margin: 0; padding: 1.0em 0 0.25em 0; font-size: 320%; font-weight: 700;}
h2 {margin: 0; padding: 1.5em 0 0.75em 0; font-size: 200%;}
h3 {margin: 0; padding: 1em 0 0.5em 0; font-size: 150%;}
h4 {margin: 0; padding: 1.25em 0 0.25em 0; font-size: 130%;}
h1, h2, h3, h4 {line-height: 130%; color: #3c2c66;}

iframe {border: none; max-width: 100%; box-sizing: border-box; margin-left: auto; margin-right: auto;}
form {text-align: center; margin: 0 auto 50px auto; max-width: 800px; border: 1px solid #d8d4e0; padding: 40px 50px 40px 50px; border-radius: 10px; color:#3c2c66; box-sizing: border-box; overflow: hidden;}
input, textarea, select, button {outline: none; box-sizing: border-box; font-family: inherit; font-size: 100%; padding: 10px 12px; border: 2px inset #2a1e47; background-color: #3c2c66; border-radius: 5px; color: #fff; box-shadow: inset 0 0 0 2px #2a1e47;}
input[type="text"], input[type="email"], input[type="tel"], textarea {width: 100%; margin: 10px 0;}
input[type="submit"], button {cursor: pointer;}
label {cursor: pointer;}
textarea {min-width: 100%; max-width: 100%; height: 8em;}
ol, ul {padding-left: 40px; line-height: 200%;}
li {text-align: left; padding-left: 6px;}
a {color: #e6ba2d;}
a:hover {text-decoration: none;}
table {border-collapse: collapse; text-align: left; background-color: #fff; max-width: 100%;}
th {padding: 22px 15px; background-color: #3c2c66; color: #fff; font-size: 120%;}
th strong {font-weight: 600;}
td {padding: 6px 15px;}
tr:nth-of-type(odd) {background-color: #e5e9ef;}
figure {margin: 0; padding: 0;}
figcaption {padding: 5px 0; text-align: center; font-size: 90%; font-weight: 300;}

header .bar {display: flex; width: 100%; align-items: center; justify-content: space-between; background-color: #3c2c66; font-size: 80%; padding: 5px 0;}
header .bar a {color: #8a80a3;}
header .bar a:hover {color: #e6ba2d;}
header .bar .days {display: none; font-weight: 300; text-align: right; font-size: 80%;}
header .content {display: flex; justify-content: space-between; width: 100%;}
header #logo img {width: 240px; height: 60px; padding: 15px 0px;}

header a {color: #3c2c66; text-decoration: none; display: flex; align-items: center; justify-content: flex-end;}
header svg {margin-right: 10px;}

nav {padding: 0; position: relative; z-index: 999;}
nav ul {list-style: none; margin: 0; padding: 0;}
nav li {box-sizing: border-box; padding: 0; margin: 0;}
nav .menu a {text-decoration: none; line-height: 1; position: relative; font-size: 100%; color: #3c2c66; padding: 0 20px;}
nav .menu a:hover {color: #e6ba2d;}

article {padding-bottom: 0px; line-height: 160%; }
aside {padding: 30px 0 0 0; background: #3c2c66; color: #9d95b2;}
aside a {text-decoration: none;}
aside h3 {color: #fff;}
aside ul {list-style: none; margin: 0; padding: 0;}
aside ul.two-columns {column-count: 2;}
aside li {padding: 0;}

footer {background-color: #2a1e47; padding: 20px; font-size: 75%; text-align: center; color: #8a80a3; border-top: 25px solid #3c2c66;}
footer a {color: #b1aac1;}

.wp-block-columns {display: flex; width: 100%; justify-content: space-between; box-sizing: border-box; padding: 20px 0; gap: 40px;}
.wp-block-column {box-sizing: border-box; width: 100%;}
.wp-block-column p {padding: 0;}

.wp-block-gallery {margin: 20px 0 40px 0; display: flex; flex-wrap: wrap; justify-content: center; columns: 2; gap: 0 !important;}
.wp-block-gallery figure {display: flex; align-items: flex-end; justify-content: flex-start; margin: 0; padding: 0; width: 50%;}
.wp-block-gallery img, .wp-block-gallery a {object-fit: cover; width: 100%; height: 100%;}
 
.has-text-align-left {text-align: left;}
.has-text-align-right, .alignright, .alignright figcaption {text-align: right;}
.has-text-align-center, .aligncenter, .aligncenter figcaption {text-align: center;}

.wp-block-media-text {gap: 40px;}
.wp-block-media-text.has-media-on-the-right figure {order: 2;}
.wp-block-media-text__media {display: flex; align-items: center; justify-content: center;}
.wp-block-media-text__media img {border-radius: 20px;}
.wp-block-media-text__content {display: flex; flex-direction: column; justify-content: center;}
.wp-block-media-text__content * {text-align: left !important;}

.wp-block-table {border: 1px solid #9d95b2; border-radius: 20px; overflow: hidden; border-collapse: separate; margin-bottom: 40px;}
.wp-block-table table {border-collapse: separate; border-spacing: 0; border: none; margin: 0;}
.wp-block-table td {border-top: 1px solid #d8d4e0; border-left: 1px solid #d8d4e0;}
.wp-block-table thead th {border-top: none; border-left: 1px solid #4f4175;}
.wp-block-table thead tr th:first-child {border-left: none;}
.wp-block-table tbody tr td:first-child {border-left: none;}

.wp-block-cover {position: relative; z-index: 1;}
.wp-block-cover .wp-block-cover__inner-container {display: flex; color: #fff; justify-content: center; align-items: center; flex-direction: column;}
.wp-block-cover h1 {padding: 0; margin: 30px 0 50px 0; font-size: 400%; line-height: inherit; color: #f2f4f6; display: inline-block; text-shadow: #333 2px 0 2px; }
.wp-block-cover p {font-size: 200%; color: #e6ba2d; font-weight: 900; margin: 0; padding: 20px; line-height: 180%; text-shadow: rgba(0,0,0,0.95) 0px 0px 15px;}

.wp-block-video {margin: 0 auto;}

.wp-block-image {margin: 0; padding: 0; display: flex; justify-content: center; max-width: 100%;}

.wp-block-buttons {text-transform: uppercase; margin: 0 0 50px 0; padding: 30px 0;}
.wp-block-button.cta {margin: 0 auto;}
.wp-block-button a, .wpcf7-submit {display: inline-block; border: 5px solid #e6ba2d; border-radius: 10px; background-color: #e6ba2d; transition: 0.5s; color: #302351; font-size: 120%; text-decoration: none; justify-content: center; align-items: center; font-weight: 700; line-height: 140%; padding: 10px 25px; box-shadow: rgba(1,30,49, 0.75) 1px 1px 2px; box-sizing: border-box; transition: 0.5s;}
.wp-block-button a:hover, .wpcf7-submit:hover {cursor: pointer; border-color: #3c2c66; background-color: #3c2c66; color: #e6ba2d;}
.wpcf7-submit:hover {background-color: #fff; color: #3c2c66;}

.wpcf7-form {position: relative;}
.wpcf7-form:before {content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: url("img/bg.svg"); background-size: cover; transform: rotate(180deg);}
.wpcf7-form div {margin-left: auto; margin-right: auto; }
.wpcf7-submit {margin: 0 auto; z-index: 9999 !important; position: relative !important;}
.wpcf7-spinner {display: block;}
.wpcf7-response-output {margin-left: auto !important; margin-right: auto !important; z-index: 9999 !important; position: relative !important;}

.bg {display: grid; grid-template-columns: 1fr min(1320px, 100%) 1fr; background-image: url("img/bg-squares.svg"); background-position: bottom; background-size: cover; margin-top: -100px; padding-top: 100px; padding-bottom: 50px;}
.bg > * {grid-column: 2;}
.bg .wp-block-buttons {padding: 20px 0;}
.bg .subheading {font-size: 180%; line-height: 160%;}
.bg .subheading a {color: #3c2c66; font-weight: 600; text-decoration: none;}
.bg .subheading a:hover {text-decoration: underline;}

.subheading {font-size: 130%; line-height: 160%; padding: 0;}

.services .wp-block-column {position: relative; text-align: left; border: 1px solid #ebe9ef; border-radius: 10px; overflow: hidden;}
.services picture, .services source, .services img {width: 100%; transition: 0.5s; position: relative; z-index: 1; line-height: 0;}
.services .wp-block-image {overflow: hidden; position: relative;}
.services .wp-block-image:after {content: ''; display: block; background-color: rgba(0,0,0,0.2); z-index: 2; width: 100%; height: 100%; top: 0; position: absolute; transition: 0.3s;}
.services .wp-block-column:hover .wp-block-image:after {background-color: rgba(0,0,0,0.1);}
.services a {display: flex; width: 100%; height: 100%; justify-content: center; align-items: center; color: #fff; text-decoration: none; cursor: pointer; text-shadow: 3px 3px 6px rgba(0, 0, 0, 0.85);}
.services figure a {transition: 0.5s all;  overflow: hidden; line-height: 0;}
.services h2 {padding: 0; position: absolute; z-index: 3; top: 0; display: flex; justify-content: center; align-items: center; width: 100%; height: 215px; text-align: center;}
.services p {padding-right: 20px; padding-left: 20px;}
.services .wp-block-column:hover img {transform: scale(1.1);}

.advantages .wp-block-column {background-color: #f2f1fd; border-radius: 20px; padding: 20px; text-align: left;}
.advantages svg {margin-left: auto; margin-right: auto;}
.advantages .wp-block-separator {border: none; height: 4px; border-radius: 10px; background-color: #e6ba2d; transition: background-color 0.3s ease;}
.advantages .wp-block-column:hover .wp-block-separator {background-color: #3c2c66;}

.certificates, .certificates .wp-block-columns {gap: 0;}

.partners .wp-block-image {justify-content: flex-start;}

.workflow {display: grid; grid-template-columns: 1fr; background-image: url("img/bg-wave.svg"); background-size: cover; padding-top: 30px;}
.workflow .wp-block-columns {gap: 0;}
.workflow h2 {width: 100%;}
.workflow p {padding-right: 40px;}
.workflow .number {font-size: 400%; color: #e6ba2d; border-radius: 20px; background-color: #3c2c66; float: left; display: flex; align-items: center; justify-content: center; width: 80px; height: 80px; margin-right: 20px; padding: 0;}

.contact {color: #e6ba2d; font-size: 150%; margin: 60px 0; padding: 0;}
.contact .wp-block-column {padding: 15px 10px; background-color: #3c2c66; border-radius: 15px; display: flex; justify-content: center; align-items: center;}
.contact .wp-block-column.middle {transform: scale(1.25); padding: 30px 10px; border-radius: 15px; background-color: #36275b;}
.contact a {color: #e6ba2d; text-decoration: none;}
.contact a:hover {color: #fff;}

.identification h2 {padding-top: 0;}

.about {align-items: center;}

#cookie-consent {background-color: #3c2c66; color: #ccc; padding: 2em; position: fixed; max-width: 600px; left: 0; bottom: 0; z-index: 9999; display: none; box-shadow: 10px 10px 5px rgba(0,0,0,0.25); border-top-right-radius: 10px;}
#cookie-consent h2, #cookie-consent h3 {color: #fff; padding-top: 0.5em;}
#cookie-consent p {font-size: 80%; text-align: left;}
#cookie-consent #cookie-choices {display: none;}
#cookie-consent #cookie-choices > div {display: inline-block; text-align: left;}
#cookie-consent #cookie-choices label {margin-right: 5px;}
#cookie-consent span {cursor: pointer; color: #666;}
#cookie-consent label {cursor: pointer;}
#cookie-consent button, #show-cookie-consent {padding: 0.5em 1.5em; background: #e6ba2d; border: 5px solid #e6ba2d; color: #000; display: inline-block; font-weight: 700; margin: 10px; cursor: pointer; font-size: 100%; font-family: inherit; text-transform: uppercase; border-radius: 10px;}
#cookie-consent #only-necessary, #cookie-consent #save-cookie-choices {border-color: #3c2c66; background-color: #3c2c66; color: #000;}
#cookie-consent #only-necessary:hover, #cookie-consent #save-cookie-choices:hover {color: #e6ba2d;}
#cookie-consent button:hover, #show-cookie-consent:hover {border-color: #3c2c66; background-color: #3c2c66; color: #e6ba2d;/*border-color: #3c2c66;*/}

@media (max-width: 767px) {
    nav .content {display: flex; flex-direction: column;}
    header .bar div {flex-wrap: wrap;}
    header a {justify-content: center; width: 100%;}
    header .tel, header .mail {width: 50%; padding: 5px 0;}
    iframe {max-height: 400px;}
    .bg {margin-top: -160px; padding-top: 160px;}
    .services h2 {height: 260px;}
}

@media (min-width: 768px) {
    .wp-block-media-text {display: grid; grid-template-columns: 50% 50%; margin: 30px 0;}
}

@media (min-width: 768px) and (max-width: 1359px) {
    nav .content {display: flex; justify-content: center; align-items: center; flex-wrap: wrap;}
    nav .menu-main-container {width: 100%; box-sizing: border-box;}
    .bar .content, #logo {padding-left: 10px; padding-right: 10px;}
    
    .wp-block-columns {gap: 1% !important}
    .wp-block-column {width: 100%;}
    .wp-block-column:first-child:nth-last-child(2), .wp-block-column:first-child:nth-last-child(2) ~ .wp-block-column {width: 49%;}
    .wp-block-column:first-child:nth-last-child(3), .wp-block-column:first-child:nth-last-child(3) ~ .wp-block-column {width: 100%;}
    .wp-block-column:first-child:nth-last-child(4), .wp-block-column:first-child:nth-last-child(4) ~ .wp-block-column {width: 49%;} 
    .wp-block-column:first-child:nth-last-child(6), .wp-block-column:first-child:nth-last-child(6) ~ .wp-block-column {width: 32.333333%;}
}

@media (max-width: 1359px) {
    h1 {font-size: 250%; padding-top: 0.5em; padding-left: 10px; padding-right: 10px;}
    h2 {font-size: 160%;}
    #mobilemenu {color: #fff; background: #3c2c66; padding: 3px 15px; border-radius: 5px; border: 2px solid #2a1e47; line-height: 150%; text-align: center; outline: none; cursor: pointer; margin: 10px auto; box-shadow: 2px 2px 7px rgba(0,0,0,0.25);}
    #lines {border-bottom: 6px double #fff; border-top: 2px solid #fff; height: 2px; width: 20px; display: inline-block; margin-right: 10px;}
    nav {width: 100%; margin-bottom: 10px;}
    
    nav .menu {display: none; width: 100%; padding: 15px 0; background: #3c2c66;}
    nav .menu li a {padding: 10px 30px; display: block; color: #fff;}
    nav .menu .current-menu-item > a {color: #e6ba2d; font-weight: 700;}
    
    article > h1, article > h2, article > h3, article > p, article > ul, article > ol, .wp-block-group > h2, .wp-block-group > h3, .subheading, aside .content {padding-left: 10px; padding-right: 10px; max-width: 100%; box-sizing: border-box;}
    
    .wp-block-column, .wp-block-media-text__content {margin-left: 0px; margin-right: 0px;}
    .wp-block-column {width: 100%; box-sizing: border-box; margin-top: 10px; margin-bottom: 10px;}
    .wp-block-columns {flex-wrap: wrap;}

    .wp-block-gallery figure {width: 100%;}
    
    .wp-block-media-text {display: flex; flex-direction: column; margin: 30px 0;}
    .wp-block-buttons {margin: 15px 10px;}
    
    .bg .subheading {font-size: 140%;}
    .advantages .wp-block-columns {padding: 0;}
    .certificates .wp-block-columns {padding: 0;}
    .certificates .wp-block-column {margin: 0;}
    .workflow {padding-top: 50px; padding-left: 5px; padding-right: 5px;}
    .workflow p {padding-left: 100px; padding-right: 0px;}
    .partners .wp-block-columns {padding-left: 10px; padding-right: 10px;}
    
    .wpcf7-form {padding: 40px 20px;}
    .wpcf7-form h2 {padding-top: 1em;}
    .wpcf7-form p {margin: 5px 0;}

}

@media (min-width: 1360px) {  
    #mobilemenu {display: none;}
    nav {display: flex; align-items: center; height: 100px;}
    nav .menu {display: flex; position: relative; z-index: 9998; width: 100%;}  
    nav .menu > li {flex-grow: 1; position: relative;}
    nav .menu > li > a {height: 100px; display: flex; justify-content: center; align-items: center; transition: 0.1s;}
    nav .menu .current-menu-item > a {color: #3c2c66; font-weight: 700;}
    nav .menu .current-menu-item > a::after {content: ''; position: absolute; left: 25%; bottom: 30%; width: 50%; height: 1px; background: #e6ba2d;}
    nav li:last-child a {border: 2px solid #e6ba2d; height: 40px !important; margin-top: 30px; margin-bottom: 30px; border-radius: 15px; margin-left: 10px;}
    
    h1, h2, h3, h4, .content, iframe, .wp-block-columns,.wp-block-table, .wp-block-media-text, .wp-block-button.cta, .subheading {max-width: 1320px; margin-left: auto; margin-right: auto; width: 100%;}
    article > ul, article > ol, article > p {max-width: 800px; padding-right: 520px; margin-left: auto; margin-right: auto; width: 100%;}

    .wp-block-column:first-child:nth-last-child(2), .wp-block-column:first-child:nth-last-child(2) ~ .wp-block-column {width: 50%;}
    .wp-block-column:first-child:nth-last-child(3), .wp-block-column:first-child:nth-last-child(3) ~ .wp-block-column {width: 33.333333%;}
    .wp-block-column:first-child:nth-last-child(4), .wp-block-column:first-child:nth-last-child(4) ~ .wp-block-column {width: 25%;}
    .wp-block-column:first-child:nth-last-child(5), .wp-block-column:first-child:nth-last-child(5) ~ .wp-block-column {width: 20%;}
    .wp-block-column:first-child:nth-last-child(6), .wp-block-column:first-child:nth-last-child(6) ~ .wp-block-column {width: 16.666666%;}

    .advantages {gap: 40px;}
    .services {gap: 20px;}
}