/* ==========================================================================
   Arbuda Engineering — Hero Section & Parallax Viewport Styles
   ========================================================================== */

/* --------------------------------------------------------------------------
   Root: Scroll-based parallax container
   height: 350vh mobile / 500vh desktop
   margin-bottom: -100vh (so next section overlaps)
   -------------------------------------------------------------------------- */
.hero {
  position: relative;
  height: 350vh;
  margin-bottom: -100vh;
  --hero-reveal-up: 12vh;
}

.hero:first-child {
  margin-top: calc(var(--header-h-mobile) * -1);
}

@media (min-width: 1200px) {
  .hero {
    height: 500vh;
  }

  .hero:first-child {
    margin-top: calc(var(--header-h-desktop) * -1);
  }
}

/* --------------------------------------------------------------------------
   Sticky viewport: the visual frame that stays in place while scroll runs
   -------------------------------------------------------------------------- */
.hero__top {
  position: sticky;
  top: 0;
  height: 100vh;
  overflow: hidden;
}

/* --------------------------------------------------------------------------
   Background group: holds all visual layers
   -------------------------------------------------------------------------- */
.hero__bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

/* --------------------------------------------------------------------------
   Sky / Back image — full-cover background
   -------------------------------------------------------------------------- */
.hero__back {
  position: absolute;
  inset: 0;
}

.hero__back img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

/* --------------------------------------------------------------------------
   House / Building image
   Source: position: absolute; top: 60vh; height: 33.4rem mobile / 170.8rem desktop
   -------------------------------------------------------------------------- */
.hero__house {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 48vh;
  z-index: 3;
  pointer-events: none;
  transform-origin: bottom center;
}

.hero__house img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: bottom center;
}

@media (min-width: 1200px) {
  .hero__house {
    top: 30vh;
    bottom: auto;
    height: 130.8rem;
  }
}

/* --------------------------------------------------------------------------
   Arbuda Engineering Composite layer — house masked through Arbuda logo
   Appears as scroll progresses (opacity driven by JS)
   -------------------------------------------------------------------------- */
.hero__composite {
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  opacity: 0;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1060 270' fill-rule='evenodd'%3E%3Cg transform='translate(30, 24)'%3E%3Cpath fill='%23000' d='M103.9,19.3 L118.4,19.3 L135.3,33.8 L195.7,123.2 L79.7,123.2 L96.6,99.0 L137.7,99.0 L140.1,96.6 L113.5,58.0 L99.0,70.0 L62.8,123.2 L26.6,123.2 L91.8,29.0 L101.4,21.7 Z M888.9,19.3 L903.4,19.3 L915.5,29.0 L980.7,123.2 L971.0,125.6 L968.6,123.2 L963.8,125.6 L876.8,125.6 L874.4,123.2 L862.3,123.2 L881.6,99.0 L920.3,99.0 L922.7,96.6 L920.3,89.4 L896.1,58.0 L886.5,65.2 L845.4,123.2 L809.2,123.2 L874.4,31.4 L886.5,21.7 Z M231.9,21.7 L316.4,21.7 L343.0,33.8 L350.2,43.5 L352.7,65.2 L343.0,82.1 L326.1,91.8 L355.1,123.2 L314.0,123.2 L292.3,96.6 L244.0,96.6 L241.5,99.0 L241.5,123.2 L210.1,123.2 L210.1,74.9 L212.6,72.5 L309.2,72.5 L321.3,62.8 L318.8,53.1 L306.8,45.9 L212.6,45.9 L229.5,24.2 Z M393.7,21.7 L478.3,21.7 L495.2,29.0 L504.8,45.9 L502.4,60.4 L492.8,70.0 L502.4,79.7 L507.2,91.8 L502.4,111.1 L485.5,123.2 L374.4,123.2 L372.0,113.5 L372.0,65.2 L374.4,62.8 L468.6,62.8 L475.8,55.6 L471.0,48.3 L463.8,45.9 L374.4,45.9 L391.3,24.2 Z M524.2,21.7 L553.1,21.7 L553.1,87.0 L560.4,96.6 L572.5,101.4 L611.1,101.4 L618.4,99.0 L628.0,89.4 L628.0,21.7 L659.4,21.7 L659.4,91.8 L657.0,99.0 L642.5,115.9 L615.9,125.6 L570.0,125.6 L550.7,120.8 L533.8,111.1 L524.2,94.2 L524.2,24.2 Z M700.5,21.7 L765.7,21.7 L782.6,26.6 L794.7,33.8 L804.3,43.5 L811.6,60.4 L811.6,84.5 L799.5,106.3 L787.4,115.9 L768.1,123.2 L695.7,123.2 L693.2,125.6 L681.2,123.2 L681.2,60.4 L710.1,60.4 L712.6,62.8 L710.1,72.5 L712.6,74.9 L712.6,96.6 L715.0,99.0 L760.9,99.0 L770.5,94.2 L780.2,84.5 L782.6,77.3 L780.2,62.8 L763.3,48.3 L753.6,45.9 L681.2,45.9 L698.1,24.2 Z M405.8,84.5 L403.4,87.0 L405.8,99.0 L471.0,99.0 L475.8,94.2 L475.8,89.4 L463.8,82.1 L408.2,82.1 Z M26.6,147.3 L65.2,147.3 L65.2,154.6 L38.6,157.0 L36.2,159.4 L38.6,169.1 L62.8,171.5 L62.8,178.7 L41.1,178.7 L36.2,183.6 L36.2,190.8 L38.6,193.2 L67.6,195.7 L67.6,200.5 L62.8,202.9 L26.6,202.9 L26.6,149.8 Z M118.4,147.3 L125.6,147.3 L152.2,178.7 L157.0,166.7 L157.0,147.3 L164.3,149.8 L164.3,200.5 L161.8,202.9 L157.0,202.9 L152.2,198.1 L130.4,169.1 L128.0,171.5 L128.0,200.5 L118.4,202.9 L115.9,200.5 L115.9,152.2 L118.4,149.8 Z M236.7,147.3 L253.6,147.3 L260.9,149.8 L263.3,154.6 L260.9,159.4 L236.7,157.0 L227.1,166.7 L227.1,183.6 L236.7,193.2 L248.8,195.7 L258.5,190.8 L258.5,183.6 L246.4,181.2 L246.4,171.5 L265.7,171.5 L268.1,173.9 L268.1,193.2 L260.9,200.5 L253.6,202.9 L234.3,202.9 L219.8,193.2 L215.0,181.2 L215.0,169.1 L219.8,159.4 L227.1,152.2 L234.3,149.8 Z M321.3,147.3 L328.5,147.3 L328.5,202.9 L318.8,200.5 L318.8,149.8 Z M381.6,147.3 L391.3,147.3 L401.0,161.8 L417.9,178.7 L420.3,176.3 L420.3,149.8 L430.0,147.3 L430.0,202.9 L422.7,202.9 L393.7,169.1 L391.3,171.5 L391.3,200.5 L386.5,202.9 L381.6,200.5 L381.6,149.8 Z M483.1,147.3 L521.7,147.3 L521.7,154.6 L516.9,157.0 L495.2,157.0 L492.8,159.4 L495.2,169.1 L519.3,171.5 L519.3,178.7 L495.2,178.7 L492.8,190.8 L495.2,193.2 L524.2,195.7 L521.7,202.9 L485.5,202.9 L483.1,200.5 L483.1,149.8 Z M574.9,147.3 L615.9,147.3 L615.9,154.6 L587.0,157.0 L584.5,159.4 L587.0,169.1 L611.1,171.5 L611.1,178.7 L587.0,178.7 L584.5,190.8 L608.7,195.7 L613.5,193.2 L615.9,195.7 L613.5,202.9 L574.9,202.9 L574.9,149.8 Z M666.7,147.3 L695.7,147.3 L707.7,154.6 L710.1,171.5 L698.1,183.6 L710.1,200.5 L700.5,202.9 L683.6,183.6 L681.2,186.0 L678.7,183.6 L673.9,188.4 L673.9,202.9 L664.3,200.5 L664.3,149.8 Z M763.3,147.3 L770.5,147.3 L770.5,188.4 L772.9,190.8 L770.5,202.9 L760.9,200.5 L760.9,149.8 Z M826.1,147.3 L835.7,149.8 L859.9,178.7 L862.3,176.3 L862.3,147.3 L872.0,147.3 L872.0,202.9 L864.7,202.9 L835.7,169.1 L833.3,171.5 L833.3,200.5 L830.9,202.9 L823.7,200.5 L823.7,149.8 Z M942.0,147.3 L961.4,147.3 L971.0,154.6 L966.2,159.4 L944.4,157.0 L934.8,166.7 L932.4,173.9 L934.8,183.6 L944.4,193.2 L954.1,195.7 L963.8,190.8 L963.8,183.6 L954.1,181.2 L951.7,173.9 L954.1,171.5 L973.4,171.5 L975.8,193.2 L961.4,202.9 L939.6,202.9 L927.5,193.2 L922.7,183.6 L922.7,166.7 L927.5,157.0 L939.6,149.8 Z M676.3,159.4 L673.9,169.1 L678.7,173.9 L683.6,176.3 L695.7,173.9 L700.5,169.1 L700.5,164.3 L693.2,157.0 L678.7,157.0 Z'/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1060 270' fill-rule='evenodd'%3E%3Cg transform='translate(30, 24)'%3E%3Cpath fill='%23000' d='M103.9,19.3 L118.4,19.3 L135.3,33.8 L195.7,123.2 L79.7,123.2 L96.6,99.0 L137.7,99.0 L140.1,96.6 L113.5,58.0 L99.0,70.0 L62.8,123.2 L26.6,123.2 L91.8,29.0 L101.4,21.7 Z M888.9,19.3 L903.4,19.3 L915.5,29.0 L980.7,123.2 L971.0,125.6 L968.6,123.2 L963.8,125.6 L876.8,125.6 L874.4,123.2 L862.3,123.2 L881.6,99.0 L920.3,99.0 L922.7,96.6 L920.3,89.4 L896.1,58.0 L886.5,65.2 L845.4,123.2 L809.2,123.2 L874.4,31.4 L886.5,21.7 Z M231.9,21.7 L316.4,21.7 L343.0,33.8 L350.2,43.5 L352.7,65.2 L343.0,82.1 L326.1,91.8 L355.1,123.2 L314.0,123.2 L292.3,96.6 L244.0,96.6 L241.5,99.0 L241.5,123.2 L210.1,123.2 L210.1,74.9 L212.6,72.5 L309.2,72.5 L321.3,62.8 L318.8,53.1 L306.8,45.9 L212.6,45.9 L229.5,24.2 Z M393.7,21.7 L478.3,21.7 L495.2,29.0 L504.8,45.9 L502.4,60.4 L492.8,70.0 L502.4,79.7 L507.2,91.8 L502.4,111.1 L485.5,123.2 L374.4,123.2 L372.0,113.5 L372.0,65.2 L374.4,62.8 L468.6,62.8 L475.8,55.6 L471.0,48.3 L463.8,45.9 L374.4,45.9 L391.3,24.2 Z M524.2,21.7 L553.1,21.7 L553.1,87.0 L560.4,96.6 L572.5,101.4 L611.1,101.4 L618.4,99.0 L628.0,89.4 L628.0,21.7 L659.4,21.7 L659.4,91.8 L657.0,99.0 L642.5,115.9 L615.9,125.6 L570.0,125.6 L550.7,120.8 L533.8,111.1 L524.2,94.2 L524.2,24.2 Z M700.5,21.7 L765.7,21.7 L782.6,26.6 L794.7,33.8 L804.3,43.5 L811.6,60.4 L811.6,84.5 L799.5,106.3 L787.4,115.9 L768.1,123.2 L695.7,123.2 L693.2,125.6 L681.2,123.2 L681.2,60.4 L710.1,60.4 L712.6,62.8 L710.1,72.5 L712.6,74.9 L712.6,96.6 L715.0,99.0 L760.9,99.0 L770.5,94.2 L780.2,84.5 L782.6,77.3 L780.2,62.8 L763.3,48.3 L753.6,45.9 L681.2,45.9 L698.1,24.2 Z M405.8,84.5 L403.4,87.0 L405.8,99.0 L471.0,99.0 L475.8,94.2 L475.8,89.4 L463.8,82.1 L408.2,82.1 Z M26.6,147.3 L65.2,147.3 L65.2,154.6 L38.6,157.0 L36.2,159.4 L38.6,169.1 L62.8,171.5 L62.8,178.7 L41.1,178.7 L36.2,183.6 L36.2,190.8 L38.6,193.2 L67.6,195.7 L67.6,200.5 L62.8,202.9 L26.6,202.9 L26.6,149.8 Z M118.4,147.3 L125.6,147.3 L152.2,178.7 L157.0,166.7 L157.0,147.3 L164.3,149.8 L164.3,200.5 L161.8,202.9 L157.0,202.9 L152.2,198.1 L130.4,169.1 L128.0,171.5 L128.0,200.5 L118.4,202.9 L115.9,200.5 L115.9,152.2 L118.4,149.8 Z M236.7,147.3 L253.6,147.3 L260.9,149.8 L263.3,154.6 L260.9,159.4 L236.7,157.0 L227.1,166.7 L227.1,183.6 L236.7,193.2 L248.8,195.7 L258.5,190.8 L258.5,183.6 L246.4,181.2 L246.4,171.5 L265.7,171.5 L268.1,173.9 L268.1,193.2 L260.9,200.5 L253.6,202.9 L234.3,202.9 L219.8,193.2 L215.0,181.2 L215.0,169.1 L219.8,159.4 L227.1,152.2 L234.3,149.8 Z M321.3,147.3 L328.5,147.3 L328.5,202.9 L318.8,200.5 L318.8,149.8 Z M381.6,147.3 L391.3,147.3 L401.0,161.8 L417.9,178.7 L420.3,176.3 L420.3,149.8 L430.0,147.3 L430.0,202.9 L422.7,202.9 L393.7,169.1 L391.3,171.5 L391.3,200.5 L386.5,202.9 L381.6,200.5 L381.6,149.8 Z M483.1,147.3 L521.7,147.3 L521.7,154.6 L516.9,157.0 L495.2,157.0 L492.8,159.4 L495.2,169.1 L519.3,171.5 L519.3,178.7 L495.2,178.7 L492.8,190.8 L495.2,193.2 L524.2,195.7 L521.7,202.9 L485.5,202.9 L483.1,200.5 L483.1,149.8 Z M574.9,147.3 L615.9,147.3 L615.9,154.6 L587.0,157.0 L584.5,159.4 L587.0,169.1 L611.1,171.5 L611.1,178.7 L587.0,178.7 L584.5,190.8 L608.7,195.7 L613.5,193.2 L615.9,195.7 L613.5,202.9 L574.9,202.9 L574.9,149.8 Z M666.7,147.3 L695.7,147.3 L707.7,154.6 L710.1,171.5 L698.1,183.6 L710.1,200.5 L700.5,202.9 L683.6,183.6 L681.2,186.0 L678.7,183.6 L673.9,188.4 L673.9,202.9 L664.3,200.5 L664.3,149.8 Z M763.3,147.3 L770.5,147.3 L770.5,188.4 L772.9,190.8 L770.5,202.9 L760.9,200.5 L760.9,149.8 Z M826.1,147.3 L835.7,149.8 L859.9,178.7 L862.3,176.3 L862.3,147.3 L872.0,147.3 L872.0,202.9 L864.7,202.9 L835.7,169.1 L833.3,171.5 L833.3,200.5 L830.9,202.9 L823.7,200.5 L823.7,149.8 Z M942.0,147.3 L961.4,147.3 L971.0,154.6 L966.2,159.4 L944.4,157.0 L934.8,166.7 L932.4,173.9 L934.8,183.6 L944.4,193.2 L954.1,195.7 L963.8,190.8 L963.8,183.6 L954.1,181.2 L951.7,173.9 L954.1,171.5 L973.4,171.5 L975.8,193.2 L961.4,202.9 L939.6,202.9 L927.5,193.2 L922.7,183.6 L922.7,166.7 L927.5,157.0 L939.6,149.8 Z M676.3,159.4 L673.9,169.1 L678.7,173.9 L683.6,176.3 L695.7,173.9 L700.5,169.1 L700.5,164.3 L693.2,157.0 L678.7,157.0 Z'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 33rem 8.4rem;
  mask-size: 33rem 8.4rem;
  -webkit-mask-position: center calc(50% - var(--hero-reveal-up));
  mask-position: center calc(50% - var(--hero-reveal-up));
}

@media (min-width: 1200px) {
  .hero__composite {
    -webkit-mask-size: 95.8rem 24.4rem;
    mask-size: 95.8rem 24.4rem;
    -webkit-mask-position: center calc(50% - var(--hero-reveal-up));
    mask-position: center calc(50% - var(--hero-reveal-up));
  }
}

.hero__composite .hero__house {
  bottom: 0;
}

@media (min-width: 1200px) {
  .hero__composite .hero__house {
    top: 30vh;
    bottom: auto;
    height: 130.8rem;
  }
}

/* --------------------------------------------------------------------------
   Clouds
   Source: .hero_cloud__TvA3o positions (px converted to rem)
   -------------------------------------------------------------------------- */
.hero__clouds {
  position: absolute;
  inset: 0;
  z-index: 5;
  pointer-events: none;
}

.hero__cloud {
  position: absolute;
  z-index: 5;
  will-change: transform;
}

.hero__cloud img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Left cloud */
.hero__cloud--left {
  top: 33.7rem;
  left: -57.2rem;
  width: 70.2rem;
  height: 29.8rem;
}

/* Right cloud */
.hero__cloud--right {
  top: 37.12rem;
  right: -41.2rem;
  width: 55.7rem;
  height: 23.6rem;
}

@media (min-width: 1200px) {
  .hero__cloud--left {
    top: 25%;
    left: -33.72rem;
    width: 112.4rem;
    height: 47.7rem;
  }

  .hero__cloud--right {
    top: 20%;
    right: -33.72rem;
    width: 93.6rem;
    height: 39.7rem;
  }
}

/* --------------------------------------------------------------------------
   Arbuda Engineering CAD Blueprint & Logo Outline
   -------------------------------------------------------------------------- */
.hero__logo {
  position: absolute;
  top: calc(50% - 4.2rem - var(--hero-reveal-up));
  left: calc(50% - 16.5rem);
  z-index: 4;
  width: 33rem;
  height: 8.4rem;
  opacity: 0;
  pointer-events: none;
  filter: drop-shadow(0 4px 18px rgba(0, 0, 0, 0.15));
}

.hero__logo svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}

.hero__logo path,
.hero__logo line,
.hero__logo rect {
  vector-effect: non-scaling-stroke;
}

@media (min-width: 1200px) {
  .hero__logo {
    top: calc(50% - 12.2rem - var(--hero-reveal-up));
    left: calc(50% - 47.9rem);
    width: 95.8rem;
    height: 24.4rem;
  }
}

/* --------------------------------------------------------------------------
   Smoke / fog overlay at bottom
   Source: .hero_smoke__8za_R
   height: 45rem mobile / 62rem desktop; z-index: 3
   .hero__top .hero_smoke = translateY(70%) (partially hidden, reveals on scroll)
   -------------------------------------------------------------------------- */
.hero__smoke {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 45rem;
  z-index: 3;
  pointer-events: none;
}

.hero__smoke img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}

/* The smoke inside hero__top starts partially hidden below */
.hero__top .hero__smoke {
  transform: translateY(70%);
  will-change: transform;
}

@media (min-width: 1200px) {
  .hero__smoke {
    height: 62rem;
  }
}

/* --------------------------------------------------------------------------
   Gradient overlay (white fade at bottom edge)
   Source: .hero_overlay__7ubgG
   -------------------------------------------------------------------------- */
.hero__overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 10rem;
  z-index: 3;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0), #fff);
  pointer-events: none;
}

@media (min-width: 1200px) {
  .hero__overlay {
    height: 30.9rem;
  }
}

/* --------------------------------------------------------------------------
   Hero Content (text + CTA, centered, above visuals)
   Source: .hero_content__DK_Ny
   -------------------------------------------------------------------------- */
.hero__content {
  position: relative;
  display: grid;
  align-items: center;
  height: 100%;
  padding-top: var(--header-h-mobile);
  padding-bottom: 24rem;
  z-index: 2;
  will-change: opacity, transform;
}

@media (min-width: 1200px) {
  .hero__content {
    padding-top: 0;
    padding-bottom: 22.8rem;
  }
}

/* Heading */
.hero__title h1 {
  font-family: 'Plus Jakarta Sans', var(--font-primary);
  font-weight: 800;
  font-size: clamp(4.5rem, 10.5vw, 5.8rem);
  line-height: 1.05;
  letter-spacing: -0.03em;
  text-align: center;
  color: var(--color-text);
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.hero__title-static {
  display: block;
  white-space: nowrap;
}

.hero__title-dynamic {
  display: inline-flex;
  align-items: baseline;
  justify-content: center;
  gap: 0.28em;
  white-space: nowrap;
}

.hero__rotator-prefix {
  display: inline;
}

/* Word Rotator Ticker Container */
.hero__rotator {
  position: relative;
  display: inline-flex;
  overflow: hidden;
  vertical-align: baseline;
  height: 1.15em;
  min-width: 6.8ch;
  text-align: left;
}

.hero__rotator-track {
  position: relative;
  display: inline-block;
  width: 100%;
}

.hero__word {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  transform: translateY(110%);
  filter: blur(4px);
  transition: transform 0.65s cubic-bezier(0.16, 1, 0.3, 1),
    opacity 0.5s cubic-bezier(0.16, 1, 0.3, 1),
    filter 0.5s ease;
  will-change: transform, opacity, filter;
  white-space: nowrap;
}

.hero__word.is-active {
  position: relative;
  opacity: 1;
  transform: translateY(0);
  filter: blur(0px);
}

.hero__word.is-exiting {
  position: absolute;
  opacity: 0;
  transform: translateY(-110%);
  filter: blur(4px);
}

@media (min-width: 768px) and (max-width: 1199px) {
  .hero__title h1 {
    font-size: clamp(5.6rem, 6.5vw, 7.2rem);
    line-height: 1.04;
    letter-spacing: -0.032em;
    flex-direction: column;
  }
}

@media (min-width: 1200px) {
  .hero__title h1 {
    font-size: clamp(7.4rem, 6.6vw, 13.8rem);
    line-height: 1;
    letter-spacing: -0.035em;
    flex-direction: row;
    gap: 0.28em;
    white-space: nowrap;
  }

  .hero__title-static {
    display: inline;
  }

  .hero__title-dynamic {
    display: inline-flex;
    gap: 0.25em;
  }
}

/* Subtext */
.hero__text {
  margin: 1.5rem 0 0;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.5;
  text-align: center;
  text-wrap: balance;
}

@media (min-width: 1200px) {
  .hero__text {
    margin: 2rem 0 0;
    font-size: 3.2rem;
    line-height: 1.3;
    letter-spacing: -0.01em;
  }
}

.hero__text {
  color: var(--color-text);
}

.hero__text .em {
  color: rgba(21, 23, 23, 0.5);
}

/* CTA Button row (Hidden on big screen >= 1200px, visible on mobile & tablet) */
.hero__actions {
  margin: 3rem 0 0;
  display: flex;
  justify-content: center;
}

@media (min-width: 1200px) {
  .hero__actions {
    display: none;
  }
}

/* --------------------------------------------------------------------------
   Overlap area — smoke + gradient, positioned below the sticky viewport
   to bridge the gap between hero and next section
   -------------------------------------------------------------------------- */
.hero__overlap {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 100vh;
  pointer-events: none;
}