/* HOME HERO V24
   Isolated hero-only stylesheet.
   Header behavior lives in header-theme-v19.css. */

:root{
  --home-navy:#0f2042;
  --home-navy-top:#10274d;
  --home-navy-bottom:#0a1a37;
  --home-silver-top:#f7f9fb;
  --home-silver-bottom:#c7d0dc;
  --home-script:#b8c4d1;
  --home-white:#f3f6f8;
  --menu-surface:#f7f8f9;
  --menu-ink:#2f3237;
}

/* ---------- Hero ---------- */
#start.home-hero-v14{
  position:relative;
  min-height:100svh;
  overflow:hidden;
  isolation:isolate;
  display:block;
  padding:0!important;
  background:linear-gradient(180deg,var(--home-navy-top) 0%,var(--home-navy) 51%,var(--home-navy-bottom) 100%)!important;
}
#start.home-hero-v14::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:radial-gradient(55% 42% at 82% 5%,rgba(205,219,233,.18) 0%,rgba(205,219,233,.055) 35%,rgba(205,219,233,0) 74%);
}

.home-hero-v14__content{
  position:absolute;
  z-index:2;
  left:50%;
  top:35%;
  width:min(88vw,900px);
  transform:translate(-50%,-50%);
  text-align:center;
}
.home-hero-v14__title{
  margin:0;
  font-family:'Montserrat',Arial,sans-serif;
  font-size:clamp(56px,7.25vw,118px);
  font-weight:600;
  line-height:.91;
  letter-spacing:.052em;
  text-transform:uppercase;
  background:linear-gradient(180deg,var(--home-silver-top) 0%,#eef2f6 43%,var(--home-silver-bottom) 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.home-hero-v14__title span{display:block;white-space:nowrap;}

.home-hero-v14__claim{
  margin:25px 0 0;
  color:var(--home-script);
  font-family:'Caveat',cursive;
  font-size:clamp(30px,3.15vw,49px);
  font-weight:400;
  line-height:1.05;
  white-space:nowrap;
}
.home-hero-v14__divider{
  display:block;
  width:76px;
  height:1px;
  margin:30px auto 0;
  background:rgba(242,246,249,.78);
}
.home-hero-v14__name{
  margin:23px 0 0;
  color:var(--home-white);
  font-family:'Montserrat',Arial,sans-serif;
  font-size:clamp(15px,1.25vw,21px);
  font-weight:400;
  line-height:1.2;
  letter-spacing:.18em;
}

.home-hero-v14__wave{
  position:absolute;
  z-index:1;
  left:-5%;
  right:-5%;
  top:67%;
  height:25%;
  pointer-events:none;
  overflow:hidden;
}
.home-hero-v14__wave img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
  opacity:.94;
}

/* The reference is static. */
.home-hero-v14__title,
.home-hero-v14__claim,
.home-hero-v14__divider,
.home-hero-v14__name,
.home-hero-v14__wave{
  opacity:1!important;
  filter:none!important;
  animation:none!important;
}
.home-hero-v14__claim::after{content:none!important;}

/* Laptop / short desktop viewport only.
   Same arrangement as large desktop; only typography scales down. */
@media (min-width:701px) and (max-height:860px){
  .home-hero-v14__content{
    width:min(82vw,780px);
  }
  .home-hero-v14__title{
    font-size:clamp(58px,5.9vw,90px);
    line-height:.92;
    letter-spacing:.05em;
  }
  .home-hero-v14__claim{
    margin-top:20px;
    font-size:clamp(27px,2.55vw,38px);
  }
  .home-hero-v14__divider{
    width:70px;
    margin-top:22px;
  }
  .home-hero-v14__name{
    margin-top:18px;
    font-size:clamp(14px,1.05vw,18px);
  }
}

@media(max-width:700px){
  #start.home-hero-v14{min-height:100svh;}
  .home-hero-v14__content{
    top:39%;
    width:88vw;
  }
  .home-hero-v14__title{
    font-size:clamp(40px,10.8vw,58px);
    line-height:.91;
    letter-spacing:.047em;
  }
  .home-hero-v14__claim{
    margin-top:22px;
    font-size:clamp(22px,6.5vw,31px);
    font-weight:400;
  }
  .home-hero-v14__divider{
    width:74px;
    height:1px;
    margin-top:27px;
  }
  .home-hero-v14__name{
    margin-top:21px;
    font-size:clamp(14px,3.75vw,17px);
    letter-spacing:.17em;
  }
  .home-hero-v14__wave{
    left:-14%;
    right:-14%;
    top:56%;
    height:31%;
  }
}


/* === V30: Desktop/Laptop follows the mobile hero composition ===
   V24 is the base. Mobile rules are untouched.
   Only >700px: same vertical composition as mobile + crisp title rendering. */
@media (min-width:701px){
  .home-hero-v14__content{
    top:39%;
  }
  .home-hero-v14__wave{
    left:-14%;
    right:-14%;
    top:63%;
    height:31%;
  }
  .home-hero-v14__wave picture,
  .home-hero-v14__wave img{
    width:100%;
    height:100%;
    display:block;
  }
  .home-hero-v14__wave img{
    object-fit:cover;
    object-position:center center;
    image-rendering:auto;
  }
  .home-hero-v14__title{
    /* Same V24 size and weight, only remove clipped gradient on desktop/laptop for sharper glyph edges. */
    background:none;
    -webkit-background-clip:border-box;
    background-clip:border-box;
    color:#eef2f6;
    -webkit-text-fill-color:#eef2f6;
    font-weight:600;
    text-shadow:none;
    text-rendering:geometricPrecision;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    font-synthesis:none;
  }
}
