/*
Theme Name: DRS
Author: info@drs.cz
Text Domain: drs
Version: 1.0
*/

/*
Přepsání výchozích proměnných Bootstrap
--------------------------------------------
$body-color: #414141;
$line-height-base: 1.8;
$font-family-base: 'Open Sans', sans-serif;
$primary: #96c11f;
$dark: #1d1d1b;
$secondary: #757575;
$success: #79a403;
$warning: #dba22e;
$info: #3ad0e0;
$danger: #e0290d;
$light: #f2f2f2;
$h1-font-size: 1.875rem;
$h2-font-size: 1.625rem;
$h3-font-size: 1.375rem;
$h4-font-size: 1.25rem;
$h5-font-size: 1.125rem;
*/


/* VARIABLES
-------------------------------------------------- */
:root {
    --secondary-font: 'Poppins', sans-serif;
}

/* GLOBAL STYLES
-------------------------------------------------- */
html { background-color: var(--bs-dark); scroll-behavior: smooth!important; }
body { }
.wp-block-separator { opacity: 1; border-bottom: none!important; border-top: 1px dotted var(--bs-gray-500); background-color: transparent; }
table th { font-weight: 600; }
embed, iframe, object { margin-bottom: 1rem; max-width: 100%; border: none; }
img, video { height: auto; max-width: 100%; }
li::marker { color: var(--primary-color); }
ol li::marker { font-weight: 600; color: inherit; }
.fw-500 { font-weight: 500!important; }
.fw-600 { font-weight: 600!important; }
.screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; word-break: normal; }
.grecaptcha-badge { visibility: collapse !important; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignleft { float: left; margin: 0.5rem 1em 0.5rem 0; }
.alignright { float: right; margin: 0.5rem 0 0.5rem 1rem; }

.lg-backdrop { background-color: var(--bs-dark); }
.lg-outer .lg-thumb-outer, .lg-outer .lg-toogle-thumb { background-color: rgba(0, 0, 0, 0.75); }
.lg-outer .lg-thumb-item.active, .lg-outer .lg-thumb-item:hover { border-color: var(--bs-primary); }
.lg-toolbar .lg-icon, .lg-actions .lg-next, .lg-actions .lg-prev, .lg-outer .lg-toogle-thumb, .lg-outer.lg-dropdown #lg-share { color: var(--bs-gray-500); }
.lg-toolbar .lg-icon:hover, .lg-actions .lg-next:hover, .lg-actions .lg-prev:hover, .lg-outer .lg-toogle-thumb:hover, .lg-outer.lg-dropdown-active #lg-share { color: var(--bs-primary); }
.lg-sub-html { font-size: 100%; color: #fff; }
.lg-sub-html a { color: inherit; }
.lg-outer .lg-item { background: url(images/ajax-loader.svg) center center no-repeat; }
.lg-object { margin: 0; box-shadow: 0px 5px 20px 1px rgba(0, 0, 0, 0.35); }
.lg-img-wrap > img { background-color: #fff; }

#cookie-law-info-bar { padding: 1rem!important; background: hsla(0,0%,100%,.95)!important; box-shadow: 0 -2px 8px 0 rgb(0 0 0 / 25%)!important; }
#cookie-bar { max-width: 680px; margin: 0 auto; text-align: center; font-weight: 400; }
#cookie-bar .cli-plugin-main-link, #cookie-bar .cookie_action_close_header_reject { text-decoration: underline!important; font-weight: inherit!important; color: var(--primary-light-color)!important; }
#cookie-bar .title { margin-bottom: .5rem; line-height: 1.3; font-size: 1.25rem; font-weight: 700; }
#cookie-bar .bar-text { margin-bottom: 1rem; vertical-align: middle; }
#cookie-bar .bar-text.after-button { margin-bottom: 0; }
#cookie-bar .button-bar { display: flex; justify-content: center; align-items: center; margin-bottom: 1rem; }
#cookie-bar .button-bar a { display: block; margin: 0 .25rem 0 0!important; padding: .375rem .75rem!important; border: 1px solid transparent!important; border-radius: .25rem!important; line-height: 1.5; text-decoration: none; font-size: 1rem!important; }
#cookie-bar .button-bar a.cli_settings_button { border-color: var(--bs-primary)!important; color: var(--bs-primary)!important; background-color: transparent!important; }
#cookie-bar .button-bar a.cli_settings_button:hover { color: #fff!important; background-color: var(--bs-primary)!important; }
.cli-modal .cli-tab-container h4, .cli-modal .cli-tab-container h1 { font-weight: 700; }
.cli-modal table.cookielawinfo-winter { font-family: inherit; }
.cli-modal table.cookielawinfo-winter thead th { border-color: var(--bs-primary); background-color: var(--bs-primary); }
.cli-modal table.cookielawinfo-winter tbody td, .cli-modal table.cookielawinfo-winter tbody th { border-bottom: 1px solid var(--bs-gray-500); background: var(--bs-light); }
.cli-modal .cli-switch input:checked + .cli-slider { background-color: var(--bs-primary); }
.cli-modal .cli-tab-footer .wt-cli-privacy-accept-btn { border-radius: .25rem; background-color: var(--bs-primary); }

/* HEADER
-------------------------------------------------- */
#header { position: sticky; top: 0; z-index: 100; background: #fff url('images/bg-header.webp') repeat-y 50% 0; }
body.sticky-header #header { z-index: 999; }
#header .navbar { align-items: stretch; flex-wrap: nowrap; padding: 0; }
#header .navbar-brand { background-color: #fff; }
#header .navbar-nav { flex: 1 1 auto; background-color: var(--bs-light); }
#header .navbar-right { display: flex; align-items: center; justify-content: flex-end; flex-wrap: nowrap; flex: 1 1 auto; background-color: var(--bs-light); }
#navbar_search_form { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #fff; opacity: 0; transition: none; transition: opacity .15s ease-in-out; }
#navbar_search_form.show { opacity: 1; }
#navbar_search_form .search-form-wrap { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; }
#navbar_search_form .search-form-wrap form { width: 100%; }
#header ul.icon-links { color: var(--bs-dark); }
#header ul.icon-links > li .link-icon { background-color: var(--bs-dark); }

#masthead_top a { color: #f2f2f2; text-decoration: none; }
#masthead_top a:hover { color: #ffffff; text-decoration: none; }

/* MAIN
-------------------------------------------------- */
#main:not(.page-full) .main-content { padding: 3rem 0; }

.main-header { position: relative; overflow: hidden; color: #fff; }
.main-header .header-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.main-header .header-bg img { max-width: none; width: 100%; height: 100%; object-fit: cover; }
.main-header .container { position: relative; display: flex; }
.main-header .main-header-in { position: relative; margin: 2rem 0; padding: 2rem 3rem 2rem 0; background-color: rgba(0,0,0,.65); }
.main-header .main-header-in:before { content: ''; position: absolute; top: 0; right: 100%; width: 5000px; height: 100%; background-color: rgba(0,0,0,.65); }
.main-header h1 { margin: 0; text-transform: uppercase; }

.main-container .breadcrumbs { display: flex; }
.main-container .breadcrumbs nav { position: relative; padding: .5rem 2rem .5rem 0; font-size: .875rem; color: rgba(0,0,0,.5); background-color: var(--bs-light); }
.main-container .breadcrumbs nav:before { content: ''; position: absolute; top: 0; right: 100%; width: 5000px; height: 100%; background-color: var(--bs-light); }
.main-container .breadcrumbs a:not(:hover) { color: inherit; }

.post-meta { display: flex; font-size: .875rem; }
.post-meta ul { position: relative; display: flex; align-items: center; flex-wrap: wrap; margin: 0; padding: .25rem 1rem .25rem 0; list-style: none; color: rgba(0,0,0,.5); background-color: var(--bs-light); }
.post-meta ul:before { content: ''; position: absolute; top: 0; right: 100%; width: 5000px; height: 100%; background-color: var(--bs-light); }
.post-meta ul li { display: flex; align-items: center; }
.post-meta ul li:not(:last-child):after { content: '|'; padding-left: .5rem; padding-right: .5rem; }
.post-meta ul li a:not(:hover) { color: inherit; }
.post-meta .meta-icon { padding-right: .5rem; }

#share-buttons { display: flex; flex-wrap: wrap; margin: 0!important; }
#share-buttons a.btn { display: none; width: auto; margin: 0!important; border: none; color: rgba(0,0,0,.5); }
#share-buttons a.btn:not(:hover) { background-color: transparent; }
#share-buttons a.btn-twitter, #share-buttons a.btn-facebook, #share-buttons a.btn-pinterest, #share-buttons a.btn-whatsapp { display: block; }

.wp-block-image { margin-bottom: 1rem; }
figure.wp-block-image { display: inline-block; }
.wp-block-gallery figure a { position: relative; display: block; overflow: hidden; cursor: pointer; }
.wp-block-image figcaption a, .wp-block-gallery figcaption a { position: static; display: inline; }
.wp-block-image figcaption, .wp-block-video figcaption, .gallery .gallery-caption { margin: 0; padding: .5rem 0 0; text-align: center; font-size: 90%; color: var(--bs-gray-600); background: none; }
.wp-block-gallery figure { flex-direction: column; }
.wp-block-gallery figure a:before, .gallery-slider .gallery-main a:before, .posts a.post-wrap .post-image:before { content: ''; position: absolute; top: 0; left: 0; transition: all .2s; backface-visibility: hidden; width: 100%; height: 100%; background-color: var(--bs-primary); opacity: 0; }
.wp-block-gallery figure a:hover:before, .gallery-slider .gallery-main a:hover:before, .posts a.post-wrap:hover .post-image:before { z-index: 1; opacity: .45; }
.wp-block-gallery figure a:after, .gallery-slider .gallery-main a:after, .posts a.post-wrap .post-image:after { content: ''; position: absolute; top: 45%; left: 50%; transform: translate(-50%, -50%); transition: all .3s; width: 2.5rem; padding-bottom: 2.5rem; background-image: url('images/expand.svg'); background-repeat: no-repeat; background-position: 50% 50%; background-size: cover; opacity: 0; }
.wp-block-gallery figure a:hover:after, .gallery-slider .gallery-main a:hover:after, .posts a.post-wrap:hover .post-image:after { z-index: 1; top: 50%; opacity: 1; }
.wp-block-image figcaption a:before, .wp-block-image figcaption a:after, .wp-block-gallery figcaption a:before, .wp-block-gallery figcaption a:after, .wp-block-gallery figcaption:empty { display: none; }
.wp-block-gallery figcaption { position: absolute; bottom: 0; left: 0; width: 100%; }

.gallery { margin: auto -6px; padding: 6px 0; line-height: 1; overflow-x: hidden; }
.gallery .gallery-item { float: left; margin: 0; text-align: center; padding: 6px; box-sizing: border-box; }
.gallery-columns-1 .gallery-item { width: 100%; }
.gallery-columns-2 .gallery-item { width: 50%; }
.gallery-columns-3 .gallery-item { width: 33.333%; }
.gallery-columns-4 .gallery-item { width: 25%; }
.gallery-columns-5 .gallery-item { width: 20%; }
.gallery-columns-6 .gallery-item { width: 16.665%; }
.gallery-columns-7 .gallery-item { width: 14.285%; }
.gallery-columns-8 .gallery-item { width: 12.5%; }
.gallery-columns-9 .gallery-item { width: 11.111%; }

.wp-block-embed .wp-block-embed__wrapper { position: relative; }
.wp-has-aspect-ratio .wp-block-embed__wrapper:before { content: ''; display: block; padding-top: 50%; }
.wp-embed-aspect-16-9 .wp-block-embed__wrapper:before { padding-top: 56.25%; }
.wp-has-aspect-ratio iframe { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; }

.wp-block-file { clear: both; }
.wp-block-file a { display: flex; align-items: center; }
.wp-block-file a:hover { text-decoration: underline; }
.wp-block-file a.wp-block-file__button { display: none; }
.wp-block-file a:before { content: "\f56d"; padding-right: .5rem; vertical-align: middle; font-family: "Font Awesome 5 Free"; font-size: 1.5rem; font-weight: 700; color: var(--bs-danger); }
.wp-block-file a[href$='.pdf']:before, .wp-block-file a[title$='.pdf']:before { content: "\f1c1"; }
.wp-block-file a[href$='.doc']:before, .wp-block-file a[href$='.odt']:before, .wp-block-file a[title$='.doc']:before, .wp-block-file a[title$='.odt']:before { content: "\f1c2"; }
.wp-block-file a[href$='.xlsx']:before, .wp-block-file a[href$='.xls']:before, .wp-block-file a[title$='.xlsx']:before, .wp-block-file a[title$='.xls']:before { content: "\f1c3"; }
.wp-block-file a[href$='.jpg']:before, .wp-block-file a[href$='.jpeg']:before, .wp-block-file a[href$='.png']:before, .wp-block-file a[title$='.jpg']:before, .wp-block-file a[title$='.jpeg']:before, .wp-block-file a[title$='.png']:before { content: "\f1c5"; }
.wp-block-file a[href$='.zip']:before, .wp-block-file a[href$='.rar']:before, .wp-block-file a[title$='.zip']:before, .wp-block-file a[title$='.rar']:before { content: "\f1c6"; }
.wp-block-file a[href$='.wmv']:before, .wp-block-file a[href$='.mkv']:before, .wp-block-file a[title$='.wmv']:before, .wp-block-file a[title$='.mkv']:before { content: "\f1c8"; }
.wp-block-file a[href$='.ppsx']:before, .wp-block-file a[title$='.ppsx']:before { content: "\f1c4"; }
.wp-block-file a[href$='.mp3']:before, .wp-block-file a[title$='.mp3']:before { content: "\f1c7"; }
.wp-block-file.link a:before { content: '\f35d'; font-size: 1rem; padding-top: .25rem; font-weight: 700; }

.wp-block-table table th, .wp-block-table table strong { font-weight: 600; }
.wp-block-table table th, .wp-block-table table td { padding: .5rem .5rem; vertical-align: top; border: 1px solid var(--bs-gray-400); }
.wp-block-table table thead td, .wp-block-table table thead th { border-color: var(--secondary-color); border-bottom-width: 2px; color: #fff; background-color: var(--bs-gray-200); }
.wp-block-table table tbody td, .wp-block-table table tbody th { }
.wp-block-table figcaption { margin: .5rem 0 0 0; text-align: center; font-size: .875rem; color: var(--bs-gray-600); }

body .main-container ul.page-numbers { display: flex; justify-content: center; align-items: center; margin: 0 0 1rem 0; padding: 0; border: none; list-style: none; }
body .main-container ul.page-numbers li { float: none; display: block; border: none; }
body .main-container ul.page-numbers li a, body .main-container ul.page-numbers li span { display: block; width: 40px; height: 40px; margin: 0 .1rem; padding: 0; border-radius: .5rem; line-height: 40px; text-align: center; text-decoration: none; font-weight: 600; color: #fff; background-color: var(--bs-primary); }
body .main-container ul.page-numbers li span.current { color: var(--bs-dark); background-color: var(--bs-gray-200); }
body .main-container ul.page-numbers li a:focus, body .main-container ul.page-numbers li a:hover { background-color: var(--bs-success); }
body .main-container ul.page-numbers a.prev, body .main-container ul.page-numbers a.next { font-size: 0; color: var(--bs-success); background-color: transparent!important; }
ul.page-numbers li a.prev:after, ul.page-numbers li a.next:after { content: ''; font-family: "Font Awesome 5 Free"; font-size: 1rem; font-weight: 700; }
ul.page-numbers li a.prev:after { content: '\f060'; }
ul.page-numbers li a.next:after { content: '\f061'; }

/* POSTS LOOP
-------------------------------------------------- */
.posts-slider { position: relative; }
.posts-slider .posts { padding: .5rem .75rem 1rem; }
.posts-slider .posts .post { position: relative; flex-shrink: 0; margin-bottom: 0; transition-property: transform; }
.posts-slider-prev, .posts-slider-next { width: 50px; height: 60px; color: rgba(255,255,255,.6); background-color: rgba(0,0,0,.5); }
.posts-slider-prev { left: .75rem; border-radius: 0 .5rem .5rem 0; }
.posts-slider-next { right: .75rem; border-radius: .5rem 0 0 .5rem; }
.posts-slider-prev:after, .posts-slider-next:after { font-size: 30px; }
.posts .post { margin-bottom: 1.5rem; }
.posts .post .card { height: 100%; border: none; border-radius: 0; text-decoration: none; color: #fff; box-shadow: 0 0.25rem 0.75rem 0px rgb(0 0 0 / 15%); }
.posts .post .card-body { text-align: center; background-color: var(--bs-primary); transition: background-color 0.15s ease-in-out; }
.posts .post .card:hover .card-body { background-color: var(--bs-success); }
.posts .post .card-title { text-transform: uppercase; font-weight: 600; }


ul.icon-links { padding: 0; list-style: none; }
ul.icon-links > li { margin: 0 0 .75rem; }
ul.icon-links > li > a { display: inline-flex; align-items: baseline; white-space: nowrap; text-decoration: none; color: inherit; }
ul.icon-links > li > a:hover .social-icon-text { text-decoration: underline; }
ul.icon-links > li .link-icon { display: block; flex: 0 0 1.75rem; width: 1.75rem; height: 1.75rem; line-height: 1.75rem; border-radius: 100%; text-align: center; font-size: .875rem; color: #fff; background-color: var(--bs-primary); }
ul.icon-links > li .link-text { display: block; margin-left: .75rem; overflow: hidden; text-overflow: ellipsis; font-size: .875rem; font-weight: 600; }
ul.icon-links > li .link-text > span { display: block; line-height: 1.5; font-weight: 400; }

/* FOOTER
-------------------------------------------------- */
#footer { color: var(--bs-light); background-color: var(--bs-dark); }

#footer ul.icon-links > li .link-text { opacity: .75; }

#footer_map { position: relative; display: block; height: 100%; min-height: 400px; overflow: hidden; }
#footer_map img.map { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); max-width: none; opacity: .4; transition: all .5s; filter: grayscale(1); }
#footer_map:hover img.map { opacity: 1; filter: grayscale(0); }
#footer_map img.map-marker { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); max-width: none; margin-top: -40px; }

#footer_menu { text-align: center; }
#footer_menu li { margin-bottom: .25rem; }
#footer_menu a { text-decoration: none; text-transform: uppercase; font-weight: 500; color: #fff; }
#footer_menu a:hover { text-decoration: underline; }

#footer .contact-form { background-color: var(--bs-light); display: flex; justify-content: center; padding: 1.5rem; }
.wpcf7-not-valid.form-control, .wpcf7-not-valid.form-select { background-color: #fff1f1; }
.wpcf7-form.invalid .form-check-input:checked { background-color: var(--primary-color); }
.wpcf7-form.invalid .wpcf7-not-valid .form-check-input { border-color: var(--secondary-lighter-color); background-color: #ffeded; }
.wpcf7-not-valid.form-control, .wpcf7-not-valid.form-select { border-color: #ff7474!important; }
.invalid .wpcf7-form-control.form-control:not(.wpcf7-not-valid) { background-color: #f7ffe2; }
.wpcf7-form.invalid .form-control, .wpcf7-form.invalid .form-select, .wpcf7-form.invalid select { border-color: #ced4da; }

.top-button { z-index: 99; right: 5%; bottom: 30px; opacity: 0; transition: opacity 1s; }
.top-button.visible { opacity: 1; }

/* RESPONSIVE CSS
-------------------------------------------------- */
@media (max-width: 575.98px) {
    #header .navbar-brand img { width: 100%; max-height: 50px; }
}

@media (min-width: 576px) {
}

@media (max-width: 767.98px) {
}

@media (min-width: 768px) {
}

@media (max-width: 991.98px) {
    #header .navbar-nav { position: fixed; z-index: 100; top: -100%; left: 0; width: 100%; height: 100vh; padding: 1rem; overflow: auto; overscroll-behavior: contain; background-color: var(--bs-primary); transition: top .3s ease-in-out; }
    #header .navbar-nav.show { top: 0; }
}

@media (min-width: 992px) {
    #header .navbar-brand { padding: 1rem 2rem 1rem 0; }
    #header .navbar-nav { display: flex; align-items: stretch; padding-left: 2rem; }
    .main-content h1, .main-content .h1, .main-content h2, .main-content .h2, .main-content h3, .main-content .h3, .main-content h4, .main-content .h4, .main-content h5, .main-content .h5, .main-content h6, .main-content .h6 { margin-bottom: 1rem; }    
    .main-content h1, .main-content .h1, .main-content h2, .main-content .h2, .main-content h3, .main-content .h3 { margin-top: 2rem; }    
    .main-content h4, .main-content .h4, .main-content h5, .main-content .h5, .main-content h6, .main-content .h6 { margin-top: 1.5rem; }
    .main-content h1:first-child, .main-content .h1:first-child, .main-content h2:first-child, .main-content .h2:first-child, .main-content h3:first-child, .main-content .h3:first-child, .main-content h4:first-child, .main-content .h4:first-child, .main-content h5:first-child, .main-content .h5:first-child, .main-content h6:first-child, .main-content .h6:first-child { margin-top: 0; }    
}
@media (max-width: 1199.98px) {
}
@media (min-width: 1200px) {
}