/*
Theme Name: PropertyPrep
Author: DX Design
Author URI: https://dxdesign.au/
Description: A custom theme for PropertyPrep
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
Version: 1.0.9
*/

:root {
  --spacer: 0.25rem;
  --wp--preset--font-size--small: 16px !important;
  --header-height-desktop: 9rem;
  --header-height-mobile: 4.5rem;
}

body {
  --wp--style--root--padding-right: 20px;
  --wp--style--root--padding-left: 20px;
  overflow-x: hidden;
}

@media screen and (min-width: 60em) {
  body {
    --wp--style--root--padding-right: 40px;
    --wp--style--root--padding-left: 40px;
  }
}

/* Typography
-------------------------------------------------*/

p {
  margin-top: 0;
  font-size: 0.9375rem;
}

h1,
.h1 {
  margin-top: 0;
  font-size: 2rem;
  line-height: 1.1;
}

h1.large {
  font-size: 2.5rem;
}

h2 {
  margin-top: 0;
  font-size: 1.75rem;
  line-height: 1.1;
}

h3 {
  margin-top: 0;
  font-size: 1.5rem;
  font-size: 1.375rem;
  line-height: 1.3;
}

h4,
.h4 {
  margin-top: 0;
  text-transform: uppercase;
  letter-spacing: 0.075em;
  font-size: 0.9375rem;
  font-weight: 700;
  font-family: var(--wp--preset--font-family--primary);
}

a[href^="tel:"] {
  color: inherit;
}

h3.has-medium-font-size {
  font-size: 1.25rem !important;
}

@media screen and (min-width: 60em) {
  p {
    font-size: 1.125rem;
  }

  h1,
  .h1 {
    font-size: 3rem;
    font-size: 3.125rem;
  }

  h1.large {
    font-size: 4.0625rem;
  }

  h2 {
    font-size: 2.5rem;
    font-size: 3rem;
  }

  h3 {
    font-size: 1.5625rem;
    font-size: 1.875rem;
  }

  h3.has-medium-font-size {
    font-size: 1.5rem !important;
  }

  h4,
  .h4 {
    font-size: 1.0625rem;
    font-size: 1.25rem;
  }
}

/* Utils
-------------------------------------------------*/

@media screen and (min-width: 60em) {
  .lg-flex-space-between {
    display: flex;
    justify-content: space-between;
  }
}

/* Header
-------------------------------------------------*/

.header nav .wp-block-navigation {
  gap: 1.5em;
}

.header .wp-block-columns {
  margin-bottom: 0;
}

.header nav .wp-block-navigation li a {
  font-weight: 700;
  font-size: 1.125rem;
  letter-spacing: 0.025em;
}

.header nav .wp-block-navigation li.current-menu-item a,
.header nav .wp-block-navigation li a:hover {
  text-decoration: underline;
  color: var(--wp--preset--color--primary);
}

/* Footer
-------------------------------------------------*/

.footer ul {
  margin-top: 0;
}

.footer .wp-block-social-link a {
  border: 1px solid var(--wp--preset--color--contrast);
  border-radius: 100px;
}

.footer .wp-block-social-link a:hover {
  border: 1px solid var(--wp--preset--color--contrast);
}

/* Gaps
-------------------------------------------------*/

.gap-0 {
  gap: 0;
}

.gap-small {
  gap: 1em;
}

.gap-medium {
  gap: 1rem;
}

.gap-large {
  gap: 1rem;
}

@media screen and (min-width: 60em) {
  .gap-medium {
    gap: 4rem;
  }

  .gap-large {
    gap: 6rem;
  }
}

/* Spacer Utils
-------------------------------------------------*/

/* Padding Top (pt) utilities */
.pt-0 {
  padding-top: 0;
}

.pt-2 {
  padding-top: calc(var(--spacer) * 2);
}

.pt-3 {
  padding-top: calc(var(--spacer) * 3);
}

.pt-4 {
  padding-top: calc(var(--spacer) * 4);
}

.pt-5 {
  padding-top: calc(var(--spacer) * 5);
}

.pt-6 {
  padding-top: calc(var(--spacer) * 6);
}

.pt-7 {
  padding-top: calc(var(--spacer) * 7);
}

.pt-8 {
  padding-top: calc(var(--spacer) * 8);
}

.pt-9 {
  padding-top: calc(var(--spacer) * 9);
}

.pt-10 {
  padding-top: calc(var(--spacer) * 10);
}

.pt-11 {
  padding-top: calc(var(--spacer) * 11);
}

.pt-12 {
  padding-top: calc(var(--spacer) * 12);
}

/* Padding Right (pr) utilities */
.pr-0 {
  padding-right: 0;
}

.pr-2 {
  padding-right: calc(var(--spacer) * 2);
}

.pr-3 {
  padding-right: calc(var(--spacer) * 3);
}

.pr-4 {
  padding-right: calc(var(--spacer) * 4);
}

.pr-5 {
  padding-right: calc(var(--spacer) * 5);
}

.pr-6 {
  padding-right: calc(var(--spacer) * 6);
}

.pr-7 {
  padding-right: calc(var(--spacer) * 7);
}

.pr-8 {
  padding-right: calc(var(--spacer) * 8);
}

.pr-9 {
  padding-right: calc(var(--spacer) * 9);
}

.pr-10 {
  padding-right: calc(var(--spacer) * 10);
}

.pr-11 {
  padding-right: calc(var(--spacer) * 11);
}

.pr-12 {
  padding-right: calc(var(--spacer) * 12);
}

/* Padding Bottom (pb) utilities */
.pb-0 {
  padding-bottom: 0;
}

.pb-2 {
  padding-bottom: calc(var(--spacer) * 2);
}

.pb-3 {
  padding-bottom: calc(var(--spacer) * 3);
}

.pb-4 {
  padding-bottom: calc(var(--spacer) * 4);
}

.pb-5 {
  padding-bottom: calc(var(--spacer) * 5);
}

.pb-6 {
  padding-bottom: calc(var(--spacer) * 6);
}

.pb-7 {
  padding-bottom: calc(var(--spacer) * 7);
}

.pb-8 {
  padding-bottom: calc(var(--spacer) * 8);
}

.pb-9 {
  padding-bottom: calc(var(--spacer) * 9);
}

.pb-10 {
  padding-bottom: calc(var(--spacer) * 10);
}

.pb-11 {
  padding-bottom: calc(var(--spacer) * 11);
}

.pb-12 {
  padding-bottom: calc(var(--spacer) * 12);
}

/* Padding Left (pl) utilities */
.pl-0 {
  padding-left: 0;
}

.pl-2 {
  padding-left: calc(var(--spacer) * 2);
}

.pl-3 {
  padding-left: calc(var(--spacer) * 3);
}

.pl-4 {
  padding-left: calc(var(--spacer) * 4);
}

.pl-5 {
  padding-left: calc(var(--spacer) * 5);
}

.pl-6 {
  padding-left: calc(var(--spacer) * 6);
}

.pl-7 {
  padding-left: calc(var(--spacer) * 7);
}

.pl-8 {
  padding-left: calc(var(--spacer) * 8);
}

.pl-9 {
  padding-left: calc(var(--spacer) * 9);
}

.pl-10 {
  padding-left: calc(var(--spacer) * 10);
}

.pl-11 {
  padding-left: calc(var(--spacer) * 11);
}

.pl-12 {
  padding-left: calc(var(--spacer) * 12);
}

/* Horizontal Padding (px) utilities */
.px-0 {
  padding-right: 0;
  padding-left: 0;
}

.px-2 {
  padding-right: calc(var(--spacer) * 2);
  padding-left: calc(var(--spacer) * 2);
}

.px-3 {
  padding-right: calc(var(--spacer) * 3);
  padding-left: calc(var(--spacer) * 3);
}

.px-4 {
  padding-right: calc(var(--spacer) * 4);
  padding-left: calc(var(--spacer) * 4);
}

.px-5 {
  padding-right: calc(var(--spacer) * 5);
  padding-left: calc(var(--spacer) * 5);
}

.px-6 {
  padding-right: calc(var(--spacer) * 6);
  padding-left: calc(var(--spacer) * 6);
}

.px-7 {
  padding-right: calc(var(--spacer) * 7);
  padding-left: calc(var(--spacer) * 7);
}

.px-8 {
  padding-right: calc(var(--spacer) * 8);
  padding-left: calc(var(--spacer) * 8);
}

.px-9 {
  padding-right: calc(var(--spacer) * 9);
  padding-left: calc(var(--spacer) * 9);
}

.px-10 {
  padding-right: calc(var(--spacer) * 10);
  padding-left: calc(var(--spacer) * 10);
}

.px-11 {
  padding-right: calc(var(--spacer) * 11);
  padding-left: calc(var(--spacer) * 11);
}

.px-12 {
  padding-right: calc(var(--spacer) * 12);
  padding-left: calc(var(--spacer) * 12);
}

/* Vertical Padding (py) utilities */
.py-0 {
  padding-top: 0;
  padding-bottom: 0;
}

.py-2 {
  padding-top: calc(var(--spacer) * 2);
  padding-bottom: calc(var(--spacer) * 2);
}

.py-3 {
  padding-top: calc(var(--spacer) * 3);
  padding-bottom: calc(var(--spacer) * 3);
}

.py-4 {
  padding-top: calc(var(--spacer) * 4);
  padding-bottom: calc(var(--spacer) * 4);
}

.py-5 {
  padding-top: calc(var(--spacer) * 5);
  padding-bottom: calc(var(--spacer) * 5);
}

.py-6 {
  padding-top: calc(var(--spacer) * 6);
  padding-bottom: calc(var(--spacer) * 6);
}

.py-7 {
  padding-top: calc(var(--spacer) * 7);
  padding-bottom: calc(var(--spacer) * 7);
}

.py-8 {
  padding-top: calc(var(--spacer) * 8);
  padding-bottom: calc(var(--spacer) * 8);
}

.py-9 {
  padding-top: calc(var(--spacer) * 9);
  padding-bottom: calc(var(--spacer) * 9);
}

.py-10 {
  padding-top: calc(var(--spacer) * 10);
  padding-bottom: calc(var(--spacer) * 10);
}

.py-11 {
  padding-top: calc(var(--spacer) * 11);
  padding-bottom: calc(var(--spacer) * 11);
}

.py-12 {
  padding-top: calc(var(--spacer) * 12);
  padding-bottom: calc(var(--spacer) * 12);
}

/* All-sides Padding (p) utilities */
.p-0 {
  padding: 0;
}

.p-2 {
  padding: calc(var(--spacer) * 2);
}

.p-3 {
  padding: calc(var(--spacer) * 3);
}

.p-4 {
  padding: calc(var(--spacer) * 4);
}

.p-5 {
  padding: calc(var(--spacer) * 5);
}

.p-6 {
  padding: calc(var(--spacer) * 6);
}

.p-7 {
  padding: calc(var(--spacer) * 7);
}

.p-8 {
  padding: calc(var(--spacer) * 8);
}

.p-9 {
  padding: calc(var(--spacer) * 9);
}

.p-10 {
  padding: calc(var(--spacer) * 10);
}

.p-11 {
  padding: calc(var(--spacer) * 11);
}

.p-12 {
  padding: calc(var(--spacer) * 12);
}

/* MARGIN UTILITIES */

/* Margin Top (mt) utilities */
.mt-0 {
  margin-top: 0;
}

.mt-2 {
  margin-top: calc(var(--spacer) * 2);
}

.mt-3 {
  margin-top: calc(var(--spacer) * 3);
}

.mt-4 {
  margin-top: calc(var(--spacer) * 4);
}

.mt-5 {
  margin-top: calc(var(--spacer) * 5);
}

.mt-6 {
  margin-top: calc(var(--spacer) * 6);
}

.mt-7 {
  margin-top: calc(var(--spacer) * 7);
}

.mt-8 {
  margin-top: calc(var(--spacer) * 8);
}

.mt-9 {
  margin-top: calc(var(--spacer) * 9);
}

.mt-10 {
  margin-top: calc(var(--spacer) * 10);
}

.mt-11 {
  margin-top: calc(var(--spacer) * 11);
}

.mt-12 {
  margin-top: calc(var(--spacer) * 12);
}

/* Margin Right (mr) utilities */
.mr-0 {
  margin-right: 0;
}

.mr-2 {
  margin-right: calc(var(--spacer) * 2);
}

.mr-3 {
  margin-right: calc(var(--spacer) * 3);
}

.mr-4 {
  margin-right: calc(var(--spacer) * 4);
}

.mr-5 {
  margin-right: calc(var(--spacer) * 5);
}

.mr-6 {
  margin-right: calc(var(--spacer) * 6);
}

.mr-7 {
  margin-right: calc(var(--spacer) * 7);
}

.mr-8 {
  margin-right: calc(var(--spacer) * 8);
}

.mr-9 {
  margin-right: calc(var(--spacer) * 9);
}

.mr-10 {
  margin-right: calc(var(--spacer) * 10);
}

.mr-11 {
  margin-right: calc(var(--spacer) * 11);
}

.mr-12 {
  margin-right: calc(var(--spacer) * 12);
}

/* Margin Bottom (mb) utilities */
.mb-0 {
  margin-bottom: 0;
}

.mb-2 {
  margin-bottom: calc(var(--spacer) * 2);
}

.mb-3 {
  margin-bottom: calc(var(--spacer) * 3);
}

.mb-4 {
  margin-bottom: calc(var(--spacer) * 4);
}

.mb-5 {
  margin-bottom: calc(var(--spacer) * 5);
}

.mb-6 {
  margin-bottom: calc(var(--spacer) * 6);
}

.mb-7 {
  margin-bottom: calc(var(--spacer) * 7);
}

.mb-8 {
  margin-bottom: calc(var(--spacer) * 8);
}

.mb-9 {
  margin-bottom: calc(var(--spacer) * 9);
}

.mb-10 {
  margin-bottom: calc(var(--spacer) * 10);
}

.mb-11 {
  margin-bottom: calc(var(--spacer) * 11);
}

.mb-12 {
  margin-bottom: calc(var(--spacer) * 12);
}

/* Margin Left (ml) utilities */
.ml-0 {
  margin-left: 0;
}

.ml-2 {
  margin-left: calc(var(--spacer) * 2);
}

.ml-3 {
  margin-left: calc(var(--spacer) * 3);
}

.ml-4 {
  margin-left: calc(var(--spacer) * 4);
}

.ml-5 {
  margin-left: calc(var(--spacer) * 5);
}

.ml-6 {
  margin-left: calc(var(--spacer) * 6);
}

.ml-7 {
  margin-left: calc(var(--spacer) * 7);
}

.ml-8 {
  margin-left: calc(var(--spacer) * 8);
}

.ml-9 {
  margin-left: calc(var(--spacer) * 9);
}

.ml-10 {
  margin-left: calc(var(--spacer) * 10);
}

.ml-11 {
  margin-left: calc(var(--spacer) * 11);
}

.ml-12 {
  margin-left: calc(var(--spacer) * 12);
}

/* Horizontal Margin (mx) utilities */
.mx-0 {
  margin-right: 0;
  margin-left: 0;
}

.mx-2 {
  margin-right: calc(var(--spacer) * 2);
  margin-left: calc(var(--spacer) * 2);
}

.mx-3 {
  margin-right: calc(var(--spacer) * 3);
  margin-left: calc(var(--spacer) * 3);
}

.mx-4 {
  margin-right: calc(var(--spacer) * 4);
  margin-left: calc(var(--spacer) * 4);
}

.mx-5 {
  margin-right: calc(var(--spacer) * 5);
  margin-left: calc(var(--spacer) * 5);
}

.mx-6 {
  margin-right: calc(var(--spacer) * 6);
  margin-left: calc(var(--spacer) * 6);
}

.mx-7 {
  margin-right: calc(var(--spacer) * 7);
  margin-left: calc(var(--spacer) * 7);
}

.mx-8 {
  margin-right: calc(var(--spacer) * 8);
  margin-left: calc(var(--spacer) * 8);
}

.mx-9 {
  margin-right: calc(var(--spacer) * 9);
  margin-left: calc(var(--spacer) * 9);
}

.mx-10 {
  margin-right: calc(var(--spacer) * 10);
  margin-left: calc(var(--spacer) * 10);
}

.mx-11 {
  margin-right: calc(var(--spacer) * 11);
  margin-left: calc(var(--spacer) * 11);
}

.mx-12 {
  margin-right: calc(var(--spacer) * 12);
  margin-left: calc(var(--spacer) * 12);
}

/* Vertical Margin (my) utilities */
.my-0 {
  margin-top: 0;
  margin-bottom: 0;
}

.my-2 {
  margin-top: calc(var(--spacer) * 2);
  margin-bottom: calc(var(--spacer) * 2);
}

.my-3 {
  margin-top: calc(var(--spacer) * 3);
  margin-bottom: calc(var(--spacer) * 3);
}

.my-4 {
  margin-top: calc(var(--spacer) * 4);
  margin-bottom: calc(var(--spacer) * 4);
}

.my-5 {
  margin-top: calc(var(--spacer) * 5);
  margin-bottom: calc(var(--spacer) * 5);
}

.my-6 {
  margin-top: calc(var(--spacer) * 6);
  margin-bottom: calc(var(--spacer) * 6);
}

.my-7 {
  margin-top: calc(var(--spacer) * 7);
  margin-bottom: calc(var(--spacer) * 7);
}

.my-8 {
  margin-top: calc(var(--spacer) * 8);
  margin-bottom: calc(var(--spacer) * 8);
}

.my-9 {
  margin-top: calc(var(--spacer) * 9);
  margin-bottom: calc(var(--spacer) * 9);
}

.my-10 {
  margin-top: calc(var(--spacer) * 10);
  margin-bottom: calc(var(--spacer) * 10);
}

.my-11 {
  margin-top: calc(var(--spacer) * 11);
  margin-bottom: calc(var(--spacer) * 11);
}

.my-12 {
  margin-top: calc(var(--spacer) * 12);
  margin-bottom: calc(var(--spacer) * 12);
}

/* All-sides Margin (m) utilities */
.m-0 {
  margin: 0;
}

.m-2 {
  margin: calc(var(--spacer) * 2);
}

.m-3 {
  margin: calc(var(--spacer) * 3);
}

.m-4 {
  margin: calc(var(--spacer) * 4);
}

.m-5 {
  margin: calc(var(--spacer) * 5);
}

.m-6 {
  margin: calc(var(--spacer) * 6);
}

.m-7 {
  margin: calc(var(--spacer) * 7);
}

.m-8 {
  margin: calc(var(--spacer) * 8);
}

.m-9 {
  margin: calc(var(--spacer) * 9);
}

.m-10 {
  margin: calc(var(--spacer) * 10);
}

.m-11 {
  margin: calc(var(--spacer) * 11);
}

.m-12 {
  margin: calc(var(--spacer) * 12);
}

/* Auto margin utilities */
.m-auto {
  margin: auto;
}

.mt-auto {
  margin-top: auto;
}

.mr-auto {
  margin-right: auto;
}

.mb-auto {
  margin-bottom: auto;
}

.ml-auto {
  margin-left: auto;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.my-auto {
  margin-top: auto;
  margin-bottom: auto;
}

/* Border Radius
-------------------------------------------------*/

.rounded-full {
  border-radius: 9999px;
}

/* Formidable
-------------------------------------------------*/

.frm_forms {
  --border-width-error: 0 0 1px 0;
}

.frm_forms .form-field input {
  border-bottom: 1px solid #2f2f2f;
}

.frm_forms .form-field textarea {
  border-bottom: 1px solid #2f2f2f;
}

.frm_forms .frm_button_submit {
  border: 1px solid #2f2f2f;
  background-color: transparent;
  color: #2f2f2f;
  padding: 0.75rem 4rem;
  font-size: 0.9375rem;
  font-family: inherit;
  margin-top: 1.5rem;
}

.frm_forms .frm_button_submit:hover {
  background-color: #2f2f2f;
  color: #ffffff;
}

.frm_style_formidable-style.with_frm_style .frm_error {
  color: #f04438;
  font-size: 14px;
}

.frm_style_formidable-style.with_frm_style .frm_error_style {
  background: transparent;
  color: #f04438;
  margin: 0;
  font-weight: bold;
  border: 0;
  padding: 0;
  font-size: 0.9375rem;
}

@media screen and (min-width: 60em) {
  .frm_forms .frm_button_submit {
    font-size: 1.0625rem;
  }

  .frm_style_formidable-style.with_frm_style .frm_error_style {
    font-size: 1.0625rem;
  }
}

/* Desktop Menu
-------------------------------------------------*/
.desktop-menu {
  display: none;
}

@media screen and (min-width: 60em) {
  .desktop-menu {
    display: flex;
  }

  .header .wp-block-navigation-item {
    height: var(--header-height-desktop);
  }
}

/* Header
-------------------------------------------------*/
.header .wp-block-columns {
  height: var(--header-height-mobile);
  display: flex;
  align-items: center !important;
  margin-bottom: 0;
}

.header .wp-block-navigation .has-modal-open li a {
  font-size: 3rem;
}

/*
.header
	.wp-block-navigation
	.has-modal-open
	.wp-block-navigation__responsive-container-content {
	justify-content: flex-start !important;
}
*/

@media screen and (min-width: 60em) {
  .header .wp-block-columns {
    height: var(--header-height-desktop);
  }
}

/* Logo
-------------------------------------------------*/

.site-logo img {
  width: 150px !important;
}

@media screen and (min-width: 60em) {
  .site-logo img {
    width: 280px !important;
  }
}

/* Mega Menu
-------------------------------------------------*/

.mega-menu {
  display: none;
  position: absolute;
  top: var(--header-height-desktop);
  left: 0;
  width: 100%;
  background: #fff;
  z-index: 2;
}

.mega-menu-open .mega-menu {
  display: block;
}

.mega-menu h4 {
  font-size: 1rem;
}

.mega-menu h2 {
  font-size: 2.125rem;
}

.mega-menu .wp-block-button.is-style-arrow .wp-element-button {
  font-size: 1.275rem;
}

.mega-menu .wp-block-button.is-style-arrow .wp-element-button:hover {
  color: var(--wp--preset--color--primary) !important;
}

/* Hide reCAPTCHA badge */
.grecaptcha-badge {
  visibility: hidden !important;
}
