/*
GLOBAL VARIABLES
*/

:root {
  /* =================================================
   BRAND COLORS
  ================================================= */
  --surface-brand: #0a6a3b;
  --color-brand-primary: #c9b771;
  --color-brand-secondary: #b47a15;
  --color-brand-soft: #f7f7f7;
  --color-brand-accent: #ffffff;
  --color-text-primary: #1d1d1d;
  --color-text-secondary: #b47a15;
  --color-text-accent1: #bfa53d;
  --color-text-accent2: #151515;
  --color-text-subtle: #fffcf1;
  --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: rgb(21 21 21);
  --color-bg-page1: #ffffff;
  --color-bg-page2: #ffffff;
  --color-bg-footer1: #fafafa;
  --color-bg-footer2: #232323;
  --color-bg-footer3: #ffffff;
  --color-carousel-overlay: linear-gradient(rgb(0 0 0 / 0%) 0%, rgb(0 0 0 / 0%) 40% 40%, rgb(0 0 0 / 0%) 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:after {
  background-image: url(/img/upload/000_bg_marble12.jpg);
}

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

#page-home .sb-feature-gallery-row,
#page-home .sb-gallery-row  {
  background: rgb(0 0 0 / 0%);
}

#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%); */
  }
}

/*==================================================================================*/
/* ACCENT ENGINE TOKENS  */
/*==================================================================================*/

:root {
  --heading-accent-content: "";
  --heading-accent-width: min(180px, 80%);
  --heading-accent-transform: none;
  --heading-accent-svg:
    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='%23d4af37'/%3E%3Cstop offset='35%25' stop-color='%23b68b2d'/%3E%3Cstop offset='70%25' stop-color='%23555555'/%3E%3Cstop offset='100%25' stop-color='%23000000'/%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");
}

/*==================================================================================*/
/* 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;
}

/*==================================================================================*/
/* THEME DESIGN TOKENS */
/*==================================================================================*/

:root {
  --h3-size: 14px;
  --h3-transform: uppercase;
  --h3-letter-spacing: 4px;
}

/*==================================================================================*/
/* LOGO */
/*==================================================================================*/

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

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

.tool-links a,
.site-header .site-nav > .nav-list > .nav-item > a {
  font-size: 14px;
  padding: 0px 10px;
  font-weight: 300;
  text-transform: uppercase;
}

/* LUX hero logo glow */

.hero-logo {
    position: relative;
    margin: 18px 0 10px;
    isolation: isolate;
}

.hero-logo::before {
    content: "";
    position: absolute;
    inset: 8% -10%;
    z-index: -1;
    border-radius: 50%;
    background: radial-gradient(
        ellipse at center,
        rgba(255, 255, 255, 0.52) 0%,
        rgba(255, 255, 255, 0.28) 38%,
        rgba(255, 210, 100, 0.10) 62%,
        rgba(255, 210, 100, 0) 78%
    );
    filter: blur(18px);
    transform: scale(1.08);
    pointer-events: none;
}


/* Slightly softer on mobile */

@media (max-width: 767px) {
    .hero-logo {
        margin: 14px 0 8px;
    }

    .hero-logo::before {
        inset: 10% -7%;
        filter: blur(14px);
    }

    .hero-logo img {
        width: min(275px, 78vw);
        filter:
            drop-shadow(0 0 5px rgba(255, 226, 145, 0.72))
            drop-shadow(0 0 13px rgba(222, 177, 70, 0.34))
            drop-shadow(0 6px 14px rgba(20, 25, 35, 0.16));
    }
}

.sb-footer.default {
    background-image:
        linear-gradient(
            to bottom,
            rgb(8 8 8 / 15%) 0%,
            rgb(8 8 8 / 45%) 55%,
            rgb(8 8 8 / 88%) 100%
        ),
        url(/img/upload/luxdental_custom_image1.jpg);

    background-size: cover;
    background-position: center right;
}