/*
GLOBAL VARIABLES
*/

:root {
  /* =================================================
   BRAND COLORS
  ================================================= */
  --surface-brand: #f4faff;
  --color-brand-primary: #2a1c30;
  --color-brand-secondary: #ffffff;
  --color-brand-soft: #eceaed;
  --color-brand-accent: #ffffff;
  --color-text-primary: #1d1d1d;
  --color-text-secondary: #6a5273;
  --color-text-accent1: #141414;
  --color-text-accent2: #ffffff;
  --color-text-subtle: #f5f5f5;
  --color-text-inverse: #ffffff;
  --color-text-base: #4e4e4e;
  --color-text-nav: #ffffff;
  --color-text-nav-interior: #4e4e4e;
  --color-text-nav-overlay: #4e4e4e;
  --color-text-ui: #fbf3f3;
  --color-header-bg: #3e2b45;
  --color-bg-page1: #ffffff;
  --color-bg-page2: #ffffff;
  --color-bg-footer1: #180f1d;
  --color-bg-footer2: #232323;
  --color-bg-footer3: #ffffff;
  --color-carousel-overlay: linear-gradient(rgb(0 0 0 / 10%) 0%, rgb(0 0 0 / 10%) 40% 40%, rgb(0 0 0 / 10%) 100%);

  /* =================================================
   GRAPHIC DEFAULTS MOBILE
  ================================================= */
  --bg-pos-x-mobile: right;
  --bg-pos-y-mobile: 0px;
  --bg-size-mobile: 100%;
  --bg-height-mobile: 2400px;
  --bg-opacity-mobile: .1;
  --bg-top-mobile: 0px;
  --bg-transform-mobile: scaleX(1);

  /* =================================================
   GRAPHIC DEFAULTS DESKTOP
  ================================================= */
  --bg-pos-x-desktop: 0px;
  --bg-pos-y-desktop: 0px;
  --bg-size-desktop: 80%;
  --bg-height-desktop: 1245px;
  --bg-opacity-desktop: .3;
  --bg-top-desktop: 0px;
  --bg-transform-desktop: scaleX(1);

  /* =================================================
   HERO
  ================================================= */
  --carousel-bg-image: url("/img/upload/hero.webp");
}


/*==================================================================================*/
/* Bg Images */
/*==================================================================================*/

.sb-bg-image1-row {
  background-image: url(/img/upload/000_custom_image19.jpg);
}

.sb-bg-image2-row {
  background-image: url(/img/upload/000_custom_image19.jpg);
}

.sb-bg-image3-row {
  background-image: url(/img/upload/000_custom_image19.jpg);
}
	 
.sb-bg-graphic1-row.sb-wrap:after {
  background-image: url(/img/upload/000_bg_marble12.jpg);
}

.sb-bg-graphic2-row.sb-wrap:after {
  background-image: url(/img/upload/000_bg_marble12.jpg);
}

#page-home .sb-feature-gallery-row,
#page-home .sb-gallery-row  {
  background: rgb(230 244 253);
}

#page-home .carousel-inner .item::after {
  background-image: none;
}


/*==================================================================================*/
/* Bg Overlays */
/*==================================================================================*/

.sb-bg-image1-row:before {
  background: rgb(255 255 255 / 0%);
  /* background: linear-gradient(270deg, rgb(0 0 0 / 0%) 25%, rgb(0 0 0 / 0%) 100%); */
}

@media (min-width: 949px) { 
.sb-bg-image1-row:before {
  background: rgb(255 255 255 / 0%);
  /* background: linear-gradient(346deg, rgb(112 32 102) 8%, rgb(0 0 0 / 0%) 45%); */
  }
}

.sb-bg-image2-row:before {
  background: rgb(255 255 255 / 0%);
  /* background: linear-gradient(270deg, rgb(0 0 0 / 0%) 25%, rgb(0 0 0 / 0%) 100%); */
}

@media (min-width: 949px) { 
.sb-bg-image2-row:before {
  background: rgb(255 255 255 / 0%);
  /* background: linear-gradient(346deg, rgb(112 32 102) 8%, rgb(0 0 0 / 0%) 45%); */
  }
}

.sb-bg-image3-row:before {
  background: rgb(255 255 255 / 0%);
  /* background: linear-gradient(270deg, rgb(0 0 0 / 0%) 25%, rgb(0 0 0 / 0%) 100%); */
}

@media (min-width: 949px) { 
.sb-bg-image3-row:before {
  background: rgb(255 255 255 / 0%);
  /* background: linear-gradient(346deg, rgb(112 32 102) 8%, rgb(0 0 0 / 0%) 45%); */
  }
}

/*==================================================================================*/
/* SET FONT FAMILY */
/*==================================================================================*/

/* Headings / Special Elements */
h1, h2, h4, h5, h6,
.content h1,
.content h2,
.content h4,
.content h5,
.content h6,
.logo #logotext,
.gallery-header,
.locations_list,
.header .nav,
.header .nav a,
.toolbar #logotext {
  font-family: 'Perfect Harmony', sans-serif;
}

body {
  --header-logo-height-desktop: 120px;
  --header-logo-height: 60px;
}

html.snapped body {
  --header-logo-height-desktop: 95px;
  --header-logo-height: 60px;
}

.site-header .site-nav > .nav-list > .nav-item > a {
  font-weight: 300;
  letter-spacing: 0px;
  font-size: 15px;
  padding: 0px 8px;
}
   

/* =========================================================
	  header custom
	  ========================================================= */
	
	/* Default: hide all CTAs */
	 .site-header .site-header__cta .btn-cta:not(.btn-ph),
	 .site-header .site-header__cta .tool-link--address {
	   display: none!important;
	 }
	  
/* =========================================================
	H1 ACCENT LINE — RAINBOW (CURVED)
 ========================================================= */
 
 .carousel h2::after,
 .content h1::after {   
   content: "";
   display: block; 
   position: relative;
   top: 10px;
   width: min(180px, 80%);
   height: 20px;
   margin-inline: 0;
   margin-bottom: 20px;
 
   background: no-repeat center / 100% 100%
   url("data:image/svg+xml,%3Csvg viewBox='0 0 200 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='0'%3E%3Cstop offset='0%25' stop-color='%232b8c7f'/%3E%3Cstop offset='25%25' stop-color='%237dbb4c'/%3E%3Cstop offset='50%25' stop-color='%23f4c430'/%3E%3Cstop offset='75%25' stop-color='%23e85d3f'/%3E%3Cstop offset='100%25' stop-color='%233c5665'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M0 10 Q100 5 200 10' stroke='url(%23g)' stroke-width='2' fill='none'/%3E%3C/svg%3E");
 }
 
 /* HOME OVERRIDE */
 #page-home .carousel h2::after,  
 #page-home .content h1::after { 
   margin-bottom: 40px;
 }
 
 /* DESKTOP */
 @media (min-width: 949px) { 
   .carousel h2::after,  
   .content h1::after {   
	 margin-bottom: 90px;
   }	 
 }
	 
.text-center h1::after {
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 949px) {
#page-home .content h3, 
#page-home .sb-embed h3 {
	font-size: 14px;
  letter-spacing: 4px;
  text-transform: uppercase;
}
}