.daycare-filter-bar { background: #f5f5f5; padding: 19px 16px; margin-bottom: 16px; font: 16px/1.3 "robotoregular", Arial, sans-serif; }
.daycare-filter-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr) minmax(0, 1.1fr) 180px 173px; gap: 0; align-items: center; justify-content: center; width: 100%; max-width: 1120px; min-height: 70px; margin: 0 auto; padding: 11px 40px 11px 20px; border: 1px solid #414141; border-radius: 40px; background: #fff; box-sizing: border-box; }
.daycare-filter-card { display: flex; align-items: center; gap: 10px; height: 32px; padding: 0 20px; margin: 0; border: 0; border-right: 1px solid #888; border-radius: 0; background: transparent; color: #303936; box-sizing: border-box; position: relative; min-width: 0; cursor: pointer; }
 
.daycare-filter-card > .fa { color: #777; font-size: 17px; width: 18px; flex-shrink: 0; }
.daycare-filter-card .fa-th-large::before { content: "\f009"; }
.daycare-filter-chevron { width: 8px; height: 8px; border-right: 2px solid #777; border-bottom: 2px solid #777; transform: rotate(45deg); pointer-events: none; flex-shrink: 0; }
.daycare-filter-more { position: relative; order: 1; grid-column: auto; width: auto; max-width: none; justify-self: stretch; margin-left: 22px; }
.daycare-filter-more .daycare-more-toggle { display: flex; align-items: center; justify-content: center; gap: 7px; height: 44px; padding: 0 10px; border-radius: 3px; background: #ec4758; color: #fff; cursor: pointer; font-size: 16px; font-weight: normal; white-space: nowrap; }

.daycare-filter-count { display: inline-grid; place-items: center; min-width: 20px; height: 20px; padding: 0 5px; box-sizing: border-box; border-radius: 50%; background: #fff; color: #ec4758; font-size: 12px; }
.daycare-filter-bar :is(button, a, input):focus-visible { outline: 2px solid #408e8b; outline-offset: 3px; }
.daycare-filter-bar .daycare-location-search:focus-visible { outline: none; }


/* Custom dropdowns: triggers, menus and selection states. */
.daycare-filter-bar [hidden] { display: none !important; }
.daycare-menu-toggle { display: block; width: calc(100% + 26px); padding: 0 26px 0 0; border: 0; background: transparent; color: #303936;font-size: 14px; font-weight: normal; text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; cursor: pointer; }
.daycare-custom-menu { position: absolute; top: calc(100% + 8px); left: 0; z-index: 110; width: 100%; min-width: 230px; max-height: 360px; overflow-y: auto; padding: 6px; border: 1px solid #dce3df; border-radius: 12px; background: #fff; box-shadow: 0 10px 28px rgb(16 59 52 / 15%); box-sizing: border-box; }
.daycare-custom-menu .daycare-menu-option { display: block; width: 100%; margin: 0; padding: 11px 12px; border: 0; border-radius: 7px; background: #fff; color: #303936; font: 14px/20px "robotoregular", Arial, sans-serif; text-align: left; cursor: pointer; }
.daycare-custom-menu .daycare-menu-option:hover, .daycare-custom-menu .daycare-menu-option:focus-visible { background: #f5f5f5; }
.daycare-custom-menu .daycare-menu-option.is-selected { background: #f5f5f5; color: #103b34; font-weight: normal; }

.daycare-filter-card:has(.daycare-menu-toggle[aria-expanded="true"]) .daycare-filter-chevron { transform: rotate(225deg); }
@media (max-width: 950px) { .daycare-filter-card:nth-child(2) .daycare-custom-menu { left: auto; right: 0; } }
@media (max-width: 480px) { .daycare-menu-toggle { font-size: 15px; } }
/* Services audience selector. */
.daycare-custom-menu.daycare-audience-menu { width: 350px; min-width: 0; max-width: calc(100vw - 24px); padding: 5px 14px 10px; }

.daycare-filter-bar a.daycare-menu-toggle { text-decoration: none; box-sizing: border-box; }

.daycare-filter-bar .daycare-location-search { display: block; width: 100%; height: 40px; margin: 4px 0 8px; padding: 8px 10px; box-sizing: border-box; border: 1px solid #dce3df; border-radius: 7px; background: #fff; color: #303936; font: 14px/20px "robotoregular", Arial, sans-serif; }

/* Services radio choices use the page's input-field / with-gap pattern. */
.daycare-audience-menu .hometypearea { display: block; margin: 0 0 2px; padding: 0; }
.daycare-audience-menu .input-field { display: block; margin: 0; position: relative; }
.daycare-audience-menu .input-field input[type="radio"] + label { display: block; height: auto; min-height: 50px; margin: 0; padding: 8px 12px 8px 44px; border-radius: 8px; cursor: pointer; color: #303936; font: 14px/18px "robotoregular", Arial, sans-serif; }
.daycare-audience-menu .input-field label p { margin: 0; color: #637773; font: 13px/17px "robotoregular", Arial, sans-serif; }
.daycare-audience-menu .input-field input[type="radio"] + label::before, .daycare-audience-menu .input-field input[type="radio"] + label::after { left: 11px; top: 14px; }
.daycare-audience-menu .input-field input[type="radio"]:checked + label { background: #f5f5f5; }
.daycare-audience-menu .input-field input[type="radio"]:checked + label > span { font-weight: normal; }
.daycare-audience-menu .input-field label:hover { background: #f5f5f5; }
.daycare-audience-menu .input-field input[type="radio"]:focus-visible + label { outline: 2px solid #478e8d; outline-offset: -2px; }
/* Extend each dropdown trigger across its entire filter card. */

.daycare-filter-card .daycare-menu-toggle::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: inherit; }
.daycare-filter-card .daycare-custom-menu { cursor: default; }
/* Slim dropdown scrollbars. */
.daycare-custom-menu { scrollbar-width: thin; scrollbar-color: #aaa #f5f5f5; }
.daycare-custom-menu::-webkit-scrollbar { width: 6px; height: 6px; }
.daycare-custom-menu::-webkit-scrollbar-track { background: #f5f5f5; border-radius: 10px; margin-block: 8px; }
.daycare-custom-menu::-webkit-scrollbar-thumb { background: #aaa; border-radius: 10px; }
.daycare-custom-menu::-webkit-scrollbar-thumb:hover { background: #777; }
.daycare-custom-menu::-webkit-scrollbar-button { display: none; }
/* The trigger now fills the card directly, without content wrappers. */
.daycare-filter-card > .daycare-menu-toggle { flex: 1; min-width: 0; width: auto; padding: 0; color: #555; font-size: 18px; font-weight: normal; line-height: 26px; }

/* Dropdown option lists. */
.daycare-custom-menu > ul { margin: 0; padding: 0; list-style: none; }
.daycare-custom-menu > ul > li { margin: 0; padding: 0; list-style: none; }
.daycare-custom-menu > ul > li b{font-weight: 600; color: #212121}
.daycare-custom-menu a.daycare-menu-option { text-decoration: none; box-sizing: border-box; }
.daycare-search-button { display: inline-flex; align-items: center; justify-content: center; order: 2; min-height: 44px; margin-left: 22px; padding: 0 18px; border: 1px solid #1d6fec; border-radius: 3px; background: #1d6fec; color: #fff; box-sizing: border-box; font: normal 18px/1.3 "robotoregular", Arial, sans-serif; cursor: pointer; transition: background-color .15s, border-color .15s; }

.daycare-search-button:focus-visible { outline: 2px solid #777; outline-offset: 3px; }
.daycare-icon-symbols { position: absolute; width: 0; height: 0; overflow: hidden; }
.daycare-filter-more .daycare-more-toggle > i { display: inline-flex; align-items: center; flex-shrink: 0; color: #fff; }
.daycare-filter-more .daycare-more-toggle > i svg { display: block; width: 18px; height: 18px; }

.daycare-search-button, .daycare-more-toggle { text-decoration: none; }

.daycare-filter-row > .daycare-search-button:hover { background: #155bc5; border-color: #155bc5; }
@media (max-width: 950px) {
  .daycare-filter-row { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px 0; border-radius: 24px; padding: 16px; }
  .daycare-filter-row > .daycare-filter-card { padding: 0 12px; }
  .daycare-filter-row > .daycare-filter-card:nth-child(3) { border-right: 0; }
  .daycare-filter-row > .daycare-filter-more { grid-column: 1 / 2; margin: 0 7px 0 0; }
  .daycare-filter-row > .daycare-search-button { grid-column: 2 / 4; margin: 0 0 0 7px; }
}
@media (min-width: 900px) and (max-width: 950px) {
  .daycare-filter-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr) minmax(0, 1.1fr) 180px 173px; gap: 0; min-height: 70px; padding: 11px 20px; border-radius: 40px; }
  .daycare-filter-row > .daycare-filter-card:nth-child(3) { border-right: 1px solid #888; }
  .daycare-filter-row > .daycare-filter-more, .daycare-filter-row > .daycare-search-button { grid-column: auto; margin: 0 0 0 22px; }
}
@media (max-width: 540px) {
  .daycare-filter-row { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 14px 10px; }
  .daycare-filter-row > .daycare-filter-card { padding: 0 10px; }
  .daycare-filter-row > .daycare-filter-card > .daycare-menu-toggle { font-size: 14px; }
  .daycare-filter-row > .daycare-filter-card:nth-child(2) { border-right: 0; }
  .daycare-filter-row > .daycare-filter-card:nth-child(3) { grid-column: 1 / -1; }
  .daycare-filter-row > .daycare-search-button { grid-column: 2; }
}
/* More filters bottomsheet. */
#daycare-more-sheet[hidden] { display: none; }
#daycare-more-sheet.is-open { display: block; }
.backdrop {position: fixed;left: 0;right: 0;bottom: 0;top: 0;background-color: #000;z-index: 998;opacity: 0.8;filter: alpha(opacity=80);display: none;}
.bodyfix .backdrop{display: block}

.filterbottomsheet {position: fixed;height: 100%;box-sizing: border-box;display: none;z-index: 9999;}
.filterbottomsheet-container {max-width: 50rem !important;} 
.filterbottomsheet-container.large{}
.filterbottomsheet-container.small{max-width: 500px !important;}
.filterbottomsheet-container.medium{max-width: 650px !important;}
.filterbottomsheet .filterbottomsheet-inner {display: flex;flex-direction: column;overflow: hidden;background: #fff;width: 100%;height: auto;max-height: 85%;z-index: 1;position: fixed;bottom: 0;left: 0;pointer-events: auto;animation: slideInUp 0.3s cubic-bezier(.4, 0, .2, 1);transition: all 1s ease;-webkit-border-top-left-radius: 20px;
-webkit-border-top-right-radius: 20px;-moz-border-radius-topleft: 20px;-moz-border-radius-topright: 20px;border-top-left-radius: 20px;border-top-right-radius: 20px;}
 /* Animation :: BEGIN */
@keyframes slideInUp {
0% {transform: translate3d(0, 100%, 0);visibility: visible}
to {transform: translateZ(0)}
}
@keyframes slideInDown {
0% {transform: translate3d(100%, 0, 0);visibility: visible}
to {transform: translateZ(0)}
}
@keyframes fadeIn {
0% {opacity: 0}
to {opacity: 1}
}

@media (min-width: 768px){
.filterbottomsheet {position: fixed;top: 0;left: 0;right: 0;bottom: 0;display: none;width: 100%;height: 100%;overflow-x: hidden;outline: 0;z-index: 9999}
.filterbottomsheet .filterbottomsheet-container {height: calc(100% - 50px);min-height: calc(100% - 50px);max-width: 60rem;margin: 15px auto;position: relative;width: auto;pointer-events: none;display: flex;align-items: center;} 
.filterbottomsheet .filterbottomsheet-inner {overflow: hidden;width: 100%;max-height: 100%;z-index: 1;pointer-events: auto;position: relative;display: flex;flex-direction: column;background: #fff; height: auto;background-clip: padding-box;border-radius: 20px;outline: 0;}
.filterbottomsheet .filterbottomsheet-container.small .filterbottomsheet-inner{border-radius: 10px;}
 }

 /*  */
.filterheader{display: flex;align-items: center;padding: 20px 25px; border-bottom: solid 1px #ddd}
.filterheader big{font-size: 20px; font-weight:500}
.filterheader .close{margin-left: auto; color: #212121;font-size: 12px;}  
/*  */
.filtertoptab {display: inline-flex;width: 100%;justify-content: center;padding: 15px 0}
.filtertoptab a {padding: 12px 40px;color: #333;font-size: 14px;cursor: pointer;transition: 0.3s;border: 1px solid #999;font-weight: 500; display: flex;align-items: center;gap:10px}
.filtertoptab a:first-child{-webkit-border-top-left-radius: 8px;-webkit-border-bottom-left-radius: 8px;-moz-border-radius-topleft: 8px;-moz-border-radius-bottomleft: 8px;border-top-left-radius: 8px;border-bottom-left-radius: 8px;}
.filtertoptab a:last-child{-webkit-border-top-right-radius: 8px;-webkit-border-bottom-right-radius: 8px;-moz-border-radius-topright: 8px;-moz-border-radius-bottomright: 8px;border-top-right-radius: 8px;border-bottom-right-radius: 8px;}
.filtertoptab a.active, .filtertoptab a:hover { background-color: var(--red);color: var(--white);}    
.filtertoptab a i{display: flex;align-items: center;width: 15px;height: 15px;background-repeat: no-repeat;background-size: contain;}
/*  */
.filterbody{overflow-x: hidden;overflow-y: overlay;}
.filterbody .filterlist .title{padding: 15px; display: flex; align-items: center;gap:15px;border-bottom: solid 1px #fff;background: #f5f5f5;border-top: solid 1px #ccc;}
.filterbody .filterlist .title a{display: flex; align-items: center;gap:15px; width: 100%;}
.filterbody .filterlist .title b{font-size: 16px; font-weight: 500; color: #212121}
.filterbody .filterlist .title i{margin-left: auto;webkit-transition: all .5s ease-in;-moz-transition: all .5s ease-in;-ms-transition: all .5s ease-in;-o-transition: all .5s ease-in;transition: all .5s ease-in;}
.filterbody .filterlist .title i svg{color:#777}
/*  */
.filterbody .filterlist .filterlistinfo{padding: 15px;}    
.filterbody .filterlist .filterlistinfo .filtrminmax ul li a{padding: 10px;display: block;}
.filterbody .filterlist .filterlistinfo .protypelist{display: flex;align-items: center; flex-wrap: wrap;gap:10px;}.filterbody .filterlist .filterlistinfo .protypelist span{font-size: 14px; border: solid 1px #ddd; border-radius: 50px;}
.filterbody .filterlist .filterlistinfo .protypelist span a{align-items: center;padding: 8px 20px!important;gap:10px;display: flex;color: #777; border: 0; margin: 0;}
.filterbody .filterlist .filterlistinfo .protypelist span a i{display: flex;align-items: center;width: 15px; height: 15px;background-repeat: no-repeat;background-size: contain;}
.filterbody .filterlist .filterlistinfo .protypelist span.active{border-color: #08A680;background: #F5FFFD}
.filterbody .filterlist .filterlistinfo .protypelist span i.plus{  background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2215%22%20height%3D%2215%22%20viewBox%3D%220%200%2015%2015%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M7.5%200C5.51835%200.0240446%203.62463%200.821941%202.22329%202.22329C0.821941%203.62463%200.0240446%205.51835%200%207.5C0.0240446%209.48165%200.821941%2011.3754%202.22329%2012.7767C3.62463%2014.1781%205.51835%2014.976%207.5%2015C9.48165%2014.976%2011.3754%2014.1781%2012.7767%2012.7767C14.1781%2011.3754%2014.976%209.48165%2015%207.5C14.976%205.51835%2014.1781%203.62463%2012.7767%202.22329C11.3754%200.821941%209.48165%200.0240446%207.5%200ZM11.7857%208.03571H8.03571V11.7857H6.96429V8.03571H3.21429V6.96429H6.96429V3.21429H8.03571V6.96429H11.7857V8.03571Z%22%20fill%3D%22%23999999%22/%3E%3C/svg%3E");}
.filterbody .filterlist .filterlistinfo .protypelist span.active i.plus{ background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2215%22%20height%3D%2215%22%20viewBox%3D%220%200%2015%2015%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Crect%20width%3D%2215%22%20height%3D%2215%22%20rx%3D%227.5%22%20fill%3D%22%2308A680%22/%3E%3Cpath%20d%3D%22M3.5625%208.0625L6.1875%2010.6875L11.4375%205.0625%22%20stroke%3D%22white%22%20stroke-width%3D%222.34375%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22/%3E%3C/svg%3E");}    
.filterbody .filterlist .filterlistinfo .filterdate input{border: #AAA9A7 solid 1px;-webkit-border-radius: 6px;-moz-border-radius: 6px;border-radius: 6px;padding: 10px;height: 50px; width: 100%}

.filterbody .filterlist .filterlistinfo .bedbatharea {}
.filterbody .filterlist .filterlistinfo .bedbatharea .bedbatharea-bd .bedbatharea-title{font-weight: 500; font-size: 14px;}
.filterbody .filterlist .filterlistinfo .bedbatharea .bedbatharea-bd .bedbatharea-list{}
.filterbody .filterlist .filterlistinfo .filter-ft{margin: 0;padding: 15px 10px 10px;}
.filterbody .filterlist .filterlistinfo .boxstyle {display: flex;justify-content: center;margin: 10px 0;}
.filterbody .filterlist .filterlistinfo .boxstyle a {text-decoration: none;color: #333;font-weight: 500;padding: 12px 15px;border: 1px solid #ddd;border-right: 0; transition: 0.3s; width: 64px;justify-content: center;display: flex;}
.filterbody .filterlist .filterlistinfo .boxstyle a:first-child {-webkit-border-top-left-radius: 6px;-webkit-border-bottom-left-radius: 6px;-moz-border-radius-topleft: 6px;-moz-border-radius-bottomleft: 6px;border-top-left-radius: 6px;border-bottom-left-radius: 6px;}
.filterbody .filterlist .filterlistinfo .boxstyle a:last-child{-webkit-border-top-right-radius: 6px;-webkit-border-bottom-right-radius: 6px;-moz-border-radius-topright: 6px;-moz-border-radius-bottomright: 6px;border-top-right-radius: 6px;border-bottom-right-radius: 6px; border-right:solid 1px #ddd}
.filterbody .filterlist .filterlistinfo .boxstyle a:hover {background: #F5FFFD;}
.filterbody .filterlist .filterlistinfo .boxstyle a.active {background: #F5FFFD;color: #08A680;border:solid 1px #08A680;}
.filterbody .filterlist .filterlistinfo .squrfet{ display: flex;align-items: center;gap:10px;}
.filterbody .filterlist .filterlistinfo .squrfet .squrfetselect{width: 50%}
.filterbody .filterlist .filterlistinfo .squrfet .squrfetselect select{border: #AAA9A7 solid 1px;-webkit-border-radius: 6px;-moz-border-radius: 6px;border-radius: 6px;padding: 10px;height: 50px;width: 100%;}

.filtrminmax{width: 400px;margin: 0 auto;}
.filtrminmax .priceinputarea{background: #e1e1e1;padding: 10px; display: flex;justify-content: space-between;gap:10px;-webkit-border-top-left-radius: 16px;-webkit-border-top-right-radius: 16px;-moz-border-radius-topleft: 16px;-moz-border-radius-topright: 16px;border-top-left-radius: 16px;border-top-right-radius: 16px;border: solid 2px #fff;}
.filtrminmax .priceinputarea input{width: 50%;border-color: #AAA9A7;height: auto;padding: 15px;-webkit-border-radius: 6px;-moz-border-radius: 6px;border-radius: 6px;}
.filtrminmax .priceinputarea .priceinput{position: relative;}
.filtrminmax .priceinputarea .priceinput input{width: 100%;padding-left: 60px;}
.filtrminmax .priceinputarea .priceinput span{position: absolute;left: 1px;top: 1px;width: 50px;height: 46px;display: flex;align-items: center;justify-content: center;background: #f5f5f5;-webkit-border-top-left-radius: 6px;-webkit-border-bottom-left-radius: 6px;-moz-border-radius-topleft: 6px;-moz-border-radius-bottomleft: 6px;border-top-left-radius: 6px;border-bottom-left-radius: 6px;}
.filtrminmax .pricelistarea{}
.filtrminmax .pricelist-lt{}
.filtrminmax  ul {}
.filtrminmax ul li{border-bottom: solid 1px #ddd}
.filtrminmax ul li:first-child:hover{background: none}
.filtrminmax ul li:hover{background: #f5f5f5}
.filtrminmax ul li a{color: #777!important}
.filtrminmax .pricelist-rt{margin-left: 195px;}
.filteralert {position: relative;display: flex;padding: 16px;background-color: rgb(254, 226, 227);gap:10px;-webkit-border-top-left-radius: 16px;-webkit-border-top-right-radius: 16px;-moz-border-radius-topleft: 16px;-moz-border-radius-topright: 16px;border-top-left-radius: 16px;border-top-right-radius: 16px;}
.filteralert .child-wrapper {display: flex;flex-direction: column;align-items: flex-start;} 
.filteralert .child-wrapper b { color: rgb(217, 34, 40); font-weight: 500;padding-bottom: 5px; display: block} 
.filteralert .child-wrapper p {font-size: 14px; color: #777;line-height: 18px;} 
.notifift{background: #fff;padding: 15px 10px;text-align: center;color: #ec4758;border-top: solid 1px #d3cfca; display: flex;gap:10px; justify-content: center;align-items: center}
.notifift .link{text-decoration: underline;color: #212121}
.notifift .btun-blue{padding: 10px 12px; font-size: 15px;}

/* =====================================================================
   ADDITIONS for listing_search_panel.html + day-care_v5.js
   (moved from the inline <style> in the snippet + resets so the panel
   looks the same as the design on every page)
   ===================================================================== */

/* hidden helpers used by day-care_v5.js */
.daycare-filter-bar .hide, #MoreFilterModal .hide { display: none !important; }
#MoreFilterModal .daycare-chip-source { display: none !important; }
/* Services Required / Languages / Job Type not applicable for "All Care Services" and main categories */
#MoreFilterModal .filterlist.disabled { opacity: .45; }
#MoreFilterModal .filterlist.disabled .filterlistinfo { pointer-events: none; }
#MoreFilterModal .filterlist.disabled .filterlistinfo:empty::after, #MoreFilterModal .filterlist.disabled .protypelist:empty::after { content: "Choose a service to use this filter"; color: #777; font-size: 14px; }

/* category dropdown is disabled while "All Services" is selected */
.daycare-filter-card.disabled { cursor: not-allowed; }
.daycare-filter-card.disabled > * { opacity: .45; }
.daycare-filter-card.disabled .daycare-menu-toggle { pointer-events: none; }
.datepicker { z-index: 10001 !important; }

/* bar dropdown lists */
.daycare-filter-bar a, .daycare-filter-bar a:hover, .daycare-filter-bar a:focus { text-decoration: none; }
.daycare-custom-menu ul { margin: 0; padding: 0; list-style: none; }
.daycare-custom-menu > ul > li > a.daycare-menu-option { font-size: 15px; line-height: 20px; padding: 12px 12px; color: #303936; }
.daycare-custom-menu > ul > li > a.daycare-menu-option b { font-weight: 600; color: #212121; }
/* ---- Categories : grouped menu (All Services = all columns, Caregivers = 2 left, Care Seekers = 2 right) ---- */
.daycare-custom-menu.daycare-category-menu { width: max-content; min-width: 260px; max-width: min(1100px, calc(100vw - 24px)); max-height: 480px; padding: 14px 10px; }
.daycare-category-grid { display: flex; flex-wrap: wrap; gap: 0 18px; }
.daycare-category-grid .daycare-category-col { width: 240px; margin: 0; padding: 0; list-style: none; }
.daycare-category-grid .daycare-category-col.hide { display: none !important; }
.daycare-category-menu li.daycare-cat-head > a.daycare-menu-option { padding: 7px 10px 3px; font-weight: 600; color: #212121; font-size: 15px; line-height: 22px; }
.daycare-category-menu li.daycare-cat-sub > a.daycare-menu-option { padding: 5px 10px; color: #666; font-size: 15px; line-height: 22px; }
.daycare-category-menu li.daycare-cat-sub + li.daycare-cat-head { margin-top: 10px; }
.daycare-category-menu a.daycare-menu-option.is-selected { background: #f5f5f5; color: #103b34; }

/* ---- Location : one search box (city / ZIP, metro, neighborhood, county, landmark) ---- */
.daycare-custom-menu.daycare-location-menu { width: 380px; min-width: 0; max-width: calc(100vw - 24px); max-height: 440px; padding: 10px; }
#selectlocation .daycare-location-search { height: 42px; margin: 0 0 6px; padding: 8px 12px; font-size: 14px; border-radius: 8px; box-shadow: none; }
#selectlocation .daycare-location-search:focus { border-color: #1d6fec; outline: 0; }
#selectlocation .daycare-loc-group.hide, #selectlocation .daycare-loc-group .hide { display: none !important; }
#selectlocation .daycare-location-heading { padding: 8px 12px 4px; font-size: 12px; font-weight: 600; color: #888; text-transform: uppercase; letter-spacing: .3px; }
#selectlocation .daycare-location-list { margin: 0; padding: 0; list-style: none; }
#selectlocation .daycare-location-list li { margin: 0; list-style: none; cursor: pointer; }
#selectlocation .daycare-location-list li.hide { display: none; }
#selectlocation .daycare-location-list li a { display: block; padding: 9px 12px; border-radius: 7px; color: #303936; font-size: 14px; line-height: 20px; cursor: pointer; }
#selectlocation .daycare-location-list li a:hover, #selectlocation .daycare-location-list li.active a { background: #f5f5f5; }
#selectlocation .daycare-location-list a.is-selected { background: #f5f5f5; color: #103b34; }
#selectlocation .daycare-location-empty { padding: 12px; color: #777; font-size: 14px; }

/* More filters bottomsheet */
#MoreFilterModal a { text-decoration: none; }
#MoreFilterModal .filterheader .close { display: inline-flex; color: #212121; }
#MoreFilterModal .filtertoptab a { background: #fff; color: #333; }
#MoreFilterModal .filtertoptab a + a { border-left: 0; }
#MoreFilterModal .filtertoptab a.active, #MoreFilterModal .filtertoptab a.active:hover { background: #ec4758; border-color: #ec4758; color: #fff; }
#MoreFilterModal .filtertoptab a:hover { background: #fdf0f1; color: #212121; }
#MoreFilterModal .filterlist .title a { color: #212121; }
#MoreFilterModal .filterlist .title i { display: inline-flex; }
#MoreFilterModal .filterlist.is-collapsed .filterlistinfo { display: none; }
#MoreFilterModal .filterlist.is-collapsed .title i { transform: rotate(-90deg); }
#MoreFilterModal .protypelist span { background: #fff; }
#MoreFilterModal .protypelist span a { color: #777; font-size: 15px; line-height: 20px; }
#MoreFilterModal .protypelist span.active a { color: #303936; }
#MoreFilterModal .filtrminmax ul { margin: 0; padding: 0; list-style: none; }
#MoreFilterModal .filtrminmax .priceinputarea input { border: 1px solid #AAA9A7; outline: 0; }
#MoreFilterModal .filterdate input { box-sizing: border-box; }
#MoreFilterModal .notifift { color: #212121; }
#MoreFilterModal .notifift .link { color: #212121; text-decoration: underline; font-size: 18px; }
#MoreFilterModal .notifift .btun-blue { display: inline-flex; align-items: center; justify-content: center; min-width: 125px; height: 54px; padding: 0 30px; border-radius: 3px; background: #1d6fec; color: #fff; font-size: 18px; }
#MoreFilterModal .notifift .btun-blue:hover { background: #155bc5; }
#MoreFilterModal .notifift .btun-blue.is-loading, #MoreFilterModal .notifift .btun-blue.disabled { display: inline-flex !important; visibility: visible !important; background: #1d6fec !important; color: #fff !important; opacity: .85; pointer-events: none; }
body.bodyfix { overflow: hidden; }
#MoreFilterModal { display: none; }

@media (max-width: 767px) {
  .filtrminmax { width: 100%; }
  .filtrminmax .pricelist-rt { margin-left: 50%; }
  .filtertoptab a { padding: 12px 22px; }
}

/* ---- Search by Care ID (under the filter bar, same look as the dropdowns) ---- */
.daycare-careid { position: relative; display: flex; justify-content: flex-end; width: 100%; max-width: 1120px; margin: 10px auto 0; }
.daycare-careid-toggle { display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px; border: 1px solid #ddd; border-radius: 20px; background: #fff; color: #555; font-size: 14px; line-height: 18px; cursor: pointer; text-decoration: none !important; }
.daycare-careid-toggle:hover, .daycare-careid.is-open .daycare-careid-toggle { border-color: #414141; color: #303936; }
.daycare-careid-toggle .fa { color: #777; font-size: 14px; }
.daycare-careid-toggle .daycare-filter-chevron { width: 6px; height: 6px; margin: -3px 0 0 4px; }
.daycare-careid.is-open .daycare-careid-toggle .daycare-filter-chevron { transform: rotate(225deg); margin-top: 3px; }
.daycare-careid-pop { position: absolute; top: calc(100% + 8px); right: 0; z-index: 110; width: 340px; max-width: calc(100vw - 24px); padding: 14px 16px 16px; border: 1px solid #dce3df; border-radius: 12px; background: #fff; box-shadow: 0 10px 28px rgb(16 59 52 / 15%); box-sizing: border-box; }
.daycare-careid-pop.hide { display: none !important; }
.daycare-careid-head { display: flex; align-items: center; margin-bottom: 8px; }
.daycare-careid-head b { font-size: 16px; font-weight: 500; color: #212121; }
.daycare-careid-head .close { display: inline-flex; margin-left: auto; color: #777; opacity: 1; float: none; }
.daycare-careid-head .close:hover { color: #212121; }
.daycare-careid-box label { display: block; margin: 0 0 8px; color: #637773; font-size: 13px; line-height: 17px; font-weight: normal; position: static; transform: none; }
.daycare-careid-box.alert { margin: 0; padding: 0; border: 0; background: none; }
.daycare-careid-box.alert label { color: #d92228; }
.daycare-careid-box.alert .daycare-careid-input { border-color: #ec4758; }
.daycare-careid-row { display: flex; gap: 8px; }
.daycare-careid-input { position: relative; flex: 1; display: flex; align-items: center; height: 42px; border: 1px solid #dce3df; border-radius: 7px; background: #fff; overflow: hidden; }
.daycare-careid-input:focus-within { border-color: #1d6fec; }
.daycare-careid-input span { display: flex; align-items: center; justify-content: center; width: 36px; height: 100%; background: #f5f5f5; color: #777; font-size: 15px; }
.daycare-careid-input input { flex: 1; min-width: 0; height: 100% !important; margin: 0 !important; padding: 0 10px !important; border: 0 !important; box-shadow: none !important; outline: 0; background: transparent; color: #303936; font-size: 15px; }
.daycare-careid-search { display: inline-flex; align-items: center; justify-content: center; min-width: 88px; height: 42px; padding: 0 16px; border-radius: 3px; background: #1d6fec; color: #fff !important; font-size: 15px; text-decoration: none !important; cursor: pointer; }
.daycare-careid-search:hover { background: #155bc5; }
.daycare-careid-search.disabled { opacity: .7; pointer-events: none; }
@media (max-width: 540px) { .daycare-careid { justify-content: center; } .daycare-careid-pop { right: 50%; transform: translateX(50%); } }
.daycare-filter-bar .daycare-careid-input input:focus, .daycare-filter-bar .daycare-careid-input input:focus-visible { outline: none !important; box-shadow: none !important; }

/* "Show results in <current location>" after changing the category */
#selectlocation .daycare-loc-current { display: flex; align-items: center; gap: 8px; margin: 0 0 8px; padding: 10px 12px; border-radius: 7px; background: #1d6fec; color: #fff !important; font-size: 14px; line-height: 20px; cursor: pointer; text-decoration: none !important; }
#selectlocation .daycare-loc-current:hover { background: #155bc5; }
#selectlocation .daycare-loc-current b { font-weight: 600; }
#selectlocation .daycare-loc-current.hide { display: none !important; }

/* Hourly rate validation */
#MoreFilterModal .daycare-price-error { margin: 8px auto 0; color: #d92228; font-size: 14px; text-align: center; }
#MoreFilterModal .daycare-price-error.hide { display: none !important; }
#MoreFilterModal #dvselectprice.has-error .priceinputarea input { border-color: #ec4758; }

/* =====================================================================
   MOBILE / TABLET alignment (web view is not affected)
   ===================================================================== */
@media (max-width: 899px) {
  /* dropdowns open under the whole bar width instead of running off-screen */
  #dvselectaudience .daycare-custom-menu,
  #dvselectcategory .daycare-custom-menu,
  #dvselectlocation .daycare-custom-menu { min-width: 0 !important; max-width: none !important; right: auto !important; box-sizing: border-box; }
  #dvselectaudience .daycare-custom-menu { left: 0 !important; width: 300% !important; }
  #dvselectcategory .daycare-custom-menu { left: -100% !important; width: 300% !important; }
  #dvselectlocation .daycare-custom-menu { left: -200% !important; width: 300% !important; }
  .daycare-custom-menu.daycare-category-menu { max-height: 60vh; }
  .daycare-category-grid .daycare-category-col { width: auto; flex: 1 1 200px; }

  /* same size buttons */
  .daycare-filter-row > .daycare-filter-more .daycare-more-toggle,
  .daycare-filter-row > .daycare-search-button { height: 44px; min-height: 44px; font-size: 15px; padding: 0 12px; }
  .daycare-filter-more { margin-left: 0; }
}

@media (max-width: 540px) {
  /* 2 columns: [Services | Category] [Location] [More filters | Save Search] */
  .daycare-filter-row { gap: 12px 0; padding: 12px 10px; }
  .daycare-filter-row > .daycare-filter-card { height: 36px; }
  .daycare-filter-row > .daycare-filter-card > .daycare-menu-toggle { font-size: 14px; line-height: 20px; }
  .daycare-filter-row > .daycare-filter-card:nth-child(3) { padding-top: 10px; border-top: 1px solid #e3e3e3; height: auto; }
  #dvselectaudience .daycare-custom-menu { left: 0 !important; width: 200% !important; }
  #dvselectcategory .daycare-custom-menu { left: -100% !important; width: 200% !important; }
  #dvselectlocation .daycare-custom-menu { left: 0 !important; width: 100% !important; }
  .daycare-custom-menu.daycare-audience-menu { padding: 6px 8px 8px; }

  /* More filters | Save Search side by side, equal width */
  .daycare-filter-row > .daycare-filter-more { grid-column: 1; margin: 0 6px 0 0 !important; }
  .daycare-filter-row > .daycare-search-button { grid-column: 2; margin: 0 0 0 6px !important; }
  .daycare-filter-row > .daycare-filter-more .daycare-more-toggle,
  .daycare-filter-row > .daycare-search-button { width: 100%; box-sizing: border-box; justify-content: center; }

  /* Search by Care ID popover */
  .daycare-careid { justify-content: center; }
  .daycare-careid-pop { left: 50%; right: auto; transform: translateX(-50%); width: calc(100vw - 32px); }

  /* More filters sheet */
  #MoreFilterModal .filterheader { padding: 16px; }
  #MoreFilterModal .filtertoptab { padding: 12px 16px; }
  #MoreFilterModal .filtertoptab a { flex: 1; justify-content: center; padding: 11px 8px; }
  #MoreFilterModal .filterbody .filterlist .title { padding: 12px 16px; }
  #MoreFilterModal .filterbody .filterlist .filterlistinfo { padding: 12px 16px; }
  #MoreFilterModal .protypelist { gap: 8px; }
  #MoreFilterModal .protypelist span a { padding: 7px 14px !important; font-size: 14px; }
  #MoreFilterModal .filtrminmax { width: 100%; }
  #MoreFilterModal .filtrminmax .priceinputarea .priceinput input { padding-left: 48px; }
  #MoreFilterModal .filtrminmax .priceinputarea .priceinput span { width: 40px; }
  #MoreFilterModal .filtrminmax .pricelist-rt { margin-left: 50%; }
  #MoreFilterModal .notifift { padding: 12px 16px; gap: 16px; }
  #MoreFilterModal .notifift .link { font-size: 16px; }
  #MoreFilterModal .notifift .btun-blue { flex: 1; max-width: 220px; height: 46px; font-size: 16px; }
}
@media (max-width: 767px) {
  #MoreFilterModal .filtrminmax { width: 100%; max-width: 400px; margin: 0 auto; }
}
@media (max-width: 400px) {
  #selectlocation .daycare-location-search { font-size: 13px; padding: 8px 10px; }
}
