@import url("https://fonts.googleapis.com/css2?family=Raleway:wght@400;600&display=swap");

@font-face{
  font-family:"Goodspace";
  src:
    url("../assets/fonts/goodspace.woff2") format("woff2"),
    url("../assets/fonts/goodspace.ttf")   format("truetype"),
    url("../assets/fonts/goodspace.otf")   format("opentype");
  font-weight:400;
  font-style:normal;
  font-display:swap;
}

html { scroll-behavior:smooth; }
*{ box-sizing:border-box; }
img,video{ max-width:100%; height:auto; }

.ehvs-fullbleed{
  width:100vw!important;
  position:relative;
  left:50%; right:50%;
  margin-left:-50vw; margin-right:-50vw;
}

.ehvs-hero{
  position:relative; width:100%; overflow:hidden;
  display:flex; flex-direction:column; align-items:stretch;
  --side-pad: clamp(12px, 4vw, 56px);
  padding:0;
}
.ehvs-hero .ehvs-poster{ position:absolute; inset:0; z-index:0; background:center / cover no-repeat; }
.ehvs-hero .ehvs-video { position:absolute; inset:0; z-index:0; width:100%; height:100%; object-fit:cover; }
.ehvs-hero .ehvs-overlay{
  position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(90deg,#000929 0%, rgba(0,9,41,.5) 100%);
}

.ehvs-hero .ehvs-inner{
  position:relative; z-index:2; width:100%;
  padding: var(--side-pad);
  margin-top: 50vh; transform: translateY(-50%);
}

.ehvs-content{
  display:grid;
  grid-template-columns: 1fr auto;
  align-items:center;
  gap: clamp(16px, 4vw, 40px);
}

.ehvs-headings{
  display:flex; flex-direction:column;
  gap: clamp(8px, 1.6vw, 18px);
  max-width: min(90rem, 92vw);
}
.ehvs-headings > *{
  margin:0; line-height:1.15; letter-spacing:.02em; word-break: break-word; hyphens:auto;
}
.ehvs-headings > *:first-child{
  font-family:"Goodspace",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  font-weight:400;
  font-size: clamp(11px, 1.2vw + .1rem, 15px);
  line-height: clamp(14px, 1.6vw + .1rem, 19.5px);
  letter-spacing: 3.25px; text-transform:uppercase; color:#FFF;
}

.ehvs-pc-highlight{
  font-family:"Goodspace"; font-weight:400;
  font-size: clamp(26px, 8vmin, 75.3px); line-height: clamp(32px, 9.2vmin, 84.67px);
  letter-spacing:-1.51px; color:#FFF; display:inline-block;
}
.ehvs-blr-highlight{
  font-family:"Goodspace"; font-weight:400;
  font-size: clamp(26px, 8vmin, 75.3px); line-height: clamp(32px, 9.2vmin, 84.67px);
  letter-spacing:-1.51px; color:#FFFFFF66; display:inline-block;
}

.ehvs-desc{
  font-family:"Raleway"; font-weight:400;
  font-size: clamp(14px, 2.1vmin, 15px); line-height: clamp(20px, 3.6vmin, 29.23px);
  color:#FFF; max-width: min(72ch, 94vw);
}

.ehvs-fourthline{
  display:flex; align-items:center; flex-wrap:wrap;
  gap: clamp(10px, 1.6vw, 18px);
  text-align:left;
}

/* Previously-used general style for 4th heading */
.ehvs-heading--cta{
  font-family:"Goodspace",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  font-weight:400;
  font-size: 18px;
  line-height: 27.22px;
  letter-spacing: 0.36px;
  color:#FFFFFF;
}

/* ✅ Ultra-unique class that only targets “Book Free Inspection” */
.ehvs-book-free-inspection{
  font-family:"Goodspace",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif !important;
  font-weight:400 !important;
  font-size:18px !important;
  line-height:27.22px !important;
  letter-spacing:0.36px !important;
  color:#FFFFFF !important;
}

/* CTAs */
.ehvs-cta{ display:flex; gap:12px; flex-wrap:wrap; }
.ehvs-btn{
  display:inline-flex; align-items:center; gap:8px; padding:12px 18px; border-radius:999px;
  border:1px solid rgba(255,255,255,.55); background:rgba(255,255,255,.08); color:#fff; text-decoration:none;
  transition:transform .15s ease, background .15s ease, border-color .15s ease; backdrop-filter:saturate(120%) blur(2px);
  white-space:nowrap;
}
.ehvs-btn--wa{ background:#25D366; border-color:#25D366; }
.ehvs-btn--wa:hover{ background:#20bd59; border-color:#20bd59; }
.ehvs-btn--call{ background:#7065F0; border-color:#7065F0; }
.ehvs-btn--call:hover{ background:#5f53f0; border-color:#5f53f0; }
.ehvs-btn .ehvs-btn-text{
  font-family:"Goodspace"; font-weight:400;
  font-size: clamp(14px, 2.2vmin, 18px); line-height: clamp(18px, 3vmin, 27px); letter-spacing:.36px;
}
.ehvs-btn .ehvs-btn-text{ order:1; } .ehvs-btn .ehvs-icon-svg{ order:2; display:inline-flex; line-height:0; }

/* right column (play) */
.ehvs-sidecol{ display:flex; align-items:center; justify-content:center; }
.ehvs-play-btn{
  border:none; background:transparent; padding:10px; margin:0;
  display:inline-grid; place-items:center; cursor:pointer;
}
.ehvs-play-btn img{ display:block; width:auto; height:auto; max-width: clamp(100px, 8vmin, 110px); }

/* marquee */
.ehvs-marquee-wrap{
  position:relative; z-index:2; overflow:hidden;
  border-bottom:.8px solid #FFFFFF33;
  padding-left:var(--side-pad); padding-right:var(--side-pad);
}
.ehvs-marquee{
  display:flex; align-items:center; gap:var(--ehvs-marquee-gap,0px);
  animation:ehvs-slide var(--ehvs-marquee-duration,30s) linear infinite; will-change:transform;
}
.ehvs-marquee img{ height:auto; width:auto; display:block; object-fit:contain; user-select:none; -webkit-user-drag:none; pointer-events:none; }
@keyframes ehvs-slide{ from{ transform:translateX(0); } to{ transform:translateX(calc(-100% - var(--ehvs-marquee-gap,0px))); } }

/* below two-column */
.ehvs-below-wrap{ position:relative; z-index:2; width:100%; padding: clamp(16px, 3.2vw, 32px) 0; }
.ehvs-below-wrap.ehvs-fullbleed{ padding-left:var(--side-pad)!important; padding-right:var(--side-pad)!important; }
.ehvs-below{ margin:0 auto; display:grid; grid-template-columns: 1fr 1fr; align-items:start; gap: clamp(14px, 3vw, 40px); max-width:100%; }
.ehvs-below-col{ color:#fff; }
.ehvs-below h1,.ehvs-below h2,.ehvs-below h3,.ehvs-below h4,.ehvs-below h5,.ehvs-below h6{ margin:0 0 .4em; line-height:1.15; color:#fff; }
.ehvs-below p{ margin:.5em 0 0; }

/* address + link */
.ehvs-below .ehvs-address-line1{
  font-family:"Raleway"; font-weight:600;
  font-size: clamp(15px, 2.2vmin, 18px); line-height: clamp(22px, 3.4vmin, 27.22px); color:#FFFFFF;
}
.ehvs-below .ehvs-address2,
.ehvs-below .ehvs-address2 a{
  font-family:"Goodspace"; font-weight:400;
  font-size: clamp(13px, 2vmin, 15px); line-height: clamp(18px, 2.6vmin, 19.5px); color:#7065F0; text-decoration:none;
}
.ehvs-below .ehvs-address2 a:hover{ text-decoration:underline; }

/* responsive */
@media (max-width: 1024px){
  .ehvs-headings{ max-width: 94vw !important; }
  .ehvs-below{ grid-template-columns:1fr; }
}
@media (max-width: 800px){
  .ehvs-content{ grid-template-columns: 1fr; }
  .ehvs-sidecol{ margin-top: clamp(16px, 4vw, 32px); justify-content:center; position: relative; top: 103px;}
  .ehvs-hero .ehvs-inner{ margin-top: 38vh; }
}
@media (max-width: 600px){
  .ehvs-hero{ min-height: 64vh; }
  .ehvs-hero .ehvs-inner{ margin-top: 50vh; }
}
@media (prefers-reduced-motion: reduce){
  .ehvs-marquee{ animation-duration: calc(var(--ehvs-marquee-duration,30s) * 2); }
}