/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/
a {
  color: inherit;
}

.dms-listing-button {
  transition: .1s;
}

.listing-main-image-container .dms-hover-indicators {
  bottom: 45px;
  z-index: 99;
  padding-left: 25px;
  padding-right: 25px;
}

.listing-main-image-container .dms-hover-indicators .dms-hover-indicator {
  height: 7px;
  margin-right: 0;
}

.ts-wrapper .ts-dropdown .ts-dropdown-content .option, 
.ts-wrapper.single .ts-dropdown .ts-dropdown-content .option {
  justify-content: center;
}

body .ts-wrapper .ts-dropdown, 
body .ts-wrapper.single .ts-dropdown {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}

.ts-wrapper .ts-dropdown, .ts-wrapper.single .ts-dropdown {
  overflow: hidden;
}

.ts-wrapper .ts-dropdown .ts-dropdown-content .option .term-count, 
.ts-wrapper.single .ts-dropdown .ts-dropdown-content .option .term-count {
  display: none;
}
body .dms_feature-checkbox-tab-content li::before {
  background-image: url(assets/images/checkmark-circle.svg);
  height: 20px;
  position: absolute;
  left: 0;
  top: 5px;
}

body .dms_feature-checkbox-tab-content li {
  position: relative;
  padding-left: 30px;
}

body .swiper-wrapper img {
  display:flex;
}

body .dms-image-category-slider .swiper-pagination {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-left: 55px;
  padding-right: 55px;  
  bottom: 40px;
}

body .dms-image-category-slider .swiper-pagination .swiper-pagination-bullet {
  flex: 1 1 auto;
  height: 12px;
  margin: 0;
  border-radius: 0;
  background: #FFF;
  opacity: 1;
}

body .dms-image-category-slider .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: var( --e-global-color-accent );
}

body .dms-boat-secondary-slider img {
  border-radius: 0px;
}

body .dms-boat-secondary-slider .dms-image-category-slider .swiper-pagination {
  position: relative;
  bottom: initial;
  padding-left: 40px;
  padding-right: 160px;
  margin-top: 35px;
}

body .dms-single-image-category-navigation-prev svg,
body .dms-single-image-category-navigation-next svg {
  color: #FFF;
  fill: #FFF;
  width: 100px;
}


body .dms-boat-secondary-slider .dms-image-category-slider {
  position: relative;
  padding-bottom: 15px;
}

body .dms-boat-secondary-slider .dms-image-category-slider .dms-single-image-category-navigation {
  width: 100px;
  position: absolute;
  right: 0;
  bottom: -3px;
  display: flex;
  justify-content: space-around;
  z-index: 999;
}

body .dms-boat-secondary-slider .dms-image-category-slider .dms-single-image-category-navigation svg {
  height: 40px;
  width: 40px;
}


.dms-boat-breadcrumbs {
  padding-left: 0;
  margin-left: 0;
}

.dms-boat-breadcrumbs a {
  color: #FFF;
}

.dms-boat-breadcrumbs li {
  display: inline-block;
}

.dms-boat-breadcrumbs li + li::before {
    content: " / ";
    padding: 0 6px;
    color: #FFF;
}

.dms-price-range-widget {
  position: relative;
}

.dms-price-range-widget .dms-price-toggle {
    padding: 9px 40px 9px 14px;
    cursor: pointer;
    display: inline-block;

    background-color: #FFFFFF;
    color: rgba(137, 137, 137, 0.5);
    border-radius: 0;
    border: 1px solid rgba(0,0,0,.09);
    transition: none;
}

.dms-price-range-widget .dms-price-toggle:hover { 
  background-color: #F7F7F7;
  color: rgba(137, 137, 137, 0.5);
}

.dms-price-range-widget .dms-price-slider-wrapper {
    margin-top: 10px;
    max-width: 400px;

    position: absolute;
    bottom: -40px;
    left: 0;
    right: 0;
    height: 40px;
    background-color: #FFFFFF;
    color: rgba(137, 137, 137, 0.5);
}

.dms-price-range-widget .dms-price-values {
    margin-bottom: 8px;
    font-weight: 600;
    text-align: center;
}

.dms-price-range-widget .dms-price-left,
.dms-price-range-widget .dms-price-right {
    display: inline-block;
}

.dms-price-range-widget .dms-price-slider {
    height: 2px;
    border: 0;
    background-color: #898989;
}

.dms-price-range-widget .dms-price-slider .ui-widget-header {
  background-color: var( --e-global-color-accent );
}

.dms-price-toggle:after {
  border-style: solid;
  content: " ";
  display: block;
  height: 0;
  margin-top: -2px;
  position: absolute;
  right: 12px;
  top: 50%;
  width: 0;
  border-color: #000000 rgba(0,0,0,0) rgba(0,0,0,0);
  border-width: 4px 4px 0;
  right: 12px;
}

/* jQuery UI overrides for a nicer handle look */
.dms-price-range-widget .ui-slider .ui-slider-handle {
    width: 8px;
    height: 8px;
    top: -3px;
    border-radius: 50%;
    border: 0;
    background: #000;
    box-shadow: none;
    margin-left: -4px;
}


.dms-price-range-widget.is-shown .dms-price-toggle {
  border-radius: 16px 16px 16px 16px;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom: 0;
}

.dms-price-range-widget.is-shown .dms-price-slider-wrapper {
  border-bottom-left-radius: 16px;
  border-bottom-right-radius: 16px;
  padding-left: 15px;
  padding-right: 15px;
  box-shadow: 2px 3px 4px rgba(0,0,0,.1);
  border: 1px solid #d0d0d0;
  border-top: 0;
}

.dms-price-values {
  display: flex;
  justify-content: center;
  gap: 5px;
}

.dms-price-sep {
  font-size: 10px;
}

.ts-wrapper .ts-dropdown {
  box-shadow: 2px 3px 4px rgba(0,0,0,.1);
}


[type="button"], [type="submit"], button {
  border-radius: 100px;
  background-color: var( --e-global-color-accent );
  color: #000;
  border: 0;
  font-weight: bold;
  transition: none;
}

[type="button"]:hover, [type="submit"]:hover, button:hover {
  background-color: #FFF;
  color: #000;
}

body .dms-modal .dms-modal__header {
  border-bottom: 0;
  align-items: start;
}

body .dms-modal .dms-modal__header h2 {
  text-transform: uppercase;
}

body .dms-modal .dms-modal__container {
  max-width: 1060px;
  width: 90%;
}

body .dms-modal .dms-modal__container form .input {
  height: auto;
}


body:not(.elementor-editor-active) .dms-boat-shop-boat-info-row {
  display: none;
}

body .select:not(.is-multiple):not(.is-loading)::after {
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 9px solid #000000;
  border-right: 0;
  transform: none;
  top: 50%;
  margin-top: 0px;
}



body header .elementor-sticky--active {
  z-index: 999 !important;
}

body .erinyen .sr7-bullet {
  background-image: none !important;
  background-color: #FFF !important;
  border: 1px solid #FFF !important;
  width: 20px !important;
}

body .erinyen .sr7-bullet.selected {
  background-color: var( --e-global-color-accent ) !important;
  background-image: none !important;
  border-color: var( --e-global-color-accent ) !important;
}

body .erinyen.sr7-bullets::before { 
  border-radius: 45px !important; 
}

main#content, body.elementor-editor-active .elementor-edit-area,
#dms-vdp-listing-container{
  margin-top: 190px;
}

.home main#content {
  margin-top: 110px;
}



@media(max-width: 768px){
  .dms-boat-breadcrumbs {
    font-size: 12px;
  }
  
  body main#content, body.elementor-editor-active .elementor-edit-area, body #dms-vdp-listing-container {
    margin-top: 90px;
  }

  body .dms-modal .dms-modal__header h2 {
    font-size: 36px;
  }

  body .dms_feature-checkbox-tab-content {
    columns: 1;
  }

  body #dms-vdp-listing-container {
    padding-left: 20px;
    padding-right: 20px;
  }

  body .dms_feature-checkbox-tab-content li {
    font-size: 11px;
  }

 body .dms-boat-main-image .dms-single-image-category-gallery  {
  margin-bottom: 20px;
 }

  body .dms-boat-main-image .swiper-pagination {
    display: none;
  }

  body .dms-boat-secondary-slider img {
    border-radius: 3px;
  }

  body .dms-boat-secondary-slider .dms-image-category-slider .swiper-pagination {
    margin-top: 15px;
    margin-bottom: 20px;
    padding-left: 0;
    padding-right: 70px;
  }

  body .dms-image-category-slider .swiper-pagination .swiper-pagination-bullet {
    height: 3px;
  }

  body .dms-boat-secondary-slider .dms-image-category-slider .dms-single-image-category-navigation svg {
    height: 15px;
    width: 15px;
  }

  body .dms-boat-secondary-slider .dms-image-category-slider .dms-single-image-category-navigation {
    width: 40px;
    bottom: 23px;
  }
}

@media(min-width: 768px){
  .dms-boat-fit-width {
    width: fit-content;
  }
}

@media(max-width: 400px){
  body #dms-vdp-listing-container {
    max-width: 310px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }
}

.dms-boat-additional-search-row {
  display: none;
}





/* Inner Pages Css */
.elementor-widget-heading .elementor-heading-title strong {
    color: #FF0100;
}



.blur-box .elementor-widget-text-editor {
    position: absolute;
    top: 0;
    background: #FF0100;
    /* display: none; */
    height: 100%;
    width: 100%;
    /* text-align: center; */
    padding: 11px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    opacity: 0;
    transition: all ease .5s;
}

.blur-box {
    overflow: hidden;
    background-color: #000000B8;
    border: 1px solid #FFFFFF;
    padding: 40px 12px;
    backdrop-filter: blur(830px);
    background-position: center;
    background-repeat: no-repeat;
    align-items: center !important;
    justify-content: center;
}

.blur-box::after {
    content: "";
    background: url(https://www.performanceboatcenter.com/wp-content/uploads/2026/04/Rectangle-117.png) no-repeat center;
    background-size: cover;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: .3;
    z-index: -1;
}

.blur-box figure.elementor-image-box-img {
    background: #ffffff26;
    border-radius: 50%;
    height: 105px;
    width: 105px !important;
    padding: 6px;
    backdrop-filter: blur(16px);
}

.blur-box .elementor-widget-text-editor strong {
    text-transform: uppercase;
    font-family: 'microgramma-extended';
    line-height: 24px;
    text-align: center;
    display: block;
    font-size: 18px;
}

.blur-box .elementor-widget-text-editor ul {
    padding-left: 40px;
    font-size: 17px;
}

.blur-box:hover .elementor-widget-text-editor {
    opacity: 1;
    transition: all ease .5s;
}





.big-box .blur-box figure.elementor-image-box-img {
    width: 131px !important;
    background: #0000;
    backdrop-filter: none !important;
}

.big-box .blur-box h3.elementor-image-box-title {
    font-size: 24px !important;
    max-width: 90%;
    margin: 20px auto;
}

.gradient-acc.elementor-widget-n-accordion .e-n-accordion-item {
    background: url(https://www.performanceboatcenter.com/wp-content/uploads/2026/04/acc-bg.jpg) no-repeat center;
    margin-bottom: 20px;
    padding: 15px;
    background-size: cover;
}

.gradient-acc .e-n-accordion-item-title-text {
    font-family: 'eurostile';
    text-transform: uppercase;
    font-weight: 500;
    font-size: 18px;
}

.gradient-acc .elementor-widget-text-editor {
    font-size: 16px;
    padding: 0 10px;
    color: #2A2A2A;
    font-weight: 400;
}

.gradient-acc .e-n-accordion-item-title {
    display: flex;
    justify-content: space-between;
}


.silver-box:hover {
    background: #FF0100;
	transition: all ease .6s;
}


.silver-box {
    background: url(https://www.performanceboatcenter.com/wp-content/uploads/2026/04/Group-217.jpg) no-repeat center;
    background-size: cover;
    padding: 28px;
	transition: all ease .6s;
}

.silver-box h2 {
    text-transform: uppercase;
    font-family: 'microgramma-extended';
    font-weight: 600;
    font-size: 22px;
    text-align: center;
    transform: translateY(200%);
    transition: all ease .6s;
}

.silver-box  ul {
    /* display: none; */
    font-size: 16px;
    text-transform: uppercase;
    /* opacity: 0; */
    transform: translateY(140%);
    transition: all ease 0.6s;
}

.silver-box {
    overflow: hidden;
}

.silver-box:hover ul {
    transform: none;
    transition: all ease 0.6s;
}

.silver-box:hover h2 {
    transform: translateY(0);
    transition: all ease .6s;
}



.timeline-box .elementor-image-box-content {
    display: flex;
    align-items: start;
    justify-content: center;
    gap: 55px;
    flex-direction: row-reverse;
}

.timeline-box .elementor-image-box-description {
  
    background: url(https://www.performanceboatcenter.com/wp-content/uploads/2026/04/Vector-7.png);
    background-size: 100%;
    min-height: 100px;
    padding-right: 58px;
    width: 30%;
    text-align: left;
    color: #fff;
    font-size: 19px;
    line-height: 23px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    left: -60px;
    padding-left: 20px;
}

.timeline-box h3.elementor-image-box-title {
    width: 25%;
    text-align: left;
    font-size: 19px;
    color: #FF0100;
    margin-top: 0;
    position: relative;
}

.timeline-box h3.elementor-image-box-title::before {
    content: "";
    background: url(https://www.performanceboatcenter.com/wp-content/uploads/2026/04/radio.png) no-repeat center;
    background-size: contain;
    height: 17px;
    width: 17px;
    position: absolute;
    right: auto;
    z-index: 1;
    left: -89px;
}

.timeline-box .elementor-image-box-description::before {
    content: "";
    background: #8C949D;
    height: calc(100% + 50px);
    width: 1px;
    position: absolute;
    right: -36px;
    z-index: 0;
    bottom: -50px;
    left: auto;
}



.timeline-box:nth-of-type(2n+1) .elementor-image-box-content {
    flex-direction: row;
}

.timeline-box:nth-of-type(2n+1) p.elementor-image-box-description {
    padding-right: 0;
    padding-left: 80px;
    background: url(https://www.performanceboatcenter.com/wp-content/uploads/2026/04/Vector-6.png) no-repeat;
}

.timeline-box:nth-of-type(2n+1) .elementor-image-box-description::before {right: auto;left: -24px;}

.timeline-box:nth-of-type(2n+1) h3.elementor-image-box-title {text-align: right;width: 25%;}



.timeline-box:nth-of-type(2n+1) .elementor-image-box-description {
    right: 0;
    left: 0;
}

.timeline-box:nth-of-type(2n+1) h3.elementor-image-box-title::before {
    left: auto;
    right: -40px;
}

.timeline-box:last-child .elementor-image-box-description::before {
    display: none;
}


.blur-box .elementor-widget-text-editor {
    left: 0;
}

@media(max-width:767px){
	.timeline-box .elementor-image-box-description {
    width: 90%;
    padding: 12px !important;
    left: 0;
    right: 0;
    background: url(https://www.performanceboatcenter.com/wp-content/uploads/2026/04/Group-219-1.png) no-repeat !important;
    background-size: cover !important;
    padding: 10;
    text-align: center;
}

.timeline-box .elementor-image-box-content {
    flex-direction: column !important;
    justify-content: center;
    align-items: center;
    gap: 10px !important;
}

.timeline-box h3.elementor-image-box-title {
    margin-bottom: 0 !important;
}

.timeline-box h3.elementor-image-box-title {
    text-align: center !important;
}

.timeline-box h3.elementor-image-box-title::before {
    display: none;
}
	.e-parent>.e-con-inner {
    padding-left: 0px;
    padding-right: 0px;
}
	.elementor-widget-image-carousel.e-widget-swiper {
    padding: 0px 70px !important;
}
	.mec-dates-grid {gap: 1px !important;}
	.timeline-box .elementor-image-box-description::before {
    display: none;
}
	
	.events-wrapper .elementor-widget-image {
    display: none;
}


.event-box::before {
    background: url(https://www.performanceboatcenter.com/wp-content/uploads/2026/04/Group-220.png) no-repeat center;
    background-size: 240%;
    content: "";
    height: 100%;
    width: 120%;
    top: 0;
    left: 0;
}

.event-box {
    width: 100%;
    margin: 0 auto;
    padding: 27px 46px !important;
}

.elementor-32 .elementor-element.elementor-element-bf15fbd {--row-gap: 50px;.elementor-32 .elementor-element.elementor-element-bf15fbd: 0;.elementor-32 .elementor-element.elementor-element-bf15fbd: 0;}

.event-box {
    gap: 5px;
}

.event-box h2.elementor-heading-title.elementor-size-default {
    font-size: 21px !important;
    line-height: 26px;
    padding-left: 0;
}

.event-box p {
    font-size: 16px;
}
body .big-box .blur-box figure.elementor-image-box-img {
    height: fit-content !important;
    margin-bottom: 0 !important;
}

.blur-box img {
    height: 80px;
    width: 80px;
    margin: 0 auto;
}

body .big-box .blur-box figure.elementor-image-box-img {
    width: 100% !important;
}

.big-box .blur-box h3.elementor-image-box-title {
    max-width: 100% !important;
    margin: 10px 0;
    font-size: 20px !important;
}
	.event-box {
    position: relative;
    clip-path: polygon(10% 0%, 100% 0%, 90% 100%, 0% 100%);
}
	.event-box::before {
    width: 100%;
}
	.mec-events-detail {
    padding: 20px;
}
.event-box a.elementor-button.elementor-size-sm {
    font-size: 17px !important;
    padding: 10px 35px !important;
    width: 100% !important;
}
	
	
}

.dms-mm-make-list .swiper-slide {
  display: flex;
  justify-content: center;
}




.tabs-area .e-n-tab-title[aria-selected="true"],.tabs-area .elementor-widget-n-tabs.e-n-tabs-mobile .e-n-tab-title[aria-selected=true] {
    background: linear-gradient(90deg, rgba(225, 6, 0, 0.22) 0%, rgba(225, 6, 0, 0) 100%) !important;
    border-left: 4px solid var(--n-tabs-title-background-color-active);
    }

.tabs-area .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text{
    color: #FFD400;
}

.tabs-area .elementor-widget-n-tabs .e-n-tab-title-text {
    font-family: 'eurostile';
    text-transform: uppercase;
    font-size: 16px;
}

.tabs-area .elementor-widget-n-tabs .e-n-tab-title {
    padding: 17px 0px;
    text-align: left !important;
    justify-content: start;
    padding-left: 40px;
    background: #0000 !important;
}

.tabs-area .elementor-widget-n-tabs .e-n-tab-title::before,.tabs-area .elementor-widget-n-tabs.e-n-tabs-mobile .e-n-tab-title::before {
      counter-increment: section;
  content: "" counter(section) "";
}

.e-n-tab-title[aria-selected="true"]::before{
    color:#FFD400;
}

.tabs-area{
      counter-reset: section;

}

.tabs-area .elementor-widget.elementor-widget-n-tabs {
    border-radius: 10px;
    overflow: hidden;
}

.tabs-area .e-n-tabs-heading {
    /* padding-top: 20px; */
    /* padding-bottom: 20px; */
    /* height: 100%; */
    justify-content: space-between !important;
}

.tabs-area .e-n-tabs {
    background: #080808;
    border-radius: 20px;
}

add_filter( 'sanitize_hex_color', function( $color, $original ) {
    set_transient( 'mec_sanitize_' . get_current_user_id(), array(
        'original' => $original,
        'result'   => $color,
    ), 60 );
    return $color;
}, 10, 2 );

add_action( 'admin_notices', function() {
    $data = get_transient( 'mec_sanitize_' . get_current_user_id() );
    if ( ! $data ) return;
    delete_transient( 'mec_sanitize_' . get_current_user_id() );
    echo '<div class="notice notice-warning" style="font-family:monospace;font-size:13px;">';
    echo '<pre>' . esc_html( print_r( $data, true ) ) . '</pre>';
    echo '</div>';
} );

/**
 * Save event category color — runs at priority 99 to ensure it fires last
 * and the value is fully decoded before sanitization.
 */
add_action( 'edited_event_category', function( $term_id, $tt_id ) {
    if ( ! isset( $_POST['event_category_color'] ) || empty( $_POST['event_category_color'] ) ) {
        return;
    }
    $color = sanitize_hex_color( urldecode( $_POST['event_category_color'] ) );
    if ( $color ) {
        update_term_meta( $term_id, 'event_category_color', $color );
    }
}, 99, 2 );

add_action( 'create_event_category', function( $term_id, $tt_id ) {
    if ( ! isset( $_POST['event_category_color'] ) || empty( $_POST['event_category_color'] ) ) {
        return;
    }
    $color = sanitize_hex_color( urldecode( $_POST['event_category_color'] ) );
    if ( $color ) {
        update_term_meta( $term_id, 'event_category_color', $color );
    }
}, 99, 2 );
