/*
GLOBAL VARIABLES
*/

:root {
  /* =================================================
   BRAND COLORS
  ================================================= */
  --surface-brand: #1d1d1d;
  --color-brand-primary: #1d1d1d;
  --color-brand-secondary: #6d6d6d;
  --color-brand-soft: #f2f5f8;
  --color-brand-accent: #191919;
  --color-text-primary: #1d1d1d;
  --color-text-secondary: #5a5a5a;
  --color-text-accent1: #141414;
  --color-text-accent2: #ffffff;
  --color-text-subtle: #424242;
  --color-text-inverse: #ffffff;
  --color-text-base: #4e4e4e;
  --color-text-nav: #1d1d1d;
  --color-text-nav-interior: #4e4e4e;
  --color-text-nav-overlay: #4e4e4e;
  --color-text-ui: #fbf3f3;
  --color-header-bg: rgb(255 255 255);
  --color-bg-page1: #fbfbfb;
  --color-bg-page2: #fbfbfb;
  --color-bg-footer1: #fafafa;
  --color-bg-footer2: #232323;
  --color-bg-footer3: #ffffff;
  --color-carousel-overlay: linear-gradient(rgb(0 0 0 / 30%) 0%, rgb(0 0 0 / 30%) 40% 40%, rgb(0 0 0 / 30%) 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: 35%;
  --bg-height-desktop: 1245px;
  --bg-opacity-desktop: .1;
  --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/pasadenaprosthodontics_hero3.webp);
}
     
html.is-live-site
:is(.has-space, .sb-row):has(.bg-graphic1)::after {
  background-image: url(/img/upload/pasadenaprosthodontics_graphic1.webp);
}

html.is-live-site
:is(.has-space, .sb-row):has(.bg-graphic2)::after {
  background-image: url(/img/upload/pasadenaprosthodontics_graphic1.webp);
}

#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: inherit;
  --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, h3, h5, h6,
.content h1,
.content h2,
.content h3,
.content h5,
.content h6 {
  font-family: ivypresto-display, serif;
}

body {
  --header-logo-height-desktop: 115px;
  --header-logo-height: 65px;
}

/* =========================================================
   Header Custom
========================================================= */

.site-header .site-nav > .nav-list > .nav-item > a {
    padding: 0px 4px;
    font-size: 19px;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: capitalize;
}

.site-header .site-header__cta .tool-link--address {
    display: none !important;
}

.site-header__top::before {
    background: #090909;
}

@media (min-width: 949px) {
    .site-header.has-topbar .site-header__top {
        min-height: 30px;
        padding: 15px 20px !important;
    }
}


/* =========================================================
   Button Adjustments
========================================================= */

a.btn,
.btn,
.carousel a {
    border-radius: 0;
    font-weight: 300;
}

.carousel a,
a.btn,
.btn,
.btn-cta {
    font-size: 13px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    border-radius: 2px;
    padding: 25px 30px!important;
    letter-spacing: 3px;
}

.carousel a,
a.btn,
.btn,
.btn-default,
a.btn.btn-default,
input.btn-default,
.footer .primary-link:last-child > a {
    background: #090909 !important;
    border-color: #090909 !important;
    color: #ffffff !important;
}


/* =========================================================
   One-Off Fixes
========================================================= */


/* Header overlay navigation */

#page-home .site-header .phone,
html:not(.snapped)
.site-header.has-header-overlay
.site-nav > .nav-list > .nav-item > a {
    color: #ffffff;
}

/* Carousel typography */

.carousel .item-content h2 {
    font-weight: 500;
}

.carousel .item-content h2 span {
    font-size: 95px !important;
}

@media (min-width: 949px) {
    .carousel .item-content h2 {
        font-size: 90px;
        font-weight: 400;
        line-height: 90px;
    }
}


/* Large carousel content spacing */

@media (min-width: 1281px) {
    .carousel-wrapper .pad-x-xl {
        padding-right: 175px !important;
        padding-left: 175px !important;
    }

    .carousel-wrapper .pad-r-xl {
        padding-right: 700px !important;
    }
}

/* Portfolio gallery */

@media (min-width: 949px) {

.feature-cards1.is-portfolio-gallery > div {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px !important;
}
}
 p:not(.is-p-lg), .site-nav .nav-item > a {
   font-size: 20px;
   font-family: "Cormorant Garamond", serif!important;
}

.testimonials-var1.is-p-lg p {
    font-size: 40px!important;
}

/* Hide desktop appointment navigation item */

@media (min-width: 1024px) {
    .site-nav .nav-item:has(> a[href="/appointments/"]) {
        display: none;
    }
}


.sb-bg-image3-row {
    background-size: 100%!important;
}


/* Apply only to body-copy containers */

html:is(
  .has-body-light,
  .has-body-regular,
  .has-body-strong
) :where(
.site-header__top,
  .item-content,
  .embed p:not(.is-p-lg),
  .embed ul,
  .content p,
  .content ul,
    .content ul,
    .sb-footer.modern *
) {
    font-family: 'Futura PT', sans-serif!important;
    color: #252525;
    font-size: 17px;
    line-height: 22px;
    font-weight: 300;
}

html:is(
  .has-body-light,
  .has-body-regular,
  .has-body-strong
) :where(
    .sb-footer.modern *, 
        .sb-footer.modern p,
) {
    font-family: 'Futura PT', sans-serif!important;
    color: #252525!important;
    font-size: 16px!important;
}


h3,
.site-header__top h3,
body :is(.content, .embed) h3 {
    font-family: ivypresto-display, serif!important;
}

.icon-rounded,
.icon-circle {
    flex: 0 0 auto;
    width: 46px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-brand-primary) !important;
    background: transparent;
    border: transparent;
    box-shadow: 0px!important;

}