/* ===== Hero/Header final harmonization v12 ===== */
body.home-page,
body{overflow-x:clip;}

.unified-topbar,
.container.topbar.unified-topbar{
  width:100vw !important;
  max-width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding-inline:clamp(14px,2.6vw,28px) !important;
}

.unified-topbar-inner{
  width:min(1380px, calc(100vw - 28px)) !important;
  max-width:1380px !important;
  margin-inline:auto !important;
}

.hero,
main > .hero,
main > .hero-section,
main > .hero-wrap,
main > .hero-slider{
  position:relative !important;
  width:100vw !important;
  max-width:100vw !important;
  min-width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding:0 !important;
  border-radius:0 !important;
  overflow:hidden !important;
  isolation:isolate;
}

.hero > .container,
.hero .container,
.hero .slides,
.hero .slide,
.hero .slide img,
.hero-overlay,
.hero-bg,
.hero-media{
  width:100% !important;
  max-width:100% !important;
  min-width:100% !important;
}

.hero .slide,
.hero .slide img{
  min-height:clamp(520px,72vh,780px) !important;
}

.hero .slide img{
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
}

.hero-overlay{
  background:linear-gradient(180deg, rgba(4,18,37,.10) 0%, rgba(4,18,37,.18) 100%) !important;
}

.hero-content{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  max-width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:clamp(18px,2.8vw,34px) !important;
  z-index:3 !important;
}

.hero-simple-shell,
.hero-simple-shell--compact{
  width:min(1380px, calc(100vw - 40px)) !important;
  max-width:1380px !important;
  min-height:clamp(430px,58vh,620px) !important;
  margin-inline:auto !important;
  padding:clamp(22px,3vw,40px) !important;
  border-radius:30px !important;
  background:linear-gradient(180deg, rgba(2,22,53,.76) 0%, rgba(3,24,55,.64) 100%) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  box-shadow:0 24px 60px rgba(2,14,33,.28) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.hero-simple-shell::before,
.hero-simple-shell--compact::before,
.hero-actions::before{
  display:none !important;
  content:none !important;
}

.hero-copy,
.hero-copy--compact,
.hero-copy.hero-copy--compact{
  width:min(100%, 1040px) !important;
  max-width:1040px !important;
  margin-inline:auto !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  gap:16px !important;
}

.hero-copy .tag,
.hero-copy--compact .tag{
  margin-inline:auto !important;
}

.hero-title,
.hero-copy h1,
.hero-copy--compact h1{
  max-width:18ch !important;
  margin:0 auto !important;
  font-size:clamp(2.4rem,5.2vw,5.8rem) !important;
  line-height:1.08 !important;
  letter-spacing:0 !important;
  text-wrap:balance;
}

.hero-actions{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex-wrap:wrap !important;
  gap:14px !important;
}

.hero-actions .btn,
.hero-actions a{
  min-width:178px !important;
  width:auto !important;
}

.controls,
.dots{z-index:4 !important;}

@media (max-width: 991.98px){
  .hero .slide,
  .hero .slide img{min-height:560px !important;}
  .hero-simple-shell,
  .hero-simple-shell--compact{
    width:calc(100vw - 28px) !important;
    min-height:auto !important;
    padding:24px !important;
    border-radius:24px !important;
  }
  .hero-title,
  .hero-copy h1,
  .hero-copy--compact h1{
    max-width:15ch !important;
    font-size:clamp(2.1rem,7vw,4rem) !important;
  }
}

@media (max-width: 767.98px){
  .unified-topbar,
  .container.topbar.unified-topbar{padding-inline:12px !important;}
  .unified-topbar-inner{width:calc(100vw - 24px) !important;}
  .hero .slide,
  .hero .slide img{min-height:510px !important;}
  .hero-content{padding:14px !important;}
  .hero-simple-shell,
  .hero-simple-shell--compact{
    width:calc(100vw - 24px) !important;
    padding:20px 16px !important;
    border-radius:22px !important;
  }
  .hero-title,
  .hero-copy h1,
  .hero-copy--compact h1{
    max-width:100% !important;
    font-size:clamp(1.9rem,9.2vw,3.3rem) !important;
    line-height:1.14 !important;
  }
  .hero-actions{display:grid !important; grid-template-columns:1fr 1fr; gap:10px !important;}
  .hero-actions .btn,
  .hero-actions a{min-width:0 !important; width:100% !important;}
}
