/*
Theme Name: Alone Child
Description: Child theme of Alone theme for custom modifications
Author: Your Name
Template: alone
Version: 1.0.0
*/

/* 
=== IMPORTANT ===
Add your custom CSS below this line.
The parent theme styles will be automatically loaded via functions.php
*/

/*==================== 
CUSTOM FONTS
====================*/

/* Montserrat Font Family */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 100;
    src: url('./fonts/montserrat/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Hw0aXpsog.woff2') format('woff2');
}

@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 200;
    src: url('./fonts/montserrat/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Hw9aXpsog.woff2') format('woff2');
}

@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 300;
    src: url('./fonts/montserrat/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Hw2aXpsog.woff2') format('woff2');
}

@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    src: url('./fonts/montserrat/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Hw3aXpsog.woff2') format('woff2');
}

@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    src: url('./fonts/montserrat/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Hw5aXo.woff2') format('woff2');
}

@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    src: url('./fonts/montserrat/JTUSjIg1_i6t8kCHKm459WRhyzbi.woff2') format('woff2');
}

@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    src: url('./fonts/montserrat/JTUSjIg1_i6t8kCHKm459W1hyzbi.woff2') format('woff2');
}

@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 300;
    src: url('./fonts/montserrat/JTUSjIg1_i6t8kCHKm459WZhyzbi.woff2') format('woff2');
}

@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    src: url('./fonts/montserrat/JTUSjIg1_i6t8kCHKm459Wdhyzbi.woff2') format('woff2');
}

@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    src: url('./fonts/montserrat/JTUSjIg1_i6t8kCHKm459Wlhyw.woff2') format('woff2');
}

/* Poppins Font Family */
@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 300;
    src: url('./fonts/poppins/pxiByp8kv8JHgFVrLCz7Z1xlFQ.woff2') format('woff2');
}

@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 400;
    src: url('./fonts/poppins/pxiEyp8kv8JHgFVrJJfecg.woff2') format('woff2');
}

@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 600;
    src: url('./fonts/poppins/pxiByp8kv8JHgFVrLEj6Z1xlFQ.woff2') format('woff2');
}

@font-face {
    font-family: 'Poppins';
    font-style: italic;
    font-weight: 300;
    src: url('./fonts/poppins/pxiByp8kv8JHgFVrLCz7Z11lFc-K.woff2') format('woff2');
}

@font-face {
    font-family: 'Poppins';
    font-style: italic;
    font-weight: 400;
    src: url('./fonts/poppins/pxiEyp8kv8JHgFVrJJbecmNE.woff2') format('woff2');
}

@font-face {
    font-family: 'Poppins';
    font-style: italic;
    font-weight: 600;
    src: url('./fonts/poppins/pxiByp8kv8JHgFVrLEj6Z11lFc-K.woff2') format('woff2');
}

/* Lato Font Family */
@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 400;
    src: url('./fonts/lato/S6uyw4BMUTPHjx4wXg.woff2') format('woff2');
}

@font-face {
    font-family: 'Lato';
    font-style: italic;
    font-weight: 400;
    src: url('./fonts/lato/S6uyw4BMUTPHjxAwXjeu.woff2') format('woff2');
}

/* Quattrocento Font Family */
@font-face {
    font-family: 'Quattrocento';
    font-style: normal;
    font-weight: 400;
    src: url('./fonts/quattrocento/OZpEg_xvsDZQL_LKIF7q4jP3w2j6.woff2') format('woff2');
}

@font-face {
    font-family: 'Quattrocento';
    font-style: normal;
    font-weight: 700;
    src: url('./fonts/quattrocento/OZpEg_xvsDZQL_LKIF7q4jP3zWj6T4g.woff2') format('woff2');
}

@font-face {
    font-family: 'Quattrocento';
    font-style: normal;
    font-weight: 400;
    src: url('./fonts/quattrocento/OZpbg_xvsDZQL_LKIF7q4jP_eE3vcKnY.woff2') format('woff2');
}

@font-face {
    font-family: 'Quattrocento';
    font-style: normal;
    font-weight: 700;
    src: url('./fonts/quattrocento/OZpbg_xvsDZQL_LKIF7q4jP_eE3vfqnYgXc.woff2') format('woff2');
}

/*==================== 
Privacy Policy Page 
====================*/

.page-id-3 .page-titlebar {
    display: none !important;
}

/* Default desktop top padding for page ID 3 */
.page-id-3.page-template-default .site-main {
    padding-top: 198px;
}

/* Medium screens (tablets, etc.) */
@media (max-width: 1024px) {
    .page-id-3.page-template-default .site-main {
        padding-top: 178px;
    }
}

/* Small screens (phones) */
@media (max-width: 768px) {
    .page-id-3.page-template-default .site-main {
        padding-top: 138px;
    }
}

/*==================== 
Accessibility Statement Page 
====================*/

.page-id-2846 .page-titlebar {
    display: none !important;
}

/* Default desktop top padding for page ID 3 */
.page-id-2846.page-template-default .site-main {
    padding-top: 198px;
}

/* Medium screens (tablets, etc.) */
@media (max-width: 1024px) {
    .page-id-2846.page-template-default .site-main {
        padding-top: 178px;
    }
}

/* Small screens (phones) */
@media (max-width: 768px) {
    .page-id-2846.page-template-default .site-main {
        padding-top: 138px;
    }
}

/* ============================= */
/* MAP CONTAINER & BUTTONS (#wpgmza_map_2) */
/* ============================= */

/* Make the wrapper into a two-column grid */
/* Grid wrapper */
#map-listing-box-2 .map-listing-wrapper {
  display: grid;
  grid-template-areas:
    "search search"
    "cards map"
    "next next";
  grid-template-columns: 40% 60%;
  grid-auto-rows: auto;
  gap: 24px;
  align-items: start;
}

/* Search bar row */
#map-listing-box-2 .map-listing-wrapper .wpgmza-store-locator {
  grid-area: search;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

/* Cards column */
#map-listing-box-2 .map-listing-wrapper .wpgmza_marker_list_class {
  grid-area: cards;
  max-height: none !important;
  overflow: visible !important;
}

/* Map column */
#map-listing-box-2 .map-listing-wrapper .wpgmza_map {
  grid-area: map;
  width: 100% !important;
  height: 100% !important;
  min-height: 600px; /* adjust as needed */
}

#map-listing-box-2 #wpgmza_map_2 input.wpgmza-reset.wpgmza_sl_reset_button_2,
#map-listing-box-2 #wpgmza_map_2 input.wpgmza-search.wpgmza_sl_search_button_2 {
  color: #fff;
}

/* Pagination column */
#map-listing-box-2 .wpgmza-pagination {
  text-align: center;
  padding: 1em;
  grid-area: next;
  max-width: 100%;
  width: 37%;
}

#map-listing-box-2 .paginationjs .paginationjs-pages li.active>a {
    background: #0C6CB6 !important;
}

/* ============================= */
/* Search Bar Styles */
/* ============================= */

/* ====== CONTAINER ====== */
#map-listing-box-2 .wpgmza_sl_main_div {
  display: flex !important;
  align-items: start !important;
  gap: 12px !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 800px !important;
  margin: 0 auto 30px auto !important;
  padding: 12px 16px !important;
  background: #fff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 10px rgba(0,0,0,0.05) !important;
}

/* ====== INPUT WRAPPER ====== */
#map-listing-box-2 .wpgmza_sl_query_div {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Hide floating label since we use placeholder */
#map-listing-box-2 .wpgmza_sl_query_div label {
  display: none !important;
}

/* Input field */
#map-listing-box-2 .wpgmza_sl_query_div input.addressInput {
  width: 100% !important;
  padding: 14px 16px !important;
  font-size: 1rem !important;
  border: 1px solid #ccc !important;
  border-radius: 8px !important;
  outline: none !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

#map-listing-box-2 .wpgmza_sl_query_div input.addressInput:focus {
  border-color: #0C6CB6 !important;
  box-shadow: 0 0 0 3px rgba(12,108,182,0.2) !important;
}

/* ====== BUTTONS ====== */
#map-listing-box-2 .wpgmza_sl_search_button_div input,
#map-listing-box-2 .wpgmza_sl_reset_button_div input {
  padding: 14px 20px !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  border: none !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  transition: background 0.2s ease !important;
}

/* Search button */
#map-listing-box-2 .wpgmza_sl_search_button_div input {
  background: #0C6CB6 !important;
  color: #fff !important;
}

#map-listing-box-2 .wpgmza_sl_search_button_div input:hover {
  background: #004c99 !important;
}

/* Reset button */
#map-listing-box-2 .wpgmza_sl_reset_button_div input {
  background: #f1f1f1 !important;
  color: #333 !important;
}

#map-listing-box-2 .wpgmza_sl_reset_button_div input:hover {
  background: #e2e2e2 !important;
}

/* Use My Location button */

/* Hide the default FontAwesome icon */
#map-listing-box-2 .wpgmza-use-my-location i {
  display: none !important;
}

/* Style the button */
#map-listing-box-2 .wpgmza-use-my-location {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  width: 260px;
  gap: 8px;
  padding: 12px 20px;
  border: solid 1px #333333;
  border-radius: 8px;
  background: #fff !important;
  color: #333333;
  font-size: 0.95rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  position: relative;
}

/* Add custom image as background icon */
#map-listing-box-2 .wpgmza-use-my-location::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  background: url("/wp-content/uploads/2025/09/mapIcon.png") no-repeat center center;
  background-size: contain;
}

/* Add text after the icon */
#map-listing-box-2 .wpgmza-use-my-location::after {
  content: "Use my location";
}

#map-listing-box-2 .wpgmza-use-my-location:hover {
  background: #fff !important;
  border-color: #0C6CB6;
}

/* ====== NO RESULTS MESSAGE ====== */
#map-listing-box-2 .wpgmza-no-results {
  grid-column: 1 / -1;
  margin-top: 10px !important;
  color: #d32f2f !important;
  font-weight: 500 !important;
  text-align: center !important;
}

/* ============================= */
/* MARKER LIST & CARDS (#wpgmza_marker_list_2) */
/* ============================= */
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza_marker_list_class {
  flex: 1 1 40% !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 20px !important;
  max-height: 700px !important;
  overflow-y: auto !important;
  padding-right: 10px !important;
  margin-top: 20px !important;
}

#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-row {
  height: auto !important;
  display: flex;
  flex-direction: column !important;
  flex-basis: 100% !important;
}

#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-marker-grid
 {
    padding: 12px 0 !important;
}

/* Card style for each marker */
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza_marker_list_class .wpgmza-grid-item,
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item {
  display: flex !important;
  flex-direction: column !important;
  border: 1px solid #e6e6e6 !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05) !important;
  overflow: hidden !important;
  padding: 16px !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza_marker_list_class .wpgmza-grid-item:hover,
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 6px 18px rgba(0,0,0,0.1) !important;
}

/* Remove forced height and scrollbars on grid container */
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza_marker_list_class {
  max-height: none !important;
  overflow: visible !important;
}

#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item-content {
  max-height: 100% !important;
  padding-bottom: 20px !important;
}

/* Ensure grid items expand naturally with content */
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item {
  height: auto !important;
  overflow: hidden !important;
  padding-bottom: 54px !important; /* space for footer */
}

/* If WP Google Maps adds scrollbars inside the image holder */
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item .wpgmza-grid-image-wrap {
  max-height: none !important;
  overflow: hidden !important;
}

/* Title styling */
#map-listing-box-2 #wpgmza_marker_list_2 p.wpgmza-content-address-holder-inner.wpgmza_marker_title,
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item .wpgmza_marker_title {
  font-size: 1.2rem !important;
  font-weight: 600 !important;
  margin-bottom: 8px !important;
  color: #222 !important;
}

/* Font styling */
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item .wpgmza-desc,
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item .wpgmza-desc p {
  font-size: 1rem;
  opacity: 1 !important;
}

#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item .wpgmza-address {
  font-size: 1rem !important;
  color: #333333 !important;
  opacity: 1 !important;
  padding: 0px 20px !important;
}

/* Address + distance */
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza_marker_list_class .wpgmza_div_address {
  color: #3333 !important;
  margin-bottom: 8px !important;
  font-size: 0.95rem !important;
}

#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza_marker_list_class .wpgmza_div_distance {
  font-weight: 500 !important;
  color: #0066cc !important;
  margin-bottom: 10px !important;
}

/* Buttons */
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza_marker_list_class .wpgmza-link,
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza_marker_list_class .wpgmza-link a {
  display: inline-block !important;
  margin-right: 8px !important;
  margin-top: 10px !important;
  padding: 8px 14px !important;
  border-radius: 8px !important;
  background: #0066cc !important;
  text-decoration: none !important;
  font-weight: 500 !important;
  color: #fff;
  transition: background 0.2s ease !important;
}

#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza_marker_list_class .wpgmza-link:hover {
  background: #004c99 !important;
}

#map-listing-box-2 #wpgmza_marker_list_2 a.wpgmza_gd {
      padding: 3px 20px;
      background: #0C6CB6;
      color: #fff;
      font-size: 1rem !important;
      margin-left: 20px !important;
      border-radius: 30px;
      transition: background 0.2s ease !important;
  }

  /* Grid items footer styles */
  #map-listing-box-2 .wpgmza-grid-footer {
    height: 54px !important;
    text-align: left !important;
  }
  #map-listing-box-2 a.wpgmza_gd:hover {
      background: #004c99 !important;
  }

  #map-listing-box-2 .wpgmza-link a {
      background: #0C6CB6;
      color: #fff;
      font-size: 1rem !important;
      margin-left: 20px !important;
      padding: 3px 20px;
      display: inline-block;
      border-radius: 30px;
      transition: background 0.2s ease !important;
  }

  #map-listing-box-2 .wpgmza-link a:hover {
      background: #004c99 !important;
  }

/* Hide unwanted elements */
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item .wpgmza_marker_icon,
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item .wpgmza-desc,
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item .wpgmza-distance-from-location,
#map-listing-box-2 .wpgmza_modern_infowindow {
  display: none !important;
}

#map-listing-box-2 .wpgmza-store-locator .wpgmza_sl_reset_button_div {
    display: none !important;
  }

/* Image styles */
#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item .wpgmza-grid-image-wrap {
  width: 100% !important;
  max-height: 160px !important;
  overflow: hidden !important;
}

#map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item .wpgmza_map_image {
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
  display: block !important;
  pointer-events: none !important;
}

/* ============================= */
/* Responsive styles for map and marker list */
/* ============================= */

@media (max-width: 900px) {
  #map-listing-box-2 .map-listing-wrapper {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
  }
  #map-listing-box-2 .map-listing-wrapper .wpgmza-store-locator {
    order: 1;
    /* flex-direction: column !important; */
    align-items: start !important;
  }

  #map-listing-box-2 .map-listing-wrapper .wpgmza_map {
    order: 2;
    min-height: 300px !important;
  }
  #map-listing-box-2 .map-listing-wrapper .wpgmza_marker_list_class {
    order: 3;
    width: 100% !important;
    flex-wrap: nowrap;
  }
  #map-listing-box-2 .wpgmza-pagination {
  order: 4;
  width: 100%;
  }
  #map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-row {
    padding: 0;
    margin: auto 10px;
  }
  #map-listing-box-2 .map-listing-box-2 {
    flex-direction: column !important;
    gap: 16px !important;
    min-width: 0 !important;
  }
  #map-listing-box-2 #wpgmza_marker_list_2 .wpgmza_marker_list_class {
    grid-template-columns: 1fr !important;
    padding-right: 0 !important;
    max-height: none !important;
  }

  #map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item .wpgmza-desc, 
  #map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item .wpgmza-grid-footer
 {
    display: block !important;
  }

  #map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item {
    padding-bottom: 54px !important;
	min-height: 675px;
  }

  #map-listing-box-2 div#wpgmza_iw_holder_2 {
    display: none !important;
  }
  #map-listing-box-2 .wpgmza-grid-footer {
    left: 0;
    right: unset !important;
    text-align: left !important;
    height: 54px !important;
  }

  #map-listing-box-2 a.wpgmza_gd {
      padding: 3px 20px;
      background: #0C6CB6;
      color: #fff;
      font-size: 1rem !important;
      margin-left: 20px !important;
      border-radius: 30px;
      transition: background 0.2s ease !important;
  }

  #map-listing-box-2 a.wpgmza_gd:hover {
      background: #004c99 !important;
  }

  #map-listing-box-2 .wpgmza-link a {
      background: #0C6CB6;
      color: #fff;
      font-size: 1rem !important;
      margin-left: 20px !important;
      padding: 3px 20px;
      display: inline-block;
      border-radius: 30px;
      transition: background 0.2s ease !important;
  }

  #map-listing-box-2 .wpgmza-link a:hover {
      background: #004c99 !important;
  }
}

@media (max-width: 600px) {
  #map-listing-box-2 #wpgmza_marker_list_2 .wpgmza_marker_list_class {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  #map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item {
    padding: 8px !important;
    font-size: 0.95rem !important;
  }
  #map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item .wpgmza_marker_title {
    font-size: 1rem !important;
  }
  #map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item .wpgmza_map_image {
    max-height: 120px !important;
  }
}

@media (max-width: 710px) {
  #map-listing-box-2 .map-listing-wrapper .wpgmza_marker_list_class {
        flex-wrap: wrap;
    }
}

@media (max-width: 450px) {
    #map-listing-box-2 .map-listing-wrapper .wpgmza-store-locator {
        flex-direction: column !important;
    }

  #map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-row {
        margin: 10px auto;
  }
   #map-listing-box-2 .wpgmza-link a {
    margin-left: 10px !important;
    padding: 3px 14px;
  }

  #map-listing-box-2 a.wpgmza_gd {
      padding: 3px 10px;
      margin-left: 10px !important;
  }

  #map-listing-box-2 #wpgmza_marker_list_2 p.wpgmza-content-address-holder-inner.wpgmza_marker_title,
   #map-listing-box-2 #wpgmza_marker_list_2 .wpgmza-grid-item .wpgmza_marker_title {
    margin-bottom: 0px !important;
    margin-top: 138px !important;
  }

}