/**/.imageWidget{position:relative}.imageWidget a,.imageWidget span.image-caption{font-style:italic;text-align:center}.imageWidget a[data-caption]::after,.imageWidget span[data-caption]::after{content:attr(data-caption);display:block;line-height:100%}
.imageWidget.with-caption a::after,.imageWidget.with-caption span.image-caption::after{margin-top:12px}.imageWidget img[width][height]{height:auto}[data-flex-site] #fcontainer .imageWidget:after,[data-flex-site] #flex-footer .imageWidget:after,[data-flex-site] #flex-header .imageWidget:after{content:none}
[data-flex-site] #fcontainer .imageWidget:before,[data-flex-site] #flex-footer .imageWidget:before,[data-flex-site] #flex-header .imageWidget:before{font-size:80px;transform:none}.imageWidget.hover img.hover-image,.imageWidget:hover img.hover-image{display:initial}
.imageWidget.hover.hasHover img:not(.hover-image),.imageWidget:hover.hasHover img:not(.hover-image){display:none!important}.imageWidget img.hover-image,.imageWidget img.logo-on-scroll{display:none}/**/@media(max-width:767px){body.dmRoot div[dmtemplateid]:not([dmtemplateid=SlideRightTopFloatM]) .dmHeader .multilingualWidget{position:absolute;top:14px;left:13px;margin-top:0}body.dmRoot div[dmtemplateid][dmtemplateid=SlideRightTopFloatM] .dmHeader .multilingualWidget{position:absolute;top:5px;right:17px}
}@media(min-width:768px) and (max-width:1024px){body:not(.responsiveTablet) #dm div[dmtemplateid=StandardLayoutMultiT] .dmHeader .multilingualWidget{position:absolute!important;top:5px!important;right:17px!important;left:initial!important}
}@media(max-width:767px){body.dmRoot .dmHeader .displayHidden-inner .multilingualWidget{top:0!important}}#dm_content div.dmRespCol div.multilingualWidget,#hcontainer div.dmRespCol div.multilingualWidget{width:auto!important;display:table!important}
.multilingualWidget.displayNone{display:none!important}.multilingualWidget>div{position:relative}.multilingualWidget{clear:both;margin:0;vertical-align:top;display:table!important;font-size:0;font-family:sans-serif}
.multilingualWidget .language{color:#888;display:inline-block}.multilingualWidget .language a{text-align:center;display:inline-block;color:inherit;border:#dadada 1px solid;background-color:#fff}.multilingualWidget .language a img{width:24px;height:26px;min-width:24px;min-height:26px}
.multilingualWidget .language a span{display:none;line-height:initial}.multilingualWidget .language a span.name{margin-top:5px;margin-left:7px;font-size:12px;font-weight:400;text-transform:capitalize}
.multilingualWidget .language a span.short-label{font-size:12px}.multilingualWidget .language a:after{line-height:initial}.multilingualWidget.open .current-language a:after{transform:rotate(-180deg)}.multilingualWidget .current-language a:after{transition:transform .2s}
.multilingualWidget.dropdown .language{width:100%}.multilingualWidget.dropdown .language a{display:block;padding:1px 5px}.multilingualWidget.dropdown .language.other-languages{position:absolute;z-index:800;max-height:0;overflow:hidden;transition:max-height .1s ease-in-out}
.multilingualWidget.dropdown .language.other-languages a{border-top:0!important}.multilingualWidget.dropdown .current-language{position:relative}.multilingualWidget.dropdown .current-language span.name{padding-right:25px}
.multilingualWidget.dropdown .dm-icon{font-size:9px;display:inline-block;position:absolute;top:46%;transform:translateY(-50%);transition:transform .2s;right:8px}.multilingualWidget.dropdown.open .dm-icon{transform:rotate(-180deg) translateY(50%)}
.multilingualWidget.dropdown.open .other-languages{display:block;max-height:300px}.multilingualWidget.dropdown .other-languages,.multilingualWidget.dropdown.flag-only .dm-icon,.multilingualWidget.inline span,.multilingualWidget.no-flag a img{display:none}
.multilingualWidget.dropdown.flag-only a{border:transparent 1px solid;background-color:transparent}.multilingualWidget.dropdown.flag-only.open .language a{background-color:rgba(0,0,0,.3);border:#dadada 1px solid}
.multilingualWidget.dropdown.long-label a{text-align:left;padding:2px 0 2px 5px;position:relative;box-sizing:border-box}.multilingualWidget.dropdown.long-label a span.name,.multilingualWidget.inline.flag-only .language,.multilingualWidget.inline.short-label.no-flag span.short-label{display:inline-block}
.multilingualWidget.dropdown.long-label.no-flag a{padding:7px 10px 9px}.multilingualWidget.dropdown.long-label.no-flag a span.name,.multilingualWidget.dropdown.short-label.no-flag a span.short-label{margin:0;display:inline-block}
.multilingualWidget.dropdown.short-label.no-flag a{padding:8px 22px 9px 10px;font-size:12px;min-height:32px;height:auto;box-sizing:border-box}.multilingualWidget.dropdown.short-label.no-flag .current-language a:after{top:12px}
.multilingualWidget.short-label span.short-label{text-transform:uppercase}.multilingualWidget.inline.flag-only a{padding:2px 5px;height:32px;box-sizing:border-box}.multilingualWidget.inline.flag-only .current-language a{box-shadow:inset 0 0 8px 0 rgba(0,0,0,.6);border-right:0;border-right-width:0!important;border-right-color:transparent!important;border-right-style:none!important}
.multilingualWidget.inline.flag-only .other-languages a:not(:last-child){border-right-width:0!important;border-right-color:transparent!important;border-right-style:none!important}.multilingualWidget.inline.flag-only .dm-icon,.multilingualWidget.inline.short-label.no-flag .dm-icon{display:none}
.multilingualWidget.inline.short-label.no-flag .current-language a{padding-right:0;border-right-width:0!important;border-right-color:transparent!important;border-right-style:none!important}.multilingualWidget.inline.short-label.no-flag .current-language a span.short-label{font-weight:700}
.multilingualWidget.inline.short-label.no-flag .other-languages a{border-left-color:transparent!important;border-left-width:0!important;border-left-style:none!important}.multilingualWidget.inline.short-label.no-flag .other-languages a:not(:last-child){padding-right:0;border-right-color:transparent!important;border-right-width:0!important;border-right-style:none!important}
.multilingualWidget.inline.short-label.no-flag a{position:relative;padding:8px 10px;font-size:12px;min-height:32px;height:auto;text-decoration:none}.multilingualWidget.inline.short-label.no-flag a:after{content:"/";position:absolute;top:8px;right:-7px;z-index:1;pointer-events:none}
.multilingualWidget.inline.short-label.no-flag a:hover .short-label{text-decoration:underline}.multilingualWidget.inline.short-label.no-flag .other-languages a:last-child:after{content:""}/**/.dmNewParagraph[data-version] .text-align-left{text-align:left!important}.dmNewParagraph[data-version] .text-align-center{text-align:center!important}.dmNewParagraph[data-version] .text-align-right{text-align:right!important}
.dmNewParagraph[data-version] .text-align-justify{text-align:justify!important}.dmNewParagraph[data-version] .ql-indent-1{padding:0 1em;padding-inline-end:0;padding-inline-start:3em}.dmNewParagraph[data-version] .ql-indent-2{padding:0 2em;padding-inline-end:0;padding-inline-start:6em}
.dmNewParagraph[data-version] .ql-indent-3{padding:0 3em;padding-inline-end:0;padding-inline-start:9em}.dmNewParagraph[data-version] .ql-indent-4{padding:0 4em;padding-inline-end:0;padding-inline-start:12em}
.dmNewParagraph[data-version] .ql-indent-5{padding:0 5em;padding-inline-end:0;padding-inline-start:15em}.dmNewParagraph[data-version] .ql-indent-6{padding:0 6em;padding-inline-end:0;padding-inline-start:18em}
.dmNewParagraph[data-version] .ql-indent-7{padding:0 7em;padding-inline-end:0;padding-inline-start:21em}.dmNewParagraph[data-version] .ql-indent-8{padding:0 8em;padding-inline-end:0;padding-inline-start:24em}
.dmNewParagraph[data-version] .ql-indent-9{padding:0 9em;padding-inline-end:0;padding-inline-start:27em}.dmNewParagraph[data-version]{line-height:initial}.dmNewParagraph[data-version] [class*=size-]{width:auto!important;height:auto!important}
.dmNewParagraph[data-version] h1,.dmNewParagraph[data-version] h2,.dmNewParagraph[data-version] h3,.dmNewParagraph[data-version] h4,.dmNewParagraph[data-version] h5,.dmNewParagraph[data-version] h6,.dmNewParagraph[data-version] ol,.dmNewParagraph[data-version] p,.dmNewParagraph[data-version] ul{margin-top:0;margin-bottom:0}
.dmNewParagraph[data-version] ol,.dmNewParagraph[data-version] ul{padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.dmNewParagraph[data-version] ol>li,.dmNewParagraph[data-version] ul>li{list-style-type:none;text-indent:-1.5em;margin:0 1em;margin-inline-end:0;margin-inline-start:2em}
.dmNewParagraph[data-version] ol>li:before,.dmNewParagraph[data-version] ul>li:before{min-width:1em;display:inline-block;margin-right:.5em;margin-inline-start:0;margin-inline-end:.5em;text-align:right;text-align:end}
.dmNewParagraph[data-version] ul .ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-1}.dmNewParagraph[data-version] ul .ql-indent-1:before{font-weight:700;content:"○"}
.dmNewParagraph[data-version] ul .ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-2}.dmNewParagraph[data-version] ul .ql-indent-2:before,.dmNewParagraph[data-version] ul .ql-indent-3:before,.dmNewParagraph[data-version] ul .ql-indent-4:before,.dmNewParagraph[data-version] ul .ql-indent-5:before,.dmNewParagraph[data-version] ul .ql-indent-6:before,.dmNewParagraph[data-version] ul .ql-indent-7:before,.dmNewParagraph[data-version] ul .ql-indent-8:before,.dmNewParagraph[data-version] ul .ql-indent-9:before{font-weight:700;content:"■"}
.dmNewParagraph[data-version] ul .ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-3}.dmNewParagraph[data-version] ul .ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9;counter-increment:list-4}
.dmNewParagraph[data-version] ul .ql-indent-5{counter-reset:list-6 list-7 list-8 list-9;counter-increment:list-5}.dmNewParagraph[data-version] ul .ql-indent-6{counter-reset:list-7 list-8 list-9;counter-increment:list-6}
.dmNewParagraph[data-version] ul .ql-indent-7{counter-reset:list-8 list-9;counter-increment:list-7}.dmNewParagraph[data-version] ul .ql-indent-8{counter-reset:list-9;counter-increment:list-8}.dmNewParagraph[data-version] ul .ql-indent-9{counter-reset:list-10 list-9;counter-increment:list-9}
.dmNewParagraph[data-version] ul>li:before{font-weight:700;content:"•";font-family:Arial}.dmNewParagraph[data-version] ul.custom-list-1>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"○";transform:scale(1);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-2>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"★";transform:scale(.7);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-3>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"➞";transform:scale(.8);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-4>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"＋";transform:scale(.7);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-5>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"－";transform:scale(.7);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-6>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"✓";transform:scale(.8);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-7>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"✗";transform:scale(.8);transform-origin:center right}
.dmNewParagraph[data-version] ol .ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-1}.dmNewParagraph[data-version] ol .ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}
.dmNewParagraph[data-version] ol .ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-2}.dmNewParagraph[data-version] ol .ql-indent-2:before{content:counter(list-2,lower-roman) ". "}
.dmNewParagraph[data-version] ol .ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-3}.dmNewParagraph[data-version] ol .ql-indent-3:before{content:counter(list-3,decimal) ". "}
.dmNewParagraph[data-version] ol .ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9;counter-increment:list-4}.dmNewParagraph[data-version] ol .ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}
.dmNewParagraph[data-version] ol .ql-indent-5{counter-reset:list-6 list-7 list-8 list-9;counter-increment:list-5}.dmNewParagraph[data-version] ol .ql-indent-5:before{content:counter(list-5,lower-roman) ". "}
.dmNewParagraph[data-version] ol .ql-indent-6{counter-reset:list-7 list-8 list-9;counter-increment:list-6}.dmNewParagraph[data-version] ol .ql-indent-6:before{content:counter(list-6,decimal) ". "}
.dmNewParagraph[data-version] ol .ql-indent-7{counter-reset:list-8 list-9;counter-increment:list-7}.dmNewParagraph[data-version] ol .ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}
.dmNewParagraph[data-version] ol .ql-indent-8{counter-reset:list-9;counter-increment:list-8}.dmNewParagraph[data-version] ol .ql-indent-8:before{content:counter(list-8,lower-roman) ". "}
.dmNewParagraph[data-version] ol .ql-indent-9{counter-reset:list-10 list-9;counter-increment:list-9}.dmNewParagraph[data-version] ol .ql-indent-9:before{content:counter(list-9,decimal) ". "}
.dmNewParagraph[data-version] ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.dmNewParagraph[data-version] ol li:before{content:counter(list-0,decimal) ". "}
.dmNewParagraph[data-version] a{vertical-align:initial}@media(min-width:768px) and (max-width:1024px){.dmNewParagraph[data-version] .t-text-align-left{text-align:left!important}.dmNewParagraph[data-version] .t-text-align-center{text-align:center!important}
.dmNewParagraph[data-version] .t-text-align-right{text-align:right!important}.dmNewParagraph[data-version] .t-text-align-justify{text-align:justify!important}}@media(max-width:767px){.dmRoot .dmNewParagraph[data-version] .m-text-align-left{text-align:left!important}
.dmRoot .dmNewParagraph[data-version] .m-text-align-center{text-align:center!important}.dmRoot .dmNewParagraph[data-version] .m-text-align-right{text-align:right!important}.dmRoot .dmNewParagraph[data-version] .m-text-align-justify{text-align:justify!important}
}.inlineBindingLink{color:inherit!important;text-decoration:inherit!important}/**/#dm .dmSocialHub:not(.gapSpacing) .socialHubInnerDiv a:not(:last-child){margin-right:5px}.socialHubIcon{display:flex!important;align-items:center;justify-content:center}.socialHubIcon svg{fill:currentColor;width:80%;height:80%}
.socialHubIcon.style1,.socialHubIcon.style4,.socialHubIcon.style6,.socialHubIcon.style7{background:#617379}.socialHubIcon.style7{box-shadow:0 5px 0 0 #475459}.style1.dmSocialTiktok,.style4.dmSocialTiktok{background:#000}
.style1.dmSocialFacebook,.style4.dmSocialFacebook{background:#1877f2}.style1.dmSocialTwitter,.style4.dmSocialTwitter{background:#0f1419}.style1.dmSocialGooglePlus,.style4.dmSocialGooglePlus{background:#da4835}
.style1.dmSocialInstagram,.style4.dmSocialInstagram{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)!important}.style1.dmSocialYoutube,.style4.dmSocialYoutube{background:red}
.style1.dmSocialLinkedin,.style4.dmSocialLinkedin{background:#2867b2}.style1.dmSocialYelp,.style4.dmSocialYelp{background:#e43340}.style1.dmSocialPinterest,.style4.dmSocialPinterest{background:#c8232c}
.style1.dmSocialVimeo,.style4.dmSocialVimeo{background:#1ab7ea}.style1.dmSocialPicasa,.style4.dmSocialPicasa{background:#be81d1}.style1.dmSocialFoursquare,.style4.dmSocialFoursquare{background:#ef4b78}
.style1.dmSocialRss,.style4.dmSocialRss{background:#f39200}.style1.dmSocialReddit,.style4.dmSocialReddit{background:#ff4500}.style1.dmSocialEmail,.style4.dmSocialEmail{background:#617379}.style1.dmSocialSnapchat,.style4.dmSocialSnapchat{background:#fffc00}
.style1.dmSocialTripadvisor,.style4.dmSocialTripadvisor{background:#589442}.style1.dmSocialWaze,.style4.dmSocialWaze{background:#56cbe7}.style1.dmSocialGoogleMyBusiness,.style4.dmSocialGoogleMyBusiness{background:#477cdf}
.style1.dmSocialWhatsapp,.style4.dmSocialWhatsapp{background:#25d366}.style1.dmSocialPhone,.style4.dmSocialPhone{background:#616c79}.style1:after{content:"";width:44px;height:28px;display:block;position:absolute;top:0;left:0;z-index:-1;border-radius:10px}
.style1.dmSocialEmail:after,.style1.dmSocialFacebook:after,.style1.dmSocialFoursquare:after,.style1.dmSocialGoogleMyBusiness:after,.style1.dmSocialGooglePlus:after,.style1.dmSocialInstagram:after,.style1.dmSocialLinkedin:after,.style1.dmSocialPhone:after,.style1.dmSocialPicasa:after,.style1.dmSocialPinterest:after,.style1.dmSocialReddit:after,.style1.dmSocialRss:after,.style1.dmSocialSnapchat:after,.style1.dmSocialTripadvisor:after,.style1.dmSocialTwitter:after,.style1.dmSocialVimeo:after,.style1.dmSocialYelp:after,.style1.dmSocialYoutube:after{background:#fff;opacity:.2}
.style2.dmSocialTiktok{color:#000}.style2.dmSocialFacebook{color:#1877f2}.style2.dmSocialTwitter{color:#0f1419}.style2.dmSocialGooglePlus{color:#da4835}.style2.dmSocialInstagram:before{background-image:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)!important;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.style2.dmSocialYoutube{color:red}.style2.dmSocialLinkedin{color:#2867b2}.style2.dmSocialYelp{color:#e43340}.style2.dmSocialPinterest{color:#c8232c}.style2.dmSocialVimeo{color:#1ab7ea}.style2.dmSocialPicasa{color:#be81d1}
.style2.dmSocialFoursquare{color:#ef4b78}.style2.dmSocialRss{color:#f39200}.style2.dmSocialReddit{color:#ff4500}.style2.dmSocialEmail{color:#617379}.style2.dmSocialSnapchat{color:#fffc00}.style2.dmSocialTripadvisor{color:#589442}
.style2.dmSocialGoogleMyBusiness:before{color:#477cdf}.style2.dmSocialWaze:before{color:#56cbe7}.style2.dmSocialWhatsapp:before{color:#25d366}.style2.dmSocialPhone{color:#616c79}.style6.dmSocialTiktok{background:#000}
.style6.dmSocialFacebook{background:#1877f2}.style6.dmSocialTwitter{background:#0f1419}.style6.dmSocialGooglePlus{background:#da4835}.style6.dmSocialInstagram{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)!important}
.style6.dmSocialYoutube{background:red}.style6.dmSocialLinkedin{background:#2867b2}.style6.dmSocialYelp{background:#e43340}.style6.dmSocialPinterest{background:#c8232c}.style6.dmSocialVimeo{background:#1ab7ea}
.style6.dmSocialPicasa{background:#be81d1}.style6.dmSocialFoursquare{background:#ef4b78}.style6.dmSocialRss{background:#f39200}.style6.dmSocialReddit{background:#ff4500}.style6.dmSocialEmail{background:#617379}
.style6.dmSocialSnapchat{background:#fffc00}.style6.dmSocialTripadvisor{background:#589442}.style6.dmSocialWaze{background:#56cbe7}.style6.dmSocialGoogleMyBusiness{background:#477cdf}.style6.dmSocialWhatsapp{background:#25d366}
.style6.dmSocialPhone{background:#616c79}.style7.dmSocialTiktok{background:#000}.style7.dmSocialFacebook{background:#1877f2;box-shadow:0 5px 0 0 #4b68a5}.style7.dmSocialTwitter{background:#0f1419}.style7.dmSocialGooglePlus{background:#da4835;box-shadow:0 5px 0 0 #c44130}
.style7.dmSocialInstagram{box-shadow:0 5px 0 0 #ad2271;background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)!important}.style7.dmSocialYoutube{background:red;box-shadow:0 5px 0 0 #b3392c}
.style7.dmSocialLinkedin{background:#2867b2;box-shadow:0 5px 0 0 #1278b1}.style7.dmSocialYelp{background:#e43340;box-shadow:0 5px 0 0 #b62933}.style7.dmSocialPinterest{background:#c8232c;box-shadow:0 5px 0 0 #a21a2d}
.style7.dmSocialVimeo{background:#1ab7ea;box-shadow:0 5px 0 0 #1592bb}.style7.dmSocialPicasa{background:#be81d1;box-shadow:0 5px 0 0 #9867a7}.style7.dmSocialFoursquare{background:#ef4b78;box-shadow:0 5px 0 0 #da3b67}
.style7.dmSocialRss{background:#f39200;box-shadow:0 5px 0 0 #c27500}.style7.dmSocialReddit{background:#ff4500;box-shadow:0 5px 0 0 #ae5534}.style7.dmSocialEmail{background:#617379;box-shadow:0 5px 0 0 #475459}
.style7.dmSocialSnapchat{background:#fffc00;box-shadow:0 5px 0 0 #d1d05d}.style7.dmSocialTripadvisor{background:#589442;box-shadow:0 5px 0 0 #4e7b3e}.style7.dmSocialWaze{background:#56cbe7;box-shadow:0 5px 0 0 #475459}
.style7.dmSocialGoogleMyBusiness{background:#477cdf;box-shadow:0 5px 0 0 #475459}.style7.dmSocialWhatsapp{background:#25d366;box-shadow:0 5px 0 0 #475459}.style7.dmSocialPhone{background:#616c79;box-shadow:0 5px 0 0 #4a5458}
/* Custom Widgets Styles */
.widget-339581 .pano-cards-wrapper {
  display: flex;
  flex-direction: row;
  gap: 12px;
  width: 100%;
  align-items: stretch;
}
.widget-339581 .pano-card {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: #f0f4f8;
  border-radius: 16px;
  overflow: hidden;
  position: relative;
}
.widget-339581 .pano-card-content {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 1;
  position: relative;
  z-index: 1;
}
.widget-339581 .pano-card-title {
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1.3;
  margin: 0;
  color: #111111;
}
.widget-339581 .pano-card-description {
  font-size: 0.95rem;
  line-height: 1.6;
  color: #333333;
  margin: 0;
}
.widget-339581 .pano-card-description p {
  margin: 0;
}
.widget-339581 .pano-card-btn-wrapper {
  margin-top: 8px;
}
.widget-339581 .pano-card-image {
  width: 100%;
  height: 260px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .widget-339581 .pano-cards-wrapper {
    flex-direction: column;
  }
  .widget-339581 .pano-card {
    width: 100%;
  }
  .widget-339581 .pano-card-image {
    height: 200px;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .widget-339581 .pano-card-title {
    font-size: 1rem;
  }
  .widget-339581 .pano-card-description {
    font-size: 0.875rem;
  }
}

@charset "UTF-8";
.widget-e60759 {
  --fb-cover-bg: #c1694f;
  --fb-cover-title-color: #1a1a1a;
  --fb-cover-subtitle-color: #1a1a1a;
  --fb-nav-color: #333333;
  --fb-indicator-color: #555555;
  --fb-flip-duration: 0.65s;
  font-family: inherit;
  box-sizing: border-box;
  /* ── Spinner ── */
  /* ── Cover ── */
  /* ── Perspective scene ── */
  /* Perspective lives on the PARENT of the animated element.
     This is a key requirement for correct CSS 3D — not on the element itself. */
  /* ── Book spread ── */
  /* Static half-pages */
  /* Spine gradient */
  /* ── Flip leaf ── */
  /* transform-style: preserve-3d on the leaf itself so front/back faces work.
     perspective is on .fb-book-scene (parent of the book).
     will-change: transform tells the browser to promote this to its own GPU layer
     immediately — no jank on the first flip. */
  /* Back face is pre-rotated 180° in 3D so it faces the opposite direction */
  /* Page-curl shading: a subtle gradient darkens the edge that's being turned,
     making the 3D feel more physical. Fades mid-animation via the rotateY. */
  /* ── Navigation ── */
  /* ── Responsive ── */
}
.widget-e60759 .flipbook-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: 24px 16px 20px;
  box-sizing: border-box;
}
.widget-e60759 .flipbook-scene {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 60px;
}
.widget-e60759 .fb-spinner {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 50;
}
.widget-e60759 .fb-spinner.hidden {
  display: none;
}
.widget-e60759 .fb-spinner-ring {
  width: 40px;
  height: 40px;
  border: 3px solid rgba(0, 0, 0, 0.1);
  border-top-color: #555;
  border-radius: 50%;
  animation: fb-spin 0.8s linear infinite;
}
@keyframes fb-spin {
  to {
    transform: rotate(360deg);
  }
}
.widget-e60759 .fb-cover {
  position: relative;
  overflow: hidden;
  border-radius: 4px;
  background: var(--fb-cover-bg);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18), 0 2px 8px rgba(0, 0, 0, 0.1);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.widget-e60759 .fb-cover:hover {
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.22), 0 4px 12px rgba(0, 0, 0, 0.12);
  transform: translateY(-2px);
}
.widget-e60759 .fb-cover.hidden {
  display: none;
}
.widget-e60759 .fb-cover-img {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
}
.widget-e60759 .fb-cover-content {
  position: relative;
  z-index: 1;
  padding: 40px 32px 32px;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: flex-start;
}
.widget-e60759 .fb-cover-title {
  font-size: clamp(22px, 3.5vw, 42px);
  font-weight: 500;
  line-height: 1.2;
  color: var(--fb-cover-title-color);
  letter-spacing: -0.02em;
  max-width: 80%;
}
.widget-e60759 .fb-cover-subtitle {
  margin-top: 12px;
  font-size: clamp(13px, 1.5vw, 18px);
  color: var(--fb-cover-subtitle-color);
  opacity: 0.8;
  font-weight: 400;
}
.widget-e60759 .fb-cover-click-hint {
  position: absolute;
  bottom: 20px;
  right: 24px;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--fb-cover-title-color);
  opacity: 0.4;
  z-index: 2;
}
.widget-e60759 .fb-book-scene {
  display: none;
  perspective: 1800px;
  perspective-origin: center center;
  /* box-shadow here instead of filter:drop-shadow so it doesn't repaint every frame */
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.16), 0 2px 8px rgba(0, 0, 0, 0.08);
  border-radius: 3px;
}
.widget-e60759 .fb-book-scene.open {
  display: block;
}
.widget-e60759 .fb-book {
  position: relative;
  display: none;
}
.widget-e60759 .fb-book.open {
  display: flex;
  align-items: stretch;
}
.widget-e60759 .fb-page-static {
  position: relative;
  overflow: hidden;
  background: #fff;
  flex-shrink: 0;
  /* Faint 1px edge only — no heavy border */
  outline: 1px solid rgba(0, 0, 0, 0.07);
}
.widget-e60759 .fb-page-left {
  border-radius: 3px 0 0 3px;
}
.widget-e60759 .fb-page-right {
  border-radius: 0 3px 3px 0;
}
.widget-e60759 .fb-canvas {
  display: block;
  width: 100%;
  height: 100%;
}
.widget-e60759 .fb-spine {
  width: 10px;
  flex-shrink: 0;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.13) 0%, rgba(0, 0, 0, 0.04) 40%, rgba(255, 255, 255, 0.18) 50%, rgba(0, 0, 0, 0.04) 60%, rgba(0, 0, 0, 0.13) 100%);
  z-index: 5;
}
.widget-e60759 .fb-flip-leaf {
  position: absolute;
  top: 0;
  height: 100%;
  transform-origin: left center;
  transform-style: preserve-3d;
  -webkit-transform-style: preserve-3d;
  will-change: transform;
  z-index: 10;
  pointer-events: none;
  display: none;
}
.widget-e60759 .fb-leaf-front,
.widget-e60759 .fb-leaf-back {
  position: absolute;
  inset: 0;
  overflow: hidden;
  background: #fff;
  outline: 1px solid rgba(0, 0, 0, 0.07);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.widget-e60759 .fb-leaf-back {
  transform: rotateY(180deg);
  -webkit-transform: rotateY(180deg);
}
.widget-e60759 .fb-leaf-front::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, transparent 55%, rgba(0, 0, 0, 0.06) 80%, rgba(0, 0, 0, 0.13) 100%);
  pointer-events: none;
  z-index: 2;
}
.widget-e60759 .fb-leaf-back::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to left, transparent 55%, rgba(0, 0, 0, 0.06) 80%, rgba(0, 0, 0, 0.13) 100%);
  pointer-events: none;
  z-index: 2;
}
.widget-e60759 .fb-nav {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 18px;
}
.widget-e60759 .fb-nav-btn {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1px solid currentColor;
  background: transparent;
  color: var(--fb-nav-color);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease;
  padding: 0;
  flex-shrink: 0;
}
.widget-e60759 .fb-nav-btn:hover {
  background: var(--fb-nav-color);
  color: #fff;
}
.widget-e60759 .fb-nav-btn:disabled {
  opacity: 0.28;
  cursor: default;
  pointer-events: none;
}
.widget-e60759 .fb-page-indicator {
  font-size: 14px;
  color: var(--fb-indicator-color);
  min-width: 100px;
  text-align: center;
  letter-spacing: 0.01em;
  font-variant-numeric: tabular-nums;
}
@media (max-width: 767px) {
  .widget-e60759 .flipbook-wrapper {
    padding: 16px 8px 16px;
  }
  .widget-e60759 .fb-cover-content {
    padding: 24px 20px 20px;
  }
  .widget-e60759 .fb-spine {
    width: 6px;
  }
  .widget-e60759 .fb-nav {
    gap: 12px;
    margin-top: 14px;
  }
}

.widget-11e3b4 {
  --card-spacing: 180px;
  --card-width: 400px;
  --card-height: 550px;
  /* Card positioning states - fanned stack effect */
  /* Arrow buttons */
  /* Dot indicators */
  /* Tablet styles */
  /* Mobile styles */
}
.widget-11e3b4 .carousel-wrapper {
  position: relative;
  width: 100%;
  min-height: 800px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  overflow: hidden;
  padding: 80px 20px 120px;
}
.widget-11e3b4 .carousel-container {
  position: relative;
  width: 100%;
  height: 600px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  perspective: 1500px;
  perspective-origin: 50% 60%;
}
.widget-11e3b4 .carousel-track {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  transform-style: preserve-3d;
}
.widget-11e3b4 .carousel-card {
  position: absolute;
  width: var(--card-width, 400px);
  height: var(--card-height, 550px);
  border-radius: 20px;
  overflow: hidden;
  cursor: pointer;
  transition: all 0.7s cubic-bezier(0.4, 0, 0.2, 1);
  transform-style: preserve-3d;
  backface-visibility: hidden;
  box-shadow: 0 30px 60px rgba(0, 0, 0, 0.4);
  bottom: 0;
  transform-origin: bottom center;
}
.widget-11e3b4 .carousel-card.shadow-enabled {
  box-shadow: 0 40px 80px rgba(0, 0, 0, 0.6);
}
.widget-11e3b4 .carousel-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  user-select: none;
  pointer-events: none;
}
.widget-11e3b4 .carousel-card[data-position=center] {
  z-index: 5;
  transform: translateX(0) translateZ(100px) rotateY(0deg) scale(1);
  opacity: 1;
}
.widget-11e3b4 .carousel-card[data-position=left-1] {
  z-index: 4;
  transform: translateX(calc(var(--card-spacing, 180px) * -1)) translateZ(-100px) rotateY(45deg) scale(0.9);
  opacity: 1;
}
.widget-11e3b4 .carousel-card[data-position=left-2] {
  z-index: 3;
  transform: translateX(calc(var(--card-spacing, 180px) * -1.8)) translateZ(-250px) rotateY(55deg) scale(0.82);
  opacity: 0.95;
}
.widget-11e3b4 .carousel-card[data-position=right-1] {
  z-index: 4;
  transform: translateX(calc(var(--card-spacing, 180px) * 1)) translateZ(-100px) rotateY(-45deg) scale(0.9);
  opacity: 1;
}
.widget-11e3b4 .carousel-card[data-position=right-2] {
  z-index: 3;
  transform: translateX(calc(var(--card-spacing, 180px) * 1.8)) translateZ(-250px) rotateY(-55deg) scale(0.82);
  opacity: 0.95;
}
.widget-11e3b4 .carousel-card[data-position=hidden] {
  z-index: 1;
  transform: translateX(0) translateZ(-600px) rotateY(0deg) scale(0.4);
  opacity: 0;
  pointer-events: none;
}
.widget-11e3b4 .carousel-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.9);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.widget-11e3b4 .carousel-arrow:hover {
  background: rgb(255, 255, 255);
  transform: translateY(-50%) scale(1.1);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
}
.widget-11e3b4 .carousel-arrow-prev {
  left: 30px;
}
.widget-11e3b4 .carousel-arrow-next {
  right: 30px;
}
.widget-11e3b4 .carousel-arrow svg {
  color: #333;
}
.widget-11e3b4 .carousel-dots {
  position: absolute;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 12px;
  z-index: 10;
}
.widget-11e3b4 .carousel-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  border: none;
  background-color: rgba(255, 255, 255, 0.5);
  cursor: pointer;
  transition: all 0.3s ease;
  padding: 0;
}
.widget-11e3b4 .carousel-dot:hover {
  transform: scale(1.2);
}
.widget-11e3b4 .carousel-dot.active {
  background-color: #ffffff;
  transform: scale(1.3);
}
@media (min-width: 768px) and (max-width: 1024px) {
  .widget-11e3b4 {
    --card-spacing: 140px;
  }
  .widget-11e3b4 .carousel-wrapper {
    min-height: 700px;
    padding: 60px 20px 100px;
  }
  .widget-11e3b4 .carousel-container {
    height: 500px;
  }
  .widget-11e3b4 .carousel-card {
    width: calc(var(--card-width, 400px) * 0.85);
    height: calc(var(--card-height, 550px) * 0.85);
  }
  .widget-11e3b4 .carousel-card[data-position=left-2],
  .widget-11e3b4 .carousel-card[data-position=right-2] {
    opacity: 0;
    pointer-events: none;
  }
  .widget-11e3b4 .carousel-arrow {
    width: 44px;
    height: 44px;
  }
  .widget-11e3b4 .carousel-arrow-prev {
    left: 20px;
  }
  .widget-11e3b4 .carousel-arrow-next {
    right: 20px;
  }
}
@media (max-width: 767px) {
  .widget-11e3b4 {
    /* Show only center card on mobile */
  }
  .widget-11e3b4 .carousel-wrapper {
    min-height: 650px;
    padding: 40px 15px 80px;
    align-items: center;
  }
  .widget-11e3b4 .carousel-container {
    height: 500px;
    perspective: 1000px;
    align-items: center;
  }
  .widget-11e3b4 .carousel-card {
    width: calc(var(--card-width, 400px) * 0.7);
    height: calc(var(--card-height, 550px) * 0.7);
  }
  .widget-11e3b4 .carousel-card[data-position=left-1],
  .widget-11e3b4 .carousel-card[data-position=left-2],
  .widget-11e3b4 .carousel-card[data-position=right-1],
  .widget-11e3b4 .carousel-card[data-position=right-2] {
    opacity: 0;
    pointer-events: none;
    transform: translateX(0) translateZ(-400px) scale(0.7);
  }
  .widget-11e3b4 .carousel-card[data-position=center] {
    transform: translateX(0) translateZ(0) rotateY(0deg) scale(1);
  }
  .widget-11e3b4 .carousel-arrow {
    width: 40px;
    height: 40px;
  }
  .widget-11e3b4 .carousel-arrow-prev {
    left: 10px;
  }
  .widget-11e3b4 .carousel-arrow-next {
    right: 10px;
  }
  .widget-11e3b4 .carousel-dots {
    bottom: 20px;
    gap: 8px;
  }
  .widget-11e3b4 .carousel-dot {
    width: 10px;
    height: 10px;
  }
}

.widget-d1dd25 {
  --transition-speed: 500ms;
  --shadow-color: rgba(26, 108, 122, 0.4);
  position: relative;
  width: 100%;
  overflow: hidden;
}

.widget-d1dd25 .collage-container {
  position: relative;
  width: 100%;
  min-height: 600px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 60px;
}

.widget-d1dd25 .collage-image {
  position: absolute;
  width: 280px;
  height: 200px;
  cursor: pointer;
  transition: transform 0.3s ease, z-index 0s;
}

.widget-d1dd25 .collage-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 8px;
  box-shadow: none;
  user-select: none;
  -webkit-user-select: none;
  transition: filter 0.3s ease;
  border: none;
}

.widget-d1dd25 .collage-image:hover img {
  filter: brightness(1.15) saturate(1.2);
}

.widget-d1dd25 .collage-image.clicked img {
  animation: imagePulse 0.4s ease-out;
}

@keyframes imagePulse {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
}
/* Initial scattered stack positions - organic and random */
.widget-d1dd25 .collage-image[data-index="0"] {
  left: 12%;
  top: 30%;
  transform: translate(-50%, -50%) rotate(-18deg);
  z-index: 3;
  animation: fadeInSlide 0.5s ease-out 0.1s both, floatAnim1 6s ease-in-out infinite;
}

.widget-d1dd25 .collage-image[data-index="0"]:hover {
  transform: translate(-50%, -50%) rotate(-12deg) scale(1.08);
}

.widget-d1dd25 .collage-image[data-index="1"] {
  left: 28%;
  top: 65%;
  transform: translate(-50%, -50%) rotate(14deg);
  z-index: 1;
  animation: fadeInSlide 0.5s ease-out 0.2s both, floatAnim2 7s ease-in-out infinite;
}

.widget-d1dd25 .collage-image[data-index="1"]:hover {
  transform: translate(-50%, -50%) rotate(20deg) scale(1.08);
}

.widget-d1dd25 .collage-image[data-index="2"] {
  left: 50%;
  top: 25%;
  transform: translate(-50%, -50%) rotate(-7deg);
  z-index: 5;
  animation: fadeInSlide 0.5s ease-out 0.3s both, floatAnim3 8s ease-in-out infinite;
}

.widget-d1dd25 .collage-image[data-index="2"]:hover {
  transform: translate(-50%, -50%) rotate(-1deg) scale(1.08);
}

.widget-d1dd25 .collage-image[data-index="3"] {
  left: 50%;
  top: 70%;
  transform: translate(-50%, -50%) rotate(22deg);
  z-index: 2;
  animation: fadeInSlide 0.5s ease-out 0.4s both, floatAnim1 7.5s ease-in-out infinite;
}

.widget-d1dd25 .collage-image[data-index="3"]:hover {
  transform: translate(-50%, -50%) rotate(28deg) scale(1.08);
}

.widget-d1dd25 .collage-image[data-index="4"] {
  left: 72%;
  top: 35%;
  transform: translate(-50%, -50%) rotate(-11deg);
  z-index: 6;
  animation: fadeInSlide 0.5s ease-out 0.5s both, floatAnim2 6.5s ease-in-out infinite;
}

.widget-d1dd25 .collage-image[data-index="4"]:hover {
  transform: translate(-50%, -50%) rotate(-5deg) scale(1.08);
}

.widget-d1dd25 .collage-image[data-index="5"] {
  left: 88%;
  top: 65%;
  transform: translate(-50%, -50%) rotate(9deg);
  z-index: 4;
  animation: fadeInSlide 0.5s ease-out 0.6s both, floatAnim3 7s ease-in-out infinite;
}

.widget-d1dd25 .collage-image[data-index="5"]:hover {
  transform: translate(-50%, -50%) rotate(15deg) scale(1.08);
}

.widget-d1dd25 .collage-image[data-index="6"] {
  left: 15%;
  top: 75%;
  transform: translate(-50%, -50%) rotate(-15deg);
  z-index: 7;
  animation: fadeInSlide 0.5s ease-out 0.7s both, floatAnim1 8s ease-in-out infinite;
}

.widget-d1dd25 .collage-image[data-index="6"]:hover {
  transform: translate(-50%, -50%) rotate(-9deg) scale(1.08);
}

.widget-d1dd25 .collage-image[data-index="7"] {
  left: 85%;
  top: 20%;
  transform: translate(-50%, -50%) rotate(19deg);
  z-index: 8;
  animation: fadeInSlide 0.5s ease-out 0.8s both, floatAnim2 6.8s ease-in-out infinite;
}

.widget-d1dd25 .collage-image[data-index="7"]:hover {
  transform: translate(-50%, -50%) rotate(25deg) scale(1.08);
}

@keyframes fadeInSlide {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.8) rotate(0deg);
  }
  100% {
    opacity: 1;
  }
}
/* Floating animations to simulate underwater movement */
@keyframes floatAnim1 {
  0%, 100% {
    transform: translate(-50%, -50%) translateY(0px);
  }
  50% {
    transform: translate(-50%, -50%) translateY(-15px);
  }
}
@keyframes floatAnim2 {
  0%, 100% {
    transform: translate(-50%, -50%) translateY(0px);
  }
  50% {
    transform: translate(-50%, -50%) translateY(-20px);
  }
}
@keyframes floatAnim3 {
  0%, 100% {
    transform: translate(-50%, -50%) translateY(0px);
  }
  50% {
    transform: translate(-50%, -50%) translateY(-10px);
  }
}
/* Responsive adjustments */
@media (max-width: 767px) {
  .widget-d1dd25 .collage-container {
    min-height: 400px;
    padding: 30px 20px;
  }
  .widget-d1dd25 .collage-image {
    width: 200px;
    height: 150px;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .widget-d1dd25 .collage-container {
    min-height: 500px;
    padding: 40px;
  }
  .widget-d1dd25 .collage-image {
    width: 240px;
    height: 180px;
  }
}

@charset "UTF-8";
.widget-e30d87 {
  --panel-width: 40%;
  /* ── DESKTOP SIDEBAR ── */
  /* ── BUTTONS (shared: more-details-btn, clear-filters-btn) ── */
  /* ── MAIN CONTENT ── */
  /* ── COURSE CARD ── */
  /* ── HOVER CARD DETAILS ── */
  /* ── NO RESULTS ── */
  /* ── DETAIL SIDE PANEL ── */
  /* ── FILTER DRAWER (tablet / mobile only) ── */
  /* ── RESPONSIVE: 1025–1400px ── */
  /* ── RESPONSIVE: TABLET (768–1024px) ── */
  /* ── RESPONSIVE: MOBILE (≤767px) ── */
}
.widget-e30d87 .course-directory {
  display: flex;
  gap: 32px;
  width: 100%;
  align-items: flex-start;
}
.widget-e30d87 .filter-sidebar {
  width: 300px;
  flex-shrink: 0;
  background: #fff;
  border: 3px solid #000;
  padding: 32px 28px;
  height: fit-content;
  position: sticky;
  top: 20px;
}
.widget-e30d87 .filter-title {
  margin: 0 0 32px 0;
  font-size: 18px;
  font-weight: 700;
  color: #000;
  text-transform: uppercase;
  letter-spacing: 2px;
  padding-bottom: 16px;
  border-bottom: 3px solid #000;
}
.widget-e30d87 .filter-section {
  margin-bottom: 32px;
  padding-bottom: 28px;
  border-bottom: 1px solid #e0e0e0;
}
.widget-e30d87 .filter-section:last-of-type {
  border-bottom: none;
}
.widget-e30d87 .filter-label {
  display: block;
  font-weight: 700;
  margin-bottom: 16px;
  font-size: 12px;
  color: #000;
  text-transform: uppercase;
  letter-spacing: 1.5px;
}
.widget-e30d87 .filter-options {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.widget-e30d87 .filter-checkbox,
.widget-e30d87 .filter-radio {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  font-size: 14px;
  color: #333;
  padding: 4px 0;
  transition: all 0.2s ease;
}
.widget-e30d87 .filter-checkbox:hover,
.widget-e30d87 .filter-radio:hover {
  color: #000;
  padding-left: 4px;
}
.widget-e30d87 .filter-input[type=checkbox],
.widget-e30d87 .filter-input[type=radio] {
  cursor: pointer;
  width: 18px;
  height: 18px;
  accent-color: #000;
}
.widget-e30d87 .clear-filters-btn,
.widget-e30d87 .more-details-btn {
  background: #000;
  color: #fff;
  border: 3px solid #000;
  border-radius: 0;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 11px;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}
.widget-e30d87 .clear-filters-btn:hover,
.widget-e30d87 .more-details-btn:hover {
  background: #fff;
  color: #000;
}
.widget-e30d87 .clear-filters-btn {
  width: 100%;
  padding: 14px 24px;
  margin-top: 8px;
}
.widget-e30d87 .more-details-btn {
  margin-top: 16px;
  padding: 12px 24px;
  align-self: flex-start;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.4s ease, transform 0.4s ease;
}
.widget-e30d87 .course-card:hover .more-details-btn {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.4s ease 0.4s, transform 0.4s ease 0.4s;
}
.widget-e30d87 .course-main {
  flex: 1;
  min-width: 0;
}
.widget-e30d87 .course-header {
  margin-bottom: 32px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 20px;
  border-bottom: 3px solid #000;
}
.widget-e30d87 .course-header-left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}
.widget-e30d87 .course-header-right {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
}
.widget-e30d87 .filters-toggle-btn {
  display: none; /* shown only on tablet/mobile via media query */
  align-items: center;
  gap: 8px;
  padding: 10px 18px;
  background: #000;
  color: #fff;
  border: 2px solid #000;
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  transition: background 0.2s ease, color 0.2s ease;
  white-space: nowrap;
}
.widget-e30d87 .filters-toggle-btn:hover {
  background: #fff;
  color: #000;
}
.widget-e30d87 .course-heading {
  margin: 0;
  font-size: 24px;
  font-weight: 700;
  color: #000;
  text-transform: uppercase;
  letter-spacing: 2.5px;
  font-family: serif;
}
.widget-e30d87 .results-count {
  margin: 0;
  font-size: 14px;
  color: #666;
  font-weight: 400;
  letter-spacing: 0.5px;
  white-space: nowrap;
}
.widget-e30d87 .courses-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}
.widget-e30d87 .course-card {
  background: #fff;
  border: 3px solid #000;
  overflow: hidden;
  cursor: pointer;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  display: flex;
  flex-direction: column;
  height: 520px;
}
.widget-e30d87 .course-card:hover {
  box-shadow: 8px 8px 0 rgba(0, 0, 0, 0.8);
}
.widget-e30d87 .course-image-wrapper {
  position: relative;
  width: 100%;
  height: 280px;
  overflow: hidden;
  flex-shrink: 0;
}
.widget-e30d87 .course-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.widget-e30d87 .course-card:hover .course-image {
  transform: scale(1.05);
}
.widget-e30d87 .course-badge {
  position: absolute;
  top: 20px;
  left: 20px;
  background: #000;
  color: #fff;
  padding: 8px 16px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  z-index: 2;
  border: 2px solid #000;
}
.widget-e30d87 .course-card:hover .course-badge {
  display: none;
}
.widget-e30d87 .course-card-content {
  background: inherit;
  padding: 28px 24px 32px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
}
.widget-e30d87 .course-card:hover .course-card-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  padding: 24px;
  overflow-y: auto;
}
.widget-e30d87 .course-title {
  margin: 0 0 12px 0;
  font-size: 20px;
  font-weight: 600;
  color: #000;
  line-height: 1.3;
  font-family: "Georgia", serif;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  letter-spacing: 0.3px;
  word-break: keep-all;
  overflow-wrap: break-word;
  hyphens: none;
}
.widget-e30d87 .course-card:hover .course-title {
  font-size: 24px;
  margin-bottom: 12px;
  font-weight: 700;
}
.widget-e30d87 .course-price {
  margin: 0 0 14px 0;
  font-size: 16px;
  font-weight: 700;
  color: #000;
  letter-spacing: 0.5px;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.widget-e30d87 .course-card:hover .course-price {
  font-size: 20px;
  margin-bottom: 16px;
}
.widget-e30d87 .course-short-desc {
  margin: 0;
  font-size: 14px;
  color: #555;
  line-height: 1.7;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.widget-e30d87 .course-extra-details {
  margin-top: 16px;
  padding-top: 16px;
  border-top-width: 2px;
  border-top-style: solid;
  border-top-color: #e0e0e0;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1) 0.1s, transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  transform: translateY(-10px);
}
.widget-e30d87 .course-card:hover .course-extra-details {
  max-height: 300px;
  opacity: 1;
  transform: translateY(0);
}
.widget-e30d87 .course-detail-item {
  margin: 8px 0;
  line-height: 1.5;
  opacity: 0;
  transform: translateY(5px);
  transition: opacity 0.4s ease 0.2s, transform 0.4s ease 0.2s;
  display: flex;
  align-items: baseline;
}
.widget-e30d87 .course-card:hover .course-detail-item {
  opacity: 1;
  transform: translateY(0);
}
.widget-e30d87 .course-card:hover .course-detail-item:nth-child(1) {
  transition-delay: 0.25s;
}
.widget-e30d87 .course-card:hover .course-detail-item:nth-child(2) {
  transition-delay: 0.3s;
}
.widget-e30d87 .course-card:hover .course-detail-item:nth-child(3) {
  transition-delay: 0.35s;
}
.widget-e30d87 .course-detail-item strong {
  display: inline-block;
  flex-shrink: 0;
  width: max-content;
  white-space: nowrap;
  padding-right: 12px;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  font-size: 11px;
  font-weight: 700;
}
.widget-e30d87 .course-detail-item span {
  font-size: 13px;
  flex: 1;
  min-width: 0;
}
.widget-e30d87 .no-results {
  text-align: center;
  padding: 80px 20px;
  font-size: 18px;
  color: #666;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.widget-e30d87 .detail-panel-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.75);
  z-index: 9999;
  display: flex;
  justify-content: flex-end;
  animation: fadeIn 0.3s ease;
  backdrop-filter: blur(2px);
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.widget-e30d87 .detail-panel {
  width: var(--panel-width);
  background: #fff;
  height: 100vh;
  overflow-y: auto;
  animation: slideIn 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  border-left: 4px solid #000;
}
@keyframes slideIn {
  from {
    transform: translateX(100%);
  }
  to {
    transform: translateX(0);
  }
}
.widget-e30d87 .close-panel-btn {
  position: absolute;
  top: 32px;
  right: 32px;
  width: 48px;
  height: 48px;
  background: #000;
  color: #fff;
  border: 3px solid #000;
  font-size: 28px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  z-index: 10;
  font-weight: 300;
  line-height: 1;
}
.widget-e30d87 .close-panel-btn:hover {
  background: #fff;
  color: #000;
  transform: rotate(90deg);
}
.widget-e30d87 .detail-panel-content {
  padding: 56px 48px 48px;
}
.widget-e30d87 .panel-title {
  margin: 0 0 32px 0;
  font-size: 36px;
  font-weight: 700;
  color: #000;
  padding-right: 80px;
  line-height: 1.2;
  font-family: "Georgia", serif;
  letter-spacing: 0.5px;
}
.widget-e30d87 .panel-body {
  color: #333;
  line-height: 1.8;
}
.widget-e30d87 .accordion-section {
  border-bottom: 2px solid #e0e0e0;
}
.widget-e30d87 .accordion-section:last-of-type {
  border-bottom: none;
}
.widget-e30d87 .accordion-header {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px 0;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 14px;
  font-weight: 700;
  color: #000;
  text-transform: uppercase;
  letter-spacing: 2px;
  text-align: left;
  transition: color 0.3s ease;
}
.widget-e30d87 .accordion-header:hover {
  color: #666;
}
.widget-e30d87 .accordion-header.active {
  color: #000;
}
.widget-e30d87 .accordion-icon {
  font-size: 24px;
  font-weight: 300;
  line-height: 1;
  transition: transform 0.3s ease;
}
.widget-e30d87 .accordion-content {
  display: none;
  padding: 0 0 24px 0;
  animation: slideDown 0.3s ease-out;
}
@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.widget-e30d87 .panel-section h3 {
  margin: 0 0 16px 0;
  font-size: 14px;
  font-weight: 700;
  color: #000;
  text-transform: uppercase;
  letter-spacing: 2px;
}
.widget-e30d87 .panel-section ul {
  margin: 0;
  padding-left: 24px;
}
.widget-e30d87 .panel-section li {
  margin-bottom: 12px;
  line-height: 1.7;
  color: #333;
}
.widget-e30d87 .panel-section p {
  margin: 0 0 12px 0;
  line-height: 1.8;
}
.widget-e30d87 .panel-meta {
  background: #f8f9fa;
  padding: 32px;
  border: 3px solid #000;
  margin-top: 32px;
}
.widget-e30d87 .panel-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  margin-bottom: 24px;
}
.widget-e30d87 .panel-meta-item {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.widget-e30d87 .panel-meta-item strong {
  font-weight: 700;
  color: #000;
  text-transform: uppercase;
  font-size: 11px;
  letter-spacing: 1.5px;
}
.widget-e30d87 .panel-meta-item span {
  font-size: 16px;
  color: #333;
  font-weight: 400;
}
.widget-e30d87 .rating-wrapper {
  display: flex;
  align-items: center;
  gap: 6px;
}
.widget-e30d87 .rating-star {
  color: #FFB800;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}
.widget-e30d87 .panel-price-large {
  font-size: 36px;
  font-weight: 700;
  color: #000;
  margin: 0;
  padding-top: 24px;
  border-top: 2px solid #e0e0e0;
  letter-spacing: 0.5px;
}
.widget-e30d87 .panel-testimonials {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.widget-e30d87 .testimonial-item {
  background: #f8f9fa;
  padding: 20px;
  border-left: 4px solid #000;
}
.widget-e30d87 .testimonial-quote {
  margin: 0 0 12px 0;
  font-size: 15px;
  line-height: 1.7;
  color: #333;
  font-style: italic;
}
.widget-e30d87 .testimonial-author {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}
.widget-e30d87 .testimonial-name {
  font-weight: 700;
  font-size: 13px;
  color: #000;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin: 0;
}
.widget-e30d87 .testimonial-rating {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #FFB800;
  font-size: 14px;
}
.widget-e30d87 .filter-drawer-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.55);
  z-index: 8888;
  backdrop-filter: blur(2px);
  animation: fadeIn 0.25s ease;
}
.widget-e30d87 .filter-drawer {
  position: absolute;
  top: 0;
  left: 0;
  width: 300px;
  max-width: 85vw;
  height: 100%;
  background: #fff;
  border-right: 3px solid #000;
  overflow-y: auto;
  padding: 0 0 32px 0;
  animation: drawerSlideIn 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
@keyframes drawerSlideIn {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
.widget-e30d87 .filter-drawer-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24px 24px 20px;
  position: sticky;
  top: 0;
  background: #fff;
  z-index: 2;
}
.widget-e30d87 .filter-drawer-header::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 24px;
  right: 24px;
  height: 3px;
  background: #000;
}
.widget-e30d87 .filter-drawer-title {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  color: #000;
  text-transform: uppercase;
  letter-spacing: 2px;
}
.widget-e30d87 .filter-drawer-close {
  width: 48px;
  height: 48px;
  background: #000;
  color: #fff;
  border: 3px solid #000;
  font-size: 28px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  font-weight: 300;
  line-height: 1;
  flex-shrink: 0;
}
.widget-e30d87 .filter-drawer-close:hover {
  background: #fff;
  color: #000;
  transform: rotate(90deg);
}
.widget-e30d87 .filter-drawer .filter-section {
  padding: 20px 24px 20px;
  margin-bottom: 0;
  border-bottom: none;
  position: relative;
}
.widget-e30d87 .filter-drawer .filter-section::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 24px;
  right: 24px;
  height: 1px;
  background: #e0e0e0;
}
.widget-e30d87 .filter-drawer .filter-section:last-of-type::after {
  display: none;
}
.widget-e30d87 .filter-drawer .clear-filters-btn {
  margin: 24px 24px 0;
  width: calc(100% - 48px);
}
@media (min-width: 1025px) and (max-width: 1400px) {
  .widget-e30d87 .courses-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
  }
  .widget-e30d87 .filter-sidebar {
    width: 260px;
  }
  .widget-e30d87 .course-heading {
    font-size: 20px;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .widget-e30d87 .filter-sidebar {
    display: none;
  }
  .widget-e30d87 .course-directory {
    gap: 0;
  }
  .widget-e30d87 .course-main {
    width: 100%;
  }
  .widget-e30d87 .filters-toggle-btn {
    display: flex;
  }
  .widget-e30d87 .course-header {
    align-items: flex-start;
  }
  .widget-e30d87 .course-heading {
    font-size: 32px;
    letter-spacing: 2px;
  }
  .widget-e30d87 .courses-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
  .widget-e30d87 .course-card {
    height: 480px;
  }
  .widget-e30d87 .course-image-wrapper {
    height: 240px;
  }
  .widget-e30d87 .detail-panel {
    width: 55%;
  }
  .widget-e30d87 .detail-panel-content {
    padding: 48px 36px;
  }
  .widget-e30d87 .panel-title {
    font-size: 28px;
  }
  .widget-e30d87 .accordion-header {
    padding: 20px 0;
    font-size: 13px;
  }
  .widget-e30d87 .panel-meta-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .widget-e30d87 .panel-price-large {
    font-size: 32px;
  }
}
@media (max-width: 767px) {
  .widget-e30d87 .filter-sidebar {
    display: none;
  }
  .widget-e30d87 .course-directory {
    flex-direction: column;
    gap: 0;
  }
  .widget-e30d87 .course-main {
    width: 100%;
  }
  .widget-e30d87 .filters-toggle-btn {
    display: flex;
  }
  .widget-e30d87 .course-header-left {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }
  .widget-e30d87 .course-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    padding-bottom: 16px;
    border-bottom-width: 2px;
  }
  .widget-e30d87 .course-header-right {
    width: auto;
    justify-content: flex-start;
  }
  .widget-e30d87 .course-heading {
    font-size: 18px;
    letter-spacing: 1.5px;
  }
  .widget-e30d87 .courses-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .widget-e30d87 .course-card {
    height: auto;
    min-height: 420px;
  }
  .widget-e30d87 .course-image-wrapper {
    height: 220px;
  }
  .widget-e30d87 .course-card:hover .course-title {
    font-size: 22px;
  }
  .widget-e30d87 .course-card:hover .course-price {
    font-size: 18px;
  }
  .widget-e30d87 .detail-panel {
    width: 100%;
  }
  .widget-e30d87 .detail-panel-content {
    padding: 40px 24px;
  }
  .widget-e30d87 .panel-title {
    font-size: 24px;
    padding-right: 60px;
  }
  .widget-e30d87 .close-panel-btn {
    width: 44px;
    height: 44px;
    top: 24px;
    right: 24px;
    font-size: 24px;
  }
  .widget-e30d87 .panel-meta {
    padding: 24px;
  }
  .widget-e30d87 .panel-meta-grid {
    grid-template-columns: 1fr;
    gap: 12px;
    margin-bottom: 20px;
  }
  .widget-e30d87 .panel-price-large {
    font-size: 28px;
    padding-top: 20px;
  }
  .widget-e30d87 .accordion-header {
    padding: 18px 0;
    font-size: 12px;
    letter-spacing: 1.5px;
  }
  .widget-e30d87 .accordion-icon {
    font-size: 20px;
  }
  .widget-e30d87 .course-card:hover {
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.8);
  }
}

.widget-00d987 .pixel-container {
  position: relative;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  overflow: hidden;
  background: #000000;
  border-radius: 8px;
}
.widget-00d987 .pixel-canvas {
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  z-index: 2;
}
.widget-00d987 .pixel-image {
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  z-index: 1;
}
@media (max-width: 767px) {
  .widget-00d987 .pixel-container {
    max-width: 100%;
  }
}

section:has(.hp-testimonial) {
  transition: all ease 0.6s;
  background-color: #161111;
  background-size: cover;
  background-position: center;
  overflow: hidden;
  position: relative;
}
@media (max-width: 640px) {
  section:has(.hp-testimonial) {
    background-size: cover;
  }
}

section:has(.hp-testimonial)::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: inherit;
  background-size: cover;
  background-position: center;
  filter: blur(120px) brightness(0.4);
  transform: scale(1.1);
  z-index: 0;
  opacity: 0.8;
}

section:has(.hp-testimonial.white) {
  background-color: #fff;
}

section:has(.hp-testimonial.white)::before {
  opacity: 0.4;
}

section:has(.hp-testimonial) > div {
  position: relative;
  z-index: 1;
}

.hp-testimonial {
  max-width: 1200px;
  width: 100%;
  position: relative;
  z-index: 2;
}
@media (max-width: 640px) {
  .hp-testimonial .bdy .owl-stage {
    display: flex;
  }
}
@media (max-width: 640px) {
  .hp-testimonial .bdy .owl-stage .owl-item {
    display: flex;
  }
}
.hp-testimonial .bdy .item {
  width: 100%;
  background: #F9F7F5;
  border-radius: 18px;
  padding: 25px;
  float: left;
  display: flex;
}
@media (max-width: 640px) {
  .hp-testimonial .bdy .item {
    margin-left: 5px;
    padding: 24px 18px 18px 18px;
  }
}
.hp-testimonial .bdy .item .visual-side {
  display: block;
  float: left;
  min-width: 350px;
  max-width: 350px;
  margin-right: 37px;
}
@media (max-width: 640px) {
  .hp-testimonial .bdy .item .visual-side {
    display: none;
  }
}
.hp-testimonial .bdy .item .visual-side img {
  border-radius: 18px;
}
.hp-testimonial .bdy .item .text-side {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  float: left;
  font-family: "CalSans-SemiBold";
}
.hp-testimonial .bdy .item .text-side .logo {
  display: block;
  float: left;
  width: 100%;
  margin-bottom: 44px;
}
.hp-testimonial .bdy .item .text-side .quote-icon {
  height: 0;
  width: 0;
  transform: translate(-20px, -7px);
}
@media (max-width: 640px) {
  .hp-testimonial .bdy .item .text-side .quote-icon {
    transform: translate(0px, -17px);
  }
}
.hp-testimonial .bdy .item .text-side .txt {
  display: block;
  float: left;
  width: 100%;
  color: #161111;
  font-size: 36px;
  margin-bottom: auto;
}
@media (max-width: 1000px) {
  .hp-testimonial .bdy .item .text-side .txt {
    font-size: 30px;
  }
}
@media (max-width: 640px) {
  .hp-testimonial .bdy .item .text-side .txt {
    font-size: 21px;
    line-height: 120%;
    margin-bottom: 44px;
  }
}
@media (max-width: 640px) {
  .hp-testimonial .bdy .item .text-side .bottom {
    display: flex;
  }
}
.hp-testimonial .bdy .item .text-side .small-visual {
  display: none;
  float: left;
  max-width: 80px;
  margin-right: 18px;
}
@media (max-width: 640px) {
  .hp-testimonial .bdy .item .text-side .small-visual {
    display: block;
  }
}
.hp-testimonial .bdy .item .text-side .small-visual img {
  border-radius: 18px;
}
.hp-testimonial .bdy .item .text-side .speaker {
  display: block;
  float: left;
  width: 100%;
  border-top: 1px solid rgba(22, 17, 17, 0.2);
  padding: 24px 0px 10px 0px;
  font-size: 18px;
  margin-top: 10px;
}
@media (max-width: 640px) {
  .hp-testimonial .bdy .item .text-side .speaker {
    border-top: 0px;
    padding: 0;
    font-size: 16px;
    margin-top: 0;
    display: flex;
    align-items: flex-end;
    font-family: "DudaSans-Medium";
    line-height: 120%;
    letter-spacing: -0.16px;
  }
}
.hp-testimonial .bdy .item .text-side .speaker .name {
  color: #161111;
  float: left;
}
@media (max-width: 640px) {
  .hp-testimonial .bdy .item .text-side .speaker .dash {
    display: none;
  }
}
.hp-testimonial .bdy .item .text-side .speaker .position {
  color: #5D6068;
}
@media (max-width: 640px) {
  .hp-testimonial .bdy .item .text-side .speaker .position {
    width: 100%;
    display: block;
    margin-top: 6px;
  }
}
.hp-testimonial .owl-stage-outer {
  margin-bottom: 60px;
  overflow: unset !important;
}
@media (max-width: 640px) {
  .hp-testimonial .owl-stage-outer {
    margin-bottom: 48px;
  }
}
.hp-testimonial .owl-stage-outer .owl-item {
  opacity: 0;
  transition: all ease 0.25s;
}
.hp-testimonial .owl-stage-outer .owl-item.active {
  opacity: 1;
}
.hp-testimonial .owl-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 210px;
  height: 50px;
  flex-shrink: 0;
  border-radius: 50px;
  background: rgba(255, 255, 255, 0.12);
  margin: auto;
}
.hp-testimonial .owl-dots button.owl-dot {
  background: rgba(226, 216, 213, 0.2);
  width: 6px;
  height: 6px;
  border-radius: 30px;
  margin: 0 5px;
  transition: 0.3s all ease;
  position: relative;
  overflow: hidden;
}
.hp-testimonial .owl-dots button.owl-dot.active {
  width: 64px;
}
.hp-testimonial .owl-dots button.owl-dot.active span {
  animation: spanWidth 9s 1 linear;
  width: 100%;
}
.hp-testimonial .owl-dots button.owl-dot span {
  position: absolute;
  border-radius: 30px;
  height: 100%;
  width: 0%;
  background: #E3D9D6;
  left: 0;
  top: 0;
}
@keyframes spanWidth {
  from {
    width: 0%;
  }
  to {
    width: 100%;
  }
}
.hp-testimonial .owl-nav {
  width: 330px;
  margin: 0 auto -50px;
  display: flex;
  justify-content: space-between;
}
.hp-testimonial .owl-nav button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50px;
  background: rgba(255, 255, 255, 0.12) !important;
  transition: all ease 0.1s;
}
.hp-testimonial .owl-nav button svg {
  transition: all ease 0.1s;
}
.hp-testimonial .owl-nav button:hover {
  background-color: #000 !important;
  background-color: rgba(255, 255, 255, 0.4) !important;
}
.hp-testimonial .owl-nav button:hover.owl-prev svg {
  transform: rotate(180deg);
}
.hp-testimonial .owl-nav button.owl-prev svg {
  transform: rotate(180deg);
}
.hp-testimonial.white .owl-dots {
  background: rgb(255, 255, 255);
}
.hp-testimonial.white .owl-dots button.owl-dot {
  background: rgba(93, 96, 104, 0.2);
}
.hp-testimonial.white .owl-dots button.owl-dot span {
  background: rgb(93, 96, 104);
}
.hp-testimonial.white .owl-nav button {
  background: rgb(255, 255, 255) !important;
}
.hp-testimonial.white .owl-nav button:hover {
  background-color: #000 !important;
  background-color: rgb(255, 255, 255) !important;
}
.hp-testimonial.white .owl-nav button path {
  stroke: rgb(93, 96, 104);
}

@charset "UTF-8";
/* =====================================================
   DESTINATIONS DIRECTORY WIDGET
   ===================================================== */
/* --- CSS Variables --- */
.dest-widget {
  --dest-accent: #F7E88B;
  --dest-accent-hover: #f0da6a;
  --dest-grid-gap: 20px;
  --dest-image-height: 365px;
  --dest-image-radius: 20px;
  --dest-info-radius: 20px;
  --dest-arrow-size: 46px;
  --dest-hover-zoom: 1.04;
  --dest-card-bg: #0D2D42;
  --dest-card-info-bg: #EEF3F8;
  --dest-pill-text: #F7E88B;
  --dest-arrow-icon-color: #051B28;
  --dest-card-padding: 10px;
}

/* --- Widget Base --- */
.dest-widget {
  font-family: "Instrument Sans", sans-serif;
  background: #051B28;
  padding: 56px 40px 64px;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  min-height: 200px;
}

/* --- Heading --- */
.dest-heading,
.dest-widget h2.dest-heading {
  font-family: "Instrument Sans", sans-serif !important;
  font-size: 60px !important;
  font-weight: 700 !important;
  color: #CFD9E5 !important;
  margin: 0 0 44px 0 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.02em !important;
  text-align: center !important;
}

/* --- Toolbar --- */
.dest-toolbar {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0;
  margin-bottom: 40px;
}

/* Search */
.dest-search-wrap {
  position: relative;
  flex-shrink: 0;
  width: 300px;
  height: 38px;
  margin-right: 32px;
}

.dest-search {
  width: 100%;
  height: 38px;
  background: rgba(13, 34, 52, 0.7);
  border: 1px solid rgba(168, 200, 216, 0.18);
  border-radius: 50px;
  padding: 0 44px 0 20px;
  font-family: "Instrument Sans", sans-serif;
  font-size: 13px;
  color: #A8C8D8;
  outline: none;
  box-sizing: border-box;
  transition: border-color 0.3s ease, background 0.3s ease;
}

.dest-search::placeholder {
  color: transparent;
}

.dest-search:focus {
  border-color: rgba(168, 200, 216, 0.36);
  background: rgba(13, 34, 52, 0.9);
}

.dest-search:focus::placeholder {
  color: rgba(168, 200, 216, 0.35);
}

.dest-search-icon {
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  color: rgba(168, 200, 216, 0.55);
  display: flex;
  align-items: center;
  pointer-events: none;
  transition: color 0.3s ease;
}

.dest-search-wrap:focus-within .dest-search-icon {
  color: rgba(168, 200, 216, 0.85);
}

/* Pills */
.dest-pills-wrap {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 10px;
  overflow-x: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
  min-width: 0;
}

.dest-pills-wrap::-webkit-scrollbar {
  display: none;
}

.dest-pill {
  flex-shrink: 0;
  height: 38px;
  padding: 0 24px;
  border-radius: 50px;
  border: 1px solid transparent;
  background: #0D2233;
  color: #8FB8CC;
  font-family: "Instrument Sans", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.dest-pill:not(.active):hover {
  background: #132f45;
  color: #B8D8EC;
  border-color: rgba(168, 200, 216, 0.12);
}

.dest-pill.active {
  background: #F7E88B;
  color: #051B28;
  border-color: transparent;
}

.dest-pill:focus-visible {
  outline: 2px solid var(--dest-accent, #F7E88B);
  outline-offset: 2px;
}

/* Filter Button */
.dest-filter-btn {
  flex-shrink: 0;
  height: 38px;
  padding: 0 24px;
  border-radius: 50px;
  border: 1px solid transparent;
  background: #0D2233;
  color: #8FB8CC;
  font-family: "Instrument Sans", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: 32px;
  transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
  white-space: nowrap;
}

.dest-filter-btn:hover {
  background: #132f45;
  color: #B8D8EC;
  border-color: rgba(168, 200, 216, 0.12);
}

.dest-filter-btn:focus-visible {
  outline: 2px solid var(--dest-accent, #F7E88B);
  outline-offset: 2px;
}

/* --- Grid --- */
.dest-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--dest-grid-gap, 20px);
}

/* --- Card --- */
.dest-card-item {
  /* list item wrapper */
}

/* Card link: flex column, no outer frame, no background, no padding */
.dest-card-link {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  background: transparent;
  border-radius: 0;
  padding: 0;
  gap: 0;
  box-sizing: border-box;
  transition: transform 0.32s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.32s ease;
  cursor: pointer;
}

.dest-card-link:hover {
  transform: translateY(-4px);
  box-shadow: none;
}

.dest-card-link:focus-visible {
  outline: 2px solid var(--dest-accent, #F7E88B);
  outline-offset: 3px;
}

/* Image wrapper — independent block, own radius on all 4 corners */
.dest-card-img-wrap {
  position: relative;
  height: var(--dest-image-height, 365px);
  overflow: hidden;
  border-radius: var(--dest-image-radius, 20px);
  flex-shrink: 0;
}

.dest-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.65s cubic-bezier(0.25, 0.46, 0.45, 0.94), filter 0.65s ease;
}

.dest-card-link:hover .dest-card-img {
  transform: scale(var(--dest-hover-zoom, 1.04));
  filter: brightness(1.06);
}

/* Gradient overlay */
.dest-card-img-gradient {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.55) 0%, transparent 55%);
  pointer-events: none;
}

/* Hover brightening overlay */
.dest-card-img-hover {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0);
  pointer-events: none;
  transition: background 0.35s ease;
}

.dest-card-link:hover .dest-card-img-hover {
  background: rgba(255, 255, 255, 0.03);
}

/* Rating badge — inside image, unaffected */
.dest-rating-badge {
  position: absolute;
  bottom: 14px;
  right: 14px;
  display: flex;
  align-items: center;
  gap: 5px;
  color: #ffffff;
  font-family: "Instrument Sans", sans-serif;
  font-size: 13px;
  font-weight: 600;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.8);
  z-index: 2;
}

.dest-rating-star {
  display: flex;
  align-items: center;
  color: #F7E88B;
  filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.5));
}

/* Info panel — independent block, own radius on all 4 corners, sits directly below image */
.dest-card-info {
  background: var(--dest-card-info-bg, #EEF3F8);
  border-radius: var(--dest-info-radius, 20px);
  margin-top: 0;
  padding: 20px 20px 18px;
  transition: background 0.25s ease;
  position: static;
  z-index: auto;
}

.dest-card-link:hover .dest-card-info {
  background: #e6edf5;
}

/* Info top row */
.dest-card-info-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.dest-card-info-left {
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
  flex: 1;
}

/* Region label — mixed case, medium weight, dark navy */
.dest-card-region {
  font-family: "Instrument Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  color: #051B28;
  text-transform: none;
  letter-spacing: 0;
  line-height: 1.3;
  opacity: 1;
}

/* Destination title — 22px, bold, dark navy */
.dest-card-title {
  font-family: "Instrument Sans", sans-serif;
  font-size: 22px;
  font-weight: 700;
  color: #051B28;
  line-height: 1.05;
  margin: 0;
  white-space: normal;
  word-break: break-word;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Arrow button */
.dest-card-arrow {
  flex-shrink: 0;
  align-self: center;
  width: var(--dest-arrow-size, 46px);
  height: var(--dest-arrow-size, 46px);
  border-radius: 50%;
  background: var(--dest-accent, #F7E88B);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.35s cubic-bezier(0.4, 0, 0.2, 1), transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
}

.dest-card-arrow svg {
  color: var(--dest-arrow-icon-color, #051B28);
  flex-shrink: 0;
}

.dest-card-link:hover .dest-card-arrow {
  background: var(--dest-accent-hover, #f0da6a);
  transform: scale(1.07);
}

.dest-card-arrow svg {
  transition: transform 0.25s ease;
}

.dest-card-link:hover .dest-card-arrow svg {
  transform: rotate(45deg);
}

/* Tags row */
.dest-card-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding-top: 2px;
}

.dest-tag {
  font-family: "Instrument Sans", sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #3a5a6e;
  background: transparent;
  border: 1px solid rgba(13, 37, 53, 0.18);
  border-radius: 50px;
  padding: 4px 11px;
  line-height: 1.3;
  white-space: nowrap;
}

/* --- No Results --- */
.dest-no-results {
  text-align: center;
  color: rgba(255, 255, 255, 0.5);
  font-family: "Instrument Sans", sans-serif;
  font-size: 15px;
  padding: 60px 0;
}

/* --- Backdrop --- */
.dest-backdrop {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(5, 15, 25, 0.7);
  backdrop-filter: blur(2px);
  z-index: 1000;
}

.dest-backdrop.active {
  display: block;
}

/* --- Drawer --- */
.dest-drawer {
  position: fixed;
  top: 0;
  right: 0;
  width: 540px;
  height: 100vh;
  background: #EEF3F9;
  z-index: 1001;
  display: flex;
  flex-direction: column;
  transform: translateX(100%);
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: -8px 0 40px rgba(0, 0, 0, 0.25);
}

.dest-drawer.open {
  transform: translateX(0);
}

.dest-drawer-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 28px 32px 22px;
  border-bottom: 1px solid rgba(13, 37, 53, 0.12);
  flex-shrink: 0;
}

.dest-drawer-title {
  font-family: "Instrument Sans", sans-serif;
  font-size: 22px;
  font-weight: 700;
  color: #051B28;
  letter-spacing: -0.01em;
}

.dest-drawer-close-x {
  width: 28px;
  height: 28px;
  border-radius: 0;
  border: none;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #051B28;
  opacity: 0.5;
  transition: opacity 0.2s;
  flex-shrink: 0;
  padding: 0;
}

.dest-drawer-close-x:hover {
  opacity: 1;
  background: transparent;
}

.dest-drawer-body {
  flex: 1;
  overflow-y: auto;
  padding: 0;
}

.dest-drawer-section {
  padding: 20px 32px 18px;
}

.dest-drawer-section-title {
  font-family: "Instrument Sans", sans-serif;
  font-size: 10px;
  font-weight: 700;
  color: #7a9aaa;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 12px;
}

.dest-drawer-checkboxes {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px 12px;
}

.dest-drawer-label {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  font-family: "Instrument Sans", sans-serif;
  font-size: 13px;
  font-weight: 500;
  color: #1e3a4a;
  user-select: none;
  padding: 4px 0;
}

.dest-drawer-label input[type=checkbox] {
  width: 15px;
  height: 15px;
  border-radius: 4px;
  accent-color: #051B28;
  cursor: pointer;
  flex-shrink: 0;
}

.dest-drawer-divider {
  height: 1px;
  background: rgba(13, 37, 53, 0.1);
  margin: 0 32px;
}

.dest-drawer-footer {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 16px 32px 20px;
  border-top: 1px solid rgba(13, 37, 53, 0.1);
  flex-shrink: 0;
}

.dest-drawer-clear {
  flex: 1;
  height: 42px;
  border-radius: 50px;
  border: 1px solid rgba(13, 37, 53, 0.15);
  background: #fff;
  color: #051B28;
  font-family: "Instrument Sans", sans-serif;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s;
}

.dest-drawer-clear:hover {
  background: rgba(13, 37, 53, 0.04);
  border-color: rgba(13, 37, 53, 0.25);
}

.dest-drawer-close {
  flex: 2;
  height: 42px;
  border-radius: 50px;
  border: none;
  background: #051B28;
  color: #ffffff;
  font-family: "Instrument Sans", sans-serif;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: background 0.2s;
}

.dest-drawer-close:hover {
  background: #0a2e44;
}

.dest-result-badge {
  background: rgba(255, 255, 255, 0.15);
  color: #ffffff;
  font-size: 11px;
  font-weight: 600;
  border-radius: 50px;
  padding: 2px 8px;
  min-width: 22px;
  text-align: center;
  letter-spacing: 0.02em;
}

/* =====================================================
   RESPONSIVE
   ===================================================== */
/* Tablet */
@media (max-width: 1024px) and (min-width: 768px) {
  .dest-widget {
    padding: 40px 24px 48px;
  }
  .dest-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .dest-toolbar {
    gap: 0;
  }
  .dest-search-wrap {
    flex: 1;
    width: auto;
    margin-right: 16px;
  }
  .dest-pills-wrap {
    display: none;
  }
  .dest-filter-btn {
    flex: none;
    width: 160px;
    margin-left: 0;
    justify-content: center;
  }
  .dest-drawer {
    width: 520px;
  }
  .dest-drawer-checkboxes {
    grid-template-columns: repeat(2, 1fr);
  }
}
/* Mobile */
@media (max-width: 767px) {
  .dest-widget {
    padding: 40px 16px 40px;
  }
  .dest-heading,
  .dest-widget h2.dest-heading {
    font-size: 2rem !important;
    margin: 0 0 28px 0 !important;
  }
  .dest-toolbar {
    flex-wrap: nowrap;
    gap: 0;
    margin-bottom: 32px;
  }
  .dest-grid {
    grid-template-columns: 1fr;
  }
  .dest-search-wrap {
    width: 70%;
    margin-right: 10px;
  }
  .dest-pills-wrap {
    display: none;
  }
  .dest-filter-btn {
    margin-left: 0;
    flex: 1;
    justify-content: center;
    padding: 0 16px;
  }
  .dest-drawer {
    width: 100vw;
  }
  .dest-drawer-header {
    padding: 20px 20px 16px;
  }
  .dest-drawer-section {
    padding: 16px 20px 14px;
  }
  .dest-drawer-divider {
    margin: 0 20px;
  }
  .dest-drawer-footer {
    padding: 14px 20px 18px;
  }
  .dest-drawer-checkboxes {
    grid-template-columns: 1fr;
  }
}

.widget-e4f8e3 {
  --primary-color: #000000;
  --primary-dark: #1a1a1a;
  --accent-color: #333333;
  --border-color: #e5e5e5;
  --text-primary: #000000;
  --text-secondary: #666666;
  --bg-white: #ffffff;
  --bg-light: #f5f5f5;
  --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  line-height: 1.6;
}

.widget-e4f8e3 .calculator-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 48px;
  background: #ffffff;
  border: 2px solid #000000;
  border-radius: 24px;
  box-shadow: var(--shadow-xl);
}

.widget-e4f8e3 .calculator-heading {
  font-size: 40px;
  font-weight: 800;
  color: #000000;
  margin: 0 0 16px 0;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.widget-e4f8e3 .calculator-description {
  font-size: 18px;
  color: var(--text-secondary);
  margin-bottom: 40px;
  line-height: 1.6;
}

.widget-e4f8e3 .calculator-description p {
  margin: 0;
}

.widget-e4f8e3 .calculator-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  margin-bottom: 32px;
}

.widget-e4f8e3 .inputs-section {
  background: var(--bg-white);
  padding: 36px;
  border-radius: 16px;
  box-shadow: var(--shadow-md);
  border: 2px solid #000000;
  transition: box-shadow 0.3s ease;
}

.widget-e4f8e3 .inputs-section:hover {
  box-shadow: var(--shadow-lg);
}

.widget-e4f8e3 .input-group {
  margin-bottom: 24px;
}

.widget-e4f8e3 .input-group:last-child {
  margin-bottom: 0;
}

.widget-e4f8e3 .input-label {
  display: block;
  font-size: 15px;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 10px;
  letter-spacing: -0.01em;
}

.widget-e4f8e3 .input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}

.widget-e4f8e3 .currency-prefix {
  position: absolute;
  left: 16px;
  font-size: 16px;
  color: var(--text-secondary);
  pointer-events: none;
}

.widget-e4f8e3 .input-suffix {
  position: absolute;
  right: 16px;
  font-size: 16px;
  color: var(--text-secondary);
  pointer-events: none;
}

.widget-e4f8e3 .input-field {
  width: 100%;
  padding: 14px 16px;
  font-size: 17px;
  font-weight: 500;
  border: 2px solid #000000;
  border-radius: 12px;
  background: var(--bg-white);
  color: var(--text-primary);
  transition: all 0.2s ease;
  box-sizing: border-box;
}

.widget-e4f8e3 .input-field:focus {
  outline: none;
  border-color: #000000;
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.1);
  transform: translateY(-1px);
}

.widget-e4f8e3 .input-wrapper .input-field {
  padding-left: 40px;
}

.widget-e4f8e3 .input-wrapper:has(.input-suffix) .input-field {
  padding-right: 40px;
  padding-left: 16px;
}

.widget-e4f8e3 .slider-wrapper {
  margin-top: 8px;
}

.widget-e4f8e3 .slider-input {
  width: 100%;
  height: 8px;
  border-radius: 4px;
  background: #000000;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  position: relative;
}

.widget-e4f8e3 .slider-input::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bg-white);
  border: 3px solid #000000;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: var(--shadow-md);
}

.widget-e4f8e3 .slider-input::-webkit-slider-thumb:hover {
  transform: scale(1.15);
  box-shadow: var(--shadow-lg);
}

.widget-e4f8e3 .slider-input::-moz-range-thumb {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bg-white);
  border: 3px solid #000000;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: var(--shadow-md);
}

.widget-e4f8e3 .slider-input::-moz-range-thumb:hover {
  transform: scale(1.15);
  box-shadow: var(--shadow-lg);
}

.widget-e4f8e3 .slider-value-display {
  margin-top: 16px;
  font-size: 18px;
  font-weight: 700;
  color: #000000;
  text-align: center;
  padding: 8px 16px;
  background: #f5f5f5;
  border-radius: 8px;
  display: inline-block;
  width: 100%;
  border: 2px solid #000000;
}

.widget-e4f8e3 .results-section {
  background: #000000;
  padding: 36px;
  border-radius: 16px;
  box-shadow: var(--shadow-lg);
  border: none;
  position: relative;
  overflow: hidden;
}

.widget-e4f8e3 .results-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(circle at top right, rgba(255, 255, 255, 0.05) 0%, transparent 60%);
  pointer-events: none;
}

.widget-e4f8e3 .results-heading {
  font-size: 24px;
  font-weight: 700;
  color: #ffffff !important;
  margin: 0 0 28px 0;
  line-height: 1.2;
  position: relative;
  z-index: 1;
  letter-spacing: -0.01em;
}

.widget-e4f8e3 .result-item {
  margin-bottom: 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  position: relative;
  z-index: 1;
}

.widget-e4f8e3 .result-item:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.widget-e4f8e3 .result-label {
  font-size: 14px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.85);
  margin-bottom: 8px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.widget-e4f8e3 .result-value {
  font-size: 28px;
  font-weight: 700;
  color: #ffffff;
  letter-spacing: -0.02em;
}

.widget-e4f8e3 .primary-result {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  padding: 28px;
  border-radius: 12px;
  border: 2px solid #ffffff;
  margin-bottom: 28px;
  box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.2);
  position: relative;
  z-index: 1;
}

.widget-e4f8e3 .primary-result .result-label {
  color: rgba(255, 255, 255, 0.95);
  font-size: 15px;
  font-weight: 600;
}

.widget-e4f8e3 .primary-result .result-value {
  color: #ffffff;
  font-size: 42px;
  text-shadow: none;
}

.widget-e4f8e3 .calculator-disclaimer {
  font-size: 14px;
  color: var(--text-secondary);
  margin-top: 32px;
  padding-top: 32px;
  border-top: 1px solid var(--border-color);
  line-height: 1.6;
  text-align: center;
}

.widget-e4f8e3 .calculator-disclaimer p {
  margin: 0;
}

.widget-e4f8e3 .calculator-disclaimer small {
  font-size: 12px;
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1024px) {
  .widget-e4f8e3 .calculator-container {
    padding: 40px;
  }
  .widget-e4f8e3 .calculator-grid {
    gap: 32px;
  }
  .widget-e4f8e3 .inputs-section,
  .widget-e4f8e3 .results-section {
    padding: 32px;
  }
  .widget-e4f8e3 .calculator-heading {
    font-size: 36px;
  }
}
/* Mobile */
@media (max-width: 767px) {
  .widget-e4f8e3 .calculator-container {
    padding: 28px;
    border-radius: 16px;
  }
  .widget-e4f8e3 .calculator-heading {
    font-size: 28px;
    margin-bottom: 12px;
  }
  .widget-e4f8e3 .calculator-description {
    font-size: 16px;
    margin-bottom: 32px;
  }
  .widget-e4f8e3 .calculator-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .widget-e4f8e3 .inputs-section,
  .widget-e4f8e3 .results-section {
    padding: 24px;
  }
  .widget-e4f8e3 .results-heading {
    font-size: 22px;
    margin-bottom: 24px;
  }
  .widget-e4f8e3 .primary-result .result-value {
    font-size: 32px;
  }
  .widget-e4f8e3 .result-value {
    font-size: 24px;
  }
  .widget-e4f8e3 .input-group {
    margin-bottom: 20px;
  }
  .widget-e4f8e3 .input-field {
    font-size: 16px;
  }
}

@charset "UTF-8";
.widget-c8f1a5 {
  /* ─── Design tokens ─── */
  --fcf-bg: #f7f7f5;
  --fcf-card-bg: #ffffff;
  --fcf-card-border: rgba(0,0,0,0.07);
  --fcf-card-radius: 16px;
  --fcf-card-shadow: 0 1px 2px rgba(0,0,0,.04), 0 3px 12px rgba(0,0,0,.05);
  --fcf-card-shadow-hover: 0 4px 16px rgba(0,0,0,.07), 0 16px 40px rgba(0,0,0,.08);
  --fcf-filter-bg: rgba(255,255,255,0.88);
  --fcf-filter-border: rgba(0,0,0,0.07);
  --fcf-pill-active-bg: #111111;
  --fcf-pill-active-color: #ffffff;
  --fcf-pill-bg: #f2f2f0;
  --fcf-pill-color: #4a4a52;
  --fcf-pill-border: rgba(0,0,0,0.08);
  --fcf-meta-color: #8a8a92;
  --fcf-badge-bg: #f2f2f0;
  --fcf-badge-border: rgba(0,0,0,0.07);
  --fcf-badge-color: #6a6a72;
  --fcf-title-color: #0f0f0f;
  --fcf-desc-color: #5a5a62;
  --fcf-divider: rgba(0,0,0,0.055);
  --fcf-cta-bg: #111111;
  --fcf-cta-color: #ffffff;
  --fcf-cta-radius: 9px;
  --fcf-almost-full-color: #c96a00;
  --fcf-fully-booked-bg: #f2f2f0;
  --fcf-fully-booked-color: #aaaaaa;
  --fcf-grid-gap: 22px;
  --fcf-image-radius: 12px 12px 0 0;
  font-family: inherit;
  box-sizing: border-box;
  /* ─── Section ─── */
  /* ─── Heading typography ─── */
  /* ─── Filter Bar ─── */
  /* Vertical separator */
  /* Left icon inside select wrap */
  /* ─── Search ─── */
  /* ─── Results header ─── */
  /* ─── Day multi-select ─── */
  /* ─── Grid ─── */
  /* ─── Card ─── */
  /* Card image */
  /* Status overlay badge */
  /* Card body */
  /* Card header row */
  /* Level badge */
  /* Description */
  /* Meta row */
  /* Coach row */
  /* Divider */
  /* Card footer */
  /* Spots */
  /* CTA button */
  /* ─── Empty state ─── */
  /* ─── Card fade animation ─── */
  /* ─── Tablet ─── */
  /* ─── Mobile ─── */
}
.widget-c8f1a5 .fcf-section {
  background: var(--fcf-bg);
  padding-top: 80px;
  padding-bottom: 88px;
  width: 100%;
}
.widget-c8f1a5 .fcf-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 32px;
}
.widget-c8f1a5 .fcf-section-title {
  font-size: 2.4rem;
  font-weight: 750;
  color: var(--fcf-title-color);
  margin: 0;
  letter-spacing: -0.03em;
  line-height: 1.15;
}
.widget-c8f1a5 .fcf-section-subtitle {
  font-size: 1.02rem;
  font-weight: 400;
  color: #8a8a96;
  margin: 0;
  line-height: 1.65;
  letter-spacing: -0.005em;
}
.widget-c8f1a5 .fcf-filter-bar-wrapper {
  position: sticky;
  top: 0;
  z-index: 100;
  margin-bottom: 40px;
}
.widget-c8f1a5 .fcf-filter-bar {
  background: var(--fcf-filter-bg);
  border: 1px solid var(--fcf-filter-border);
  border-radius: 14px;
  padding: 7px 10px 7px 14px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04), 0 4px 14px rgba(0, 0, 0, 0.04);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.widget-c8f1a5 .fcf-filter-sep {
  width: 1px;
  height: 18px;
  background: rgba(0, 0, 0, 0.07);
  flex-shrink: 0;
  margin: 0 2px;
}
.widget-c8f1a5 .fcf-select-wrap {
  position: relative;
  flex: 1;
  min-width: 120px;
  display: flex;
  align-items: center;
}
.widget-c8f1a5 .fcf-select-icon {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: #b0b0b8;
  display: flex;
  align-items: center;
  z-index: 1;
  transition: color 0.2s;
}
.widget-c8f1a5 .fcf-select {
  width: 100%;
  padding: 8px 26px 8px 12px;
  border: none;
  border-radius: 0;
  background: transparent;
  color: var(--fcf-pill-color);
  font-size: 0.83rem;
  font-weight: 500;
  appearance: none;
  cursor: pointer;
  transition: color 0.18s;
  line-height: 1;
  outline: none;
  letter-spacing: -0.005em;
}
.widget-c8f1a5 .fcf-select.fcf-select-has-icon {
  padding-left: 28px;
}
.widget-c8f1a5 .fcf-select:focus {
  outline: none;
}
.widget-c8f1a5 .fcf-select-arrow {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: #c0c0c8;
  display: flex;
  align-items: center;
  transition: color 0.2s;
}
.widget-c8f1a5 .fcf-select-wrap:hover .fcf-select-icon,
.widget-c8f1a5 .fcf-select-wrap:hover .fcf-select-arrow {
  color: #888890;
}
.widget-c8f1a5 .fcf-search-wrap {
  position: relative;
  min-width: 190px;
  flex-shrink: 0;
  margin-left: 6px;
}
.widget-c8f1a5 .fcf-search-icon {
  position: absolute;
  left: 11px;
  top: 50%;
  transform: translateY(-50%);
  color: #c4c4cc;
  display: flex;
  align-items: center;
  pointer-events: none;
  transition: color 0.2s;
}
.widget-c8f1a5 .fcf-search {
  width: 100%;
  padding: 8px 12px 8px 32px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 9px;
  background: rgba(0, 0, 0, 0.025);
  color: var(--fcf-title-color);
  font-size: 0.83rem;
  font-weight: 400;
  transition: border-color 0.22s, background 0.22s, box-shadow 0.22s;
  box-sizing: border-box;
  letter-spacing: -0.005em;
}
.widget-c8f1a5 .fcf-search:focus {
  outline: none;
  border-color: rgba(0, 0, 0, 0.16);
  background: #ffffff;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.04);
}
.widget-c8f1a5 .fcf-search:focus + .fcf-search-icon,
.widget-c8f1a5 .fcf-search-wrap:focus-within .fcf-search-icon {
  color: #909098;
}
.widget-c8f1a5 .fcf-search::placeholder {
  color: #c0c0c8;
  font-weight: 400;
}
.widget-c8f1a5 .fcf-results-header {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto auto;
  column-gap: 32px;
  row-gap: 0;
  align-items: end;
  margin-bottom: 28px;
}
.widget-c8f1a5 .fcf-results-header .fcf-section-title {
  grid-column: 1;
  grid-row: 1;
  margin-bottom: 7px;
}
.widget-c8f1a5 .fcf-results-header .fcf-section-subtitle {
  grid-column: 1;
  grid-row: 2;
}
.widget-c8f1a5 .fcf-results-count {
  grid-column: 2;
  grid-row: 2;
  font-size: 0.8rem;
  font-weight: 400;
  color: #aaaab2;
  white-space: nowrap;
  letter-spacing: 0.01em;
  padding-bottom: 2px;
}
.widget-c8f1a5 .fcf-day-multi-wrap {
  position: relative;
  flex: 1;
  min-width: 120px;
  display: flex;
  align-items: center;
}
.widget-c8f1a5 .fcf-day-multi-btn {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0;
  padding: 8px 26px 8px 28px;
  border: none;
  background: transparent;
  color: var(--fcf-pill-color);
  font-size: 0.83rem;
  font-weight: 500;
  cursor: pointer;
  text-align: left;
  position: relative;
  line-height: 1;
  outline: none;
  letter-spacing: -0.005em;
  transition: color 0.18s;
}
.widget-c8f1a5 .fcf-day-multi-btn:hover {
  color: var(--fcf-title-color);
}
.widget-c8f1a5 .fcf-day-multi-btn:hover ~ .fcf-day-multi-icon,
.widget-c8f1a5 .fcf-day-multi-wrap:hover .fcf-day-multi-icon {
  color: #888890;
}
.widget-c8f1a5 .fcf-day-multi-icon {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: #b0b0b8;
  display: flex;
  align-items: center;
  transition: color 0.2s;
}
.widget-c8f1a5 .fcf-day-multi-label {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.widget-c8f1a5 .fcf-day-multi-arrow {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: #c0c0c8;
  display: flex;
  align-items: center;
  transition: transform 0.22s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s;
}
.widget-c8f1a5 .fcf-day-multi-wrap.open .fcf-day-multi-arrow {
  transform: translateY(-50%) rotate(180deg);
  color: #888890;
}
.widget-c8f1a5 .fcf-day-multi-dropdown {
  display: none;
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  min-width: 148px;
  background: rgba(255, 255, 255, 0.97);
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 12px;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08), 0 1px 4px rgba(0, 0, 0, 0.04);
  padding: 5px;
  z-index: 200;
  flex-direction: column;
  gap: 1px;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.widget-c8f1a5 .fcf-day-multi-wrap.open .fcf-day-multi-dropdown {
  display: flex;
}
.widget-c8f1a5 .fcf-day-option {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 7px;
  font-size: 0.83rem;
  font-weight: 500;
  color: var(--fcf-pill-color);
  cursor: pointer;
  transition: background 0.14s;
  user-select: none;
  background-color: transparent;
  letter-spacing: -0.005em;
}
.widget-c8f1a5 .fcf-day-option:hover {
  background: rgba(0, 0, 0, 0.04);
}
.widget-c8f1a5 .fcf-day-option.is-checked {
  background: rgba(0, 0, 0, 0.05);
  color: var(--fcf-title-color);
}
.widget-c8f1a5 .fcf-day-option input[type=checkbox] {
  display: none;
}
.widget-c8f1a5 .fcf-checkbox-visual {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  border: 1.5px solid rgba(0, 0, 0, 0.2);
  border-radius: 3px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.14s, border-color 0.14s;
  background-color: transparent;
  box-sizing: border-box;
}
.widget-c8f1a5 .fcf-day-option.is-checked .fcf-checkbox-visual {
  background-color: var(--fcf-title-color);
  border-color: var(--fcf-title-color);
}
.widget-c8f1a5 .fcf-checkbox-visual svg {
  display: none;
}
.widget-c8f1a5 .fcf-day-option.is-checked .fcf-checkbox-visual svg {
  display: block;
}
.widget-c8f1a5 .fcf-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--fcf-grid-gap);
}
.widget-c8f1a5 .fcf-card {
  background: var(--fcf-card-bg);
  border: 1px solid var(--fcf-card-border);
  border-radius: var(--fcf-card-radius);
  box-shadow: var(--fcf-card-shadow);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1), transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.3s;
  position: relative;
  animation: fcf-fade-in 0.3s ease both;
}
.widget-c8f1a5 .fcf-card:hover {
  box-shadow: var(--fcf-card-shadow-hover);
  transform: translateY(-4px);
  border-color: rgba(0, 0, 0, 0.09);
}
.widget-c8f1a5 .fcf-card.fcf-fully-booked {
  opacity: 0.65;
}
.widget-c8f1a5 .fcf-card-image-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 3/2;
  overflow: hidden;
  border-radius: var(--fcf-image-radius);
}
.widget-c8f1a5 .fcf-card-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  transform-origin: center center;
}
.widget-c8f1a5 .fcf-card:hover .fcf-card-image {
  transform: scale(1.05);
}
.widget-c8f1a5 .fcf-status-overlay {
  position: absolute;
  top: 12px;
  left: 12px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  line-height: 1;
  text-transform: uppercase;
}
.widget-c8f1a5 .fcf-status-overlay.almost-full {
  background: rgba(255, 255, 255, 0.85);
  color: var(--fcf-almost-full-color);
  border: 1px solid rgba(201, 106, 0, 0.2);
  backdrop-filter: blur(6px);
}
.widget-c8f1a5 .fcf-status-overlay.fully-booked {
  background: rgba(0, 0, 0, 0.5);
  color: #ffffff;
  border: none;
  backdrop-filter: blur(6px);
}
.widget-c8f1a5 .fcf-card-body {
  padding: 18px 20px 20px;
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 0;
}
.widget-c8f1a5 .fcf-card-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 7px;
}
.widget-c8f1a5 .fcf-class-name {
  font-size: 1.03rem;
  font-weight: 700;
  color: var(--fcf-title-color);
  margin: 0;
  line-height: 1.3;
  flex: 1;
  letter-spacing: -0.015em;
}
.widget-c8f1a5 .fcf-level-badge {
  flex-shrink: 0;
  padding: 3px 8px;
  border-radius: 999px;
  border: 1px solid var(--fcf-badge-border);
  background: var(--fcf-badge-bg);
  color: var(--fcf-badge-color);
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  white-space: nowrap;
  margin-top: 3px;
  text-transform: uppercase;
}
.widget-c8f1a5 .fcf-class-desc {
  font-size: 0.855rem;
  color: var(--fcf-desc-color);
  line-height: 1.62;
  margin: 0 0 14px 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  letter-spacing: -0.005em;
}
.widget-c8f1a5 .fcf-meta-row {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}
.widget-c8f1a5 .fcf-meta-item {
  display: flex;
  align-items: center;
  gap: 5px;
}
.widget-c8f1a5 .fcf-meta-icon {
  display: flex;
  align-items: center;
  color: var(--fcf-meta-color);
  flex-shrink: 0;
}
.widget-c8f1a5 .fcf-meta-icon svg {
  fill: none;
  stroke: currentColor;
}
.widget-c8f1a5 .fcf-meta-text {
  font-size: 0.8rem;
  color: var(--fcf-meta-color);
  font-weight: 500;
  white-space: nowrap;
  letter-spacing: -0.005em;
}
.widget-c8f1a5 .fcf-meta-item.fcf-coach-row {
  margin-left: auto;
}
.widget-c8f1a5 .fcf-coach-row {
  display: flex;
  align-items: center;
  gap: 6px;
}
.widget-c8f1a5 .fcf-coach-avatar {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  object-fit: cover;
  border: 1px solid rgba(0, 0, 0, 0.08);
  flex-shrink: 0;
  order: 2;
}
.widget-c8f1a5 .fcf-coach-initials {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.12);
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.62rem;
  font-weight: 700;
  color: var(--fcf-meta-color);
  flex-shrink: 0;
  letter-spacing: 0.02em;
  order: 2;
}
.widget-c8f1a5 .fcf-coach-name {
  font-size: 0.8rem;
  color: var(--fcf-meta-color);
  font-weight: 500;
  order: 1;
  letter-spacing: -0.005em;
}
.widget-c8f1a5 .fcf-card-divider {
  height: 1px;
  background: var(--fcf-divider);
  margin: 0 0 14px 0;
}
.widget-c8f1a5 .fcf-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
}
.widget-c8f1a5 .fcf-spots {
  display: flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
}
.widget-c8f1a5 .fcf-spots-icon {
  display: flex;
  align-items: center;
  color: var(--fcf-meta-color);
  flex-shrink: 0;
}
.widget-c8f1a5 .fcf-spots-icon svg {
  fill: none;
  stroke: currentColor;
}
.widget-c8f1a5 .fcf-spots-text {
  font-size: 0.78rem;
  color: var(--fcf-meta-color);
  font-weight: 500;
  white-space: nowrap;
  letter-spacing: -0.005em;
}
.widget-c8f1a5 .fcf-spots-text.almost-full {
  color: var(--fcf-almost-full-color);
}
.widget-c8f1a5 .fcf-spots-text.fully-booked {
  color: #aaaaaa;
}
.widget-c8f1a5 .fcf-spots-icon.almost-full {
  color: var(--fcf-almost-full-color);
}
.widget-c8f1a5 .fcf-spots-icon.fully-booked {
  color: #aaaaaa;
}
.widget-c8f1a5 .fcf-cta-btn {
  padding: 9px 17px;
  border-radius: var(--fcf-cta-radius);
  background: var(--fcf-cta-bg);
  color: var(--fcf-cta-color);
  border: none;
  font-size: 0.82rem;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.2s, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.2s;
  letter-spacing: -0.005em;
  line-height: 1;
  flex-shrink: 0;
}
.widget-c8f1a5 .fcf-cta-btn:hover:not(.disabled) {
  opacity: 0.82;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.16);
}
.widget-c8f1a5 .fcf-cta-btn.disabled {
  background: var(--fcf-fully-booked-bg);
  color: var(--fcf-fully-booked-color);
  cursor: default;
  pointer-events: none;
}
.widget-c8f1a5 .fcf-empty-state {
  text-align: center;
  padding: 72px 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
}
.widget-c8f1a5 .fcf-empty-icon {
  color: #d8d8dc;
}
.widget-c8f1a5 .fcf-empty-msg {
  font-size: 0.95rem;
  color: #aaaaaa;
  margin: 0;
  font-weight: 400;
  letter-spacing: -0.005em;
}
.widget-c8f1a5 .fcf-reset-btn {
  padding: 9px 20px;
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 9px;
  background: transparent;
  color: var(--fcf-title-color);
  font-size: 0.85rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.18s, border-color 0.18s, box-shadow 0.18s;
  letter-spacing: -0.005em;
}
.widget-c8f1a5 .fcf-reset-btn:hover {
  background: rgba(0, 0, 0, 0.03);
  border-color: rgba(0, 0, 0, 0.2);
}
@keyframes fcf-fade-in {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .widget-c8f1a5 {
    /* Heading — stacked */
    /* Filter bar */
  }
  .widget-c8f1a5 .fcf-section {
    padding-top: 64px;
    padding-bottom: 72px;
  }
  .widget-c8f1a5 .fcf-container {
    padding: 0 24px;
  }
  .widget-c8f1a5 .fcf-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
  }
  .widget-c8f1a5 .fcf-results-header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    margin-bottom: 28px;
  }
  .widget-c8f1a5 .fcf-results-header .fcf-section-title {
    margin-bottom: 6px;
  }
  .widget-c8f1a5 .fcf-results-header .fcf-section-subtitle {
    font-size: 0.98rem;
    margin-bottom: 10px;
    order: 2;
  }
  .widget-c8f1a5 .fcf-results-count {
    font-size: 0.78rem;
    font-weight: 400;
    color: #aaaab2;
    order: 3;
  }
  .widget-c8f1a5 .fcf-filter-bar-wrapper {
    margin-bottom: 32px;
  }
  .widget-c8f1a5 .fcf-filter-bar {
    flex-wrap: wrap;
    padding: 6px 10px 10px;
    gap: 0;
  }
  .widget-c8f1a5 .fcf-filter-sep {
    display: none;
  }
  .widget-c8f1a5 .fcf-day-multi-wrap {
    flex: 1 1 46%;
    min-width: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    padding: 2px 0;
  }
  .widget-c8f1a5 .fcf-select-wrap {
    flex: 1 1 46%;
    min-width: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    padding: 2px 0;
  }
  .widget-c8f1a5 .fcf-select {
    padding-top: 8px;
    padding-bottom: 8px;
  }
  .widget-c8f1a5 .fcf-day-multi-btn {
    padding-top: 8px;
    padding-bottom: 8px;
  }
  .widget-c8f1a5 .fcf-search-wrap {
    flex: 1 1 100%;
    min-width: 0;
    margin-left: 0;
    margin-top: 8px;
  }
  .widget-c8f1a5 .fcf-search {
    border-radius: 8px;
  }
}
@media (max-width: 767px) {
  .widget-c8f1a5 {
    /* Heading — stacked */
    /* Filter bar */
  }
  .widget-c8f1a5 .fcf-section {
    padding-top: 48px;
    padding-bottom: 56px;
  }
  .widget-c8f1a5 .fcf-container {
    padding: 0 18px;
  }
  .widget-c8f1a5 .fcf-section-title {
    font-size: 1.75rem;
    letter-spacing: -0.025em;
  }
  .widget-c8f1a5 .fcf-results-header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    margin-bottom: 22px;
  }
  .widget-c8f1a5 .fcf-results-header .fcf-section-title {
    margin-bottom: 5px;
  }
  .widget-c8f1a5 .fcf-results-header .fcf-section-subtitle {
    font-size: 0.92rem;
    font-weight: 400;
    margin-bottom: 8px;
    order: 2;
  }
  .widget-c8f1a5 .fcf-results-count {
    font-size: 0.76rem;
    font-weight: 400;
    color: #aaaab2;
    order: 3;
  }
  .widget-c8f1a5 .fcf-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .widget-c8f1a5 .fcf-filter-bar-wrapper {
    margin-bottom: 28px;
  }
  .widget-c8f1a5 .fcf-filter-bar {
    padding: 6px 8px 10px;
    flex-wrap: wrap;
    border-radius: 12px;
  }
  .widget-c8f1a5 .fcf-filter-sep {
    display: none;
  }
  .widget-c8f1a5 .fcf-day-multi-wrap {
    flex: 1 1 44%;
    min-width: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    padding: 1px 0;
  }
  .widget-c8f1a5 .fcf-select-wrap {
    flex: 1 1 44%;
    min-width: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    padding: 1px 0;
  }
  .widget-c8f1a5 .fcf-select {
    padding-top: 9px;
    padding-bottom: 9px;
    font-size: 0.82rem;
  }
  .widget-c8f1a5 .fcf-day-multi-btn {
    padding-top: 9px;
    padding-bottom: 9px;
    font-size: 0.82rem;
  }
  .widget-c8f1a5 .fcf-search-wrap {
    flex: 1 1 100%;
    min-width: 0;
    margin-left: 0;
    margin-top: 8px;
  }
  .widget-c8f1a5 .fcf-search {
    border-radius: 8px;
    font-size: 0.83rem;
  }
  .widget-c8f1a5 .fcf-card-image-wrap {
    aspect-ratio: 16/9;
  }
  .widget-c8f1a5 .fcf-card-body {
    padding: 16px 18px 18px;
  }
  .widget-c8f1a5 .fcf-card-footer {
    flex-wrap: wrap;
  }
  .widget-c8f1a5 .fcf-cta-btn {
    flex: 1;
    justify-content: center;
  }
}

.widget-1f5975 .copyright {
    font-size: 13px;
    display: flex;
    text-align: left;
    justify-content: flex-start;
}
