.elementor-588 .elementor-element.elementor-element-bf686be{--display:flex;--min-height:600px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--border-radius:0px 0px 20px 20px;--margin-top:-107px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-588 .elementor-element.elementor-element-bf686be:not(.elementor-motion-effects-element-type-background), .elementor-588 .elementor-element.elementor-element-bf686be > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EB0029;}.elementor-588 .elementor-element.elementor-element-4e1243c{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--margin-top:0px;--margin-bottom:80px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-588 .elementor-element.elementor-element-7663ab0 .elementor-heading-title{font-family:"Manrope", Sans-serif;font-size:62px;font-weight:800;line-height:1.2em;letter-spacing:-2px;color:#FFFFFF;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-588 .elementor-element.elementor-element-93765dd img{width:340px;}.elementor-588 .elementor-element.elementor-element-2f16a42{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:-15em;--margin-bottom:0em;--margin-left:0em;--margin-right:0em;--padding-top:0px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-588 .elementor-element.elementor-element-31e4f11{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--border-radius:20px 20px 20px 20px;box-shadow:0px 100px 100px 0px rgba(72.00000000000001, 194.00000000000009, 223.99999999999997, 0.08);--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}.elementor-588 .elementor-element.elementor-element-31e4f11:not(.elementor-motion-effects-element-type-background), .elementor-588 .elementor-element.elementor-element-31e4f11 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-588 .elementor-element.elementor-element-449b94b{--display:grid;--e-con-grid-template-columns:repeat(4, 1fr);--e-con-grid-template-rows:repeat(4, 1fr);--gap:40px 60px;--row-gap:40px;--column-gap:60px;--grid-auto-flow:row;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:1366px){.elementor-588 .elementor-element.elementor-element-7663ab0 .elementor-heading-title{font-size:56px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-588 .elementor-element.elementor-element-31e4f11{--margin-top:0px;--margin-bottom:0px;--margin-left:20px;--margin-right:20px;}.elementor-588 .elementor-element.elementor-element-449b94b{--grid-auto-flow:row;}}@media(max-width:1024px){.elementor-588 .elementor-element.elementor-element-4e1243c{--margin-top:0px;--margin-bottom:160px;--margin-left:0px;--margin-right:0px;}.elementor-588 .elementor-element.elementor-element-7663ab0 .elementor-heading-title{font-size:46px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-588 .elementor-element.elementor-element-93765dd img{width:220px;}.elementor-588 .elementor-element.elementor-element-2f16a42{--margin-top:-17em;--margin-bottom:0em;--margin-left:0em;--margin-right:0em;}.elementor-588 .elementor-element.elementor-element-31e4f11{--margin-top:0px;--margin-bottom:0px;--margin-left:20px;--margin-right:20px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-588 .elementor-element.elementor-element-449b94b{--gap:20px 20px;--row-gap:20px;--column-gap:20px;--grid-auto-flow:row;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(max-width:767px){.elementor-588 .elementor-element.elementor-element-bf686be{--padding-top:0px;--padding-bottom:20px;--padding-left:10px;--padding-right:10px;}.elementor-588 .elementor-element.elementor-element-4e1243c{--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-588 .elementor-element.elementor-element-7663ab0 .elementor-heading-title{font-size:32px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-588 .elementor-element.elementor-element-93765dd img{width:160px;}.elementor-588 .elementor-element.elementor-element-2f16a42{--margin-top:-20em;--margin-bottom:0em;--margin-left:0em;--margin-right:0em;--padding-top:20px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}.elementor-588 .elementor-element.elementor-element-31e4f11{--gap:30px 30px;--row-gap:30px;--column-gap:30px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:10px;--padding-right:10px;}.elementor-588 .elementor-element.elementor-element-449b94b{--e-con-grid-template-columns:repeat(2, 1fr);--gap:20px 10px;--row-gap:20px;--column-gap:10px;--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}/* Start custom CSS for container, class: .elementor-element-bf686be *//* ---------- VARIABLES ---------- */
#hero {
  /* Optional: define once, reuse */
  --hero-img: url('YOUR-IMAGE-URL');
  --gold: #c79a00;

  /* Typography (desktop defaults) */
  --h1-size: 90px;
  --h1-line: 100px;
  --h1-ls: -0.04em; /* -4% ~ -0.04em */
  --eyebrow-size: 18px;
  --eyebrow-line: 19px;

  position: relative;
  overflow: hidden;
  background-size: cover;
  background-position: center;
}

/* ---------- EYEBROW (TOP-LEFT) ---------- */
#hero .hero-eyebrow {
  position: absolute;
  top: 40px;
  left: 40px;
  z-index: 5;
  font-family: 'Montserrat', sans-serif;
  font-weight: 500; /* Medium */
  font-size: var(--eyebrow-size);
  line-height: var(--eyebrow-line);
  text-transform: uppercase;
  letter-spacing: 0;
  text-align: right; /* as you specified */
  color: #fff;
}

#hero .hero-eyebrow:after {
  content: "";
  display: block;
  width: 140px;
  height: 2px;
  background: #fff;
  margin-top: 8px;
  margin-left: auto; /* since text-align: right */
}

/* ---------- GOLD MASK ---------- */
#hero .hero-mask {
  position: absolute;
  inset: 0;
  background: var(--gold);
  z-index: 2;
  transition: opacity .8s ease;
}

/* ---------- PEEK WINDOW ---------- */
#hero .hero-window {
  position: absolute;
  width: 540px;
  height: 540px;
  border-radius: 48px;
  overflow: hidden;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;

  background-image: var(--hero-img);
  background-size: cover;
  background-position: center;
  transition: opacity .8s ease, transform .8s ease;
}

/* ---------- CONTENT ---------- */
#hero .hero-content {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  z-index: 4;
  transition: all .8s cubic-bezier(.19,1,.22,1);
  color: #fff;
}

#hero .hero-title {
  font-family: 'Tenor Sans', serif;
  font-weight: 400;
  font-size: var(--h1-size);
  line-height: var(--h1-line);
  letter-spacing: var(--h1-ls);
  margin: 0;
}

/* CTA — starts off-canvas to the right */
#hero .hero-cta {
  position: absolute;
  right: -25%;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  pointer-events: none;
  transition:
    right .8s cubic-bezier(.19,1,.22,1),
    opacity .4s ease .2s;
}

/* -------------- HOVER / OPEN STATE -------------- */
/* Desktop hover */
#hero:hover .hero-mask,
#hero.is-open .hero-mask {
  opacity: 0;
}

#hero:hover .hero-window,
#hero.is-open .hero-window {
  opacity: 0;
  transform: translate(-50%, -50%) scale(1.05);
}

#hero:hover .hero-content,
#hero.is-open .hero-content {
  left: 6%;
  top: 50%;
  transform: translate(0, -50%);
  text-align: left;
}

/* Button slides in from right */
#hero:hover .hero-cta,
#hero.is-open .hero-cta {
  right: 6%;
  opacity: 1;
  pointer-events: auto;
}

/* -------------- RESPONSIVE -------------- */
@media (max-width: 1200px) {
  #hero .hero-window {
    width: 440px;
    height: 440px;
    border-radius: 40px;
  }
  #hero .hero-title {
    font-size: 72px;
    line-height: 82px;
  }
}

@media (max-width: 1024px) {
  #hero .hero-window {
    width: 380px;
    height: 380px;
    border-radius: 32px;
  }
  #hero .hero-title {
    font-size: 58px;
    line-height: 66px;
  }
  #hero .hero-cta {
    right: -40%;
  }
}

@media (max-width: 767px) {
  /* On mobile we’ll force the "open" state via JS.
     These values are what it will look like once opened. */
  #hero .hero-title {
    font-size: 42px;
    line-height: 48px;
    letter-spacing: -0.02em;
  }
  #hero .hero-eyebrow {
    top: 20px;
    left: 20px;
    font-size: 14px;
    line-height: 16px;
  }
}/* End custom CSS */