﻿#atr-search, #atr-search * {box-sizing:border-box; -moz-box-sizing:border-box; -webkit-box-sizing:border-box;}
#atr-search {margin:8px 0;display: flex;flex-direction: column;width:100%;clear:both;}
#atr-price-1-hour {order: -3;     margin-bottom: 0px !important; margin-top: 5px;}
#atr-age {order: -2;       margin-top: 10px;
    margin-bottom: 15px !important; }
#atr-auckland-suburbs, #atr-wellington-suburbs, #atr-chch-suburbs, #atr-hamilton-suburbs, #atr-nth-island, #atr-south-island-suburbs, #atr-tauranga-suburbs {order: -1;}
#atr-search .control-group {margin-bottom:15px;display:inline-block;width:100%;clear:both;}
#atr-search .control-group.atr-type-select, #atr-search .control-group.atr-type-daterange {margin-bottom:5px;}
#atr-search .control-group > .controls {display:inline-block;max-width:100%;width:100%;margin:0;position:relative;}
#atr-search .control-group > .controls.atr-loading:after {content: ""; position:absolute; display: inline-block; width: 26px; height: 26px; top: 2px;right:0; background: url(../img/ajax_loading.gif); transition: 0s; background-repeat: no-repeat; background-position: center center; background-size: 100%;}
#atr-search .control-group > label {width:100%;line-height:34px;padding:0;margin:0 0 4px 0; border-top: 1px #CECECE solid; font-weight: 600; font-size: 17px;}
#atr-search ul.atr-ul {list-style-type:none;padding:0;margin:0; height: unset;}
#atr-search > :not(.atr-subtype-boxed) ul.atr-ul {display:block!important;}
#atr-search ul.atr-ul li {min-width:125px;width:auto;max-width:90%;display:inline-block;vertical-align:text-top;margin-right:5px;}
#atr-search select, #atr-search textarea, #atr-search input[type="text"], #atr-search input[type="url"], #atr-search input[type="email"], #atr-search input[type="phone"], #atr-search input[type="date"], #atr-search input[type="number"] {clear:none;outline:none;display:inline-block;width:100%;max-width:100%;min-width:120px;padding:0 8px;line-height:32px;height:34px;border-radius:2px;box-shadow:1px 2px 6px rgba(0,0,0,0.08);border:1px solid #ccc;background:#fff;font-size:13px;color:#333;float:none;}
#atr-search select:hover, #atr-search textarea:hover, #atr-search input[type="text"]:hover, #atr-search input[type="url"]:hover, #atr-search input[type="email"]:hover, #atr-search input[type="phone"]:hover, #atr-search input[type="date"]:hover, #atr-search input[type="number"]:hover {border-color:#aaa;}
#atr-search select:focus, #atr-search textarea:focus, #atr-search input[type="text"]:focus, #atr-search input[type="url"]:focus, #atr-search input[type="email"]:focus, #atr-search input[type="phone"]:focus, #atr-search input[type="date"]:focus, #atr-search input[type="number"]:focus {border-color:#02C39A;}
#atr-search select {height:34px;margin-right:0px;margin-bottom:10px;min-width:160px;max-width:100%;}
#atr-search textarea {max-width:100%;width:100%;min-height:80px;}
#atr-search input[type="number"] {text-align:right;}
#atr-search .atr-type-daterange input[type="date"], #atr-search .atr-type-range input[type="number"] {margin:0 0 10px 0!important;width:45%!important;min-width:50px;}
#atr-search .atr-type-daterange input[type="date"]:last-child, #atr-search .atr-type-range input[type="number"]:last-child {float:right!important;clear:none!important;}
!#atr-search .controls input[type="date"] {margin-right:10px;}
#atr-search .controls input[type="url"] {width:100%;}
#atr-search .controls input[type="email"][type="text"] {width:100%;}
#atr-search .atr-date-del {display:inline-block;margin-right:15px;margin-left:5px;line-height:32px;font-size:13px;color:#888;display:none;}
#atr-search label {text-align:left;}
#atr-search .has-placeholder label {line-height:34px;padding:0 8px;font-size:13px;}
#atr-search .select-box {background:none;box-shadow:none;border:none;line-height:34px;text-shadow:none;}
#atr-search .select-box-trigger {display:none;}
#atr-search .select-box select {top:auto;left:auto;opacity:1!important;-webkit-appearance: menulist;}
#atr-search .atr-box {position:relative;border: 1px solid #ccc;border-radius:2px; font-size: 13px; padding: 0px 28px 0 8px; margin: 0; line-height: 34px; min-height: 36px; background: #fff; float: left; clear: both; outline: none; width: 100%; color: #444; box-shadow: 1px 1px 1px rgba(0,0,0,0.06);transition:0.2s;}
#atr-search .controls:hover .atr-box {border-color:#aaa;}
#atr-search .atr-box:after {content:"\f107";font-family:"FontAwesome";position:absolute;right:9px;top:50%;margin-top:-9px;width:16px;font-size: 16px; color: #444; line-height: 18px;height:18px;text-align:center;}
#atr-search .controls:hover .atr-box:not(.opened):after, #atr-search .controls .atr-box.opened:after {content:"\f106";}
#atr-search .atr-box > div.atr-holder {display:inline-block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:7px 0 4px 0px;line-height:20px;}
#atr-search .atr-box > div.atr-holder span {float: left; margin: 0 3px 3px 0; background: #ddd; font-size: 12px; line-height: 16px; border-radius: 3px; padding: 2px 4px;}
#atr-search .atr-subtype-boxed .atr-ul {top: 34px; z-index: 99;display: none; z-index: 3; position: absolute; width: 100%; left: 0; background: #fff; border: 1px solid #aaa; border-top: none; padding: 6px 8px 6px 8px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;max-height:300px;overflow-y:auto;}
#atr-search .atr-select-deselect {display:inline-block;width:100%;font-size:13px;margin:0 0 5px 0;letter-spacing:-0.3px;}

/* CUSTOM CHECKBOX & RADIO SEARCH */
#atr-search .atr-input-box {float:left;width:100%;clear:both;margin:5px 15px 5px 0;position:relative;}
#atr-search .atr-input-box input[type="checkbox"], .atr-input-box input[type="radio"] {opacity:0;position:absolute;left:0;top:0;z-index:-1;visibility:hidden;overflow:hidden;padding:0!important;width:0!important;height:0!important;margin:0!important;box-shadow:none!important;}
#atr-search .atr-input-box label {min-height:20px;text-align:left;display:block;cursor:pointer;position:relative;float:left;padding:0 0 0 30px!important;line-height:20px;font-size:15px;width:auto;clear:both;white-space: nowrap;}
#atr-search .atr-input-box label:hover {text-decoration:underline;}
#atr-search .atr-input-box label:before {cursor:pointer;content: ""; width: 18px; height: 18px; border: 1px solid #ccc;font-weight:500; text-shadow: none; position: absolute; top: 0; left: 0;text-shadow:none;box-shadow: 1px 1px 1px rgba(0,0,0,0.06); -moz-box-shadow: 1px 1px 1px rgba(0,0,0,0.06); -webkit-box-shadow: 1px 1px 1px rgba(0,0,0,0.06);-webkit-border-radius: 2px; -moz-border-radius: 2px; border-radius: 2px;-webkit-transition:0.1s linear all;-moz-transition:0.1s linear all;-ms-transition:0.1s linear all;-o-transition:0.1s linear all;transition:0.1s linear all;}
#atr-search .atr-input-box label:hover:before {border-color:#aaa;}
#atr-search .atr-input-box label:after {cursor:pointer;text-indent:1px;font-family:"FontAwesome";content: "\f00c"; color:transparent;font-size:14px;width: 18px; height: 18px;line-height:18px;text-align:center;font-weight:500; text-shadow:none; position: absolute; top: 1px; left: 1px;-webkit-border-radius: 2px; -moz-border-radius: 2px; border-radius: 2px;-webkit-transition:0.1s linear all;-moz-transition:0.1s linear all;-ms-transition:0.1s linear all;-o-transition:0.1s linear all;transition:0.1s linear all;}
#atr-search .atr-input-box input[type="checkbox"]:checked + label:before, #atr-search .atr-input-box input[type="radio"]:checked + label:before {border-color:#03a9f4;color:#fff;background-color:#03a9f4;text-shadow:1px 1px 1px rgba(0,0,0,0.1);}
#atr-search .atr-input-box input[type="checkbox"]:checked + label:after, #atr-search .atr-input-box input[type="radio"]:checked + label:after {color:#fff;}
#atr-search .atr-input-box.atr-radio label:before, #atr-search .atr-input-box.atr-radio label:after {border-radius:50%;}

#atr-search .atr-input-box.atr-lvl-1 {padding-left:8px;}
#atr-search .atr-input-box.atr-lvl-2 {padding-left:16px;}
#atr-search .atr-input-box.atr-lvl-3 {padding-left:24px;}
#atr-search .atr-input-box.atr-lvl-4 {padding-left:30px;}
#atr-search .atr-input-box.atr-lvl-5 {padding-left:36px;}
#atr-search .atr-input-box.atr-lvl-6 {padding-left:40px;}
#atr-search .atr-input-box.atr-lvl-7 {padding-left:44px;}
#atr-search .atr-input-box.atr-lvl-8 {padding-left:48px;}
#atr-search .atr-input-box.atr-lvl-9 {padding-left:50px;}

/* === OVERRIDE: Hide circle indicators for suburb chips === */
#atr-auckland-suburbs .atr-input-box label:before,
#atr-auckland-suburbs .atr-input-box label:after,
#atr-wellington-suburbs .atr-input-box label:before,
#atr-wellington-suburbs .atr-input-box label:after,
#atr-chch-suburbs .atr-input-box label:before,
#atr-chch-suburbs .atr-input-box label:after,
#atr-hamilton-suburbs .atr-input-box label:before,
#atr-hamilton-suburbs .atr-input-box label:after,
#atr-nth-island .atr-input-box label:before,
#atr-nth-island .atr-input-box label:after,
#atr-south-island-suburbs .atr-input-box label:before,
#atr-south-island-suburbs .atr-input-box label:after,
#atr-tauranga-suburbs .atr-input-box label:before,
#atr-tauranga-suburbs .atr-input-box label:after {
    display: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    border: none !important;
    opacity: 0 !important;
}

#atr-auckland-suburbs .atr-input-box label,
#atr-wellington-suburbs .atr-input-box label,
#atr-chch-suburbs .atr-input-box label,
#atr-hamilton-suburbs .atr-input-box label,
#atr-nth-island .atr-input-box label,
#atr-south-island-suburbs .atr-input-box label,
#atr-tauranga-suburbs .atr-input-box label {
    padding-left: 1rem !important;
    max-width: none !important;
    width: auto !important;
}

/* Override main241-live.css rule for suburb labels */
#atr-auckland-suburbs.control-group ul li label,
#atr-wellington-suburbs.control-group ul li label,
#atr-chch-suburbs.control-group ul li label,
#atr-hamilton-suburbs.control-group ul li label,
#atr-nth-island.control-group ul li label,
#atr-south-island-suburbs.control-group ul li label,
#atr-tauranga-suburbs.control-group ul li label {
    max-width: none !important;
    width: auto !important;
}

/* === OVERRIDE: Hide circle indicators for appearance chips === */
#atr-cup-size .atr-input-box label:before,
#atr-cup-size .atr-input-box label:after,
#atr-bodytype .atr-input-box label:before,
#atr-bodytype .atr-input-box label:after,
#atr-hair-color .atr-input-box label:before,
#atr-hair-color .atr-input-box label:after,
#atr-eye-color .atr-input-box label:before,
#atr-eye-color .atr-input-box label:after,
#atr-pubic-hair .atr-input-box label:before,
#atr-pubic-hair .atr-input-box label:after {
    display: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    border: none !important;
    opacity: 0 !important;
}

#atr-cup-size .atr-input-box label,
#atr-bodytype .atr-input-box label,
#atr-hair-color .atr-input-box label,
#atr-eye-color .atr-input-box label,
#atr-pubic-hair .atr-input-box label {
    padding-left: 1rem !important;
}

/* === OVERRIDE: Hide circle indicators for services chips === */
#atr-meeting-with .atr-input-box label:before,
#atr-meeting-with .atr-input-box label:after,
#atr-incall .atr-input-box label:before,
#atr-incall .atr-input-box label:after,
#atr-outcall .atr-input-box label:before,
#atr-outcall .atr-input-box label:after {
    display: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    border: none !important;
    opacity: 0 !important;
}

#atr-meeting-with .atr-input-box label,
#atr-incall .atr-input-box label,
#atr-outcall .atr-input-box label {
    padding-left: 1rem !important;
}

body.search .reg-box {
    width: 100%;
}

/* ==========================================================================
   SEARCH FILTERS - TILE/CARD STYLE
   Matching item-post.css design with icons
   ========================================================================== */

/* --- CSS Variables --- */
:root {
    --brand: #ff3366;
    --brand-light: #FFF0F3;
    --gray-100: #f9fafb;
    --gray-200: #e5e7eb;
    --gray-300: #d1d5db;
    --gray-500: #6b7280;
    --gray-700: #374151;
    --gray-900: #111827;
    --white: #ffffff;
}

/* ==========================================================================
   CHECKBOX FILTERS - TILE STYLE
   ========================================================================== */

/* Container - card background */
#atr-search #atr-cup-size,
#atr-search #atr-bodytype,
#atr-search #atr-hair-color,
#atr-search #atr-eye-color,
#atr-search #atr-pubic-hair,
#atr-search #atr-meeting-with,
#atr-search #atr-incall,
#atr-search #atr-outcall {
    background: var(--gray-100) !important;
    border-radius: 12px !important;
    padding: 15px 20px 20px !important;
    margin-bottom: 15px !important;
}

/* Section Label - base styles */
#atr-search #atr-cup-size > .control-label,
#atr-search #atr-bodytype > .control-label,
#atr-search #atr-hair-color > .control-label,
#atr-search #atr-eye-color > .control-label,
#atr-search #atr-pubic-hair > .control-label,
#atr-search #atr-meeting-with > .control-label,
#atr-search #atr-incall > .control-label,
#atr-search #atr-outcall > .control-label {
    display: flex !important;
    align-items: center !important;
    float: none !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
    color: var(--gray-900) !important;
    margin: 0 0 12px 0 !important;
    padding: 5px 0 5px 0 !important;
    border: none !important;
    line-height: 1.4 !important;
    width: 100% !important;
    text-align: left !important;
}

/* Icon base styles for section labels */
#atr-search #atr-cup-size > .control-label::before,
#atr-search #atr-bodytype > .control-label::before,
#atr-search #atr-hair-color > .control-label::before,
#atr-search #atr-eye-color > .control-label::before,
#atr-search #atr-pubic-hair > .control-label::before,
#atr-search #atr-meeting-with > .control-label::before,
#atr-search #atr-incall > .control-label::before,
#atr-search #atr-outcall > .control-label::before {
    content: '' !important;
    display: inline-block !important;
    width: 20px !important;
    height: 20px !important;
    margin-right: 10px !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    flex-shrink: 0 !important;
}

/* Individual icons */
#atr-search #atr-cup-size > .control-label::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 480 480' fill='%23666666'%3E%3Cpath d='m403.259 469.33c-20.501-57.972-58.132-107.376-42.02-171.04-47.647 17.05-102.341-2.745-121.24-50.54-18.935 47.885-73.692 67.555-121.24 50.54 16.115 63.675-21.499 113.012-42.02 171.04-1.833 5.223 2.033 10.67 7.54 10.67h311.44c5.512 0 9.372-5.452 7.54-10.67zm-155.26-38.524c0 4.418-3.582 8-8 8s-8-3.582-8-8v-17.807c0-4.418 3.582-8 8-8s8 3.582 8 8z'/%3E%3Cpath d='m401.189 65.81-.1-.04c-.101 0-2.852-.984-61.69-21.27-18.97-6.54-34.19-20.94-41.77-39.52-1.23-3.01-4.16-4.98-7.41-4.98h-100.44c-3.25 0-6.18 1.97-7.41 4.98-7.58 18.58-22.8 32.98-41.77 39.52l-61.62 21.25c-40.524 14.638-61.017 52.55-56.66 90.67 13.1 114.59 11.8 212.34 5.04 254.67-.785 4.921 3.031 9.265 7.9 9.265h44.47c.14-.3.27-.615.41-.925 19.77-44.25 36.96-82.739 18.81-130.81-27.114-17.316-44.59-47.043-44.59-85.78 0 0 0-22.994 0-30.658 0-3.666 2.024-4.953 5.228-4.953 5.425 0 14.231 0 22.309 0 10.309 0 11.019-47.453 16.779-47.453 7.548 0 11.12 47.156 23.186 47.156 41.873 0 112.678.221 131.229.279 2.933.01 4.56 1.137 4.56 5.137 0 7.623 0 30.492 0 30.492 0 47.646-32.96 87.715-77.271 98.658-3.855.951-4.751 2.309-.615 2.223 16.239-.338 37.361-2.283 47.355-6.855 53.973-24.684 54.004-68.865 61.058-106.533C324.541 161.362 257.008 89.555 177.458 89.555z'/%3E%3C/svg%3E") !important;
}

#atr-search #atr-bodytype > .control-label::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='%23666666'%3E%3Cpath d='M497 216.9h-38.3l11-11.7c5.7-6 5.4-15.5-.7-21.2s-15.5-5.4-21.2.7l-34.7 37c-5.4 5.7-5.4 15 0 20.7l34.7 37c3 3.1 6.9 4.7 10.9 4.7 3.7 0 7.4-1.3 10.3-4.1 6-5.7 6.3-15.2.7-21.2l-11.2-12h38.6c8.3 0 15-6.7 15-15s-6.7-15-15-15z'/%3E%3Cpath d='M98.9 221.6l-34.7-37c-5.7-6-15.2-6.3-21.2-.7-6 5.7-6.3 15.2-.7 21.2l11 11.7H15c-8.3 0-15 6.7-15 15s6.7 15 15 15h38.6l-11.2 12c-5.7 6-5.4 15.5.7 21.2 2.9 2.7 6.6 4.1 10.3 4.1 4 0 8-1.6 10.9-4.7l34.7-37c5.4-5.8 5.4-15 0-20.7z'/%3E%3Cpath d='M425.9 31.5c-8.1-15.7-16.9-30.4-31.1-31.5H117.3c-14.3 1.1-23 15.8-31.1 31.5-5.3 11.4-11.2 29.6-9.2 51.9 2.1 22.6 11.7 44.5 28.7 65l36.2-13.7c73.6-27.9 154.7-27.9 228.3 0l36.2 13.7c17-20.6 26.6-42.5 28.7-65 2-22.3-3.9-40.5-9.2-51.9zm-9.4 307.3c-21.1-31.5-34.4-66.7-37.2-99-2.1-24 1.5-46.2 10.4-65.6l-30.2-11.4c-66.7-25.3-140.3-25.3-207 0l-30.2 11.4c9 19.3 12.6 41.5 10.4 65.6-2.9 32.3-16.1 67.5-37.2 99-1.5 2.3-3 4.5-4.4 6.8 52.4 18.2 107.6 27.4 164.9 27.4s112.5-9.2 164.9-27.4c-1.4-2.3-2.9-4.5-4.4-6.8zm-145.5-10.8c0 8.3-6.7 15-15 15s-15-6.7-15-15v-14.3c0-8.3 6.7-15 15-15s15 6.7 15 15zm164.8 44.2c-57 20.5-117.3 30.8-179.8 30.8s-122.8-10.4-179.8-30.8c-19.2 39-27.9 80.2-26.7 125.2.2 8.1 6.9 14.6 15 14.6h383c8.1 0 14.8-6.5 15-14.6 1.2-45-7.5-86.3-26.7-125.2z'/%3E%3C/svg%3E") !important;
}

#atr-search #atr-hair-color > .control-label::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='%23666666'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M40.1 2.3c-5.8 1-10.9 3.6-14.2 7.2-.9 1-1.8 1.8-2.1 1.8s-1.3.4-2.2.8c-2.8 1.4-5.2 4.5-6.5 8.5-.9 2.5-.9 8.6-.1 10.4.3.6.4.9.5.9.1 0 .1-.2.1-.6.1-1.6 1.4-4.7 3-6.8 2.7-3.6 6.3-5.1 10-4 2.7.8 3.8 1.9 5.5 5.6 2.3 4.8 4.9 6.9 10.2 8 4.5.9 9.8 0 14.5-2.5 2.8-1.5 4.4-2.7 7.4-5.6 1.3-1.2 2.3-2.1 2.3-2 0 .1-.5 1.3-1.2 2.6-2.1 4.3-5.8 7.6-10.5 9.4-1.1.4-2.1.9-2.1.9 0 0 .3.7.8 1.3 1.1 1.4 1.9 3.9 1.9 5.7 0 .7-.2 2.4-.6 3.9-.8 3.9-.3 6 2 8.3l1.7 1.7 1.1-.6c1.8-1 6.1-5.5 6.4-6.5.1-.6 1.1-1.8 2.2-2.8 1.4-1.2 2.4-2.6 3.2-4.3 1.4-2.8 1.5-3.6.5-4.6-.7-.7-.7-.8-.1-3.6.7-3.5.5-7.8-.6-11.9-3.3-12.7-14.8-21.4-28.2-21.2-1.9 0-4.1.2-5 .3z'/%3E%3C/svg%3E") !important;
}

#atr-search #atr-eye-color > .control-label::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='%23666666'%3E%3Cpath d='M246.4 60.6c-81.9-8.1-161.3 10.1-215.1 28.7C8 97.4-4.9 122.4 1.8 146.1c7.3 26 35.1 40.4 60.6 31.4 81.2-28.7 293.2-70 428.7 5.9-10.5-8.5-57-112.9-244.6-122.8z'/%3E%3Cpath d='M479.5 290.5c-9.1 18.5-30.6 27-49.6 20.6-1.5-1.5-3.1-3.2-4.9-5 4.2-1.7 8.2-3.8 12.1-6.3 17.3-11.1 29.3-28.3 33.7-48.4l-35.4-7.8c-2.3 10.6-8.7 19.7-17.9 25.6-8 5.1-17.3 7.2-26.6 6.2-1.5-1.2-3-2.4-4.5-3.6 20.3-13.8 33.8-36.9 34-63.3l-36.3-.3c-.1 19.5-14.1 35.8-32.4 39.6-40.3-24.3-81.3-36.9-120-36.9-47.4 0-98.3 19-147.1 55.1-36.2 26.7-58.7 53.4-59.6 54.5l-9.8 11.6 9.8 11.6c.9 1.1 23.4 27.7 59.6 54.5 48.8 36 99.6 55.1 147.1 55.1s98.3-19 147.1-55.1c27.2-20.1 46.6-40.1 55-49.3 3 .4 6 .5 9 .5 28.4 0 55.8-15.8 69.2-42.9l-32.5-16.4zM189.3 411.2c-57.6-15.6-105.2-58.3-125.6-79.1 20.5-20.8 68-63.6 125.8-79.1-28.3 15.1-47.5 44.9-47.5 79.1 0 34.2 19.2 64 47.3 79.1zm42.4-58.2c-11.5 0-20.8-9.3-20.8-20.8s9.3-20.8 20.8-20.8 20.8 9.3 20.8 20.8-9.3 20.8-20.8 20.8zm42.2 58.3c28.3-15.1 47.5-44.9 47.5-79.1 0-34.2-19.2-64-47.3-79.1 57.6 15.6 105.2 58.3 125.7 79.1-20.5 20.8-68 63.6-125.8 79.1z'/%3E%3C/svg%3E") !important;
}

#atr-search #atr-pubic-hair > .control-label::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='%23666666'%3E%3Cpath d='M511.8 174.2c0-.2.1-.4 0-.7l-8.5-51.2c-.4-2.5-1.9-4.7-4.1-6-2.2-1.3-4.8-1.5-7.2-.7-42.4 15.3-195.6 33.6-236 33.6s-193.7-18.3-236-33.6c-2.4-.9-5-.6-7.2.7-2.2 1.3-3.7 3.5-4.1 6l-8.5 51.2c0 .2.1.4 0 .7 0 .3-.1.5-.1.7 0 .4.2.8.2 1.3.1.5.1 1 .3 1.5.2.7.6 1.3 1 1.9.2.3.2.6.5.9l.3.2c.6.6 1.2 1.1 2 1.5.3.2.5.4.8.6 1.1.5 2.2.8 3.5.8 18.6 0 118.2 30.4 169.6 94.6 26.5 33.1 35.6 69.6 26.9 108.3v.1c-.2.9-.2 1.7-.1 2.6 0 .3.1.5.1.8.1.7.4 1.3.7 2 .1.2.2.4.3.6 0 .1.1.1.1.2.4.7 1 1.3 1.6 1.9.2.1.3.2.5.4.6.5 1.2.8 1.9 1.1.1.1.2.2.4.2h.3c.8.3 1.7.5 2.6.5h85.3c.9 0 1.8-.2 2.6-.5h.3l.4-.2c.7-.3 1.3-.7 1.9-1.1.2-.1.3-.2.5-.4.6-.5 1.2-1.2 1.6-1.9 0-.1.1-.1.1-.2.1-.2.2-.4.2-.5.3-.7.5-1.3.7-2 .1-.3.1-.5.1-.8.1-.9.1-1.8-.1-2.7v-.1c-8.7-38.8.4-75.2 26.9-108.3 51.4-64.2 151-94.6 169.6-94.6 1.2 0 2.4-.3 3.5-.8.3-.1.5-.4.8-.6.7-.4 1.4-.9 2-1.5l.3-.2c.2-.3.3-.6.5-.9.4-.6.8-1.2 1-1.9.2-.5.2-1 .3-1.5.1-.4.3-.8.3-1.3 0-.3-.1-.5-.2-.7z'/%3E%3C/svg%3E") !important;
}

#atr-search #atr-meeting-with > .control-label::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 46 46' fill='%23666666'%3E%3Cpath d='M15.4 31.6c1 0 1.9-.1 2.9-.3-2-1.7-3.7-3.8-4.8-6.3-.3-.1-.7-.2-1-.3-4.6-1.6-7.1-6.8-5.4-11.4 1.3-3.5 4.6-5.9 8.4-5.9 1 0 2 .2 3 .5 4.6 1.7 7.1 6.8 5.4 11.4-.1.4-.3.7-.4 1l.1.1c.9 2.1 2.8 3.5 5.1 3.9.5-.9 1-1.8 1.3-2.8 2.8-7.9-1.3-16.7-9.3-19.5C19 1.4 17.3 1.1 15.5 1.1 9.1 1.1 3.3 5.2 1.1 11.2c-2.5 7 .5 14.7 6.8 18.3l-1.9 5.3-.6-1.3c-.7-1.4-2.3-2-3.7-1.3s-2 2.3-1.3 3.7l3.6 7.5c.5 1 1.5 1.6 2.5 1.6.4 0 .8-.1 1.2-.3l7.1-3.4c1.4-.6 2-2.3 1.3-3.7-.6-1.4-2.3-2-3.7-1.3l-1.3.6 2-5.5c.8.1 1.6.2 2.4.2z'/%3E%3Cpath d='M45.7 33.2c-.6-1.4-2.2-2-3.6-1.4l-3 1.3-1.2-2.7c2.6-1.7 4.6-4.1 5.7-7.1 1.5-3.8 1.4-7.9-.2-11.7-2.4-5.6-7.9-9.2-14-9.2-1.2 0-2.1.1-3.2.4 2.2 1.4 3.8 3.4 4.9 6.2 2.9.5 5.2 2.4 6.5 5.2.9 2.2 1 4.6.1 6.8-.9 2.2-2.6 4-4.8 4.9-1.1.5-2.3.7-3.5.7-.5 0-1.1 0-1.6-.1-2.9-.5-5.4-2.5-6.6-5.2-.9-2.1-1-4.4-.2-6.6l.1-.3c.2-.4.4-.9.6-1.2-1.1-1.8-2.7-3.1-4.7-3.8-.1 0-.2-.1-.4-.1-.6.9-1.1 1.8-1.5 2.9l-.1.2c-1.4 3.7-1.4 7.8.2 11.5 1.8 4.2 5.4 7.3 9.6 8.5 1.4.4 2.9.7 4.4.7 1.2 0 2.3-.1 3.4-.4l1.2 2.7-3 1.3c-1.4.6-2 2.2-1.4 3.6.4 1 1.5 1.7 2.5 1.7.4 0 .7-.1 1.1-.2l3-1.3 1.1 2.6c.4 1 1.5 1.7 2.5 1.7.4 0 .7-.1 1.1-.2 1.4-.6 2-2.2 1.4-3.6l-1.1-2.6 3-1.3c1.4-.6 2-2.2 1.4-3.6z'/%3E%3C/svg%3E") !important;
}

#atr-search #atr-incall > .control-label::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='%23666666'%3E%3Cpath d='M377 240.1H135c-69.3 0-126.6 52.5-134.2 119.8h510.3c-7.6-67.3-64.9-119.8-134.2-119.8z'/%3E%3Cpath d='M0 389.8v76.3c0 8.3 6.7 15 15 15s15-6.7 15-15v-16h452v16c0 8.3 6.7 15 15 15s15-6.7 15-15v-76.3z'/%3E%3Cpath d='M126 180.1c-2.8 0-5 2.2-5 5v25.6c12.3-1 14.4-.4 90-.6V185c0-2.8-2.2-5-5-5z'/%3E%3Cpath d='M305.9 180.1c-2.8 0-5 2.2-5 5v25c76 .2 77.8-.4 90 .6v-25.6c0-2.8-2.2-5-5-5z'/%3E%3Cpath d='M91 185.1c0-19.3 15.7-35 35-35h80c19.3 0 35 15.7 35 35v25h29.9v-25c0-19.3 15.7-35 35-35h80c19.3 0 35 15.7 35 35v31c22.3 6.2 42.7 16.9 60.1 31.1V70.3c0-6.7-4.4-12.6-10.9-14.4-140.6-40-289.3-40-430 0-6.4 1.8-10.9 7.7-10.9 14.4v173.2c17.8-14.9 38.7-26.1 61.7-32.5z'/%3E%3C/svg%3E") !important;
}

#atr-search #atr-outcall > .control-label::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666666'%3E%3Cpath d='M18.92 6.01C18.72 5.42 18.16 5 17.5 5h-11c-.66 0-1.21.42-1.42 1.01L3 12v8c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-1h12v1c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-8l-2.08-5.99zM6.5 16c-.83 0-1.5-.67-1.5-1.5S5.67 13 6.5 13s1.5.67 1.5 1.5S7.33 16 6.5 16zm11 0c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5zM5 11l1.5-4.5h11L19 11H5z'/%3E%3C/svg%3E") !important;
}

/* Controls wrapper */
#atr-search #atr-cup-size > .controls,
#atr-search #atr-bodytype > .controls,
#atr-search #atr-hair-color > .controls,
#atr-search #atr-eye-color > .controls,
#atr-search #atr-pubic-hair > .controls,
#atr-search #atr-meeting-with > .controls,
#atr-search #atr-incall > .controls,
#atr-search #atr-outcall > .controls {
    display: block !important;
    width: 100% !important;

    float: none !important;
}

/* Tile grid container */
#atr-search #atr-cup-size ul.atr-ul,
#atr-search #atr-bodytype ul.atr-ul,
#atr-search #atr-hair-color ul.atr-ul,
#atr-search #atr-eye-color ul.atr-ul,
#atr-search #atr-pubic-hair ul.atr-ul,
#atr-search #atr-meeting-with ul.atr-ul,
#atr-search #atr-incall ul.atr-ul,
#atr-search #atr-outcall ul.atr-ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    float: none !important;
    clear: both !important;
}

/* Hide select all / deselect all */
#atr-search #atr-cup-size .atr-select-deselect,
#atr-search #atr-bodytype .atr-select-deselect,
#atr-search #atr-hair-color .atr-select-deselect,
#atr-search #atr-eye-color .atr-select-deselect,
#atr-search #atr-pubic-hair .atr-select-deselect,
#atr-search #atr-meeting-with .atr-select-deselect,
#atr-search #atr-incall .atr-select-deselect,
#atr-search #atr-outcall .atr-select-deselect {
    display: none !important;
}

/* Each tile item (li) */
#atr-search #atr-cup-size ul.atr-ul li,
#atr-search #atr-bodytype ul.atr-ul li,
#atr-search #atr-hair-color ul.atr-ul li,
#atr-search #atr-eye-color ul.atr-ul li,
#atr-search #atr-pubic-hair ul.atr-ul li,
#atr-search #atr-meeting-with ul.atr-ul li,
#atr-search #atr-incall ul.atr-ul li,
#atr-search #atr-outcall ul.atr-ul li {
    display: flex !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0 !important;
    max-width: none !important;
    width: auto !important;
    clear: none !important;
    flex: 0 0 auto !important;
}

/* Tile wrapper div */
#atr-search #atr-cup-size .atr-input-box,
#atr-search #atr-bodytype .atr-input-box,
#atr-search #atr-hair-color .atr-input-box,
#atr-search #atr-eye-color .atr-input-box,
#atr-search #atr-pubic-hair .atr-input-box,
#atr-search #atr-meeting-with .atr-input-box,
#atr-search #atr-incall .atr-input-box,
#atr-search #atr-outcall .atr-input-box {
    position: relative !important;
    display: block !important;
    margin: 0 !important;
    float: none !important;
    width: 100% !important;
    clear: none !important;
}

/* Hide the actual checkbox */
#atr-search #atr-cup-size .atr-input-box input[type="checkbox"],
#atr-search #atr-bodytype .atr-input-box input[type="checkbox"],
#atr-search #atr-hair-color .atr-input-box input[type="checkbox"],
#atr-search #atr-eye-color .atr-input-box input[type="checkbox"],
#atr-search #atr-pubic-hair .atr-input-box input[type="checkbox"],
#atr-search #atr-meeting-with .atr-input-box input[type="checkbox"],
#atr-search #atr-incall .atr-input-box input[type="checkbox"],
#atr-search #atr-outcall .atr-input-box input[type="checkbox"] {
    position: absolute !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    z-index: -1 !important;
    pointer-events: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* THE TILE LABEL */
#atr-search #atr-cup-size .atr-input-box label,
#atr-search #atr-bodytype .atr-input-box label,
#atr-search #atr-hair-color .atr-input-box label,
#atr-search #atr-eye-color .atr-input-box label,
#atr-search #atr-pubic-hair .atr-input-box label,
#atr-search #atr-meeting-with .atr-input-box label,
#atr-search #atr-incall .atr-input-box label,
#atr-search #atr-outcall .atr-input-box label {
    /* Reset conflicts */
    display: flex !important;
    float: none !important;
    position: relative !important;
    clear: none !important;
    
    /* Tile sizing & alignment */
    align-items: center !important;
    min-width: 60px !important;
    max-width: none !important;
    width: 100% !important;
    min-height: auto !important;
    padding: 10px 14px !important;
    margin: 0 !important;
    
    /* Tile visual style */
    background-color: var(--white) !important;
    border: 1px solid var(--gray-200) !important;
    border-radius: 10px !important;
    box-shadow: 0 2px 13px -4px rgba(0, 0, 0, 0.14) !important;
    
    /* Text styling */
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--gray-700) !important;
    text-align: left !important;
    white-space: nowrap !important;
    line-height: 1.4 !important;
    
    /* Interaction */
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    user-select: none !important;
    box-sizing: border-box !important;
}

/* Circle indicator ::before */
#atr-search #atr-cup-size .atr-input-box label::before,
#atr-search #atr-bodytype .atr-input-box label::before,
#atr-search #atr-hair-color .atr-input-box label::before,
#atr-search #atr-eye-color .atr-input-box label::before,
#atr-search #atr-pubic-hair .atr-input-box label::before,
#atr-search #atr-meeting-with .atr-input-box label::before,
#atr-search #atr-incall .atr-input-box label::before,
#atr-search #atr-outcall .atr-input-box label::before {
    content: '' !important;
    display: inline-block !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    margin-right: 10px !important;
    border: 2px solid var(--gray-300) !important;
    border-radius: 50% !important;
    background: var(--white) !important;
    flex-shrink: 0 !important;
    transition: all 0.2s ease !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
}

/* Remove ::after */
#atr-search #atr-cup-size .atr-input-box label::after,
#atr-search #atr-bodytype .atr-input-box label::after,
#atr-search #atr-hair-color .atr-input-box label::after,
#atr-search #atr-eye-color .atr-input-box label::after,
#atr-search #atr-pubic-hair .atr-input-box label::after,
#atr-search #atr-meeting-with .atr-input-box label::after,
#atr-search #atr-incall .atr-input-box label::after,
#atr-search #atr-outcall .atr-input-box label::after {
    display: none !important;
    content: none !important;
}

/* Hover state */
#atr-search #atr-cup-size .atr-input-box label:hover,
#atr-search #atr-bodytype .atr-input-box label:hover,
#atr-search #atr-hair-color .atr-input-box label:hover,
#atr-search #atr-eye-color .atr-input-box label:hover,
#atr-search #atr-pubic-hair .atr-input-box label:hover,
#atr-search #atr-meeting-with .atr-input-box label:hover,
#atr-search #atr-incall .atr-input-box label:hover,
#atr-search #atr-outcall .atr-input-box label:hover {
    background-color: #f5f5f5 !important;
    border-color: #ccc !important;
    text-decoration: none !important;
}

/* CHECKED STATE - Pink highlight */
#atr-search #atr-cup-size .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-bodytype .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-hair-color .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-eye-color .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-pubic-hair .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-meeting-with .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-incall .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-outcall .atr-input-box input[type="checkbox"]:checked + label {
    background-color: var(--brand-light) !important;
    border-color: var(--brand) !important;
    color: var(--brand) !important;
    font-weight: 600 !important;
}

/* Checked circle indicator */
#atr-search #atr-cup-size .atr-input-box input[type="checkbox"]:checked + label::before,
#atr-search #atr-bodytype .atr-input-box input[type="checkbox"]:checked + label::before,
#atr-search #atr-hair-color .atr-input-box input[type="checkbox"]:checked + label::before,
#atr-search #atr-eye-color .atr-input-box input[type="checkbox"]:checked + label::before,
#atr-search #atr-pubic-hair .atr-input-box input[type="checkbox"]:checked + label::before,
#atr-search #atr-meeting-with .atr-input-box input[type="checkbox"]:checked + label::before,
#atr-search #atr-incall .atr-input-box input[type="checkbox"]:checked + label::before,
#atr-search #atr-outcall .atr-input-box input[type="checkbox"]:checked + label::before {
    border-color: var(--brand) !important;
    background-color: var(--brand) !important;
    box-shadow: inset 0 0 0 3px var(--white) !important;
}

/* ==========================================================================
   INCALL / OUTCALL - SIDE BY SIDE LAYOUT
   ========================================================================== */

/* Make parent a flex container */
#atr-search {
    display: flex !important;
    flex-wrap: wrap !important;
}

/* All control groups should be full width by default */
#atr-search .control-group {
    flex: 0 0 100% !important;
    width: 100% !important;
}

/* Incall and Outcall should be half width */
#atr-search .control-group#atr-incall,
#atr-search .control-group#atr-outcall {
    flex: 0 0 calc(50% - 8px) !important;
    width: calc(50% - 8px) !important;
    max-width: calc(50% - 8px) !important;
    margin-bottom: 0 !important;
}

/* ==========================================================================
   END CHECKBOX FILTERS
   ========================================================================== */

/* ==========================================================================
   AGE SLIDER
   ========================================================================== */

#atr-search #atr-age .slider-container {
    padding-top: 5px;
}

#atr-search #atr-age .slider-header {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 0.5rem;
}

#atr-search #atr-age .slider-value {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--gray-700);
}

#atr-search #atr-age .slider-wrapper {
    position: relative;
    height: 32px;
    width: 100%;
}

#atr-search #atr-age .slider-track {
    position: absolute;
    height: 4px;
    width: 100%;
    background-color: var(--gray-200);
    border-radius: 9999px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
}

#atr-search #atr-age .slider-fill {
    position: absolute;
    height: 4px;
    background-color: var(--brand);
    border-radius: 9999px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
}

#atr-search #atr-age .range-input {
    position: absolute;
    width: 100%;
    pointer-events: none;
    -webkit-appearance: none;
    appearance: none;
    background: none;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
    margin: 0;
    border: none;
}

#atr-search #atr-age .range-input::-webkit-slider-thumb {
    pointer-events: auto;
    -webkit-appearance: none;
    appearance: none;
    width: 24px;
    height: 24px;
    background: white;
    border: 2px solid var(--brand);
    border-radius: 50%;
    cursor: pointer;
    box-shadow: 0 2px 5px rgba(0,0,0,0.15);
}

#atr-search #atr-age .range-input::-moz-range-thumb {
    pointer-events: auto;
    width: 24px;
    height: 24px;
    background: white;
    border: 2px solid var(--brand);
    border-radius: 50%;
    cursor: pointer;
    box-shadow: 0 2px 5px rgba(0,0,0,0.15);
}

/* ==========================================================================
   PRICE SLIDER
   ========================================================================== */

#atr-search #atr-price-1-hour .slider-container {
    padding-top: 5px;
}

#atr-search #atr-price-1-hour .slider-header {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 0.5rem;
}

#atr-search #atr-price-1-hour .slider-value {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--gray-700);
}

#atr-search #atr-price-1-hour .slider-wrapper {
    position: relative;
    height: 32px;
    width: 100%;
}

#atr-search #atr-price-1-hour .slider-track {
    position: absolute;
    height: 4px;
    width: 100%;
    background-color: var(--gray-200);
    border-radius: 9999px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
}

#atr-search #atr-price-1-hour .slider-fill {
    position: absolute;
    height: 4px;
    background-color: var(--brand);
    border-radius: 9999px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
}

#atr-search #atr-price-1-hour .range-input {
    position: absolute;
    width: 100%;
    pointer-events: none;
    -webkit-appearance: none;
    appearance: none;
    background: none;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
    margin: 0;
    border: none;
}

#atr-search #atr-price-1-hour .range-input::-webkit-slider-thumb {
    pointer-events: auto;
    -webkit-appearance: none;
    appearance: none;
    width: 24px;
    height: 24px;
    background: white;
    border: 2px solid var(--brand);
    border-radius: 50%;
    cursor: pointer;
    box-shadow: 0 2px 5px rgba(0,0,0,0.15);
}

#atr-search #atr-price-1-hour .range-input::-moz-range-thumb {
    pointer-events: auto;
    width: 24px;
    height: 24px;
    background: white;
    border: 2px solid var(--brand);
    border-radius: 50%;
    cursor: pointer;
    box-shadow: 0 2px 5px rgba(0,0,0,0.15);
}

/* ==========================================================================
   RECOMMENDED CARDS
   ========================================================================== */

.recommended-section {
    padding: 20px 0 20px 0;
    border-bottom: 1px solid #e5e7eb;
}

.recommended-section .section-title {
    font-weight: 600;
    margin-bottom: 1rem;
    margin-top: 0;
    color: var(--gray-900);
    font-size: 17px;
    font-family: "CircularXXWeb-Regular", sans-serif;
}

.recommended-section .grid-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.75rem;
}

.recommended-section .grid-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.75rem;
}

.recommended-section .card-label {
    cursor: pointer;
    position: relative;
    display: block;
}

.recommended-section .hidden-checkbox {
    display: none;
}

.recommended-section .card-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0.5rem;
    height: 5rem;
    border-radius: 0.75rem;
    background-color: var(--white);
    background-image: linear-gradient(to bottom, #ffffff, #f9fafb);
    border: 1px solid #e2e8f0;
    border-bottom-width: 3px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.02), 0 1px 2px rgba(0,0,0,0.04);
    transition: all 0.1s cubic-bezier(0.4, 0, 0.2, 1);
}

.recommended-section .card-icon {
    margin-bottom: 0.5rem;
    width: 2rem;
    height: 2rem;
    color: var(--gray-900);
}

/* Hide the visible checkbox */
.recommended-section .hidden-checkbox {
    display: none !important;
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Change checked state to dark instead of pink */
.recommended-section .hidden-checkbox:checked + .card-content {
    border: 2px solid var(--gray-900);
    border-bottom-width: 2px;
    background-image: none;
    background-color: #f3f4f6;
    box-shadow: inset 0 2px 4px 0 rgba(0, 0, 0, 0.06);
    transform: translateY(1px);
}

.recommended-section .hidden-checkbox:checked + .card-content .card-icon {
    color: var(--gray-900);
}

/* ==========================================================================
   SLIDER LAYOUT FIX - Label left, value right
   ========================================================================== */

#atr-search #atr-age .slider-container,
#atr-search #atr-price-1-hour .slider-container {
    padding-top: 5px;
}

#atr-search #atr-age .slider-header,
#atr-search #atr-price-1-hour .slider-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
}

#atr-search #atr-age .slider-header::before,
#atr-search #atr-price-1-hour .slider-header::before {
    content: attr(data-label);
        font-size: 17px;
    font-weight: 600;
    color: var(--gray-900);
}

#atr-search #atr-age .slider-value,
#atr-search #atr-price-1-hour .slider-value {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--gray-500);
}

/* Hide original labels for slider containers */
#atr-search #atr-age > .control-label,
#atr-search #atr-price-1-hour > .control-label {
    display: none !important;
}

/* ==========================================================================
   SEARCH INPUT - DEMO STYLE
   ========================================================================== */

body.search .filter-modal-search-fieldset,
body.search .form-container fieldset.first {
    border: none !important;
    padding: 0 !important;
    margin: 0 0 1.5rem 0 !important;
}

body.search .filter-modal-search-fieldset {
    margin: 0 !important;
}

body.search .filter-modal-search-fieldset .controls,
body.search .form-container fieldset.first .controls {
    position: relative;
}

/* Search icon */
body.search .filter-modal-search-fieldset .controls::before,
body.search .form-container fieldset.first .controls::before {
    content: '';
    position: absolute;
    left: 1rem;
    top: 50%;
    transform: translateY(-50%);
    width: 1.25rem;
    height: 1.25rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 1;
    pointer-events: none;
}

/* Input styling */
body.search .filter-modal-search-fieldset .controls input#query,
body.search .form-container .controls input#query {
    width: 100%;
    padding: 0.875rem 1rem 0.875rem 2.75rem;
    background-color: #f3f4f6;
    border: 2px solid transparent;
    border-radius: 9999px;
    font-weight: 500;
    font-size: 1rem;
    color: #111827;
    outline: none;
    transition: all 0.2s ease;
    box-sizing: border-box;
    height: auto;
    margin-bottom: 0;
}

/* Placeholder */
body.search .filter-modal-search-fieldset .controls input#query::placeholder,
body.search .form-container .controls input#query::placeholder {
    color: #6b7280;
    font-weight: 400;
}

/* Focus state */
body.search .filter-modal-search-fieldset .controls input#query:focus,
body.search .form-container .controls input#query:focus {
    background-color: #ffffff;
    border-color: #111827;
}

/* ==========================================================================
   FILTER MODAL FOOTER
   ========================================================================== */

/* ==========================================================================
   FILTER MODAL LAYOUT - Sticky Header/Footer with Scrollable Body
   ========================================================================== */

/* Main modal container - flex column layout */
.fancybox__container .fancybox__content.escortify-filter-modal-shell {
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

#dialog-content {
    position: relative;
    display: flex;
    flex-direction: column !important;
    max-height: 90vh !important;
    height: auto !important;
    padding: 0 !important;
    overflow: hidden !important;
    background-color: rgba(255, 255, 255, 0.045);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.052) 0%, rgba(255, 255, 255, 0.032) 100%),
        linear-gradient(90deg, rgba(6, 6, 8, 0.56) 0%, rgba(18, 12, 18, 0.34) 18%, rgba(28, 18, 26, 0.18) 50%, rgba(18, 12, 18, 0.34) 82%, rgba(6, 6, 8, 0.56) 100%) !important;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
    isolation: isolate;
}

#dialog-content::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.04) 0%, rgba(255, 255, 255, 0.016) 28%, rgba(0, 0, 0, 0.12) 100%);
    pointer-events: none;
    z-index: 0;
}

#dialog-content > * {
    position: relative;
    z-index: 1;
}

/* Sticky Header */
.filter-modal-header {
    position: sticky;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 16px 24px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.018) 100%);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(24px) saturate(165%);
    -webkit-backdrop-filter: blur(24px) saturate(165%);
    z-index: 10;
    flex-shrink: 0;
}

.filter-modal-header h2 {
    font-size: 17px;
    font-family: "CircularXXWeb-Medium", sans-serif;
    font-weight: 600;
    margin: 0;
    text-align: center;
    color: rgba(255, 255, 255, 0.92);
}

.filter-modal-search-fieldset {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.filter-modal-search-fieldset .control-group,
.filter-modal-search-fieldset .controls {
    width: 100%;
    margin: 0;
}

.filter-modal-close {
    position: relative;
    right: auto;
    top: auto;
    transform: none;
    width: 32px;
    height: 32px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.055);
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s ease;
    padding: 0;
}

.filter-modal-close:hover {
    background: rgba(255, 255, 255, 0.09);
}

.filter-modal-close svg {
    width: 16px;
    height: 16px;
    stroke: rgba(255, 255, 255, 0.88);
    stroke-width: 2;
}

/* Scrollable Body */
.filter-modal-body {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 30px 35px 50px 35px;
    -webkit-overflow-scrolling: touch;
    background: transparent;
    scrollbar-color: rgba(255, 255, 255, 0.18) rgba(255, 255, 255, 0.04);
}

/* Custom scrollbar for modal body */
.filter-modal-body::-webkit-scrollbar {
    width: 8px;
}

.filter-modal-body::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.04);
    border-radius: 4px;
}

.filter-modal-body::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.18);
    border-radius: 4px;
}

.filter-modal-body::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.26);
}

/* Form wrapper inside body */
.filter-modal-form {
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* Clean up reg-box inside modal */
.filter-modal-body .reg-box {
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
}

.filter-modal-body .form-container {
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* Sticky Footer */
.filter-modal-footer {
    position: sticky;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 24px;
    overflow: hidden;
    isolation: isolate;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.024) 100%),
        linear-gradient(90deg, rgba(4, 4, 6, 0.84) 0%, rgba(12, 9, 13, 0.68) 18%, rgba(22, 14, 20, 0.44) 50%, rgba(12, 9, 13, 0.68) 82%, rgba(4, 4, 6, 0.84) 100%);
    border-top: 1px solid rgba(255, 255, 255, 0.07);
    gap: 1rem;
    z-index: 10;
    flex-shrink: 0;
    box-shadow: 0 -16px 36px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.035);
    backdrop-filter: blur(20px) saturate(165%);
    -webkit-backdrop-filter: blur(20px) saturate(165%);
}

.filter-clear-link {
    font-size: 0.875rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.72);
    text-decoration: underline;
    cursor: pointer;
    background: none;
    border: none;
    padding: 0.5rem;
    transition: color 0.2s ease;
}

.filter-clear-link:hover {
    color: rgba(255, 255, 255, 0.94);
}

/* Shell-level text contrast on dark glass */
#dialog-content .selected-filters-section,
#dialog-content .accordion-item {
    border-color: rgba(255, 255, 255, 0.08);
}

#dialog-content .selected-filters-section .section-title,
#dialog-content .recommended-section .section-title,
#dialog-content .filter-section-title,
#dialog-content .filter-popup-inner h3,
#dialog-content .accordion-btn,
#dialog-content #atr-search .control-group > .control-label,
#dialog-content #atr-search .control-group .control-label {
    color: rgba(255, 255, 255, 0.92) !important;
}

#dialog-content .accordion-btn .accordion-icon,
#dialog-content #atr-search .control-group .control-label .select-all-btn {
    color: rgba(255, 255, 255, 0.55) !important;
}

#dialog-content #atr-search .control-group > label {
    border-top-color: rgba(255, 255, 255, 0.12);
}

.filter-apply-btn {
    flex: 1;
    max-width: 280px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 28px;
    background: linear-gradient(to right, #E61E4D 0%, #E31C5F 50%, #D70466 100%);
    border: none;
    border-radius: 999px;
    color: #fff;
    font-family: "Söhne", sans-serif;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: 0.01em;
    text-transform: none;
    text-shadow: none;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(255, 51, 102, 0.3);
    transition: none;
    line-height: unset;
    text-decoration: none;
}

.filter-apply-btn:hover {
    background: linear-gradient(to right, #E61E4D 0%, #E31C5F 50%, #D70466 100%);
    transform: none;
    box-shadow: 0 4px 12px rgba(255, 51, 102, 0.3);
}

.filter-apply-btn:active {
    transform: none;
    background: linear-gradient(to right, #E61E4D 0%, #E31C5F 50%, #D70466 100%);
    box-shadow: 0 4px 12px rgba(255, 51, 102, 0.3);
}

.filter-apply-btn:focus {
    outline: 2px solid rgba(255, 255, 255, 0.5);
    outline-offset: 2px;
}

/* ==========================================================================
   SELECTED FILTERS CHIPS
   ========================================================================== */

.selected-filters-section {
    padding: 0 0 20px 0;
    border-bottom: 1px solid var(--gray-200);
}

.selected-filters-section .section-title {
    font-size: 17px;
    font-family: "CircularXXWeb-Regular", sans-serif;
    font-weight: 600;
    margin-bottom: 1rem;
    margin-top: 0;
    color: var(--gray-900);
}

.selected-filters-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.filter-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    background-color: var(--white);
    border: 1px solid var(--gray-900);
    border-radius: 9999px;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--gray-900);
    cursor: pointer;  /* <-- This is the key line */
    transition: all 0.15s ease;
    user-select: none;
}

.filter-chip:hover {
    background-color: var(--gray-100);
}

.filter-chip svg {
    flex-shrink: 0;
}

/* Lift on hover */
.recommended-section .card-content {
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.recommended-section .card-label:hover .card-content {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
    border: 2px solid var(--gray-900);
}

/* ==========================================================================
   ACCORDION SECTIONS - Location, Appearance, Services & Meeting
   ========================================================================== */

.filter-accordion {
    width: 100%;
}

.accordion-item {
    border-bottom: 1px solid var(--gray-200);
    padding: 0.5rem 0;
}

.accordion-item:last-child {
    border-bottom: none;
}

.accordion-btn {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 0;
    background: none;
    border: none;
    cursor: pointer;
    font-family: "CircularXXWeb-Medium", sans-serif;
    font-size: 1rem;
    font-weight: 600;
    color: var(--gray-900);
    text-align: left;
}

.accordion-btn:hover {
    color: var(--brand);
}

.accordion-btn .accordion-icon {
    width: 20px;
    height: 20px;
    transition: transform 0.3s ease;
    color: var(--gray-500);
}

.accordion-btn.open .accordion-icon {
    transform: rotate(180deg);
}

.accordion-content {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.3s ease;

}

.accordion-content.open {
    grid-template-rows: 1fr;
}

.accordion-inner {
    overflow: hidden;
    padding-bottom: 0;
}

.accordion-content.open .accordion-inner {
    padding-bottom: 1rem;
}

/* ==========================================================================
   CHIP/PILL STYLES - For all filter selections
   ========================================================================== */

.chip-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding-top: 0.5rem;
}

.chip-label {
    cursor: pointer;
    display: inline-block;
}

.chip-label .hidden-checkbox {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
    pointer-events: none;
}

.chip-content {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--white);
    border: 1px solid var(--gray-200);
    padding: 0.5rem 1rem;
    border-radius: 9999px;
    font-family: "CircularXXWeb-Regular", sans-serif;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--gray-700);
    transition: all 0.15s ease;
    white-space: nowrap;
}

.chip-content:hover {
    border-color: var(--gray-300);
    background-color: var(--gray-100);
}

.chip-label .hidden-checkbox:checked + .chip-content {
    border: 2px solid var(--brand);
    background-color: #fff0f5;
    color: var(--brand);
    font-weight: 600;
}

/* ==========================================================================
   SUBURB SEARCH & SCROLL AREA
   ========================================================================== */

.suburb-search-wrapper {
    position: relative;
    margin-bottom: 0.75rem;
}

.suburb-search-icon {
    position: absolute;
    left: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
    width: 1rem;
    height: 1rem;
    color: var(--gray-500);
    pointer-events: none;
}

.suburb-search-input {
    width: 100%;
    padding: 0.625rem 0.75rem 0.625rem 2.25rem;
    background-color: var(--gray-100);
    border: 1px solid transparent;
    border-radius: 0.5rem;
    font-family: "CircularXXWeb-Regular", sans-serif;
    font-size: 0.875rem;
    color: var(--gray-900);
    outline: none;
    transition: all 0.2s ease;
    box-sizing: border-box;
}

.suburb-search-input::placeholder {
    color: var(--gray-500);
}

.suburb-search-input:focus {
    background-color: var(--white);
    border-color: var(--gray-300);
}

.suburb-scroll-area {
    max-height: 15rem;
    overflow-y: auto;
    padding-right: 0.5rem;
}

/* Custom scrollbar for suburb area */
.suburb-scroll-area::-webkit-scrollbar {
    width: 6px;
}

.suburb-scroll-area::-webkit-scrollbar-track {
    background: var(--gray-100);
    border-radius: 3px;
}

.suburb-scroll-area::-webkit-scrollbar-thumb {
    background: var(--gray-300);
    border-radius: 3px;
}

.suburb-scroll-area::-webkit-scrollbar-thumb:hover {
    background: var(--gray-400);
}

/* ==========================================================================
   SUBURB CHIPS - Override existing suburb styling
   ========================================================================== */

#atr-search #atr-auckland-suburbs,
#atr-search #atr-wellington-suburbs,
#atr-search #atr-chch-suburbs,
#atr-search #atr-hamilton-suburbs,
#atr-search #atr-nth-island,
#atr-search #atr-south-island-suburbs,
#atr-search #atr-tauranga-suburbs {
    background: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}

/* Hide default suburb labels - we use accordion header instead */
#atr-search #atr-auckland-suburbs > .control-label,
#atr-search #atr-wellington-suburbs > .control-label,
#atr-search #atr-chch-suburbs > .control-label,
#atr-search #atr-hamilton-suburbs > .control-label,
#atr-search #atr-nth-island > .control-label,
#atr-search #atr-south-island-suburbs > .control-label,
#atr-search #atr-tauranga-suburbs > .control-label {
    display: none !important;
}

/* Suburb list as chip grid */
#atr-search #atr-auckland-suburbs ul.atr-ul,
#atr-search #atr-wellington-suburbs ul.atr-ul,
#atr-search #atr-chch-suburbs ul.atr-ul,
#atr-search #atr-hamilton-suburbs ul.atr-ul,
#atr-search #atr-nth-island ul.atr-ul,
#atr-search #atr-south-island-suburbs ul.atr-ul,
#atr-search #atr-tauranga-suburbs ul.atr-ul {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.5rem !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    max-height: 15rem;
    overflow-y: auto;
}

/* Each suburb item */
#atr-search #atr-auckland-suburbs ul.atr-ul li,
#atr-search #atr-wellington-suburbs ul.atr-ul li,
#atr-search #atr-chch-suburbs ul.atr-ul li,
#atr-search #atr-hamilton-suburbs ul.atr-ul li,
#atr-search #atr-nth-island ul.atr-ul li,
#atr-search #atr-south-island-suburbs ul.atr-ul li,
#atr-search #atr-tauranga-suburbs ul.atr-ul li {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    min-width: auto !important;
    max-width: none !important;
    width: auto !important;
    float: none !important;
}

/* Suburb checkbox wrapper */
#atr-search #atr-auckland-suburbs .atr-input-box,
#atr-search #atr-wellington-suburbs .atr-input-box,
#atr-search #atr-chch-suburbs .atr-input-box,
#atr-search #atr-hamilton-suburbs .atr-input-box,
#atr-search #atr-nth-island .atr-input-box,
#atr-search #atr-south-island-suburbs .atr-input-box,
#atr-search #atr-tauranga-suburbs .atr-input-box {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    width: auto !important;
}

/* Suburb chip label - HIGH SPECIFICITY to override base styles */
#atr-search .control-group#atr-auckland-suburbs .atr-input-box label,
#atr-search .control-group#atr-wellington-suburbs .atr-input-box label,
#atr-search .control-group#atr-chch-suburbs .atr-input-box label,
#atr-search .control-group#atr-hamilton-suburbs .atr-input-box label,
#atr-search .control-group#atr-nth-island .atr-input-box label,
#atr-search .control-group#atr-south-island-suburbs .atr-input-box label,
#atr-search .control-group#atr-tauranga-suburbs .atr-input-box label {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: var(--white) !important;
    border: 1px solid var(--gray-200) !important;
    padding: 0.5rem 1rem !important;
    padding-left: 1rem !important;
    border-radius: 9999px !important;
    font-family: "CircularXXWeb-Regular", sans-serif !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    color: var(--gray-700) !important;
    transition: all 0.15s ease !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    box-shadow: none !important;
    min-width: auto !important;
    min-height: auto !important;
    float: none !important;
    position: relative !important;
    line-height: 1.4 !important;
    text-align: center !important;
    margin: unset;
}

/* Remove circle indicator for suburb chips - HIGH SPECIFICITY */
#atr-search .control-group#atr-auckland-suburbs .atr-input-box label::before,
#atr-search .control-group#atr-wellington-suburbs .atr-input-box label::before,
#atr-search .control-group#atr-chch-suburbs .atr-input-box label::before,
#atr-search .control-group#atr-hamilton-suburbs .atr-input-box label::before,
#atr-search .control-group#atr-nth-island .atr-input-box label::before,
#atr-search .control-group#atr-south-island-suburbs .atr-input-box label::before,
#atr-search .control-group#atr-tauranga-suburbs .atr-input-box label::before,
#atr-search .control-group#atr-auckland-suburbs .atr-input-box label::after,
#atr-search .control-group#atr-wellington-suburbs .atr-input-box label::after,
#atr-search .control-group#atr-chch-suburbs .atr-input-box label::after,
#atr-search .control-group#atr-hamilton-suburbs .atr-input-box label::after,
#atr-search .control-group#atr-nth-island .atr-input-box label::after,
#atr-search .control-group#atr-south-island-suburbs .atr-input-box label::after,
#atr-search .control-group#atr-tauranga-suburbs .atr-input-box label::after {
    display: none !important;
    content: '' !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    position: absolute !important;
    visibility: hidden !important;
}

/* Suburb chip hover */
#atr-search #atr-auckland-suburbs .atr-input-box label:hover,
#atr-search #atr-wellington-suburbs .atr-input-box label:hover,
#atr-search #atr-chch-suburbs .atr-input-box label:hover,
#atr-search #atr-hamilton-suburbs .atr-input-box label:hover,
#atr-search #atr-nth-island .atr-input-box label:hover,
#atr-search #atr-south-island-suburbs .atr-input-box label:hover,
#atr-search #atr-tauranga-suburbs .atr-input-box label:hover {
    border-color: var(--gray-300) !important;
    background-color: var(--gray-100) !important;
    text-decoration: none !important;
}

/* Suburb chip checked state */
#atr-search #atr-auckland-suburbs .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-wellington-suburbs .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-chch-suburbs .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-hamilton-suburbs .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-nth-island .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-south-island-suburbs .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-tauranga-suburbs .atr-input-box input[type="checkbox"]:checked + label {
    border: 2px solid var(--brand) !important;
    background-color: #fff0f5 !important;
    color: var(--brand) !important;
    font-weight: 600 !important;
}

/* ==========================================================================
   APPEARANCE SECTION - Convert to chip style
   ========================================================================== */

/* Remove card background from appearance sections */
#atr-search #atr-cup-size,
#atr-search #atr-bodytype,
#atr-search #atr-hair-color,
#atr-search #atr-eye-color,
#atr-search #atr-pubic-hair {
    background: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin-bottom: 1rem !important;
}

/* Appearance section labels - simpler style */
#atr-search #atr-cup-size > .control-label,
#atr-search #atr-bodytype > .control-label,
#atr-search #atr-hair-color > .control-label,
#atr-search #atr-eye-color > .control-label,
#atr-search #atr-pubic-hair > .control-label {
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    color: var(--gray-700) !important;
    margin-bottom: 0.5rem !important;
    padding: 0 !important;
    border: none !important;
}

/* Remove icons from appearance labels */
#atr-search #atr-cup-size > .control-label::before,
#atr-search #atr-bodytype > .control-label::before,
#atr-search #atr-hair-color > .control-label::before,
#atr-search #atr-eye-color > .control-label::before,
#atr-search #atr-pubic-hair > .control-label::before {
    display: none !important;
}

/* Appearance chips - convert tiles to pills - HIGH SPECIFICITY */
#atr-search .control-group#atr-cup-size .atr-input-box label,
#atr-search .control-group#atr-bodytype .atr-input-box label,
#atr-search .control-group#atr-hair-color .atr-input-box label,
#atr-search .control-group#atr-eye-color .atr-input-box label,
#atr-search .control-group#atr-pubic-hair .atr-input-box label {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: var(--white) !important;
    border: 1px solid var(--gray-200) !important;
    padding: 0.5rem 1rem !important;
    padding-left: 1rem !important;
    border-radius: 9999px !important;
    box-shadow: none !important;
    min-width: auto !important;
    font-family: "CircularXXWeb-Regular", sans-serif !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    color: var(--gray-700) !important;
    white-space: nowrap !important;
    text-align: center !important;
}

/* Remove circle indicator from appearance chips - HIGH SPECIFICITY */
#atr-search .control-group#atr-cup-size .atr-input-box label::before,
#atr-search .control-group#atr-bodytype .atr-input-box label::before,
#atr-search .control-group#atr-hair-color .atr-input-box label::before,
#atr-search .control-group#atr-eye-color .atr-input-box label::before,
#atr-search .control-group#atr-pubic-hair .atr-input-box label::before,
#atr-search .control-group#atr-cup-size .atr-input-box label::after,
#atr-search .control-group#atr-bodytype .atr-input-box label::after,
#atr-search .control-group#atr-hair-color .atr-input-box label::after,
#atr-search .control-group#atr-eye-color .atr-input-box label::after,
#atr-search .control-group#atr-pubic-hair .atr-input-box label::after {
    display: none !important;
    content: '' !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    position: absolute !important;
    visibility: hidden !important;
}

/* Appearance chip checked state */
#atr-search #atr-cup-size .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-bodytype .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-hair-color .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-eye-color .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-pubic-hair .atr-input-box input[type="checkbox"]:checked + label {
    border: 2px solid var(--brand) !important;
    background-color: #fff0f5 !important;
}

/* ==========================================================================
   SERVICES & MEETING SECTION - Convert to chip style
   ========================================================================== */

/* Remove card background from services sections */
#atr-search #atr-meeting-with,
#atr-search #atr-incall,
#atr-search #atr-outcall {
    background: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin-bottom: 1rem !important;
}

/* Reset incall/outcall to full width (remove side-by-side) */
#atr-search .control-group#atr-incall,
#atr-search .control-group#atr-outcall {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Services section labels - simpler style */
#atr-search #atr-meeting-with > .control-label,
#atr-search #atr-incall > .control-label,
#atr-search #atr-outcall > .control-label {
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    color: var(--gray-700) !important;
    margin-bottom: 0.5rem !important;
    padding: 0 !important;
    border: none !important;
}

/* Remove icons from services labels */
#atr-search #atr-meeting-with > .control-label::before,
#atr-search #atr-incall > .control-label::before,
#atr-search #atr-outcall > .control-label::before {
    display: none !important;
}

/* Services chips - convert tiles to pills - HIGH SPECIFICITY */
#atr-search .control-group#atr-meeting-with .atr-input-box label,
#atr-search .control-group#atr-incall .atr-input-box label,
#atr-search .control-group#atr-outcall .atr-input-box label {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: var(--white) !important;
    border: 1px solid var(--gray-200) !important;
    padding: 0.5rem 1rem !important;
    padding-left: 1rem !important;
    border-radius: 9999px !important;
    box-shadow: none !important;
    min-width: auto !important;
    font-family: "CircularXXWeb-Regular", sans-serif !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    color: var(--gray-700) !important;
    white-space: nowrap !important;
    text-align: center !important;
}

/* Remove circle indicator from services chips - HIGH SPECIFICITY */
#atr-search .control-group#atr-meeting-with .atr-input-box label::before,
#atr-search .control-group#atr-incall .atr-input-box label::before,
#atr-search .control-group#atr-outcall .atr-input-box label::before,
#atr-search .control-group#atr-meeting-with .atr-input-box label::after,
#atr-search .control-group#atr-incall .atr-input-box label::after,
#atr-search .control-group#atr-outcall .atr-input-box label::after {
    display: none !important;
    content: '' !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    position: absolute !important;
    visibility: hidden !important;
}

/* Services chip checked state */
#atr-search #atr-meeting-with .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-incall .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-outcall .atr-input-box input[type="checkbox"]:checked + label {
    border: 2px solid var(--brand) !important;
    background-color: #fff0f5 !important;
}

/* ==========================================================================
   ACCORDION SECTION WRAPPERS
   ========================================================================== */

.filter-section-accordion {
    border-bottom: 1px solid var(--gray-200);
    padding: 1rem 0;
}

.filter-section-accordion:last-child {
    border-bottom: none;
}

.filter-section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    padding: 0.5rem 0;
}

.filter-section-title {
    font-family: "CircularXXWeb-Medium", sans-serif;
    font-size: 1rem;
    font-weight: 600;
    color: var(--gray-900);
    margin: 0;
}

.filter-section-toggle {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--gray-500);
    transition: transform 0.3s ease;
}

.filter-section-header.open .filter-section-toggle {
    transform: rotate(180deg);
}

.filter-section-content {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.3s ease;
}

.filter-section-content.open {
    grid-template-rows: 1fr;
}

.filter-section-inner {
    overflow: hidden;
}

.filter-section-content.open .filter-section-inner {
    padding-top: 0.75rem;
}

/* ==========================================================================
   SELECT ALL BUTTONS & APPEARANCE SECTION
   ========================================================================== */

/* Appearance section header */
#appearance-section-header {
    border-top: 1px solid var(--gray-200) !important;
}

#appearance-section-header .filter-section-title {
    font-family: "CircularXXWeb-Medium", sans-serif !important;
    font-size: 1.125rem !important;
    font-weight: 700 !important;
    color: var(--gray-900) !important;
    margin: 0 !important;
}

/* Control label with select all button */
#atr-search .control-group .control-label {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    border: none !important;
    padding: 0 !important;
    margin-bottom: 0.5rem !important;
}

/* Appearance section header */
#meeting-with-section-header {
    border-top: 1px solid var(--gray-200) !important;
}

/* Select all button style */
.select-all-btn {
    font-family: "CircularXXWeb-Regular", sans-serif !important;
    font-size: 0.75rem !important;
    color: var(--gray-500) !important;
    text-decoration: underline !important;
    cursor: pointer !important;
    transition: color 0.2s ease !important;
}

.select-all-btn:hover {
    color: var(--brand) !important;
}

/* ==========================================================================
   AIRBNB-STYLE IMPROVEMENTS (Added Feb 1, 2026)
   ========================================================================== */

/* More rounded corners for filter modal - Airbnb style */
.fancybox__slide .f-html,
#dialog-content {
    border-radius: 16px !important;
}

/* Prevent horizontal scroll on filter modal */
.fancybox__slide .f-html,
#dialog-content,
#atr-search,
.filter-popup-inner {
    overflow-x: hidden !important;
    max-width: 100% !important;
}

/* Ensure chips wrap properly and don't cause horizontal overflow */
#atr-search .atr-input-box,
#atr-search .controls,
#atr-search .control-group {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Hide default fancybox close button - we use our own in header */
.fancybox__slide .f-button.is-close-button {
    display: none !important;
}

/* Ensure the modal has relative positioning for the close button */
.fancybox__slide .f-html {
    position: relative !important;
}

/* Round the inner search form container too */
#atr-search {
    border-radius: 16px !important;
}

/* Hide duplicate Incall and Outcall sections at bottom */
#atr-incall,
#atr-outcall {
    display: none !important;
}

/* ==========================================================================
   COMPACT SPACING BETWEEN FILTER SECTIONS
   ========================================================================== */

/* Compact chip containers */
#atr-search .atr-input-box {
    gap: 0.375rem !important;
    margin-bottom: 0.25rem !important;
}

/* Reduce spacing for recommended section */
.filter-popup-inner h3 {
    margin-bottom: 0.5rem !important;
    margin-top: 0.75rem !important;
}

/* First h3 doesn't need top margin */
.filter-popup-inner h3:first-of-type {
    margin-top: 0 !important;
}

/* Compact the toggle switches container */
.filter-popup-inner .toggle-switches-grid {
    gap: 0.5rem !important;
    margin-bottom: 0.5rem !important;
}

/* Reduce slider section spacing */
.filter-popup-inner .slider-container,
.filter-popup-inner .range-slider-container {
    margin-bottom: 0.75rem !important;
    padding-bottom: 0.5rem !important;
}

/* Compact attribute chip options */
#atr-search .controls {
    margin-bottom: 0.25rem !important;
}

/* Tighter gap between chips */
#atr-search .controls .atr-input-box {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.375rem !important;
}

/* Make control labels more compact */
#atr-search .control-group > .control-label {
    margin-bottom: 0.375rem !important;
    padding-bottom: 0 !important;
}

/* Reduce vertical space in accordion sections */
.filter-section-accordion {
    padding: 0.75rem 0 !important;
}

.filter-section-content.open .filter-section-inner {
    padding-top: 0.5rem !important;
}

/* ==========================================================================
   MOBILE ALIGNMENT FIXES (Feb 1, 2026)
   ========================================================================== */

/* --- Fix 1: Recommended section cards - prevent text wrapping --- */
.recommended-section .card-content {
    padding: 0.4rem !important;
    height: auto !important;
    min-height: 5rem !important;
}

.recommended-section .card-content .card-text {
    font-size: 0.75rem !important;
    line-height: 1.2 !important;
    text-align: center !important;
    white-space: nowrap !important;
}

/* Mobile: smaller cards to fit text on one line */
@media (max-width: 480px) {
    .fancybox__slide.has-close-btn {
    padding-top: 15px;
}
    .fancybox__slide .f-html, #dialog-content {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0px !important;
    max-height: unset !important;
}
    .filter-modal-body {
    padding: 30px 25px 50px 25px;
}
    .recommended-section .grid-4 {
        grid-template-columns: repeat(2, 1fr);
        gap: 0.5rem !important;
    }

    .recommended-section .card-content {
        padding: 0.35rem !important;
        min-height: 4.5rem !important;
    }

    .recommended-section .card-icon {
        width: 1.5rem !important;
        height: 1.5rem !important;
        margin-bottom: 0.35rem !important;
    }

    .recommended-section .card-content .card-text {
        font-size: 0.75rem !important;
        font-family: "CircularXXWeb-Medium", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    }
}


/* --- Fix 2: Category labels (Breast size, Body type, etc.) - keep on one line --- */
#atr-search .control-group .control-label {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 0.5rem !important;
}

#atr-search .control-group .control-label > span:first-child {
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

/* --- Fix 3: Select all button - always align to the right --- */
#atr-search .control-group .control-label .select-all-btn {
    flex-shrink: 0 !important;
    white-space: nowrap !important;
    width: unset;
    line-height: 30px;
}

/* ==========================================================================
   COLLAPSIBLE ACCORDION SECTIONS (Airbnb-style)
   ========================================================================== */

.filter-accordion-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    padding: 20px 0 !important;
    background: none !important;
    border: none !important;
    cursor: pointer !important;
    text-align: left !important;
    font-family: inherit !important;
    line-height: unset;
}

.filter-accordion-header:hover {
    opacity: 0.8;
}

.filter-accordion-title {
    font-size: 17px !important;
    font-weight: 600 !important;
    color: #111827 !important;
    margin: 0 !important;
}

.filter-accordion-icon {
    flex-shrink: 0 !important;
    color: #111827 !important;
    transition: transform 0.2s ease !important;
}

/* Rotate chevron when open */
.filter-accordion.open .filter-accordion-icon {
    transform: rotate(180deg) !important;
}

.filter-accordion-content {
    padding-bottom: 1rem;
}

/* Hide the old section headers since we're using accordions now */
#appearance-section-header.filter-section-header,
#location-section-header.filter-section-header {
    display: none !important;
}

#location-section-header {
   border-top: none;
}

.filter-modal-close {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    user-select: none;
    z-index: 100;
}

/* ==========================================================================
   LOCATION TOGGLE BUTTONS - Incall / Outcall mode switcher
   ========================================================================== */

.location-mode-toggle {
    display: flex;
    gap: 6px;
    margin-bottom: 12px;
    padding: 4px;
    background: var(--gray-100, #f3f4f6);
    border-radius: 12px;
}

.location-mode-btn {
    flex: 1;
    padding: 8px 12px;
    border: none;
    border-radius: 10px;
    background: transparent;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--gray-500, #6b7280);
    cursor: pointer;
    transition: all 0.2s ease;
    text-align: center;
    line-height: 1.4;
}

.location-mode-btn:hover {
    color: var(--gray-700, #374151);
}

.location-mode-btn.active {
    background: #ff3366;
    color: #fff;
    box-shadow: 0 2px 6px rgba(255,51,102,0.3);
}

/* ==========================================================================
   INCALL SUBURB CHIPS - Mirror outcall suburb styling for incall containers
   ========================================================================== */

/* Container reset */
#atr-search #atr-incall-auckland-suburbs,
#atr-search #atr-incall-wellington-suburbs,
#atr-search #atr-incall-chch-suburbs,
#atr-search #atr-incall-hamilton-suburbs,
#atr-search #atr-incall-tauranga-suburbs,
#atr-search #atr-incall-nth-island,
#atr-search #atr-incall-south-island-suburbs {
    background: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}

/* Hide default incall suburb labels - we use toggle buttons instead */
#atr-search #atr-incall-auckland-suburbs > .control-label,
#atr-search #atr-incall-wellington-suburbs > .control-label,
#atr-search #atr-incall-chch-suburbs > .control-label,
#atr-search #atr-incall-hamilton-suburbs > .control-label,
#atr-search #atr-incall-tauranga-suburbs > .control-label,
#atr-search #atr-incall-nth-island > .control-label,
#atr-search #atr-incall-south-island-suburbs > .control-label {
    display: none !important;
}

/* Incall suburb list as chip grid */
#atr-search #atr-incall-auckland-suburbs ul.atr-ul,
#atr-search #atr-incall-wellington-suburbs ul.atr-ul,
#atr-search #atr-incall-chch-suburbs ul.atr-ul,
#atr-search #atr-incall-hamilton-suburbs ul.atr-ul,
#atr-search #atr-incall-tauranga-suburbs ul.atr-ul,
#atr-search #atr-incall-nth-island ul.atr-ul,
#atr-search #atr-incall-south-island-suburbs ul.atr-ul {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.5rem !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    max-height: 15rem;
    overflow-y: auto;
}

/* Each incall suburb item */
#atr-search #atr-incall-auckland-suburbs ul.atr-ul li,
#atr-search #atr-incall-wellington-suburbs ul.atr-ul li,
#atr-search #atr-incall-chch-suburbs ul.atr-ul li,
#atr-search #atr-incall-hamilton-suburbs ul.atr-ul li,
#atr-search #atr-incall-tauranga-suburbs ul.atr-ul li,
#atr-search #atr-incall-nth-island ul.atr-ul li,
#atr-search #atr-incall-south-island-suburbs ul.atr-ul li {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    min-width: auto !important;
    max-width: none !important;
    width: auto !important;
    float: none !important;
}

/* Incall suburb checkbox wrapper */
#atr-search #atr-incall-auckland-suburbs .atr-input-box,
#atr-search #atr-incall-wellington-suburbs .atr-input-box,
#atr-search #atr-incall-chch-suburbs .atr-input-box,
#atr-search #atr-incall-hamilton-suburbs .atr-input-box,
#atr-search #atr-incall-tauranga-suburbs .atr-input-box,
#atr-search #atr-incall-nth-island .atr-input-box,
#atr-search #atr-incall-south-island-suburbs .atr-input-box {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    width: auto !important;
}

/* Incall suburb chip label - HIGH SPECIFICITY to override base styles */
#atr-search .control-group#atr-incall-auckland-suburbs .atr-input-box label,
#atr-search .control-group#atr-incall-wellington-suburbs .atr-input-box label,
#atr-search .control-group#atr-incall-chch-suburbs .atr-input-box label,
#atr-search .control-group#atr-incall-hamilton-suburbs .atr-input-box label,
#atr-search .control-group#atr-incall-tauranga-suburbs .atr-input-box label,
#atr-search .control-group#atr-incall-nth-island .atr-input-box label,
#atr-search .control-group#atr-incall-south-island-suburbs .atr-input-box label {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: var(--white) !important;
    border: 1px solid var(--gray-200) !important;
    padding: 0.5rem 1rem !important;
    padding-left: 1rem !important;
    border-radius: 9999px !important;
    font-family: "CircularXXWeb-Regular", sans-serif !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    color: var(--gray-700) !important;
    transition: all 0.15s ease !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    box-shadow: none !important;
    min-width: auto !important;
    max-width: none !important;
    min-height: auto !important;
    float: none !important;
    position: relative !important;
    line-height: 1.4 !important;
    text-align: center !important;
    margin: unset;
    width: auto !important;
}

/* Override main241-live.css .control-group ul li label { max-width: 15px } */
#atr-incall-auckland-suburbs.control-group ul li label,
#atr-incall-wellington-suburbs.control-group ul li label,
#atr-incall-chch-suburbs.control-group ul li label,
#atr-incall-hamilton-suburbs.control-group ul li label,
#atr-incall-tauranga-suburbs.control-group ul li label,
#atr-incall-nth-island.control-group ul li label,
#atr-incall-south-island-suburbs.control-group ul li label {
    max-width: none !important;
    width: auto !important;
}

/* Remove circle indicator for incall suburb chips - HIGH SPECIFICITY */
#atr-search .control-group#atr-incall-auckland-suburbs .atr-input-box label::before,
#atr-search .control-group#atr-incall-wellington-suburbs .atr-input-box label::before,
#atr-search .control-group#atr-incall-chch-suburbs .atr-input-box label::before,
#atr-search .control-group#atr-incall-hamilton-suburbs .atr-input-box label::before,
#atr-search .control-group#atr-incall-tauranga-suburbs .atr-input-box label::before,
#atr-search .control-group#atr-incall-nth-island .atr-input-box label::before,
#atr-search .control-group#atr-incall-south-island-suburbs .atr-input-box label::before,
#atr-search .control-group#atr-incall-auckland-suburbs .atr-input-box label::after,
#atr-search .control-group#atr-incall-wellington-suburbs .atr-input-box label::after,
#atr-search .control-group#atr-incall-chch-suburbs .atr-input-box label::after,
#atr-search .control-group#atr-incall-hamilton-suburbs .atr-input-box label::after,
#atr-search .control-group#atr-incall-tauranga-suburbs .atr-input-box label::after,
#atr-search .control-group#atr-incall-nth-island .atr-input-box label::after,
#atr-search .control-group#atr-incall-south-island-suburbs .atr-input-box label::after {
    display: none !important;
    content: '' !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    position: absolute !important;
    visibility: hidden !important;
}

/* Incall suburb chip hover */
#atr-search #atr-incall-auckland-suburbs .atr-input-box label:hover,
#atr-search #atr-incall-wellington-suburbs .atr-input-box label:hover,
#atr-search #atr-incall-chch-suburbs .atr-input-box label:hover,
#atr-search #atr-incall-hamilton-suburbs .atr-input-box label:hover,
#atr-search #atr-incall-tauranga-suburbs .atr-input-box label:hover,
#atr-search #atr-incall-nth-island .atr-input-box label:hover,
#atr-search #atr-incall-south-island-suburbs .atr-input-box label:hover {
    border-color: var(--gray-300) !important;
    background-color: var(--gray-100) !important;
    text-decoration: none !important;
}

/* Incall suburb chip checked state */
#atr-search #atr-incall-auckland-suburbs .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-incall-wellington-suburbs .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-incall-chch-suburbs .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-incall-hamilton-suburbs .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-incall-tauranga-suburbs .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-incall-nth-island .atr-input-box input[type="checkbox"]:checked + label,
#atr-search #atr-incall-south-island-suburbs .atr-input-box input[type="checkbox"]:checked + label {
    border: 2px solid var(--brand) !important;
    background-color: #fff0f5 !important;
    color: var(--brand) !important;
    font-weight: 600 !important;
}

/* Hide select-all/deselect-all inside incall suburb containers (incall is single-select) */
#atr-search #atr-incall-auckland-suburbs .atr-select-deselect,
#atr-search #atr-incall-wellington-suburbs .atr-select-deselect,
#atr-search #atr-incall-chch-suburbs .atr-select-deselect,
#atr-search #atr-incall-hamilton-suburbs .atr-select-deselect,
#atr-search #atr-incall-tauranga-suburbs .atr-select-deselect,
#atr-search #atr-incall-nth-island .atr-select-deselect,
#atr-search #atr-incall-south-island-suburbs .atr-select-deselect {
    display: none !important;
}

/* ==========================================================================
   DARK GLASS OVERRIDES FOR FILTER MODAL INTERIOR
   Match modal internals to the same smoked-glass family as header dropdowns
   ========================================================================== */

#dialog-content {
    --escortify-modal-glass: rgba(255, 255, 255, 0.045);
    --escortify-modal-glass-strong: rgba(255, 255, 255, 0.08);
    --escortify-modal-glass-active: rgba(255, 255, 255, 0.16);
    --escortify-modal-border: rgba(255, 255, 255, 0.12);
    --escortify-modal-border-strong: rgba(255, 255, 255, 0.22);
    --escortify-modal-text: rgba(255, 255, 255, 0.92);
    --escortify-modal-text-dim: rgba(255, 255, 255, 0.58);
}

#dialog-content,
#dialog-content h1,
#dialog-content h2,
#dialog-content h3,
#dialog-content h4,
#dialog-content h5,
#dialog-content h6,
#dialog-content p,
#dialog-content span,
#dialog-content a,
#dialog-content button,
#dialog-content input,
#dialog-content select,
#dialog-content textarea,
#dialog-content label {
    font-family: "Söhne", sans-serif !important;
    font-style: normal !important;
    font-weight: 400 !important;
}

#dialog-content .filter-modal-header h2,
#dialog-content .selected-filters-section .section-title,
#dialog-content .recommended-section .section-title,
#dialog-content .filter-section-title,
#dialog-content .filter-popup-inner h3,
#dialog-content .accordion-btn,
#dialog-content .filter-accordion-header,
#dialog-content .filter-accordion-title,
#dialog-content .filter-accordion-icon,
#dialog-content .filter-chip,
#dialog-content .chip-content,
#dialog-content .location-mode-btn,
#dialog-content .filter-apply-btn,
#dialog-content .filter-clear-link,
#dialog-content .select-all-btn,
#dialog-content #atr-search .control-group > label,
#dialog-content #atr-search .control-group > .control-label,
#dialog-content #atr-search .atr-input-box label,
#dialog-content .recommended-section .card-content .card-text,
#dialog-content .form-container .controls input#query {
    font-family: "Söhne", sans-serif !important;
}

#dialog-content .form-container fieldset.first {
    margin-bottom: 1.75rem !important;
}

#dialog-content .filter-modal-search-fieldset .controls::before,
#dialog-content .form-container fieldset.first .controls::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E");
    opacity: 0.72;
}

#dialog-content .filter-modal-search-fieldset .controls input#query,
#dialog-content .form-container .controls input#query,
#dialog-content .suburb-search-input,
#dialog-content #atr-search select,
#dialog-content #atr-search textarea,
#dialog-content #atr-search input[type="text"],
#dialog-content #atr-search input[type="url"],
#dialog-content #atr-search input[type="email"],
#dialog-content #atr-search input[type="phone"],
#dialog-content #atr-search input[type="date"],
#dialog-content #atr-search input[type="number"],
#dialog-content #atr-search .atr-box {
    background: rgba(255, 255, 255, 0.045) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: var(--escortify-modal-text) !important;
    box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
    backdrop-filter: blur(20px) saturate(160%);
    -webkit-backdrop-filter: blur(20px) saturate(160%);
}

#dialog-content .filter-modal-search-fieldset .controls input#query,
#dialog-content .form-container .controls input#query {
    border-radius: 999px !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    letter-spacing: -0.01em;
}

#dialog-content .filter-modal-search-fieldset .controls input#query::placeholder,
#dialog-content .form-container .controls input#query::placeholder,
#dialog-content .suburb-search-input::placeholder,
#dialog-content #atr-search input::placeholder,
#dialog-content #atr-search textarea::placeholder {
    color: rgba(255, 255, 255, 0.42) !important;
}

#dialog-content .filter-modal-search-fieldset .controls input#query:focus,
#dialog-content .form-container .controls input#query:focus,
#dialog-content .suburb-search-input:focus,
#dialog-content #atr-search select:focus,
#dialog-content #atr-search textarea:focus,
#dialog-content #atr-search input[type="text"]:focus,
#dialog-content #atr-search input[type="url"]:focus,
#dialog-content #atr-search input[type="email"]:focus,
#dialog-content #atr-search input[type="phone"]:focus,
#dialog-content #atr-search input[type="date"]:focus,
#dialog-content #atr-search input[type="number"]:focus,
#dialog-content #atr-search .atr-box.opened {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
    box-shadow: inset 0 2px 12px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 0 20px rgba(232, 99, 122, 0.08) !important;
}

#dialog-content #atr-search .atr-box:after,
#dialog-content .suburb-search-icon,
#dialog-content .accordion-btn .accordion-icon,
#dialog-content .filter-section-toggle {
    color: var(--escortify-modal-text-dim) !important;
}

#dialog-content #atr-search .atr-box > div.atr-holder,
#dialog-content #atr-search .atr-box > div.atr-holder span {
    color: var(--escortify-modal-text) !important;
}

#dialog-content #atr-search .atr-subtype-boxed .atr-ul {
    background:
        radial-gradient(circle at 18% 0%, rgba(232, 99, 122, 0.12) 0%, rgba(232, 99, 122, 0) 34%),
        linear-gradient(180deg, rgba(6, 7, 11, 0.96) 0%, rgba(9, 10, 14, 0.96) 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-top: none !important;
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.45) !important;
}

#dialog-content .selected-filters-section,
#dialog-content .recommended-section,
#dialog-content .accordion-item,
#dialog-content .filter-section-accordion {
    border-color: rgba(255, 255, 255, 0.08) !important;
}

#dialog-content .filter-accordion,
#dialog-content .filter-section-accordion,
#dialog-content .accordion-item {
    position: relative;
    border-top: none !important;
    border-bottom: none !important;
}

#dialog-content .filter-accordion::after,
#dialog-content .filter-section-accordion::after,
#dialog-content .accordion-item::after {
    content: "";
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 0;
    height: 1px;
    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0) 0%,
        rgba(255, 255, 255, 0.035) 12%,
        rgba(255, 255, 255, 0.055) 50%,
        rgba(255, 255, 255, 0.035) 88%,
        rgba(255, 255, 255, 0) 100%
    );
    pointer-events: none;
}

#dialog-content .filter-accordion:last-child::after,
#dialog-content .filter-section-accordion:last-child::after,
#dialog-content .accordion-item:last-child::after {
    display: none;
}

#dialog-content .filter-accordion-header,
#dialog-content .accordion-btn,
#dialog-content .filter-section-header {
    padding: 16px 0 !important;
}

#dialog-content .selected-filters-section .section-title,
#dialog-content .recommended-section .section-title,
#dialog-content .filter-section-title,
#dialog-content .filter-popup-inner h3,
#dialog-content .accordion-btn,
#dialog-content .filter-accordion-header,
#dialog-content .filter-accordion-title,
#dialog-content #atr-search .control-group > label,
#dialog-content #atr-search .control-group > .control-label,
#dialog-content #atr-search .control-group .control-label > span:first-child {
    color: var(--escortify-modal-text) !important;
    font-weight: 400 !important;
    text-shadow: none !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    -webkit-text-stroke: 0 !important;
    -webkit-text-fill-color: var(--escortify-modal-text) !important;
    opacity: 1 !important;
    transform: none !important;
    text-rendering: geometricPrecision;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    backface-visibility: hidden;
}

#dialog-content .filter-accordion-icon,
#dialog-content .accordion-btn .accordion-icon,
#dialog-content #atr-search .control-group .control-label .select-all-btn {
    color: rgba(255, 255, 255, 0.62) !important;
}

#dialog-content #atr-search .control-group > label {
    border-top-color: rgba(255, 255, 255, 0.12) !important;
}

#dialog-content .recommended-section .card-content {
    background: rgba(255, 255, 255, 0.045) !important;
    background-image: none !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
    backdrop-filter: blur(20px) saturate(160%);
    -webkit-backdrop-filter: blur(20px) saturate(160%);
}

#dialog-content .recommended-section .card-label:hover .card-content {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
    transform: translateY(-1px);
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.09) !important;
}

#dialog-content .recommended-section .card-icon {
    color: rgba(255, 255, 255, 0.76) !important;
}

#dialog-content .recommended-section .card-content .card-text {
    color: rgba(255, 255, 255, 0.88) !important;
    font-weight: 400 !important;
}

#dialog-content .recommended-section .hidden-checkbox:checked + .card-content {
    background: rgba(255, 255, 255, 0.16) !important;
    border: 1px solid rgba(255, 255, 255, 0.24) !important;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
    transform: none !important;
}

#dialog-content .recommended-section .hidden-checkbox:checked + .card-content .card-icon,
#dialog-content .recommended-section .hidden-checkbox:checked + .card-content .card-text {
    color: #ffffff !important;
}

#dialog-content .filter-chip,
#dialog-content .chip-content,
#dialog-content #atr-search .atr-input-box label {
    background: rgba(255, 255, 255, 0.045) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    color: rgba(255, 255, 255, 0.84) !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
    text-decoration: none !important;
}

#dialog-content .filter-chip:hover,
#dialog-content .chip-content:hover,
#dialog-content #atr-search .atr-input-box label:hover {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
}

#dialog-content .chip-label .hidden-checkbox:checked + .chip-content,
#dialog-content #atr-search .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .atr-input-box input[type="radio"]:checked + label {
    background: rgba(255, 255, 255, 0.16) !important;
    border: 1px solid rgba(255, 255, 255, 0.24) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 26px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
}

#dialog-content #atr-search .atr-input-box label:before {
    background: rgba(255, 255, 255, 0.04) !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
    box-shadow: none !important;
}

#dialog-content #atr-search .atr-input-box input[type="checkbox"]:checked + label:before,
#dialog-content #atr-search .atr-input-box input[type="radio"]:checked + label:before {
    background: rgba(255, 255, 255, 0.16) !important;
    border-color: rgba(255, 255, 255, 0.24) !important;
}

#dialog-content #atr-search .atr-input-box input[type="checkbox"]:checked + label:after,
#dialog-content #atr-search .atr-input-box input[type="radio"]:checked + label:after {
    color: #ffffff !important;
}

#dialog-content #atr-search #atr-age .slider-track,
#dialog-content #atr-search #atr-price-1-hour .slider-track {
    background: rgba(255, 255, 255, 0.12) !important;
}

#dialog-content #atr-search #atr-age .slider-fill,
#dialog-content #atr-search #atr-price-1-hour .slider-fill {
    background: linear-gradient(90deg, #ff3366 0%, #e8637a 100%) !important;
    box-shadow: 0 0 14px rgba(232, 99, 122, 0.2);
}

#dialog-content #atr-search #atr-age .slider-header::before,
#dialog-content #atr-search #atr-price-1-hour .slider-header::before {
    color: var(--escortify-modal-text) !important;
    font-family: "Söhne", sans-serif !important;
    font-weight: 400 !important;
}

#dialog-content #atr-search #atr-age .slider-value,
#dialog-content #atr-search #atr-price-1-hour .slider-value {
    color: var(--escortify-modal-text-dim) !important;
}

#dialog-content #atr-search #atr-age .range-input::-webkit-slider-thumb,
#dialog-content #atr-search #atr-price-1-hour .range-input::-webkit-slider-thumb {
    background: rgba(255, 255, 255, 0.98) !important;
    border: 2px solid #ff3366 !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.4) !important;
}

#dialog-content #atr-search #atr-age .range-input::-moz-range-thumb,
#dialog-content #atr-search #atr-price-1-hour .range-input::-moz-range-thumb {
    background: rgba(255, 255, 255, 0.98) !important;
    border: 2px solid #ff3366 !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.4) !important;
}

#dialog-content .location-mode-toggle {
    background: rgba(255, 255, 255, 0.045) !important;
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

#dialog-content .location-mode-btn {
    color: var(--escortify-modal-text-dim) !important;
}

#dialog-content .location-mode-btn:hover {
    color: var(--escortify-modal-text) !important;
}

#dialog-content .location-mode-btn.active {
    background: linear-gradient(to right, #E61E4D 0%, #E31C5F 50%, #D70466 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 6px 18px rgba(215, 4, 102, 0.3) !important;
}

/* ==========================================================================
   MODAL REFINEMENTS: SUBURB PILLS + RANGE SLIDERS
   ========================================================================== */

#dialog-content #atr-search .control-group[id*="suburbs"] ul.atr-ul,
#dialog-content #atr-search #atr-nth-island ul.atr-ul,
#dialog-content #atr-search #atr-incall-nth-island ul.atr-ul {
    gap: 0.625rem !important;
}

#dialog-content #atr-search .control-group[id*="suburbs"] .atr-input-box label,
#dialog-content #atr-search #atr-nth-island .atr-input-box label,
#dialog-content #atr-search #atr-incall-nth-island .atr-input-box label {
    background: rgba(255, 255, 255, 0.02) !important;
    border: 1px solid rgba(255, 255, 255, 0.26) !important;
    border-radius: 999px !important;
    color: rgba(255, 255, 255, 0.84) !important;
    font-family: "Söhne", sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    min-height: 36px !important;
    padding: 0.55rem 0.95rem !important;
    padding-left: 0.95rem !important;
    box-shadow: none !important;
}

#dialog-content #atr-search .control-group[id*="suburbs"] .atr-input-box label:hover,
#dialog-content #atr-search #atr-nth-island .atr-input-box label:hover,
#dialog-content #atr-search #atr-incall-nth-island .atr-input-box label:hover {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(255, 255, 255, 0.34) !important;
}

#dialog-content #atr-search .control-group[id*="suburbs"] .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search #atr-nth-island .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search #atr-incall-nth-island .atr-input-box input[type="checkbox"]:checked + label {
    background: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, 0.92) !important;
    color: #15161b !important;
    font-weight: 500 !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22) !important;
}

#dialog-content #atr-search #atr-age .slider-container,
#dialog-content #atr-search #atr-price-1-hour .slider-container {
    padding-top: 0.45rem !important;
    padding-bottom: 0.45rem !important;
}

#dialog-content #atr-search #atr-age .slider-header,
#dialog-content #atr-search #atr-price-1-hour .slider-header {
    margin-bottom: 0.95rem !important;
}

#dialog-content #atr-search #atr-age .slider-wrapper,
#dialog-content #atr-search #atr-price-1-hour .slider-wrapper {
    height: 28px !important;
}

#dialog-content #atr-search #atr-age .slider-wrapper::before,
#dialog-content #atr-search #atr-price-1-hour .slider-wrapper::before {
    content: none !important;
}

#dialog-content #atr-search #atr-age .slider-track,
#dialog-content #atr-search #atr-price-1-hour .slider-track {
    height: 3px !important;
    background: rgba(255, 255, 255, 0.34) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 1 !important;
}

#dialog-content #atr-search #atr-age .slider-fill,
#dialog-content #atr-search #atr-price-1-hour .slider-fill {
    height: 3px !important;
    background: #ffffff !important;
    box-shadow: none !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 3 !important;
}

#dialog-content #atr-search #atr-age .range-input,
#dialog-content #atr-search #atr-price-1-hour .range-input {
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 4 !important;
}

#dialog-content #atr-search #atr-age .slider-ticks,
#dialog-content #atr-search #atr-price-1-hour .slider-ticks {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 2;
}

#dialog-content #atr-search #atr-age .slider-tick,
#dialog-content #atr-search #atr-price-1-hour .slider-tick {
    position: absolute;
    top: 50%;
    width: 6px;
    height: 6px;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92);
}

#dialog-content #atr-search #atr-age .slider-tick.is-major,
#dialog-content #atr-search #atr-price-1-hour .slider-tick.is-major {
    width: 8px;
    height: 8px;
}

#dialog-content #atr-search #atr-age .range-input::-webkit-slider-thumb,
#dialog-content #atr-search #atr-price-1-hour .range-input::-webkit-slider-thumb {
    width: 28px !important;
    height: 28px !important;
    background: #0f1014 !important;
    border: 3px solid #ffffff !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.42) !important;
}

#dialog-content #atr-search #atr-age .range-input::-moz-range-thumb,
#dialog-content #atr-search #atr-price-1-hour .range-input::-moz-range-thumb {
    width: 28px !important;
    height: 28px !important;
    background: #0f1014 !important;
    border: 3px solid #ffffff !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.42) !important;
}

#dialog-content #atr-search #atr-age .slider-value,
#dialog-content #atr-search #atr-price-1-hour .slider-value {
    font-family: "Söhne", sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: 0.01em;
}

#dialog-content #atr-search #atr-age .slider-scale,
#dialog-content #atr-search #atr-price-1-hour .slider-scale {
    position: relative;
    height: 22px;
    margin-top: 0.75rem;
}

#dialog-content #atr-search #atr-age .slider-scale-item,
#dialog-content #atr-search #atr-price-1-hour .slider-scale-item {
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    color: rgba(255, 255, 255, 0.9);
    font-family: "Söhne", sans-serif !important;
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
    white-space: nowrap;
}

#dialog-content #atr-search #atr-age .slider-scale-item.is-start,
#dialog-content #atr-search #atr-price-1-hour .slider-scale-item.is-start {
    transform: translateX(0);
}

#dialog-content #atr-search #atr-age .slider-scale-item.is-end,
#dialog-content #atr-search #atr-price-1-hour .slider-scale-item.is-end {
    transform: translateX(-100%);
}

/* ==========================================================================
   MODAL REFINEMENTS: APPEARANCE + MEETING PILLS
   ========================================================================== */

#dialog-content #atr-search .control-group#atr-cup-size .atr-input-box label,
#dialog-content #atr-search .control-group#atr-bodytype .atr-input-box label,
#dialog-content #atr-search .control-group#atr-hair-color .atr-input-box label,
#dialog-content #atr-search .control-group#atr-eye-color .atr-input-box label,
#dialog-content #atr-search .control-group#atr-pubic-hair .atr-input-box label,
#dialog-content #atr-search .control-group#atr-meeting-with .atr-input-box label,
#dialog-content #atr-search .control-group#atr-incall .atr-input-box label,
#dialog-content #atr-search .control-group#atr-outcall .atr-input-box label {
    background: rgba(255, 255, 255, 0.02) !important;
    border: 1px solid rgba(255, 255, 255, 0.24) !important;
    border-radius: 999px !important;
    color: rgba(255, 255, 255, 0.86) !important;
    font-family: "Söhne", sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    padding: 0.62rem 1.05rem !important;
    padding-left: 1.05rem !important;
    box-shadow: none !important;
    min-height: 38px !important;
}

#dialog-content #atr-search .control-group#atr-cup-size .atr-input-box label:hover,
#dialog-content #atr-search .control-group#atr-bodytype .atr-input-box label:hover,
#dialog-content #atr-search .control-group#atr-hair-color .atr-input-box label:hover,
#dialog-content #atr-search .control-group#atr-eye-color .atr-input-box label:hover,
#dialog-content #atr-search .control-group#atr-pubic-hair .atr-input-box label:hover,
#dialog-content #atr-search .control-group#atr-meeting-with .atr-input-box label:hover,
#dialog-content #atr-search .control-group#atr-incall .atr-input-box label:hover,
#dialog-content #atr-search .control-group#atr-outcall .atr-input-box label:hover {
    background: rgba(255, 255, 255, 0.055) !important;
    border-color: rgba(255, 255, 255, 0.32) !important;
}

#dialog-content #atr-search .control-group#atr-cup-size .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .control-group#atr-bodytype .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .control-group#atr-hair-color .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .control-group#atr-eye-color .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .control-group#atr-pubic-hair .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .control-group#atr-meeting-with .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .control-group#atr-incall .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .control-group#atr-outcall .atr-input-box input[type="checkbox"]:checked + label {
    background: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, 0.92) !important;
    color: #15161b !important;
    font-weight: 500 !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.2) !important;
}

/* ==========================================================================
   FILTER BAR MATCH OVERRIDES
   ========================================================================== */

#dialog-content {
    background-color: rgba(8, 8, 12, 0.72);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.052) 0%, rgba(255, 255, 255, 0.032) 100%),
        linear-gradient(90deg, rgba(4, 4, 6, 0.88) 0%, rgba(12, 9, 13, 0.72) 18%, rgba(22, 14, 20, 0.52) 50%, rgba(12, 9, 13, 0.72) 82%, rgba(4, 4, 6, 0.88) 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 22px 48px rgba(0, 0, 0, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
}

#dialog-content::before {
    background: none;
}

.filter-modal-header,
.filter-modal-footer {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.052) 0%, rgba(255, 255, 255, 0.032) 100%),
        linear-gradient(90deg, rgba(4, 4, 6, 0.88) 0%, rgba(12, 9, 13, 0.72) 18%, rgba(22, 14, 20, 0.52) 50%, rgba(12, 9, 13, 0.72) 82%, rgba(4, 4, 6, 0.88) 100%) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
}

.filter-modal-close,
#dialog-content .recommended-section .card-content,
#dialog-content .filter-chip,
#dialog-content .chip-content,
#dialog-content #atr-search .atr-input-box label,
#dialog-content .filter-modal-search-fieldset .controls input#query,
#dialog-content .form-container .controls input#query,
#dialog-content .suburb-search-input,
#dialog-content #atr-search select,
#dialog-content #atr-search textarea,
#dialog-content #atr-search input[type="text"],
#dialog-content #atr-search input[type="url"],
#dialog-content #atr-search input[type="email"],
#dialog-content #atr-search input[type="phone"],
#dialog-content #atr-search input[type="date"],
#dialog-content #atr-search input[type="number"],
#dialog-content #atr-search .atr-box,
#dialog-content #atr-search .control-group[id*="suburbs"] .atr-input-box label,
#dialog-content #atr-search #atr-nth-island .atr-input-box label,
#dialog-content #atr-search #atr-incall-nth-island .atr-input-box label,
#dialog-content #atr-search .control-group#atr-cup-size .atr-input-box label,
#dialog-content #atr-search .control-group#atr-bodytype .atr-input-box label,
#dialog-content #atr-search .control-group#atr-hair-color .atr-input-box label,
#dialog-content #atr-search .control-group#atr-eye-color .atr-input-box label,
#dialog-content #atr-search .control-group#atr-pubic-hair .atr-input-box label,
#dialog-content #atr-search .control-group#atr-meeting-with .atr-input-box label,
#dialog-content #atr-search .control-group#atr-incall .atr-input-box label,
#dialog-content #atr-search .control-group#atr-outcall .atr-input-box label {
    background: rgba(12, 12, 16, 0.48) !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
}

#dialog-content .recommended-section .card-label:hover .card-content,
#dialog-content .filter-chip:hover,
#dialog-content .chip-content:hover,
#dialog-content #atr-search .atr-input-box label:hover,
#dialog-content #atr-search .control-group[id*="suburbs"] .atr-input-box label:hover,
#dialog-content #atr-search #atr-nth-island .atr-input-box label:hover,
#dialog-content #atr-search #atr-incall-nth-island .atr-input-box label:hover,
#dialog-content #atr-search .control-group#atr-cup-size .atr-input-box label:hover,
#dialog-content #atr-search .control-group#atr-bodytype .atr-input-box label:hover,
#dialog-content #atr-search .control-group#atr-hair-color .atr-input-box label:hover,
#dialog-content #atr-search .control-group#atr-eye-color .atr-input-box label:hover,
#dialog-content #atr-search .control-group#atr-pubic-hair .atr-input-box label:hover,
#dialog-content #atr-search .control-group#atr-meeting-with .atr-input-box label:hover,
#dialog-content #atr-search .control-group#atr-incall .atr-input-box label:hover,
#dialog-content #atr-search .control-group#atr-outcall .atr-input-box label:hover,
.filter-modal-close:hover,
#dialog-content .filter-modal-search-fieldset .controls input#query:focus,
#dialog-content .form-container .controls input#query:focus,
#dialog-content .suburb-search-input:focus,
#dialog-content #atr-search select:focus,
#dialog-content #atr-search textarea:focus,
#dialog-content #atr-search input[type="text"]:focus,
#dialog-content #atr-search input[type="url"]:focus,
#dialog-content #atr-search input[type="email"]:focus,
#dialog-content #atr-search input[type="phone"]:focus,
#dialog-content #atr-search input[type="date"]:focus,
#dialog-content #atr-search input[type="number"]:focus,
#dialog-content #atr-search .atr-box.opened {
    background: rgba(18, 18, 24, 0.56) !important;
    border-color: rgba(255, 255, 255, 0.18) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}

#dialog-content .recommended-section .hidden-checkbox:checked + .card-content,
#dialog-content .chip-label .hidden-checkbox:checked + .chip-content,
#dialog-content #atr-search .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .atr-input-box input[type="radio"]:checked + label,
#dialog-content #atr-search .control-group[id*="suburbs"] .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search #atr-nth-island .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search #atr-incall-nth-island .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .control-group#atr-cup-size .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .control-group#atr-bodytype .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .control-group#atr-hair-color .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .control-group#atr-eye-color .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .control-group#atr-pubic-hair .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .control-group#atr-meeting-with .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .control-group#atr-incall .atr-input-box input[type="checkbox"]:checked + label,
#dialog-content #atr-search .control-group#atr-outcall .atr-input-box input[type="checkbox"]:checked + label {
    background: rgba(232, 99, 122, 0.2) !important;
    border: 1px solid rgba(232, 99, 122, 0.4) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.18) !important;
}

#dialog-content #atr-search .atr-input-box input[type="checkbox"]:checked + label:before,
#dialog-content #atr-search .atr-input-box input[type="radio"]:checked + label:before {
    background: rgba(232, 99, 122, 0.2) !important;
    border-color: rgba(232, 99, 122, 0.4) !important;
}

/* ==========================================================================
   FILTER MODAL CLEANUP OVERRIDES
   Keep the search field at the top and prevent any Fancybox gallery navigation
   ========================================================================== */

#dialog-content .filter-modal-header {
    position: sticky !important;
    inset: 0 0 auto 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    padding: 16px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.052) 0%, rgba(255, 255, 255, 0.032) 100%),
        linear-gradient(90deg, rgba(4, 4, 6, 0.88) 0%, rgba(12, 9, 13, 0.72) 18%, rgba(22, 14, 20, 0.52) 50%, rgba(12, 9, 13, 0.72) 82%, rgba(4, 4, 6, 0.88) 100%) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    pointer-events: auto !important;
    z-index: 12 !important;
}

#dialog-content .filter-modal-header h2 {
    display: none !important;
}

#dialog-content .filter-modal-search-fieldset {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

#dialog-content .filter-modal-search-fieldset .control-group,
#dialog-content .filter-modal-search-fieldset .controls {
    margin: 0 !important;
    width: 100% !important;
}

#dialog-content .filter-modal-close {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    transform: none !important;
    pointer-events: auto !important;
    margin-left: 0 !important;
    flex: 0 0 auto !important;
}

#dialog-content .filter-modal-body {
    padding-top: 12px !important;
}

.fancybox__container.escortify-filter-modal-container .f-button.is-arrow,
.fancybox__container.escortify-filter-modal-container .f-carousel__toolbar,
.fancybox__container.escortify-filter-modal-container .f-counter,
.fancybox__container.escortify-filter-modal-container .fancybox-close-small {
    display: none !important;
}

.fancybox__container.escortify-filter-modal-container .fancybox__viewport {
    overflow: hidden !important;
}

.fancybox__container.escortify-filter-modal-container .fancybox__slide:not(.is-selected) {
    opacity: 0 !important;
    pointer-events: none !important;
}

@media (max-width: 480px) {
    #dialog-content .filter-modal-body {
        padding-top: 18px !important;
    }
}

/* ==========================================================================
   MOBILE FILTER MODAL: FULL-SCREEN SHEET + DEDICATED HEADER ROW
   Prevent the close button from overlapping the first search field.
   ========================================================================== */

@media (max-width: 768px) {
    .fancybox__container.escortify-filter-modal-container .fancybox__slide {
        padding: 0 !important;
    }

    body.search .fancybox__slide.has-html {
        display: flex !important;
        align-items: stretch !important;
        padding: 0 !important;
    }

    body.search .fancybox__slide.has-html .f-html {
        display: flex !important;
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
        max-height: 100vh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
    }

    .fancybox__container.escortify-filter-modal-container .fancybox__content.escortify-filter-modal-shell {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
        max-height: 100vh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
        border-radius: 0 !important;
    }

    #dialog-content {
        width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
        max-height: 100vh !important;
        max-height: 100dvh !important;
        border-radius: 0 !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    #dialog-content .filter-modal-form {
        flex: 1 1 auto !important;
        min-height: 0 !important;
    }

    #dialog-content .filter-modal-header {
        position: sticky !important;
        inset: 0 0 auto 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px !important;
        min-height: 0 !important;
        padding: calc(env(safe-area-inset-top, 0px) + 12px) 12px 10px !important;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.052) 0%, rgba(255, 255, 255, 0.032) 100%),
            linear-gradient(90deg, rgba(4, 4, 6, 0.88) 0%, rgba(12, 9, 13, 0.72) 18%, rgba(22, 14, 20, 0.52) 50%, rgba(12, 9, 13, 0.72) 82%, rgba(4, 4, 6, 0.88) 100%) !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
        backdrop-filter: blur(20px) !important;
        -webkit-backdrop-filter: blur(20px) !important;
        pointer-events: auto !important;
        z-index: 12 !important;
    }

    #dialog-content .filter-modal-search-fieldset .controls input#query {
        min-height: 54px !important;
        font-size: 16px !important;
    }

    #dialog-content .filter-modal-close {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        transform: none !important;
        margin-left: 0 !important;
        width: 36px !important;
        height: 36px !important;
    }

    #dialog-content .filter-modal-body {
        padding: 8px 16px calc(env(safe-area-inset-bottom, 0px) + 28px) !important;
    }

    #dialog-content .filter-modal-footer {
        padding: 14px 16px calc(env(safe-area-inset-bottom, 0px) + 14px) !important;
    }
}

/* ==========================================================================
   FINAL VISIBLE MODAL HEADER SEARCH OVERRIDE
   Target the Fancybox shell directly so the rendered modal keeps the full-width
   dark search pill beside the close button on desktop and mobile.
   ========================================================================== */

.fancybox__content.escortify-filter-modal-shell .filter-modal-search-fieldset {
    display: block !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    min-inline-size: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

.fancybox__content.escortify-filter-modal-shell .filter-modal-search-fieldset .control-group,
.fancybox__content.escortify-filter-modal-shell .filter-modal-search-fieldset .controls {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
}

.fancybox__content.escortify-filter-modal-shell .filter-modal-search-fieldset .controls {
    position: relative !important;
}

.fancybox__content.escortify-filter-modal-shell .filter-modal-search-fieldset .controls::before {
    content: '' !important;
    position: absolute !important;
    left: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 20px !important;
    height: 20px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    opacity: 0.72 !important;
    pointer-events: none !important;
    z-index: 2 !important;
}

.fancybox__content.escortify-filter-modal-shell .filter-modal-search-fieldset .controls input#query {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 54px !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 0 18px 0 46px !important;
    box-sizing: border-box !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    border-radius: 999px !important;
    background: rgba(12, 12, 16, 0.48) !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    color: var(--escortify-modal-text) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    font-family: "Söhne", sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
}

.fancybox__content.escortify-filter-modal-shell .filter-modal-search-fieldset .controls input#query::placeholder {
    color: rgba(255, 255, 255, 0.42) !important;
}

.fancybox__content.escortify-filter-modal-shell .filter-modal-search-fieldset .controls input#query:focus {
    background: rgba(18, 18, 24, 0.56) !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
    box-shadow: inset 0 2px 12px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 0 20px rgba(232, 99, 122, 0.08) !important;
    outline: none !important;
}

.fancybox__content.escortify-filter-modal-shell .filter-modal-search-shell {
    position: relative !important;
    display: block !important;
    width: 100% !important;
}

.fancybox__content.escortify-filter-modal-shell .filter-modal-search-shell input#query::placeholder {
    color: rgba(255, 255, 255, 0.42) !important;
}

.fancybox__content.escortify-filter-modal-shell .filter-modal-search-shell input#query:focus {
    background: rgba(18, 18, 24, 0.56) !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
    box-shadow: inset 0 2px 12px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 0 20px rgba(232, 99, 122, 0.08) !important;
}
