/*
Theme Name: Imperial Concierge Travel
Version: 1.0
Description: A child theme of Twenty Twenty
Template: twentytwenty
Author: Administrator
*/
@import url("../twentytwenty/style.css");


@import url("../ic-travel/assets/css/ic_travel.css");

:root {
    --admin-bar: 32px;
}

/*--------------------------------------------------ANIMACE*/

#top a,
#top a::after,
#top a::before,
#top h2,
#top button,
#top button::after,
#top button:before,
#top span,
#top span::after,
#top span::before,
#top img,
#top:not(.showing-modal) ul,
#top:not(.showing-modal) li,
#top:not(.showing-modal) li::after,
#top:not(.showing-modal) li::before,
header#site-header,
.hover-img,
.wp-block-image {
    transition: all 0.3s linear;
    -webkit-transition: all 0.3s -webkit-filter ease-in-out;
    -moz-transition: all 0.3s -moz-filter ease-in-out;
    -ms-transition: all 0.3s -ms-filter ease-in-out;
    -o-transition: all 0.3s -o-filter ease-in-out;
}


/*----------------------------------------------------------------------------------------------------TYPOGRAFIE*/

#top * {
    letter-spacing: unset;
}

strong {
    color: var(--n80);
}

body#top,
.entry-content,
.price,
.onsale,
.entry-content cite,
.entry-content figcaption,
.entry-content table,
.entry-content address,
.entry-content .wp-caption-text,
.entry-content .wp-block-file,
.entry-content p,
.entry-content li,
.entry-header p,
button,
.widget_text p,
.widget_text ol,
.widget_text ul,
.widget_text dl,
.widget_text dt,
.widget-content .rssSummary {
    font-family: var(--font);
    font-size: 18px;
    line-height: 135%;
    color: var(--n70);
}

#top .entry-content .has-large-font-size {
    font-size: 20px !important;
}

.entry-content p {
    margin-bottom: 16px;
}

.color-accent,
.color-accent-hover:hover,
.color-accent-hover:focus,
:root .has-accent-color,
.has-drop-cap:not(:focus):first-letter,
.wp-block-button.is-style-outline,
body a {
    color: var(--n100);
}

/*--------------------------------------------------NADPISY*/
#top h1.wp-block-heading ,
#top h2.wp-block-heading,
#top h3.wp-block-heading{
    margin: 60px 0 40px auto;
}

#top .wp-block-heading:first-child {
    margin-top: 0;
}



.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--heading-font);
    color: var(--black);
    line-height: 95%;
    font-weight: 400;
}

h1,
.heading-size-1 {
    font-size: 87px;
}

h2,
.heading-size-2 {
    font-size: 51px;
}

h3,
.heading-size-3 {
    font-size: 32px;
}

h4,
.heading-size-4 {
    font-size: 28px;
}

h5,
.heading-size-5 {
    font-size: 24px;
}

h6,
.heading-size-6 {
    font-size: 20px;
}

/*----------------------------------------------------------------------------------------------------GENERAL*/


/*--------------------------------------------------HIDE*/

.site-description,
p.powered-by-wordpress,
.home .entry-header,
.entry-content hr::before,
.entry-content hr::after,
hr.styled-separator::before,
hr.styled-separator::after,
.post-meta-wrapper.post-meta-edit-link-wrapper,
.toggle:not(.close-nav-toggle) svg.svg-icon,
.home div#breadcrumbs,
nav.pagination-single hr,
.singular .entry-header {
    display: none;
}


/*--------------------------------------------------ZÁKLADNÍ HTML*/




/*--------------------------------------------------LAYOUT*/
#top .section-inner,
.entry-content>.alignwide,
#breadcrumbs,
.woocommerce .content-area #main>*:not(header),
.woocommerce .entry-content>*:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) {
    width: calc(100% - 80px);
    max-width: 1240px;
    margin: 0 auto;
}

[class*="__inner-container"]>.alignwide {
    max-width: 1240px;
}

.wp-block-cover-image .wp-block-cover__inner-container,
.wp-block-cover .wp-block-cover__inner-container {
    width: calc(100% - 40px);
}

/*margins*/
.primary-menu>li,
ul.primary-menu,
.header-titles .site-logo,
.header-titles,
#top .wp-block-image,
.footer-widgets p,
#top .footer-nav-widgets-wrapper,
.footer-widgets {
    margin: 0;
}

#top .entry-content>.alignwide:first-child,
.wp-block-columns.alignfull+.wp-block-columns.alignfull,
#top .wp-block-heading:first-child,
#top .footer-widgets .wp-block-group,
#top .footer-widgets .wp-block-columns {
    margin-top: 0;
}

/*paddings*/
#top .af-submit,
.header-inner,
.alignfull:not(.has-background) .wp-block-columns,
#top .p-0 fieldset {
    padding: 0;
}

.post-inner {
    padding-top: 0;
}

#top .wp-block-cover .wp-block-cover__inner-container {
    padding: 60px 0;
}

/*--------------------------------------------------CLASSY*/
.mb-0 {
    margin-bottom: 0 !important;
}

.mt-0 {
    margin-top: 0 !important;
}

.h-100 {
    height: 100%;
}

#top .mb--120 {
    margin-bottom: -120px;
}

.overflow-visible,
#site-content {
    overflow: visible;
}

.position-relative {
    position: relative;
}

.column-link {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 2;
}

/*hover efekt na hp*/
.hover-img {
    position: absolute;
    left: 0;
    right: 0;
    top: 2px;
    opacity: 0;
}

.wp-block-column:hover .hover-img {
    opacity: 1;
}

.wp-block-column.hp-hover:hover .wp-block-image:not(.hover-img) {
    opacity: 0;
}

/*no-gap*/
#top .no-gap {
    gap: 0;
}

#top .no-gap.fw {
    padding: 0;
}

.no-gap.fw .wp-block-column {
    padding: 120px;
}

@media (min-width: 1280px) {
    .no-gap.fw .wp-block-column:first-child {
        padding-left: calc((100vw - 1240px) / 2);
    }

    .no-gap.fw .wp-block-column:last-child {
        padding-right: calc((100vw - 1240px) / 2);
    }
}

/*--------------------------------------------------HOVERY*/

.hp-hover:hover a,
.wp-block-button .wp-block-button__link:hover {
    text-decoration: none;
}

#top .is-style-outline .wp-block-button__link:hover,
#top .is-style-outline .wp-block-button__link:hover::before,
#top .primary-menu li:not(.current-menu-item)>a:hover {
    color: var(--p-100) !important;
    border-color: var(--p-100) !important;
}

#top .is-style-outline .wp-block-button__link.has-black-color:hover::before {
    margin-right: 10px;
}

#top .header-cta-btn a:hover {
    background: white;
    color: var(--p-100);
}

button:focus,
button:hover,
.button:focus,
.button:hover,
.faux-button:focus,
.faux-button:hover,
.wp-block-button .wp-block-button__link:focus,
.wp-block-button .wp-block-button__link:hover,
.wp-block-file .wp-block-file__button:focus,
.wp-block-file .wp-block-file__button:hover,
input[type="button"]:focus,
input[type="button"]:hover,
input[type="reset"]:focus,
input[type="reset"]:hover,
input[type="submit"]:focus,
input[type="submit"]:hover {
    background: var(--s-100);
    border-color: var(--s-100);
    text-decoration: none;
}

/*----------------------------------------------------------------------------------------------------DEFAULT BLOCKS*/
/*--------------------------------------------------BUTTONS*/
body button,
body .button,
body .faux-button,
body .wp-block-button__link,
body .wp-block-file .wp-block-file__button,
body input[type="button"],
body input[type="reset"],
body input[type="submit"],
body .bg-accent,
body .bg-accent-hover:hover,
body .bg-accent-hover:focus,
:root .has-accent-background-color,
body .comment-reply-link,
.single-product#top .woocommerce-variation-add-to-cart .button,
.is-style-outline .wp-block-button__link {
    background: var(--p-100);
    border: 1px solid var(--p-100);
    color: white;
    text-transform: none;
    font-weight: 400;
    line-height: 95%;
    padding: 14px 40px;
    border-radius: 25.5px;
}

.icon.plus .wp-block-button__link::before {
    content: "+";
}

#top .is-style-outline .wp-block-button__link {
    background: none;
    color: var(--p-100);
}

#top .is-style-outline .wp-block-button__link.has-black-color,
.icon.plus .wp-block-button__link.has-black-color::before {
    color: black;
    border-color: black;
}

#top .is-style-outline .wp-block-button__link.has-white-color,
.icon.plus .wp-block-button__link.has-white-color::before {
    color: white;
    border-color: white;
}

.wp-block-buttons {
    margin: 20px auto;
}


/*--------------------------------------------------FORMY*/
#top .acf-fields>.acf-field {
    padding: 0;
    border: none;
}

:focus-visible {
    outline: 1px solid var(--s-100);
}

#top input,
#top textarea,
#top select {
    font-size: 16px;
    padding: 10px;
    border: 1px solid var(--p-100);
    line-height: 150%;
    border-radius: 0;
}

fieldset {
    border: none;
    padding: 50px 60px;
}

.form-field {
    position: relative;
    margin-bottom: 16px;
}

.frm_primary_label {
    position: absolute;
    right: 8px;
    top: 8px;
    font-size: 0;
}

.frm_required {
    font-size: 16px;
}

.frm_submit {
    text-align: center;
}

/*--------------------------------------------------TABULKY*/

/*----------------------------------------------------------------------------------------------------CUSTOM BLOCKS*/
#top .loader {
    width: 50px;
    height: 50px;
    margin: 100px auto;
    background: url(/wp-content/themes/sweet-pain/assets/css/ajax-loader.gif)no-repeat;
}

#top .slider {
    transform: none;
    z-index: 1;
}

#top .slider:not(.slick-initialized) {
    transform: translateY(-200%);
    transform-origin: top;
}

/*----------------------------------------------------------------------------------------------------HEADER*/

header#site-header {
    width: 100%;
    z-index: 4;
    background: var(--s-100);
}

.header-titles-wrapper {
    justify-content: space-between;
}

#top .nav-toggle {
    position: unset;
    width: unset;
    padding-right: 0;
}

@media (min-width: 500px) {
    #top .nav-toggle {
        padding-left: 40px;
    }
}

/*CTA*/
.header-cta-btn a {
    background: var(--p-100);
    color: white;
    font-size: 14px;
    padding: 20px 26px;
}

@media (max-width: 1000px) {
    header#site-header {
        padding: 13px 0;
    }

    .header-cta-btn:not(.hcb-responsive),
    #top .site-logo img {
        display: none;
    }

    .header-titles {
        margin-right: auto;
    }

    #top .site-logo a {
        height: 32px;
        width: 48px;
        background: url(/wp-content/uploads/2025/06/ict_symbol.png);
        background-size: contain;
    }
}

@media (min-width: 1000px) {
    .header-cta-btn.hcb-responsive {
        display: none;
    }

    #top .site-logo {
        margin-bottom: -58px;
        padding: 28px 42px;
        background: var(--s-100);
    }
}

/*--------------------------------------------------TOPBAR*/


/*--------------------------------------------------LOGO*/

.site-logo img {
    max-height: 60px;
}

/*--------------------------------------------------MENU*/
body#top .primary-menu>li>a {
    color: white;
    font-size: 16px;
    padding: 10px 20px;
    text-decoration: none;
}


#top .primary-menu li.current-menu-item>a,
#top .primary-menu li.current-menu-item>.link-icon-wrapper>a {
    font-weight: 600;
}

/*--------------------SUBMENU*/


/*--------------------------------------------------BURGERMENU*/
body:not(.enable-search-modal) .header-titles-wrapper {
    justify-content: space-between;
    padding: 0;
}

.header-inner .toggle {
    position: relative;
}

button.toggle.close-nav-toggle.fill-children-current-color {
    outline: none !important;
}

#top .nav-toggle .toggle-icon {
    background: var(--p-100);
    width: 33px;
    height: 2px;
}

.nav-toggle .toggle-icon svg.svg-icon path,
span.toggle-text {
    display: none;
}

.nav-toggle .toggle-icon::before,
.nav-toggle .toggle-icon::after {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    display: block;
    background: var(--p-100);
    position: absolute;
}

.nav-toggle .toggle-icon::before {
    top: 3px;
}

.nav-toggle .toggle-icon::after {
    bottom: 8px;
    right: 0;
}


/*modal*/

.menu-modal-inner.modal-inner,
.menu-modal.active {
    background: var(--s-100);
    max-width: 500px;
    min-width: 500px;
    width: unset;
    left: unset;
    right: 0;
}

.modal-menu {
    left: unset;
    width: 100%;
}

.menu-wrapper .menu-item {
    border: none;
    border-color: var(--s-50);
}

#top .toggle.active .nav-toggle .toggle-icon {
    background: transparent;
}

.toggle.active .nav-toggle .toggle-icon::before {
    transform: rotate(-45deg) translate(-7px, 10px);
}

.toggle.active .nav-toggle .toggle-icon::after {
    transform: rotate(45deg) translate(-6px, -10px);
}

button.close-nav-toggle {
    padding: 19px;
}

button.close-nav-toggle svg {
    color: var(--p-100);
}

.modal-menu>li>a,
.modal-menu>li>.ancestor-wrapper>a {
    font-weight: 400;
    color: var(--p-100);
}

/*----------------------------------------------------------------------------------------------------MAIN CONTENT - BLOG*/
/*--------------------------------------------------SINGLE POST*/

#top .pagination-single {
    width: 100%;
    padding: 20px 0;
    font-size: 16px;
    border-top: 1px solid var(--neutral-10);
    margin-top: 40px;
}

/*----------------------------------------------------------------------------------------------------MAIN CONTENT - PAGE*/


/*--------------------------------------------------TITLE*/


/*--------------------BREADCRUMBY*/
div#breadcrumbs {
    padding: 10px 0;
    font-size: 14px;
    color: var(--neutral-70);
}

div#breadcrumbs a {
    color: var(--neutral-100);
}

/*--------------------------------------------------SIDEBAR*/


/*----------------------------------------------------------------------------------------------------FOOTER*/

.footer-nav-widgets-wrapper.header-footer-group {
    background: var(--s-100);
    color: var(--p-100);
    border: none;
}

.footer-widgets-wrapper {
    flex-direction: column;
    gap: 60px;
    margin-left: 0;
    width: 100%;
}

.footer-widgets {
    width: 100%;
}

#top .footer-nav-widgets-wrapper p {
    line-height: 24px;
    font-size: 14px;
}

#top .footer-widgets a {
    color: var(--p-100);
}

/*--------------------------------------------------SOCKET*/
#top footer#site-footer {
    background: var(--s-100);
    padding: 8px 0 40px;
    font-size: 14px;
    font-weight: 400;
    color: var(--p-100);
}

.footer-copyright {
    font-weight: 400;
}

.footer-widgets-outer-wrapper {
    padding: 120px 0;
    border: none;
}

.to-the-top {
    position: fixed;
    right: 40px;
    bottom: 40px;
}

.to-the-top span {
    font-size: 32px;
    color: var(--p-100);
}

#top .to-the-top>span {
    font-size: 0;
}

#site-footer a:focus,
#site-footer a:hover,
.header-cta-btn a {
    text-decoration: none;
}

/*----------------------------------------------------------------------------------------------------RESPONZE*/
/*malé notebooky*/
@media (max-width: 1280px) {
    .no-gap .wp-block-column:not(.with-cover) {
        padding: 120px 40px;
    }

    fieldset {
        padding: 0;
    }
}

@media (max-width: 1000px) {
    #top .hp-title {
        font-size: 64px !important;
        margin-top: 22px !important;
    }

    #hp-banner .wp-block-cover__inner-container {
        padding-bottom: 22px;
    }
}

@media (min-width: 782px) {
    .hide-desktop {
        display: none;
    }
}

/*tablety*/
@media (max-width: 782px) {
    :root {
        --admin-bar: 46px;
    }

    h1,
    .heading-size-1,
    .woocommerce-products-header__title.page-title {
        font-size: 44px;
    }

    #top h2,
    #top .heading-size-2 {
        font-size: 31px;
    }

    h3,
    .heading-size-3 {
        font-size: 28px;
    }

    h4,
    .heading-size-4 {
        font-size: 25px;
    }

    h5,
    .heading-size-5,
    #top .woocommerce-loop-product__title,
    .cart_item .product-name a,
    #top .sidebar .wp-block-heading,
    #top h2.tab-title,
    #top h3.item-title {
        font-size: 22px;
    }

    h6,
    .heading-size-6,
    #top .tab-content h3 {
        font-size: 19px;
    }

    #top .wp-block-heading {
        margin: 40px 0 20px auto;
    }

    .hide-782 {
        display: none;
    }

    .hp-subtitle {
        font-size: 20px !important;
    }

    .wp-block-buttons {
        margin-top: 40px;
    }

    .wp-block-buttons>.wp-block-button {
        width: 100%;
    }

    div#hp-banner {
        justify-content: flex-start;
        padding-left: 40px;
        padding-right: 40px;
    }

    .no-gap.fw .wp-block-column {
        padding: 60px 40px;
    }

    .reverse-782 {
        flex-direction: column-reverse;
    }

    .no-gap .wp-block-column:not(.with-cover) {
        padding: 60px 40px;
    }

    .footer-widgets-outer-wrapper {
        padding: 80px 0 10px;
    }

    .footer-nav-widgets-wrapper {
        text-align: center;
    }


    #top footer#site-footer {
        padding-bottom: 40px;
    }

    .footer-credits {
        width: 100%;
        text-align: center;
    }

    .wp-block-cover,
    .wp-block-cover-image {
        min-height: unset;
    }

    #form>.wp-block-cover__inner-container {
        padding: 22px 0 !important;
    }

    .footer-widgets-wrapper {
        gap: 0;
    }

    #top .mb--120 {
        margin-bottom: -80px;
    }
}

@media (max-width: 700px) {
    .wp-block-group.has-background {
        padding: 40px 40px 80px;
    }
}

/*mobily*/
@media (max-width: 500px) {
    #top .hp-title {
        font-size: 44px !important;
    }

    .hp-subtitle {
        font-size: 18px !important;
    }

    #top .section-inner,
    .entry-content>.alignwide,
    #breadcrumbs,
    .woocommerce .content-area #main>*:not(header),
    .woocommerce .entry-content>*:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) {
        width: calc(100% - 40px);
    }

    .wp-block-cover-image .wp-block-cover__inner-container,
    .wp-block-cover .wp-block-cover__inner-container {
        width: 100%
    }

    .menu-modal-inner.modal-inner,
    .menu-modal.active {
        min-width: 100vw;
    }

    .wp-block-group.has-background {
        padding: 40px 20px 80px;
    }

    div#hp-banner {
        padding-left: 20px;
        padding-right: 20px;
    }

    #top .no-gap.fw .wp-block-column {
        padding: 60px 20px;
    }

    .no-gap .wp-block-column:not(.with-cover) {
        padding: 20px;
    }

    #top .wp-block-cover .wp-block-cover .wp-block-cover__inner-container {
        padding: 20px 0;
    }

    #form>.wp-block-cover__inner-container {
        padding: 0 !important;
    }

    #top .mb--120 {
        margin-bottom: -40px;
    }
}