.elementor-29750 .elementor-element.elementor-element-7878fea{--display:flex;--min-height:80vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:space-around;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.19;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-29750 .elementor-element.elementor-element-7878fea::before, .elementor-29750 .elementor-element.elementor-element-7878fea > .elementor-background-video-container::before, .elementor-29750 .elementor-element.elementor-element-7878fea > .e-con-inner > .elementor-background-video-container::before, .elementor-29750 .elementor-element.elementor-element-7878fea > .elementor-background-slideshow::before, .elementor-29750 .elementor-element.elementor-element-7878fea > .e-con-inner > .elementor-background-slideshow::before, .elementor-29750 .elementor-element.elementor-element-7878fea > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-primary );--background-overlay:'';}.elementor-29750 .elementor-element.elementor-element-7fa9a84{--display:flex;--min-height:39vh;--flex-direction:column-reverse;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-29750 .elementor-element.elementor-element-639e1a6{--display:flex;}.elementor-29750 .elementor-element.elementor-element-63e3f294 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-29750 .elementor-element.elementor-element-63e3f294:not(.elementor-motion-effects-element-type-background), .elementor-29750 .elementor-element.elementor-element-63e3f294 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-29750 .elementor-element.elementor-element-63e3f294 > .elementor-container{min-height:400px;}.elementor-29750 .elementor-element.elementor-element-63e3f294{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-63e3f294 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-29750 .elementor-element.elementor-element-5555ad84:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-29750 .elementor-element.elementor-element-5555ad84 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-29750 .elementor-element.elementor-element-5555ad84 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:0px;}.elementor-29750 .elementor-element.elementor-element-5555ad84 > .elementor-element-populated{transition:background 0.5s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 60px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-5555ad84 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-29750 .elementor-element.elementor-element-001e679 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-29750 .elementor-element.elementor-element-001e679:not(.elementor-motion-effects-element-type-background), .elementor-29750 .elementor-element.elementor-element-001e679 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-29750 .elementor-element.elementor-element-001e679 > .elementor-container{min-height:400px;}.elementor-29750 .elementor-element.elementor-element-001e679{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-001e679 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-29750 .elementor-element.elementor-element-298f113:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-29750 .elementor-element.elementor-element-298f113 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#94C123;}.elementor-29750 .elementor-element.elementor-element-298f113 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:0px;}.elementor-29750 .elementor-element.elementor-element-298f113 > .elementor-element-populated{transition:background 0.5s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 60px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-298f113 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-29750 .elementor-element.elementor-element-b363650 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-29750 .elementor-element.elementor-element-b363650:not(.elementor-motion-effects-element-type-background), .elementor-29750 .elementor-element.elementor-element-b363650 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-29750 .elementor-element.elementor-element-b363650 > .elementor-container{min-height:400px;}.elementor-29750 .elementor-element.elementor-element-b363650{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-b363650 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-29750 .elementor-element.elementor-element-04c19a3:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-29750 .elementor-element.elementor-element-04c19a3 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-29750 .elementor-element.elementor-element-04c19a3 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:0px;}.elementor-29750 .elementor-element.elementor-element-04c19a3 > .elementor-element-populated{transition:background 0.5s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 60px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-04c19a3 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-29750 .elementor-element.elementor-element-e646fdf > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-29750 .elementor-element.elementor-element-e646fdf:not(.elementor-motion-effects-element-type-background), .elementor-29750 .elementor-element.elementor-element-e646fdf > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-29750 .elementor-element.elementor-element-e646fdf > .elementor-container{min-height:400px;}.elementor-29750 .elementor-element.elementor-element-e646fdf{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-e646fdf > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-29750 .elementor-element.elementor-element-662f639:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-29750 .elementor-element.elementor-element-662f639 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-29750 .elementor-element.elementor-element-662f639 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:0px;}.elementor-29750 .elementor-element.elementor-element-662f639 > .elementor-element-populated{transition:background 0.5s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 60px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-662f639 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-29750 .elementor-element.elementor-element-7fad230 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-29750 .elementor-element.elementor-element-7fad230:not(.elementor-motion-effects-element-type-background), .elementor-29750 .elementor-element.elementor-element-7fad230 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-29750 .elementor-element.elementor-element-7fad230 > .elementor-container{min-height:400px;}.elementor-29750 .elementor-element.elementor-element-7fad230{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-7fad230 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-29750 .elementor-element.elementor-element-dc0ac86:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-29750 .elementor-element.elementor-element-dc0ac86 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#94C123;}.elementor-29750 .elementor-element.elementor-element-dc0ac86 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:0px;}.elementor-29750 .elementor-element.elementor-element-dc0ac86 > .elementor-element-populated{transition:background 0.5s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 60px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-dc0ac86 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-29750 .elementor-element.elementor-element-65a3962 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-29750 .elementor-element.elementor-element-65a3962:not(.elementor-motion-effects-element-type-background), .elementor-29750 .elementor-element.elementor-element-65a3962 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-29750 .elementor-element.elementor-element-65a3962 > .elementor-container{min-height:400px;}.elementor-29750 .elementor-element.elementor-element-65a3962{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-65a3962 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-29750 .elementor-element.elementor-element-a61876d:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-29750 .elementor-element.elementor-element-a61876d > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-29750 .elementor-element.elementor-element-a61876d > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:0px;}.elementor-29750 .elementor-element.elementor-element-a61876d > .elementor-element-populated{transition:background 0.5s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 60px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-a61876d > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-29750 .elementor-element.elementor-element-407a03f > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-29750 .elementor-element.elementor-element-407a03f:not(.elementor-motion-effects-element-type-background), .elementor-29750 .elementor-element.elementor-element-407a03f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-29750 .elementor-element.elementor-element-407a03f > .elementor-container{min-height:400px;}.elementor-29750 .elementor-element.elementor-element-407a03f{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-407a03f > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-29750 .elementor-element.elementor-element-7805109:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-29750 .elementor-element.elementor-element-7805109 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FDFDFD;}.elementor-29750 .elementor-element.elementor-element-7805109 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:0px;}.elementor-29750 .elementor-element.elementor-element-7805109 > .elementor-element-populated{transition:background 0.5s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 60px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-7805109 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-29750 .elementor-element.elementor-element-4e1a5d7 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-29750 .elementor-element.elementor-element-4e1a5d7:not(.elementor-motion-effects-element-type-background), .elementor-29750 .elementor-element.elementor-element-4e1a5d7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-29750 .elementor-element.elementor-element-4e1a5d7 > .elementor-container{min-height:400px;}.elementor-29750 .elementor-element.elementor-element-4e1a5d7{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 0px 20px 0px;}.elementor-29750 .elementor-element.elementor-element-4e1a5d7 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-29750 .elementor-element.elementor-element-a90ae5a:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-29750 .elementor-element.elementor-element-a90ae5a > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#94C123;}.elementor-29750 .elementor-element.elementor-element-a90ae5a > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:0px;}.elementor-29750 .elementor-element.elementor-element-a90ae5a > .elementor-element-populated{transition:background 0.5s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 60px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-a90ae5a > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-29750 .elementor-element.elementor-element-7878fea{--padding-top:0150px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-29750 .elementor-element.elementor-element-63e3f294{padding:50px 50px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-5555ad84 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-001e679{padding:50px 50px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-298f113 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-b363650{padding:50px 50px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-04c19a3 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-e646fdf{padding:50px 50px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-662f639 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-7fad230{padding:50px 50px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-dc0ac86 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-65a3962{padding:50px 50px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-a61876d > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-407a03f{padding:50px 50px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-7805109 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-4e1a5d7{padding:50px 50px 50px 50px;}.elementor-29750 .elementor-element.elementor-element-a90ae5a > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}}@media(min-width:768px){.elementor-29750 .elementor-element.elementor-element-7878fea{--content-width:100vw;}.elementor-29750 .elementor-element.elementor-element-639e1a6{--width:100vw;}}@media(max-width:767px){.elementor-29750 .elementor-element.elementor-element-7878fea{--min-height:250px;--padding-top:150px;--padding-bottom:80px;--padding-left:10px;--padding-right:10px;}.elementor-29750 .elementor-element.elementor-element-63e3f294 > .elementor-container{max-width:500px;min-height:0px;}.elementor-29750 .elementor-element.elementor-element-63e3f294{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-5555ad84 > .elementor-element-populated{padding:10px 10px 30px 10px;}.elementor-29750 .elementor-element.elementor-element-001e679 > .elementor-container{max-width:500px;min-height:0px;}.elementor-29750 .elementor-element.elementor-element-001e679{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-298f113 > .elementor-element-populated{padding:10px 10px 30px 10px;}.elementor-29750 .elementor-element.elementor-element-b363650 > .elementor-container{max-width:500px;min-height:0px;}.elementor-29750 .elementor-element.elementor-element-b363650{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-04c19a3 > .elementor-element-populated{padding:10px 10px 30px 10px;}.elementor-29750 .elementor-element.elementor-element-e646fdf > .elementor-container{max-width:500px;min-height:0px;}.elementor-29750 .elementor-element.elementor-element-e646fdf{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-662f639 > .elementor-element-populated{padding:10px 10px 30px 10px;}.elementor-29750 .elementor-element.elementor-element-7fad230 > .elementor-container{max-width:500px;min-height:0px;}.elementor-29750 .elementor-element.elementor-element-7fad230{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-dc0ac86 > .elementor-element-populated{padding:10px 10px 30px 10px;}.elementor-29750 .elementor-element.elementor-element-65a3962 > .elementor-container{max-width:500px;min-height:0px;}.elementor-29750 .elementor-element.elementor-element-65a3962{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-a61876d > .elementor-element-populated{padding:10px 10px 30px 10px;}.elementor-29750 .elementor-element.elementor-element-407a03f > .elementor-container{max-width:500px;min-height:0px;}.elementor-29750 .elementor-element.elementor-element-407a03f{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-7805109 > .elementor-element-populated{padding:10px 10px 30px 10px;}.elementor-29750 .elementor-element.elementor-element-4e1a5d7 > .elementor-container{max-width:500px;min-height:0px;}.elementor-29750 .elementor-element.elementor-element-4e1a5d7{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-29750 .elementor-element.elementor-element-a90ae5a > .elementor-element-populated{padding:10px 10px 30px 10px;}}/* Start custom CSS for html, class: .elementor-element-29e1485 */.family-hero {
  --fh-green: #94C123;
  --fh-text: #ffffff;

  max-width: 1100px;
  margin: 0 auto;
  padding: 28px 18px;

  display: flex;
  justify-content: center;
  align-items: center;

  text-align: center;
}

.family-hero__content {
  display: inline-block;
  padding: 18px 26px;
  border-radius: 18px;

  background: rgba(49, 73, 31, 0.38);

  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);

  border: 1px solid rgba(255, 255, 255, 0.18);

  box-shadow:
    0 10px 30px rgba(0, 0, 0, 0.18);
}

.family-hero__eyebrow {
  display: block;
  margin-bottom: 8px;

  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;

  color: #d7f08a;
}

.family-hero h1 {
  margin: 0;

  font-size: clamp(34px, 5vw, 58px);
  line-height: 1;
  font-weight: 800;
  text-transform: uppercase;

  color: var(--fh-text);

  text-shadow:
    0 2px 10px rgba(0, 0, 0, 0.35);
}

.family-hero__subtitle {
  margin: 10px 0 0;

  font-size: clamp(14px, 2vw, 19px);
  font-weight: 600;
  line-height: 1.4;

  color: var(--fh-text);

  text-shadow:
    0 2px 8px rgba(0, 0, 0, 0.3);
}

@media (max-width: 767px) {
  .family-hero {
    padding: 18px 12px;
  }

  .family-hero__content {
    width: 100%;
    padding: 14px 16px;
    border-radius: 14px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7a5a7c6 */.family-page-nav {
  --fpn-green: #94C123;
  --fpn-green-dark: #5f7f18;
  --fpn-deep: #31491f;

  --fpn-white: #ffffff;
  --fpn-border: #dce5cf;

  position: sticky;
  top: 12px;
  z-index: 50;

  width: min(1180px, calc(100% - 32px));
  margin: -26px auto 28px;

  display: flex;
  align-items: stretch;

  overflow: hidden;

  border: 1px solid rgba(148, 193, 35, 0.35);
  border-radius: 16px;

  background: rgba(255, 255, 255, 0.94);

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);

  box-shadow:
    0 10px 30px rgba(49, 73, 31, 0.12);
}

/* BRAND */

.family-page-nav__brand {
  flex: 0 0 160px;

  display: flex;
  flex-direction: column;
  justify-content: center;

  padding: 12px 18px;

  background: var(--fpn-green);
  color: #243018;
}

.family-page-nav__brand span {
  margin-bottom: 2px;

  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.family-page-nav__brand strong {
  font-size: 15px;
  line-height: 1.15;
}

/* LINKS */

.family-page-nav__links {
  flex: 1;

  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.family-page-nav__links a {
  position: relative;

  min-height: 66px;
  padding: 10px 8px;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  border-right: 1px solid var(--fpn-border);

  color: var(--fpn-deep);
  background: var(--fpn-white);

  font-size: 12px;
  line-height: 1.2;
  font-weight: 700;
  text-align: center;
  text-decoration: none;

  transition:
    background 0.2s ease,
    color 0.2s ease;
}

.family-page-nav__links a:last-child {
  border-right: 0;
}

.family-page-nav__links a > span {
  margin-bottom: 3px;

  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.08em;

  color: var(--fpn-green-dark);
}

.family-page-nav__links a::after {
  content: "";

  position: absolute;
  left: 50%;
  bottom: 0;

  width: 0;
  height: 3px;

  background: var(--fpn-green);

  transform: translateX(-50%);

  transition: width 0.2s ease;
}

.family-page-nav__links a:hover {
  background: #f7faef;
  color: #243018;
}

.family-page-nav__links a:hover::after {
  width: 70%;
}

/* CTA */

.family-page-nav__links a:last-child {
  background: var(--fpn-green);
  color: #243018;
}

.family-page-nav__links a:last-child:hover {
  background: #a2ce2a;
}

/* TABLET */

@media (max-width: 950px) {
  .family-page-nav {
    display: block;
    overflow: visible;
  }

  .family-page-nav__brand {
    display: none;
  }

  .family-page-nav__links {
    display: flex;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .family-page-nav__links::-webkit-scrollbar {
    display: none;
  }

  .family-page-nav__links a {
    flex: 0 0 128px;
  }
}

/* MOBILE */

@media (max-width: 560px) {
  .family-page-nav {
    top: 8px;
    width: calc(100% - 20px);
    margin: -18px auto 22px;
    border-radius: 13px;
  }

  .family-page-nav__links a {
    flex: 0 0 112px;
    min-height: 56px;
    font-size: 11px;
  }

  .family-page-nav__links a > span {
    font-size: 7px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6a48300 */.ne-section {
  max-width: 1100px;
  margin: 0 auto;
  padding: 32px 18px;
}

.ne-eyebrow {
  display: block;
  margin-bottom: 6px;

  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;

  color: #5f7f18;
}

.ne-card {
  padding: 18px;

  border: 1px solid  #dce5cf;
  border-radius: 13px;

  color: #243018;
  background: #F8FCEE;
}

.ne-card--green {
  background: #F8FCEE
}

/* HEADER */

.valdisole-quick-info__header {
  margin-bottom: 18px;
}

.valdisole-quick-info__header h2 {
  margin: 0;

  font-size: clamp(24px, 3.5vw, 34px);
  line-height: 1.15;

  color: #31491f;
}

/* GRID */

.valdisole-quick-info__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.valdisole-quick-info__item {
  min-height: 105px;

  display: flex;
  flex-direction: column;
  justify-content: center;

  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.valdisole-quick-info__item > span {
  display: block;
  margin-bottom: 5px;

  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;

  color: #6f786b;
}

.valdisole-quick-info__item > strong {
  display: block;

  font-size: 17px;
  line-height: 1.35;

  color: #31491f;
}

.ne-card--green.valdisole-quick-info__item > span,
.ne-card--green.valdisole-quick-info__item > strong {
  color: #243018;
}

.valdisole-quick-info__item:hover {
  transform: translateY(-2px);

  box-shadow:
    0 7px 18px rgba(49, 73, 31, 0.07);
}

/* RESPONSIVE */

@media (max-width: 850px) {
  .valdisole-quick-info__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 560px) {
  .ne-section {
    padding: 26px 14px;
  }

  .valdisole-quick-info__grid {
    grid-template-columns: 1fr;
  }

  .valdisole-quick-info__item {
    min-height: auto;
    padding: 16px;
  }
}

/* =========================
   ANIMACJE WEJŚCIA
   ========================= */

@keyframes ne-card-enter {
  from {
    opacity: 0;
    transform: translateY(14px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.valdisole-quick-info__item {
  opacity: 0;

  animation: ne-card-enter 0.55s ease forwards;
}

/* delikatne opóźnienia */
.valdisole-quick-info__item:nth-child(1) {
  animation-delay: 0.05s;
}

.valdisole-quick-info__item:nth-child(2) {
  animation-delay: 0.12s;
}

.valdisole-quick-info__item:nth-child(3) {
  animation-delay: 0.19s;
}

.valdisole-quick-info__item:nth-child(4) {
  animation-delay: 0.26s;
}

.valdisole-quick-info__item:nth-child(5) {
  animation-delay: 0.33s;
}

.valdisole-quick-info__item:nth-child(6) {
  animation-delay: 0.40s;
}


/* =========================
   HOVER
   ========================= */

.valdisole-quick-info__item {
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
}

.valdisole-quick-info__item:hover {
  transform: translateY(-4px);

  box-shadow:
    0 10px 24px rgba(49, 73, 31, 0.10);
}

.ne-card:not(.ne-card--green).valdisole-quick-info__item:hover {
  border-color: rgba(148, 193, 35, 0.55);
}

.ne-card--green.valdisole-quick-info__item:hover {
  box-shadow:
    0 10px 24px rgba(148, 193, 35, 0.18);
}


/* =========================
   DOSTĘPNOŚĆ
   ========================= */

@media (prefers-reduced-motion: reduce) {
  .valdisole-quick-info__item {
    opacity: 1;
    animation: none;
    transition: none;
  }

  .valdisole-quick-info__item:hover {
    transform: none;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7c251a0 */.family-training {
  --ft-green: #94C123;
  --ft-green-dark: #5f7f18;
  --ft-green-deep: #31491f;

  --ft-white: #ffffff;
  --ft-border: #dce5cf;

  --ft-text: #30382d;
  --ft-muted: #70796b;
}

.family-training__intro {
  max-width: 820px;
  margin-bottom: 22px;
}

.family-training__intro h2 {
  margin: 0 0 10px;

  font-size: clamp(24px, 3.5vw, 36px);
  line-height: 1.15;

  color: var(--ft-green-deep);
}

.family-training__intro p {
  margin: 0;

  font-size: 14px;
  line-height: 1.65;

  color: var(--ft-text);
}


/* GRID */

.family-training__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}


/* KAFELKI */

.family-training__card {
  padding: 20px;

  border: 1px solid var(--ft-border);
  border-radius: 13px;

  background: var(--ft-white);

  opacity: 0;
  animation: ft-card-enter 0.55s ease forwards;

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
}

.family-training__card--green {
  background: var(--ft-green);
  border-color: var(--ft-green);
}


/* TYPOGRAFIA */

.family-training__label {
  display: block;
  margin-bottom: 7px;

  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;

  color: var(--ft-green-dark);
}

.family-training__card h3 {
  margin: 0 0 8px;

  font-size: 17px;
  line-height: 1.3;

  color: var(--ft-green-deep);
}

.family-training__card p {
  margin: 0;

  font-size: 13px;
  line-height: 1.55;

  color: var(--ft-muted);
}

.family-training__card--green .family-training__label,
.family-training__card--green h3,
.family-training__card--green p {
  color: #243018;
}


/* ANIMACJE */

@keyframes ft-card-enter {
  from {
    opacity: 0;
    transform: translateY(14px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.family-training__card:nth-child(1) {
  animation-delay: 0.05s;
}

.family-training__card:nth-child(2) {
  animation-delay: 0.12s;
}

.family-training__card:nth-child(3) {
  animation-delay: 0.19s;
}

.family-training__card:nth-child(4) {
  animation-delay: 0.26s;
}


/* HOVER */

.family-training__card:hover {
  transform: translateY(-4px);

  box-shadow:
    0 10px 24px rgba(49, 73, 31, 0.10);
}

.family-training__card:not(.family-training__card--green):hover {
  border-color: rgba(148, 193, 35, 0.55);
}

.family-training__card--green:hover {
  box-shadow:
    0 10px 24px rgba(148, 193, 35, 0.18);
}


/* RESPONSIVE */

@media (max-width: 950px) {
  .family-training__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 560px) {
  .family-training__grid {
    grid-template-columns: 1fr;
  }

  .family-training__card {
    padding: 17px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .family-training__card {
    opacity: 1;
    animation: none;
    transition: none;
  }

  .family-training__card:hover {
    transform: none;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-072032c */.valdisole-why {
  --vw-green: #94C123;
  --vw-green-dark: #5f7f18;
  --vw-green-deep: #31491f;

  --vw-white: #F8FCEE;
  --vw-border: #dce5cf;

  --vw-text: #30382d;
  --vw-muted: #70796b;
}

.valdisole-why__header {
  max-width: 820px;
  margin-bottom: 22px;
}

.valdisole-why__header h2 {
  margin: 0 0 10px;

  font-size: clamp(24px, 3.5vw, 36px);
  line-height: 1.15;

  color: var(--vw-green-deep);
}

.valdisole-why__header p {
  margin: 0;

  font-size: 14px;
  line-height: 1.65;

  color: var(--vw-text);
}

.valdisole-why__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.valdisole-why__card {
  padding: 20px;

  border: 1px solid var(--vw-border);
  border-radius: 13px;

  background: var(--vw-white);

  opacity: 0;
  animation: valdisole-card-enter 0.55s ease forwards;

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
}

.valdisole-why__card--green {
  background: var(--vw-green);
  border-color: var(--vw-green);
}

.valdisole-why__label {
  display: block;
  margin-bottom: 7px;

  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;

  color: var(--vw-green-dark);
}

.valdisole-why__card h3 {
  margin: 0 0 8px;

  font-size: 17px;
  line-height: 1.3;

  color: var(--vw-green-deep);
}

.valdisole-why__card p {
  margin: 0;

  font-size: 13px;
  line-height: 1.55;

  color: var(--vw-muted);
}

.valdisole-why__card--green .valdisole-why__label,
.valdisole-why__card--green h3,
.valdisole-why__card--green p {
  color: #243018;
}

@keyframes valdisole-card-enter {
  from {
    opacity: 0;
    transform: translateY(14px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.valdisole-why__card:nth-child(1) {
  animation-delay: 0.05s;
}

.valdisole-why__card:nth-child(2) {
  animation-delay: 0.12s;
}

.valdisole-why__card:nth-child(3) {
  animation-delay: 0.19s;
}

.valdisole-why__card:hover {
  transform: translateY(-4px);

  box-shadow:
    0 10px 24px rgba(49, 73, 31, 0.10);
}

.valdisole-why__card:not(.valdisole-why__card--green):hover {
  border-color: rgba(148, 193, 35, 0.55);
}

.valdisole-why__card--green:hover {
  box-shadow:
    0 10px 24px rgba(148, 193, 35, 0.18);
}

@media (max-width: 800px) {
  .valdisole-why__grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .valdisole-why__card {
    padding: 17px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .valdisole-why__card {
    opacity: 1;
    animation: none;
    transition: none;
  }

  .valdisole-why__card:hover {
    transform: none;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5a17231 */.valdisole-price {
  --vp-green: #94C123;
  --vp-green-dark: #5f7f18;
  --vp-green-deep: #31491f;

  --vp-white: #F8FCEE;
  --vp-bg: #f7f8f4;
  --vp-border: #dce5cf;

  --vp-text: #30382d;
  --vp-muted: #70796b;
}


/* =========================
   HEADER
   ========================= */

.valdisole-price__header {
  margin-bottom: 18px;
}

.valdisole-price__header h2 {
  margin: 0;

  font-size: clamp(24px, 3.5vw, 34px);
  line-height: 1.15;

  color: var(--vp-green-deep);
}


/* =========================
   DUŻY BOX CENY
   ========================= */

.valdisole-price__hero {
  margin-bottom: 14px;
  padding: 24px 26px;

  border: 1px solid var(--vp-border);
  border-left: 5px solid var(--vp-green);
  border-radius: 14px;

  background: var(--vp-white);

  opacity: 0;
  animation: vp-card-enter 0.5s ease forwards;
}

.valdisole-price__hero > span {
  display: block;
  margin-bottom: 5px;

  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;

  color: var(--vp-green-dark);
}

.valdisole-price__hero strong {
  display: block;
  margin-bottom: 4px;

  font-size: clamp(30px, 4vw, 42px);
  line-height: 1;

  color: var(--vp-green-deep);
}

.valdisole-price__hero small {
  font-size: 12px;
  color: var(--vp-muted);
}


/* =========================
   CENA ZAWIERA / NIE ZAWIERA
   ========================= */

.valdisole-price__grid {
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  gap: 12px;

  margin-bottom: 12px;
}

.valdisole-price__card {
  padding: 20px;

  border: 1px solid var(--vp-border);
  border-radius: 13px;

  background: var(--vp-white);

  opacity: 0;
  animation: vp-card-enter 0.55s ease forwards;

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.valdisole-price__card:nth-child(1) {
  animation-delay: 0.08s;
}

.valdisole-price__card:nth-child(2) {
  animation-delay: 0.16s;
}

.valdisole-price__card--green {
  background: var(--vp-green);
  border-color: var(--vp-green);
}

.valdisole-price__card h3 {
  margin: 0 0 14px;

  font-size: 18px;
  line-height: 1.25;

  color: var(--vp-green-deep);
}

.valdisole-price__card--green h3 {
  color: #243018;
}


/* =========================
   LISTY
   ========================= */

.valdisole-price__list {
  margin: 0;
  padding: 0;

  list-style: none;
}

.valdisole-price__list li {
  position: relative;

  margin-bottom: 10px;
  padding-left: 24px;

  font-size: 13px;
  line-height: 1.5;

  color: var(--vp-text);
}

.valdisole-price__list li:last-child {
  margin-bottom: 0;
}

.valdisole-price__list--included li::before {
  content: "✓";

  position: absolute;
  left: 0;
  top: 0;

  font-weight: 800;
  color: var(--vp-green-dark);
}

.valdisole-price__list--excluded li::before {
  content: "–";

  position: absolute;
  left: 2px;
  top: 0;

  font-weight: 800;
  color: #243018;
}

.valdisole-price__card--green li {
  color: #243018;
}


/* =========================
   TRANSPORT / MIEJSCA
   ========================= */

.valdisole-price__details {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}

.valdisole-price__detail {
  padding: 17px 18px;

  border: 1px solid var(--vp-border);
  border-radius: 12px;

  background: var(--vp-white);

  opacity: 0;
  animation: vp-card-enter 0.55s ease forwards;

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.valdisole-price__detail:nth-child(1) {
  animation-delay: 0.22s;
}

.valdisole-price__detail:nth-child(2) {
  animation-delay: 0.30s;
}

.valdisole-price__detail--green {
  background: var(--vp-green);
  border-color: var(--vp-green);
}

.valdisole-price__detail > span {
  display: block;
  margin-bottom: 5px;

  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;

  color: var(--vp-green-dark);
}

.valdisole-price__detail strong {
  display: block;
  margin-bottom: 5px;

  font-size: 16px;
  line-height: 1.3;

  color: var(--vp-green-deep);
}

.valdisole-price__detail p {
  margin: 0;

  font-size: 12px;
  line-height: 1.5;

  color: var(--vp-muted);
}

.valdisole-price__detail--green > span,
.valdisole-price__detail--green strong,
.valdisole-price__detail--green p {
  color: #243018;
}


/* =========================
   HOVER
   ========================= */

.valdisole-price__card:hover,
.valdisole-price__detail:hover {
  transform: translateY(-4px);

  box-shadow:
    0 10px 24px rgba(49, 73, 31, 0.10);
}


/* =========================
   ANIMACJA
   ========================= */

@keyframes vp-card-enter {
  from {
    opacity: 0;
    transform: translateY(14px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}


/* =========================
   RESPONSIVE
   ========================= */

@media (max-width: 800px) {
  .valdisole-price__grid,
  .valdisole-price__details {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .valdisole-price__hero,
  .valdisole-price__card,
  .valdisole-price__detail {
    padding: 17px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .valdisole-price__hero,
  .valdisole-price__card,
  .valdisole-price__detail {
    opacity: 1;
    animation: none;
    transition: none;
  }

  .valdisole-price__card:hover,
  .valdisole-price__detail:hover {
    transform: none;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5bcd59c */.valdisole-hotel {
  --vh-green: #94C123;
  --vh-green-dark: #5f7f18;
  --vh-green-deep: #31491f;

  --vh-white: #ffffff;
  --vh-bg: #f7f8f4;
  --vh-border: #dce5cf;

  --vh-text: #30382d;
  --vh-muted: #70796b;
}

.valdisole-hotel__header {
  max-width: 820px;
  margin-bottom: 22px;
}

.valdisole-hotel__header h2 {
  margin: 0 0 10px;
  font-size: clamp(24px, 3.5vw, 36px);
  line-height: 1.15;
  color: var(--vh-green-deep);
}

.valdisole-hotel__header p {
  margin: 0;
  font-size: 14px;
  line-height: 1.65;
  color: var(--vh-text);
}

.valdisole-hotel__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-bottom: 16px;
}

.valdisole-hotel__card {
  padding: 19px;
  border: 1px solid var(--vh-border);
  border-radius: 13px;
  background: var(--vh-white);

  opacity: 0;
  animation: vh-enter 0.55s ease forwards;

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.valdisole-hotel__card--green {
  background: var(--vh-green);
  border-color: var(--vh-green);
}

.valdisole-hotel__label {
  display: block;
  margin-bottom: 7px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--vh-green-dark);
}

.valdisole-hotel__card h3 {
  margin: 0 0 8px;
  font-size: 17px;
  line-height: 1.3;
  color: var(--vh-green-deep);
}

.valdisole-hotel__card p {
  margin: 0;
  font-size: 12px;
  line-height: 1.55;
  color: var(--vh-muted);
}

.valdisole-hotel__card--green .valdisole-hotel__label,
.valdisole-hotel__card--green h3,
.valdisole-hotel__card--green p {
  color: #243018;
}

.valdisole-hotel__family {
  display: grid;
  grid-template-columns: 1.5fr 0.8fr;
  gap: 12px;
  margin-bottom: 26px;
}

.valdisole-hotel__family-text,
.valdisole-hotel__family-card {
  padding: 20px;
  border-radius: 13px;
}

.valdisole-hotel__family-text {
  background: var(--vh-white);
}

.valdisole-hotel__family-card {
  background: var(--vh-white);
}

.valdisole-hotel__family-text h3 {
  margin: 0 0 8px;
  font-size: 20px;
  line-height: 1.25;
  color: var(--vh-green-deep);
}

.valdisole-hotel__family-text p {
  margin: 0;
  font-size: 13px;
  line-height: 1.6;
  color: var(--vh-text);
}

.valdisole-hotel__family-card > span {
  display: block;
  margin-bottom: 6px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: #243018;
}

.valdisole-hotel__family-card strong {
  display: block;
  margin-bottom: 6px;
  font-size: 17px;
  color: #243018;
}

.valdisole-hotel__family-card p {
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
  color: #243018;
}

.valdisole-hotel__gallery {
  padding: 18px;
  border: 1px solid var(--vh-border);
  border-radius: 14px;
  background: var(--vh-bg);
}

.valdisole-hotel__gallery-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}

.valdisole-hotel__gallery-header h3 {
  margin: 0;
  font-size: 19px;
  color: var(--vh-green-deep);
}

.valdisole-hotel__gallery-hint {
  font-size: 11px;
  font-weight: 700;
  color: var(--vh-green-dark);
}

.valdisole-hotel__slider {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(320px, 52%);
  gap: 10px;

  overflow-x: auto;
  scroll-snap-type: inline mandatory;
  scroll-behavior: smooth;

  padding-bottom: 6px;

  scrollbar-width: thin;
  scrollbar-color: var(--vh-green) transparent;
}

.valdisole-hotel__slide {
  margin: 0;
  overflow: hidden;
  border-radius: 12px;
  background: var(--vh-white);
  scroll-snap-align: start;
}

.valdisole-hotel__slide img {
  display: block;
  width: 100%;
  height: 280px;
  object-fit: cover;
  transition: transform 0.35s ease;
}

.valdisole-hotel__slide:hover img {
  transform: scale(1.025);
}

@keyframes vh-enter {
  from {
    opacity: 0;
    transform: translateY(14px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.valdisole-hotel__card:nth-child(1) {
  animation-delay: 0.05s;
}

.valdisole-hotel__card:nth-child(2) {
  animation-delay: 0.12s;
}

.valdisole-hotel__card:nth-child(3) {
  animation-delay: 0.19s;
}

.valdisole-hotel__card:nth-child(4) {
  animation-delay: 0.26s;
}

.valdisole-hotel__card:hover,
.valdisole-hotel__family-text:hover,
.valdisole-hotel__family-card:hover {
  transform: translateY(-4px);

  box-shadow:
    0 10px 24px rgba(49, 73, 31, 0.10);
}

.valdisole-hotel__card--green {
  border: 2px solid #5f7f18;
  box-shadow:
    0 6px 16px rgba(49, 73, 31, 0.12),
    inset 0 0 0 1px rgba(255, 255, 255, 0.12);
}

@media (max-width: 950px) {
  .valdisole-hotel__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .valdisole-hotel__slider {
    grid-auto-columns: 72%;
  }
}

@media (max-width: 800px) {
  .valdisole-hotel__family {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .valdisole-hotel__grid {
    grid-template-columns: 1fr;
  }

  .valdisole-hotel__gallery {
    padding: 14px;
  }

  .valdisole-hotel__gallery-header {
    align-items: flex-start;
    flex-direction: column;
  }

  .valdisole-hotel__slider {
    grid-auto-columns: 88%;
  }

  .valdisole-hotel__slide img {
    height: 220px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .valdisole-hotel__card {
    opacity: 1;
    animation: none;
    transition: none;
  }

  .valdisole-hotel__slide img {
    transition: none;
  }

  .valdisole-hotel__card:hover,
  .valdisole-hotel__family-text:hover,
  .valdisole-hotel__family-card:hover,
  .valdisole-hotel__slide:hover img {
    transform: none;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a90a068 */.valdisole-mid-cta {
  --vmc-green: #94C123;
  --vmc-green-dark: #5f7f18;
  --vmc-green-deep: #31491f;

  --vmc-white: #F8FCEE;
  --vmc-border: #dce5cf;

  --vmc-text: #30382d;
  --vmc-muted: #70796b;
}

.valdisole-mid-cta__box {
  display: grid;
  grid-template-columns: 1.6fr auto;
  align-items: center;
  gap: 24px;

  padding: 22px 24px;

  border: 1px solid var(--vmc-border);
  border-left: 5px solid var(--vmc-green);
  border-radius: 14px;

  background: var(--vmc-white);

  box-shadow:
    0 6px 16px rgba(49, 73, 31, 0.06);
}

.valdisole-mid-cta__content h2 {
  margin: 0 0 8px;

  font-size: clamp(20px, 2.8vw, 28px);
  line-height: 1.2;

  color: var(--vmc-green-deep);
}

.valdisole-mid-cta__content p {
  max-width: 680px;
  margin: 0;

  font-size: 13px;
  line-height: 1.6;

  color: var(--vmc-muted);
}

.valdisole-mid-cta__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 9px;
}

.valdisole-mid-cta__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 42px;
  padding: 0 20px;

  border: 1px solid var(--vmc-border);
  border-radius: 999px;

  background: var(--vmc-white);
  color: var(--vmc-green-deep);

  font-size: 12px;
  font-weight: 800;
  text-decoration: none;

  transition:
    transform 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.valdisole-mid-cta__button--green {
  background: var(--vmc-green);
  border-color: var(--vmc-green);

  color: #243018;
}

.valdisole-mid-cta__button:hover {
  transform: translateY(-2px);

  border-color: var(--vmc-green);

  box-shadow:
    0 7px 16px rgba(49, 73, 31, 0.08);
}

.valdisole-mid-cta__button--green:hover {
  background: #a3ce2b;
}

.valdisole-mid-cta__link {
  padding: 8px 4px;

  font-size: 12px;
  font-weight: 800;

  color: var(--vmc-green-dark);
  text-decoration: none;
}

.valdisole-mid-cta__link:hover {
  text-decoration: underline;
}

@media (max-width: 850px) {
  .valdisole-mid-cta__box {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .valdisole-mid-cta__actions {
    justify-content: flex-start;
  }
}

@media (max-width: 560px) {
  .valdisole-mid-cta__box {
    padding: 18px;
  }

  .valdisole-mid-cta__actions {
    align-items: stretch;
    flex-direction: column;
  }

  .valdisole-mid-cta__button {
    width: 100%;
  }

  .valdisole-mid-cta__link {
    text-align: center;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-428b8bd */.tignes-training {
  --tt-green: #94C123;
  --tt-green-dark: #5f7f18;
  --tt-green-deep: #31491f;

  --tt-white: #F8FCEE;
  --tt-bg: #f7f8f4;
  --tt-border: #dce5cf;

  --tt-text: #30382d;
  --tt-muted: #70796b;

  max-width: 1100px;
  margin: 0 auto;
  padding: 34px 18px;

  color: var(--tt-text);
}


/* HEADER */

.tignes-training__header {
  max-width: 820px;
  margin-bottom: 24px;
}

.tignes-training__eyebrow {
  display: block;
  margin-bottom: 6px;

  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;

  color: var(--tt-green-dark);
}

.tignes-training__header h2 {
  margin: 0 0 10px;

  font-size: clamp(24px, 3.5vw, 36px);
  line-height: 1.15;

  color: var(--tt-green-deep);
}

.tignes-training__header p {
  margin: 0;

  font-size: 14px;
  line-height: 1.65;

  color: var(--tt-text);
}


/* CENA + CZAS */

.tignes-training__top {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;

  margin-bottom: 12px;
}

.tignes-training__price,
.tignes-training__duration {
  padding: 20px;

  border-radius: 13px;
  border: 1px solid var(--tt-border);
}

.tignes-training__price {
  background: var(--tt-green);
  border-color: var(--tt-green);
}

.tignes-training__duration {
  background: var(--tt-white);
}

.tignes-training__price > span,
.tignes-training__duration > span {
  display: block;
  margin-bottom: 5px;

  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.tignes-training__price > span,
.tignes-training__price strong,
.tignes-training__price p {
  color: #243018;
}

.tignes-training__duration > span {
  color: var(--tt-green-dark);
}

.tignes-training__price strong,
.tignes-training__duration strong {
  display: block;
  margin-bottom: 5px;

  font-size: clamp(22px, 3vw, 30px);
  line-height: 1.1;

  color: var(--tt-green-deep);
}

.tignes-training__price strong {
  color: #243018;
}

.tignes-training__price p,
.tignes-training__duration p {
  margin: 0;

  font-size: 12px;
  line-height: 1.45;

  color: var(--tt-muted);
}


/* GODZINY */

.tignes-training__hours {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;

  margin-bottom: 30px;
}

.tignes-training__hours-item {
  padding: 14px;

  border-radius: 11px;
  border: 1px solid var(--tt-border);

  background: var(--tt-white);

  text-align: center;
}

.tignes-training__hours-item--green {
  background: var(--tt-green);
  border-color: var(--tt-green);
}

.tignes-training__hours-item span {
  display: block;
  margin-bottom: 4px;

  font-size: 11px;
  color: var(--tt-muted);
}

.tignes-training__hours-item strong {
  font-size: 20px;
  color: var(--tt-green-deep);
}

.tignes-training__hours-item--green span,
.tignes-training__hours-item--green strong {
  color: #243018;
}


/* PROGRAM */

.tignes-training__program {
  margin-bottom: 30px;
}

.tignes-training__program-intro {
  max-width: 760px;
  margin-bottom: 16px;
}

.tignes-training__program-intro h3 {
  margin: 0 0 8px;

  font-size: 21px;
  line-height: 1.25;

  color: var(--tt-green-deep);
}

.tignes-training__program-intro p {
  margin: 0;

  font-size: 13px;
  line-height: 1.6;

  color: var(--tt-text);
}

.tignes-training__levels {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

.tignes-training__level {
  padding: 17px;

  border-radius: 12px;
  border: 1px solid var(--tt-border);

  background: var(--tt-white);
}

.tignes-training__level--green {
  background: var(--tt-green);
  border-color: var(--tt-green);
}

.tignes-training__level > span {
  display: block;
  margin-bottom: 6px;

  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;

  color: var(--tt-green-dark);
}

.tignes-training__level h4 {
  margin: 0 0 7px;

  font-size: 15px;
  line-height: 1.3;

  color: var(--tt-green-deep);
}

.tignes-training__level p {
  margin: 0;

  font-size: 12px;
  line-height: 1.5;

  color: var(--tt-muted);
}

.tignes-training__level--green > span,
.tignes-training__level--green h4,
.tignes-training__level--green p {
  color: #243018;
}


/* DLACZEGO */

.tignes-training__why-title {
  max-width: 700px;
  margin-bottom: 14px;
}

.tignes-training__why-title h3 {
  margin: 0;

  font-size: 20px;
  line-height: 1.25;

  color: var(--tt-green-deep);
}

.tignes-training__why-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.tignes-training__why-item {
  padding: 16px;

  border-radius: 11px;
  border: 1px solid var(--tt-border);

  background: var(--tt-white);
}

.tignes-training__why-item--green {
  background: var(--tt-green);
  border-color: var(--tt-green);
}

.tignes-training__why-item strong {
  display: block;
  margin-bottom: 5px;

  font-size: 14px;
  color: var(--tt-green-deep);
}

.tignes-training__why-item p {
  margin: 0;

  font-size: 12px;
  line-height: 1.45;

  color: var(--tt-muted);
}

.tignes-training__why-item--green strong,
.tignes-training__why-item--green p {
  color: #243018;
}


/* HOVER */

.tignes-training__duration,
.tignes-training__hours-item,
.tignes-training__level,
.tignes-training__why-item {
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.tignes-training__duration:hover,
.tignes-training__hours-item:hover,
.tignes-training__level:hover,
.tignes-training__why-item:hover {
  transform: translateY(-2px);

  box-shadow:
    0 7px 18px rgba(49, 73, 31, 0.07);
}


/* RESPONSIVE */

@media (max-width: 900px) {
  .tignes-training__levels {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 700px) {
  .tignes-training__top,
  .tignes-training__hours,
  .tignes-training__why-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .tignes-training {
    padding: 26px 14px;
  }

  .tignes-training__levels {
    grid-template-columns: 1fr;
  }

  .tignes-training__price,
  .tignes-training__duration {
    padding: 18px;
  }
}

/* =========================
   ACCORDION
   ========================= */

.tignes-training__accordion {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.tignes-training__accordion-item {
  overflow: hidden;

  border: 1px solid var(--tt-border);
  border-radius: 13px;

  background: var(--tt-white);
}

.tignes-training__accordion-item--green {
  background: var(--tt-green);
  border-color: #6f941a;
}

.tignes-training__accordion-item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;

  padding: 17px 18px;

  cursor: pointer;
  list-style: none;
}

.tignes-training__accordion-item summary::-webkit-details-marker {
  display: none;
}

.tignes-training__accordion-label {
  display: block;
  margin-bottom: 4px;

  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;

  color: var(--tt-green-dark);
}

.tignes-training__accordion-item summary strong {
  display: block;

  font-size: 16px;
  line-height: 1.3;

  color: var(--tt-green-deep);
}

.tignes-training__accordion-item--green
.tignes-training__accordion-label,
.tignes-training__accordion-item--green
summary strong {
  color: #243018;
}


/* =========================
   STRZAŁKA
   ========================= */

.tignes-training__arrow {
  position: relative;

  flex: 0 0 32px;

  width: 32px;
  height: 32px;

  border-radius: 50%;

  background: var(--tt-green);
}

.tignes-training__accordion-item--green
.tignes-training__arrow {
  background: var(--tt-white);
}

.tignes-training__arrow::before {
  content: "";

  position: absolute;
  left: 50%;
  top: 47%;

  width: 8px;
  height: 8px;

  border-right: 2px solid #243018;
  border-bottom: 2px solid #243018;

  transform:
    translate(-50%, -65%)
    rotate(45deg);

  transition: transform 0.22s ease;
}

.tignes-training__accordion-item[open]
.tignes-training__arrow::before {
  transform:
    translate(-50%, -20%)
    rotate(225deg);
}


/* =========================
   CONTENT
   ========================= */

.tignes-training__accordion-content {
  padding:  18px 18px;
  background: #ffffff;
}

.tignes-training__accordion-intro {
  margin: 0 0 16px;
  padding-top: 14px;

  border-top: 1px solid var(--tt-border);

  font-size: 13px;
  line-height: 1.6;

  color: var(--tt-text);
}

.tignes-training__accordion-item--green
.tignes-training__accordion-intro {
  border-top-color: rgba(36, 48, 24, 0.2);
  color: #243018;
}


/* =========================
   HOVER
   ========================= */

.tignes-training__accordion-item summary:hover {
  background: #f7faef;
}

.tignes-training__accordion-item--green summary:hover {
  background: #9cca29;
}


/* =========================
   RESPONSIVE
   ========================= */

@media (max-width: 560px) {
  .tignes-training__accordion-item summary {
    padding: 14px 15px;
  }

  .tignes-training__accordion-content {
    padding: 0 15px 15px;
  }

  .tignes-training__accordion-item summary strong {
    font-size: 14px;
  }

  .tignes-training__arrow {
    flex-basis: 30px;
    width: 30px;
    height: 30px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7c61948 */.valdisole-booking {
  --vb-green: #94C123;
  --vb-green-dark: #5f7f18;
  --vb-green-deep: #31491f;

  --vb-white: #F8FCEE;
  --vb-border: #dce5cf;

  --vb-text: #30382d;
  --vb-muted: #70796b;

  display: grid;
  grid-template-columns: 1.5fr 0.9fr;
  gap: 14px;
}


/* GŁÓWNY CTA */

.valdisole-booking__main {
  padding: 24px;

  border: 1px solid var(--vb-border);
  border-radius: 14px;

  background: var(--vb-white);
}

.valdisole-booking__main h2 {
  margin: 0 0 10px;

  font-size: clamp(24px, 3.5vw, 36px);
  line-height: 1.15;

  color: var(--vb-green-deep);
}

.valdisole-booking__main p {
  max-width: 620px;
  margin: 0 0 20px;

  font-size: 14px;
  line-height: 1.65;

  color: var(--vb-text);
}


/* BUTTON */

.valdisole-booking__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;

  min-height: 46px;
  padding: 0 26px;

  border-radius: 999px;

  background: var(--vb-green);
  color: #243018;

  font-size: 13px;
  font-weight: 800;
  text-decoration: none;

  transition:
    transform 0.2s ease,
    background 0.2s ease,
    box-shadow 0.2s ease;
}

.valdisole-booking__button:hover {
  background: #a3ce2b;
  transform: translateY(-2px);

  box-shadow:
    0 8px 18px rgba(148, 193, 35, 0.20);
}

.valdisole-booking__button span {
  transition: transform 0.2s ease;
}

.valdisole-booking__button:hover span {
  transform: translateX(3px);
}


/* KONTAKT */

.valdisole-booking__contact {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;

  margin-top: 18px;
}

.valdisole-booking__contact a {
  font-size: 13px;
  font-weight: 600;

  color: var(--vb-green-deep);
  text-decoration: none;
}

.valdisole-booking__contact a:hover {
  text-decoration: underline;
}


/* WAŻNE INFO */

.valdisole-booking__info {
  padding: 22px;

  border-radius: 14px;

  background: var(--vb-green);
  color: #243018;
}

.valdisole-booking__info-label {
  display: block;
  margin-bottom: 10px;

  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.valdisole-booking__info ul {
  margin: 0;
  padding-left: 18px;
}

.valdisole-booking__info li {
  margin-bottom: 10px;

  font-size: 12px;
  line-height: 1.5;
}

.valdisole-booking__info li:last-child {
  margin-bottom: 0;
}


/* ANIMACJA */

.valdisole-booking__main,
.valdisole-booking__info {
  opacity: 0;

  animation: vb-enter 0.55s ease forwards;

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.valdisole-booking__main {
  animation-delay: 0.05s;
}

.valdisole-booking__info {
  animation-delay: 0.14s;
}

@keyframes vb-enter {
  from {
    opacity: 0;
    transform: translateY(14px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}


/* HOVER */

.valdisole-booking__main:hover,
.valdisole-booking__info:hover {
  transform: translateY(-4px);

  box-shadow:
    0 10px 24px rgba(49, 73, 31, 0.10);
}


/* RESPONSIVE */

@media (max-width: 767px) {
  .valdisole-booking {
    grid-template-columns: 1fr;
  }

  .valdisole-booking__main,
  .valdisole-booking__info {
    padding: 18px;
  }

  .valdisole-booking__button {
    width: 100%;
  }

  .valdisole-booking__contact {
    flex-direction: column;
    gap: 6px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .valdisole-booking__main,
  .valdisole-booking__info {
    opacity: 1;
    animation: none;
    transition: none;
  }

  .valdisole-booking__main:hover,
  .valdisole-booking__info:hover {
    transform: none;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8675456 */.valdisole-faq {
  --vf-green: #94C123;
  --vf-green-dark: #5f7f18;
  --vf-green-deep: #31491f;

  --vf-white: #ffffff;
  --vf-border: #dce5cf;

  --vf-text: #30382d;
  --vf-muted: #70796b;

  padding: 28px;

  background: var(--vf-green);
  border-radius: 18px;
}


/* HEADER */

.valdisole-faq__header {
  max-width: 820px;
  margin-bottom: 22px;
}

.valdisole-faq__eyebrow {
  display: block;
  margin-bottom: 6px;

  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;

  color: #31491f;
}

.valdisole-faq__header h2 {
  margin: 0 0 10px;

  font-size: clamp(24px, 3.5vw, 36px);
  line-height: 1.15;

  color: #243018;
}

.valdisole-faq__header p {
  margin: 0;

  font-size: 14px;
  line-height: 1.65;

  color: #344325;
}


/* LISTA */

.valdisole-faq__list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}


/* WSZYSTKIE KAFELKI BIAŁE */

.valdisole-faq__item {
  overflow: hidden;

  border: 1px solid rgba(49, 73, 31, 0.18);
  border-radius: 13px;

  background: var(--vf-white);

  box-shadow:
    0 5px 14px rgba(49, 73, 31, 0.07);

  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.valdisole-faq__item:hover {
  transform: translateY(-1px);

  box-shadow:
    0 8px 18px rgba(49, 73, 31, 0.11);
}


/* SUMMARY */

.valdisole-faq__item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;

  padding: 16px 18px;

  cursor: pointer;
  list-style: none;
}

.valdisole-faq__item summary::-webkit-details-marker {
  display: none;
}

.valdisole-faq__item summary > span:first-child {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;

  color: var(--vf-green-deep);
}


/* STRZAŁKA */

.valdisole-faq__arrow {
  position: relative;

  flex: 0 0 32px;

  width: 32px;
  height: 32px;

  border-radius: 50%;

  background: var(--vf-green);
}

.valdisole-faq__arrow::before {
  content: "";

  position: absolute;
  left: 50%;
  top: 47%;

  width: 8px;
  height: 8px;

  border-right: 2px solid #243018;
  border-bottom: 2px solid #243018;

  transform:
    translate(-50%, -65%)
    rotate(45deg);

  transition: transform 0.22s ease;
}


/* PO OTWARCIU STRZAŁKA W GÓRĘ */

.valdisole-faq__item[open] .valdisole-faq__arrow::before {
  transform:
    translate(-50%, -20%)
    rotate(225deg);
}


/* ODPOWIEDŹ */

.valdisole-faq__answer {
  padding: 0 18px 17px;
}

.valdisole-faq__answer p {
  margin: 0;

  padding-top: 13px;

  border-top: 1px solid var(--vf-border);

  font-size: 13px;
  line-height: 1.6;

  color: var(--vf-muted);
}


/* HOVER SUMMARY */

.valdisole-faq__item summary:hover {
  background: #f7faef;
}


/* MOBILE */

@media (max-width: 560px) {
  .valdisole-faq {
    padding: 20px 14px;
    border-radius: 14px;
  }

  .valdisole-faq__item summary {
    padding: 14px 15px;
  }

  .valdisole-faq__item summary > span:first-child {
    font-size: 13px;
  }

  .valdisole-faq__answer {
    padding: 0 15px 15px;
  }

  .valdisole-faq__arrow {
    flex-basis: 30px;
    width: 30px;
    height: 30px;
  }
}/* End custom CSS */