/*
Theme Name: Headland
Author: Agentpoint Team
Author URI: https://www.agentpoint.com.au/
Theme URI: https://demo.thatid.com/showcase-headland/
Description: Headland block theme from Agentpoint+
Requires at least: 6.5
Requires PHP: 8.1
Tested up to: 6.8.2
Version: 1.2.0
Text Domain: apt-headland
Tags: full-site-editing, block-patterns
Theme Type: block-theme
*/

/* Styles intended only for the front.*/
html {
  scroll-behavior: smooth;
}

@media screen and (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}

body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}

/* Styling for the magnific popup */
body > .mfp-bg.mfp-ready {
  background: rgb(from var(--wp--preset--color--contrast) r g b / 0.65);
  -webkit-backdrop-filter: blur(15px);
  backdrop-filter: blur(15px);
  opacity: 1;
}

body .mfp-wrap {
  overflow: hidden auto !important;
  position: fixed !important;
  top: 0 !important;
  height: 100% !important;
}

body .mfp-wrap .mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100% !important;
  left: 0;
  top: 0 !important;
  padding: min(2rem, 4vw);
  box-sizing: border-box;
}

body .mfp-wrap .mfp-container .mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045;
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form {
  max-width: 650px;
  margin: 0 auto;
  position: relative;
  padding: var(--wp--preset--spacing--40);
  background-color: var(--wp--preset--color--base);
  color: var(--wp--preset--color--contrast);
  border-radius: 8px;
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form button.mfp-close {
  background-color: transparent;
  padding: 0;
  border: 0;
  outline: 0;
  transition-duration: 0.1s;
  font-size: 3rem;
  margin: 0.5ch;
  color: currentColor;
}

@media (max-width: 767.98px) {
  body .mfp-wrap .mfp-container .mfp-content .popup-email-form button.mfp-close {
    margin: 0;
  }
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form .title {
  font-size: var(--wp--preset--font-size--large);
  font-family: var(--wp--preset--font-family--heading);
  font-weight: 600;
  color: var(--wp--preset--color--heading) !important;
  margin: 0 0 3rem;
  color: inherit;
  text-align: center;
}

@media (max-width: 768.98px) {
  body .mfp-wrap .mfp-container .mfp-content .popup-email-form .title {
    margin: 3rem 0 3rem;
  }
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form form ul.listforms {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
}

@media (max-width: 768.98px) {
  body .mfp-wrap .mfp-container .mfp-content .popup-email-form form ul.listforms {
    grid-template-columns: 1fr;
  }
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form form ul.listforms li {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form form ul.listforms li:not(:first-of-type):not(:nth-of-type(2)) {
  grid-column: 1/-1;
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form form ul.listforms li[class*="end"] {
  margin-top: var(--wp--preset--spacing--10);
  margin-bottom: var(--wp--preset--spacing--10);
  text-align: center;
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form form ul.listforms li label {
  font-size: var(--wp--preset--font-size--medium);
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form form ul.listforms li label span.red {
  color: var(--wp--preset--color--vivid-red);
  font-weight: 700;
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form form ul.listforms li input:not([type="radio"]):not([type="checkbox"]):not([type="file"]) {
  box-sizing: border-box;
  height: 48px;
  font-size: var(--wp--preset--font-size--medium);
  font-family: var(--wp--preset--font-family--body);
  padding: 0 16px;
  border-radius: 6px;
  border: 1px solid color-mix(in srgb, currentColor 5%, transparent);
  color: var(--wp--preset--color--contrast);
  background-color: color-mix(in srgb, currentColor 10%, transparent);
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form form ul.listforms li textarea {
  min-height: 150px;
  font-size: var(--wp--preset--font-size--medium);
  font-family: var(--wp--preset--font-family--body, inherit);
  border-radius: 8px;
  border: 1px solid color-mix(in srgb, currentColor 5%, transparent);
  padding: 16px;
  box-sizing: border-box;
  color: var(--wp--preset--color--contrast);
  background-color: color-mix(in srgb, currentColor 10%, transparent);
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form form ul.listforms li button[type="submit"] {
  display: inline-flex;
  align-items: center;
  position: relative;
  outline: 0;
  background-color: var(--wp--preset--color--button-bg, #000);
  color: var(--wp--preset--color--button-text, #fff);
  border: 1px solid var(--wp--preset--color--button-bg, #000);
  appearance: none;
  font-size: var(--wp--preset--font-size--medium);
  font-family: var(--wp--preset--font-family--body);
  font-weight: 600;
  border-radius: 5px;
  padding: 0.725rem 1.5rem 0.8rem;
  cursor: pointer;
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form form .form-message {
  margin-bottom: 2.5rem;
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form form .form-message .alert {
  border-radius: 12px;
  padding: 1.5rem;
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form form .form-message .alert.alert-danger {
  color: #842029;
  background-color: #f8d7da;
  border: 1px solid #f5c2c7;
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form form .form-message .alert.alert-success {
  color: #0f5132;
  background-color: #d1e7dd;
  border: 1px solid #badbcc;
}

body .mfp-wrap .mfp-container .mfp-content .popup-email-form form .form-message .alert > ul {
  padding: 0;
  margin: 0 var(--wp--preset--spacing--30);
}

/* Styling for the property details */
body.ap-page-less-ap_property .ap-property-image-slide,
body.ap-page-less-ap_property .ap-floorplan-image-slide {
  overflow: hidden;
  border-radius: 4px;
}

@media (max-width: 767.98px) {
  body.ap-page-less-ap_property .ap-property-image-slide,
  body.ap-page-less-ap_property .ap-floorplan-image-slide {
    margin-top: -40px;
    margin-right: calc(var(--wp--preset--spacing--30) * -1) !important;
    margin-left: calc(var(--wp--preset--spacing--30) * -1) !important;
  }
}

body.ap-page-less-ap_property .ap-property-image-slide .tns-outer,
body.ap-page-less-ap_property .ap-floorplan-image-slide .tns-outer {
  position: relative;
}

body.ap-page-less-ap_property .ap-property-image-slide .tns-outer .tns-nav,
body.ap-page-less-ap_property .ap-floorplan-image-slide .tns-outer .tns-nav {
  display: none;
}

body.ap-page-less-ap_property .ap-property-image-slide .tns-outer .tns-controls,
body.ap-page-less-ap_property .ap-floorplan-image-slide .tns-outer .tns-controls {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  z-index: 2;
}

body.ap-page-less-ap_property .ap-property-image-slide .tns-outer .tns-controls button,
body.ap-page-less-ap_property .ap-floorplan-image-slide .tns-outer .tns-controls button {
  --button-size: min(48px, 8vw);
  --icon-size: calc(var(--button-size) / 2 + 0.25rem);
  --button-offset: min(1.5rem, 1rem);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--button-size);
  aspect-ratio: 1 / 1;
  border-radius: 999px;
  font-size: 0;
  border: 0;
  background: var(--wp--preset--color--button-text, #fff);
}

body.ap-page-less-ap_property .ap-property-image-slide .tns-outer .tns-controls button::before,
body.ap-page-less-ap_property .ap-floorplan-image-slide .tns-outer .tns-controls button::before {
  content: "";
  display: inline-flex;
  width: var(--icon-size);
  aspect-ratio: 1 / 1;
  background: var(--wp--preset--color--button-bg, #111);
  mask-size: contain;
  mask-position: center;
  mask-repeat: no-repeat;
}

body.ap-page-less-ap_property .ap-property-image-slide .tns-outer .tns-controls button[data-controls="prev"],
body.ap-page-less-ap_property .ap-floorplan-image-slide .tns-outer .tns-controls button[data-controls="prev"] {
  left: var(--button-offset);
}

body.ap-page-less-ap_property .ap-property-image-slide .tns-outer .tns-controls button[data-controls="prev"]::before,
body.ap-page-less-ap_property .ap-floorplan-image-slide .tns-outer .tns-controls button[data-controls="prev"]::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='square' stroke-linejoin='round'%3E%3Cpath d='M15 18l-6-6 6-6'/%3E%3C/svg%3E");
}

body.ap-page-less-ap_property .ap-property-image-slide .tns-outer .tns-controls button[data-controls="next"],
body.ap-page-less-ap_property .ap-floorplan-image-slide .tns-outer .tns-controls button[data-controls="next"] {
  right: var(--button-offset);
}

body.ap-page-less-ap_property .ap-property-image-slide .tns-outer .tns-controls button[data-controls="next"]::before,
body.ap-page-less-ap_property .ap-floorplan-image-slide .tns-outer .tns-controls button[data-controls="next"]::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='square' stroke-linejoin='round'%3E%3Cpath d='M9 18l6-6-6-6'/%3E%3C/svg%3E");
}

body.ap-page-less-ap_property .ap-property-image-slide .ap-property-image-slide-item {
  margin: 0 !important;
}

body.ap-page-less-ap_property .ap-property-image-slide .ap-property-image-slide-item img {
  aspect-ratio: 16/ 9;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(0px, 0.5vw, 4px);
  margin: 0;
  padding: 0;
}

body.ap-page-less-ap_property .ap-floorplan-image-slide .ap-floorplan-image-slide-item {
  margin: 0 !important;
}

body.ap-page-less-ap_property .ap-floorplan-image-slide .ap-floorplan-image-slide-item img {
  height: 90vh;
  object-fit: contain;
  object-position: center;
  width: 100%;
  margin: 0;
  padding: 0;
}

body.ap-page-less-ap_property .ap-floorplan-image-slide .mfp-close {
  margin: 0;
  font-size: var(--wp--preset--font-size--xx-large);
  color: rgb(from var(--wp--preset--color--base) r g b / 0.95);
}

/*
 * Custom styling for the quick nav on the right sidebar
 * Such as gallery, description, map, agents, etc.
 */
body.ap-page-less-ap_property .ap-property-quick-nav-link > p {
  display: block;
  width: 100%;
}

body.ap-page-less-ap_property .ap-property-quick-nav-link > p a {
  background-color: color-mix(in srgb, currentColor 0%, transparent);
  display: block;
  padding: 0.35em 0.8em;
  transition: 0.2s;
  margin: -3px 0;
  border-radius: 4px;
}

body.ap-page-less-ap_property .ap-property-quick-nav-link > p a:hover {
  background-color: color-mix(in srgb, currentColor 8%, transparent);
}

/* Custom styling for the map section */
body.ap-page-less-ap_property #map-section #map_canvas {
  height: 450px;
  width: 100%;
  overflow: hidden;
  display: block;
  position: relative;
  z-index: 1;
  border-radius: 4px;
}

body.ap-page-less-ap_property #map-section #map_canvas > div {
  width: 100% !important;
}

@media (max-width: 767.98px) {
  body.ap-page-less-ap_property #map-section #map_canvas {
    height: 400px;
  }
}

/* Styling for the agent details */
body.ap-page-less-ap_team #testimonial #bottom_pagination {
  margin-top: var(--wp--preset--spacing--70);
}

body.ap-page-less-ap_team #testimonial #bottom_pagination .page_toolbar .page_numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  color: inherit;
}

body.ap-page-less-ap_team #testimonial #bottom_pagination .page_toolbar .page_numbers .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  border-radius: 5px;
  width: 32px;
  height: 32px;
  aspect-ratio: 1 / 1;
  color: var(--wp--preset--color--button-bg);
}

body.ap-page-less-ap_team #testimonial #bottom_pagination .page_toolbar .page_numbers .page-numbers.inactive {
  opacity: 0.5;
  cursor: not-allowed;
}

body.ap-page-less-ap_team #testimonial #bottom_pagination .page_toolbar .page_numbers .page-numbers.current {
  background-color: var(--wp--preset--color--button-bg);
  color: var(--wp--preset--color--button-text);
  border: 1px solid var(--wp--preset--color--button-border);
}

body.ap-page-less-ap_team #testimonial #bottom_pagination .page_toolbar .page_numbers .page-numbers.prev,
body.ap-page-less-ap_team #testimonial #bottom_pagination .page_toolbar .page_numbers .page-numbers.next {
  aspect-ratio: unset;
  width: auto;
  height: auto;
}

body.ap-page-less-ap_team #testimonial #bottom_pagination .page_toolbar .page_numbers .page-numbers.prev {
  margin-inline-end: 1.5em;
}

body.ap-page-less-ap_team #testimonial #bottom_pagination .page_toolbar .page_numbers .page-numbers.next {
  margin-inline-start: 1.5em;
}

body.ap-page-less-ap_team #testimonial #bottom_pagination .page_toolbar .page_numbers .page-numbers svg {
  width: 21px;
  height: 21px;
  fill: currentColor;
}
