/*
Theme Name: sweet-pain
Version: 1.0
Description: A child theme of Twenty Twenty
Template: twentytwenty
Author: Administrator
*/

@import url("../twentytwenty/style.css");
@import url("../sweet-pain/assets/css/spt.css");

:root {
    --admin-bar: 32px;
    --site-header: 102px;
}

/*--------------------------------------------------ANIMACE*/
.wp-block-image .alignleft {
    float: unset;
    margin-left: 0;
}
#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,
.mapa {
    transition: all 0.3s linear;
    -webkit-transition: all 0.3s -webkit-filter linear;
    -moz-transition: all 0.3s -moz-filter linear;
    -ms-transition: all 0.3s -ms-filter linear;
    -o-transition: all 0.3s -o-filter linear;
}

/*----------------------------------------------------------------------------------------------------TYPOGRAFIE*/

#top * {
    letter-spacing: unset;
}

#top p a {
    color: white;
    font-weight: 700;
}

#top p:not(.icon) a:not(.icon) {
    text-decoration: underline !important;
}

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,
.woocommerce table.shop_table tbody tr,
.woocommerce-page table.shop_table tbody tr,
.woocommerce-error,
.woocommerce-info,
.woocommerce-message.woocommerce-message,
#site-content .woocommerce-error,
#site-content .woocommerce-info,
.entry-content p,
.entry-content li,
.entry-header p,
button,
#top .header-footer-group,
.widget-content,
table,
table *,
.widget_text p {
    font-family: var(--primary-font), sans-serif;
    font-size: 16px;
    line-height: 150%;
    color: var(--neutral-20);
}


.has-large-font-size {
    font-size: 20px !important;
}

.entry-content p {
    margin-bottom: 20px;
}

.entry-content p.icon:not(:last-child) {
    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(--primary-100);
}

/*--------------------------------------------------IKONY*/
p.icon a {
    font-weight: 700;
    color: white;
}

#top .icon:not(p):not(.wp-block-button),
#top .icon a,
#top .icon.home a,
#top .wp-block-button.icon a {
    position: relative;
    padding-left: 28px;
}

#top .wp-block-button.icon a {
    padding-left: 58px;
}

#top .footer-widgets p.icon a {
    color: white
}

#top .icon:not(p):not(.wp-block-button)::before,
#top .icon a::before,
#top .icon.home::before,
#top .wp-block-button.icon a::before {
    content: "";
    display: inline-block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 24px;
    height: 24px;
    bottom: -2px;
    background-repeat: no-repeat !important;
    background-position: center !important;
}

#top .wp-block-button.icon a::before {
    bottom: 12px;
    lefT: 30px;
}

#top .icon.home::before {
    background: url(/wp-content/themes/sweet-pain/assets/img/home-white.svg);
    width: 16px !important;
    height: 16px !important;
}

#top .icon:not(p):not(.wp-block-button).mail.primary::before,
#top .icon.mail.primary a::before {
    background: url(/wp-content/themes/sweet-pain/assets/img/mail-primary.svg);
    bottom: -2px;
}

#top .icon:not(p):not(.wp-block-button).talk.white::before,
#top .icon.talk.white a::before {
    background: url(/wp-content/themes/sweet-pain/assets/img/talk-white.svg);
}

#top .footer-widgets .icon.mail.primary a::before {
    bottom: 2px;
}

#top .icon:not(p):not(.wp-block-button).pin.primary::before,
#top .icon.pin.primary a::before {
    background: url(/wp-content/themes/sweet-pain/assets/img/pin-primary.svg);
}

#top .icon:not(p):not(.wp-block-button).bus.primary::before,
#top .icon.bus.primary a::before {
    background: url(/wp-content/themes/sweet-pain/assets/img/bus-primary.svg);
}


#top .icon:not(p):not(.wp-block-button).cal.white::before,
#top .icon.cal.white a::before {
    background: url(/wp-content/themes/sweet-pain/assets/img/cal-white.svg);
}

#top .icon:not(p):not(.wp-block-button).phone.primary::before,
#top .icon.phone.primary a::before {
    background: url(/wp-content/themes/sweet-pain/assets/img/phone-primary.svg);
    bottom: 0;
}


#top .icon:not(p):not(.wp-block-button).portfolio::before,
#top .icon.portfolio a::before {
    background: url(/wp-content/themes/sweet-pain/assets/img/portfolio-white.svg);
}

#top .icon:not(p):not(.wp-block-button).info::before,
#top .icon.info a::before {
    background: url(/wp-content/themes/sweet-pain/assets/img/info-white.svg);
}

/*--------------------------------------------------NADPISY*/
#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,

#top H1,
#top H2,
#top H3,
#top H4,
#top H5,
#top H6 {
    font-family: var(--heading-font);
    color: var(--white);
    line-height: normal;
    font-weight: 700;
    text-transform: uppercase;
    margin-top: 40px;
    margin-bottom: 20px;
}

#top h1,
#top .heading-size-1 {
    font-size: 72px;
}

#top h2,
#top .heading-size-2 {
    font-size: 46px;
}

h3,
.heading-size-3 {
    font-size: 38px;
}

h4,
.heading-size-4 {
    font-size: 28px;
}

h5,
.heading-size-5 {
    font-size: 24px;
}

h6,
.heading-size-6 {
    font-size: 20px;
}

/*----------------------------------------------------------------------------------------------------GENERAL*/

#top a,
#top button,
#top .button,
.primary-menu a:hover,
.primary-menu a:focus,
.primary-menu .current_page_ancestor {
    text-decoration: none !important;
}

body#top {

    background-attachment: fixed;

}

/*--------------------------------------------------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 svg.svg-icon,
.home div#breadcrumbs,
.single-team-member .post-meta-wrapper,
#top .wp-google-time,
.primary-menu ul::before,
.primary-menu>li>.icon,
.slick-dots li button:before,
.frm_primary_label,
button.close-nav-toggle,
span.lb-number,
.single-team-member nav.pagination-single,
.single-team-member a.autor-link,
body:not(.overlay-header) .primary-menu>li>ul:after,
nav.filter-nav ul input,
.primary-menu .icon,
body:not(.overlay-header) .primary-menu ul ul:after,
.acf-field .acf-label label,
span.lb-caption,
.slb_data,
.kt-accodion-icon-style-basic .kt-blocks-accordion-icon-trigger:before,
.kt-accodion-icon-style-basiccircle .kt-blocks-accordion-icon-trigger:before,
.kt-accodion-icon-style-basic .kt-blocks-accordion-icon-trigger:after,
.kt-accodion-icon-style-basiccircle .kt-blocks-accordion-icon-trigger:after,
li.wp-social-link.wp-social-link-behance svg,
.wpbc_calendar_wraper.wpbc_change_over_triangle>div:nth-child(2) {
    display: none !important;
}


/*--------------------------------------------------ZÁKLADNÍ HTML*/




/*--------------------------------------------------LAYOUT*/
.section-inner,
.entry-content>.alignwide,
.wp-block-cover.alignfull .alignwide,
.wp-block-group.alignfull .alignwide,
.fullwidth-slider .alignwide {
    width: calc(100% - 40px);
    max-width: 1440px;
    margin: 0 auto;
}

.alignwide .alignwide {
    max-width: unset;
    width: 100%;
}
#top .wp-block-social-links {
    margin-bottom: 20px;
}
[class*="__inner-container"]>*:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) {
    max-width: 700px;
}

:where(.wp-block-columns.is-layout-flex) {
    gap: 30px;
}

.wp-block-columns {
    z-index: 1;
}

.entry-content>.alignwide:not(.wp-block-group.has-background),
.entry-content>.alignfull:not(.wp-block-group.has-background),
.wp-block-columns.alignwide+.wp-block-columns.alignwide {
    margin: 100px auto;
}

:where(.wp-block-columns.has-background) {
    padding: 50px 100px;
}

#top .has-background {
    padding: 50px;
}

.wp-block-cover,
.wp-block-cover-image {
    padding: 80px 20px;
}

#top .main-services .wp-block-cover {
    padding: 0 20px !important;
}

.main-services .wp-block-cover .wp-block-cover__image-background {
    mix-blend-mode: unset;
    opacity: 1;
}

#top .wp-block-cover .wp-block-cover__inner-container,
#top .wp-block-cover.alignfull .alignwide {
    width: 100%;
}

#top .entry-content>.alignwide:first-child,
#top .entry-content>.alignfull:first-child {
    margin-top: 0;
}

#top p.icon:not(:last-of-type) {
    margin-bottom: 10px;
}

/*kill margins*/
.primary-menu>li,
ul.primary-menu,
#top .main-services h2,
#top .wp-block-image,
table,
#top h1.entry-title,
.footer-widgets,
.footer-widgets-wrapper,
#top .acf-field .acf-label,
#top .wp-block-gallery,
#top .booking_form .form-group {
    margin: 0;
}

/*kill paddings*/
.home .post-inner,
.alignfull .wp-block-columns:not(.has-background),
#top .af-submit {
    padding: 0;
}


/*--------------------------------------------------CLASSY*/
.mb-0 {
    margin-bottom: 0 !important;
}

.mb-10 {
    margin-bottom: 10px !important;
}


.mt-0 {
    margin-top: 0 !important;
}


#top .v-cards .wp-block-columns {
    margin-bottom: 10px !important;
    gap: 10px;
}

#top .voucher {
    background: url(/wp-content/themes/sweet-pain/assets/img/voucher.png) no-repeat center right, radial-gradient(circle at right top, rgba(255, 255, 255, 0.20) 0%, rgba(255, 255, 255, 0.00) 100%), #161617 !important;
}

.box-shadow {
    box-shadow: 0px 0px 50px 0px rgba(0, 0, 0, 0.50);
}

#top a.column-link {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    max-width: unset;
}

.has-link {
    position: relative;
}

.font-secondary,
.font-secondary p {
    font-family: var(--secondary-font) !important;
}

.proofs .wp-block-column {
    backdrop-filter: blur(10px);
    background: rgba(255, 255, 255, 0.30);
    padding: 30px;
}

#top .proofs h4 {
    margin: 10px auto 12px auto;
}

#top .mapa {
    max-width: unset;
    width: 100%;
}

/*rozcestník služeb na hp*/
#top .main-services {
    margin-top: -50px;
}

#top .main-services .wp-block-cover img,
.mapa {
    filter: grayscale(1);
}

#top .main-services .wp-block-cover:hover img {
    filter: grayscale(0) blur(1px) !important;
}

/*bordery*/
.border-top {
    border-top: 3px solid;
}

.border-top.primary {
    border-color: var(--primary-100);
}

/*ellipse*/
h1.entry-title {
    position: relative;
}

.ellipse::before,
main#site-content::before {
    content: "";
    display: block;
    width: 1089px;
    height: 1089px;
    position: absolute;
    background: radial-gradient(48.74% 48.74% at 50% 50%, #A82536 0%, rgba(168, 37, 54, 0.00) 100%);
    opacity: 0.6;
    z-index: -1;
}

main#site-content::before {
    top: -544.5px;
    left: 50%;
    transform: translateX(-50%);
    max-width: 100vw;
}

.ellipse.top::before {
    bottom: 50%;
}

.ellipse.bottom::before {
    top: 50%;
}


.ellipse.center::before {
    right: 0;
    left: 0;
    margin: 0 auto;
}

.ellipse.left::before {
    left: -600px;
    bottom: 0;
}

.ellipse.right::before {
    right: -600px;
    bottom: 0;
}

/*--------------------------------------------------HOVERY*/
.post-grid .autor-link:hover {
    background: var(--primary-10);
}

#top .team-member .icons a:hover::before {
    color: var(--primary-10);
}

/*obrázky - zoom a obarvení na hoveru*/
.post-grid .item-link,
.wp-block-image a {
    display: block;
    overflow: hidden;
}

.post-grid .item-link img,
.team-member .item-link img,
.wp-block-image a img {
    filter: grayscale(1);
}

.mapa:hover {
    filter: grayscale(0);
}

.post-grid .item-link:hover img,
#top .main-services .wp-block-cover:hover img,
.main-services .wp-block-cover:hover .wp-block-cover__background,
.team-member .slider-item:hover img,
#top li.has-image:hover img,
.wp-block-image a:hover img {
    filter: grayscale(0);
    transform: scale(1.1);
}

#top body .wp-block-button__link:hover,
#top button:not(.toggle):not(.kt-blocks-accordion-header):focus,
#top button:not(.toggle):not(.kt-blocks-accordion-header):hover,
#top .button:focus,
#top .button:hover,
#top .faux-button:focus,
#top .faux-button:hover,
#top .wp-block-button .wp-block-button__link:focus,
#top .wp-block-button .wp-block-button__link:hover,
#top .wp-block-file .wp-block-file__button:focus,
#top .wp-block-file .wp-block-file__button:hover,
#top input[type="button"]:focus,
#top input[type="button"]:hover,
#top input[type="reset"]:focus,
#top input[type="reset"]:hover,
#top input[type="submit"]:focus,
#top input[type="submit"]:hover {
    background: var(--primary-120);
    border-color: var(--primary-120);
}

#top .slider-content .button:nth-of-type(2):hover {
    background: white;
    color: var(--neutral-100);
}

#top .team-member .slider-item .icons a:hover,
#top li.menu-item:hover>a,
#top .fullwidth-slider .slick-arrow:hover::before {
    color: var(--primary-100);
}

body#top:not(.overlay-header) .primary-menu>li.cta:hover>a {
    background: var(--primary-100);
}

#top .icon:not(p):not(.wp-block-button):hover::before,
#top .icon:hover a::before,
#top .icon.home:hover::before,
#top .wp-block-button.icon:hover a::before {
    transform: scale(1.1);
}

/*----------------------------------------------------------------------------------------------------PRVKY a BLOKY*/
/*--------------------------------------------------GALERIE*/
#top .wp-block-gallery img {
    filter: grayscale(1);
    cursor: zoom-in;
}

#top .wp-block-gallery img:HOVER {
    filter: none;
    transform: scale(1.1);
}

#top .wp-block-gallery a {
    display: block;
    overflow: hidden;
}

/*--------------------------------------------------INSTAGRAM FEED*/
div#sb_instagram {
    max-width: unset;
    position: relative;
}

div#sbi_load {
    position: absolute;
    bottom: 20px;
}

#sb_instagram #sbi_load .sbi_follow_btn a {
    border-radius: 0;
    font-size: 20px;
    background: var(--primary-100) !important;
}

#sb_instagram #sbi_load .sbi_follow_btn a:hover {
    background: var(--primary-130) !important;
}

#sb_instagram .sbi_photo:hover {
    filter: grayscale(0);
    box-shadow: none !important;
}

#sb_instagram .sbi_photo {
    filter: grayscale(1);
}

/*--------------------------------------------------HARMONIKA*/
#top .kt-blocks-accordion-header {
    padding: 0;
    background: none;
}

#top .kt-blocks-accordion-header .kt-blocks-accordion-title {
    color: white;
    font-weight: 600;
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 6px;

}

#top .kt-blocks-accordion-header .kt-blocks-accordion-title::before {
    content: "\f543";
    font-family: 'dashicons';
    color: var(--primary-100);
    font-size: 24px;
    font-weight: 400;
}

#top .kt-blocks-accordion-header.kt-accordion-panel-active .kt-blocks-accordion-title::before {
    content: "\f460";
}

#top .kt-accordion-panel-inner {
    padding: 0;
    border: none;
}

/*--------------------------------------------------TABY*/
#top .wp-block-kadence-tab {
    background: none;
    padding: 0;
    border: none;
}

#top div:not(.main-services) .wp-block-cover {
    background: var(--neutral-100);
    padding: 100px 85px;
}

#top .wp-block-kadence-tab .wp-block-cover {
    width: 100%;
    margin: 0;
    max-width: unset;
}

#top .wp-block-kadence-tab .wp-block-cover .wp-block-cover__inner-container {
    padding: 0;
}

.wp-block-kadence-tab .wp-block-cover img,
.wp-block-cover .wp-block-cover__image-background {
    mix-blend-mode: luminosity;
    filter: grayscale(1);
    opacity: 0.5;
}

#top .kt-tab-inner-content-inner p {
    max-width: unset;
}

/*nav*/
#top .kt-tabs-title-list li {
    margin-right: 20px;
    margin-bottom: 0;
}


#top .kt-tab-title {
    border-radius: 0 !important;
    background: none !important;
    border: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.20) !important;
    font-size: 20px !important;
    color: white !important;
    font-weight: 700 !important;
    line-height: 32px !important;
    justify-content: space-between !important;
    margin-bottom: 0;
}
#top .kt-tab-title-active a {
    background: linear-gradient(270deg, rgba(22, 22, 23, 0.00) 0%, rgba(22, 22, 23, 0.60) 70.58%, rgba(22, 22, 23, 0.00) 100%) !important;
}
#top li:not(:first-child):not(:nth-child(2)) .kt-tab-title::after {
    content: "\f344" !important;
    font-family: 'dashicons' !important;
    font-weight: 400 !important;
}

#top .kt-tab-title::after {
    color: var(--primary-100) !important;
}

#top li:first-child .kt-tab-title {
    border-top: 1px solid rgba(255, 255, 255, 0.20) !important;
}

/*neaktivní*/


#top .kt-tabs-title-list li:first-child,
#top .kt-tabs-title-list li:nth-child(2),
.kt-tabs-content-wrap .kt-title-item-1,
.kt-tabs-content-wrap .kt-title-item-2 {
    pointer-events: none;
}

#top .kt-tabs-title-list li:first-child a,
#top .kt-tabs-content-wrap .kt-title-item-1 a {
    border-top: none !important;
    border-bottom: none !important;
    padding: 0;
}

#top .kt-tabs-title-list li:nth-child(2) a,
#top .kt-tabs-content-wrap .kt-title-item-2 a {
    padding: 0;
}

#top .kt-tabs-title-list li:first-child span,
.kt-tabs-content-wrap .kt-title-item-1 span {
    font-family: 'Novecento';
    font-size: 46px;
    line-height: 46px;
}

#top .kt-tabs-title-list li:nth-child(2) span,
.kt-tabs-content-wrap .kt-title-item-2 span {
    font-size: 20px;
    font-weight: 400;
    color: var(--neutral-20);
    margin: 30px 0;
}

/*--------------------------------------------------LIGHTBOX*/


.lightbox .lb-image {
    border: none;
    border-radius: 0;
    background: none;
}

#top span.lb-caption {
    font-family: 'novecento';
    font-size: 28px;
}

#top .lb-cancel {
    width: 40px;
    height: 40px;
}

/*--------------------------------------------------GOOGLE RECENZE*/
#top .wp-gr .grw-review-inner {
    background: linear-gradient(180deg, rgba(22, 22, 23, 0.90) 0%, rgba(22, 22, 23, 0.00) 100%) !important;
    padding: 30px !important;
}

.wp-gr .wp-google-left img {
    overflow: visible !important;
}

.wp-google-review {
    display: flex !important;
    flex-direction: column-reverse !important;
}

#top .wp-google-feedback span {
    color: var(--neutral-100) !important;
    font-family: var(--primary-font) !important;
}

.wp-star path {
    fill: var(--primary-100);
}

#top .wp-google-stars {
    text-align: center !important;
    display: flex !important;
    justify-content: center;
    margin: 20px 0 !important;
}

#top a.wp-google-name {
    font-family: var(--heading-font) !important;
    text-transform: uppercase !important;
    color: white !important;
    font-size: 24px !important;
    font-weight: 400 !important;
    white-space: wrap !important;
    min-height: 58px !important;
    display: flex;
    align-items: center;
}

#top .wp-gr .grw-slider .grw-slider-dot {
    background: var(--neutral-20) !important;
    opacity: 0.7 !important;
    width: 15px !important;
    height: 15px !important;
}

#top .wp-gr .grw-slider .grw-slider-dot.active {
    background: var(--primary-100) !important;
    opacity: 1 !important;
}

#top .wp-gr .grw-dot {
    width: 12px !important;
    height: 12px !important;
    background: white !important;
    opacity: 0.5 !important;
}

#top .wp-gr .grw-dot.active {
    background: var(--primary-100) !important;
    opacity: 1 !important;
}

#top .wp-gr .grw-dot:hover {
    opacity: 1 !important;
}

/*--------------------------------------------------SOCIAL IKONY*/
.wp-block-social-links.is-style-logos-only .wp-social-link svg {
    width: 20px;
    height: 20px;
}

element.style {
    color: #A82536;
}

li.wp-social-link.wp-social-link-behance a::before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    background: url(/wp-content/themes/sweet-pain/assets/img/messenger-primary.svg);
    background-position: center;
}

/*--------------------------------------------------SEZNAMY*/
ul,
ol {
    margin-left: 0;
}

.entry-content li {
    color: inherit;
}

/*decor-number*/
.decor-number-list li {
    font-weight: 700;
    position: relative;
    line-height: 32px;
    padding-left: 16px;
    margin-left: 30px;
}

.decor-number-list li:not(:last-child) {
    margin-bottom: 10px;
}


.decor-number-list li::before {
    content: "";
    display: block;
    width: 32px;
    height: 32px;
    border: 2px solid var(--primary-100);
    border-radius: 100px;
    position: absolute;
    left: -26px;

}

/*--------------------------------------------------ODDĚLOVAČ*/

#top hr.wp-block-separator {
    color: transparent;
}

#top .hr-20 {
    margin: 10px 0;
}

#top .hr-30 {
    margin: 15px 0;
}

#top .hr-80 {
    margin: 40px 0;
}

/*--------------------------------------------------BUTTONY*/
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,
#top .wpbc_container .wpbc_button_light,
.wpbc_container.wpbc_container_booking_form .wpbc_button_light {
    background: var(--primary-100);
    border: 1px solid var(--primary-100);
    color: white;
    text-transform: none;
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
    padding: 12px 30px;
}

#top .slider-content .button:nth-of-type(2) {
    background: none;
    border: 1px solid white;
}

#top .wp-block-button.is-style-outline>.wp-block-button__link {
    color: white;
}

/*--------------------------------------------------FORMY*/
#top input,
#top textarea,
#top select {
    padding: 10px;
    border: 1px solid var(--neutral-20);
    margin-bottom: 16px;
    border-radius: 0;
    font-size: 16px;
    line-height: 1.2;
    color: var(--neutral-100);
    height: unset;
}

#top .acf-fields {
    border: none;
    background: none;
}

#top .acf-fields>.acf-field {
    padding: 0;
    border: none;
}

#top .acf-field-656469de065f9 {
    margin-left: 16px;
}

ul.acf-radio-list label {
    cursor: pointer;
}

#top input:focus,
#top input:focus-visible {
    outline: none !important;
    border: 2px solid var(--primary-100);
}

#top .acf-fields>.acf-field.border-bottom {
    margin-bottom: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid;
}

#top fieldset {
    padding: 0;
    border: none;
}

/*check a radio*/

#top input[type="radio"],
#top input[type="checkbox"] {
    visibility: hidden;
    width: 20px;
    height: 20px;
    margin: 0 4px 16px 0;
}

input[type="radio"]::before,
#top input[type="checkbox"]::before {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    background: white;
    border: 1px solid var(--neutral-20);
    cursor: pointer;
    visibility: visible;

}

input[type="radio"]::before {
    border-radius: 100%;
    position: relative;
    top: 7px;
}

#top input[type="checkbox"]::before {
    position: absolute;
    top: 7px;
    left: 0;
    margin: 0;
}

#top .selected input[type="radio"]::before,
#top .selected input[type="checkbox"]::before {
    background: var(--primary-100);
    box-shadow: inset 0px 0px 0px 2px white;
}

/*-----REZERVAČNÍ FORMULÁŘ*/

/*kalendář*/
#top .block_hints .block_pending {
    background: white;
    border: none;
}

#top .block_hints .block_booked {
    background: var(--primary-100);
    border: none;
}

#top .block_hints .block_free,
#top .datepick-inline .date_available {
    background: var(--neutral-100);
    border: none;
}

.datepick-inline .datepick-days-cell.datepick-unselectable {
    background: var(--neutral-70);
}

#top .datepick-header {
    font-family: 'Novecento';
    color: var(--neutral-100);
}

#top .datepick-header span {
    font-size: 24px;
    line-height: 1;
}

#top .wpbc_times_selector div {
    background: var(--neutral-100);
    color: white;
    font-size: 16px;
}

#top .datepick-inline .datepick-days-cell a {
    font-size: 16px;
}

#top .wpbc_timeslot_day_bg_as_available .datepick-inline .date_available:hover {
    background: var(--primary-50)
}

#top .datepick-inline .datepick-one-month .datepick .datepick-current-day {
    box-shadow: inset 0 0 0 2px var(--primary-100);
}

#top .datepick-inline .day-available:hover {
    background: var(--primary-50);
}

#top .datepick-inline .timespartly .date-content-top .wpbc_time_dots,
#top .datepick-inline .datepick-one-month .datepick .datepick-current-day .wpbc_time_dots,
#top .datepick-inline .calendar-links .datepick-prev a,
#top .datepick-inline .calendar-links .datepick-next a {
    color: var(--primary-100);
}

/*výběr času*/
.wpbc_booking_form_structure.wpbc_vertical {
    display: flex;
    gap: 40px
}

#top .wpbc_container .wpbc_button_light,
#top .wpbc_container.wpbc_container_booking_form .wpbc_button_light {
    box-shadow: none;
    border-radius: 0;
}

#top .wpbc_times_selector div {
    border-radius: 0;
}

#top .wpbc_times_selector div.wpbc_time_selected {
    box-shadow: none;
    border-color: var(--primary-100);
    background: var(--neutral-100);
}

#top .wpbc_times_selector div:hover {
    color: white;
    background: var(--primary-50);
}

#top .wpdevelop label {
    color: white;
    font-weight: 400;
}

/*notices*/
.acf-icon.-cancel:before {
    margin: 0;
}

#top .acf-notice.-error {
    background: var(--primary-50);
    border-color: var(--primary-100);
}

#top .acf-field .acf-notice.-error {
    background: var(--primary-10);
    color: var(--primary-100);
    border-color: var(--primary-100);
}

#top .af-success p {
    background: var(--primary-10);
    padding: 30px;
    color: var(--neutral-80);
    font-size: 20px;
    margin: 0;
}

/*--------------------------------------------------TABULKY*/
#top table *,
#top table {
    border: none;
    padding: 0;
}

#top .entry-content table tr {
    border-top: 1px solid;
}

#top .entry-content table tr:last-child {
    border-bottom: 1px solid;
}

#top .entry-content table td {
    padding: 10px 0;
    vertical-align: top;
}

#top .cenik td:last-child {
    width: 100px;
    word-wrap: normal;
}

/*--------------------------------------------------WIDGETY*/
/*----------------------------------------------------------------------------------------------------CUSTOM BLOCKSY*/

#top .loader {
    width: 50px;
    height: 50px;
    margin: 100px auto;
    background: url(/wp-content/themes/sweet-pain/assets/css/ajax-loader.gif)no-repeat;
}

.post-grid .loader {
    grid-column: span 4;
}

#top .slider {
    transform: none;
    z-index: 1;
}

#top .slider:not(.slick-initialized) {
    scale: 0;
    transform-origin: center;
}


/*--------------------------------------------------CONTENT SLIDER*/
.team-member .slick-track {
    display: flex;
    align-items: stretch;
}

.team-member .slick-track .slider-item:nth-child(odd) {
    margin-top: -40px;
    margin-bottom: 40px;
}

.team-member .slick-list.draggable {
    padding-top: 40px;
    margin-top: -40px;
}

.team-member .item-link {
    overflow: hidden;
    display: block;
    height: 100%;
}

/*navigace*/

.slider-dots .slick-dots {
    position: relative;
    text-align: left;
    bottom: 0;
}

.slider-dots .slick-dots li:first-child {
    margin-left: 0;
}

/*--------------------------------------------------FULLWIDTH SLIDER*/
.fullwidth-slider {
    overflow-x: hidden;
}

.fullwidth-slider .slider-bgr,
.fullwidth-slider .slider-overlay {
    width: 100%;
    height: 100%;
    position: absolute;
}

.fullwidth-slider .slider-overlay {
    background: linear-gradient(85deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0.00) 70.67%);
}

.fullwidth-slider .slider-bgr {
    background-size: cover !important;
    filter: grayscale(1);
}

.fullwidth-slider .slide {
    height: 100vh;
    display: flex;
    align-items: center;
    position: relative;
}

.fullwidth-slider .slider-content,
#top .fullwidth-slider h1 {
    color: var(--white);
}

#top .fullwidth-slider .slider-content {
    width: 50%;
}

#top .fullwidth-slider .slider-content p {
    color: var(--white);
    margin-bottom: 30px;
}

#top .slider-content .button {
    margin-right: 10px;
    margin-bottom: 10px;
}

.bottom-info .icons {
    gap: 8px;
}

/*navigace*/
.fullwidth-slider .slick-dots {
    position: absolute;
    bottom: 78px;
    width: 100%;
    right: calc((100% - 1440px)/2 + 120px);
    text-align: right;
}

.slick-dots li {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
}

#top .slick-dots li button {
    border-radius: 100% !important;
    color: transparent !important;
    padding: 0 !important;
    background: white !important;
    opacity: 0.5;
    width: 12px;
    height: 12px;
}

#top .slick-dots li:hover button {
    opacity: 1;
}

#top .slick-dots li.slick-active button {
    background: var(--primary-100) !important;

    opacity: 1;
}

#top .slick-arrow {
    top: unset;
    bottom: 40px;
    z-index: 3;
    width: 50px;
    height: 50px;
    background: white;
    left: unset;
}


.slick-next {
    right: calc((100% - 1440px)/2);
}

.slick-prev {
    right: calc((100% - 1440px)/2 + 60px);
}

#top .slick-arrow:before {
    font-family: 'dashicons';
    color: var(--neutral-100);
}

#top .slick-next:before {
    content: "\f344";
}

#top .slick-prev:before {
    content: "\f340";
}

/*--------------------------------------------------POST GRID*/
.post-grid {
    display: grid;
    gap: 20px;
    align-items: start;
}

#top .post-grid.post-grid-block,
#top .post-grid.post-grid-archive {
    grid-template-columns: repeat(4, 1fr);
    margin: 40px auto;
}

body:not(.large-map) .post-grid.post-grid-page {
    grid-template-columns: 1fr 1fr;
}

.post-grid .post-grid-item {
    position: relative;
}

.post-grid.loading .post-grid-item {
    display: none;
}

.post-grid a.item-link {
    display: block;
    width: 100%;
    height: 100%;
}

.post-grid span.item-thumbnail-wrapper {
    display: block;
    overflow: hidden;
    position: relative;
}

.post-grid .item-thumbnail {
    height: 200px;
    object-fit: cover;
    width: 100%;
}

.post.post-grid .item-thumbnail,
#top .post-grid.post-grid-archive .item-thumbnail {
    background: var(--primary-05);
}

#top .post-grid h2.item-title {
    margin: 20px 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

#top .post-grid .item-desc,
#top .post-grid .item-content,
#top .post-grid .icon:not(.item-link) {
    margin-bottom: 20px;
    color: var(--neutral-70);
}

#top .post-grid .item-desc {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.post-grid .ikonky {
    margin-bottom: 20px;
    gap: 10px;
}

/*portfolio*/
.post-grid .autor-link {
    background: white;
    padding: 5px 10px;
    text-transform: uppercase;
    position: absolute;
    bottom: 10px;
    left: 10px;
    display: flex;
    align-items: center;
}

.post-grid .autor-link img {
    width: 15px;
    border-radius: 100px;
    display: inline-block;
    margin-right: 10px;
}

.post-grid.portfolio .item-thumbnail {
    cursor: zoom-in;
}

/*filtrace*/
nav.filter-nav {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
}

nav.filter-nav .search-form {
    margin: 0;
}

nav.filter-nav ul {
    list-style: none;
    display: flex;
    justify-content: center;
    margin: 0;
}

nav.filter-nav ul li {
    margin: 0 -0.5px;
    padding: 10px 30px;
    border: 1px solid transparent;
    border-bottom-color: rgba(255, 255, 255, 0.40);
    cursor: pointer;
    color: var(--neutral-30);
}

nav.filter-nav ul li:hover {
    color: white;
}

nav.filter-nav ul li.active {
    border-color: rgba(255, 255, 255, 0.40);
    border-bottom-color: transparent;
    color: white;
}

nav.filter-nav ul li label {
    cursor: pointer;
}

span.fltr-btm-brdr {
    display: block;
    width: 100%;
    border-bottom: 1px solid rgba(255, 255, 255, 0.40);
    height: 46px;
}

/*--------------------------------------------------TABS*/
nav.tabs-nav {
    white-space: nowrap;
    overflow-x: auto;
    display: flex;
}

nav.tabs-nav.scroll-tabnav {
    position: relative;
    margin-left: -20px;
    width: calc(100% + 40px);
    padding-left: 20px;
    padding-right: 20px;
}


nav.tabs-nav ul {
    list-style: none;
    display: flex;
    gap: 4px;
}

nav.tabs-nav ul button {
    text-transform: none;
    background: none;
    color: var(--primary-100);
    font-weight: 400;
    padding: 10px;
    position: relative;

}

nav.tabs-nav ul li.active button {
    font-weight: 600;
}

nav.tabs-nav ul button::after,
nav.tabs-nav ul button::before {
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    left: 0;
    bottom: 0;
}

nav.tabs-nav ul button::before {
    background: var(--primary-10);
    width: 100%;
}

nav.tabs-nav ul button::after {
    background: var(--secondary-100);
    width: 0;
}

nav.tabs-nav ul li:hover button::after,
nav.tabs-nav ul li.active button::after {
    width: 100%
}

.tab-content {
    opacity: 0;
    overflow: hidden;
    max-height: 0;
    transition: opacity 0.3s ease-in-out, max-height 0.3s ease;
}

.tab-content.active {
    opacity: 1;
    max-height: fit-content;
}

/*----------------------------------------------------------------------------------------------------HEADER*/

header#site-header {
    position: fixed;
    width: 100%;
    top: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
    padding-bottom: 20px;
    z-index: 3;
}

.admin-bar header#site-header {
    top: var(--admin-bar);
}

.header-inner {
    padding: 10px 0;
}

.header-inner .toggle {
    padding: 0;
    width: auto;
}

/*--------------------------------------------------TOPBAR*/


/*--------------------------------------------------LOGO*/

.scrolled img.custom-logo {
    max-height: 40px;
}

/*--------------------------------------------------MENU*/
/*primary-menu*/
ul.primary-menu {
    gap: 20px;
    align-items: center;
}

body#top:not(.overlay-header) .primary-menu>li>a {
    color: white;
    font-size: 16px;
    font-weight: 400;
    padding: 15px;
    border: 1px solid transparent;
}

#top .primary-menu .current_page_ancestor a {
    font-weight: 700 !important;
}

body#top:not(.overlay-header).scrolled .primary-menu>li>a {
    padding: 15px;
}

body#top:not(.overlay-header) .primary-menu>li.cta>a {
    border-color: var(--primary-100);
    font-weight: bold;
    padding: 10px 30px 10px 20px;
}

body#top:not(.overlay-header) .primary-menu>li.cta::after {
    right: 20px;
}

body#top:not(.overlay-header) .primary-menu>li:not(.cta)>a::before {
    content: "";
    display: block;
    width: 0;
    height: 1px;
    background: var(--primary-100);
    bottom: 5px;
    position: absolute;
    left: 0;
}

body#top:not(.overlay-header) .primary-menu>li:not(.cta):hover>a::before {
    width: 100%;
}

/*menu s obrázky*/
li.has-image a {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 10px;
    justify-content: flex-end;
}

.menu-item-icon-wrapper {
    width: 40px !important;
    height: 40px;
    overflow: hidden;
    flex-basis: 40px;
}

li.has-image img {
    width: 100%;
    object-fit: cover;
    filter: grayscale(1);
}

/*--------------------SUBMENU*/
.primary-menu>li.menu-item-has-children {
    padding-right: 10px;
}

.primary-menu li.menu-item-has-children::after {
    content: "\f140";
    font-family: 'dashicons';
    color: var(--primary-100);
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
}

.primary-menu ul li.menu-item-has-children::after {
    transform: translateY(-50%) rotate(270deg);
    right: 30px;
}

#top .primary-menu .sub-menu {
    background: var(--neutral-100);
    box-shadow: 0px 0px 50px 0px rgba(0, 0, 0, 0.50);
    border-radius: 0;
}

#top .primary-menu li.menu-item-has-children>ul {
    transform: translateY(200%) scaleY(0);
    transform-origin: top;
    left: -30px;
    pointer-events: none;
    top: 100%;
}

#top .primary-menu li.menu-item-has-children>ul ul {
    left: 100%;
    top: 0;
}

#top .primary-menu li.menu-item-has-children:hover>ul,
#top .primary-menu li.menu-item-has-children:focus>ul {
    transform: translateY(0%) scaleY(1);
    pointer-events: auto;
}

#top .primary-menu ul a {
    padding: 10px 30px;
}

/*--------------------------------------------------BURGERMENU*/
.nav-toggle {
    position: relative;
}

button.toggle.close-nav-toggle.fill-children-current-color {
    outline: none !important;
}

span.toggle-icon {
    background: var(--primary-100);
}

span.toggle-icon svg.svg-icon path,
span.toggle-text {
    display: none;
}

span.toggle-icon::before,
span.toggle-icon::after {
    content: "";
    display: block;
    width: 100%;
    height: 3px;
    display: block;
    background: var(--white);
    position: absolute;
}

span.toggle-icon::before {
    top: -3px;
}

span.toggle-icon::after {
    bottom: 0px;
    right: 0;
}

.nav-toggle .toggle-icon,
.nav-toggle svg {
    height: 3px;
    width: 4rem;
}


/*modal*/
button.close-nav-toggle {
    padding: 0;
    height: var(--site-header);
}

.menu-modal.active {
    margin-top: var(--site-header);
    background: none;
}

.menu-modal-inner.modal-inner,
.showing-modal header#site-header {
    background: var(--neutral-100);
}

.modal-menu {
    padding-top: 30px;
}

.modal-menu li {
    border: none;
}

.ancestor-wrapper {
    padding: 0 20px;
}

#top .modal-menu a {
    color: white;
    font-weight: 400;
    padding: 10px 0;
    padding: 15px 0;
}

#top .modal-menu .sub-menu {
    padding-left: 20px;
}

#top button.sub-menu-toggle {
    border: none;
    padding: 0;
    width: 40px;
    height: 100%;
    margin: 0;
}

button.sub-menu-toggle::after {
    content: "\f140";
    font-family: 'dashicons';
    color: white;
    width: 100%;
    display: flex;
    height: 100%;
    justify-content: center;
    align-items: center;
    font-size: 40px;
}

.sub-menu button.sub-menu-toggle::after {
    font-size: 20px;
}

button.sub-menu-toggle.active::after {
    content: "\f335";
    left: 0;
}

#top .toggle.active span.toggle-icon {
    background: transparent;
}

.toggle.active span.toggle-icon::before {
    transform: rotate(-45deg) translate(-7px, 10px);
}

.toggle.active span.toggle-icon::after {
    transform: rotate(45deg) translate(-6px, -10px);
}


/*----------------------------------------------------------------------------------------------------MAIN CONTENT - PAGE*/


/*--------------------------------------------------TITLE*/
#top .entry-header {
    background: none;
    padding: 0;
}

/*--------------------BREADCRUMBY*/
div#breadcrumbs {
    margin-top: var(--site-header);
    color: white;
    padding: 20px;
}

.breadcrumb-inner {
    display: flex;
    gap: 5px;
    width: 100%;
}

#top div#breadcrumbs a {
    color: inherit;
    font-weight: 700;
}

#top div#breadcrumbs .home {
    font-size: 0;
    padding-left: 0px;
    width: 16px;
    height: 18px;
    display: block;
}

/*--------------------------------------------------SIDEBAR*/


/*----------------------------------------------------------------------------------------------------FOOTER*/
.footer-widgets-outer-wrapper {
    padding-bottom: 50px;
}

#top .footer-nav-widgets-wrapper,
#top #site-footer {
    background: var(--neutral-100);
    border-color: var(--primary-100);
    margin-top: 0;
}

#top .footer-bottom {
    margin: 0;
    font-family: 'Novecento';
    font-size: 24px;
	white-space: nowrap;
}

.footer-nav-widgets-wrapper {
    border-top: 10px solid;
}

.footer-top,
.footer-widgets-outer-wrapper {
    border: none;
}

.footer-widgets .wp-block-columns {
    gap: 60px;
}

.footer-widgets strong,
#top .footer-widgets a {
    color: white;
}

#top .footer-widgets a.wp-block-social-link-anchor {
    color: var(--primary-100);
}

.footer-widgets-wrapper, .footer-widgets .wp-block-columns {
    gap: 0;
    width: 100%;
}

#top  .footer-widgets-wrapper .wp-block-column {
    flex-basis: 50%!important;
}

.footer-widgets .wp-block-columns .wp-block-columns {
    gap: 0;
}

#top .widget-content p:not(.icon) a:not(.icon) {
    text-decoration: none !important;
}
.footer-widgets.column-one.grid-item {
    width: 66%;
}
.footer-widgets.column-two.grid-item {
    width: 33%;
}
/*--------------------------------------------------SOCKET*/

#site-footer {
    border-top: 1px solid;
    padding: 20px 0;
    font-size: 12px;
    color: white;
}

.footer-copyright {
    font-weight: 400;
}

.footer-copyright a {
    font-weight: 700;
}

/*----------------------------------------------------------------------------------------------------RESPONZE*/
@media (max-width: 1000px) {
    #top .header-titles-wrapper {
        justify-content: space-between;
        width: 100%;
        padding: 0;
    }

    #top .wp-block-kadence-tab .wp-block-cover {
        padding: 50px;
    }
}

@media (max-width: 782px) {
    :root {
        --admin-bar: 46px;
        --site-header: 100px;
    }

    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 {
        padding: 12px 15px;
    }

    #top .wp-block-button.icon a {
        padding-left: 43px;
    }

    #top .wp-block-button.icon a::before {
        lefT: 15px;
    }

    #top h1,
    #top .heading-size-1 {
        font-size: 36px;
    }

    #top h2,
    #top .heading-size-2 {
        font-size: 28px;
    }

    #top h3,
    #top .heading-size-3 {
        font-size: 26px;
    }

    #top h4,
    #top .heading-size-4 {
        font-size: 24px;
    }

    #top h5,
    #top .heading-size-5 {
        font-size: 22px;
    }

    #top h6,
    #top .heading-size-6 {
        font-size: 20px;
    }

    /*f-w slider*/
    .fullwidth-slider {
        background: var(--neutral-100);
    }

    .fullwidth-slider .slide {
        height: auto;
    }

    .fullwidth-slider .slider-bgr,
    .fullwidth-slider .slider-overlay {
        height: 400px;
        top: 0;
    }

    .fullwidth-slider .slider-overlay {
        background: none;
    }

    .slider-content-wrapper {
        padding-top: 440px;
        padding-bottom: 65px;
    }

    .slider-content {
        text-align: center;
    }

    #top .fullwidth-slider .slider-content {
        width: 100%;
    }

    .fullwidth-slider .slick-dots {
        position: relative;
        left: auto;
        right: auto;
        text-align: center;
        bottom: 66px;
    }

    /*main services*/
    #top .main-services .wp-block-columns .wp-block-column {
        flex-basis: calc(50% - 20px) !important;
        width: unset !important;
    }

    /*post grid*/
    #top .post-grid.post-grid-block,
    #top .post-grid.post-grid-archive {
        grid-template-columns: repeat(2, 1fr);
    }

    /*ellipse*/
    .ellipse::before,
    main#site-content::before {
        width: 689px;
        height: 689px
    }

    /*cover*/
    #top div:not(.main-services) .wp-block-cover {
        padding: 50px 30px;
    }

    /*rezervace*/
    .wpbc_booking_form_structure.wpbc_vertical {
        flex-direction: column;
        align-items: center;
    }

}
@media (max-width: 700px) {
	#top .footer-widgets-wrapper .wp-block-column {
    flex-basis: 100%!important;
    margin-bottom: 20px;
}
	#top .footer-widgets-wrapper .grid-item {width: 100%;}
}
@media (max-width: 500px) {

    .has-background,
    #top div:not(.main-services) .wp-block-cover,
    #top .has-background {
        padding: 20px;
    }

    #top .main-services .wp-block-columns .wp-block-column {
        flex-basis: 100% !important;
    }

    #top .main-services .wp-block-columns .wp-block-button,
    #top .main-services .wp-block-columns .wp-block-button a {
        width: 100% !important;
    }

    #top .wp-block-kadence-tab .wp-block-cover {
        padding: 20px;
    }

    #top .post-grid.post-grid-block,
    #top .post-grid.post-grid-archive {
        grid-template-columns: repeat(1, 1fr);
    }

    nav.filter-nav ul li {
        padding: 10px 15px;
    }

    .bottom-info {
        flex-direction: column;
        align-items: flex-start !important;
    }

    .team-member .slick-track {
        flex-direction: column;
    }

    .content-slider .slick-initialized .slick-slide {
        width: 100% !important;

    }
}

@media (max-width: 360px) {
    nav.filter-nav ul li label {
        font-size: 14px;
    }
}