/*
	Theme Name: Carolina Ridge
	Description: A custom mobile responsive and HTML5 theme built for the Genesis Framework.
	Author: Laura Wyatt
	Author URI: https://yellowduckmarketing.com
	Template: genesis
*/

/*--------------------------------------------------------------
1. FONT IMPORTS
--------------------------------------------------------------*/

/* Montserrat from Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap');

/* Lux (self-hosted) */
@font-face {
  font-family: 'Lux';
  src: url('/wp-content/themes/carolinaridge/fonts/Luxenta-Regular.woff2') format('woff2'),
       url('/wp-content/themes/carolinaridge/fonts/Luxenta-Regular.woff')  format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

/*--------------------------------------------------------------
2. BRAND COLORS & FONT VARS
--------------------------------------------------------------*/
:root {
  --olive-green: #737a32;
  --charcoal:    #2D3C40;
  --clay:        #946e4b;
  --steel-blue:  #4F5D64;
  --sage:        #6b6e54;
  --maroon:      #804341;
  --warm-gray:   #D1C8BC;
  --light-gray:  #F2F0E9;
  --dark-gray:   #707070;
  --teal:        #4b7d7a;
  --white:       #FFFFFF;

  /* Fonts */
  --font-heading: 'Lux', serif;
  --font-body:    'Montserrat', sans-serif;
}

/* Baseline Normalize
---------------------------------------------------------------------------------------------------- */
html {
    font-family: var(--font-body);
    -ms-text-size-adjust:100%;
    -webkit-text-size-adjust:100%;
    background-color: var(--light-gray);
}
body {
    margin:0;
    position:relative;
    color: var(--charcoal);
    font-family: var(--font-body);
    font-weight: 500;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0.04em;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
}
article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}
audio,canvas,progress,video{display:inline-block;vertical-align:baseline}
audio:not([controls]){display:none;height:0}
[hidden],template{display:none}
a{background:0 0}
a:active,a:hover{outline:0}
abbr[title]{border-bottom:1px dotted}
b,strong{font-weight:500}
dfn{font-style:italic}
h1{font-size:13px;margin:.67em 0}
mark{background:#ff0;color:#000}
small{font-size:80%}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sup{top:-.5em}
sub{bottom:-.25em}
img{border:0}
svg:not(:root){overflow:hidden}
figure{margin:1em 40px}
hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}
pre{overflow:auto}
code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}
button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}
button{overflow:visible}
button,select{text-transform:none}
button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}
button[disabled],html input[disabled]{cursor:default}
button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}
input{line-height:normal}
input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}
input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}
input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}
input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}
fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}
legend{border:0;padding:0}
textarea{overflow:auto}
optgroup{font-weight:700}
table{border-collapse:collapse;border-spacing:0}
td,th{padding:0}

/* Global Elements
--------------------------------------------- */
*,
input[type="search"] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing:    border-box;
    box-sizing:         border-box;
    -webkit-appearance: none;
}

.author-box:before,
.clearfix:before,
.entry:before,
.entry-content:before,
.footer-widgets:before,
.nav-primary:before,
.nav-secondary:before,
.pagination:before,
.site-container:before,
.site-footer:before,
.site-header:before,
.site-inner:before,
.wrap:before {
    content: " ";
    display: table;
}
.author-box:after,
.clearfix:after,
.entry:after,
.before-content:after,
.entry-content:after,
.footer-widgets:after,
.nav-primary:after,
.nav-secondary:after,
.pagination:after,
.site-container:after,
.site-footer:after,
.site-header:after,
.site-inner:after,
.wrap:after {
    clear: both;
    content: " ";
    display: table;
}

html {
    font-size: 18px;
    line-height: 28px;
    overflow-x: hidden;
    letter-spacing: 0.05em;
}

a,
button,
input:focus,
input[type="button"],
input[type="reset"],
input[type="submit"],
textarea:focus,
.button,
.gallery img {
    border:0;
}

::-moz-selection {
    background-color: var(--warm-gray);
    color: var(--white);
}

::selection {
    background-color: var(--warm-gray);
    color: var(--white);
}

:focus {
    outline: -webkit-focus-ring-color auto 0px;
}

a {
    color: var(--charcoal);
    text-decoration: none;
}

table {
    border: none;
}

a:hover {
    opacity: 1;
    transition: all .4s;
    color: var(--sage);
    text-decoration: underline;
    background-color: none;
}

p {
    margin: 0 0 25px;
    padding: 0;
    font-weight: 500;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0.04em;
}

p a {
    text-decoration: underline;
}

p a.button {
    text-decoration: none;
}

.mec-wrap p,
.mec-single-event .mec-event-meta .mec-events-event-cost,
.mec-event-data-fields .mec-event-data-field-item .mec-event-data-field-value,
.mec-event-data-fields .mec-event-data-field-item .mec-event-data-field-name,
.mec-wrap .info-msg div,
.mec-wrap .mec-error div,
.mec-wrap .mec-success div,
.mec-wrap .warning-msg div,
.mec-breadcrumbs .mec-current,
.mec-events-meta-group-tags,
.mec-single-event .mec-events-meta-group-booking .mec-event-ticket-available,
.mec-single-modern .mec-single-event-bar>div dd,
.mec-single-event .mec-event-meta dd,
.mec-single-event .mec-event-meta dd a,
.mec-next-occ-booking span,
.mec-hourly-schedule-speaker-description,
.mec-single-event .mec-speakers-details ul li .mec-speaker-job-title,
.mec-single-event .mec-speakers-details ul li .mec-speaker-name,
.mec-event-data-field-items,
.mec-load-more-button,
.mec-events-meta-group-tags a,
.mec-events-button,
.mec-wrap abbr,
.mec-event-schedule-content dl dt,
.mec-breadcrumbs a,
.mec-breadcrumbs span .mec-event-content p,
.mec-wrap p {
    font-weight: 500 !important;
    font-family: var(--font-body) !important;
    color: var(--charcoal) !important;
    font-size: 21px !important;
    letter-spacing: 0.04em;
    line-height: 35px !important;
}

p strong {
    font-weight: 700;
}

ol,
ul {
    margin: 0;
    padding: 0;
}

li {
    list-style-type: none;
}

b,
strong {
    font-weight: 700;
}

blockquote,
cite,
em,
i {
    font-style: italic;
}

blockquote, blockquote p {
    font-family: var(--font-body);
    color: var(--charcoal);
    font-size: 42px;
    text-align: right;
    line-height: 60px;
    letter-spacing: 1px;
    font-style: normal;
    margin: 0 auto;
    padding: 22px 0;
}

blockquote p {
    margin-bottom: 0;
}

embed,
img,
object,
video,
.wp-caption {
    max-width: 100%;
}

img {
    height: auto;
    margin: 0 auto;
}

.entry-content ol > li {
    list-style-type: decimal;
}

.entry-content ul > li {
    list-style-type: disc;
}

.entry-content ol ol,
.entry-content ul ul {
    margin-bottom: 0;
}

.olive-green { background-color: var(--olive-green); }
.charcoal    { background-color: var(--charcoal); }
.clay        { background-color: var(--clay); }
.steel-blue  { background-color: var(--steel-blue); }
.sage        { background-color: var(--sage); }
.warm-gray   { background-color: var(--warm-gray); }
.light-gray  { background-color: var(--light-gray); }
.dark-gray   { background-color: var(--dark-gray); }
.teal        { background-color: var(--teal); }
.white       { background-color: var(--white); }


.pattern {
    background-image: url('/wp-content/uploads/2025/08/floral-background-carolina-ridge-scaled.jpg');
    background-size: 100%;
    padding: 100px 0px;
    background-repeat: repeat-y;
}

.texture {
    background-image: url('/wp-content/uploads/2025/08/texture.jpg');
    background-size: 100%;
    background-repeat: repeat-y;
}

.feather {
    background-image: url(/wp-content/uploads/2025/08/feather.png);
    background-size: 40%;
    background-repeat: no-repeat;
    background-position: -5% 103%;
}


/* Image Classes
--------------------------------------------- */
.wp-block-image .aligncenter {
    display: block;
    width: 100%;
    text-align: center;
    margin: 0 auto;
}
a.aligncenter img {
    display: block;
    margin: 0 auto;
}
a.alignnone {
    display: inline-block;
}
.alignleft {
    float: left;
    text-align: left;
}
.alignright {
    float: right;
    text-align: right;
}
a.alignleft,
a.alignnone,
a.alignright {
    max-width: 100%;
}
img.centered,
.aligncenter {
    display: block;
    margin: 0 auto 0;
}
img.alignnone,
.alignnone {
    margin-bottom: 0;
}
a.alignleft,
img.alignleft,
.wp-caption.alignleft {
    margin: 0 24px 24px 0;
}
a.alignright,
img.alignright,
.wp-caption.alignright {
    margin: 0 0 24px 24px;
}
.wp-caption-text {
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}
.entry-content p.wp-caption-text {
    margin-bottom: 0;
}
.aligncenter, 
img.aligncenter { 
    clear: both; 
    display: block; 
    margin-left: auto; 
    margin-right: auto; 
}

/* Site Containers
--------------------------------------------- */
.site-container {
    margin: 0 auto;
    width: 100%;
    background-color: var(--light-gray);
    position: relative;
}
.site-inner {
    clear: both;
    width: 100%;
    margin: 0 auto;
    position: relative;
}
.content {
    width: 100%;
    float: none;
}
.content.center {
    text-align: center;
}
.content.center hr {
    margin: 40px auto;
}
.wrapper, .wrap {
    max-width: 1440px;
    margin: 0 auto;
    position: relative;
    z-index: 98;
    display: block;
    width: 100%;
}
.wrapper.more-pad, .more-pad {
    max-width: 1000px;
}
.wrapper.more-pad2 {
    max-width: 800px;
}
.wrapper .center {
    text-align: center;
}
.wrapper .center hr {
    margin: 40px auto;
}
.wrapper .center a.button {
    float: none;
}
.wrapper.full-width {
    max-width: none;
}

/* Header
---------------------------------------------------------------------------------------------------- */
.site-header {
    text-align: center;
    left: 0;
    right: 0;
    z-index: 99;
}
.home .site-header {
    z-index: 0;
     transition: 0.4s all ease;
    position: absolute;
}
.home .site-header.sticky {
    z-index: 99;
    position: fixed;
     transition: 0.4s all ease;
}

.header-image .site-header .wrap {
    background: url(/wp-content/uploads/2023/04/lmns-logo.png) no-repeat left;
    padding: 0;
}
.single .site-header, .search .site-header, .page-template-policies .site-header, 
.page-template-quick-links .site-header {
    position: relative;
}
.title-area {
  display: none;
}
p.site-title {
    display: none;
}
.nav-primary {
    width: 100%;
    background-color: var(--warm-gray);
    float: left;
    padding: 0 50px;
}
.sticky {
    transition: 0.4s all ease;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
}

.sticky .nav-primary li a {
    padding: 43px 0;
}

.sticky .nav-primary li.menu-item-52 a,  .sticky .nav-primary li.menu-item-53 a {
    padding: 52px 0px;
} 
.sticky .nav-primary li ul li a {
    padding: 0;
}
.genesis-nav-menu {
    clear: both;
    line-height: 1;
    margin: 0 auto;
    position: relative;
    display: flex;
    gap: 20px;
	justify-content: space-around;
    font-family: var(--font-body);
    font-weight: 500;
    text-transform: uppercase;
    text-align: justify;
    max-width: 1460px;
    width: 100%;
}
.genesis-nav-menu .menu-item {
    display: inline-block;
	width: 196px;
    vertical-align: middle;
}


.genesis-nav-menu .menu-item.menu-item-60 {
    width: 176px;
}

/*

.genesis-nav-menu .menu-item.menu-item-52, .genesis-nav-menu .menu-item.menu-item-53 {
    width: 57px;
}
*/

.nav-primary li a {
    display: block;
    color: var(--charcoal);
    cursor: pointer;
    letter-spacing: 1px;
    font-size: 15px;
    padding: 52px 0px;
	line-height: 19px !important;
}
.nav-primary li ul li a {
    padding: 0;
}
.nav-primary li a:hover {
    color: var(--sage);
    text-decoration: none;
}

.genesis-nav-menu li.menu-item-51 a, .genesis-nav-menu li.menu-item-128 a, .genesis-nav-menu .menu-item.menu-item-133 a {
	color: transparent;
}


.genesis-nav-menu li.menu-item-51 {
    height: 145px;
    background-image: url(/wp-content/uploads/2025/08/carolina-ridge-logo-dark.png);
    background-size: contain;
    background-position: center center;
    width: 192px;
    background-repeat: no-repeat;
}

.genesis-nav-menu li.menu-item-128 {
    height: 85px;
    margin: 20px 0px;
    background-image: url(/wp-content/uploads/2025/08/retreat-at-carolina-ridge-full.png);
    background-size: contain;
    background-position: center center;
    width: 192px;
    background-repeat: no-repeat;
}

.genesis-nav-menu li.menu-item-133 {
    height: 115px;
    background-image: url(/wp-content/uploads/2025/08/del-webb-carolina-ridge-dark.png);
    background-size: contain;
    background-position: center center;
    width: 192px;
    background-repeat: no-repeat;
}

.sticky li.menu-item-51 {
    height: 125px;
}

.overlay-col li#menu-item-133,
.overlay-col li#menu-item-128 {
    display: none;
}


.genesis-nav-menu li.button:hover {
	background-color: transparent !important;
}

.nav-primary li.button a {
	background-color: var(--sage);
	transition: 0.4s all;
	color: var(--white);
	padding: 10px 20px;
	border-radius: 30px;
	margin: 42px 0px;
}

.genesis-nav-menu li.button:hover a {
	background-color: var(--charcoal);
	transition: 0.4s all;
}


.nav-primary li {
    vertical-align: top;
    display: block;
    text-align: center;
    padding-top: 0;
    position: relative;
}
.nav-primary .genesis-nav-menu a:hover,
.nav-primary .genesis-nav-menu li.menu-item-has-children a:hover {
    transition: all .4s;
}
.nav-primary li:last-child {
    margin-right: 0;
}
.nav-primary ul.sub-menu {
    margin-top: 0;
    opacity: 0;
    top: 100px;
    z-index: 100000;
    background-color: var(--warm-gray);
    position: absolute;
    overflow: visible;
    filter: drop-shadow(5px 5px 5px rgba(0,0,0,.14));
    min-width: 210px;
    width: auto;
    padding: 10px 20px 20px;
    transition: 0.4s all;
}
.nav-primary ul.sub-menu li {
    margin-right: 0;
}
.nav-primary ul.sub-menu li a {
    color: var(--charcoal);
    text-transform: none;
    letter-spacing: 1px;
    line-height: 20px;
    font-weight: 500;
}
.nav-primary ul.sub-menu {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    top: 100%; /* slightly below parent */
    transition: all 0.3s ease;
}

.nav-primary li.menu-item-has-children:hover > ul.sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    top: 80%;
}
/*
.nav-primary li.menu-item-has-children:hover ul.sub-menu {
    opacity: 1;
    transition: 0.4s all;
}
.nav-primary ul.sub-menu:hover {
    opacity: 1 !important;
}
*/
.nav-primary ul.sub-menu li {
    display: block !important;
    text-align: left;
}
.nav-primary ul.sub-menu li:first-child {
    margin: 0;
}
.nav-primary ul.sub-menu li:first-child a,
.nav-primary ul.sub-menu li a {
    margin: 10px 0 0;
}
.nav-primary ul.sub-menu li a:hover {
    color: var(--sage);
}
li.menu-button {
    position: absolute;
    right: 0;
    color: var(--white);
    transition: all .4s;
}
li.menu-button a {
    border: 1px solid var(--charcoal);
    padding: 14px 20px;
    color: var(--charcoal);
    transition: all .4s;
    margin-top: -14px;
}
li.menu-button a:hover {
    background-color: var(--charcoal);
    color: var(--white);
    margin-top: -14px !important;
    opacity: 1;
}
#responsive-menu-pro-container li.responsive-menu-pro-item {
    width: calc(100% - 80px) !important;
    margin: 0 40px !important;
    list-style: none;
}
#responsive-menu-pro-container #responsive-menu-pro-search-box,
#responsive-menu-pro-container #responsive-menu-pro-additional-content,
#responsive-menu-pro-container #responsive-menu-pro-title {
    padding: 33px 7% !important;
}
#responsive-menu-pro-container #responsive-menu-pro li.responsive-menu-pro-item a {
    padding: 0 !important;
    font-weight: 500 !important;
}
#responsive-menu-pro-container #responsive-menu-pro li.responsive-menu-pro-item a:hover {
    color: var(--charcoal);
    opacity: 1;
    font-weight: 700 !important;
}
button#responsive-menu-pro-button.is-active {
    top: 23px !important;
    left: 477px !important;
    transition: 0.4s all;
    position: fixed !important;
    margin-left: 0 !important;
}
button#responsive-menu-pro-button.is-active .responsive-menu-pro-inner,
button#responsive-menu-pro-button.is-active .responsive-menu-pro-inner::before,
button#responsive-menu-pro-button.is-active .responsive-menu-pro-inner::after {
    width: 25px !important;
}



li.menu-button {
    position: absolute;
    right: 0px;
    color: white;
    transition: all .4s;
}

li.menu-button a {
    border: 1px solid var(--white);
    padding: 14px 20px;
    color: var(--navy);
    transition: all .4s;
    margin-top: -14px;
}

li.menu-button a:hover {
    background-color: var(--warm-gray);
    color: white;
    transition: all .4s;
    margin-top: -14px !important;
    opacity: 1;
}

#mobile-menu-toggle {
  position: fixed;
  top: 52px;
  right: 20px;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 40px;
    transition: transform 0.3s ease;
  height: 23px;
     z-index: 99999;
}

#mobile-menu-toggle.sticky {
	 top: 40px;
    right: 20px;
    position: fixed;
    left: auto;
}

.home #mobile-menu-toggle.sticky::before {
    border-radius: 300px;
    background-color: var(--charcoal);
    width: 30px;
    height: 30px;
    position: fixed;
}

a.back {
    font-size: 14px;
    letter-spacing: 1px; 
    text-transform: uppercase;
    text-decoration: none;
    position: absolute;
    bottom: 10px; 
    left: 20px;
}

#mobile-menu-toggle span {
  display: block;
  height: 3px;
  background: var(--charcoal);
  border-radius: 4px;
    width: 34px;
     transition: all 0.3s ease;
  transform-origin: center;
}

#mobile-menu-overlay {
  opacity: 0;
  transform: translateY(-10px);
  pointer-events: none;
  transition: opacity .2s ease, transform .2s ease;
}

/* Open (driven by aria) */
#mobile-menu-overlay[aria-hidden="false"] {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* Your existing z-index on the button stays: */
#mobile-menu-toggle.active {
  /* your z-index/position styles */
}

.home #mobile-menu-toggle.active span {
     background: var(--charcoal);
}

.home #mobile-menu-toggle span {
  background: var(--white);
}


.home #mobile-menu-toggle.sticky span {
    background: var(--charcoal);
}


#mobile-menu-toggle span:nth-child(2) {
    left: 7px;
    position: relative;
}

#mobile-menu-toggle.active span:nth-child(1) {
  transform: rotate(45deg) translate(4px, 4px)
}

#mobile-menu-toggle.active span:nth-child(2) {
  opacity: 0;
}

#mobile-menu-toggle.active span:nth-child(3) {
  transform: rotate(-45deg) translate(10px, -10px);
}

#mobile-menu-overlay {
      position: fixed; 
    inset: 0; 
    z-index: 70;
    backdrop-filter: blur(2px);
      display: grid; 
    place-items: center; 
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: var(--light-gray);
  flex-direction: column;
     background-image: url(/wp-content/uploads/2025/08/feather.png);
    background-size: 40%;
    background-repeat: no-repeat;
    background-position: -5% 103%;
  align-items: center;
  justify-content: center;
  overflow-y: auto;
    transition:
    opacity 0.3s ease,
    transform 0.3s ease;
}

.mobile-menu-overlay[aria-hidden="false"] {
  opacity: 1;
    z-index: 1000;
  transform: translateY(0);
  pointer-events: auto;
}

#mobile-menu-overlay.active {
     z-index: 1000;
  display: flex;
     transform: translateX(0);
}

    .mobile-menu-overlay[aria-hidden="false"] { opacity: 1; transition: opacity .2s ease; }
    .mobile-menu-overlay[aria-hidden="true"]  { opacity: 0; transition: opacity .2s ease; }

    .overlay-inner {
      width: min(1200px, 96vw);
      max-height: 90vh;
      padding: clamp(16px, 2.5vw, 32px);
      overflow: auto;
    }

  .overlay-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-bottom: 40px;
    align-items: start;
}

    .overlay-col .menu-logo {
        height: 150px;
        display: flex;
        justify-content: center;
        align-items: center;
        margin-bottom: 16px; 
}

.overlay-col .menu-logo.retreat {
   height: 120px;
    margin-bottom: 46px; 
}

    .overlay-logo { max-width: 240px; height: auto; }

    .overlay-nav { list-style: none; margin: 0; padding: 0; }
    .overlay-nav li { margin: .25rem 0; text-align: center; text-transform: uppercase;}
    .overlay-nav a { text-decoration: none; display: inline-block; padding: .25rem 0; }

    .overlay-bottom { margin-top: clamp(16px, 3vw, 60px); border-top: 1px solid #eee; padding: clamp(12px, 2vw, 24px); background-color: var(--warm-gray); }
    .overlay-nav-bottom {
    display: flex;
        justify-content: center;
    flex-wrap: wrap;
    gap: 12px 73px;
}
.overlay-bottom a {
    color: var(--charcoal);
}

.overlay-nav li.button a {
    display: inline-block;
    color: white;
    background-color: var(--charcoal);
    text-align: center;
    line-height: 20px;
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: 2px;
    font-size: 16px;
    font-family: var(--font-body);
    border-radius: 30px;
    transition: 0.4s;
    padding: 16px 35px 14px !important;
    margin: 10px auto 0px;
}

.overlay-nav li.button a:hover {
background: var(--warm-gray) !important;
    color: var(--charcoal) !important;
}

.overlay-nav li.button:hover {
    background-color: transparent !important;
}
    /* Full-width behavior */
    .menu-overlay-open { overflow: hidden; }

    @media (max-width: 768px) {
        
        .overlay-nav a {
    font-size: 15px;
    padding: 3px 0px;
}
      .overlay-grid { grid-template-columns: 1fr; }
      .overlay-logo { max-width: 180px; }
     .menu-logo img {
    max-width: 170px !important;
        }
        .overlay-col .menu-logo.retreat, .overlay-col .menu-logo {
    height: 76px;
       margin-bottom: 30px;
        }
        
          .overlay-col .menu-logo.dw {
       margin-bottom: 0px;
        }
        .overlay-nav li {
    margin: 0px;
        }
        
        .overlay-nav-bottom {
    gap: 12px 27px;
}
        
    }

.menu-content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    padding: 10% 0px 0px;
}


.menu-logo img {
    max-width: 250px;
    margin: 0px auto;
}

.menu-logo {
text-align: center;
}

.mobile-nav {
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: center;
  width: 100%;
}

.mobile-nav li {
  margin-bottom: 1.5rem;
}

.mobile-nav li a:hover {
  color: var(--sage);
}


.mobile-nav li#menu-item-51 {
    display: none;
}


.mobile-nav li#menu-item-60 {
    background-color: var(--sage);
    border-radius: 30px;
    padding: 12px 20px;
}

.mobile-nav li#menu-item-60 a {
    
    color: white !important;
}

.mobile-nav li ul.sub-menu {
    display: None;
}

/*
.mobile-nav li ul.sub-menu li a {
    font-size: 0.7rem;
    font-weight: 300;
    line-height: 0.7rem;
}
*/

.mobile-nav li ul.sub-menu li {
    margin-bottom: 0px;
}

.mobile-nav a {
  font-size: 0.8rem;
    font-weight: 500;
    text-transform: uppercase;
    color: var(--charcoal);
    font-family: 'Montserrat', serif;
  text-decoration: none;
  transition: color 0.2s ease;
}

.mobile-nav a:hover {
  color: var(--sage);
}


/* Headings
--------------------------------------------- */
.fa-brands, .fab {
    font-family: "Font Awesome 6 Brands";
}
i.fa-light { font-style: normal; }

h1, h2.large,
.quicklinks li {
    font-size: 40px;
    margin-top: 0;
    line-height: 45px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--charcoal);
    font-weight: 300;
    margin-bottom: 20px;
    font-family: var(--font-heading);
}
h2.uppercase { text-transform: uppercase; }
h2, h1.entry-title {
    font-size: 40px;
    margin-top: 0;
    line-height: 45px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--charcoal);
    font-weight: 300;
    margin-bottom: 20px;
    font-family: var(--font-heading);
}
h3, 
h3.blog-card-title {
    font-size: 39px;
    line-height: 42px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--charcoal);
    font-weight: 300;
    margin-bottom: 20px;
    margin-top: 0px;
    font-family: var(--font-heading);
}

h3.blog-card-title a:hover {
    text-decoration: none;
    color: var(--slate);
}

h3.blog-card-title {
    font-size: 29px;
    line-height: 32px;
}
h2 u {
    text-decoration: none;
    position: relative;
}
h2 u:after {
    position: absolute;
    content: '';
    height: 2px;
    bottom: 5px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: auto;
    background: var(--warm-gray);
    transition: .5s;
}

h2.wp-block-heading {
	font-size: 26px;
	line-height: 29px;
}
h3 em,
h3.caption {
    font-style: italic;
}

.dark h4 {
    margin-top: 0px;
    color: white;
}

h4 {
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 20px;
    text-transform: uppercase;
    line-height: 34px;
    color: var(--warm-gray);
}

.single h4 {
     color: var(--slate);
}

h4.small {
    font-family: var(--font-body);
    font-weight: 400;
    font-size: 16px;
    line-height: 30px;
    color: var(--warm-gray);
}
h5 {
    font-family: var(--font-body);
    font-weight: 700;
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 1.6px;
    color: var(--charcoal);
    text-transform: uppercase;
    margin: 0 auto 25px;
}
h6,
h4.widgettitle {
    font-family: var(--font-body);
    font-weight: 700;
    font-size: 16px;
    line-height: 30px;
    letter-spacing: 1.6px;
    color: var(--warm-gray);
    text-transform: uppercase;
}
h7, h6.script {
    font-family: "BellugaSolid";
    font-weight: 400;
    font-size: 80px;
    text-transform: capitalize;
    line-height: 70px;
    color: var(--warm-gray);
}

/* Custom Theme Styles
--------------------------------------------- */
.block {
    overflow: auto;
    padding: 50px 0;
}
.section {
    padding: 100px 0;
/*    overflow: auto;*/
    overflow: hidden;
}
.section.nopad { padding: 0; }
.section.padbottom { padding: 0 0 70px; }
.slick-prev:hover { cursor: pointer; margin-left: -10px; transition: 0.4s all;}
.slick-next:hover { cursor: pointer; margin-right: -10px; transition: 0.4s all;}
.test-slider h6 { margin: 0; }
li.test-slide { padding: 0 70px; display: table; width: 100%; }
.auth { margin: 30px 25px; }
.slick-prev {
    transition: 0.4s all;
      margin-left: 0px;
    bottom: 120px;
    left: -60px;
}
.slick-next {
    transition: 0.4s all;
    margin-right: 0px;
    bottom: 120px;
    right: -60px;
}
.slick-prev, .slick-next {
    position: absolute;
    width: 109px;
    height: 53px;
    z-index: 100;
}
ul.arrow {
    margin-bottom: 30px;
}
ul.arrow li::before,
ul.grey-arrow li::before,
.single .wrapper-inner ul li::before {
    content: "➞";
    position: absolute;
    margin-left: -34px;
    color: var(--warm-gray);
    margin-right: 11px;
    font-size: 24px;
    font-weight: bold;
}
ul.arrow li,
ul.grey-arrow li,
.single .wrapper-inner ul li {
    margin-bottom: 12px;
    margin-left: 20px;
    padding-left: 15px;
}
ul.arrow.navy,
ul.arrow.green,
ul.arrow.white {
    background-color: transparent !important;
}
ol {
    counter-reset: listNumbering;
}
ol li:before {
    content: counter(listNumbering,decimal) '.';
    font-size: 34px;
    display: inline;
    position: absolute;
    color: var(--charcoal);
    font-weight: 300;
    margin-top: 7px;
}
ol li {
    counter-increment: listNumbering;
    margin-bottom: 15px;
    margin-left: 60px;
    display: list-item;
    list-style-position: inside;
}
.single ol li:before {
    font-size: 28px;
    margin-top: 0;
    margin-left: 20px;
}
.single ol li {
    margin-left: 45px;
}
.single ol {
    margin-left: 20px;
    margin-bottom: 40px;
}
hr {
    width: 80%;
    background-color: var(--sage);
    margin: 30px 0;
    height: 1px;
    border-width: 0;
}

/* Accordion Styles
--------------------------------------------- */
.accordion-item { padding: 5px 0; }
h3.accordion-header {
    cursor: pointer;
    font-size: 32px !important;
    font-weight: 300;
    line-height: 40px !important;
    text-transform: none;
    padding: 12px 20px;
    font-family: var(--font-heading);
}
.accordion-content {
    padding: 10px;
    display: none;
}
.faq-section p {
    font-size: 20px;
    line-height: 1.5em;
}
.faq-section { overflow: auto; }
.accordion-item h3 {
    margin: 0;
    font-family: var(--font-body);
    font-size: 18px;
    position: relative;
    line-height: 22px;
}
.accordion-item h3::before {
    display: block;
    content: " ";
    background-image: url(/wp-content/uploads/2023/04/plus.png);
    width: 30px;
    height: 30px;
    background-repeat: no-repeat;
    background-size: contain;
    margin-right: 10px;
    font-weight: bold;
    position: absolute;
    left: -20px;
    top: 16px;
    transition: 0.4s all;
}
.accordion-item h3.active::before {
    top: 30px;
    background-image: url(/wp-content/uploads/2023/04/minus.png);
}
.faq {
    background: var(--white);
    width: 100%;
}
.faq:last-child {
    border-bottom: 1px solid var(--warm-gray);
}
.ui-accordion .ui-accordion-header,
h3.faq_question {
    font-size: 20px !important;
    font-weight: 600;
    width: 100%;
    margin: 0 !important;
    color: var(--warm-gray);
    padding: 20px !important;
    font-family: var(--font-body);
}
.ui-accordion .ui-accordion-content ul li {
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 30px;
}
.ui-accordion div {
    border-bottom: 1px solid var(--warm-gray);
}
#accordion {
    border-bottom: 1px solid var(--warm-gray);
}
h3.ui-state-hover,
h3.ui-accordion-header-active,
h3.ui-state-active,
h3.faq_question:hover,
.faq.open h3.faq_question {
    color: var(--steel-blue);
    transition: 0.7s;
}
h3.ui-accordion-header-active,
h3.ui-state-active {
    border: 0;
}
.ui-accordion .ui-accordion-content {
    background: var(--white);
    border-right: 1px solid var(--warm-gray);
    border-top: 1px solid var(--warm-gray);
    border-left: 1px solid var(--warm-gray);
    border-radius: 0 !important;
    font-size: 16px !important;
    padding: 0 15px;
    height: auto !important;
}
.ui-accordion .ui-accordion-content a {
    text-decoration: underline;
    font-weight: bold;
}
.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon,
.ui-button:hover .ui-icon,
.ui-button:focus .ui-icon {
    background-image: url(/wp-content/uploads/2022/04/unnamed-file.png) !important;
}
.ui-icon-triangle-1-e,
.ui-icon-triangle-1-s {
    background-position: center center !important;
}
.ui-icon,
.ui-widget-content .ui-icon {
    background-image: url(/wp-content/uploads/2022/04/unnamed-file.png) !important;
    margin-right: 10px;
}
.ui-state-active .ui-icon,
.ui-button:active .ui-icon {
    background-image: url(/wp-content/uploads/2022/04/unnamed-file-1.png) !important;
}

/* 404
--------------------------------------------- */
.error404 .site-inner {
    background-size: cover;
    overflow: auto;
    background-position: center center;
    background-repeat: no-repeat;
    height: 900px;
}
.error404 .content {
    padding: 2% 2% 0;
}
.error404 .entry-content {
    padding: 0;
    float: none;
}
.error404 .search-form input[type="search"] {
    background-color: var(--white);
    text-align: left;
    font-size: 14px;
    font-family: var(--font-body);
}
.error404 .search-form {
    display: flex;
    flex-wrap: nowrap;
}
.error404 .search-form input[type="submit"]::after {
    content: "➞";
    position: absolute;
}

/* Search Form
--------------------------------------------- */
.fa-magnifying-glass:before,
.fa-search:before {
    display: block;
}
.form-hidden {
    width: 100%;
    position: fixed;
    left: 0;
    margin-left: auto;
    padding: 152px 0 65px;
    opacity: 0;
    display: none;
    height: 100vh;
    transition: all 0.4s;
    z-index: 999999;
    top: 0;
}
.form-hidden.toggle-open {
    opacity: 1;
    transition: all 0.4s;
    display: block;
}
.form-hidden form#searchform {
    width: 100%;
    margin: 0 auto;
    padding-right: 55px;
    position: relative;
    background: var(--white);
    padding: 2% 5%;
}
.form-hidden .searchicon {
    cursor: pointer;
}
.form-hidden .close-icon {
    color: var(--charcoal);
    position: absolute;
    right: 50px;
    top: 40px;
    font-size: 18px;
    cursor: pointer;
    font-weight: 700;
}
.form-hidden #searchform input#s {
    border-bottom: 1px solid var(--charcoal);
    border-top: 0;
    border-left: 0;
    border-right: 0;
    font-size: 18px;
    letter-spacing: 2px;
    font-weight: 600;
    text-align: center;
    color: var(--charcoal);
    padding: 14px 15px !important;
    margin-bottom: 20px;
}
.form-hidden #searchform input#s::-webkit-input-placeholder {
    color: var(--charcoal);
}
.form-hidden #searchform input[type="submit"] {
    width: 162px;
    text-align: center;
    display: block;
    margin: 0 auto;
    background-color: var(--charcoal);
    padding: 18px 36px;
}
.search-results .site-inner {
    margin: 50px 0;
}
.search .content {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    position: relative;
    padding: 0 5%;
}
.search-results main {
    display: none;
}

/* Search Results
--------------------------------------------- */
.search .sidebar,
.error404 .sidebar {
    display: none;
}
h1.archive-title {
    margin: 50px auto;
    text-align: left;
}
.archive-description {
    width: 100%;
}
p.entry-meta {
    margin-bottom: 0;
    margin-top: 20px;
    text-align: left;
}
.search-results h2.entry-title {
    text-align: left;
    margin: 10px 0;
}
.search-results .entry-content p {
    text-align: left;
}
.search-results .post-image {
    height: auto;
}
.search-results .content article {
    width: 100%;
    margin-right: 0;
}

/* Footer Widgets Styles
--------------------------------------------- */

#back-to-top {
    background-color: var(--charcoal);
    position: fixed;
    right: 20px;
    border-top: 0px;
    border-radius: 30px;
    bottom: 20px;
    z-index: 999999;
    display: block;
    padding: 15px 16px 10px !important;
    transition: 0.4s all;
}

#back-to-top:hover {
    transition: 0.4s all;
    background-color: var(--steel-blue);
}

#back-to-top img {
    max-width: 15px !important;
	    padding-bottom: 5px;
}


.footer-widgets {
    color: white;
    clear: both;
    margin: 0 auto;
    padding: 50px 0px;
    overflow: hidden;
    width: 100%;
    z-index: 102;
    position: relative;
    background-color: var(--steel-blue);
    border-top: 3px solid var(--clay);
    text-align: left;
}

ul.social-links {
	display: flex;
	gap: 20px;
}

.footer-widgets::before {
  content: "";
  display: inline-block;
  width: 30px;
     position: absolute;
    bottom: 10px;
    left: 60px;
  height: 30px;
  background: url("/wp-content/uploads/2025/08/accessible-logo-1.png")
              no-repeat center/contain;
  margin-right: 10px;
}

.footer-widgets::after {
  content: "";
   position: absolute;
    bottom: 10px;
    left: 20px;
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url("/wp-content/uploads/2025/08/equal-housing-icon.png")
              no-repeat center/contain;
}

.footer-widgets p {
    font-size: 12px;
    line-height: 19px;
}
.footer-widgets h2 {
    color: white;
    font-size: 28px;
    line-height: 28px !important;
    max-width: 272px;
	margin-bottom: 0px;
}

#custom_html-2 {
	margin-bottom: 30px;
}
.footer-widgets i {
    color: white;
}
#custom_html-2 .textwidget{
    display: flex;
    align-items: center;
}

#custom_html-2 .widget_text i {
    font-size: 30px;
	transition: 0.4s all;
}

#custom_html-2 .widget_text a:hover i {
	opacity: 0.6;
	transition: 0.4s all;
}
#media_image-2 {
    width: 12%;
    float: left; 
    display: inline-block;
}

#media_image-2 img {
	width: 80px;
}
#media_image-3 {
    width: 88%;
    float: left;
    display: flex;
    align-items: center;
    height: 78px;
    padding: 0px 30px;
}

#media_image-3 img {
	 width: 194px;
}
.footer-widgets a:hover {
    color: var(--clay);
}
#text-3 {
    color: var(--light-gray);
    margin-top: 30px;
}

#text-2 {
    font-size: 10px;
    display: block;
    float: left;
}

#text-2 a {
    color: white;
}
#media_image-4 img {
    margin: 20px;
    width: 332.48px;
}
.footer-widgets .wrap {
    display: flex;
    flex-wrap: wrap;
    max-width: 1440px;
    margin: 0 auto;
    padding: 1rem;
    box-sizing: border-box;
}

.footer-widgets-1,
.footer-widgets-2 {
    flex: 0 0 50%;
    box-sizing: border-box;
}
.footer-widgets-2 {
    display: flex;
    justify-content: flex-end;
}

.footer-widgets-3 {
    flex: 0 0 100%;
    box-sizing: border-box;
}

h4.widget-title {
    display: none;
}
ul.socials {
    float: left;
    margin-top: 0;
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
}
ul.socials li {
    margin-right: 20px;
}
ul.socials li:last-child {
    margin-right: 0;
}
ul.socials li {
    display: inline;
}
ul.social-links li svg {
    color: var(--white) !important;
}
ul.social-links li svg:hover {
    color: var(--warm-gray) !important;
}
.site-footer {
    display: none;
}

a.button,
input[type="submit"],
button,
html input[type=button],
input[type=reset],
input[type=submit],
.wp-block-button__link {
    background-color: var(--warm-gray);
    display: inline-block;
    color: var(--charcoal);
    text-align: center;
    line-height: 20px;
    padding: 16px 35px 14px !important;
    border-radius: 30px;
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: 2px;
    font-size: 16px;
    transition: all 0.4s;
    font-family: var(--font-body);
}
.dark a.button,
html .dark input[type=button],
.dark input[type=reset],
.dark input[type=submit] {
    background: var(--warm-gray) !important;
    color: var(--charcoal) !important;
    border: 1px solid var(--warm-gray);
}
input[type="submit"] {
    margin-top: 20px;
    width: auto !important;
}
a.button.charcoal {
   background: var(--charcoal) !important;
    color: var(--white) !important;  
}
a.button.charcoal:hover {
     background: var(--warm-gray) !important;
    color: var(--charcoal) !important;
}
a.button:hover,
.wp-block-button__link:hover,
button:hover,
.button:hover,
a.text-button:hover,
input[type="submit"]:hover,
.dark a.button:hover{
    color: var(--white)!important;
    opacity: 1;
    transition: all 0.4s;
    text-decoration: none;
    background-color: var(--charcoal) !important;
}

.error404 .search-form input[type="submit"] {
    background-color: var(--charcoal);
    color: var(--white);
    transition: all 0.4s;
    letter-spacing: .05em;
    font-size: 18px;
}
.error404 .search-form input[type="submit"]:hover {
    transition: all 0.4s;
    background-color: var(--charcoal);
}
@keyframes fadein { from { opacity: 0; } to { opacity: 1; } }
/* Firefox */
@-moz-keyframes fadein { from { opacity: 0; } to { opacity: 1; } }
/* Safari and Chrome */
@-webkit-keyframes fadein { from { opacity: 0; } to { opacity: 1; } }
/* Opera */
@-o-keyframes fadein { from { opacity: 0; } to { opacity: 1; } }

.curved-bottom {
    border-radius: 0px 0px 190px 190px; 
}

.curved-all {
    border-radius: 70px;
}

.curved-right {
    border-radius: 0px 190px 190px 0px; 
}

.curved-left {
    border-radius: 190px 0px 0px 190px; 
}

.curved-top {
    border-radius: 190px 190px 0px 0px; 
}

.border-bottom {
    border-bottom: 3px solid var(--clay);
}
.border-top {
    border-top: 3px solid var(--clay);
}
.border {
    border: 3px solid var(--clay);
}
.wrapper.border-bottom {
    border-bottom: 3px solid var(--clay);
    overflow: auto;
}
.no-margin-bottom {
    margin-bottom: 0;
}
.dark,
.dark p,
.dark h2,
.dark h3,
.dark h1,
.dark h5,
.dark h2.large,
.dark h6,
.dark h7,
.dark a,
.dark select,
.dark input,
.dark .datepicker {
    color: var(--white);
}

 .sr-only, .slider-controls {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0,0,0,0);
        white-space: nowrap;
        border: 0;
      }
.sr-only-focusable {
        position: absolute;
        left: -9999px;
        top: auto;
        width: 1px;
        height: 1px;
        overflow: hidden;
      }
.sr-only-focusable:focus,
      .sr-only-focusable:active {
        position: static;
        width: auto;
        height: auto;
        left: auto;
        clip: auto;
        margin: 10px;
        padding: 8px 12px;
        background: #fff;
        color: #000;
        z-index: 9999;
        border-radius: 4px;
      }
 .scrolling-link:focus { outline: 3px solid #fff; outline-offset: 3px; }

/* Column Classes
--------------------------------------------- */
.wp-block-column:not(:first-child) {
    margin-left: 4em !important;
}
.twocol {
    column-count: 2;
    column-gap: 6rem;
}
.one,
.five-sixths,
.four-sixths,
.one-fourth,
.one-half,
.one-sixth,
.one-third,
.three-fourths,
.three-sixths,
.three-fifths,
.two-fourths,
.two-sixths,
.two-thirds,
.two-fifths {
    display: inline-block;
    float: left;
    margin-left: 2.5641025641%;
}
.wp-block-embed,
.wp-block-embed figure {
    float: none;
    display: block;
    margin-left: auto;
    min-height: 500px;
    margin-right: auto;
}
.wp-block-embed__wrapper {
    position: relative;
    width: 100%;
    min-height: 500px;
    max-width: 100%;
    margin: 0 auto;
}

.wp-block-embed iframe {
    display: block;
    margin: 0 auto;
    width: 100%;
    
    min-height: 500px;
}

figure {
    margin: 0 auto;
}
.gallery-item:first-child {
    margin-left: 0;
}
.gallery {
    display: flex;
    flex-wrap: nowrap;
}
.one {
    width: 100%;
    margin: 0;
}
.nomargin {
    margin-left: 0 !important;
}
.one-half.nomargin {
    width: 50%;
}
.one-third.nomargin {
    width: 33.333%;
}
.two-thirds.nomargin {
    width: 66.666%;
}
.one-half,
.three-sixths,
.two-fourths,
.gallery-columns-2 .gallery-item {
    width: 48.7179487%;
}
.one-third,
.two-sixths,
.gallery-columns-3 .gallery-item {
    width: 31.6239316%;
}
.four-sixths,
.two-thirds {
    width: 65.8119658%;
}
.two-fifths {
    width: 37.4358974%;
}
.one-fourth,
.gallery-columns-4 .gallery-item {
    width: 23.0769231%;
}
.three-fifths {
    width: 57.4358974%;
}
.three-fourths {
    width: 74.3589744%;
}
.one-sixth {
    width: 14.5299145%;
}
.five-sixths {
    width: 82.9059829%;
}
.first {
    clear: both;
    margin-left: 0;
}
.clearfix {
    height: 0;
    margin: 0;
    padding: 0;
}

.center {
    text-align: center;
}



/* Custom Blocks
------------------------------------------------------------ */

.slider a h2 {
    color: var(--charcoal);
}
.slider a:hover h2 {
    color: var(--charcoal);
    transition: 0.4s all;
}
.slider a:hover p {
    color: var(--charcoal);
    transition: 0.4s all;
}
.flex-cont {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}


/* Home
------------------------------------------------------------ */

/* Overlay */
#retreat-popup-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 9998;
}

/* Popup */
#retreat-popup {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: var(--steel-blue);
  border: 3px solid var(--clay);
  border-radius: 20px;
  padding: 50px 70px;
  width: 90%;
  max-width: 600px;
  color: #ffffff;
  z-index: 9999;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

/* Heading */
#retreat-popup h2 {
  text-align: center;
  margin-bottom: 30px;
  color: #ffffff;
}

/* Close Button */
#retreat-popup-close {
  position: absolute;
  top: 15px;
  right: 20px;
  background: transparent;
  border: none !important;
  font-size: 28px;
	padding: 0px !important;
  color: #ffffff;
	outline: none !important;
  cursor: pointer;
  line-height: 1;
}

.gform-theme--foundation .gform_fields {
	row-gap: 10px !important;
}

#retreat-popup-close:focus {
  outline: 2px solid #ffffff;
  outline-offset: 3px;
}

/* Gravity Forms white text */
#retreat-popup .gform_wrapper,
#retreat-popup .gform_wrapper label,
#retreat-popup .gform_wrapper input,
#retreat-popup .gform_wrapper textarea,
#retreat-popup .gform_wrapper select {
  color: #ffffff;
}

/* Prevent background scroll */
body.modal-open {
  overflow: hidden;
}

/* Gravity Forms Inputs */
#retreat-popup .gform_wrapper input:not([type="submit"]),
#retreat-popup .gform_wrapper textarea,
#retreat-popup .gform_wrapper select {
  background: transparent;
  border: none;
  border-bottom: 2px solid #ffffff;
  border-radius: 0;
  color: #ffffff;
  padding: 10px 0;
}


#retreat-popup .gform_wrapper input[type=checkbox] {
	appearance: auto;
	-webkit-appearance: checkbox;
	-moz-appearance: checkbox;
	width: auto !important;
	height: auto !important;
	padding: 0 !important;
	margin: 0 5px 0 0 !important;
	accent-color: var(--clay);
	cursor: pointer;
	display: inline-block !important;
	visibility: visible !important;
}

#retreat-popup .gform_wrapper .gfield_checkbox_wrap label {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
}
#retreat-popup .gform_wrapper input[type="submit"] {
	color: var(--charcoal);
}

/* Remove default shadows/outlines */
#retreat-popup .gform_wrapper input:focus,
#retreat-popup .gform_wrapper textarea:focus,
#retreat-popup .gform_wrapper select:focus {
  outline: none;
  border-bottom: 2px solid var(--clay);
}

/* Placeholder styling */
#retreat-popup .gform_wrapper ::placeholder {
  color: rgba(255, 255, 255, 0.7);
}

/* Labels */
#retreat-popup .gform_wrapper label {
  color: #ffffff;
}

/* Select field styling */
#retreat-popup .gform_wrapper select {
  background: transparent;
  border: none;
  border-bottom: 2px solid #ffffff;
  border-radius: 0;
  color: #ffffff;
  padding: 10px 0;
}

.gform_wrapper.gravity-theme .gform_footer, .gform_wrapper.gravity-theme .gform_page_footer {
	display: flex;
	justify-content: center;
}

/* IMPORTANT: Dropdown options need their own styling */
#retreat-popup .gform_wrapper select option {
  color: #000000;            /* readable text */
  background: #ffffff;       /* readable background */
}



/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  #retreat-popup {
    transition: none;
  }
}

.home .entry-header {
    display: none;
}

#hero {
	background-color: var(--charcoal);
    z-index: 100;
    height: 890px;
    padding: 0px;
    position: relative;
    overflow: hidden;
}

#hero .hero-video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: 0;
    transform: translate(-50%, -50%);
    object-fit: cover;
}

#hero .wrapper {
    position: relative;
    z-index: 0; 
}

#hero .mask {
    z-index: -1;
     position: absolute;
   opacity: 0.66;
    height: 100%;
    width: 100%;
}
#hero .container {
    z-index: 2;
    justify-content: center;
     height: 890px;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}

#hero .herocont {
    text-align: center;
    padding: 150px 50px 250px;
}

#hero .herocont img.retreat {
    max-width: 322.14px !important;
    
        padding: 0px 0px 20px;
}

#hero .herocont img.dw {
    max-width: 360.58px !important;
    padding: 45px 0px 45px;
}

#hero h2 {
    letter-spacing: 1px;
    font-family:  var(--font-body);
    font-weight: bold;
    font-size: 18px;
    line-height: 31px;
}

#hero .scrolling {
      position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 40px;
    text-align: center;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    z-index: 100000;
    display: block;
      transition: 0.4s all;
}

#hero a .scrolling {
    transition: 0.4s all;
    text-decoration: none;
}

#hero a:hover .scrolling {
    bottom: 50px;
    transition: 0.4s all;
}

#hero img.scrolling {
	bottom: 20px;
    max-width: 17px !important;
}

#hero a:hover img.scrolling {
    bottom: 40px;
    transition: 0.4s all;
}

.scrolling-link {
	text-align: center;
}

.mask.sage {
    opacity: 0.79;
}
#hero .column {
    height: 890px;
    margin: 0px;
    width: 50%;
    position: relative
}

#intro .container p {
       max-width: 660px;
    margin: 0px auto;
}

#intro .container h1 {
    max-width: 760px;
    margin: 0px auto 40px;
}

#about .img-container, #location .slider-cont, #vision .slider-cont, #builder .img-container {
    height: 846px;
    width: 550px;
    z-index: 90;
    margin: -50px auto 0px;
    position: relative;
    overflow: hidden;
}

#vision .slider-cont, #location .slider-cont {
    height: 846px;
    width: 550px;
    z-index: 90;
    margin: -50px auto 0px;
    position: relative;
    overflow: hidden;
}


#vision .flex-center {
    min-height: 440px;
}

#vision .content-cont {
    margin-top: -180px;
}


#location .slider-cont {
    overflow: visible;
    margin-bottom: 70px;
}

#vision .slider-cont {
    overflow: visible;
    margin-bottom: 0px;
}



#location .img-container, #vision .img-container {
    height: 846px;
    width: 550px;
    overflow: hidden;
    z-index: 90;
    position: relative;
}

#about .img-container.curved-top, #location .img-container.curved-top, #builder .img-container.curved-top, #vision .img-container {
    border-radius: 220px 220px 0px 0px;
}

#about .img-container.curved-top, #builder .img-container.curved-top {
    margin-bottom: 50px;
}

#about h4 {
    color: var(--slate);
}

#location .img-container.curved-top {
    margin-bottom: 70px;
}

.img-container img {
    left: 0px;
    top: 0px;
    position: absolute;
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}

#about, #location {
    overflow: visible;
    display: flex;
    padding: 0px;
}

#about .logo-cont {
    width: 576.04px;
    margin: 0px auto 50px;
    display: flex;
    align-items: center;
    gap: 40px;
    height: 102px;
    justify-content: center;
}

#about .logo-cont img {
    max-width: 221.04px;
    height: auto !important;
}

#about .logo-cont img.dw {
    max-height: 69.65px !important;
	width: auto !important;
}

#about .logo-cont img.retreat {
    max-height: 101.56px !important;
	width: auto !important;
}

#about .logo-cont .divider {
    width: 3px;
    background-color: var(--charcoal);
        height: 100%;
}

.flex-center {
    min-height: 746px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.moveup {
    margin-top: -100px;
}

#carolina-ridge .container {
    overflow: auto;
    padding: 170px 70px 170px calc((100vw - 1440px) / 2);
}

#carolina-ridge .column {
    border-left: 0px;
}

#carolina-ridge .column img {
    max-width: 300px;
    margin: 50px 20px;
}

#carolina-ridge p:last-child {
    margin: 0px;
}

#carolina-ridge .column a.button:hover {
    background-color: var(--charcoal) !important;
    color: var(--white) !important;
}

#del-webb.moveup {
    margin-top: -50px;
}

#del-webb .sr-only {
	color: var(--charcoal);
}

#del-webb .container {
    overflow: auto;
    padding: 170px calc((100vw - 1440px) / 2) 170px 70px;
}

#del-webb .column {
    border-right: 0px;
}

#del-webb .column img {
    max-width: 300px;
    margin: 50px 20px;
}

#del-webb p:last-child {
    margin: 0px;
}

#del-webb .column a.button:hover {
    background-color: var(--charcoal) !important;
    color: var(--white) !important;
}

#location .container {
    align-items: center;
    min-height: 700px;
    display: flex;
    justify-content: center;
}
#location, #vision {
    position: relative;
}
.rotating-cont {
    position: absolute;
  bottom: -40px;
    right: 30px;
}

#vision .rotating-cont {
    position: absolute;
  bottom: -40px;
    left: 30px;
    right: auto;
}
.rotating-icon {
  position: relative;
  width: 20vw;               /* scales with viewport */
  aspect-ratio: 1 / 1;       /* keeps it square */
  display: flex;
  justify-content: center;
  align-items: center;
}

.rotating-icon .icon {
  position: absolute;
  z-index: 2;
  width: 35%; 
  transform: rotate(20deg);
  height: auto;
}

.rotating-icon .tagline {
  position: absolute;
  width: 100%;
  height: auto;
  animation: rotate 20s linear infinite;
  transform-origin: center center; /* rotate around its center */
}

@keyframes rotate {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}


#location .slider {
    overflow: visible;
}


img.siteplan {
    width: 100%;
    z-index: -1
}

#amenities {
    display: flex;
    overflow: visible;
}

#amenities .moveup {
    margin-top: -50px;
}

#amenities p {
    max-width: 750px;
    margin: 0px auto 40px;
}

.am-cont {
    width: 221px;
    display: flex;
    height: 300px;
    border-radius: 300px;
    background-color: var(--charcoal);
    outline: 3px solid var(--clay);
    outline-offset: 5px;
    padding: 20px 50px;
    text-align: center;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin: 0px auto;
    z-index: 9999;
}
.am-cont .label {
    font-weight: bold;
    color: white;
    text-transform: uppercase;
    font-size: 18px;
    line-height: 25px;
}

#amenities .container {
    max-width: 804px;
    margin: 100px auto;
}

.amenitybuttons {
    margin-top: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
}

/* Lifestyle Page Template */

.page-template-lifestyle .site-container .wrap {
    max-width: none;
}

#communitites .container {
    overflow: auto;
    padding: 70px;
}


#communitites .column img {
    max-width: 300px;
    margin: 0px 20px 50px;
}

#communitites .column img.dw {
    max-width: 300px;
    margin: 30px 20px 50px;
}

#communitites p:last-child {
    margin: 0px;
}

#communitites .column a.button:hover {
    background-color: var(--charcoal) !important;
    color: var(--white) !important;
}


/* Community Page Template */

.page-template-community .genesis-nav-menu .menu-item.button {
    display: none;
}

.top-copy .container {
    margin: 70px auto;
}

.top-copy .container h1 {
  max-width: 900px;
    margin: 0px auto 40px;  
}

.top-copy .container p {
  max-width: 807px;
    margin: 0px auto 20px;  
}

.top-copy strong {
    text-transform: uppercase;
}

#design-studio .container {
    padding: 100px 0px;
    max-width: 900px;
    margin: 0px auto;
}

#design-studio .container p:last-child {
    margin-bottom: 0px;
}

#vision {
    overflow: hidden;
}

.am-slider {
    padding: 0px 40px;
}


.am-slider .am-cont {
    margin: 10px auto;
}


.am-slider .slick-next, .am-slider .slick-prev {
    bottom: calc(50% - 25px);
}

#map-filters {
    margin-bottom: 30px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#map-filters button {
    transition: 0.4s all;
    padding: 10px 20px;
    border-radius: 30px;
    margin:10px;
}

#filter-retreat {
  display: none;
}

#filter-transportation {
    color: var(--white) !important;
  background-color: var(--teal) !important;
}

#filter-shopping {
    color: var(--charcoal) !important;
  background-color: var(--warm-gray) !important;
}

#filter-schools {
    color: var(--white) !important;
  background-color: var(--steel-blue) !important;
}

#filter-recreation {
    color: var(--white) !important;
  background-color: var(--sage) !important;
}

#filter-golf-courses {
    color: var(--white) !important;
  background-color: var(--maroon) !important;
}

#filter-medical {
    color: white !important;
  background-color: var(--clay) !important;
}

#filter-groceries {
    color: var(--white) !important;
  background-color: var(--charcoal) !important;
}

#filter-dining {
    color: var(--white) !important;
  background-color: var(--olive-green) !important;
}

#filter-all {
 background-color: var(--light-gray);
    color: var(--charcoal);
}


#map-filters button:hover {
    color: var(--sage) !important;
    background-color: transparent !important;
}


.leaflet-control-attribution {
    display: none;
}

#lifestyle {
        margin: 0px auto 60px;
        border: 3px solid var(--clay);
           padding: 70px;
        border-radius: 30px;
    }



/* Blog
--------------------------------------------- */

.blog-single .wrapper-inner {
    max-width: 980px;
    margin: 0px auto;
}

.post-header {
    margin-bottom: 30px;
}

.post-header h1 {
    margin-bottom: 0px;
}

.post-header h4 {
    font-size: 15px;
}

.post-content {
    overflow: auto;
}
.blog-single .wrapper img {
    margin-bottom: 30px;
}

.footer-share h6 {
    color: var(--slate);
}

.post-footer .footer-share {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: flex-start;
}

/* Blog Grid Section */
.blog-grid-section {
    padding: 0px 0px 60px;
}

.blog-grid-heading {
    font-size: 32px;
    margin-bottom: 40px;
    font-weight: 700;
    text-align: center;
}

/* Grid Layout */
.blog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(420px, 1fr));
    gap: 40px;
}

/* Blog Card */
.blog-card {
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06);
    transition: transform 0.3s ease;
}

.blog-card:hover {
    transform: translateY(-4px);
}

.blog-card-image img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
}

/* Content */
.blog-card-content {
    padding: 20px;
}

.blog-card-title {
    font-size: 20px;
    font-weight: 600;
    margin: 0 0 10px;
}

.blog-card-title a {
    color: #111;
    text-decoration: none;
}

.blog-card-title a:hover {
    text-decoration: underline;
}

.blog-card-date {
    font-size: 14px;
    color: var(--slate);
    margin: 0;
}



/* YML (You May Also Like) Section
--------------------------------------------- */

.yml {
    margin: 60px 0;
    padding: 40px 0;
}

.yml h2 {
    font-size: 32px;
    margin-bottom: 30px;
    text-align: center;
}

.yml ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
}

.yml li {
    width: 350px;
    display: flex;
    flex-direction: column;
}

.yml .postimg {
    width: 100%;
    height: 180px;
    background-size: cover;
    background-position: center center;
    border-radius: 6px;
    margin-bottom: 15px;
    transition: transform 0.3s ease;
}

.yml li:hover .postimg {
    transform: scale(1.03);
}

.yml-title,
.yml li > a:last-of-type {
    font-size: 18px;
    font-weight: 600;
    text-decoration: none;
    color: #111;
    line-height: 1.3;
}

.yml li > a:last-of-type:hover {
    text-decoration: underline;
}


/* Responsive Styles - Ordered by Breakpoint
--------------------------------------------- */

/* Max Width: 1590px */
@media only screen and (max-width: 1590px) {
    .nav-primary li a { font-size: 15px; }
    .wrapper, .wrap, .addwrap, .search .content, 
    .footer-widgets .wrap, .home .footer-widgets .wrap, 
    h1.entry-title, h2.entry-title {
        max-width: 1280px;
    }
    
        #carolina-ridge .container {
    padding: 170px 70px 170px calc((100vw - 1280px) / 2);
}
}

/* Max Width: 1440px */
@media only screen and (max-width: 1440px) {

.sticky .sticky-logo {
        display: none;
    }
    
   .page-template-community .genesis-nav-menu {
    max-width: 1070px;
}
    
    #del-webb .column img {
    max-width: 272px;
    }
}

/* Max Width: 1290px */
@media only screen and (max-width: 1290px) {
    .wrapper, .wrap, .addwrap, .search .content, 
    .footer-widgets .wrap, .home .footer-widgets .wrap, 
    h1.entry-title, h2.entry-title {
        max-width: 1100px;
    }
    .slider .two-thirds.nomargin, 
    .slider .one-third.nomargin {
        width: 50%;
    }
    
    #carolina-ridge .container {
    overflow: auto;
    padding: 170px 70px 170px calc((100vw - 1100px) / 2);
}
    
    #carolina-ridge .column img, #del-webb .column img {
   width: 90%;
        max-width: 300px;
    }
    
}

/* Max Width: 1200px */
@media only screen and (max-width: 1270px) {
   #mobile-menu-toggle { display: flex; }
    .nav-primary { display: none; }
    button#responsive-menu-pro-button { top: 40px !important; }
    
    
    #about .img-container, #location .slider-cont, #vision .slider-cont, #builder .img-container {
        width: 90%;
    }
    
     .site-container {
          position: relative;
         padding-top: 50px;
        }
    
    .home .site-container::before {
        display: none;
    }
    
    .home .site-container {
        padding-top: 0px;
    }
        .site-container::before {
          content: "";
          position: absolute;
          top: 0;
          left: 50%;
          transform: translateX(-50%);
          width: 200px; 
          height: 100px; 
            margin: 20px 0px;
          background-repeat: no-repeat;
          background-position: center;
          background-size: contain;
          z-index: 1000;
        }
    
        .am-slider {  
        max-width: 85%;
            margin: 0px auto;
}
    
    .am-cont {
    width: 185px;
    height: 278px;
    padding: 20px 38px;
    }
    
    .slick-prev, .slick-next {
    width: 90px;
    }
    
      }

/* Max Width: 1270px */
@media only screen and (max-width: 1270px) {
    
      .wrapper, .wrap {
        max-width: 90% !important;
    }
    /* Mobile nav toggle */
   

    /* Column stacking */
    .one-half {
        display: block;
        float: none;
        width: 100% !important;
        margin: 0 auto 50px;
    }
    .three-fifths {
        width: 100%;
        display: block;
        float: none;
    }

    /* Sections */
    .section {
        overflow: auto;
        padding: 60px 0 !important;
    }

    /* Hero stacking */
    #hero { min-height: auto; padding: 0px !important; }
    #hero .wrapper {
        display: flex;
        height: 100%;
        max-width: 100% !important;
        flex-wrap: wrap;
    }
    
    .home .moveup {
    margin-top: 0px;
} 
    #hero .column.one-half {
        width: 100% !important;
        margin-bottom: 0px;
        position: relative;
        height: auto;
    }
    #hero .herocont img.retreat {
         padding: 0px 0px 25px;
    max-width: 257.14px !important;
}
    #hero .herocont img.dw {
    max-width: 260.58px !important;
    padding: 0px 0px 25px;
}
    #hero .mask {
        position: absolute;
        width: 100%;
        height: 100%;
    }
    #hero .container {
        position: relative;
        z-index: 2;
        padding: 30px 20px;
        text-align: center;
        height: auto;
    }
    
    #hero .herocont {
    text-align: center;
    padding: 70px 0px;
}
    
    .curved-bottom {
            border-radius: 0px 0px 90px 90px;
    }
    
    #vision .flex-center {
        min-height: 0px;
    }
    
    #about .img-container, #location .slider-cont, #location .img-container, #vision .slider-cont, #builder .img-container, #vision .img-container {
    height: 346px;
    width: 448px;
    }
    
    #location .slider-cont, #vision .slider-cont {
        margin-top: 0px;
    }
    
    .slick-next, .slick-prev {
    bottom: 90px;
}
    
    #location .container {
    min-height: auto;
    }
    
    .flex-center {
        display: block;
        min-height: auto;
    margin: 62px 30px;
    }
    
    #vision .flex-center {
        margin: 20px 0px 50px;
    }
    
    #design-studio.moveup {
    margin-top: 0px;
}
    
    
    #about .logo-cont {
    width: 100%;
    }
    
    .pattern {
        padding: 40px 0px;
    }

    #carolina-ridge .column.three-fourths,
    #del-webb .column.three-fourths {
        border-radius: 90px;
        border: 3px;
        width: 100%;
        padding: 20px;
        margin: 0px;
    }
    #carolina-ridge .container {
        display: flex;
        padding: 70px;
        flex-direction: column-reverse;
    }
    #del-webb .container {
        padding: 70px;
    }
    #carolina-ridge .container .one-third,  #carolina-ridge .container .two-thirds, #del-webb .container .one-third,  #del-webb .container .two-thirds {
        width: 100%;
        margin: 0px;
        text-align: center;
    }
    #carolina-ridge .container img,  #del-webb .container img {
        margin: 0px 0px 50px;
    }
    
    .am-cont {
    width: 158px;
    height: 252px;
}
    #media_image-4 img {
    width: 273.48px;
}
    #media_image-3 img {
    width: 155px;
}
    #media_image-3 {
    height: 51px;
    }
    
    .am-slider {  
    padding: 0px 100px;
}
    
    .am-slider .slick-next {
    right: 0px;
}
    
    .am-slider .slick-prev {
    left: 0px;
}
    
    
    #lifestyle {
        padding: 40px 30px;
    }
    
     #lifestyle.top-copy .container {
    margin: 0px auto;
}

    #lifestyle .rotating-cont {
        right: -80px;
    }
    
    #design-studio .container {
         padding: 40px 30px; 
    }
    
    #builder .flex-center {
        margin: 0px;
    }
    
    
    #hero .scrolling {
        display: none;
    }
    
      #vision .content-cont {
    margin-top: 100px;
}

}

/* Max Width: 920px */
@media only screen and (max-width: 920px) {
    /* Slider columns */
    .slider .two-thirds.nomargin, 
    .slider .one-third.nomargin {
        width: 100%;
    }
    .slider .content {
        padding: 30px;
        margin: 0 auto;
        text-align: center;
    }
    .slider { margin-bottom: 50px; height: auto; }

    /* Show/hide elements */
    .hide-desktop { display: block !important; }
    .hide-mobile { display: none !important; }

    /* Image/logo block */
    #about .img-container, #builder .img-container {
        max-width: 90%;
        margin: 0 auto 20px;
    }
    #about .logo-cont {
        flex-wrap: wrap;
        gap: 15px;
    }


    /* Slider container */
    .slider-cont { margin-bottom: 30px; }
    
    
}

/* Max Width: 800px */
@media only screen and (max-width: 800px) {
    /* No custom rules here yet */
}

/* Max Width: 768px */
@media only screen and (max-width: 768px) {


    /* Amenity icons */
    .am-cont { margin-bottom: 30px; }
    .am-cont .icon img {
        max-width: 80px;
        height: auto;
    }

    /* Map */
    #map .siteplan {
        width: 100%;
        height: auto;
    }
    .footer-widgets-1, .footer-widgets-2 {
    flex: 0 0 100%;
    align-items: center;
    justify-content: center;
}
    .footer-widgets-1 h2 {
        text-align: center;
    }
    
     #custom_html-2 .textwidget {
        flex-direction: row;
        width: 104px;
        margin: 0px auto 30px;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
    }
    
    #custom_html-2 .textwidget h2 {
       display: none;
    }
    

    
    .footer-widgets-2 {
        order: 1;
    }
    
     .footer-widgets-1 {
        order: 2;
    }
    
     .footer-widgets-3 {
        order: 3;
    }
    
    #media_image-2 {
    width: 200px; 
        margin: 0px auto 20px;
        text-align: center;
        float: none;
        display: block;
    }
      #media_image-3 {
    width: 200px; 
             margin: 0px auto;
        text-align: center;
        float: none;
        display: block;
    }
    
    .footer-widgets p {
        text-align: center;
    }
    
    #custom_html-2 .textwidget a {
        text-align: center;
     flex: 0 0 50%;
    }
    
    .one-fourth, .gallery-columns-4 .gallery-item {
        width: 50%;
        margin: 0px;
    }
    
      #carolina-ridge .container, #del-webb .container {
        padding: 40px 20px;
    }
    
    .rotating-icon {
    width: 32vw;
    }
  #amenities .container {
    margin: 50px auto 40px;
}
    
    #communitites .column img, #communitites .column img.dw {
    max-width: 80%;
    margin: 0px 0px 30px;
}
    #communitites .container {
    padding: 70px 30px;
}
    
    

    
}

/* Max Width: 568px */
@media only screen and (max-width: 568px) {
    #mobile-menu-toggle { top: 24px; }
    .center-on-mobile { text-align: center; }
       .left-on-mobile, .wrapper .left-on-mobile { text-align: left; }
    #responsive-menu-pro-container { width: 100%; }
    .three-fifths .two-fifths {
        width: 100%;
        margin: 0 auto;
    }
    /* Buttons full-width */
    .button {
        width: 100%;
        display: block;
        margin-bottom: 15px;
    }
    
       
    .amenitybuttons {
    flex-wrap: wrap;
    }
    .feather {
    background-size: 70%;
    }
    
        #about .img-container, #location .slider-cont, #location .img-container, #vision .slider-cont, #builder .img-container, #vision .img-container {
        width: 100%;
    }
    
    #vision .flex-center,  #builder .flex-center {
        margin: 0px 0px 50px;
        display: block;
    }
    
    #about .flex-center  {
        margin: 0px;
        display: block;
    }
    
    #vision .slider-cont {
        margin-top: 0px;
    }
    
    #del-webb .column img, #carolina-ridge .column img {
    max-width: 67%;
    }
    
    #design-studio .container
    {
        padding: 40px 30px;
    }
    
        #carolina-ridge .container, #del-webb .container {
        padding: 20px 0px;
    }
    
        #carolina-ridge .column.three-fourths, #del-webb .column.three-fourths {
        border-radius: 30px;
    }
    
   #about .logo-cont {
        display: none;
    }
    
        #hero .herocont {
        text-align: center;
        padding: 45px 0px;
    }
    
    .pattern .section, #map.section {
        padding: 0px !important;
    }
    
    #map.section .wrapper {
        max-width: 100% !important;
        overflow: hidden;
    }
    
    #map.section {
        overflow: hidden;
    }
    
    
      .am-slider {
    padding: 0px 50px;
}
    
    #hero h2 {
    font-size: 16px;
    line-height: 25px;
}
    
    .page-template-community #about {
        padding-top: 0px !important;
    }
    
    h2, h1.entry-title {
    font-size: 35px;
    line-height: 38px;
    }
    
    p {
    margin: 0 0 20px;
    font-size: 16px;
    }
    
    #location .slider {
        padding: 0px 50px;
        }
    
    .slick-prev, .slick-next {
    position: absolute;
        width: 61px;
        height: 36px;
    z-index: 100;
}
    
    .slick-next {
   right: 0px;
}
    
    .slick-prev {
   left: 0px;
}
    
    .amenitybuttons {
        gap: 10px;
    }
    
    #map-filters {
    display: flex;
        gap: 5px;
        justify-content: center;
}

#map-filters button {
           width: 80%;
        padding: 10px !important;
        text-align: center;
        margin: 0px auto !important;
    }

    
    #vision .flex-center {
        min-height: auto;
    }
    
       .rotating-icon {
        width: 41vw;
    }
    
    .home .am-cont {
        width: 143px;
        height: 205px;
    }
    
    .home .am-cont .label {
    font-size: 14px;
    line-height: 20px;
}
    
    .overlay-nav li.button a {
        display: none;
    }

    #retreat-popup .gform_wrapper input:not([type="submit"]), #retreat-popup .gform_wrapper textarea, #retreat-popup .gform_wrapper select {
         padding: 0px !important;
    }
    
    #retreat-popup {
        padding: 30px;
    }
    
    #retreat-popup h2 {
    margin-bottom: 10px;
    }
    
    .gform_wrapper.gravity-theme .gform_fields {
        grid-row-gap: 10px;
    }
    
  
    
}
   

/* Max Width: 470px */
@media only screen and (max-width: 470px) {
    .title-area, body:not(.home) .title-area {
        width: 60%;
    }
    a:hover { text-decoration: none !important; }
    
   
    
}
