/* KOVA homepage hero — elevated composition with larger typography and far-left signature K */
body.kova-home .hero{
  min-height:calc(100vh - 86px)!important;
  align-items:stretch!important;
}
body.kova-home .hero-copy{
  justify-content:flex-start!important;
  padding-top:clamp(54px,6.2vw,112px)!important;
  padding-bottom:clamp(54px,6vw,100px)!important;
}
body.kova-home .hero-brand-panel{
  position:relative!important;
  min-height:700px!important;
  background:#f5f5f2!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-end!important;
  padding:clamp(38px,4vw,68px)!important;
  overflow:visible!important;
}
body.kova-home .hero-brand-panel:before{
  display:none!important;
  content:none!important;
}
body.kova-home .hero-brand-k{
  display:block!important;
  position:absolute!important;
  left:-48vw!important;
  right:auto!important;
  bottom:-3vw!important;
  transform:none!important;
  color:#283649!important;
  font-size:15vw!important;
  font-weight:700!important;
  line-height:.8!important;
  letter-spacing:-.08em!important;
  opacity:1!important;
  mix-blend-mode:multiply;
  pointer-events:none;
}
body.kova-home .hero-brand-logo{
  display:flex!important;
  position:relative!important;
  z-index:4!important;
  align-items:baseline!important;
  justify-content:center!important;
  margin-top:0!important;
  margin-right:clamp(10px,2vw,34px)!important;
  margin-bottom:clamp(86px,9vw,150px)!important;
  color:#000!important;
  font-size:clamp(82px,7.2vw,138px)!important;
  font-weight:500!important;
  letter-spacing:.11em!important;
  line-height:.9!important;
  white-space:nowrap!important;
  transform:none!important;
}
body.kova-home .hero-brand-logo:after{
  display:none!important;
  content:none!important;
}
body.kova-home .hero-brand-logo>span{
  display:inline!important;
  font-size:clamp(16px,1.3vw,24px)!important;
  font-weight:500!important;
  letter-spacing:.2em!important;
  margin-left:clamp(13px,1.3vw,22px)!important;
}
@media(max-width:1050px){
  body.kova-home .hero{min-height:auto!important}
  body.kova-home .hero-copy{padding-top:70px!important;padding-bottom:70px!important}
  body.kova-home .hero-brand-panel{min-height:500px!important;align-items:flex-end!important;justify-content:flex-end!important;padding:32px!important}
  body.kova-home .hero-brand-logo{font-size:clamp(70px,9vw,96px)!important;margin-top:0!important;margin-right:10px!important;margin-bottom:72px!important}
  body.kova-home .hero-brand-k{font-size:22vw!important;left:-44vw!important;bottom:-4vw!important}
}
@media(max-width:680px){
  body.kova-home .hero-copy{padding-top:45px!important;padding-bottom:58px!important}
  body.kova-home .hero-brand-panel{min-height:360px!important;padding:24px 16px!important;overflow:hidden!important;align-items:flex-end!important;justify-content:flex-end!important}
  body.kova-home .hero-brand-k{font-size:150px!important;left:-78px!important;bottom:-38px!important}
  body.kova-home .hero-brand-logo{font-size:clamp(54px,14vw,66px)!important;letter-spacing:.045em!important;margin-top:0!important;margin-right:8px!important;margin-bottom:46px!important}
  body.kova-home .hero-brand-logo>span{font-size:11px!important;margin-left:7px!important;letter-spacing:.14em!important}
}



/* Stronger first-screen typography and dual highlighted actions */
body.kova-home .hero .eyebrow{
  font-size:14px!important;
  letter-spacing:.16em!important;
  margin-bottom:26px!important;
}
body.kova-home .hero h1{
  font-size:clamp(56px,7.5vw,115px)!important;
}
body.kova-home .hero-text{
  font-size:clamp(19px,1.65vw,25px)!important;
  line-height:1.48!important;
  max-width:640px!important;
}
body.kova-home .hero-actions .pill,
body.kova-home .hero-actions .text-link{
  min-height:52px!important;
  padding:0 25px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:14px!important;
  font-weight:700!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}
body.kova-home .hero-actions .text-link{
  background:#283649!important;
  color:#fff!important;
}
@media(max-width:680px){
  body.kova-home .hero .eyebrow{font-size:12px!important;margin-bottom:20px!important}
  body.kova-home .hero h1{font-size:clamp(44px,13vw,60px)!important}
  body.kova-home .hero-text{font-size:18px!important}
  body.kova-home .hero-actions{gap:12px!important}
  body.kova-home .hero-actions .pill,
  body.kova-home .hero-actions .text-link{width:100%!important;max-width:290px!important;font-size:12px!important}
}

/* Minimal hero: the header logo is the only brand mark on the first screen. */
body.kova-home .hero-brand-logo,
body.kova-home .hero-brand-k{
  display:none!important;
}

/* Service cards: editorial photographs inside a coloured frame. */
body.kova-home .framed-photo-card summary{
  min-height:430px!important;
  padding:300px 28px 28px!important;
  color:inherit!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
body.kova-home .framed-photo-card summary::after{display:none!important;content:none!important}
body.kova-home .framed-photo-card .service-photo{
  position:absolute!important;
  top:20px!important;
  left:20px!important;
  right:20px!important;
  bottom:auto!important;
  width:calc(100% - 40px)!important;
  height:250px!important;
  object-fit:cover!important;
  object-position:center!important;
  transform:none!important;
  z-index:0!important;
}
body.kova-home .framed-photo-card summary:hover .service-photo{transform:none!important}
body.kova-home .framed-photo-card summary h3,
body.kova-home .framed-photo-card summary p,
body.kova-home .framed-photo-card .service-hint{position:relative!important;z-index:2!important}
body.kova-home .framed-photo-card .service-number,
body.kova-home .framed-photo-card .service-toggle{
  z-index:3!important;
  color:#fff!important;
  text-shadow:0 1px 12px rgba(0,0,0,.65)!important;
}
body.kova-home .framed-photo-card.light,
body.kova-home .framed-photo-card.lilac{color:#090909!important}
body.kova-home .framed-photo-card.ink,
body.kova-home .framed-photo-card.blue{color:#fff!important}
@media(max-width:680px){
  body.kova-home .framed-photo-card summary{min-height:410px!important;padding:285px 24px 24px!important}
  body.kova-home .framed-photo-card .service-photo{top:16px!important;left:16px!important;width:calc(100% - 32px)!important;height:240px!important}
}

/* Keep sideways editorial photographs upright inside the same inset frame. */
body.kova-home .framed-photo-card .service-photo-window{
  --photo-window-height:250px;
  position:absolute!important;
  top:20px!important;
  left:20px!important;
  right:20px!important;
  height:var(--photo-window-height)!important;
  display:block!important;
  overflow:hidden!important;
  container-type:inline-size!important;
  z-index:0!important;
}
body.kova-home .framed-photo-card .service-photo-window .service-photo{
  top:0!important;
  left:0!important;
  right:auto!important;
  bottom:auto!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  transform:none!important;
}
body.kova-home .framed-photo-card .service-photo-window.is-rotated-cw .service-photo,
body.kova-home .framed-photo-card summary:hover .service-photo-window.is-rotated-cw .service-photo{
  top:50%!important;
  left:50%!important;
  width:var(--photo-window-height)!important;
  height:100cqw!important;
  transform:translate(-50%,-50%) rotate(90deg)!important;
  object-position:center!important;
}
@media(max-width:680px){
  body.kova-home .framed-photo-card .service-photo-window{
    --photo-window-height:240px;
    top:16px!important;
    left:16px!important;
    right:16px!important;
  }
}