.elementor-kit-383{--e-global-color-primary:#9B9396;--e-global-color-secondary:#E3CAAB;--e-global-color-text:#211D1C;--e-global-color-accent:#603834;--e-global-color-68c788c:#FFFFFF;--e-global-color-d615fb9:#211D1C;--e-global-color-6bfea8a:#B3001B;--e-global-color-95494d1:#EFE3D1;--e-global-color-9bcfc61:#605342;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto";--e-global-typography-secondary-font-size:48px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1em;--e-global-typography-text-font-family:"Quicksand";--e-global-typography-text-font-size:14px;--e-global-typography-text-font-weight:600;--e-global-typography-text-line-height:1.8em;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-size:12px;--e-global-typography-accent-font-weight:300;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-letter-spacing:2px;--e-global-typography-3c14565-font-family:"Playfair Display";--e-global-typography-3c14565-font-size:200px;--e-global-typography-3c14565-font-weight:600;--e-global-typography-3c14565-line-height:1em;--e-global-typography-86461cd-font-family:"Playfair Display";--e-global-typography-86461cd-font-size:30px;--e-global-typography-86461cd-font-weight:600;--e-global-typography-86461cd-letter-spacing:0px;--e-global-typography-4677e23-font-family:"Playfair Display";--e-global-typography-4677e23-font-size:28px;--e-global-typography-4677e23-font-weight:600;--e-global-typography-4677e23-line-height:1em;--e-global-typography-db13ce3-font-family:"Playfair Display";--e-global-typography-db13ce3-font-size:22px;--e-global-typography-db13ce3-font-weight:600;--e-global-typography-db13ce3-line-height:1em;--e-global-typography-a7e7765-font-family:"Playfair Display";--e-global-typography-a7e7765-font-size:14px;--e-global-typography-a7e7765-font-weight:600;--e-global-typography-a7e7765-text-transform:uppercase;--e-global-typography-a7e7765-line-height:1em;--e-global-typography-a7e7765-letter-spacing:2px;--e-global-typography-ead7894-font-family:"Playfair Display";--e-global-typography-ead7894-font-size:30px;--e-global-typography-ead7894-font-weight:500;--e-global-typography-ead7894-line-height:1em;--e-global-typography-94f861e-font-family:"Playfair Display";--e-global-typography-94f861e-font-size:40px;--e-global-typography-94f861e-font-weight:600;--e-global-typography-94f861e-line-height:1em;--e-global-typography-8e43a9d-font-family:"Playfair Display";--e-global-typography-8e43a9d-font-size:24px;--e-global-typography-8e43a9d-font-weight:600;--e-global-typography-8e43a9d-line-height:1em;--e-global-typography-f99f013-font-family:"Roboto";--e-global-typography-f99f013-font-size:18px;--e-global-typography-f99f013-font-weight:300;--e-global-typography-f99f013-line-height:1em;}.elementor-kit-383 button,.elementor-kit-383 input[type="button"],.elementor-kit-383 input[type="submit"],.elementor-kit-383 .elementor-button{background-color:#02010100;font-family:"Muli", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:2px;color:#BFA498;border-style:solid;border-width:1px 1px 1px 1px;border-color:#BFA498;border-radius:0px 0px 0px 0px;padding:20px 30px 20px 30px;}.elementor-kit-383 button:hover,.elementor-kit-383 button:focus,.elementor-kit-383 input[type="button"]:hover,.elementor-kit-383 input[type="button"]:focus,.elementor-kit-383 input[type="submit"]:hover,.elementor-kit-383 input[type="submit"]:focus,.elementor-kit-383 .elementor-button:hover,.elementor-kit-383 .elementor-button:focus{background-color:#BFA498;color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#BFA498;}.elementor-kit-383 e-page-transition{background-color:#FFBC7D;}.elementor-kit-383 a{color:#3A2C39;}.elementor-kit-383 h2{color:#50414A;font-family:"Playfair Display", Sans-serif;font-weight:600;}.elementor-kit-383 label{color:#3A2C39;font-family:"EB Garamond", Sans-serif;font-weight:600;}.elementor-kit-383 input:not([type="button"]):not([type="submit"]),.elementor-kit-383 textarea,.elementor-kit-383 .elementor-field-textual{font-family:"Muli", Sans-serif;font-size:14px;font-weight:400;color:#3A2C39;border-style:solid;border-width:1px 1px 1px 1px;border-color:#3A2C3936;border-radius:0px 0px 0px 0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-383{--e-global-typography-secondary-font-size:46px;--e-global-typography-text-font-size:13px;--e-global-typography-accent-font-size:12px;--e-global-typography-3c14565-font-size:150px;--e-global-typography-86461cd-font-size:28px;--e-global-typography-4677e23-font-size:26px;--e-global-typography-db13ce3-font-size:20px;--e-global-typography-a7e7765-font-size:13px;--e-global-typography-ead7894-font-size:28px;--e-global-typography-94f861e-font-size:38px;--e-global-typography-8e43a9d-font-size:23px;--e-global-typography-f99f013-font-size:17px;}.elementor-kit-383 a{font-size:13px;}.elementor-kit-383 button,.elementor-kit-383 input[type="button"],.elementor-kit-383 input[type="submit"],.elementor-kit-383 .elementor-button{font-size:13px;}.elementor-kit-383 input:not([type="button"]):not([type="submit"]),.elementor-kit-383 textarea,.elementor-kit-383 .elementor-field-textual{font-size:13px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-383{--e-global-typography-secondary-font-size:42px;--e-global-typography-text-font-size:12px;--e-global-typography-accent-font-size:11px;--e-global-typography-3c14565-font-size:70px;--e-global-typography-86461cd-font-size:26px;--e-global-typography-4677e23-font-size:24px;--e-global-typography-db13ce3-font-size:18px;--e-global-typography-a7e7765-font-size:12px;--e-global-typography-ead7894-font-size:26px;--e-global-typography-94f861e-font-size:36px;--e-global-typography-8e43a9d-font-size:22px;--e-global-typography-f99f013-font-size:16px;}.elementor-kit-383 a{font-size:12px;}.elementor-kit-383 button,.elementor-kit-383 input[type="button"],.elementor-kit-383 input[type="submit"],.elementor-kit-383 .elementor-button{font-size:12px;}.elementor-kit-383 input:not([type="button"]):not([type="submit"]),.elementor-kit-383 textarea,.elementor-kit-383 .elementor-field-textual{font-size:12px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ============ Footer — responsive sizing (sitewide) ============ */
@media (max-width: 1024px) {
  #colophon .elementor-widget-heading .elementor-heading-title {
    font-size: 14px !important;
    letter-spacing: 1.4px !important;
  }
  #colophon .elementor-widget-text-editor p,
  #colophon .elementor-widget-text-editor,
  #colophon p,
  #colophon .elementor-shortcode,
  #colophon small {
    font-size: 12px !important;
    line-height: 1.55 !important;
  }
  #colophon .elementor-icon-list-text {
    font-size: 13px !important;
  }
}
@media (max-width: 767px) {
  #colophon .elementor-widget-heading .elementor-heading-title {
    font-size: 13px !important;
    letter-spacing: 1.2px !important;
    margin-bottom: 10px !important;
  }
  #colophon .elementor-widget-text-editor p,
  #colophon .elementor-widget-text-editor,
  #colophon p,
  #colophon .elementor-shortcode,
  #colophon small {
    font-size: 11.5px !important;
    line-height: 1.55 !important;
  }
  #colophon .elementor-icon-list-text {
    font-size: 12.5px !important;
  }
}


/* ============ Homepage service boxes — entire box clickable ============ */
body.page-id-170 .elementor-inner-column {
  position: relative;
}
/* Expand the heading's anchor clickable area to cover the entire column */
body.page-id-170 .elementor-inner-column .elementor-widget-heading a::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  cursor: pointer;
  background: transparent;
}
/* Ensure the anchor is clickable and hover state visible on the whole card */
body.page-id-170 .elementor-inner-column .elementor-widget-heading a {
  position: relative;
  z-index: 1;
}
/* Hover: subtle lift feedback on the whole card */
body.page-id-170 .elementor-inner-column:has(.elementor-widget-heading a):hover {
  transform: translateY(-2px);
  transition: transform 0.25s ease;
  cursor: pointer;
}


/* ============ Homepage Pricing & Membership section — responsive fix ============ */
@media (max-width: 1024px) {
  /* Toggle widget: full width, centered, override mobile__width-initial */
  body.page-id-170 [data-id="5c17e8c"] [data-id="af8e8b0"],
  body.page-id-170 [data-id="5c17e8c"] .elementor-widget-ucaddon_content_toggle {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  body.page-id-170 [data-id="5c17e8c"] .elementor-widget-ucaddon_content_toggle > .elementor-widget-container {
    display: flex !important;
    justify-content: center !important;
  }

  /* Force col-50 columns inside this section to stack (one per row) on tablet + mobile */
  body.page-id-170 [data-id="5c17e8c"] .elementor-col-50 {
    width: 100% !important;
    flex-basis: 100% !important;
    max-width: 100% !important;
  }
}

/* On mobile specifically, tighten toggle display + center price content */
@media (max-width: 767px) {
  body.page-id-170 [data-id="5c17e8c"] .elementor-widget-ucaddon_content_toggle {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  body.page-id-170 [data-id="5c17e8c"] .elementor-col-50 {
    margin-bottom: 20px !important;
  }
}


@media (max-width: 767px) {
  #colophon .elementor-top-column {
    margin-bottom: 48px !important;
  }
  #colophon .elementor-top-column:last-child {
    margin-bottom: 0 !important;
  }
}


/* ============ Footer — space between stacked columns (stronger rules) ============ */
@media (max-width: 1024px) {
  #colophon .elementor-section > .elementor-container > .elementor-column,
  #colophon .elementor-top-column {
    margin-bottom: 48px !important;
    padding-bottom: 0 !important;
  }
  #colophon .elementor-section > .elementor-container > .elementor-column:last-child,
  #colophon .elementor-top-column:last-child {
    margin-bottom: 0 !important;
  }
  /* Also add spacing below the Services icon-list widget specifically */
  #colophon .elementor-widget-icon-list {
    margin-bottom: 24px !important;
  }
}
@media (max-width: 767px) {
  #colophon .elementor-section > .elementor-container > .elementor-column,
  #colophon .elementor-top-column {
    margin-bottom: 56px !important;
  }
  #colophon .elementor-section > .elementor-container > .elementor-column:last-child,
  #colophon .elementor-top-column:last-child {
    margin-bottom: 0 !important;
  }
}


/* ============ Extend Pricing stack to section 8352de5 (Standard Pricing panel) ============ */
@media (max-width: 1024px) {
  body.page-id-170 [data-id="8352de5"] .elementor-col-50,
  body.page-id-170 [data-id="67d1d2f"] .elementor-col-50 {
    width: 100% !important;
    flex-basis: 100% !important;
    max-width: 100% !important;
  }
}
@media (max-width: 767px) {
  body.page-id-170 [data-id="8352de5"] .elementor-col-50,
  body.page-id-170 [data-id="67d1d2f"] .elementor-col-50 {
    margin-bottom: 20px !important;
  }
}



/* ============ Mobile header overlap fix ============ */
@media (max-width: 1024px) {
  /* The header is position: absolute with top:32px — make first content section clear it */
  #page > div[data-elementor-type="wp-page"],
  #page > .site-content > div[data-elementor-type="wp-page"] {
    padding-top: 90px !important;
  }
  /* When admin bar is present the logged-in admin bar already pushes header down, so slightly less space needed at the very top */
  body:not(.admin-bar) #page > div[data-elementor-type="wp-page"] {
    padding-top: 90px !important;
  }
}
@media (max-width: 767px) {
  #page > div[data-elementor-type="wp-page"] {
    padding-top: 80px !important;
  }
}


/* ============ Hero title banner for pages without one (Membership, Concierge) ============ */
body.page-id-9281 #page > div[data-elementor-type="wp-page"],
body.page-id-9322 #page > div[data-elementor-type="wp-page"] {
  padding-top: 0 !important;
}
body.page-id-9281 #page > div[data-elementor-type="wp-page"]::before,
body.page-id-9322 #page > div[data-elementor-type="wp-page"]::before {
  display: block;
  background: #FAF7F2;
  padding: 80px 24px;
  font-family: 'Playfair Display', serif;
  font-size: 56px;
  font-weight: 700;
  color: #1A1717;
  text-align: center;
  line-height: 1.2;
  letter-spacing: 0.5px;
  width: 100%;
  box-sizing: border-box;
}
body.page-id-9281 #page > div[data-elementor-type="wp-page"]::before {
  content: 'Membership';
}
body.page-id-9322 #page > div[data-elementor-type="wp-page"]::before {
  content: 'Concierge';
}
@media (max-width: 1024px) {
  body.page-id-9281 #page > div[data-elementor-type="wp-page"]::before,
  body.page-id-9322 #page > div[data-elementor-type="wp-page"]::before {
    padding: 60px 24px;
    font-size: 44px;
  }
}
@media (max-width: 767px) {
  body.page-id-9281 #page > div[data-elementor-type="wp-page"]::before,
  body.page-id-9322 #page > div[data-elementor-type="wp-page"]::before {
    padding: 48px 20px;
    font-size: 36px;
  }
}/* End custom CSS */