/* The Lantern — front page hero repair v0.11
   Kept separate from site.css so future page patches cannot disturb the approved hero. */

.lantern-home-hero{
  position:relative;
  width:min(1680px,calc(100% - 48px));
  min-height:clamp(650px,74vh,790px);
  margin:28px auto 0;
  overflow:hidden;
  border:1px solid rgba(200,155,85,.16);
  border-radius:30px;
  background:#071018;
  isolation:isolate;
  box-shadow:0 30px 90px rgba(0,0,0,.22);
}

.lantern-home-hero__image{
  position:absolute;
  inset:0;
  z-index:-3;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
  filter:brightness(.70) saturate(.90) contrast(1.02);
  transform:scale(1.01);
}

.lantern-home-hero__shade{
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:
    linear-gradient(90deg,
      rgba(3,9,14,.97) 0%,
      rgba(3,9,14,.92) 18%,
      rgba(3,9,14,.78) 34%,
      rgba(3,9,14,.48) 51%,
      rgba(3,9,14,.16) 74%,
      rgba(3,9,14,.10) 100%),
    linear-gradient(180deg,
      rgba(4,10,15,.18) 0%,
      transparent 30%,
      transparent 72%,
      rgba(4,10,15,.32) 100%);
}

.lantern-home-hero__frame{
  position:absolute;
  inset:17px;
  z-index:2;
  pointer-events:none;
  border:1px solid rgba(224,189,122,.13);
  border-radius:21px;
}

.lantern-home-hero__inner{
  position:relative;
  z-index:1;
  width:min(1460px,calc(100% - 96px));
  min-height:inherit;
  margin-inline:auto;
  display:flex;
  align-items:center;
}

.lantern-home-hero__copy{
  width:min(720px,52%);
  padding:70px 0 76px;
}

.lantern-home-hero .lantern-eyebrow{
  margin-bottom:30px;
  color:#d3a85f;
}

.lantern-home-hero h1{
  margin:0 0 26px;
  font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Palatino,Georgia,serif;
  font-size:clamp(5.2rem,9vw,9rem);
  font-weight:400;
  line-height:.84;
  letter-spacing:.035em;
  text-transform:uppercase;
  color:#f0e8d8;
  text-shadow:0 3px 24px rgba(0,0,0,.22);
}

.lantern-home-hero__lead{
  max-width:650px;
  margin:0 0 36px;
  font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Palatino,Georgia,serif;
  font-size:clamp(1.28rem,1.7vw,1.72rem);
  line-height:1.68;
  color:#e0d8c8;
}

.lantern-home-map-actions{margin-top:34px}

@media(max-width:1000px){
  .lantern-home-hero{
    width:min(100% - 32px,1680px);
    min-height:690px;
    margin-top:18px;
  }
  .lantern-home-hero__inner{width:min(100% - 64px,1460px)}
  .lantern-home-hero__copy{width:min(650px,62%)}
  .lantern-home-hero__image{object-position:58% center}
  .lantern-home-hero h1{font-size:clamp(4.8rem,11vw,7.2rem)}
}

@media(max-width:700px){
  .lantern-home-hero{
    width:calc(100% - 20px);
    min-height:690px;
    margin-top:10px;
    border-radius:22px;
  }
  .lantern-home-hero__frame{inset:10px;border-radius:15px}
  .lantern-home-hero__image{
    object-position:67% center;
    filter:brightness(.58) saturate(.86);
  }
  .lantern-home-hero__shade{
    background:
      linear-gradient(180deg,
        rgba(3,9,14,.38) 0%,
        rgba(3,9,14,.50) 28%,
        rgba(3,9,14,.83) 64%,
        rgba(3,9,14,.97) 100%),
      linear-gradient(90deg,rgba(3,9,14,.50),rgba(3,9,14,.18));
  }
  .lantern-home-hero__inner{
    width:calc(100% - 48px);
    align-items:flex-end;
  }
  .lantern-home-hero__copy{
    width:100%;
    padding:320px 0 48px;
  }
  .lantern-home-hero .lantern-eyebrow{
    margin-bottom:18px;
    font-size:.62rem;
    line-height:1.6;
  }
  .lantern-home-hero h1{
    margin-bottom:20px;
    font-size:clamp(4rem,20vw,5.4rem);
    line-height:.86;
  }
  .lantern-home-hero__lead{
    margin-bottom:28px;
    font-size:1.12rem;
    line-height:1.55;
  }
  .lantern-home-hero .lantern-actions{gap:10px}
  .lantern-home-hero .lantern-btn{min-height:44px;padding:0 .9rem;font-size:.69rem}
}

@media(prefers-reduced-motion:reduce){
  .lantern-home-hero__image{transform:none}
}
