/* AD1 Elementor Widgets 0.11.8 — fixed-copy hero image slider. */
.ad1ew-hero {
  --ad1-hero-copy: 43%;
  --ad1-hero-fade-color: #080a0b;
  --ad1-hero-side-fade: 16%;
  --ad1-hero-bottom-fade: 38%;
  --ad1-hero-image-fit: cover;
  --ad1-hero-image-opacity: 1;
  --ad1-hero-image-blur: 0px;
  --ad1-hero-fade-clear: transparent;
  --ad1-hero-fade-stop: 72%;
  --ad1-hero-linear-angle: 90deg;
  --ad1-hero-radial-x: 100%;
  --ad1-hero-radial-y: 0%;
  --ad1-hero-radial-width: 118%;
  --ad1-hero-radial-height: 132%;
  --ad1-nav-active: var(--e-global-color-accent, #971d1e);
  position: relative;
  min-height: 82vh;
  display: grid;
  grid-template-columns: minmax(0, var(--ad1-hero-copy)) minmax(0, 1fr);
  overflow: clip;
  box-sizing: border-box;
  color:var(--ad1-color-text-light,#f7f3ef);
  background: var(--ad1-hero-fade-color);
  isolation: isolate;
}

.ad1ew-hero *,
.ad1ew-hero *::before,
.ad1ew-hero *::after {
  box-sizing: inherit;
}

.ad1ew-hero--text-right {
  --ad1-hero-linear-angle: 270deg;
  --ad1-hero-radial-x: 0%;
  grid-template-columns: minmax(0, 1fr) minmax(0, var(--ad1-hero-copy));
}

.ad1ew-hero--light {
  --ad1-hero-fade-color: var(--ad1-color-background-light, #f6f2ef);
  color: var(--ad1-color-text-dark, var(--e-global-color-primary, #131213));
}

.ad1ew-hero__content {
  position: relative;
  z-index: 4;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(44px, 6vw, 94px);
  background: var(--ad1-hero-fade-color);
}

.ad1ew-hero--text-right .ad1ew-hero__content {
  grid-column: 2;
}

.ad1ew-hero .ad1ew-eyebrow {
  margin: 0 0 16px;
  color: var(--e-global-color-accent, #971d1e);
  
  
  
  
  
  text-transform: uppercase;
}

.ad1ew-hero .ad1ew-title {
  max-width: 15ch;
  margin: 0 0 clamp(20px, 2.5vw, 34px);
  color: inherit;
  
  
  
  
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: manual;
}

.ad1ew-hero .ad1ew-title__accent {
  color: var(--ad1-widget-accent, var(--e-global-color-accent, #971d1e));
}

.ad1ew-hero .ad1ew-copy,
.ad1ew-hero .ad1ew-copy :where(p,li) {
  max-width: 56ch;
  color: color-mix(in srgb, currentColor 76%, transparent);
  
  
}

.ad1ew-hero .ad1ew-copy > :last-child {
  margin-bottom: 0;
}

.ad1ew-hero .ad1ew-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 24px;
  margin-top: 30px;
}

.ad1ew-hero .ad1ew-btn,
.ad1ew-hero .ad1ew-link {
  min-height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  
  text-decoration: none;
}

.ad1ew-hero .ad1ew-btn {
  padding: 13px 22px;
  color:var(--ad1-color-text-light,#fff);
  background: var(--e-global-color-accent, #971d1e);
  border: 1px solid var(--e-global-color-accent, #971d1e);
  transition: color .2s ease, background-color .2s ease, border-color .2s ease;
}

.ad1ew-hero .ad1ew-btn:hover,
.ad1ew-hero .ad1ew-btn:focus-visible {
  color: var(--e-global-color-accent, #971d1e);
  background: transparent;
  outline: none;
}

.ad1ew-hero .ad1ew-link {
  color: inherit;
  border-bottom: 1px solid color-mix(in srgb, currentColor 36%, transparent);
}

.ad1ew-hero__viewport {
  position: relative;
  z-index: 1;
  min-width: 0;
  min-height: inherit;
  overflow: hidden;
  background: var(--ad1-hero-fade-color);
}

.ad1ew-hero--text-right .ad1ew-hero__viewport {
  grid-column: 1;
  grid-row: 1;
}

.ad1ew-hero__slide {
  position: absolute;
  inset: 0;
  margin: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity .7s ease, visibility .7s ease;
}

.ad1ew-hero__slide.is-active {
  opacity: var(--ad1-hero-image-opacity);
  visibility: visible;
}

.ad1ew-hero__slide picture,
.ad1ew-hero__slide img {
  width: 100%;
  height: 100%;
  display: block;
}

.ad1ew-hero__slide img {
  object-fit: var(--ad1-hero-image-fit);
  object-position: var(--ad1-image-position, center center);
  filter: blur(var(--ad1-hero-image-blur));
}

.ad1ew-hero__fade {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.ad1ew-hero--fade-none .ad1ew-hero__fade { display: none; }

.ad1ew-hero--fade-linear .ad1ew-hero__fade {
  background: linear-gradient(
    var(--ad1-hero-linear-angle),
    var(--ad1-hero-fade-color) 0%,
    color-mix(in srgb, var(--ad1-hero-fade-color) 78%, var(--ad1-hero-fade-clear)) 24%,
    color-mix(in srgb, var(--ad1-hero-fade-color) 28%, var(--ad1-hero-fade-clear)) 48%,
    var(--ad1-hero-fade-clear) var(--ad1-hero-fade-stop)
  );
}

.ad1ew-hero--fade-radial .ad1ew-hero__fade {
  background: radial-gradient(
    ellipse var(--ad1-hero-radial-width) var(--ad1-hero-radial-height) at var(--ad1-hero-radial-x) var(--ad1-hero-radial-y),
    var(--ad1-hero-fade-clear) 0 44%,
    color-mix(in srgb, var(--ad1-hero-fade-color) 12%, var(--ad1-hero-fade-clear)) 56%,
    color-mix(in srgb, var(--ad1-hero-fade-color) 48%, var(--ad1-hero-fade-clear)) 72%,
    color-mix(in srgb, var(--ad1-hero-fade-color) 88%, var(--ad1-hero-fade-clear)) 89%,
    var(--ad1-hero-fade-color) 100%
  );
}

.ad1ew-hero__controls {
  position: absolute;
  right: clamp(20px, 3vw, 46px);
  bottom: clamp(20px, 3vw, 42px);
  z-index: 5;
  display: flex;
  align-items: center;
  gap: 12px;
  color:var(--ad1-color-text-light,#fff);
  
}

.ad1ew-hero--text-right .ad1ew-hero__controls {
  right: auto;
  left: clamp(20px, 3vw, 46px);
}

.ad1ew-hero--light .ad1ew-hero__controls {
  color: var(--ad1-color-text-dark, #131213);
}

.ad1ew-slider-nav__progress {
  width: 76px;
  height: 2px;
  overflow: hidden;
  background: color-mix(in srgb, currentColor 28%, transparent);
}

.ad1ew-slider-nav__progress > span {
  width: 0;
  height: 100%;
  display: block;
  background: var(--ad1-nav-active);
}

.ad1ew-hero__pagination {
  display: inline-flex;
  gap: 6px;
}

.ad1ew-hero__dot {
  width: 9px;
  height: 9px;
  padding: 0;
  border: 1px solid currentColor;
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
}

.ad1ew-hero__dot.is-active {
  background: var(--ad1-nav-active);
  border-color: var(--ad1-nav-active);
}

@media (max-width: 1024px) {
  .ad1ew-hero {
    --ad1-hero-copy: 48%;
  }
}

@media (max-width: 767px) {
  .ad1ew-hero,
  .ad1ew-hero--text-right {
    display: flex;
    flex-direction: column;
    min-height: 0;
  }

  .ad1ew-hero__viewport,
  .ad1ew-hero--text-right .ad1ew-hero__viewport {
    order: 1;
    width: 100%;
    min-height: 50vh;
    grid-column: auto;
  }

  .ad1ew-hero__content,
  .ad1ew-hero--text-right .ad1ew-hero__content {
    order: 2;
    width: 100%;
    padding: 34px 22px 42px;
    grid-column: auto;
  }

  .ad1ew-hero__slide img {
    object-position: var(--ad1-mobile-image-position, var(--ad1-image-position, center center));
  }

  .ad1ew-hero {
    --ad1-hero-linear-angle: 180deg;
    --ad1-hero-radial-x: 50%;
    --ad1-hero-radial-y: 0%;
    --ad1-hero-radial-width: 118%;
    --ad1-hero-radial-height: 100%;
  }

  .ad1ew-hero--fade-linear .ad1ew-hero__fade,
  .ad1ew-hero--text-right.ad1ew-hero--fade-linear .ad1ew-hero__fade {
    background: linear-gradient(
      var(--ad1-hero-linear-angle),
      var(--ad1-hero-fade-clear) 0 42%,
      color-mix(in srgb, var(--ad1-hero-fade-color) 72%, var(--ad1-hero-fade-clear)) 78%,
      var(--ad1-hero-fade-color) 100%
    );
  }

  .ad1ew-hero--fade-radial .ad1ew-hero__fade,
  .ad1ew-hero--text-right.ad1ew-hero--fade-radial .ad1ew-hero__fade {
    background: radial-gradient(
      ellipse var(--ad1-hero-radial-width) var(--ad1-hero-radial-height) at var(--ad1-hero-radial-x) var(--ad1-hero-radial-y),
      var(--ad1-hero-fade-clear) 0 48%,
      color-mix(in srgb, var(--ad1-hero-fade-color) 22%, var(--ad1-hero-fade-clear)) 66%,
      color-mix(in srgb, var(--ad1-hero-fade-color) 82%, var(--ad1-hero-fade-clear)) 88%,
      var(--ad1-hero-fade-color) 100%
    );
  }

  .ad1ew-hero .ad1ew-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .ad1ew-hero .ad1ew-btn,
  .ad1ew-hero .ad1ew-link {
    width: 100%;
    justify-content: space-between;
  }

  .ad1ew-hero__controls,
  .ad1ew-hero--text-right .ad1ew-hero__controls {
    right: 18px;
    left: 18px;
    bottom: 18px;
    justify-content: flex-end;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ad1ew-hero__slide,
  .ad1ew-hero .ad1ew-btn {
    transition: none;
  }
}

.ad1ew-hero__microcopy{margin:14px 0 0;max-width:54ch;opacity:.76;}

.ad1ew-hero__semantic-title{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Stage 58 — Universal Hero Slider effective-metrics contract.
 * Elementor controls own variables; this component consumes them without breakpoint overrides
 * that make the controls appear ineffective. */
.ad1ew-hero {
  --ad1-hero-min-height: 82vh;
  --ad1-hero-media-height: var(--ad1-hero-min-height);
  min-height: var(--ad1-hero-min-height);
}
.ad1ew-hero__viewport { min-height: var(--ad1-hero-media-height); }
.ad1ew-hero--fade-linear .ad1ew-hero__fade {
  background:
    linear-gradient(to bottom,
      transparent 0 calc(100% - var(--ad1-hero-bottom-fade)),
      color-mix(in srgb, var(--ad1-hero-fade-color) 24%, transparent) 88%,
      var(--ad1-hero-fade-color) 100%),
    linear-gradient(var(--ad1-hero-linear-angle),
      var(--ad1-hero-fade-color) 0%,
      color-mix(in srgb, var(--ad1-hero-fade-color) 76%, transparent) 8%,
      color-mix(in srgb, var(--ad1-hero-fade-color) 30%, transparent) var(--ad1-hero-side-fade),
      var(--ad1-hero-fade-clear) var(--ad1-hero-fade-stop));
}
.ad1ew-hero--fade-radial .ad1ew-hero__fade {
  background:
    linear-gradient(to bottom,
      transparent 0 calc(100% - var(--ad1-hero-bottom-fade)),
      color-mix(in srgb, var(--ad1-hero-fade-color) 26%, transparent) 88%,
      var(--ad1-hero-fade-color) 100%),
    radial-gradient(ellipse var(--ad1-hero-radial-width) var(--ad1-hero-radial-height) at var(--ad1-hero-radial-x) var(--ad1-hero-radial-y),
      var(--ad1-hero-fade-clear) 0 42%,
      color-mix(in srgb, var(--ad1-hero-fade-color) 12%, transparent) 54%,
      color-mix(in srgb, var(--ad1-hero-fade-color) 46%, transparent) 72%,
      color-mix(in srgb, var(--ad1-hero-fade-color) 86%, transparent) 90%,
      var(--ad1-hero-fade-color) 100%);
}
@media (max-width: 767px) {
  .ad1ew-hero,
  .ad1ew-hero--text-right {
    min-height: var(--ad1-hero-min-height, 0);
  }
  .ad1ew-hero__viewport,
  .ad1ew-hero--text-right .ad1ew-hero__viewport {
    min-height: var(--ad1-hero-media-height, clamp(280px, 74vw, 430px));
  }
  .ad1ew-hero--fade-linear .ad1ew-hero__fade,
  .ad1ew-hero--text-right.ad1ew-hero--fade-linear .ad1ew-hero__fade {
    background: linear-gradient(
      var(--ad1-hero-linear-angle),
      var(--ad1-hero-fade-clear) 0 42%,
      color-mix(in srgb, var(--ad1-hero-fade-color) 24%, transparent) calc(100% - var(--ad1-hero-bottom-fade)),
      color-mix(in srgb, var(--ad1-hero-fade-color) 78%, transparent) 90%,
      var(--ad1-hero-fade-color) 100%
    );
  }
  .ad1ew-hero--fade-radial .ad1ew-hero__fade,
  .ad1ew-hero--text-right.ad1ew-hero--fade-radial .ad1ew-hero__fade {
    background:
      linear-gradient(to bottom,
        transparent 0 calc(100% - var(--ad1-hero-bottom-fade)),
        color-mix(in srgb, var(--ad1-hero-fade-color) 24%, transparent) 82%,
        color-mix(in srgb, var(--ad1-hero-fade-color) 78%, transparent) 92%,
        var(--ad1-hero-fade-color) 100%),
      radial-gradient(ellipse var(--ad1-hero-radial-width) var(--ad1-hero-radial-height) at var(--ad1-hero-radial-x) var(--ad1-hero-radial-y),
        var(--ad1-hero-fade-clear) 0 46%,
        color-mix(in srgb, var(--ad1-hero-fade-color) 18%, transparent) 62%,
        color-mix(in srgb, var(--ad1-hero-fade-color) 68%, transparent) 84%,
        var(--ad1-hero-fade-color) 100%);
  }
}


/* Stage 73 — Universal Hero Slider separate Tablet/Mobile composition.
 * Responsive Elementor controls still own the height variables. */
@media(max-width:1024px){
  .ad1ew-hero,.ad1ew-hero__content,.ad1ew-hero__viewport{min-width:0;max-width:100%}
}
@media(max-width:767px){
  .ad1ew-hero,.ad1ew-hero--text-right{display:flex;flex-direction:column;min-height:var(--ad1-hero-min-height,0);width:100%;max-width:100%}
  .ad1ew-hero__viewport,.ad1ew-hero--text-right .ad1ew-hero__viewport{order:1;width:100%;height:var(--ad1-hero-media-height,clamp(17.5rem,74vw,26.875rem));min-height:var(--ad1-hero-media-height,clamp(17.5rem,74vw,26.875rem));flex:0 0 var(--ad1-hero-media-height,clamp(17.5rem,74vw,26.875rem))}
  .ad1ew-hero__content,.ad1ew-hero--text-right .ad1ew-hero__content{order:2;width:100%;min-width:0;max-width:100%;padding-inline:clamp(1rem,5vw,1.5rem)}
  .ad1ew-hero .ad1ew-title,.ad1ew-hero .ad1ew-copy{max-width:100%;overflow-wrap:normal;word-break:normal;hyphens:none}
  .ad1ew-hero .ad1ew-actions{width:100%;min-width:0}
  .ad1ew-hero .ad1ew-btn,.ad1ew-hero .ad1ew-link{width:100%;min-width:0}
}
