/* *************************** */
/* Containers */
/* *************************** */
.container { width: 100%; }
.content { width: 72%; margin: auto; }
.hide_on_desktop { display: none; }
.page { margin-bottom: 0 !important; }

/* *************************** */
/* Form Input Fields */
/* *************************** */
label { color: #FFFFFF; font-family: 'Montserrat', sans-serif; font-weight: 500; margin-bottom: 8px; width: 100%; display: block; font-size: 14px; }
label span.asteriks { color: #D4FF00; }

input,
textarea { background: transparent; border: 1px solid rgba(178,189,198,0.5) !important; border-radius: 8px !important; color: #FFFFFF !important; width: 100%; font-size: 14px; padding: 11px !important; outline: 0; margin-bottom: 14px; font-weight: 400; }

input::placeholder,
textarea::placeholder { color: #949FA8; }

input:focus::placeholder,
textarea:focus::placeholder { color: transparent; }

input[type='submit'] { cursor: pointer; background: #D4FF00; color: #002342 !important; text-transform: uppercase; font-weight: 700; text-align: center; border: none !important; border-radius: 400px !important; padding: 16px 0 !important; transition: 0.3s all; }
input[type='submit']:hover { background: #FFFFFF; transition: 0.3s all; }

body:not(.logged-in) .hide_not_logged_in { display: none !important; }

.af-previous-button[disabled],
.acf-step:first-child.active ~ .af-previous-button {
  display: none !important;
}


/* *************************** */
/* Typography */
/* *************************** */
body { font-size: 14px; font-family: 'Inter', sans-serif; }

h1,h2,h3,h4,h5,h6 { margin: 0; text-transform: uppercase; font-family: 'Montserrat', sans-serif; letter-spacing: -0.5px; font-weight: 700; color: #002342; }
h1 { font-size: 48px; line-height: 54px; letter-spacing: -0.5px; }
h2 { font-size: 36px; line-height: 42px; letter-spacing: -0.5px; }
h3 { font-size: 30px; line-height: 36px; letter-spacing: -0.5px; }
h4 { font-size: 24px; line-height: 30px; letter-spacing: -0.5px; }
h5 { font-size: 21px; line-height: 27px; letter-spacing: -0.5px; }
h6 { font-size: 18px; line-height: 24px; letter-spacing: -0.5px; }
p { font-size: 14px; line-height: 20px; font-weight: 400; margin: 0; font-family: 'Inter', sans-serif; }

a { color: #005CAB !important; text-decoration: none !important; font-family: 'Montserrat', sans-serif; font-weight: 500 !important; transition: 0.3s all; font-size: 14px; }
a:hover { color: #005CAB !important; transition: 0.3s all; }

.button { padding: 15px 27px !important; margin-top: 20px; background: #D4FF00; color: #002342 !important; text-transform: uppercase; font-family: 'Montserrat', sans-serif; letter-spacing: 0.5px; font-weight: 600 !important; display: flex; align-items: center; border-radius: 400px !important; transition: 0.3s all; }
.button:hover { background: #FFFFFF; transition: 0.3s all; }

.button svg { width: 8px; margin-left: 4px; }
.button.full_width { padding: 12px 0 !important; display: block; text-align: center; }

.button.orange { background: #FF7B00; color: #FFFFFF !important; transition: 0.3s all; }
.button.orange:hover { background: #FFFFFF; color: #002342 !important; transition: 0.3s all; }

.button.inline { display: inline-flex; }
.button.blue { background: #005CAB !important; color: #FFFFFF !important; }
.button.blue svg path { fill: #FFFFFF !important; }

/* HTML Button */
button { cursor: pointer; }
button.button { border: none; }

.white { color: #FFFFFF !important; }

/* *************************** */
/* Search Page */
/* *************************** */
body.page-id-374 { background: #002342; }
body.page-id-374 h3.search_title_override { text-align: center; color: #FFFFFF !important; font-size: 30px; line-height: 36px; margin-bottom: 25px; }
body.page-id-374 .no_tournament p { font-weight: 600; }

.search_container { position: relative; }
.search_container #search_input { color: #FFFFFF !important; }
.search_container .search_no_results { font-size: 12px; color: #B2BDC6; font-weight: 500; text-align: center; margin-bottom: 15px; }
.search_container .search_loading { font-size: 12px; color: #B2BDC6; font-weight: 500; text-align: center; margin-bottom: 15px; }

.search_results_list { background: #FFFFFF; border-radius: 10px; border: 4px solid #82AFD5; position: absolute; width: 100%; overflow: auto; max-height: 240px; }

.search_results_list .search_result_item:first-child { border-radius: 6px 6px 0 0; }
.search_results_list .search_result_item:last-child { border-radius: 0 0 6px 6px; }

.search_results_list .search_result_item { padding: 10px 10px; transition: 0.3s all; border-bottom: 1px solid rgba(0,35,66,0.1); display: flex; align-items: center; justify-content: flex-start; flex-wrap: wrap; width: 100%; transition: 0.3s all; }
.search_results_list .search_result_item .result_content { width: 100%; display: flex; align-items: center; flex-wrap: wrap; transition: 0.3s all; justify-content: flex-start; flex-wrap: wrap; text-align: left; line-height: 20px; color: #002342; font-family: 'Montserrat', sans-serif !important; cursor: pointer; }
.search_results_list .search_result_item .result_content p { width: 100%; }
.search_results_list .search_result_item .result_content p.result_title { font-size: 14px; font-weight: 500; }
.search_results_list .search_result_item .result_content p.result_type { font-size: 12px; }

.search_result_item:hover { background: #005CAB; transition: 0.3s all; }
.search_result_item:hover .result_content { color: #FFFFFF; transition: 0.3s all; }

/* *************************** */
/* Wizard (Blue Background) */
/* *************************** */

/* General Style */
#wizard_page { background: #002342; }

#wizard_page,
body.page-id-36,
body.page-id-372,
body.page-id-374,
body.page-id-154 { overflow: hidden !important; }

/* Only Logo Header */
header.only_logo { position: absolute; top: 0; width: 100%; padding: 10px 0; }
header.only_logo .content { text-align: center; }
header.only_logo .content svg { width: 50px; }

/* Default */
header.default { display: flex; position: fixed; width: 100%; align-items: center; z-index: 9998; padding: 0 2%; background: #002342; border-bottom: 1px solid rgba(255,255,255,0.1); }
header.default > div { width: 50%; }
header.default svg { width: 50px; }
header.default > div:last-child { text-align: right; }
header.default > div:last-child .main-navigation ul { justify-content: flex-end; align-items: center; }
header.default > div:last-child .main-navigation ul li { margin-right: 18px; }
header.default > div:last-child .main-navigation ul li:last-child { margin-right: 0; }
header.default > div:last-child .main-navigation ul li a { color: #FFFFFF !important; text-transform: uppercase; transition: 0.3s all; }
header.default > div:last-child .main-navigation ul li a:hover { color: #D4FF00 !important; transition: 0.3s all; }

header.default > div:last-child .main-navigation ul li.button { padding: 0 !important; margin-top: 0 !important; }
header.default > div:last-child .main-navigation ul li.button a { padding: 12px 20px !important; background: #D4FF00; color: #002342 !important; text-transform: uppercase; font-weight: 600 !important; display: flex; align-items: center; border-radius: 400px !important; transition: 0.3s all; }
header.default > div:last-child .main-navigation ul li.button a svg { width: 8px; margin-left: 4px; }
header.default > div:last-child .main-navigation ul li.button a:hover { background: #FFFFFF; transition: 0.3s all; }

body.page-id-36 header.default,
body.page-id-372 header.default { background: transparent; }

body.logged-in .hide_for_logged_in { display: none !important; }

.scrolled { background: #002342 !important; transition: 0.3s all; }

/* Content */
.wizard_content { height: 100vh; display: flex; align-items: center; justify-content: center; }
.wizard_content .content { position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; margin: 0 auto; width: 37%; }

.wizard_content .content a { color: #D4FF00 !important; }
.wizard_content .content a.button { color: #002342 !important; }

.wizard_content .content .title_description h2 { color: #FFFFFF; font-size: 30px !important; line-height: 36px !important; }
.wizard_content .content .title_description p { color: #B2BDC6; margin-top: 10px; }

.wizard_content .content .title_description.center h2,
.wizard_content .content .title_description.center p { text-align: center; }

.wizard_content .content .title_description .two_col { display: flex; flex-wrap: wrap; justify-content: center; }
.wizard_content .content .title_description .two_col > div { margin: 0 10px; }

.wizard_content .content .form_container { margin-top: 20px; }

.wizard_content .content .form_container label,
.wizard_content .content .form_container input { width: 100%; }

.wizard_content .content .form_container .two_col { display: flex; flex-wrap: wrap; justify-content: space-between; }
.wizard_content .content .form_container .two_col > div { width: 49%; }

.wizard_content .content .form_container .login_actions { display: flex; align-items: center; margin: 2px 0 5px 0; }
.wizard_content .content .form_container .login_actions > div { width: 50%; }

.wizard_content .content .form_container .login_actions > div:first-child { display: flex; align-items: center; }
.wizard_content .content .form_container .login_actions > div:first-child input { width: auto; margin-bottom: 0; }
.wizard_content .content .form_container .login_actions > div:first-child p { color: #B2BDC6; padding-left: 6px; }

.wizard_content .content .form_container .login_actions > div:last-child { text-align: right; }
.wizard_content .content .form_container .login_actions > div:last-child a { color: #FFFFFF; transition: 0.3s all; font-size: 13px; }
.wizard_content .content .form_container .login_actions > div:last-child a:hover { color: #D4FF00; transition: 0.3s all; }

.wizard_content .content .form_container input[type='submit'] { margin-top: 10px; }

.wizard_content .content .form_container p.error { font-size: 12px; margin-bottom: 15px; font-weight: 500; color: #D4FF00; }
.wizard_content .content .form_container p.notice { text-align: center; color: #B2BDC6; font-size: 13px; margin-top: 6px; }

.registration_success { text-align: center; }

/* Club / Tournament Review Dialog */
dialog.club-review-form-dialog { position: fixed; top: 0; left: 0; max-width: 100% !important; max-height: 100vh !important; overflow: hidden; margin: 0 !important; padding: 0 !important; width: 100vw !important; height: 100vh !important; border: none !important; box-sizing: border-box !important; }
dialog.club-review-form-dialog h2 { color: #FFFFFF; font-size: 24px !important; line-height: 30px !important; }
dialog.club-review-form-dialog h3 { color: #FFFFFF; text-transform: none !important; font-weight: 600 !important; font-size: 15px !important; }
dialog.club-review-form-dialog .acf-field .acf-label label { font-size: 15px !important; margin-bottom: 0; line-height: 20px !important; font-weight: 600 !important; }
dialog.club-review-form-dialog .af-field-instructions { font-size: 14px; color: #B2BDC6; margin-bottom: 10px !important; margin-top: 5px; }
dialog.club-review-form-dialog .af-label.acf-label { margin-bottom: 20px !important; }

/* Style Radio Button */
dialog.club-review-form-dialog ul.acf-radio-list input[type="radio"] { -webkit-appearance: none; appearance: none; width: 20px; height: 20px; border: 1px solid rgba(178,189,198,0.5) !important; border-radius: 50% !important; position: relative; background-color: transparent; cursor: pointer; }
dialog.club-review-form-dialog ul.acf-radio-list input[type="radio"]:checked::before { content: ""; width: 10px; height: 10px; background-color: #D4FF00; border-radius: 50%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

/* Style Checkbox */
input[type="checkbox"] { -webkit-appearance: none; appearance: none; width: 20px; height: 20px; border: 1px solid rgba(178,189,198,0.5) !important; border-radius: 2px !important; background-color: transparent !important; cursor: pointer; position: relative; }
input[type="checkbox"]:checked::before { content: ""; position: absolute; top: 5px; left: 5px; width: 12px; border-radius: 2px !important; height: 12px; background-color: #D4FF00; }

/* Style Select */
.acf-field select { 
    appearance: none; 
    -webkit-appearance: none; 
    -moz-appearance: none; 
    padding: 10px 40px 10px 15px !important; 
    font-size: 14px !important; 
    color: #FFFFFF !important; 
    border: 1px solid rgba(178,189,198,0.5) !important; 
    border-radius: 8px !important; 
    background-color: rgba(0,35,66,0.6) !important; 
    background-image: url("data:image/svg+xml;charset=UTF-8,<svg viewBox='0 0 10 6' xmlns='http://www.w3.org/2000/svg'><path d='M0 0L5 6L10 0H0Z' fill='%23B2BDC6'/></svg>"); 
    background-repeat: no-repeat; 
    background-position: right 10px center; 
    background-size: 12px; 
    cursor: pointer; 
    transition: border-color 0.2s ease;
    /* Cross-platform border radius consistency */
    -webkit-border-radius: 8px !important;
    -moz-border-radius: 8px !important;
    border-radius: 8px !important;
}
.acf-field select:focus { outline: none !important; }

/* Override WordPress core select styling for ACF fields - higher specificity */
.wp-core-ui .acf-field select,
.acf-field .wp-core-ui select,
.acf-field select.wp-core-ui,
.wp-admin .acf-field select,
.acf-field select.wp-admin { 
    color: #FFFFFF !important; 
    background-color: rgba(0,35,66,0.6) !important;
    border: 1px solid rgba(178,189,198,0.5) !important;
    border-radius: 8px !important;
    background-image: url("data:image/svg+xml;charset=UTF-8,<svg viewBox='0 0 10 6' xmlns='http://www.w3.org/2000/svg'><path d='M0 0L5 6L10 0H0Z' fill='%23B2BDC6'/></svg>") !important;
    background-repeat: no-repeat !important;
    background-position: right 10px center !important;
    background-size: 12px !important;
}

/* Additional specificity for dialog and form contexts */
dialog .acf-field select,
.acf-field select:not([disabled]),
.acf-field select:not([aria-disabled="true"]) {
    color: #FFFFFF !important;
    background-color: rgba(0,35,66,0.6) !important;
}

/* Style select options for cross-platform consistency */
.acf-field select option {
    background-color: #002342 !important;
    color: #FFFFFF !important;
    padding: 8px 12px !important;
}

/* Additional select option styling for Windows Chrome */
.acf-field select option:checked,
.acf-field select option:focus,
.acf-field select option:hover {
    background-color: #005CAB !important;
    color: #FFFFFF !important;
}

/* 50% Select Fields */
/* Commented out because we wanted month and year picker to be 100% */
/* dialog.club-review-form-dialog .af-field-date-month,
dialog.club-review-form-dialog .af-field-date-year { width: 49% !important; }
dialog.club-review-form-dialog .af-field-date-month { margin-right: 2% !important; } */

/* Month Year 50% */
.acf-field-68e8bea0a7040,
.acf-field-688251468cb4c,
.acf-field-68e82e368dd72,
.acf-field-68e82ed58dd73 { width: 49%; display: inline-block; padding-top: 0 !important; }

.acf-field-688251468cb4c,
.acf-field-68e82ed58dd73 { margin-left: 2% !important; }


.af-success h3,
#tournament_review_form_1 .af-success h3 { text-transform: uppercase !important; margin-bottom: 10px !important; }

.af-success .button { background: #D4FF00 !important; transition: 0.3s all; margin-top: 30px !important; }
.af-success .button:hover { background: #FFFFFF !important; transition: 0.3s all; }
.af-success .button br { display: none !important; }

dialog.club-review-form-dialog .acf-field[data-width]+.acf-field[data-width] { border: none !important; }

dialog.club-review-form-dialog .acf-fields > .acf-field { padding: 15px 0 0 0; }

.acf-field-68888eb34f607 { padding-top: 5px !important; }

/* Vertical Lists */
dialog.club-review-form-dialog ul.acf-radio-list,
dialog.club-review-form-dialog ul.acf-checkbox-list { border: none !important; }

dialog.club-review-form-dialog ul.acf-radio-list input,
dialog.club-review-form-dialog ul.acf-checkbox-list input { width: auto; }

dialog.club-review-form-dialog ul.acf-radio-list.acf-bl li,
dialog.club-review-form-dialog ul.acf-checkbox-list.acf-bl li { margin-bottom: 12px; }

dialog.club-review-form-dialog ul.acf-radio-list.acf-bl li:last-child,
dialog.club-review-form-dialog ul.acf-checkbox-list.acf-bl li:last-child { margin-bottom: 0; }

dialog.club-review-form-dialog ul.acf-radio-list.acf-bl li input,
dialog.club-review-form-dialog ul.acf-checkbox-list.acf-bl li input { margin-right: 6px; }

/* Horizontal Lists */
dialog.club-review-form-dialog ul.acf-radio-list.acf-hl { display: flex; justify-content: space-between; }
dialog.club-review-form-dialog ul.acf-radio-list.acf-hl li label { display: flex; flex-direction: column; text-align: center; }
dialog.club-review-form-dialog ul.acf-radio-list.acf-hl li label input { margin: 0 0 6px 0 !important; }


.acf-repeater > table { background: none !important; background-color: transparent !important; border: none !important; }
.acf-repeater > table tr td { background: none !important; color: #FFFFFF !important; border: none !important; }

.dialog-form-close button { position: absolute; top: 30px; right: 30px; background: none !important; border: none !important; }
.dialog-form-close button svg { width: 16px !important; opacity: 0.6; transition: 0.3 all; }
.dialog-form-close button:hover svg { opacity: 1; transition: 0.3 all; }
.dialog-form-close button svg path { fill: #FFFFFF !important; }

/* ACF Spinner */
.acf-spinner,
.af-spinner { position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: 0 auto;
    display: none;
    width: 16px;
    height: 16px;
    background-image: url('../img/pickleball_ball_spinner.svg') !important;
    background-repeat: no-repeat;
    background-size: contain;
    transform: translateY(-50%) rotate(0deg);
    transform-origin: 50% 50%;
    animation: spin 1.4s linear infinite;
    will-change: transform; }
@keyframes spin { to { transform: translateY(-50%) rotate(360deg); } }

/* *************************** */
/* Create Tournament or Club */
/* *************************** */
body.page-id-36,
body.page-id-372,
body.page-id-154 { background: url(../img/create_tournament_background-1.jpg) no-repeat !important; background-size: 100% !important; }

#form_686bf79580d56,
#form_68751d91124f8 { display: none; }

.show { display: block !important; }

.create_tournament_club { width: 100%; height: 100vh; margin: 0; padding: 0; background: #002342; position: fixed; z-index: 99999; top: 0; left: 0; }
.create_tournament_club a { color: #002342 !important; }
.create_tournament_club a.acf-icon.dark { color: #FFFFFF !important; }

.create_tournament_club .header_action { display: flex; align-items: center; position: absolute; z-index: 9999; top: 0; left: 0; right: 0; margin: 0 auto; width: 90%; padding: 20px 0; }
.create_tournament_club .header_action > div { width: 33%; }

.create_tournament_club .header_action > div.logo { text-align: center; }
.create_tournament_club .header_action > div.logo svg { width: 50px; }

.create_tournament_club .header_action > div.close { text-align: right; }
.create_tournament_club .header_action > div.close svg { cursor: pointer; width: 16px; }
.create_tournament_club .header_action > div.close svg path { fill: rgba(255,255,255,0.5); transition: 0.3s all; }
.create_tournament_club .header_action > div.close svg path:hover { fill: rgba(255,255,255,1); transition: 0.3s all; }

.create_tournament_club .af-form { width: 40%; z-index: 999; max-height: 620px; overflow-y: auto; }

.create_tournament_club #form_686bf79580d56,
.create_tournament_club #form_68751d91124f8 { position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; margin: 0 auto; }

.create_tournament_club .wp-block-site-logo,
.create_tournament_club .acf-fields .af-page-wrap,
.create_tournament_club .acf-notice.-dismiss { display: none !important; }

.create_tournament_club .acf-fields > .acf-field { padding: 16px 0 0 0; }
.create_tournament_club .acf-fields .af-submit { padding: 25px 0 0 0; }

.create_tournament_club .af-form .af-restricted-message { text-align: center; color: #FFFFFF; }
.create_tournament_club .af-form .af-restricted-message a { color: #D4FF00 !important; }

.create_tournament_club .af-form .af-field-type-message { padding-bottom: 0; }

.create_tournament_club .af-form .af-field-type-message h3 { font-size: 15px !important; line-height: 20px !important; text-transform: none !important; font-weight: 600 !important; color: #FFFFFF; letter-spacing: -0.2px !important; }
.create_tournament_club .af-form .af-field-type-message h3 span.acf-required { color: #D4FF00 !important; }
.create_tournament_club .af-form .af-field-type-message p.description { color: #B2BDC6 !important; }

.create_tournament_club .acf-fields .acf-field .acf-notice.-error { padding: 0; background: none; border: none; margin-bottom: 15px; }

.create_tournament_club .acf-fields .acf-field .acf-notice.-error p { font-size: 12px; color: #D4FF00 !important; }

.create_tournament_club .acf-fields > .acf-field { border-top: none; }

.create_tournament_club .acf-fields label .acf-required { color: #D4FF00; }
.create_tournament_club .acf-fields label[for="acf-field_68822b46d77a2"] .acf-required { display: inline-block; }

.create_tournament_club .acf-fields .acf-input-prepend { padding: 11.5px; border: 1px solid rgba(178,189,198,0.5) !important; border-right: 0 !important; background: none !important; color: rgba(255,255,255,0.4) !important; }
.create_tournament_club .acf-fields textarea { height: 110px !important; }

.create_tournament_club .acf-fields .acf-google-map { background: transparent; border: none; }
.create_tournament_club .acf-fields .acf-google-map .title { border-bottom: none; margin-bottom: 15px; }
.create_tournament_club .acf-fields .acf-google-map .title .search { font-weight: 400 !important; }
.create_tournament_club .acf-fields .acf-google-map .canvas { height: 240px !important; border-radius: 20px; margin-bottom: 5px; }

.acf-ui-datepicker .ui-widget-content a { color: #002342 !important; }

.acf-image-uploader p { font-size: 12px; color: rgba(255,255,255,0.5); }
.acf-image-uploader .acf-button,
.acf-repeater>.acf-actions .acf-button { background: none !important; margin-top: 0 !important; color: #FFFFFF !important; padding: 0 !important; margin-left: 10px; transition: 0.3s all; display: inline-block; }
.acf-image-uploader .acf-button:hover { color: #D4FF00; transition: 0.3s all; }

.acf-repeater>.acf-actions .acf-button { color: #D4FF00 !important; float: left !important; margin-left: 0 !important; }
.acf-repeater>.acf-actions .acf-button:hover { color: #FFFFFF !important; }

.create_tournament_club .acf-fields .acf-form-submit { display: flex; align-items: center;  flex-direction: column-reverse; }

.create_tournament_club .acf-fields .acf-form-submit .af-previous-button,
.create_tournament_club .acf-fields .acf-form-submit .af-next-button,
.create_tournament_club .acf-fields .acf-form-submit .af-submit-button { width: 100%; display: block; background: none; border: none; cursor: pointer; margin: 0; padding: 0; }

.create_tournament_club .acf-fields .acf-form-submit .af-previous-button { color: #FFFFFF; margin-top: 16px; transition: 0.3s all; }

.create_tournament_club .acf-fields .acf-form-submit .af-previous-button:hover { color: rgba(255,255,255,0.5); transition: 0.3s all; }

.create_tournament_club .acf-fields .acf-form-submit .af-next-button,
.create_tournament_club .acf-fields .acf-form-submit .af-submit-button { padding: 15px 20px !important; background: #D4FF00; color: #002342 !important; text-transform: uppercase; font-family: 'Montserrat', sans-serif; font-weight: 700 !important; display: inline-block; border-radius: 400px !important; transition: 0.3s all; }

.create_tournament_club .acf-fields .acf-form-submit .af-next-button:hover,
.create_tournament_club .acf-fields .acf-form-submit .af-submit-button:hover { background: #FFFFFF; transition: 0.3s all; }

.create_tournament_club .af-success { text-align: center; }
.create_tournament_club .af-success img { width: 60px; }
.create_tournament_club .af-success h3 { color: #FFFFFF; padding: 20px 0 15px 0; font-size: 30px !important; line-height: 36px !important; font-weight: 700 !important; text-transform: uppercase !important; }
.create_tournament_club .af-success p { color: #B2BDC6; }
.create_tournament_club .af-success p strong { color: #FFFFFF; display: block; padding-bottom: 8px; }
.create_tournament_club .af-success p a.button { display: inline-block; }

dialog.club-review-form-dialog .review-confirmation-content h3 { font-size: 30px !important; line-height: 36px !important; }

/* *************************** */
/* Home Page */
/* *************************** */

/* Header */
body.page-id-154 header.default { position: fixed; width: 100%; background: transparent; border-bottom: 0; }

.home-header { background: url(../img/home_header_background.jpg) no-repeat; background-size: cover; padding: 175px 0 150px 0; }
.home-header .content { padding-right: 30%; }

.home-header .content h1,
.home-header .content p { color: #FFFFFF; }

.home-header .content h1 { margin-bottom: 15px; }
.home-header .content h1 span { color: #D4FF00; }

/* Features Banner */
.home-features_banner { background: url(../img/home_features_banner_background.jpg) no-repeat; background-size: cover; padding: 75px 0; }

.home-features_banner .title { text-align: center; padding: 0 15%; }

.home-features_banner .title h2,
.home-features_banner .title p { color: #FFFFFF; }

.home-features_banner .title p { font-size: 16px; line-height: 20px; padding-top: 15px; }

.home-features_banner .features_list { display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 60px; }
.home-features_banner .features_list > div { width: 23%; text-align: center;  }
.home-features_banner .features_list > div img { width: 60px; }
.home-features_banner .features_list > div h6 { color: #FFFFFF; font-size: 15px !important; line-height: 19px !important; padding-top: 16px; }

/* Blog */
.home-blog_list { background: #F2F7FB; padding: 75px 0; display: none; }

.home-blog_list .post_list { display: flex; justify-content: space-between; flex-wrap: wrap; }
.home-blog_list .post_list > div { width: 48%; }

.home-blog_list .post_list .post { width: 100% !important; }

.home-blog_list .post_list > div:last-child .post.horizontal { display: flex; justify-content: space-between; flex-wrap: wrap; }
.home-blog_list .post_list > div:last-child .post.horizontal .featured_image { width: 35%; }
.home-blog_list .post_list > div:last-child .post.horizontal .content { width: 62%; margin: 0; }
.home-blog_list .post_list > div:last-child .post.horizontal h3 { padding-top: 0 !important; }
.home-blog_list .post_list > div:last-child .post.horizontal:last-child { margin-bottom: 0 !important; }

/* Hide right column on mobile and show it at the end of section */
.more_info_section { text-align: center; }


/* *************************** */
/* Inner Pages */
/* *************************** */
header.inner_page_header { padding: 130px 0 50px 0; background: #002342; }
header.inner_page_header h1 { color: #FFFFFF; }

.inner_page_content { padding: 50px 0; }

/* Section Title */
.title.left_right { display: flex; align-items: center; flex-wrap: wrap; }
.title.left_right > div { width: 50%; }
.title.left_right > div:last-child { text-align: right; }
.title.left_right > div:last-child a.button { margin-top: 0 !important; }


/* *************************** */
/* All Blogs */
/* *************************** */
.post_list { display: flex; justify-content: flex-start; flex-wrap: wrap; gap: 2%; padding: 50px 0 10px 0; }
.post_list .post { width: 31%; margin-bottom: 40px; }

.post_list .featured_image { overflow: hidden; border-radius: 10px; }
.post_list .featured_image img { border-radius: 10px; display: block; transform: scale(1); transition: 0.3s all; }
.post_list .featured_image:hover img { transform: scale(1.1); transition: 0.3s all; }

.post_list .post h3 { line-height: 18px !important; padding: 10px 0 8px 0 !important; }
.post_list .post h3 a { color: #002342 !important; text-transform: none; font-size: 16px !important; font-weight: 600 !important; transition: 0.3s all; }
.post_list .post h3 a:hover { color: #005CAB !important; transition: 0.3s all; }

.post_list .post p { font-size: 13px; }

.post_list .read_more { margin-top: 15px; }
.post_list .read_more a { display: flex; align-items: center; font-size: 12px !important; line-height: 12px !important; font-weight: 600 !important; text-transform: uppercase; }
.post_list .read_more a svg { width: 7px; margin-left: 5px; }
.post_list .read_more a svg path { fill: #005CAB; }


/* *************************** */
/* Banners */
/* *************************** */
.banner_placeholder { padding: 75px 0; }


/* *************************** */
/* Blog (Article) Page */
/* *************************** */
nav.post-navigation { display: none; }
article.post { margin-bottom: 0; }
.article_header { background: #002342; padding: 155px 0 60px 0; }
.article_header .content .date { display: flex; align-items: center; }
.article_header .content .date svg { width: 12px; }
.article_header .content .date svg path { fill: #FFFFFF; }
.article_header .content .date span { color: #FFFFFF; font-weight: 500; font-size: 12px; line-height: 12px; text-transform: uppercase; margin-left: 9px; }

.article_header .content .title { padding: 15px 0 10px 0; }
.article_header .content .title h1 { font-size: 30px !important; line-height: 36px !important; color: #FFFFFF; }
.article_header .content .excerpt p { color: #B2BDC6; }

.article_main_photo { position: relative; }
.article_main_photo:before { content: ''; width: 100%; height: 50%; background: #002342; position: absolute; top: 0; left: 0; z-index: -1; }
.article_main_photo img { border-radius: 20px; }

.article_content { padding: 30px 0 50px 0; }

.article_read_also { background: rgba(0,92,171,0.05); padding: 50px 0; }
.article_read_also .post_list { padding: 0; }
.article_read_also .content .title h2 { text-align: center; margin-bottom: 40px; }
.article_read_also .post_list .post { margin-bottom: 0; }

/* *************************** */
/* Tournament Page */
/* *************************** */
.tournament_header { background: #002342; padding: 155px 0 60px 0; }
.tournament_header .content { display: flex; flex-wrap: wrap; }
.tournament_header .content .left { width: 60%; padding-right: 15%; }
.tournament_header .content .right { width: 40%; }

.tournament_header .content .left h1 { color: #FFFFFF; font-size: 30px; line-height: 36px; padding: 20px 0 15px 0; }
.tournament_header .content .left ul.tournament_meta { display: flex; flex-wrap: wrap; padding: 0; margin: 0; }
.tournament_header .content .left ul.tournament_meta li { color: #FFFFFF; font-weight: 600; font-size: 12px; text-transform: uppercase; display: flex; align-items: center; margin-left: 15px; }
.tournament_header .content .left ul.tournament_meta li:first-child { margin-left: 0; }
.tournament_header .content .left ul.tournament_meta li::marker { display: none; }
.tournament_header .content .left ul.tournament_meta li svg { width: 12px; margin-right: 8px; }

.tournament_header .content .left p.description { color: #B2BDC6; }

.gallery_slider ul { margin: 0; padding: 0; }

/* Rating Number */
.tournament_header .content .left .join-rating { margin: 25px 0 10px 0; }
.tournament_header .content .left .join-rating > span { width: 100%; display: block; }
.tournament_header .content .left .join-rating .join-rating__value { font-size: 60px; line-height: 60px; font-weight: 800; color: #D4FF00; font-family: 'Montserrat', sans-serif !important; margin-bottom: 5px; }
.tournament_header .content .left .join-rating .join-rating__label { color: #FFFFFF; font-weight: 500; }

.tournament_header .content .right img { border-radius: 20px; }

.tournament_banner { position: relative; margin-bottom: 60px; }
.tournament_banner:before { content: ''; width: 100%; height: 50%; background: #002342; position: absolute; top: 0; left: 0; z-index: -1; }

.tournament_banner .content { padding: 50px 60px; background: url(../img/review_banner_background.jpg) no-repeat; background-size: cover; text-align: left; border-radius: 20px; }

.tournament_banner .content.empty { padding: 100px 20%; text-align: center; }

.tournament_banner .content h3,
.tournament_banner .content p { color: #FFFFFF; }

.tournament_banner .content p { font-size: 16px; line-height: 20px; margin-top: 15px; }

/* Banner Slider + Padels Rating */
.tournament_banner .banner-reviews .ds-comments-slider .ds-comment-slide h4 { color: #D4FF00; text-transform: uppercase; font-size: 21px; line-height: 24px; }

/* Arrows Hack */
.tournament_banner .banner-reviews .ds-comments-slider { padding-bottom: 70px; }

.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-prev,
.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-next { background: none; border: none; cursor: pointer; z-index: 2; transform: none; top: 90px; bottom: 0; }

.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-prev:before,
.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-next:before { display: none; }

.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-prev { left: 0; }
.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-next { left: 46px; }

.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-prev svg,
.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-next svg { width: 36px; height: 36px; }

.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-prev svg:hover circle,
.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-next svg:hover circle { fill: #FFFFFF; transition: 0.3s all; }

.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-prev svg:hover path,
.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-next svg:hover path { fill: #002342; transition: 0.3s all; }

.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-prev svg circle,
.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-next svg circle,
.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-prev svg path,
.tournament_banner .banner-reviews__slider .ds-comments-slider .slick-next svg path { transition: 0.3s all; }


/* Padel Ratings */
.tournament_banner .banner-reviews__rating .three_col { display: flex; flex-wrap: wrap; }
.tournament_banner .banner-reviews__rating .three_col > div { margin-right: 40px; }
.tournament_banner .banner-reviews__rating .three_col > div:last-child { margin-right: 0; }

.tournament_banner .banner-reviews__rating .rating { margin-top: 25px; }
.tournament_banner .banner-reviews__rating .rating h5 { font-size: 16px; color: #FFFFFF; margin-bottom: 7px; }
.tournament_banner .banner-reviews__rating .rating h5 span { color: #D4FF00; }

.tournament_item { margin-bottom: 60px; }
.tournament_item.no_bottom_margin { margin-bottom: 0; }
.tournament_item h6 { margin-bottom: 20px; font-size: 18px; line-height: 24px; letter-spacing: -0.5px; }

/* Amenities Tags */
.tags { margin-top: 20px; }
ul.club-amenities { margin: 0; padding: 0; display: flex; flex-wrap: wrap; }
ul.club-amenities li::marker { display: none !important; color: #FFFFFF; }
ul.club-amenities li { border: 1px solid rgba(0,35,66,0.1); margin-right: 15px; border-radius: 6px; color: #002342; font-weight: 600; text-transform: uppercase; font-size: 12px; letter-spacing: 0.5px; padding: 7px 12px; }
ul.club-amenities li:last-child { margin-right: 0; }

.tournament_item.reviews h6 { font-size: 36px; line-height: 42px; font-weight: 800 !important; margin-bottom: 60px; }

/* *************************** */
/* Paddle */
/* *************************** */


/* Paddle Slider */
.paddle_slider .ds-comment-slide { display: flex; flex-wrap: wrap; }
.paddle_slider .ds-comment-slide > div { width: 30%; margin-right: 2%; z-index: 2; }


/* Paddle Design */
.ds-comment-paddle { background: #FAFCFD; border-radius: 60px; padding: 45px 2% 35px 2%; text-align: center; margin-bottom: 30px; position: relative; }
.ds-comment-paddle:before { content: ""; position: absolute; inset: 0; border-radius: 60px; padding: 4px; background: linear-gradient( to bottom, #005CAB, rgba(0, 92, 171, 0.2) ); -webkit-mask: linear-gradient(#fff 0 0) content-box,  linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; pointer-events: none; }

.balls-rating > div { position: relative; }
.balls-rating > div:after { content: ''; width: 140%; left: -20%; position: absolute; background: #D4FF00; height: 35px; top: -9px; border-radius: 400px; z-index: -1; }

.ds-comment-paddle .ds-comment-paddle__post_title { font-size: 13px; line-height: 18px; font-family: 'Montserrat', sans-serif !important; font-weight: 600; z-index: 2; position: relative; }
.ds-comment-paddle h4.ds-comment-paddle__title { font-size: 21px; line-height: 30px; font-weight: 600 !important; text-transform: capitalize; padding: 10px 0; z-index: 2; position: relative; }

.ds-comment-paddle .ds-comment-paddle__description p { font-size: 18px; line-height: 24px; z-index: 2; position: relative; margin-bottom: 25px; }

.ds-comment-paddle .ds-comment-avatar { margin: 20px 0 10px 0; z-index: 2; position: relative; }
.ds-comment-paddle .ds-comment-avatar img { border-radius: 50%; width: 86px; z-index: 2; position: relative; }
.ds-comment-paddle .ds-comment-paddle__author { font-family: 'Montserrat', sans-serif !important; font-size: 16px; line-height: 24px; font-weight: 600; z-index: 2; position: relative; }
.ds-comment-paddle .ds-comment-paddle__date { display: none; z-index: 2; }

.cta_paddle { display: flex; align-items: center; background: #002342; }
.cta_paddle:before { display: none; }
.cta_paddle > div h4 { text-transform: capitalize; color: #FFFFFF; font-weight: 600; }


/* *************************** */
/* Footer */
/* *************************** */

/* Default */
footer.default { background: #002342; padding: 70px 0 30px 0; }
footer.default .widgets { display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 100px; }
footer.default .widgets > div { width: 23%; margin-bottom: 40px !important; }

footer.default .widgets > div h6.widget_title { text-transform: uppercase; font-weight: 700; color: #D4FF00; font-size: 12px; margin-bottom: 20px; }

footer.default .widgets > div:nth-child(1) svg { width: 160px; }

footer.default .widgets ul.menu { margin: 0; padding: 0; }
footer.default .widgets ul.menu li::marker { display: none !important; color: #002342; }
footer.default .widgets ul.menu li a { color: #FFFFFF !important; font-family: 'Montserrat', sans-serif !important; font-weight: 400 !important; display: block; margin-bottom: 15px !important;  transition: 0.3s all; }
footer.default .widgets ul.menu li a:hover { color: #D4FF00 !important; transition: 0.3s all; }
footer.default .widgets ul.menu li:last-child a { margin-bottom: 0 !important; }

footer.default .copyright small { display: block; text-align: center; margin-top: 75px; color: rgba(255,255,255,0.5); font-size: 12px; }

/* Newsletter */
footer .newsletter { margin-bottom: 100px; }
footer .newsletter h2 { text-align: center; color: #FFFFFF; margin-bottom: 25px; }
footer .newsletter .form { text-align: center; color: #FFFFFF; }
footer .newsletter .form #mc_embed_signup_scroll { display: flex; flex-wrap: wrap; justify-content: center; width: 60%; margin: auto; }
footer .newsletter .form #mc_embed_signup_scroll .mc-field-group:first-child { width: 60%; margin-right: 15px; }
footer .newsletter .form #mc_embed_signup_scroll input[type='email'] { border-radius: 400px !important; border: none !important; background: rgba(255,255,255,0.1); margin-bottom: 0 !important; padding: 15px 25px !important; }
footer .newsletter .form #mc_embed_signup_scroll input[type='email']::placeholder { color: rgba(255,255,255,0.7); }

#mc_embed_signup div.mce_inline_error { background-color: transparent !important; font-size: 11px !important; padding: 7px 25px !important; text-align: left !important; font-weight: 400; margin-top: 6px; color: #D4FF00; }
#mce-responses { font-size: 12px; font-weight: 600; margin-top: 20px; color: #D4FF00; }

footer .newsletter .form #mc_embed_signup_scroll input[type='submit'] { padding-left: 25px !important; padding-right: 25px !important; margin: 0 !important; }

/* Copyright */
footer.copyright { position: absolute; bottom: 20px; left: 0; right: 0; margin: 0 auto; text-align: center; }
footer.copyright small { color: rgba(255,255,255,0.5); font-size: 12px; }

form .acf-required { color: #D4FF00; }
/* *************************** */
/* Responsive */
/* *************************** */

@media screen and (max-width: 1024px) and (max-width: 1280px) {
    
    .content { width: 85%; }

    .paddle_slider .ds-comment-slide > div { width: 48%; margin-right: 2%; }
    
}

@media screen and (max-width: 1023px) {

    h1 { font-size: 44px; line-height: 48px; }
    h2 { font-size: 32px; line-height: 36px; }
    h3 { font-size: 26px; line-height: 30px; }
    h4 { font-size: 22px; line-height: 26px; }
    h5 { font-size: 18px; line-height: 22px; }
    h6 { font-size: 16px; line-height: 20px; }

    .hide_on_desktop { display: block; }
    
    .content { width: 85%; }

    body.page-id-372,
    body.page-id-154 { background-size: cover !important; background-position: center top !important; background-repeat: no-repeat !important; }

    header.default { padding: 0 7%; }

    .home-header .content { padding-right: 0; }

    .title.left_right > div { width: 100%; }
    .title.left_right > div:last-child { display: none; }

    .home-features_banner .title { padding: 0; text-align: left; }
    .home-features_banner .features_list > div { width: 100%; text-align: left; margin-bottom: 35px; }
    .home-features_banner .features_list > div:last-child { margin-bottom: 0; }
    .home-features_banner .features_list > div h6 { padding-top: 8px; }

    .article_read_also .content .title h2 { text-align: left; }
    .article_read_also .post_list .post { margin-bottom: 35px; }

    .paddle_slider .ds-comment-slide > div { width: 48%; margin-right: 2%; }

    .cta_paddle { padding: 145px 6% !important; }
    .cta_paddle > div { position: relative; top: auto; transform: none; }

    .tournament_header { padding: 130px 0 60px 0; }
    .tournament_header .content { flex-direction: column-reverse; }

    .tournament_header .content .left,
    .tournament_header .content .right { width: 100%; padding-right: 0; }

    .tournament_header .content .right { margin-bottom: 30px; }
    .tournament_header .content .right img { border-radius: 20px; width: 240px; }

    .tournament_banner .content { padding: 50px 5%; }
    .tournament_banner .content.empty { padding: 75px 7%; }

    .tournament_banner .banner-reviews__rating .rating { width: 100%; }

    ul.club-amenities li { margin-bottom: 10px; }

    /* Blog List */
    .home-blog_list .post_list > div { width: 100%; }

    .home-blog_list .post_list > div:last-child .post.horizontal .featured_image,
    .home-blog_list .post_list > div:last-child .post.horizontal .content { width: 100%; }

    .home-blog_list .post_list > div:last-child .post.horizontal h3 { padding: 10px 0 8px 0 !important; }

    .home-blog_list .post_list > div:last-child .post.horizontal:last-child { margin-bottom: 20px !important; }

    /* Wizard */
    .wizard_content .content,
    .create_tournament_club .af-form { width: 75%; }

    /* Footer */
    footer.default .widgets { margin-bottom: 50px; }
    footer.default .widgets > div { width: 100%; margin-bottom: 40px; }
    footer.default .widgets > div:last-child { margin-bottom: 0; }

    footer.default .widgets > div:nth-child(1) svg { width: 130px; }

    footer .newsletter { margin-bottom: 75px; }

    footer .newsletter .form #mc_embed_signup_scroll,
    footer .newsletter .form #mc_embed_signup_scroll .mc-field-group { width: 100% !important; }

    footer .newsletter .form #mc_embed_signup_scroll .mc-field-group:first-child { margin-bottom: 15px; margin-right: 0 !important; }

    footer .newsletter h2,
    footer .newsletter .form { text-align: left; }

    footer.default .copyright small { text-align: left; }
    
}

@media screen and (max-width: 767px) {

    h1 { font-size: 40px; line-height: 44px; }
    h2 { font-size: 30px; line-height: 34px; }
    h3 { font-size: 24px; line-height: 28px; }
    h4 { font-size: 22px; line-height: 26px; }
    h5 { font-size: 18px; line-height: 22px; }
    h6 { font-size: 16px; line-height: 20px; }


    nav.main-navigation { display: flex; justify-content: flex-end; }
    nav.main-navigation:before { content: ''; background: url(../img/hamburger.svg) no-repeat; background-size: contain; width: 24px; height: 24px; position: absolute; z-index: 1 !important; top: 50%; transform:translateY(-50%); z-index: 999998; }

    nav.main-navigation .menu-toggle { background: none !important; border: none !important; text-indent: -9999px !important; z-index: 1 !important; }
    nav.main-navigation.toggled .menu-main-menu-container { position: absolute; width: 85% !important; background: #002342; padding: 20px; border-radius: 20px; top: 70px; left: 0; right: 0; margin: auto; z-index: 1 !important; }
    nav.main-navigation.toggled .menu-main-menu-container ul { display: flex; flex-wrap: wrap; }
    nav.main-navigation.toggled .menu-main-menu-container ul li { margin-right: 0 !important; width: 100%; text-align: center; margin-bottom: 16px; }
    nav.main-navigation.toggled .menu-main-menu-container ul li.button { width: 100%; justify-content: center; }
    nav.main-navigation.toggled .menu-main-menu-container ul li:last-child { margin-bottom: 0; }

    .wizard_content .content,
    .create_tournament_club .af-form { width: 80%; }

    .post_list .post { width: 100%; margin-bottom: 40px; }

    .tournament_header .content .left ul.tournament_meta li { margin-bottom: 12px; width: 100%; margin-left: 0; }
    .tournament_header .content .left ul.tournament_meta li:last-child { margin-bottom: 0; }
    
}

@media screen and (max-width: 560px) {

    .paddle_slider .ds-comment-slide > div { width: 100%; margin-right: 0; }

}

/* *************************** */
/* Existing Review Popup */
/* *************************** */
.existing-review-popup-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #002342;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 999999;
    animation: fadeIn 0.3s ease-in-out;
}

.existing-review-popup-content {
    background: #002342;
    border-radius: 12px;
    padding: 30px;
    max-width: 100% !important;
    width: 90% !important;
    text-align: center;
    animation: slideIn 0.3s ease-in-out;
}

.existing-review-popup-content h3 {
    color: #FFFFFF;
    margin-bottom: 10px;
    font-size: 30px !important;
    line-height: 36px !important;
}

.existing-review-popup-content p {
    color: #FFFFFF;
    margin-bottom: 25px;
    font-size: 14px;
    line-height: 20px;
}

.popup-buttons {
    display: flex;
    gap: 15px;
    justify-content: center;
    flex-wrap: wrap;
}

.popup-buttons .btn {
    padding: 12px 24px;
    border: none;
    border-radius: 6px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.3s ease;
    min-width: 100px;
    border-radius: 400px;
}

.popup-buttons .btn-secondary {
    background: #D4FF00;
    color: #002342;
}

.popup-buttons .btn-secondary:hover {
    background: #FFFFFF;
}

.popup-buttons .btn-primary {
    color: #FFFFFF;
    border: 1px solid rgba(255,255,255,0.5);
    background: none !important;
}

.popup-buttons .btn-primary:hover {
    background: #FFFFFF !important;
    color: #002342;
}

.test-class .remove-later {
    display: none;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideIn {
    from { 
        opacity: 0;
        transform: translateY(-20px) scale(0.95);
    }
    to { 
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Mobile responsiveness for popup */
@media screen and (max-width: 480px) {
    .existing-review-popup-content {
        padding: 20px;
        margin: 20px;
    }
    
    .popup-buttons {
        flex-direction: column;
        gap: 10px;
    }
    
    .popup-buttons .btn {
        width: 100%;
    }
}