.elementor-kit-7{--e-global-color-primary:#62C03A;--e-global-color-secondary:#9EADC8;--e-global-color-text:#094D52;--e-global-color-accent:#2A1A1F;--e-global-color-b52b8a1:#F3F1E4;--e-global-color-767c381:#6C8182;--e-global-color-a111286:#58AD34;--e-global-color-243f2be:#FFFFFF;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-weight:600;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-secondary-font-family:"Georgia";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-size:1rem;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;color:var( --e-global-color-accent );font-family:"Roboto", Sans-serif;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:var( --e-global-color-primary );color:var( --e-global-color-243f2be );border-style:solid;border-width:1px 1px 1px 1px;border-radius:999px 999px 999px 999px;padding:1rem 2rem 1rem 2rem;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{background-color:var( --e-global-color-a111286 );border-radius:999px 999px 999px 999px;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:var( --e-global-color-primary );}.elementor-kit-7 a:hover{color:var( --e-global-color-a111286 );}.elementor-kit-7 h1{color:var( --e-global-color-accent );font-family:"Montserrat", Sans-serif;font-size:5.5rem;font-weight:800;text-transform:uppercase;}.elementor-kit-7 h2{color:var( --e-global-color-accent );font-family:"Montserrat", Sans-serif;font-size:4.5rem;font-weight:800;text-transform:uppercase;line-height:4.5rem;}.elementor-kit-7 h3{color:var( --e-global-color-text );font-family:"Montserrat", Sans-serif;font-size:3rem;font-weight:800;text-transform:uppercase;}.elementor-kit-7 h4{font-family:"Montserrat", Sans-serif;font-size:2rem;font-weight:700;text-transform:capitalize;}.elementor-kit-7 h5{color:var( --e-global-color-accent );font-family:"Montserrat", Sans-serif;font-size:1.6rem;font-weight:700;text-transform:capitalize;}.elementor-kit-7 h6{font-family:"Montserrat", Sans-serif;font-size:1rem;font-weight:700;text-transform:uppercase;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-7 h2{font-size:31px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --primary:#62c03a; --primary-hover:#58ad34; --blue:#9eadc8; --charcoal:#094d52; --cream:#f3f1e4; --black:#2a1a1f; --white:#ffffff; --e-gv-7ab98c9:#ffffff00; --Transparent:#ffffff00; --DUP_white:#ffffff; --DUP_primary:#62c03a; --DUP_charcoal:#094d52; --DUP_primary-hover:#58ad34; --DUP_Transparent:#ffffff00; }
/* Start custom CSS *//* POPUP */
.dialog-lightbox-message {
    max-width: 1000px !important;
}

.btn-secondary {
	backdrop-filter: blur(1px);
    -webkit-backdrop-filter: blur(1px);
}

.camp-card img {
  transition: transform 0.4s ease-in-out;
}

/* The Hover Effect */
.camp-card:hover img {
  transform: scale(1.5); 
}


/* events list on homepage */

/* 1. HIDE HEADERS & FOOTERS */
.tribe-events-widget .tribe-events-widget-events-list__header, 
.tribe-events-widget .tribe-events-widget-events-list__view-more {
    display: none !important;
}

/* 2. MAIN EVENT CARD (OUTER BOX) */
.tribe-events-widget .tribe-events-widget-events-list__event-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    background-color: #ffffff !important;
    border-radius: 1rem !important;
    margin-bottom: 1rem !important;
    width: 100% !important;
}

/* 3. DATE CONTAINER (SCALED UP) */
.tribe-events-widget .tribe-events-widget-events-list__event-date-tag {
    background: var(--primary) !important; 
    padding: 0 !important;
    border-radius: 0.75rem !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    flex-shrink: 0 !important;
    overflow: hidden !important;
}

/* 4. VERTICAL ALIGNMENT FIX */
.tribe-events-widget .tribe-events-widget-events-list__event-date-tag-datetime {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    height: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
}

/* Month Text Style */
.tribe-events-widget .tribe-events-widget-events-list__event-date-tag-month {
    color: #ffffff !important;
    font-size: 1.2rem !important;
    text-transform: uppercase !important;
    font-weight: bold !important;
    margin-bottom: 0.2rem !important;
    display: block !important;
}

/* Day Number Text Style */
.tribe-events-widget .tribe-events-widget-events-list__event-date-tag-daynum {
    color: #ffffff !important;
    font-weight: 800 !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 5. EVENT DETAILS (RIGHT SIDE) */
.tribe-events-widget .tribe-events-widget-events-list__event-wrapper {
    margin: 0 !important;
    padding: 0 0 0 1.5rem !important;
    flex-grow: 1 !important;
}

/* Title Styling */
.tribe-events-widget .tribe-events-widget-events-list__event-title {
    font-weight: 800 !important;
    margin: 0 0 0.25rem 1rem !important;
    line-height: 1.2 !important;
}

.tribe-events-widget .tribe-events-widget-events-list__event-title a {
    color: var(--charcoal) !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

/* Time Styling */
.tribe-events-widget .tribe-events-widget-events-list__event-datetime-wrapper {
    font-size: 1.2rem !important;
    color: #666 !important;
    margin: 0 0 0 1rem !important;
}

/* 6. RESET FOR GLOBAL COLUMNS */
.tribe-events-widget .tribe-common-g-col {
    padding: 0 !important;
    margin: 0 !important;
}


@media (min-width: 766px) { 
	.tribe-events-widget .tribe-events-widget-events-list__event-title {
	font-size: 2.5rem !important;
	}
	.tribe-events-widget .tribe-events-widget-events-list__event-row {
    padding: 2rem !important;
	}
	.tribe-events-widget .tribe-events-widget-events-list__event-date-tag-daynum {
    font-size: 2.5rem !important;
	}
	.tribe-events-widget .tribe-events-widget-events-list__event-date-tag {
    min-width: 6rem !important;
    max-width: 6rem !important;
    height: 6rem !important;
	}
}
@media (max-width: 767px) { 
	.tribe-events-widget .tribe-events-widget-events-list__event-title {
	font-size: 1.2rem !important;
	}
	.tribe-events-widget .tribe-events-widget-events-list__event-row {
    padding: 1rem !important;
	}
	.tribe-events-widget .tribe-events-widget-events-list__event-date-tag {
    min-width: 4rem !important;
    max-width: 4rem !important;
    height: 4rem !important;
	}
}






/* EVENTS CALENDAR OVERRIDES */
/* 1. GLOBAL VARIABLES & RESET */
.tribe-common, 
.tribe-events, 
.tribe-events-view {
    --tec-color-text-primary: var(--charcoal);
    --tec-color-accent-primary: var(--primary);
    --tec-color-link: var(--primary);
    --tec-border-radius-default: 1rem !important;
}

/* Clear Google Recaptcha and fix button styles */
.grecaptcha-badge { display: none !important; } 

.tribe-common button { 
    background: white !important;
    border: 1px solid #eee !important;
    border-radius: 1rem !important;
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
}

/* 2. HEADER & "WEIRD LINES" FIX */
.tribe-events-calendar-month__header-column {
    border-top: none !important; /* Removes lines above M, T, W... */
}

.tribe-events-calendar-month__header-column-title,
.tribe-events-c-top-bar__datepicker-button {
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
    color: var(--charcoal) !important;
}

/* 3. CALENDAR GRID & HOVER EFFECTS */
.tribe-common.tribe-events.tribe-events-view {
    border-radius: 1rem !important;
    overflow: hidden; 
    border: 1px solid #eee;
}

/* CELL HOVER LINE FIX */
/* Targeting the specific pseudo-element that creates the bottom line */
.tribe-events-calendar-month__day-cell--desktop:hover:after,
.tribe-events-calendar-month__day-cell--desktop:after {
    background-color: var(--primary) !important;
    height: 3px !important;
    opacity: 1 !important;
}

/* Today's Date Highlight */
.tribe-events-calendar-month__day--today .tribe-events-calendar-month__day-date-daynum {
    background-color: var(--primary) !important;
    color: #fff !important;
    border-radius: 50%;
    padding: 5px;

}

/* 4. EVENT TEXT SIZE (GRID) */
.tribe-events-calendar-month__event-title,
.tribe-events-calendar-month__event-title-link {
    font-size: 1.2rem !important; 
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    color: var(--charcoal) !important;
}

.tribe-events-calendar-month__event-datetime {
    font-size: 0.95rem !important;
    color: var(--charcoal) !important;
}

/* 5. TOOLTIP / POPOVER STYLING */
.tribe-events-calendar-month__event-tooltip,
.tribe-events-tooltip,
.tribe-common-g-templated-component__content {
    border-radius: 1rem !important;
    padding: 20px !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1) !important;
}

.tribe-events-calendar-month__event-tooltip-title,
.tribe-events-tooltip__title {
    font-size: 1.4rem !important; 
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
    color: var(--charcoal) !important;
}

.tribe-events-calendar-month__event-tooltip-description,
.tribe-events-tooltip__description {
    font-size: 1.1rem !important; 
    line-height: 1.6 !important;
    font-family: 'Montserrat', sans-serif !important;
}

/* 6. DATEPICKER / MONTH PICKER FIX */
/* Fix the "White on White" and text colors */
.tribe-events .datepicker {
    font-family: 'Montserrat', sans-serif !important;
}

/* All months text */
.tribe-events .datepicker .month,
.tribe-events .datepicker .year,
.tribe-events .datepicker .day {
    color: var(--charcoal) !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
}

/* The Active (Selected) Month/Day */
.tribe-events .datepicker .month.active,
.tribe-events .datepicker .year.active,
.tribe-events .datepicker .day.active {
    background-color: var(--primary) !important;
    background-image: none !important; /* Removes default gradients */
    color: #ffffff !important;
    border-radius: 0.5rem !important;
}

/* Hover state for items in picker */
.tribe-events .datepicker .month:hover,
.tribe-events .datepicker .year:hover,
.tribe-events .datepicker .day:hover {
    background: #f5f5f5 !important;
}

/* Fix the Top "Switch" and Nav arrows */
.tribe-events .datepicker .datepicker-switch,
.tribe-events .datepicker .prev,
.tribe-events .datepicker .next {
    color: var(--charcoal) !important;
    font-weight: 700 !important;
}

.datepicker-grid { background-white; margin-top: 0.5rem; }
.tribe-events-calendar-month__header-column, 
.tribe-events-calendar-month__header-column * { 
	width: 100% !important; 
	text-align: center !important; 
}

.tribe-common-c-btn__clear.tribe-common-h3 { border: 0px !important; }

.tribe-events .tribe-events-calendar-month__calendar-event-title-link, .tribe-events .tribe-events-calendar-month__calendar-event-tooltip-title-link,
.tribe-events .tribe-events-calendar-month__day-date-daynum {
    color: var(--charcoal) !important;
}

.tooltipster-base.tribe-events-tooltips-theme {
	font-size: 1rem !important;
}




/* make non elementor buttons and input look like the styled buttons */

input[type=text],
input[type=email],
input[type=tel],
textarea,
.wpbs-form-field-input input[type=text],
.wpbs-form-field-input input[type=email] {
	font-size: 1rem !important;
	border-radius: 2.6rem !important;
	padding: 1rem 2rem !important;
}
input[type=text],
input[type=email],
input[type=tel],
textarea{
	padding: 2rem !important;
}


input[type=submit], #wpbs-form-submit-1 {
	font-family: Montserrat !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    color: var(--white) !important;
    letter-spacing: 0.1rem !important;
    text-transform: uppercase !important;
    padding: 1.5rem 3rem !important;
    border-radius: 2.6rem !important;
    background-color: var(--e-global-color-primary) !important;
    display: inline-block !important;
    align-self: center !important;
	border: none !important;
}

input[type=submit]:hover {
	    background-color: var(--e-global-color-a111286);
}



/* BOOKING CALENDAR */
/* BOOKING CALENDAR */

@media screen and (min-width: 1026px) {
   body .wpbs-main-wrapper-calendar-1:not(.wpbs-main-wrapper-form-0) .wpbs-form-container, .wpbs-payment-confirmation, .wpbs-form-confirmation-message {
        width: calc(50% - 80px) !important;
        margin-left: 80px !important;
    }
}

.wpbs-main-wrapper .wpbs-form-container {
    max-width: 2000px !important;
}

/* 1. Form Field Focus: Green Outline */

input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
textarea:focus,
.wpbs-main-wrapper input:focus, 
.wpbs-main-wrapper textarea:focus,
.wpbs-main-wrapper select:focus {
    outline: 2px solid #62C03A !important;
    border-color: #62C03A !important;
    outline-offset: 2px;
}

/* 2. Calendar Container Cleanup */
.wpbs-calendar {
    background: #fff !important;
    border: none !important;

}

/* 3. Remove Ugly Table Borders */
.wpbs-calendar table, 
.wpbs-calendar tr, 
.wpbs-calendar td, 
.wpbs-calendar th {
    border: none !important;
    border-collapse: collapse !important;
}

/* 4. Calendar Header & Navigation */
.wpbs-calendar-header {
    background: transparent !important;
    color: #000 !important; 
    font-family: inherit;
    font-weight: 700;
    margin-bottom: 10px;
}

.wpbs-calendar-header select {
    border-radius: 5px;
    padding: 2px 5px;
}

/* 5. Date Styling (Making them circles/rounded squares) */
.wpbs-date-inner {
    border-radius: 6px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

/* Space out the grid slightly */
.wpbs-calendar td {
    padding: 2px !important;
}


.wpbs-legend-item-icon-color {
    border-radius: 3px !important;
}


/* 7. Style the 'Gap' (Empty dates at start/end of month) */
.wpbs-date.wpbs-gap .wpbs-date-inner,
.wpbs-container .wpbs-calendars .wpbs-calendar table tr td .wpbs-date.wpbs-gap {
   background: #fff !important;
}

.wpbs-form-selected-date
{
    width: 50%;
    float: left;
    color: white;
}

.wpbs-container { 
    background: #fff !important;
    padding: 4rem 2rem;
    border-radius: 2rem;
}

.wpbs-calendar { width: calc(50% - 10px) !important; }

.wpbs-main-wrapper-calendar-1:not(.wpbs-main-wrapper-form-0) .wpbs-form-container {
         margin-top: 3rem !important;
}
.wpbs-form-field { color: white; }



.wpbs-container.wpbs-calendar-1 .wpbs-legend-item-icon-2 div:first-of-type {
    background-color: #CF5C36 !important;
}

.wpbs-main-wrapper .wpbs-form-container { pading-bottom: 0px !important}
.wpbs-main-wrapper .wpbs-form-container .wpbs-form-field.wpbs-form-submit-button {
    padding-bottom: 0px !important;
}


@media screen and (max-width: 1024px) {
    .wpbs-main-wrapper-calendar-1:not(.wpbs-main-wrapper-form-0) .wpbs-container {
        float: left;
        max-width: 100% !important;
        width: 100% !important;
    }
    body .wpbs-main-wrapper-calendar-1:not(.wpbs-main-wrapper-form-0) .wpbs-form-container, .wpbs-payment-confirmation, .wpbs-form-confirmation-message {
        float: left;
        width: 100% !important;
        margin-left: 0px !important;
        clear: none !important;
    }
}

.wpbs-form-confirmation-message { color: white !important; }

/* calendar colors */
body .wpbs-container.wpbs-calendar-1 .wpbs-legend-item-icon-1 div:first-of-type
{
        background-color: #e0f2d8 !important;
}
boby .wpbs-container.wpbs-calendar-1 .wpbs-legend-item-icon-2 div:first-of-type {
        background-color: #F4442E !important;
}

.wpbs-legend-item-icon-3 .wpbs-legend-item-icon-color:first-child svg {
    fill: #e0f2d8 !important;
}
.wpbs-legend-item-icon-3 .wpbs-legend-item-icon-color:last-child svg {
    fill: #F4442E !important;
}


/* --- SPLIT CELL COLORS --- */

/* Legend Item 3: Top-Left (Green) and Bottom-Right (Red) */
/* Top-Left Triangle */
.wpbs-legend-item-icon-3 .wpbs-legend-item-icon-color:nth-child(1) svg polygon {
    fill: #e0f2d8 !important; 
}
/* Bottom-Right Triangle */
.wpbs-legend-item-icon-3 .wpbs-legend-item-icon-color:nth-child(2) svg polygon {
    fill: #f7c5c5 !important; 
}

/* Legend Item 4: Top-Left (Red) and Bottom-Right (Green) */
/* Top-Left Triangle */
.wpbs-legend-item-icon-4 .wpbs-legend-item-icon-color:nth-child(1) svg polygon {
    fill: #f7c5c5 !important; 
}
/* Bottom-Right Triangle */
.wpbs-legend-item-icon-4 .wpbs-legend-item-icon-color:nth-child(2) svg polygon {
    fill: #e0f2d8 !important; 
}

/* --- OPTIONAL: HOVER STATE --- */
/* This ensures the split colors stay consistent when hovering over them */
.wpbs-date:hover .wpbs-legend-item-icon-color svg polygon {
    fill: #62C03A !important;
    border-radius: 2px;
}

@media screen and (max-width: 767px) {
.wpbs-calendar { width: 100% !important; max-width: 100% !important; }    
    
.wpbs-date wpbs-legend-item-1,
.wpbs-date wpbs-legend-item-2,
.wpbs-date wpbs-legend-item-3,
.wpbs-date wpbs-legend-item-4 {
    aspect-ratio: 1/1;
}
}


.wpbs-container .wpbs-calendars .wpbs-calendar table tr td .wpbs-date {
    border-radius: 4px;
}/* End custom CSS */