/*--------------------------------------------------------------
# CSS Variables (Global)
--------------------------------------------------------------*/
:root {
    /* Font Variables */
	--body-font: "Bradford LL TT", serif;
	--heading-font: "Bw Diagrid", sans-serif;
    --button-font: "Theinhardt", sans-serif;
    --base-font-size: 16px;
	--scale-factor: 1;

    /* Colors */
    --light-text-color: #FFFFFF;
    --black: #000;
    --white: #fff;
    --primary-color: #A78376;
    --secondary-color: #7F6155;
    --button-hover: #768771;
    --background-muted: #F3EFE8;
    --background-primary: #A78376;
    --background-secondary: #7F6155;
    --text-primary: rgba(226, 31, 38, 1);
    --link-color: #000;
    --link-hover: var(--primary-color);
    --border-color: #7F6155;

    /* Buttons */
    --btn-border: #7F6155;
    --btn-padding-x: 24px;
    --btn-padding-x-lg: 24px;
    --btn-padding-y: 12px;
    --btn-height: calc(90px * var(--scale-factor));
    --btn-font-size: 1.125rem;
    --btn-letter-spacing: normal;

    /* Shadows */
    --box-shadow-xl: 0 28px 50px rgba(0, 0, 0, 0.3);

    /* Spacing */
    --section-padding: 72px;
    --section-padding-lg: 140px;
    --container-width: 1376px;
    --container-padding: 15px;
	--min-padding: 102px;
	--vh: 1vh; /* Fallback value to reduce content shift */
	
	/* Navbar */
	--navbar-min-height: calc(44px * var(--scale-factor));
	--navbar-top-margin: 30px;
	--navbar-background: rgba(255, 255, 255, 0.85);
	--navbar-background-transparent: rgba(255, 255, 255, 0.70);
	--navbar-backdrop-filter: 25px;	

	/* Intl-tel-input */	
    --iti-hover-color: var(--background-muted);
    --iti-border-color: #ccc;
    --iti-dialcode-color: var(--secondary-color);
    --iti-dropdown-bg: var(--background-muted);
    --iti-border-width: 1px;
    --iti-arrow-height: 6px;
    --iti-arrow-width: 12px;
    --iti-triangle-border: calc(var(--iti-arrow-width) / 2);
    --iti-arrow-padding: 6px;
    --iti-arrow-color: var(--background-secondary);
}

/*--------------------------------------------------------------
# UIkit Overrides
--------------------------------------------------------------*/
.uk-card-primary.uk-card-body .uk-h1, .uk-card-primary.uk-card-body .uk-h2, .uk-card-primary.uk-card-body .uk-h3, .uk-card-primary.uk-card-body .uk-h4, .uk-card-primary.uk-card-body .uk-h5, .uk-card-primary.uk-card-body .uk-h6, .uk-card-primary.uk-card-body .uk-heading-2xlarge, .uk-card-primary.uk-card-body .uk-heading-3xlarge, .uk-card-primary.uk-card-body .uk-heading-large, .uk-card-primary.uk-card-body .uk-heading-medium, .uk-card-primary.uk-card-body .uk-heading-small, .uk-card-primary.uk-card-body .uk-heading-xlarge, .uk-card-primary.uk-card-body h1, .uk-card-primary.uk-card-body h2, .uk-card-primary.uk-card-body h3, .uk-card-primary.uk-card-body h4, .uk-card-primary.uk-card-body h5, .uk-card-primary.uk-card-body h6, .uk-card-primary>:not([class*=uk-card-media]) .uk-h1, .uk-card-primary>:not([class*=uk-card-media]) .uk-h2, .uk-card-primary>:not([class*=uk-card-media]) .uk-h3, .uk-card-primary>:not([class*=uk-card-media]) .uk-h4, .uk-card-primary>:not([class*=uk-card-media]) .uk-h5, .uk-card-primary>:not([class*=uk-card-media]) .uk-h6, .uk-card-primary>:not([class*=uk-card-media]) .uk-heading-2xlarge, .uk-card-primary>:not([class*=uk-card-media]) .uk-heading-3xlarge, .uk-card-primary>:not([class*=uk-card-media]) .uk-heading-large, .uk-card-primary>:not([class*=uk-card-media]) .uk-heading-medium, .uk-card-primary>:not([class*=uk-card-media]) .uk-heading-small, .uk-card-primary>:not([class*=uk-card-media]) .uk-heading-xlarge, .uk-card-primary>:not([class*=uk-card-media]) h1, .uk-card-primary>:not([class*=uk-card-media]) h2, .uk-card-primary>:not([class*=uk-card-media]) h3, .uk-card-primary>:not([class*=uk-card-media]) h4, .uk-card-primary>:not([class*=uk-card-media]) h5, .uk-card-primary>:not([class*=uk-card-media]) h6, .uk-card-secondary.uk-card-body .uk-h1, .uk-card-secondary.uk-card-body .uk-h2, .uk-card-secondary.uk-card-body .uk-h3, .uk-card-secondary.uk-card-body .uk-h4, .uk-card-secondary.uk-card-body .uk-h5, .uk-card-secondary.uk-card-body .uk-h6, .uk-card-secondary.uk-card-body .uk-heading-2xlarge, .uk-card-secondary.uk-card-body .uk-heading-3xlarge, .uk-card-secondary.uk-card-body .uk-heading-large, .uk-card-secondary.uk-card-body .uk-heading-medium, .uk-card-secondary.uk-card-body .uk-heading-small, .uk-card-secondary.uk-card-body .uk-heading-xlarge, .uk-card-secondary.uk-card-body h1, .uk-card-secondary.uk-card-body h2, .uk-card-secondary.uk-card-body h3, .uk-card-secondary.uk-card-body h4, .uk-card-secondary.uk-card-body h5, .uk-card-secondary.uk-card-body h6, .uk-card-secondary>:not([class*=uk-card-media]) .uk-h1, .uk-card-secondary>:not([class*=uk-card-media]) .uk-h2, .uk-card-secondary>:not([class*=uk-card-media]) .uk-h3, .uk-card-secondary>:not([class*=uk-card-media]) .uk-h4, .uk-card-secondary>:not([class*=uk-card-media]) .uk-h5, .uk-card-secondary>:not([class*=uk-card-media]) .uk-h6, .uk-card-secondary>:not([class*=uk-card-media]) .uk-heading-2xlarge, .uk-card-secondary>:not([class*=uk-card-media]) .uk-heading-3xlarge, .uk-card-secondary>:not([class*=uk-card-media]) .uk-heading-large, .uk-card-secondary>:not([class*=uk-card-media]) .uk-heading-medium, .uk-card-secondary>:not([class*=uk-card-media]) .uk-heading-small, .uk-card-secondary>:not([class*=uk-card-media]) .uk-heading-xlarge, .uk-card-secondary>:not([class*=uk-card-media]) h1, .uk-card-secondary>:not([class*=uk-card-media]) h2, .uk-card-secondary>:not([class*=uk-card-media]) h3, .uk-card-secondary>:not([class*=uk-card-media]) h4, .uk-card-secondary>:not([class*=uk-card-media]) h5, .uk-card-secondary>:not([class*=uk-card-media]) h6, .uk-light .uk-h1, .uk-light .uk-h2, .uk-light .uk-h3, .uk-light .uk-h4, .uk-light .uk-h5, .uk-light .uk-h6, .uk-light .uk-heading-2xlarge, .uk-light .uk-heading-3xlarge, .uk-light .uk-heading-large, .uk-light .uk-heading-medium, .uk-light .uk-heading-small, .uk-light .uk-heading-xlarge, .uk-light h1, .uk-light h2, .uk-light h3, .uk-light h4, .uk-light h5, .uk-light h6, .uk-offcanvas-bar .uk-h1, .uk-offcanvas-bar .uk-h2, .uk-offcanvas-bar .uk-h3, .uk-offcanvas-bar .uk-h4, .uk-offcanvas-bar .uk-h5, .uk-offcanvas-bar .uk-h6, .uk-offcanvas-bar .uk-heading-2xlarge, .uk-offcanvas-bar .uk-heading-3xlarge, .uk-offcanvas-bar .uk-heading-large, .uk-offcanvas-bar .uk-heading-medium, .uk-offcanvas-bar .uk-heading-small, .uk-offcanvas-bar .uk-heading-xlarge, .uk-offcanvas-bar h1, .uk-offcanvas-bar h2, .uk-offcanvas-bar h3, .uk-offcanvas-bar h4, .uk-offcanvas-bar h5, .uk-offcanvas-bar h6, .uk-overlay-primary .uk-h1, .uk-overlay-primary .uk-h2, .uk-overlay-primary .uk-h3, .uk-overlay-primary .uk-h4, .uk-overlay-primary .uk-h5, .uk-overlay-primary .uk-h6, .uk-overlay-primary .uk-heading-2xlarge, .uk-overlay-primary .uk-heading-3xlarge, .uk-overlay-primary .uk-heading-large, .uk-overlay-primary .uk-heading-medium, .uk-overlay-primary .uk-heading-small, .uk-overlay-primary .uk-heading-xlarge, .uk-overlay-primary h1, .uk-overlay-primary h2, .uk-overlay-primary h3, .uk-overlay-primary h4, .uk-overlay-primary h5, .uk-overlay-primary h6, .uk-section-primary:not(.uk-preserve-color) .uk-h1, .uk-section-primary:not(.uk-preserve-color) .uk-h2, .uk-section-primary:not(.uk-preserve-color) .uk-h3, .uk-section-primary:not(.uk-preserve-color) .uk-h4, .uk-section-primary:not(.uk-preserve-color) .uk-h5, .uk-section-primary:not(.uk-preserve-color) .uk-h6, .uk-section-primary:not(.uk-preserve-color) .uk-heading-2xlarge, .uk-section-primary:not(.uk-preserve-color) .uk-heading-3xlarge, .uk-section-primary:not(.uk-preserve-color) .uk-heading-large, .uk-section-primary:not(.uk-preserve-color) .uk-heading-medium, .uk-section-primary:not(.uk-preserve-color) .uk-heading-small, .uk-section-primary:not(.uk-preserve-color) .uk-heading-xlarge, .uk-section-primary:not(.uk-preserve-color) h1, .uk-section-primary:not(.uk-preserve-color) h2, .uk-section-primary:not(.uk-preserve-color) h3, .uk-section-primary:not(.uk-preserve-color) h4, .uk-section-primary:not(.uk-preserve-color) h5, .uk-section-primary:not(.uk-preserve-color) h6, .uk-section-secondary:not(.uk-preserve-color) .uk-h1, .uk-section-secondary:not(.uk-preserve-color) .uk-h2, .uk-section-secondary:not(.uk-preserve-color) .uk-h3, .uk-section-secondary:not(.uk-preserve-color) .uk-h4, .uk-section-secondary:not(.uk-preserve-color) .uk-h5, .uk-section-secondary:not(.uk-preserve-color) .uk-h6, .uk-section-secondary:not(.uk-preserve-color) .uk-heading-2xlarge, .uk-section-secondary:not(.uk-preserve-color) .uk-heading-3xlarge, .uk-section-secondary:not(.uk-preserve-color) .uk-heading-large, .uk-section-secondary:not(.uk-preserve-color) .uk-heading-medium, .uk-section-secondary:not(.uk-preserve-color) .uk-heading-small, .uk-section-secondary:not(.uk-preserve-color) .uk-heading-xlarge, .uk-section-secondary:not(.uk-preserve-color) h1, .uk-section-secondary:not(.uk-preserve-color) h2, .uk-section-secondary:not(.uk-preserve-color) h3, .uk-section-secondary:not(.uk-preserve-color) h4, .uk-section-secondary:not(.uk-preserve-color) h5, .uk-section-secondary:not(.uk-preserve-color) h6, .uk-tile-primary:not(.uk-preserve-color) .uk-h1, .uk-tile-primary:not(.uk-preserve-color) .uk-h2, .uk-tile-primary:not(.uk-preserve-color) .uk-h3, .uk-tile-primary:not(.uk-preserve-color) .uk-h4, .uk-tile-primary:not(.uk-preserve-color) .uk-h5, .uk-tile-primary:not(.uk-preserve-color) .uk-h6, .uk-tile-primary:not(.uk-preserve-color) .uk-heading-2xlarge, .uk-tile-primary:not(.uk-preserve-color) .uk-heading-3xlarge, .uk-tile-primary:not(.uk-preserve-color) .uk-heading-large, .uk-tile-primary:not(.uk-preserve-color) .uk-heading-medium, .uk-tile-primary:not(.uk-preserve-color) .uk-heading-small, .uk-tile-primary:not(.uk-preserve-color) .uk-heading-xlarge, .uk-tile-primary:not(.uk-preserve-color) h1, .uk-tile-primary:not(.uk-preserve-color) h2, .uk-tile-primary:not(.uk-preserve-color) h3, .uk-tile-primary:not(.uk-preserve-color) h4, .uk-tile-primary:not(.uk-preserve-color) h5, .uk-tile-primary:not(.uk-preserve-color) h6, .uk-tile-secondary:not(.uk-preserve-color) .uk-h1, .uk-tile-secondary:not(.uk-preserve-color) .uk-h2, .uk-tile-secondary:not(.uk-preserve-color) .uk-h3, .uk-tile-secondary:not(.uk-preserve-color) .uk-h4, .uk-tile-secondary:not(.uk-preserve-color) .uk-h5, .uk-tile-secondary:not(.uk-preserve-color) .uk-h6, .uk-tile-secondary:not(.uk-preserve-color) .uk-heading-2xlarge, .uk-tile-secondary:not(.uk-preserve-color) .uk-heading-3xlarge, .uk-tile-secondary:not(.uk-preserve-color) .uk-heading-large, .uk-tile-secondary:not(.uk-preserve-color) .uk-heading-medium, .uk-tile-secondary:not(.uk-preserve-color) .uk-heading-small, .uk-tile-secondary:not(.uk-preserve-color) .uk-heading-xlarge, .uk-tile-secondary:not(.uk-preserve-color) h1, .uk-tile-secondary:not(.uk-preserve-color) h2, .uk-tile-secondary:not(.uk-preserve-color) h3, .uk-tile-secondary:not(.uk-preserve-color) h4, .uk-tile-secondary:not(.uk-preserve-color) h5, .uk-tile-secondary:not(.uk-preserve-color) h6 {
    color: var(--light-text-color);
}

.uk-container {
    max-width: var(--container-width);
}
.uk-container-large {
    max-width: 1380px;
}
.uk-container-expand {
    max-width: none;
}
.uk-navbar-container .uk-logo-sticky {
    visibility: hidden;
	opacity: 0;
    transition: all .2s ease-out;		
}
.uk-sticky-fixed .uk-navbar-container .uk-logo-sticky {
    visibility: visible;
	opacity: 1;
}
.uk-light {
    color: var(--light-text-color);
}
a, .uk-link {
    color: var(--link-color);
    transition: all .2s ease-out;
}
a:hover, .uk-link:hover {
    color: var(--link-hover);
}
.uk-dotnav {
    margin-left: -9px;
}
.uk-dotnav>* {
    padding-left: 9px;
}
.uk-dotnav {
	margin-top: 30px!important;	
}
.uk-dotnav>*>* {
    width: 9px;
    height: 9px;
    background-color: transparent;
    border-color: var(--primary-color);	
	background: rgba(255, 255, 255, 0.50);	
}
.uk-light .uk-dotnav>*>* {
    background-color: rgba(255, 255, 255, 0.50);
    border-color: transparent;	
}
.uk-dotnav>.uk-active>* {
    border-color: transparent;	
    background-color: var(--primary-color);
}
.uk-light .uk-dotnav>.uk-active>* {
    background-color: var(--white);
    border-color: transparent;	
}

@media (max-width: 640px) {	
    .uk-section-large {
        padding-top: 52px;
        padding-bottom: 52px;
    }	
}



/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
html {
    font-weight: normal;
    color: var(--secondary-color);	
    line-height: 1.5;
    font-size: var(--base-font-size);
    font-family: var(--body-font);
    background: var(--background-muted);
}
h1, h2, h3, h4, h5, h6,
.uk-h1, .uk-h2, .uk-h3, .uk-h4, .uk-h5, .uk-h6,
.uk-heading-small, .uk-heading-medium, .uk-heading-large, .uk-heading-xlarge, .uk-heading-2xlarge {
    font-family: var(--heading-font);
    font-weight: normal;
    color: var(--secondary-color);	
    line-height: 1.03;
	letter-spacing: -0.4px;
	text-transform: uppercase;
}

.page {
	overflow: hidden;
}
@media (min-width: 640px) {	
    h1, h2, h3, h4, h5, h6,
    .uk-h1, .uk-h2, .uk-h3, .uk-h4, .uk-h5, .uk-h6,
    .uk-heading-small, .uk-heading-medium, .uk-heading-large, .uk-heading-xlarge, .uk-heading-2xlarge {
        letter-spacing: -0.5px;
    }
}


/*--------------------------------------------------------------
# Buttons
--------------------------------------------------------------*/
.uk-button {
    font-family: var(--button-font);	
    font-weight: 500;
    transition: all .3s ease-out;
    letter-spacing: var(--btn-letter-spacing);
    font-size: var(--btn-font-size);
    padding: var(--btn-padding-y) var(--btn-padding-x);
    height: var(--btn-height);
    color: var(--white);	
	display: inline-flex;
	justify-content: space-between;
	align-items: center;
	line-height: 1;
	min-height: var(--btn-height);
	border-radius: 0;
	text-transform: uppercase;
}

.uk-button-primary {
    background-color: var(--background-primary);
    border-color: var(--primary-color);
    color: var(--light-text-color);		
}

.uk-light .uk-button-primary {
    background-color: transparent;
    border-color: var(--light-text-color);
    color: var(--light-text-color);		
}

.uk-button-primary:hover {
    background-color: transparent;
    border-color: var(--primary-color);
    color: var(--primary-color);
}
.uk-light .uk-button-primary:hover {
    background-color: var(--background-primary);
    border-color: var(--primary-color);
    color: var(--light-text-color);
}

.uk-button-secondary {
    background-color: var(--background-secondary);
}
.uk-button-secondary:hover, .uk-button-secondary:focus {
    background-color:  var(--background-primary);
	color: var(--white);
}
.uk-light .uk-button-secondary {
    background-color: var(--background-secondary);	
    color: #FFF;	
}

.uk-button-default {
    color: var(--secondary-color);		
    border-color: var(--secondary-color);		
}
.uk-button-default:hover {
    color: var(--white);		
    border-color: var(--secondary-color);
    background-color: var(--secondary-color);	
}

.uk-light .uk-button-default {
    background-color: transparent;
    border-color: var(--light-text-color);
    color: var(--light-text-color);		
}
.uk-light .uk-button-default:hover {
    background-color: var(--background-primary);
    border-color: var(--primary-color);
    color: var(--light-text-color);
}
.uk-button-default.uk-active, .uk-button-default:active, .uk-button-default:focus {
    background-color: transparent;
    border-color: var(--light-text-color);
    color: var(--light-text-color);		
}



/*--------------------------------------------------------------
# Button Text
--------------------------------------------------------------*/
.uk-button-text {
    color: var(--secondary-color);
    padding: 0;
    justify-content: space-between;
    height: 32px;
    min-height: auto;
    min-width: calc(228px * var(--scale-factor));
    font-size: 1rem;    
}
.uk-button-text:hover {
    color: var(--secondary-color);
}
.uk-button-text::before {
    right: 0;
}
.uk-button-text span {
    position: relative;
	line-height: 1.5;
}
.uk-button svg {
    margin-left: 10px;
    position: relative;
    top: 2px;
    /* Use a single transition property for both transform and duration */
    transition: transform 0.3s ease-out; /* Increased duration for noticeable spin */
    transform: translateX(0);
}

.uk-button:hover svg {
    /* Combine the existing translation with the new rotation */
    transform: translateX(3px) rotate(360deg);
}

@media (max-width: 640px) {
	.uk-button-text.uk-button {
		width: auto;	
	}		

}

/*--------------------------------------------------------------
# Layout Adjustments
--------------------------------------------------------------*/
.uk-background-primary {
    background-color: var(--background-primary);
}
.uk-background-muted {
    background-color: var(--background-muted);
}
.uk-background-secondary {
    background-color: var(--background-secondary);
}
@media (min-width: 960px) {
    .inner-left {
        padding-left: 40px;
    }
    .inner-right {
        padding-right: 40px;
    }
}
@media (min-width: 1200px) {
    .inner-left {
        padding-left: max(var(--min-padding), calc((100vw - (var(--container-width) + (var(--container-padding) * 2))) / 2));
    }
    .inner-right {
        padding-right: max(var(--min-padding), calc((100vw - (var(--container-width) + (var(--container-padding) * 2))) / 2));
    }
}


/* ==========================
   Nav Styles
========================== */
.tm-header {
	position: absolute;
	z-index: 900;
	left: 0;
	right: 0;
	width: 100%;
}
.tm-header .uk-navbar-transparent .s9d-nav-container {
    margin-top: var(--navbar-top-margin);
}

@media (min-width: 960px) {
	.tm-header .s9d-nav-container {
		padding: 0 60px;    
	}
}
@media (min-width: 1200px) {
	.tm-header .s9d-nav-container {
		padding: 0 72px;    
	}
}
@media (max-width: 960px) {
	.uk-logo img {
		max-width: 260px;
	}
}
@media (max-width: 640px) {
	.uk-logo img {
		max-width: 180px;
	}
}

/* ==========================
   Navbar
========================== */
.uk-navbar-item, .uk-navbar-nav>li>a, .uk-navbar-toggle {
    min-height: var(--navbar-min-height);
}
.uk-navbar-container.uk-navbar-transparent,
.uk-navbar-container:not(.uk-navbar-transparent) {
    background: transparent;
}


/*--------------------------------------------------------------
# Hero Section
--------------------------------------------------------------*/
.hero-section {
	height: calc(762px * var(--scale-factor));
}
.hero-section .banner-caption {
    margin-top: calc(140px + var(--navbar-top-margin) + var(--navbar-min-height));    		
}
.hero-section .desc {
   max-width: 574px; 		
}
.hero-section *+p {
    margin-top: 24px;
}
.hero-section .main-title {
	font-size: 3.125rem;
	letter-spacing:-0.5px;
    margin-bottom: 27px;
    line-height: 1.03;
}
.hero-section .overlay {
	background: rgba(24, 41, 53, 0.35);
}
.hero-section .uk-button {
    min-width: calc(228px * var(--scale-factor));
}	
.hero-section .hero-cta {
	padding-top: 10px;
}

@media (min-width: 640px) {
    .hero-section .main-title {
		font-size: 4rem;
    }    	
}
@media (min-width: 960px) {
    .hero-section {
		height: calc(863px * var(--scale-factor));				
    }    
    .hero-section .banner-caption {
        margin-top: calc(228px + var(--navbar-top-margin) + var(--navbar-min-height));    		
    }    
    .hero-section .main-title {
		font-size: 6.25rem;
		letter-spacing: -1px;
    }   
}
@media (min-width: 1600px) {
    .hero-section {
		height: calc(1080px * var(--scale-factor));
        display: flex;
        align-items: center;
    }    
    .hero-section .banner-caption {
        margin-top: calc(var(--navbar-top-margin) + var(--navbar-min-height));    		
    }     
}

/*--------------------------------------------------------------
# General Styles
--------------------------------------------------------------*/
.uk-hr, hr {
    border-top-color: #484848;
}
.uk-list-bullet>::before {
	margin-top: -3px;
}
.uk-list-bullet {
    margin-top: 17px;
}
.animateInitState {
	visibility: hidden !important; 
	opacity: 0;
}
.animateInitState.uk-scrollspy-inview {
	visibility: visible !important; 
	opacity: 1;	
}

.section-title {
	font-size: 3.125rem;  
}
.subtitle {
    font-family: var(--button-font);	
	text-transform: uppercase;
	font-weight: 500;
}
.bodyfont2 {
    font-family: var(--button-font);
    font-weight: 500;    
}


.inner-container {
	padding-right: 20px;
	padding-left: 20px;
}

@media (min-width: 640px) {
	.section-title {
		font-size: 4rem;  
	}	
}
@media (min-width: 960px) {
	.section-title {
		font-size: 6.25rem;  
	}	
}


/*--------------------------------------------------------------
# Forms & Inputs
--------------------------------------------------------------*/
.uk-select:not([multiple]):not([size]) {
    background-image: url(../img/arrow-down.svg) !important;
    background-repeat: no-repeat;
    background-position: calc(100% - 0) center !important;
    background-size: 15px 13px !important;
}
.uk-input, .uk-select:not([multiple]):not([size]) {
	height: calc(45px * var(--scale-factor));
    padding-right: 12px;	
}
.uk-form-icon {
    width: 20px;
}
.uk-form-icon:not(.uk-form-icon-flip) ~ .uk-input {
    padding-left: 32px !important;
}
.uk-input, .uk-select, .uk-textarea {
    font-size: 1rem;
}
.uk-input, .uk-select, .uk-textarea {
    background: #fff;
    color: #000;
    border: 1px solid var(--border-color);
	border-radius: 0;
}
.uk-input:focus, .uk-select:focus, .uk-textarea:focus {
	border: 1px solid #78947A;
}
.uk-light .uk-input, .uk-light .uk-select, .uk-light .uk-textarea, .uk-light .uk-checkbox {
    background-color: rgb(255,255,255);
    color: #000;
    border-color: rgba(0, 0, 0, 0.30);	
}
.uk-light .uk-input:focus, .uk-light .uk-select:focus, .uk-light .uk-textarea:focus {
    background-color: rgb(255,255,255);
    color: #000;
    border-color: var(--primary-color);	
}
label, .uk-form-label {
    font-size: 1rem;
    margin-bottom: 10px;
    display: block;
	color: var(--secondary-color);
}
.form-margin .confirm {
    margin-top: 14px;
}


/*-------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
.uk-light .cform {
	color: #000;
	margin-top: 37px;
}
.cform {
    max-width: 560px;
    color: #000;
    margin: 0 auto;
	padding-top: 52px;
}
.cform .inner-wrapper {
	border-radius: 17px;
}

.cform .uk-grid-small {
    margin-left: -18px;   
}
.cform .uk-grid-small>* {
    padding-left: 18px;    
}
.cform textarea {
    max-height: 180px;
	padding: 10px 12px;
}
.cform .uk-grid-small>.uk-grid-margin {
    margin-top: 16px;
}
.cform .form-title {
	margin-bottom: 30px;	
}
.cform a {
    text-decoration: underline;
}
.cform .uk-form-controls {
	position: relative;
}

.cform .uk-checkbox:focus, .uk-radio:focus {
    border-color: var(--secondary-color);
}
.cform .uk-checkbox {
    margin: 0;
    border-color: var(--secondary-color);
    width: calc(18px * var(--scale-factor));
    height: calc(18px * var(--scale-factor));
    position: relative;
    margin-top: 3px;
    flex-shrink: 0;
    background-color: var(--light-text-color);	
}

.cform .uk-checkbox:checked, .cform .uk-checkbox:indeterminate, .cform .uk-radio:checked {
    background-color: var(--secondary-color);
    border-color: var(--secondary-color);	
}
.cform .uk-button {
    margin-top: 49px;
    min-width:  190px;
}
.cform .section-title {
    margin-top: 24px;
}
.cform .gray {
	line-height: 1.5;
}
.cform .uk-h4 {
    margin-bottom: 5px;
    margin-top: 14px;
}

.cform {
	color: var(--secondary-color);
    font-family: var(--button-font);	
}
.contact-section .heading p {
	font-size: 1.125rem;
    margin-top: 40px;
}
.contact-section .uk-input, .contact-section .uk-select, .contact-section .uk-textarea {
    font-family: var(--button-font);	
    font-weight: normal;
	line-height: 1.5;
	font-size: 1rem;
    letter-spacing: 0.8px;
}
.contact-section .tagline {
	font-size: 1.375rem;
}

.cform.lineinput .uk-input, .cform.lineinput .uk-select, .cform.lineinput .uk-textarea {
    background-color: transparent;
    border-top: none;
    border-left: none;
    border-right: none;
    border-radius: 0;
    padding-right: 0;
    padding-left: 0;
}

@media (min-width:640px) {
	.cform .uk-margin-small-top {
		margin-top: 19px!important;
	}
	.cform p.uk-margin-small-top {
		margin-top: 22px!important;
	}	
}
@media (min-width: 960px) {
	.form-section {
		padding-top: 64px;
		padding-bottom: 103px;
	}		
}

/*--------------------------------------------------------------
# Telephone International Code
--------------------------------------------------------------*/
.form .iti--allow-dropdown input, .form .iti--allow-dropdown input[type=text], .form .iti--allow-dropdown input[type=tel], .form .iti--separate-dial-code input, .form .iti--separate-dial-code input[type=text], .form .iti--separate-dial-code input[type=tel] {
    padding-right: 6px;
    padding-left: 52px;
    margin-left: 0;
}
.iti {
    width: 100%;
}
.iti .iti__tel-input {
  padding-right: 10px;
}

.hide {
    display: none;
}
#valid-msg {
    color: #FFFFFF;
	background: #00C900;
}
#error-msg {
    color: red;
}
input.error {
    border: 1px solid #FF7C7C;
}
.form-dark .iti__country-list {
    background-color: #151f28;
}
.iti--separate-dial-code .iti__selected-flag,
.iti--allow-dropdown .iti__flag-container:hover .iti__selected-flag {
    background-color: rgba(0, 0, 0, 0);

	font-size: 0.99609375rem;
}
.iti-msg {
    position: absolute;
    left: 0;
    bottom: -19px;
    background: red;
    color: #fff !important;
    padding: 1px 10px;
    font-size: 12px;
    right: 0;
	border-radius: 4px;
}
.iti__selected-flag {
    padding-left: 10px;
}
.iti__search-input {
    height: 34px;
    padding: 0 10px;
    outline: 0;
}


/*--------------------------------------------------------------
# Custom Form
--------------------------------------------------------------*/
.light-form .uk-input::placeholder, 
.light-form .uk-select::placeholder, 
.light-form .uk-textarea::placeholder {
	color: var(--secondary-color) !important;
}

.light-form .uk-input, .light-form .uk-select, .light-form .uk-textarea{
    color: var(--secondary-color);
    border-color: var(--secondary-color);
}
.light-form .uk-input:focus, .light-form .uk-select:focus, .light-form .uk-textarea:focus {
    background-color: transparent;
    color: var(--secondary-color);
    border-bottom-color: var(--secondary-color);
}
.light-form .iti__selected-country-primary {
    padding-left: 0;
}
.light-form .iti .iti__selected-dial-code {
	color: var(--secondary-color) !important;
}
.light-form .iti--inline-dropdown .iti__dropdown-content {
    margin-top: 0px;
}
.light-form .iti__search-input {
    font-family: inherit;
    text-transform: uppercase;
}
.light-form .select2-container--default .select2-selection--single {
    background-color: transparent;
    border-bottom-color: rgba(255, 255, 255, 0.50);
    border-radius: 0;
    border-width: 0 0 1px 0;
}
.light-form .cform .gray {
    color: var(--secondary-color);
}
.light-form .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: rgba(217, 217, 217, 0.80);
	padding-left: 0;
}
.light-form .select2-container .select2-selection--single {
	height: calc(45px * var(--scale-factor));
}
.select2-container--default .select2-search--dropdown .select2-search__field {
    outline: 0;
}
.light-form .select2-dropdown {
    background-color: #F5F5F5;
}

.select2-container {
    max-width: 485px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
    border: none;
    background: url('../img/select-arrow.svg') no-repeat center center;
    background-size: contain;
    width: 7px;
    height: 4px;
    left: 50%;
    top: 50%;
    transform: translate(100%, -50%);
    transition: transform 0.3s ease-in-out;
}
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
    transform: translate(100%, -50%) rotate(180deg);
}
.iti__country-container {
    margin-top: -2px;
}
.iti__arrow {
    width: 7px; 
    height: 4px;
    background-size: contain;
    transition: transform 0.3s ease-in-out;
}

.iti__arrow--up {
    transform: rotate(180deg);
}

.uk-checkbox, .uk-radio {
    height: 10px;
    width: 10px;
    border-color: var(--secondary-color);
    margin: auto;
}
.uk-radio:checked {
    background-image: none;
}
.radio label:first-child {
    margin-right: 22px;
}
.radio .uk-margin-small-left {
    margin-left: 5px!important;
}
.radio .wrapper {
    border-bottom: 1px solid var(--border-color); 
    min-height: calc(45px * var(--scale-factor));    
}


@media (max-width:640px) {
	.light-form .content-wrapper {
		padding-left: 0;
		padding-right: 0;
	}
    .cform .uk-button {
        margin-top: 27px;
    }    
}


/*--------------------------------------------------------------
# Loading - Sweetalert
--------------------------------------------------------------*/
.main-loading {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	background-color: #fff;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
	background-image: url('../img/spinner.svg');
	background-size: 100%;
	width: 80px;
	height: 80px;
	box-shadow: 0 0 40px rgba(0,0,0,0.05);
	-webkit-box-shadow: 0 0 40px rgba(0,0,0,0.05);
	-moz-box-shadow: 0 0 40px rgba(0,0,0,0.05);
	-ms-box-shadow: 0 0 40px rgba(0,0,0,0.05);
	-o-box-shadow: 0 0 40px rgba(0,0,0,0.05);
	z-index: 999999;
}


.swal2-html-container {
    font-family: var(--heading-font) !important;
}

.swal2-container.swal2-center>.swal2-popup {
    display: flex !important;
    flex-direction: column;
    justify-content: center;
}

.swal2-container.swal2-backdrop-show, .swal2-container.swal2-noanimation {
    background: rgba(0,0,0,.5) !important;
}

.swal2-styled.swal2-confirm {
    background-color: var(--secondary-color) !important;
}

.swal2-container .swal2-title {
    margin: 0;
    padding: 0 ;
    color: #484848 ;
    font-size: 2.1875rem;
    font-weight: 100;
}
.swal2-container .swal2-html-container {
    display: block;
    color: #484848;
    font-size: 1rem;
    font-weight: 300;
}
.swal2-container .swal2-popup {
    padding: 30px;
    border-radius: 10px;
    background: #E8EEF3;
    color: #484848;
	min-height: 309px;
	border-radius: 0px;
}
.swal2-container .swal2-close {
    display: flex;
    outline: 0;
    color: #484848;
    position: absolute;
    top: 0;
    right: 0;
}
.swal2-container .swal2-close:focus {
    box-shadow: none;
}
.swal2-container .swal2-close:hover {
    color: #000;
}
.swal2-container .swal2-close svg {
    width: 25px;
}




@media (min-width:960px) {
	.swal2-container .swal2-popup {
		min-height: 309px;
	}
}
@media (min-width:1200px) {
	.swal2-container .swal2-popup {
		min-width: 584px;
	}
}


/* ==========================
   Footer
========================== */
.footer-section  {
    font-family: var(--button-font);
	padding-bottom: 140px;    
}

.footer-section .uk-button-text {
    text-decoration: none;	
	color: var(--light-text-color);
}
.footer-section .uk-button-text::before {
    right: 100%;
}
.footer-section .uk-button-text:hover::before {
    right: 0;
}
.footer-row-top {
    margin-bottom: 44px;
}
.footer-row-middle {
    margin-bottom: 34px;
}
.sep {
    margin: 0 2px;
    display: inline-block;
}
.footer-row-top .sep {
    margin: 0 3px;
}

@media (min-width: 640px) {

}
@media (min-width: 960px) {
	.footer-section {
		padding-top: 104px;
	}	
}

@media (max-width: 640px) {

}

.square-modal {
    width: 960px;
    height: 960px;
    max-width: 90vw;
    max-height: 90vh;
    background: #8a6f63;
    color: #fff;
    padding: 28px;
    overflow: hidden;
    font-family: var(--heading-font);
}

.square-modal h3{
    font-size: 1.5rem;
    font-weight: 500;
    text-transform: uppercase;
    color: #fff;
    padding: 15px 0px;
}

.legal-scroll {
    height: calc(100% - 80px); /* adjusts for header & padding */
    overflow-y: auto;
    padding-right: 12px;
}

.legal-scroll p {
    font-size: 1.4rem;
    line-height: 1.2em !important;
}

.legal-logo {
    margin-top: 0.5rem;
    text-align: left;  /* or center depending on your screenshot */
}

.legal-logo img {
    width: 70px;
    height: auto;
}

.legal-scroll::-webkit-scrollbar {
    width: 0;
    height: 0;
}

/* Hide scrollbar – Firefox */
.legal-scroll {
    scrollbar-width: none;
}

/* Hide scrollbar – IE/old Edge */
.legal-scroll {
    -ms-overflow-style: none;
}
.uk-close-text {
    font-size: 1rem;
    color: #fff;
    background: transparent;
    border: none;
    cursor: pointer;
    top: 10px;
    right: 50px;
    padding: 15px 0px;
    top: 25px;
    font-weight: bold;
    font-size: 1.5rem !important;
}

.uk-close-text:hover {
    text-decoration: underline;
}
@media(max-width: 580px){
    .legal-scroll p {
        font-size: 1.14rem;
    }

    .legal-logo {
        margin-top: 1.5rem;
    }
}

/* ---------------------------------
 Bottom Sticky CTA  
 -------------------------------- */
.stickybottomcta {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 999; /* or higher if you want */
	transform: translateY(0); /* Always visible */
	transition: transform 0.3s;
}
.stickybottomcta.visible {
	transform: translateY(0);
}

.stickybottomcta .uk-button {
    min-height: 86px;
}



/* ---------------------------------
 flatdotnav  
 -------------------------------- */
.flatdotnav .uk-dotnav {
    display: flex;
    justify-content: space-between;
    margin-left: 0;
    align-items: baseline;
	margin-bottom: 0;
}
.flatdotnav .uk-dotnav > * {
	flex: 1 1 0; 
	display: flex;
	justify-content: center;
	padding-left: 0;
}
.flatdotnav .uk-dotnav > * > * {
	display: block;
	width: 100%;
	height: 0.0625rem; /* ~1px */
	background: #E5DFDD;
	border: none;
	border-radius: 0;
}

.flatdotnav .uk-dotnav > .uk-active > * {
	background-color: var(--secondary-color);
	border: none;
}

.floatdotnav .flatdotnav .uk-dotnav > * > * {
    width: 50px;
}

@media (min-width: 960px) {
	.floatdotnav .flatdotnav .uk-dotnav > * > * {
		width: 75px;
	}
	.dotnav-wrapper {
		margin: 52px;
		--uk-position-margin-offset: 52px;		
	}	
}
@media (max-width: 640px) {
	.dotnav-wrapper {
		margin: 20px;
		--uk-position-margin-offset: 20px;
	}	
}


/*******************************************
featuresCarousel-section
*******************************************/
.featuresCarousel-section {
    padding-top: 30px;
    padding-bottom: 74px;
}
.featuresCarousel-section .uk-dotnav {
	display: flex;
	justify-content: space-between;
	margin-left: -10px;
	margin-bottom: 0;
	margin-top: 24px;
}
.featuresCarousel-section .uk-dotnav > * {
	flex: 1 1 0; 
	display: flex;
	justify-content: center;
	padding-left: 10px;
}
.featuresCarousel-section .uk-dotnav > * > * {
    display: block;
    width: 100%;
    height: 1px;
    background: #E5DFDD;
    border: 0;
}
.featuresCarousel-section .uk-dotnav>.uk-active>* {
    background: var(--secondary-color);
}
.featuresCarousel-section .subheading  {
    max-width: 610px;
}
.featuresCarousel-section h3 {
	font-size: 2.5rem;
	margin-top: 28px;
}
.featuresCarousel-section .media-container .uk-slidenav {
	top: var(--arrow-mid, 50%) !important;
	margin: 5px;
}


@media (min-width: 960px) {
	.featuresCarousel-section {
		padding-bottom: 124px;
	}    
    .featuresCarousel-section h3 {
        font-size: 3.125rem;
    }    
	.featuresCarousel-section .desc {
        padding-right: 40px;
	}
}




/*--------------------------------------------------------------
# Tab
--------------------------------------------------------------*/
.tab-sticky {
    background: var(--background-secondary);
    backdrop-filter: blur(10px);
    padding-top: 0;
    padding-bottom: 0;
}
.tab-switcher .tab-sticky .uk-tab>*>a {
    min-height: 60px;
}
.tab-switcher .uk-tab {
    margin-left: 0;
}
.tab-switcher .uk-tab::before {
    display: none;
}
.tab-switcher .uk-tab>* {
    padding-left: 0;
}
.tab-switcher .uk-tab>*>a {
    padding: 5px 10px;
    color: rgba(255, 255, 255, 0.5);
    font-size: .75rem;
    min-height: 108px;
    background: var(--background-secondary);
    font-size: 1.125rem;
    transition: color 0.4s ease;
}
.tab-switcher .uk-tab>.uk-active>a{
    background: var(--background-primary);
    border: 0;
}
.tab-switcher .uk-tab>*>a:hover {
    color: rgba(255, 255, 255, 1);    
}
.tab-switcher .uk-tab {
    position: relative;
    border-bottom: none;
	margin-bottom: 0;
}
.tab-switcher hr.main {
	margin-top: -1px;
	margin-bottom: 50px;
    z-index: 2;
    position: relative;
    border-top-color: var(--primary-color);
}
.tab-switcher hr {
    border-top-color: rgba(229, 223, 221, 0.47);
}
.tab-switcher .uk-tab li {
    position: relative;
	overflow: hidden;
}

.tab-switcher h2 {
    margin-bottom: 24px;
}
.tab-switcher p {
    margin-bottom: 24px;
}
.tab-switcher .uk-button {
    margin-top: 28px;
}

.tab-switcher .tab-sticky .uk-tab {
	margin-bottom: 0;
}

.tab-features {
    padding-top: 36px;
}

.tab-switcher .content-wrapper {
    padding-bottom: 60px;
}

.tabinfo-section h3 {
    letter-spacing: 0;
    font-size: 1.125rem;
}

@media (max-width: 960px) {	
    .tab-container .uk-container {
        padding: 0;
    }
}

@media (min-width: 960px) {	
	.tabinfo-section {
		padding-bottom: 80px;
	}
    .tab-switcher h2 {
        margin-bottom: 40px;
    }    
	.tab-switcher hr.main {
		margin-bottom: 50px;
	}
	.tab-switcher .content-wrapper {
		padding-right: 100px;
        padding-bottom: 90px;
	}	
}


/*--------------------------------------------------------------
# Slidenav
--------------------------------------------------------------*/
.slidenav-wrapper {
    gap: 0.0625em;
}
.slidenav-wrapper .slidenav {
    display: flex;
	width: calc(52px * var(--scale-factor));
	height: calc(52px * var(--scale-factor));      
    align-items: center;
    justify-content: center;
	border: 0;
    position: relative;
    color: #FFFFFF;
}
.slidenav-wrapper .slidenav svg  {
    z-index: 2;
}
.slidenav-wrapper .slidenav:hover  {
    color: var(--secondary-color);
}
.slidenav-wrapper .slidenav.uk-invisible {
    visibility: visible!important;
	pointer-events: none;
	cursor: default;
}
.slidenav-wrapper .slidenav:before {
    content: "";
    position: absolute;
    background: rgba(255, 255, 255, 1);
    backdrop-filter: blur(20px); 
    opacity: 0.5;
    height: 100%;
    width: 100%;
    transition: opacity 0.3s ease-out;   
}
.slidenav-wrapper .slidenav:hover:before {
    opacity: 1;
}
@media (min-width: 640px) {	
	.slidenav-wrapper .slidenav {
		width: calc(82px * var(--scale-factor));
		height: calc(82px * var(--scale-factor));
	}	
}


/*--------------------------------------------------------------
# info-section
--------------------------------------------------------------*/
.info-section .section-title {
    max-width: 1113px; 
    margin-top: 24px;
}
.info-section p {
     max-width: 670px;
     margin-top: 10px;    
}
.info-section .uk-button-text {
    margin-top: 15px;    
}
@media (min-width: 640px) {	
    .info-section p {
         margin-top: 47px;    
    }	
}

/*--------------------------------------------------------------
# carousel-section
--------------------------------------------------------------*/
.amenities-section-desktop {
    position: relative;
    padding-top: 34px;
}

@media (min-width: 640px) {
    .amenities-section-desktop {
        padding-right: 0;
    }    
}
@media (min-width: 960px) {
    .carousel-section {
        padding-top: 70px;
        padding-bottom: 54px;        
    }    
}
@media (min-width: 1200px) {
    .amenities-expand {
        overflow: hidden;
    } 
    .amenities-section-desktop {
        padding-top: 70px;
    }   
}


.custom-nav {
    pointer-events: auto;
    width: 48px;
    height: 48px;
    background: var(--background-secondary);
    cursor: pointer;
    position: relative;
    border: 0;
    outline: 0;
    transition: all .4s ease-out;	
}

@media (min-width: 960px) {
    .custom-nav {
        width: 82px;
        height: 82px;
    }
}


/* Pagination wrapper — flex makes bars equal-width */
.custom-pagination {
    display: flex;
    gap: 0;
    margin-top: 34px;
    margin-bottom: 8px;
    padding: 0;
}

.custom-pagination .custom-bar {
    position: relative;
    flex: 1;
    height: 1px;
    background: #E5DFDD;
    border-radius: 0;
    cursor: pointer;
    overflow: hidden; 
}

.custom-pagination .custom-bar::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--background-secondary);
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.35s ease;
}

.custom-pagination .custom-bar.is-active::before {
    transform: scaleX(1); 
}


/*--------------------------------------------------------------
# wellbeing-section
--------------------------------------------------------------*/
.wellness-section #slides {
    margin-top: 30px;
}
.wellness-section #slides .subtitle {
    font-size: 0.875rem;
}
.wellness-section .slidenav-wrapper .slidenav,
.wellness-section .slidenav-wrapper .slidenav:hover {
    color: #FFFFFF;
}
.wellness-section .slidenav-wrapper .slidenav:before {
    background: rgba(243, 239, 232, 1);
    backdrop-filter: blur(20px);
    opacity: 0.4;
}
.wellness-section .slidenav-wrapper .slidenav:hover {
    background: var(--secondary-color);
}
@media (min-width: 640px) {
    .wellness-section #slides {
        margin-top: 48px;
    }    
    .wellness-section #slides .subtitle {
        font-size: 1.125rem;
    }
}
@media (max-width: 640px) {  
    .wellness-section .uk-position-large {
        margin: 16px;
        --uk-position-margin-offset: 16px;
    }
}

/*--------------------------------------------------------------
# neighborhood-section
--------------------------------------------------------------*/
#theneighborhood .info-section p {
    max-width: 675px;
}
@media (min-width: 960px) {
    #theneighborhood  {
        padding-top: 84px;
    }
}

@media(max-width: 580px){
    .featuresCarousel-section h3 {
        font-size: 2rem;
    }
}