/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0.1
*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Rubik:ital,wght@0,300;1,300&display=swap');

:root {
    --clr-white: #fff;
    --clr-dark: #28282e;
    --transition: .2s;
    --footer-dt: 30px;
    --footer-bg-top: 30px;
    --horiz-gap: 80px;
    --col-gap: 24px;
}

/*-------------------------------------------------------------------------------------------------------------------------------*/
/* TYPOGRAPHY */
/*-------------------------------------------------------------------------------------------------------------------------------*/
body{line-height: 1.8 !important;}
.uppercase, h6, th, span.widget-title{letter-spacing: 0;}
.h2,h2{font-size: clamp(1.625rem, 1.317rem + 0.986vw, 2.5rem) !important;line-height: 1.2 !important;margin: 0 0 .8em !important;}
.subtitle p{margin-bottom: .4em !important;}
.subtitle p strong{font-weight: 700;}
p span strong{font-weight: 500;}
.fw-600,.fw-600 strong{font-weight: 600;}
.res-text{font-size: 1em;}

/*-------------------------------------------------------------------------------------------------------------------------------*/
/* HEADER */
/*-------------------------------------------------------------------------------------------------------------------------------*/
.nav>li.html{font-size: 1em;}
.nav-spacing-xlarge>li{margin: 0 20px;}
.nav-spacing-xlarge>li.menu-item{margin: 0 14px;}
.header-block{width: auto;}
.header-block .icon-box{-webkit-box-align: center;-ms-flex-align: center;align-items: center;}
.header-block .icon-box-left .icon-box-img+.icon-box-text{padding-left: 20px;}
.header-button .button{font-size: 1rem;text-transform: none;padding: 0;border: none;min-height: 0;line-height: 2.2;}
.header-button .button.is-underline::before{left: 0;width: 100%;background: -webkit-gradient(linear, left top, right top, from(#cb9e65), to(#896340));background: linear-gradient(to right, #cb9e65, #896340);opacity: 1;}
@media (hover: hover) and (min-width: 1200px) {
    .header-block .plain:hover .icon-box-img img{-webkit-animation-name: trin;animation-name: trin;-webkit-animation-duration: 1.5s;animation-duration: 1.5s;-webkit-animation-timing-function: linear;animation-timing-function: linear;}
    .header-button .button.is-underline:hover::before{left: 20%;width: 60%;}
}
@media (min-width: 1366px) {
    .header-full-width .container{padding-left: var(--horiz-gap);padding-right: var(--horiz-gap);}
}
@media (max-width: 1199px){
    .header .hide-for-medium{display: none;}
	.header .show-for-medium{display: block !important;}
	.medium-logo-center .flex-left{-webkit-box-ordinal-group: 2;-ms-flex-order: 1;order: 1;-webkit-box-flex: 1;-ms-flex: 1 1 0px;flex: 1 1 0;}
	.medium-logo-center .flex-right{-webkit-box-flex: 1;-ms-flex: 1 1 0px;flex: 1 1 0;-webkit-box-ordinal-group: 4;-ms-flex-order: 3;order: 3;}
	.medium-logo-center .logo{-webkit-box-ordinal-group: 3;-ms-flex-order: 2;order: 2;text-align: center;}	
    .off-canvas:not(.off-canvas-center) li.html:has(.header-button){padding-top: 10px;}
    .header-block{padding: 20px !important;}
    .mobile-nav a{color: var(--clr-dark) !important;font-size: 1em !important;}
}

/*-------------------------------------------------------------------------------------------------------------------------------*/
/* HERO BANNER */
/*-------------------------------------------------------------------------------------------------------------------------------*/
.hero-banner .h1,.hero-banner h1{font-size: clamp(1.875rem, 1.435rem + 1.408vw, 3.125rem);margin: 0 0 .5em;}
.hero-banner p{margin: 0 0 1.8em;}
.hero-banner .bg-fill{background-size: auto 90% !important;}
/* .hero-banner .bg-fill::before{content: '';display: block;position: absolute;left: 0;top: 0;width: 100%;height: 100%;background-size: auto 100%;background-repeat: no-repeat;background-position: 0 100%;background-image: url("img/jdanse-studio-decor.webp");} */
.hero-banner .flickity-page-dots{left: 46px;right: auto;top: 0;bottom: 0;display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;-webkit-box-pack: center;-ms-flex-pack: center;justify-content: center;counter-reset: number;}
.hero-banner .flickity-page-dots .dot{--dot-size: 43px;width: var(--dot-size);height: var(--dot-size);line-height: calc(var(--dot-size) - 2px);border: none;margin: 35px 0;counter-increment: number;opacity: 1;position: relative;}
.hero-banner .flickity-page-dots .dot::before{content: counter(number, decimal-leading-zero);color: var(--clr-dark);opacity: .6;font-size: 13px;}
.hero-banner .flickity-page-dots .dot+.dot::after{--divider-height: 40px;content: '';display: block;position: absolute;top: calc(var(--divider-height)*-1 - 15px);left: 50%;width: 1px;height: var(--divider-height);background-color: var(--clr-dark);opacity: .1;}
.hero-banner .flickity-page-dots .dot.is-selected{background-color: transparent;background-image: url("img/jdanse-studio-bg-dot.png");background-size: contain;}
.hero-banner .flickity-page-dots .dot.is-selected::before{font-weight: 500;opacity: 1;}
.hero-banner .banner-bg :is(img) {object-fit: contain;}
@media (max-width: 1600px) {
    .hero-banner .flickity-page-dots{left: 0;right: 0;bottom: 20px;-webkit-box-pack: center;-ms-flex-pack: center;justify-content: center;-webkit-box-orient: horizontal;-webkit-box-direction: normal;-ms-flex-direction: row;flex-direction: row;top: auto;}
    .hero-banner .flickity-page-dots .dot{margin: 0 35px;}
    .hero-banner .flickity-page-dots .dot+.dot::after{width: var(--divider-height);height: 1px;top: 50%;left: calc(var(--divider-height)*-1 - 15px);}
}
@media (max-width: 849px) {
    .hero-banner .flickity-page-dots .dot{--dot-size: 35px;}
}

/*-------------------------------------------------------------------------------------------------------------------------------*/
/* BANNERS */
/*-------------------------------------------------------------------------------------------------------------------------------*/
.banners .box-text{pointer-events: none;}
.banners .box-text p{margin: 0;}
.banners .box-text .banner-title p{display: inline-block;vertical-align: top;}
.banners .box-text .banner-title p::after{content: '';display: block;width: 100%;height: 2px;background: -webkit-gradient(linear, left top, right top, from(#cb9d65), to(#896340));background: linear-gradient(to right, #cb9d65, #896340);}
.banners .box-overlay.dark .box-text{text-shadow: none;}
.banners .box-text ul{display: -webkit-box;display: -ms-flexbox;display: flex;margin-top: .75em;-webkit-column-gap: var(--col-gap);-moz-column-gap: var(--col-gap);column-gap: var(--col-gap);margin-bottom: 0;}
.banners .box-text li{list-style: none;margin-left: 0 !important;position: relative;}
.banners .box-text li+li::before{--dot-size: 3px;content: '';display: block;position: absolute;left: calc((var(--col-gap)/2 + var(--dot-size)/2)*-1);top: 50%;width: var(--dot-size);height: var(--dot-size);border-radius: 100%;background-color: #ababae;-webkit-transform: translateY(-50%);-ms-transform: translateY(-50%);transform: translateY(-50%);}
@media (hover: hover) and (min-width: 1200px) {
    .banners .box-text .banner-title p::after{-webkit-transition: var(--transition);transition: var(--transition);}
    .banners .box.has-hover:hover .box-text .banner-title p::after{margin-left: 20%;width: 60%;}
}
@media (min-width: 850px) {
    .banners .overlay{display: none;}
}
@media (max-width: 849px) {
    .banners .box-text{padding: 0 0 0 10px !important;}
} 

/*-------------------------------------------------------------------------------------------------------------------------------*/
/* BUTTONS */
/*-------------------------------------------------------------------------------------------------------------------------------*/
.btn{margin: 0 !important;padding: 1.388em 2.33em;min-height: 0;line-height: 1;font-weight: 600;letter-spacing: 0;background: -webkit-gradient(linear, left top, right top, from(#cb9e65), to(#896340));background: linear-gradient(to right, #cb9e65, #896340);}
.btn:not(.is-outline){border: none;}
.btn.is-normal{font-size: 1rem;}
.btn:not(.icon)>span+i.icon-angle-right{margin-left: 1.47em;margin-right: 0;position: relative;top: 0.02em;}
.btn .icon-angle-right::before{content: '';display: block;width: 40px;height: 11px;background: url("img/jdanse-studio-arrow-right.png") no-repeat 0 0;}
@media (hover: hover) and (min-width: 1200px) {
    .btn .icon-angle-right{-webkit-transition: var(--transition);transition: var(--transition);}
    .btn:hover .icon-angle-right{-webkit-transform: translateX(7px);-ms-transform: translateX(7px);transform: translateX(7px);}
}
@media (max-width: 849px) {
    .btn.is-normal{font-size: .85em;}
}

/*-------------------------------------------------------------------------------------------------------------------------------*/
/* FOOTER */
/*-------------------------------------------------------------------------------------------------------------------------------*/
.footer-wrapper .col{padding-bottom: 0;}
.footer-wrapper .has-bg .col-inner::before,.footer-wrapper .has-bg .col-inner::after{content: '';display: block;position: absolute;background-color: inherit;pointer-events: none;}
.footer-wrapper .has-bg .col-inner::before{width: calc((100vw - 100%)/2);top: calc(var(--footer-bg-top)*-1);bottom: 0;right: calc((100vw - 100%)/-2);}
.footer-contacts dl{display: -webkit-box;display: -ms-flexbox;display: flex;-ms-flex-wrap: wrap;flex-wrap: wrap;opacity: 1;margin: 0;font-size: 1em;row-gap: .5em;}
.footer-contacts dt,.footer-contacts dd{margin: 0;text-transform: none;font-size: 14px;}
.footer-contacts dt{width: var(--footer-dt);font-weight: 500;color: var(--clr-dark);}
.footer-contacts dd{width: calc(100% - var(--footer-dt));}
.footer-contacts dd a{color: inherit;display: inline-block;vertical-align: top;}
.footer-contacts dd b{font-weight: 600;}
.footer-contacts dd a:has(b){color: var(--clr-dark);}
.footer-widgets > .section-content > .row > .col:first-child > .col-inner{padding-left: 15px;padding-right: 15px;}
.footer-logo .ux-logo-link{padding: 0 !important;}
.footer-title p{margin-bottom: 1.2em;}
.footer-list ul{margin-bottom: 0;}
.footer-list li{margin: .3em 0 0 0 !important;list-style: none;}
.footer-list li a{color: inherit;}
.footer-list li strong{font-weight: 500;}
.footer-list li strong a{color: var(--clr-dark);}
.copyright p{margin-bottom: 0;}
.copyright p img{margin-bottom: 0 !important;margin-left: 6px;position: relative;top: -1px;}
.copyright a{color: inherit;}
.absolute-footer{padding: 0;}
@media (hover: hover) and (min-width: 1200px) {
    .copyright a,.footer-list li a,.footer-contacts dd a{-webkit-transition: var(--transition);transition: var(--transition);}
    .copyright a:hover,.footer-list li a:hover,.footer-contacts dd a:hover{color: var(--primary-color);}
}
@media (min-width: 550px) {
    .footer-logo-wrapp .col-inner{max-width: 189px;margin-left: 0 !important;}
}
@media (min-width: 850px) {
    .footer-wrapper .has-bg .col-inner::after{height: var(--footer-bg-top);top: calc(var(--footer-bg-top)*-1);left: 0;right: 0;}
}
@media (min-width: 1200px) {
    .footer-widgets > .section-content > .row > .col:first-child > .col-inner{padding-left: var(--horiz-gap);padding-right: var(--horiz-gap);}
}
@media (min-width: 550px) and (max-width: 849px) {
    .footer-contacts dd{-webkit-box-flex: 1;-ms-flex: auto;flex: auto;width: auto;}
}
@media (max-width: 849px) {
    .footer-logo{display: block;margin-left: auto;margin-right: auto;text-align: center;}
    .footer-logo .ux-logo-image{display: inline-block;vertical-align: top;}
}

/*-------------------------------------------------------------------------------------------------------------------------------*/
/* SOCIALS ICONS */
/*-------------------------------------------------------------------------------------------------------------------------------*/
.social-icons .button.is-outline{--btn-size: 50px;min-width: 0;font-size: 1.2em;border-radius: 3px !important;margin: 0 5px;width: var(--btn-size);min-height: var(--btn-size);line-height: calc(var(--btn-size) - 2px);border: none; background: -webkit-gradient(linear, left top, right top, from(#cb9d65), to(#896340)); background: linear-gradient(to right, #cb9d65, #896340);}
.social-icons .button.is-outline i{top: 0;color: #28282d !important;}
.social-icons .button.is-outline::before{--border-width: 2px;content: '';;display: block;position: absolute;left: var(--border-width);top: var(--border-width);right: var(--border-width);bottom: var(--border-width);background-color: var(--clr-white);}
@media (hover: hover) and (min-width: 1200px) {
    .social-icons .button.is-outline::before,.social-icons .button.is-outline i{-webkit-transition: var(--transition);transition: var(--transition);}
    .social-icons .button.is-outline:hover::before{opacity: 0;}
    .social-icons .button.is-outline:hover>i{color: var(--clr-white) !important;}
}
@media (max-width: 1600px) {
    .social-icons .button.is-outline{--btn-size: 40px;}
}
@media (max-width: 1024px) {
    .social-icons .button.is-outline{--btn-size: 30px;font-size: 1em;margin: 0 3px;}
}

/*-------------------------------------------------------------------------------------------------------------------------------*/
/* UX LOGO */
/*-------------------------------------------------------------------------------------------------------------------------------*/
.ux-logo-image{-o-object-fit: contain;object-fit: contain;}

/*-------------------------------------------------------------------------------------------------------------------------------*/
/* ICON BOX */
/*-------------------------------------------------------------------------------------------------------------------------------*/
.icon-box-img img,.icon-box-img svg{padding-top: 0;}

/*-------------------------------------------------------------------------------------------------------------------------------*/
/* IMAGE BOX */
/*-------------------------------------------------------------------------------------------------------------------------------*/
.box:not(.box-overlay) .box-text li{margin: 0 !important;padding-left: 15px;list-style: none;position: relative;}
.box:not(.box-overlay) .box-text li::before{content: '';display: block;position: absolute;left: 0;top: .7em;width: 5px;height: 5px;border-radius: 100%;background-color: var(--primary-color);}

/*-------------------------------------------------------------------------------------------------------------------------------*/
/* FORM ELEMENTS */
/*-------------------------------------------------------------------------------------------------------------------------------*/
.input{font-size: 18px !important;color: rgba(16, 15, 17, 0.6) !important;-webkit-box-shadow: none !important;box-shadow: none !important;border-color: rgba(0, 0, 0, 0.1) !important;margin-bottom: 28px;}
.input:not(textarea){height: 59px !important;}
.input:focus{border-color: var(--fs-color-primary) !important;}
textarea{resize: vertical;min-height: 200px;}
.wpcf7 .row-small{margin-left: -5px !important;margin-right: -5px !important;}
.wpcf7 .row-small .col{padding-left: 5px !important;padding-right: 5px !important;}
.wpcf7 .processing::before{display: none;}
.wpcf7 label{display: block;text-transform: uppercase;margin-bottom: 0;font-size: 15px;line-height: 1;margin-bottom: .53em;}
.wpcf7 label span{color: var(--fs-color-alert);}
.wpcf7-spinner{position: absolute !important;right: -30px;top: 50%;margin: -12px 0 0 0;}
.wpcf7 .wpcf7-not-valid-tip,.wpcf7 .wpcf7-response-output{border-radius: 0;}
.wpcf7 .wpcf7-not-valid-tip{margin-top: -18px;margin-bottom: 10px;}
.wpcf7 form{margin-bottom: 0;}
.wpcf7 form .wpcf7-response-output{border-width: 1px;margin-left: 0;margin-right: 0;font-size: 1rem;}
.wpcf7-not-valid-tip{font-size: 13px;}
.submit-wrapp input[type="submit"]{position: absolute;left: 0;top: 0;width: 100%;height: 100%;margin-bottom: 0;opacity: 0;}

/*-------------------------------------------------------------------------------------------------------------------------------*/
/* TABLE */
/*-------------------------------------------------------------------------------------------------------------------------------*/
.responsive-table thead tr th, .responsive-table tbody tr td, .responsive-table tbody tr th{padding: 1em !important;font-size: 1em;}
.responsive-table tbody tr td a{color: var(--fs-color-primary);font-size: 1.1em;font-weight: 600;transition: var(--transition);}
.responsive-table tbody tr td a:hover{color: var(--clr-dark);}
.responsive-table tbody tr td[data-title="Ages"],.responsive-table tbody tr td[data-title="Times"]{white-space: nowrap;}
@media (min-width: 475px) {
.responsive-table tbody tr:nth-of-type(even){background-color: rgb(248, 248, 248) !important;}
}

/*-------------------------------------------------------------------------------------------------------------------------------*/
/* ANIMATION */
/*-------------------------------------------------------------------------------------------------------------------------------*/
@-webkit-keyframes trin{from{-webkit-transform:rotate3d(0,0,1,0deg);transform:rotate3d(0,0,1,0deg);}20%,32%,44%,56%,68%{-webkit-transform: rotate3d(0,0,1,0deg);transform: rotate3d(0,0,1,0deg);}23%,35%,47%,59%,71%{-webkit-transform: rotate3d(0,0,1,15deg);transform: rotate3d(0,0,1,15deg);}26%,38%,50%,62%,74%{-webkit-transform: rotate3d(0,0,1,0deg);transform: rotate3d(0,0,1,0deg);}29%,41%,53%,65%,77%{-webkit-transform: rotate3d(0,0,1,-15deg);transform: rotate3d(0,0,1,-15deg);}80%{-webkit-transform:rotate3d(0, 0, 1, 0deg);transform:rotate3d(0, 0, 1, 0deg);}}
@keyframes trin{from{-webkit-transform:rotate3d(0,0,1,0deg);transform:rotate3d(0,0,1,0deg);}20%,32%,44%,56%,68%{-webkit-transform: rotate3d(0,0,1,0deg);transform: rotate3d(0,0,1,0deg);}23%,35%,47%,59%,71%{-webkit-transform: rotate3d(0,0,1,15deg);transform: rotate3d(0,0,1,15deg);}26%,38%,50%,62%,74%{-webkit-transform: rotate3d(0,0,1,0deg);transform: rotate3d(0,0,1,0deg);}29%,41%,53%,65%,77%{-webkit-transform: rotate3d(0,0,1,-15deg);transform: rotate3d(0,0,1,-15deg);}80%{-webkit-transform:rotate3d(0, 0, 1, 0deg);transform:rotate3d(0, 0, 1, 0deg);}}
