/*
Theme Name:   GeneratePress Child
Theme URI:    https://generatepress.com
Description:  Default GeneratePress child theme
Author:       Tom Usborne
Author URI:   https://tomusborne.com
Template:     generatepress
Version:      0.1
*/






/* Floating labels (Form 5828), only fields with class "floating" */
div#wpforms-5828-field_3-container textarea::placeholder { opacity: 0.6 !important; }
div#wpforms-5828-field_3-container textarea:focus::placeholder { opacity: 0 !important; }
@media (min-width: 900px){
  /* your grid */
  #wpforms-form-5828 .wpforms-field-container{
    display:grid;
    grid-template-columns:1fr 1fr;
    column-gap:30px;
    row-gap:0px;
    align-items:start;
  }

  /* remove wpforms default vertical spacing so grid owns spacing */
  #wpforms-form-5828 .wpforms-field{
    margin:0 !important;
  }

  /* the hidden anti-spam field. remove it from grid flow */
  #wpforms-form-5828 #wpforms-5828-field_10-container{
    display:none !important;
  }

  /* keep submit full width */
  #wpforms-form-5828 .wpforms-submit-container{
    grid-column:1 / -1;
  }
}

/* Scoped to THIS form only */
form#wpforms-form-5828 {
  position: relative;
}

form#wpforms-form-5828 .floating label:nth-of-type(2) {
  display: none;
}

/* GLOBAL FIELD TEXT STYLING */
form#wpforms-form-5828 .wpforms-field input,
form#wpforms-form-5828 .wpforms-field select,
form#wpforms-form-5828 .wpforms-field textarea {
  color: #000000b3 !important;
  -webkit-text-fill-color: #000000b3 !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  opacity: 1 !important;
}

/* Keep placeholders the SAME color by default (this fixes Date/Time + Comments) */
form#wpforms-form-5828 .wpforms-field input::placeholder,
form#wpforms-form-5828 .wpforms-field textarea::placeholder {
  color: #000000b3 !important;
  -webkit-text-fill-color: #000000b3 !important;
  opacity: 1 !important;
}
form#wpforms-form-5828 .wpforms-field input::-webkit-input-placeholder,
form#wpforms-form-5828 .wpforms-field textarea::-webkit-input-placeholder {
  color: #000000b3 !important;
  -webkit-text-fill-color: #000000b3 !important;
  opacity: 1 !important;
}

/* BUT: for FLOATING text inputs, the placeholder duplicates the big label. Hide it. */
form#wpforms-form-5828 .floating input::placeholder,
form#wpforms-form-5828 .floating input::-webkit-input-placeholder {
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  opacity: 1 !important;
}

/* Date & Time is commonly readonly/flatpickr */
form#wpforms-form-5828 .wpforms-field input[readonly],
form#wpforms-form-5828 .wpforms-field input:read-only,
form#wpforms-form-5828 .wpforms-field input.flatpickr-input {
  color: #000000b3 !important;
  -webkit-text-fill-color: #000000b3 !important;
  opacity: 1 !important;
}

/* Consistent height for inputs + selects */
form#wpforms-form-5828 .wpforms-field input,
form#wpforms-form-5828 .wpforms-field select {
  height: 58px !important;
}

/* Field wrapper */
form#wpforms-form-5828 .floating, #wpforms-form-5828 .wpforms-field {
  position: relative;
  margin-bottom: 0px !important;
padding: 10px 0;
}

/* INPUT + SELECT BASE (floating fields) */
form#wpforms-form-5828 .floating input,
form#wpforms-form-5828 .floating select {
  position: relative;
  height: 58px !important;
  padding: 26px 14px 10px 14px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #000000b3 !important;
  -webkit-text-fill-color: #000000b3 !important;
  opacity: 1 !important;
}

/* TEXTAREA BASE */
form#wpforms-form-5828 .floating textarea {
  position: relative;
  min-height: 200px;
  padding: 30px 14px 14px 14px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #000000b3 !important;
  -webkit-text-fill-color: #000000b3 !important;
  opacity: 1 !important;
}

/* LARGE LABEL (IDLE STATE) */
form#wpforms-form-5828 .floating input + label,
form#wpforms-form-5828 .floating textarea + label {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%);
  left: 16px !important;
  right: 14px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #000000b3 !important;
  opacity: 1 !important;
  pointer-events: none;
  transition: all 0.25s ease;
}

/* SHRUNK LABEL (FOCUS OR VALUE) */
form#wpforms-form-5828 .floating input:focus + label,
form#wpforms-form-5828 .floating input:not(:placeholder-shown) + label,
form#wpforms-form-5828 .floating textarea:focus + label,
form#wpforms-form-5828 .floating textarea:not(:placeholder-shown) + label {
  top: 23px !important;
  transform: none;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #000000b3 !important;
  opacity: 0.45 !important;
}

@media (max-width: 1023px) {
  form#wpforms-form-5828 .floating input:focus + label,
  form#wpforms-form-5828 .floating input:not(:placeholder-shown) + label,
  form#wpforms-form-5828 .floating textarea:focus + label,
  form#wpforms-form-5828 .floating textarea:not(:placeholder-shown) + label {
    top: 18px !important;
  }
}

/* ERROR MESSAGE */
form#wpforms-form-5828 .floating.wpforms-has-error em.wpforms-error {
  position: relative;
  margin-top: 6px;
  left: 10px;
}

form#wpforms-form-5828 .wpforms-field-textarea.floating.wpforms-has-error em.wpforms-error {
  position: relative;
  margin-top: 6px;
  left: 10px;
}

form#wpforms-form-5828 .floating.wpforms-has-error label {
  display: none;
}








/* END FLOATING LABELS */




body .learn-title {
    border-bottom: 1px solid #ddd;
    width: 100%;
    padding-bottom: 15px;
    margin-bottom: 15px;
}
.surfcrumbs span a:hover {
    color: #f95d38;
}
.surfcrumbs span a, .surfsrumbs {
    color: #af8058;
}
div.wpforms-container-full .wpforms-confirmation-container-full {
    border-radius: 10px;
    padding: 40px;
    margin: 30px 0 0 0;
    font-size: 24px;
    font-weight: 700;
    background: #ffd7ce;
    font-style: italic;
}
.gb-element-860489d8 .gb-carousel-initialized {
    overflow: hidden;
}
.latepoint-lightbox-shadow { cursor: pointer; }
.latepoint-lightbox-w{
  position: fixed;
  inset: 0;
}
/* begin lesson booking form embed */
body .latepoint-lightbox-w .os-services.os-animated-parent.os-items.os-as-rows.os-selectable-items {
    outline: 0px solid red !important;
}
.latepoint-lightbox-w .os-services.os-animated-parent.os-items.os-as-rows.os-selectable-items{
  outline:4px solid red !important;
  display:flex !important;
  flex-direction:column !important;
}

.latepoint-lightbox-w .os-services.os-animated-parent.os-items.os-as-rows.os-selectable-items
.os-item[data-summary-value="Stand Up Paddle Surf Lesson"]{
  order:999 !important;
}

.latepoint-lightbox-w .os-services.os-animated-parent.os-items.os-as-rows.os-selectable-items
.os-item[data-id="88"]{
  order:999 !important;
}

a.latepoint-lightbox-close {}
.lesson-steps-3 {
    opacity: 0.6;
}
.lesson-book-f form.latepoint-form {
/*    border-top: 1px solid #eee;*/
}
.lesson-book-f .latepoint-booking-form-element {
    border-top: 1px solid #eee;
}
@media (min-width: 1024px){

.lesson-book-f .latepoint-w .latepoint-booking-form-element .latepoint-side-panel {
    flex: 0 0 25%;
    width: 25%;
}
.lesson-book-f .latepoint-w .latepoint-booking-form-element .latepoint-form-w {
    flex: 0 0 50%;
    width: 50%;
}
.lesson-book-f .latepoint-w .latepoint-summary-w {
    flex: 0 0 25%;
    width: 25%;
}
.lesson-book-f .latepoint-booking-form-element.current-step-booking__custom_fields.latepoint-color-blue.latepoint-border-radius-rounded {
    width: 100%;
}
}
/* end lesson booking form embed */





/*BEGIN TRANSLATION STYLES*/



.translatepress-zh_CN .lesson-grid-title,
.translatepress-ko_KR .lesson-grid-title {
line-height: 1em;
}

.translatepress-ja .gb-text-84672351,
.translatepress-ko_KR .gb-text-84672351,
.translatepress-zh_CN .gb-text-84672351 {
font-size: 40px;
}

.translatepress-ja .section-script,
.translatepress-ko_KR .section-script,
.translatepress-zh_CN .section-script {font-size: clamp(27px, 9vw, 64px);}

.translatepress-ja .surf-lesson-template-default h1,
.translatepress-ko_KR .surf-lesson-template-default h1,
.translatepress-zh_CN .surf-lesson-template-default h1 {
font-size: clamp(29px, 5vw + 0.5rem, 85px);
line-height: clamp(67px, 10vw, 155px);
}

.translatepress-ja h1.gb-text-be301510,
.translatepress-ko_KR h1.gb-text-be301510,
.translatepress-zh_CN h1.gb-text-be301510 {
font-size: clamp(29px, 5vw + 0.5rem, 58px);
line-height: clamp(55px, 10vw, 100px);
}

.postid-3565.translatepress-zh_CN h1,
.postid-3565.translatepress-ko_KR h1 {
    font-size: clamp(22px, 2.8vw + 1rem, 71px);
    line-height: clamp(53px, 11vw, 131px);
}

.postid-3362.translatepress-zh_CN h1,
.postid-3580.translatepress-zh_CN h1,
.postid-3619.translatepress-zh_CN h1,
.postid-3362.translatepress-ko_KR h1,
.postid-3580.translatepress-ko_KR h1,
.postid-3619.translatepress-ko_KR h1 {
    font-size: clamp(30px, 3.5vw + 1rem, 75px);
    line-height: clamp(51px, 9vw, 155px);
}

.postid-3592.translatepress-zh_CN h1,
.postid-3624.translatepress-zh_CN h1,
.postid-3625.translatepress-zh_CN h1,
.postid-3592.translatepress-ko_KR h1,
.postid-3624.translatepress-ko_KR h1,
.postid-3625.translatepress-ko_KR h1 {
    font-size: clamp(30px, 3.5vw + 1rem, 75px);
    line-height: clamp(54px, 9vw, 155px);
}




/* begin specific surf lesson pages */
.postid-3362.translatepress-ja h1, .postid-3580.translatepress-ja h1, .postid-3619.translatepress-ja h1 {
    font-size: clamp(18px, 1vw, 75px);
    line-height: clamp(50px, 7vw, 155px);
}
.postid-3565.translatepress-ja h1 {
    font-size: clamp(14px, 2.5vw, 71px);
    line-height: clamp(45px, 8vw, 131px);
}
.postid-3592.translatepress-ja h1, .postid-3624.translatepress-ja h1, .postid-3625.translatepress-ja h1 {
    font-size: clamp(17px, 3vw, 75px);
    line-height: clamp(46px, 9vw, 155px);
}
.page-id-3349.translatepress-ja h1.gb-text-be301510 {
    font-size: clamp(20px, 4vw, 90px);
    line-height: clamp(44px, 9vw, 123px);
}
/* end surf lesson pages */

.translatepress-ja a.nav-tile-mobile.gb-element-0799102f span, 
.translatepress-ko_KR a.nav-tile-mobile.gb-element-0799102f span,
.translatepress-zh_CN a.nav-tile-mobile.gb-element-0799102f span {
    font-size: 16px;
}






.translatepress-ja h2,
.translatepress-ko_KR h2,
.translatepress-zh_CN h2 {
    font-size: 25px;
    font-weight: 900;
}


.home.translatepress-ja .h1sub,
.home.translatepress-ko_KR .h1sub,
.home.translatepress-zh_CN .h1sub {
font-size: clamp(55px, 10vw, 114px);
}

.page-id-4111.translatepress-ja h1,
.page-id-4111.translatepress-ko_KR h1 {
    font-size: clamp(30px, 5vw, 81px);
    line-height: clamp(48px, 10vw, 116px);
}

.translatepress-ja .h1sub {
    font-size: clamp(53px, 10vw, 160px);
}

.translatepress-zh_CN .h1sub,
.translatepress-ko_KR .h1sub {
    font-size: clamp(70px, 13vw, 160px);
}

.translatepress-ko_KR .h1sub {
    font-size: clamp(57px, 13vw, 160px);
}

.surf-lesson-template-default.translatepress-ja .h1sub {
    font-size: clamp(55px, 10vw, 160px);
}

.surf-lesson-template-default.translatepress-ko_KR .h1sub,
.surf-lesson-template-default.translatepress-zh_CN .h1sub {
    font-size: clamp(55px, 10vw, 160px);
}

.translatepress-ja .h1sub span,
.translatepress-ko_KR .h1sub span,
.translatepress-zh_CN .h1sub span
 {
    font-size: 25px;
    padding: 0 5px 0 0;
}

.translatepress-ja .tile-booking-text,
.translatepress-ko_KR .tile-booking-text,
.translatepress-zh_CN .tile-booking-text {font-size: 15px;padding-top: 0px;}

.translatepress-ja .lesson-grid-title,
.translatepress-ko_KR .lesson-grid-title,
.translatepress-zh_CN .lesson-grid-title {
    font-size: clamp(24px, 4vw, 50px);
    font-weight: 900;line-height: 
    1em;margin-bottom: 10px;
}

.translatepress-ko_KR .lesson-grid-title, .translatepress-zh_CN .lesson-grid-title {
font-size: clamp(34px, 4vw, 50px);
font-weight: 900;
line-height: 1em;
}


@media (max-width: 768px) {

.booksurf .wpforms-container .wpforms-field {
    padding: 10px 0;
}    
.gb-text-a2941da9 {
font-size: 52px;
}

.translatepress-zh_CN .lesson-grid-details,
.translatepress-ko_KR .lesson-grid-details {
font-size: 12px;
}

.translatepress-zh_CN .gb-text-33d4d109,
.translatepress-ko_KR .gb-text-33d4d109 {
margin-bottom: 10px;
}

.translatepress-ja .gb-element-27dc202d,
.translatepress-ko_KR .gb-element-27dc202d,
.translatepress-zh_CN .gb-element-27dc202d {
align-items: flex-end;
min-height: 730px;
}

.translatepress-ja .gb-element-844dcbbb,
.translatepress-ko_KR .gb-element-844dcbbb,
.translatepress-zh_CN .gb-element-844dcbbb {
padding: 0 30px 40px;
}

.translatepress-ja .gb-text-d0db695c,
.translatepress-ko_KR .gb-text-d0db695c,
.translatepress-zh_CN .gb-text-d0db695c {
font-size: 31px;
}
}
/*END TRANSLATION STYLES*/


/* begin translation fonts */
/* Japanese */
body.translatepress-ja {
font-family:
"Hiragino Sans",
"Yu Gothic",
Meiryo,
"Noto Sans JP",
system-ui,
-apple-system,
BlinkMacSystemFont,
sans-serif;
}

/* Chinese (Simplified) */
body.translatepress-zh_CN {
font-family:
"PingFang SC",
"Microsoft YaHei",
"Noto Sans SC",
system-ui,
-apple-system,
BlinkMacSystemFont,
sans-serif;
}

/* Korean */
body.translatepress-ko_KR {
font-family:
"Apple SD Gothic Neo",
"Malgun Gothic",
"Noto Sans KR",
system-ui,
-apple-system,
BlinkMacSystemFont,
sans-serif;
}

/* end translation fonts */



/* begin long h1 text */
.postid-3362 h1, .postid-3580 h1, .postid-3619 h1 {
font-size: clamp(30px, 3.5vw + 1rem, 75px);
line-height: clamp(66px, 9.5vw, 155px);
}


.postid-3592 h1, .postid-3624 h1, .postid-3625 h1 {
font-size: clamp(30px, 3.5vw + 1rem, 75px);
line-height: clamp(66px, 9.5vw, 155px);
}

.page-id-3349 h1.gb-text-be301510 {
width: 100%;
display: block;
padding: 0;
margin: 0;
font-size: clamp(34px, 3.4vw + 1rem, 90px);
line-height: clamp(67px, 9vw, 123px);
text-align:left;
}

h1.gb-text-be301510 {
width: 100%;
display: block;
padding: 0;
margin: 0;
font-size: clamp(48px, 6vw + 1rem, 135px);
line-height: clamp(67px, 10vw, 155px);
text-align:left;
}

.blog h1.gb-text-be301510 {
font-size: clamp(48px, 4.7vw + 1rem, 68px);
line-height: clamp(57px, 8vw, 91px);
margin: 0 0 -23px 0;
}

.postid-3565 h1 {
font-size: clamp(22px, 2.8vw + 1rem, 71px);
line-height: clamp(63px, 11vw, 131px);
}

.page-id-4111 h1 {
font-size: clamp(36px, 5.7vw + 1.7rem, 81px);
line-height: clamp(73.2px, 11vw, 116px);
}

.page-id-5831 h1.gb-text-88eab74d {
    font-size: clamp(31px, 3vw + 1rem, 64px);
    line-height: clamp(61px, 9vw, 120px);
}

.surf-lesson-template-default .h1sub {
width: 100%;
display: flex;
padding: 0;
margin: 0;
height: 100%;
font-size: clamp(76px, 13vw, 160px);
}
.home .h1sub {
width: 100%;
display: flex;
padding: 0;
margin: 0;
height: 100%;
font-size: clamp(68px, 10vw, 215px);
}
.h1sub {
width: 100%;
display: flex;
padding: 0;
margin: 0;
height: 100%;
font-size: clamp(68px, 10vw, 215px);
}

/* end long h1 text */











body .page-header, .sidebar .widget, .site-main>* {
margin-bottom: 0;
}


/* pulsing icon */
.pulsing-icon svg {
/* Optional: Basic styling for the icon container */
display: inline-block;
color: red; /* Example color */
font-size: 24px; /* Example size */
animation: pulse 2s infinite; /* Apply the animation */
}

/* Define the animation */
@keyframes pulse {
0% {
transform: scale(1); /* Original size */
opacity: 1;
}
50% {
transform: scale(1.2); /* Scale up to 120% */
opacity: 0.7;
}
100% {
transform: scale(1); /* Return to original size */
opacity: 1;
}
}


/* BEGIN LEAVE REVIEW SECTION */

.inside-article .leave-rev .button-1:hover {
box-shadow: 0px 15px 40px -10px #523700eb;
}

.inside-article .leave-rev .button-1 {
box-shadow: 0px 10px 40px -15px #523700cc;
}

0px 10px 40px -15px #523700cc

/* END LEAVE REVIEW SECTION */



/* BEGIN CTA SECTION STYLES */

h2.gb-text.section-script.gb-text-643c23d4.sal-animate {
text-shadow: 1px 5px 10px #00324a36;

}

.inside-article .button-1 {
box-shadow: 0px 14px 20px -4px #002c3c;
}
.inside-article .button-1:hover {
box-shadow: 0px 15px 30px 0px #000c10;
}

/* END CTA SECTION STYLES */



/* BEGIN LATEPOINT STYLES */

textarea#booking_custom_fields_cf_qocmegut {
height: 95px;
}
.latepoint-w .latepoint-booking-form-element .os-items.os-as-grid .os-item .os-item-i {
display:flex;
align-items:center;
justify-content: space-between;
}

/* Force the service row inner wrapper to fill the row */
.latepoint-w .latepoint-booking-form-element
.os-item-span-row.with-floating-price
.os-item.os-service-duration-selector{
display: flex !important;
align-items: center !important;
height: 100% !important;
}

/* Remove any vertical offsets on the price itself */
.latepoint-w .latepoint-booking-form-element
.os-item-span-row.with-floating-price
.os-duration-price{
position: static !important;
top: auto !important;
transform: none !important;
margin-top: 0 !important;
padding-top: 0 !important;
padding-bottom: 0 !important;
line-height: 1 !important;
display: flex !important;
align-items: center !important;
}

/* END LATEPOINT STYLES */



html, body {
overflow-x: clip;
}

@supports not (overflow-x: clip) {
html, body {
overflow-x: hidden;
}
}





/* BEGIN LESSONS PAGE */



/* SHORT vertical separators for your columns */
.lesson-info-box-2{
position: relative; /* required for the absolute ::after divider */
}

/* add a short centered line to every column except the last */
.lesson-info-box-2:not(:last-child)::after{
content: "";
position: absolute;
right: 0;
top: 130px;
transform: translateY(-50%);
height: 200px;              /* adjust: 40%Ã¢â‚¬â€œ65% usually looks best */
width: 1px;
background: rgb(31 31 31 / 17%);
pointer-events: none;
/* border-left: 1px solid #0d0d0d36; */
}

/* optional: ensure text doesn't collide with the divider */
.lesson-info-box-2{
padding-right: 3rem;
}
.lesson-info-box-2:not(:first-child){
padding-left: 2rem;
}
.lesson-info-box-2:last-child {
padding-right: 0rem;
}
/* mobile: usually kill vertical dividers when columns stack */
@media (max-width: 768px){
.lesson-info-box-2::after{
display: none;
}
.lesson-info-box-2{
padding-left: 0;
padding-right: 0;
}
}


@media (max-width: 768px){


/* remove vertical divider */
.lesson-info-box-2::after {
display: none;
}

/* spacing reset */
.lesson-columns .lesson-info-box-2 {
padding-left: 0;
padding-right: 0;
}

/* horizontal separator BEFORE every item except the first */
.lesson-info-box-2:not(:first-child)::before {
content: "";
display: block;
width: 50%;
height: 1px;
margin: 1rem auto 2em;
background: rgb(0 0 0 / 23%);
}


}

a.gb-element-7cfe9979:hover h2 {
color: #fa5d36;
}
.list p.detail-bullets::before{
content:"";
width: 8px;
height: 8px;
min-width: 8px;
min-height: 8px;
max-width: 8px;
max-height: 8px;
border-radius: 999px;
background-color: rgb(0 223 175);

flex: 0 0 8px;          /* critical: no grow, no shrink */
align-self: center;      /* critical: ignore line-height */
}
.detail-bullets{
display: inline-flex;
align-items: center;
gap: 10px;
margin: 0 0 5px;
}
/* END LESSONS PAGE */


/*BEGIN BADGE FOOTER*/
.wppro_badge3_IMG_4.wprevsmallbadgeicon {
display: inline-block !important;
width: 32px;

}
.wppro_badge1_DIV_12.b4s12 {}
.wppro_badge3_DIV_13 {
margin: 10px 0 0 0;

}
html .wppro_badge1_DIV_stars span.svgicons,span.svgbadgestar {
width: 32px;
height: 32px;
}
/*END BADGE FOOTER*/

/* BEGIN GRID OVERLAY TEXTURE */


.home-grid-wrap .gb-loop-item .lesson-grid-item-wrap {
position: relative;
overflow: hidden;
}

.home-grid-wrap .gb-loop-item .lesson-grid-item-wrap > * {
z-index:2;
position:relative;

}



/*BEGIN footer PREFOOTER*/
.copyright-bar {
    width: 100%;
}
span.wppro_badge1_DIV_12.b4s12 {
font-family: var(--gp-font--urbanist);
font-weight: 400;
font-size: 19px;
color: #101528 !important;
}

.wppro_badge1_DIV_stars.b3s6 {
margin-bottom: 10px;
}
.copyright-bar {
font-size: 17px;
line-height: 1.3em;
font-weight: 700;
}
.pre-footer div#wprev-badge-1 {margin: 35px 0 0 0;padding: 0;display: block;position: relative;}

.pre-footer span.wppro_badge1_SPAN_4.b3s4 {font-family: Lucky Stone Bonus Font;font-size: 23px;line-height: 1.1em;margin-bottom: 20px !important;font-weight: 400;color: #4a4a4a;}

.pre-footer .wppro_badge1_DIV_5.b3s5 {margin-top: 10px;}

/*END footer PREFOOTER*/



/* END GRID OVERLAY TEXTURE */


/*BEGIN MAP SECTION*/
.gb-element-ee30ec3f a.button-1 {
box-shadow: 0px 10px 30px 0px #212121;
}
body .gb-text-4a6ae107 {
box-shadow: 0px 10px 20px -10px #005067;
}

/*END MAP SECTION*/



/* begin reviews */
ul.slickwprev-dots {
margin-left:-10px;
}
.wprevpro .custom-reviews .wpproslider_t15_DIV_1a {
padding: 30px 50px 30px;
}
.wprevpro span.svgicons.svg-wprsp-verified {
background: #717171;
margin-bottom: -5px;
}
.wprevpro .wpproslider_t15_DIV_1a {
margin: 20px;
}
.wprevpro .wprevpro_t15_SPAN_7.wprevlocation {
margin: 10px 0 0 0;
}
.wprs_rd_more {
text-decoration: underline;
}
.wprevpro_t15_SPAN_7.wprevlocation, .wprevpro .wprev_preview_tcolor3_T15 {font-size: 17px;margin: 0 0 10px 0;padding: 0;line-height: 1.6em;font-weight: 500;color: #363636;}
#wprev-slider-1 .wprev_preview_bradius_T15 {
box-shadow: 0 5px 12px -6px #6c480042;
}
.wprevpro .wpproslider_t15_IMG_2 {
border: 1px solid rgb(211,211,211);
}
.wprevpro .wpproslider_t15_IMG_2 {
height: 50px;
width: 50px;
}
/* end reviews */
/*begin home styles*/
p.gb-text-20980916 a:hover {
    color: rgb(255 87 53 / 98%);
}
/*end home styles*/



.gb-shape.gb-shape-313c7442 svg path {

fill: #ccafa8;
}
/*BEGIN LIST STYLES*/
.bullet-list-headings {
position: relative;
padding-left: 25px;
margin: 0 0 6px 0;
}
.bullet-list-headings::before {
content: "";
position: absolute;
left: 0;
top: 0.6em;
width: 8px;
/* bullet size */
height: 8px;
/* bullet size */
background-color: #ccafa8;
border-radius: 50%;
transform: translateY(-50%);
}
/*END LIST STYLES*/
.wprs_rd_more:hover {
color: #25ffc1 !important;
}
/*BEGIN LESSON GRID*/



/* Tile link */
a.lesson-grid-item-wrap{
position: relative;
display: flex;              /* you already have this, but keep it explicit */
text-decoration: none;
-webkit-tap-highlight-color: transparent;
touch-action: manipulation;
transition: box-shadow .12s ease, transform .08s ease;
}

/* Desktop hover */
@media (hover: hover) and (pointer: fine) {
a.lesson-grid-item-wrap:hover{
box-shadow:
inset 0 10px 20px rgba(0,0,0,.18),   /* top */
inset 0 -10px 20px rgba(0,0,0,.18),  /* bottom */
inset 0 0 0 2px rgba(0,0,0,.14);     /* inner edge */
}
}

/* Mobile touch feedback */
a.lesson-grid-item-wrap:active{
box-shadow: inset 0 10px 20px rgba(0,0,0,0.15),
inset 0 -10px 20px rgba(0,0,0,.15),
inset 0 0 0 2px rgba(0,0,0,.1);
transform: scale(0.99);
}

/* Keyboard accessibility */
a.lesson-grid-item-wrap:focus-visible{
box-shadow:
inset 0 10px 20px rgba(0,0,0,.20),
inset 0 -10px 20px rgba(0,0,0,.20),
inset 0 0 0 3px rgba(255,255,255,.55),
inset 0 0 0 5px rgba(0,0,0,.20);
outline: none;
}


.post-3619 .home-grid-wrap a {
border-top: 1px solid #909090;
border-right: 1px solid #909090;
border-bottom: 1px solid #909090;
}
.post-3625 .home-grid-wrap a {
border-top: 1px solid #909090;
border-right: 1px solid #909090;
border-bottom: 1px solid #909090;
}
.post-3592 .home-grid-wrap a {
border-top: 1px solid #909090;
border-right: 1px solid #909090;
border-bottom: 1px solid #909090;
}
.post-3580 .home-grid-wrap a {
border-top: 1px solid #000000660002e;
border-right: 0px solid #0000002e;
}
.home-grid-wrap .gb-loop-item:nth-child(2) .lesson-grid-icon{
}
.lesson-grid-item-wrap:hover{
}
.home-grid-wrap .lesson-grid-item-wrap{
transition: background-color .25s
}
.home-grid-wrap .gb-loop-item:first-child .lesson-grid-item-wrap{background-color: #25bfcd;border-right: 1px solid #909090;border-top: 1px solid #909090;}
.home-grid-wrap .gb-loop-item:first-child .lesson-grid-item-wrap:hover{background-color: #0db3c2;}
.home-grid-wrap .gb-loop-item:nth-child(2) .lesson-grid-item-wrap{background-color: #e79a7c;}
.home-grid-wrap .gb-loop-item:nth-child(2) .lesson-grid-item-wrap:hover{background-color: #f99051;}
.home-grid-wrap .gb-loop-item:nth-child(3) .lesson-grid-item-wrap{background-color: #deb030;}
.home-grid-wrap .gb-loop-item:nth-child(3) .lesson-grid-item-wrap:hover{background-color: #e7ad0d;}
.home-grid-wrap .gb-loop-item:nth-child(4) .lesson-grid-item-wrap{background-color: #ec786f;border-top: 1px solid #909090;border-right: 1px solid #909090;}
.home-grid-wrap .gb-loop-item:nth-child(2) .lesson-grid-item-wrap {
border-top: 1px solid #909090;
border-right: 1px solid #909090;
}
.home-grid-wrap .gb-loop-item:nth-child(3) .lesson-grid-item-wrap {
border-top: 1px solid #909090;
border-right: 1px solid #909090;
}
.home-grid-wrap .gb-loop-item:nth-child(4) .lesson-grid-item-wrap:hover{background-color: #f15246;}
.home-grid-wrap .gb-loop-item:nth-child(5) .lesson-grid-item-wrap{background-color: #40a4c3;border-top: 1px solid #909090;border-right: 1px solid #909090;}
.home-grid-wrap .gb-loop-item:nth-child(5) .lesson-grid-item-wrap:hover{background-color: #1996bd;}
.home-grid-wrap .gb-loop-item:nth-child(6) .lesson-grid-item-wrap{background-color: #77c893;border-top: 1px solid #909090;/* border-bottom: 1px solid #909090; */}
.home-grid-wrap .gb-loop-item:nth-child(6) .lesson-grid-item-wrap:hover{background-color: #4dca78;}
.home-grid-wrap .post-3592 a img {
width: 150px;
margin: 0px 0 0px 0;
}
.home-grid-wrap .post-3565 a img {
margin: 0px 0 -4px 0;
}
@media (max-width: 768px) {
.home-grid-wrap .post-3592 a img {
width: 105px;
margin: 0px 0 0px 0;
}
.home-grid-wrap .post-3565 a img {
margin: 0px 0 -8px 0;
}
}
/*END LESSON GRID*/
@font-face {
font-family: 'Lucky Stone';
src: url('/wp-content/uploads/2025/11/LuckyStoneRegular.woff2') format('woff2'),url('/wp-content/uploads/2025/11/LuckyStoneRegular.woff') format('woff');
font-weight: normal;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Lucky Stone Bonus Font';
src: url('/wp-content/uploads/2025/11/LuckyStoneBonusFont.woff2') format('woff2'),url('/wp-content/uploads/2025/11/LuckyStoneBonusFont.woff') format('woff');
font-weight: normal;
font-style: normal;
font-display: swap;
}
/*BEGIN HERO */
.hero-content-wrap a.button-1.os_trigger_booking {
box-shadow: 0px 10px 28px -8px #001e25;
}
.hero-content-wrap a.button-1.os_trigger_booking:hover {
box-shadow: 0px 10px 38px 0px #001e25;
}
.parallax-wrapper {
overflow-y: hidden;
}
.parallax {
overflow-y: hidden;
}
.hero-wrapper.parallax-wrapper::after {
content: "";
background-color: #0000004d;
width: 100vw;
height: 100vh;
display: block;
position: absolute;
margin: 0;
padding: 0;
top: 0;
left: 0;
z-index: 5;
}

.page-id-4043 .hero-wrap::after {
background-color: rgba(33,33,33,0.55);
}
.hero-wrap::after {
content: '';
position: absolute;
background-color: rgba(33,33,33,0.45);
z-index: 0;
overflow-x: hidden;
overflow-y: hidden;
width: 100%;
height: 100%;
top: 0px;
left: 0px;
}
/*END HERO*/
/*BEGIN HOME HERO */
.h1sub span {
font-size: 50px;
display: block;
justify-content: center;
align-content: center;
padding: 0 2px 0 0;
margin: 0;
}
/*END HOME HERO*/
/* DESKTOP MENU BEGIN */
.lang-link:is(:hover,:focus) .lang-menu-item {
       background-color: #fff9ed;
}
a.lang-link {
    font-size: 16px;
}
body .gb-element-0799102f:is(:hover,:focus) {
background-color: #f85c38;
}
a.nav-tile.gb-element-0799102f.latepoint-book-button.lp-book-button.os-trigger-booking.latepoint-link, a.nav-tile.gb-element-0799102f.latepoint-book-button.lp-book-button.os-trigger-booking.latepoint-link:hover {
box-shadow: none;
}
a.logo-center {background: #efbe94;}
a.logo-center:hover {
background: rgb(255 214 185 / 87%);
}


a.nav-tile {
border-left: 1px solid #846c5c4f;
border-right: 1px solid #846c5c4f;
}
a.nav-tile-2.rentals.gb-element-3b938e49 {
border-right: 1px solid #846c5c4f;
}
#generate-slideout-menu .slideout-exit,#generate-slideout-menu .menu-toggle,#generate-slideout-menu .gb-menu-toggle {
display: none !important;
}
.nav-menu-desktop .gb-navigation {
height: 100%;
}
.nav-menu-desktop .gb-menu-toggle svg {
width: 32px;
height: 32px;
}
body :where(.gb-navigation[data-gb-mobile-menu-type="full-overlay"]) .gb-menu-container--mobile .gb-menu-toggle--clone {
background: transparent;
right: 10px;
top: 44px;
}
/* DESKTOP MENU END */
@media (max-width: 1200px) and (min-width: 1024px) {
.tile-booking-text .gb-text {
font-size: 24px;
}
.gb-text-55d52a72 .gb-shape svg {
width: 20px;
height: 20px;
}
.gb-text.lesson-grid-title.gb-text-d0c8dfbe.grid-title-desktop {
display: none;
}
.gb-text.lesson-grid-title.gb-text-33d4d109.grid-title-mobile {
display: block !important;
}
}
@media (min-width: 1500px) {
.logo-img.logo-mobile {
display: none;
}
}
@media (min-width: 1440px) {
p.hero-text {
font-size: 19px;
line-height: 1.4em;
}
}
@media (max-width: 1499px) {
.logo-img.logo-desktop {
display: none;
}
}
@media (min-width: 700px) and (max-width: 900px) and (min-resolution: 1.5dppx) {
/* HiDPI laptop adjustments */
.gb-text.hero-text.gb-text-db3c06d4.sal-animate {
padding: 40px 0 20px 0;
font-size: 18px;
font-weight: 600;
}
}
@media (max-width: 768px) {
h2.tile-heading-script {
font-size: 24px;
}
.h1sub span {
font-size: 35px;
display: block;
justify-content: center;
align-content: center;
padding: 0 2px 0 0;
margin: 0;
}
}
@media (max-width: 1023px) {

a.nav-tile-mobile.gb-element-0799102f, a.lang-tile.nav-tile-2, a.phone-tile-mob.gb-element-44927cd2, a.logo-wrap-mob.gb-element-6780dca5 {
border-right: 1px solid #ffffff45;
}
.wprevpro .wpproslider_t15_DIV_1a {
/* margin: 0;
*/
}
}
@media (min-width: 2000px) {
p.hero-text {
margin-top: 40px;
max-width: 65%;
}
}
