/*
GLOBAL VARIABLES
*/

:root {
  /* =================================================
   BRAND COLORS
  ================================================= */
  --surface-brand: #f2ebdf;
  --color-brand-primary: #131313;
  --color-brand-secondary: #173d5d;
  --color-brand-soft: #e8f5ff;
  --color-brand-accent: #173d5d;
  --color-text-primary: #1e1e1e;
  --color-text-secondary: #1a1a1a;
  --color-text-accent1: #949494;
  --color-text-accent2: #ffffff;
  --color-text-subtle: #575757;
  --color-text-inverse: #e9f5ff;
  --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: #ffffff;
  --color-bg-page1: #ffffff;
  --color-bg-page2: #ffffff;
  --color-bg-footer1: #ffffff;
  --color-bg-footer2: #232323;
  --color-bg-footer3: #f9f9f9;
  --color-carousel-overlay: linear-gradient(rgb(220 41 65) 0%, rgb(219 40 66) 40% 40%, rgb(220 40 65) 100%);

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

  /* =================================================
   GRAPHIC DEFAULTS — DESKTOP
  ================================================= */
  --bg-pos-x-desktop: 890px;
  --bg-pos-y-desktop: 0px;
  --bg-size-desktop: 40%;
  --bg-height-desktop: 1200px;
  --bg-opacity-desktop: .1;
  --bg-top-desktop: 90px;
  --bg-transform-desktop: scaleX(1);

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


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

.sb-bg-image1-row {
  background-image: none;
}

.sb-bg-image2-row {
  background-image: none;
}

.sb-bg-image3-row {
  background-image: none;
}
   
.sb-bg-graphic1-row.sb-wrap:after {
  background-image: none;
}

.sb-bg-graphic2-row.sb-wrap:after {
  background-image: none;
}

#page-home .sb-feature-gallery-row,
#page-home .sb-gallery-row  {
  background: none;
}

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


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

.sb-bg-image1-row:before {
  background: rgb(0 0 0 / 40%);
  /* 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(0 0 0 / 40%);
  /* background: linear-gradient(346deg, rgb(112 32 102) 8%, rgb(0 0 0 / 0%) 45%); */
  }
}

.sb-bg-image2-row:before {
  background: rgb(0 0 0 / 40%);
  /* 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(0 0 0 / 40%);
  /* background: linear-gradient(346deg, rgb(112 32 102) 8%, rgb(0 0 0 / 0%) 45%); */
  }
}

.sb-bg-image3-row:before {
  background: rgb(0 0 0 / 40%);
  /* 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(0 0 0 / 60%);
  /* 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: "helvetica-neue-lt-pro", sans-serif;
}

 body {
   --header-logo-height-desktop: 90px;
 }

.site-header .site-nav > .nav-list > .nav-item > a {
   font-weight: 600;
  font-size: 20px;
  padding: 20px;
 }

.gallery.var3 img.gallery-image {
    height: auto;
}

body#page-home .gallery.var3 .gallery-header h2 {
  font-weight: 400 !important;
  font-size: 1.1em !important;
  line-height: .8em !important;
  padding-bottom: 15px;
  text-align: center!important;
  font-family: "freightdispcmp-pro", serif;
  font-style: italic;
  letter-spacing: .01em !important;
}

:root {
--icon-xl: 475px;
}

@media (max-width:948px){
.gallery[class*="col"]{
  --grid-cols: 1;
}
}

@media (max-width:948px){
.has-icons.icon-xl img,
.has-icons.icon-lg img{
  width: 100%;
}
}

.carousel .carousel-inner .item::before {
  opacity: .9;
}


#header-logo img,
#header-logo svg {
  padding: 10px 0px;
  filter: brightness(0) invert(1);
}


/* =========================================================
   HERO + HEADER ANIMATION (UNIFIED)
========================================================= */

/* -------------------------
   HEADER BASE (hidden start)
------------------------- */

.site-header #logoimg,
.site-header .site-nav,
.site-header .nav-toggle {
  opacity: 0;
  transform: translateY(10px);
}

/* -------------------------
   HEADER ANIMATE IN
------------------------- */

#page-home .site-header #logoimg {
  animation: headerFadeUp 0.8s ease forwards;
  animation-delay: 0.2s;
}

#page-home .site-header .site-nav {
  animation: headerFadeUp 0.8s ease forwards;
  animation-delay: 0.35s;
}

#page-home .site-header .nav-toggle {
  animation: headerFadeUp 0.8s ease forwards;
  animation-delay: 0.35s;
}


/* -------------------------
   HERO LOGO (yours)
------------------------- */

.hero-logo {
  opacity: 0;
  transform: translateY(14px);
  animation: carouselFadeUp 0.8s ease forwards;
  animation-delay: 0.15s;
}


/* -------------------------
   HERO TEXT (yours)
------------------------- */

.carousel .item-content-inner > *:not(.hero-logo) {
  opacity: 0;
  transform: translateY(14px);
  animation: carouselFadeUp 0.8s ease forwards;
}

/* stagger */
.carousel .item-content-inner > *:nth-child(1) { animation-delay: 0.15s; }
.carousel .item-content-inner > *:nth-child(2) { animation-delay: 0.3s; }
.carousel .item-content-inner > *:nth-child(3) { animation-delay: 0.45s; }
.carousel .item-content-inner > *:nth-child(4) { animation-delay: 0.6s; }


/* -------------------------
   KEYFRAMES
------------------------- */

@keyframes carouselFadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes headerFadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


/* =========================================================
   HERO + HEADER (SYNCED, CLEAN)
========================================================= */

/* -------------------------
   INITIAL STATE
------------------------- */

#page-home .site-header #logoimg,
#page-home .site-header .site-nav,
#page-home .site-header .nav-toggle {
  opacity: 0;
  transform: translateY(8px);
}

/* -------------------------
   HEADER ENTRY (FAST + SUBTLE)
------------------------- */

#page-home .site-header #logoimg {
  animation: headerFadeUp 0.6s ease forwards;
  animation-delay: 0.15s;
}

#page-home .site-header .site-nav,
#page-home .site-header .nav-toggle {
  animation: headerFadeUp 0.6s ease forwards;
  animation-delay: 0.25s;
}

/* -------------------------
   HERO LOGO
------------------------- */

.hero-logo {
  opacity: 0;
  transform: translateY(14px);
  animation: carouselFadeUp 0.8s ease forwards;
  animation-delay: 0.2s;
}

/* -------------------------
   HERO TEXT
------------------------- */

.carousel .item-content-inner > *:not(.hero-logo) {
  opacity: 0;
  transform: translateY(14px);
  animation: carouselFadeUp 0.8s ease forwards;
}

/* stagger */
.carousel .item-content-inner > *:nth-child(1) { animation-delay: 0.2s; }
.carousel .item-content-inner > *:nth-child(2) { animation-delay: 0.35s; }
.carousel .item-content-inner > *:nth-child(3) { animation-delay: 0.5s; }
.carousel .item-content-inner > *:nth-child(4) { animation-delay: 0.65s; }

/* -------------------------
   KEYFRAMES
------------------------- */

@keyframes carouselFadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes headerFadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* transition */
.sb-wrap.sb-content-row {
  transition: background 0.5s ease, color 0.5s ease;
}

/* activated state */
.sb-wrap.sb-content-row.is-dark {
  background: #000;
  color: #fff;
}