/* CAHA DIGITAL V0.11.8.35 — isolated hero layout
   This file intentionally owns the hero geometry. Older hero rules in site-v04.css
   remain for backwards compatibility, but cannot size/position this hero. */

.caha-hero35{
  box-sizing:border-box!important;
}
.caha-hero35 .caha-hero35-container{
  box-sizing:border-box!important;
}
.caha-hero35 .caha-hero35-layout,
.caha-hero35 .caha-hero35-copy,
.caha-hero35 .caha-hero35-visual,
.caha-hero35 .caha-hero35-device{
  box-sizing:border-box!important;
}

@media (min-width:1024px){
  .caha-hero35{
    min-height:100svh!important;
    padding:116px 0 58px!important;
    display:flex!important;
    align-items:center!important;
  }
  .caha-hero35 .caha-hero35-container{
    width:min(1500px,calc(100vw - 72px))!important;
    max-width:1500px!important;
    margin:0 auto!important;
    padding:0!important;
  }
  .caha-hero35 .caha-hero35-layout{
    display:grid!important;
    grid-template-columns:minmax(0,0.92fr) minmax(0,1.08fr)!important;
    gap:clamp(58px,5vw,94px)!important;
    align-items:center!important;
    width:100%!important;
    margin:0!important;
    transform:none!important;
  }
  .caha-hero35 .caha-hero35-copy{
    min-width:0!important;
    width:auto!important;
    max-width:700px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
  }
  .caha-hero35 .caha-hero35-copy h1{
    max-width:680px!important;
    margin:14px 0 18px!important;
    font-size:clamp(3.35rem,4.85vw,5.65rem)!important;
    line-height:.93!important;
    letter-spacing:-.065em!important;
  }
  .caha-hero35 .caha-hero35-copy>p{
    max-width:610px!important;
    font-size:clamp(1rem,1.08vw,1.14rem)!important;
    line-height:1.7!important;
  }
  .caha-hero35 .hero-actions{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:12px!important;
    margin-top:28px!important;
  }
  .caha-hero35 .hero-actions .caha-button{
    flex:0 0 auto!important;
    min-height:52px!important;
    padding:0 18px!important;
    white-space:nowrap!important;
    font-size:.86rem!important;
  }
  .caha-hero35 .hero-proof{margin-top:25px!important}

  .caha-hero35 .caha-hero35-visual{
    position:relative!important;
    min-width:0!important;
    width:100%!important;
    max-width:none!important;
    min-height:610px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    overflow:visible!important;
  }
  .caha-hero35 .caha-hero35-device{
    width:min(46vw,860px)!important;
    max-width:none!important;
    margin:0!important;
    transform:none!important;
    transform-origin:center!important;
  }
  .caha-hero35 .portfolio-device{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }
  .caha-hero35 .device-project-meta{
    width:100%!important;
    max-width:none!important;
    margin:10px 0 0!important;
    padding:0 10px!important;
  }
}

@media (min-width:1024px) and (max-width:1399px){
  .caha-hero35{padding-top:112px!important}
  .caha-hero35 .caha-hero35-container{width:min(1240px,calc(100vw - 48px))!important}
  .caha-hero35 .caha-hero35-layout{
    grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr)!important;
    gap:38px!important;
  }
  .caha-hero35 .caha-hero35-copy h1{
    font-size:clamp(3rem,4.8vw,5rem)!important;
    max-width:620px!important;
  }
  .caha-hero35 .caha-hero35-device{width:min(47vw,690px)!important}
  .caha-hero35 .hero-actions{flex-wrap:wrap!important}
}

@media (max-width:1023px){
  .caha-hero35{
    min-height:auto!important;
    padding:132px 0 78px!important;
  }
  .caha-hero35 .caha-hero35-layout{
    display:block!important;
    width:100%!important;
    margin:0!important;
    transform:none!important;
  }
  .caha-hero35 .caha-hero35-copy,
  .caha-hero35 .caha-hero35-visual{
    width:100%!important;
    max-width:none!important;
    transform:none!important;
  }
  .caha-hero35 .caha-hero35-visual{
    min-height:0!important;
    margin-top:42px!important;
    padding:0!important;
    display:flex!important;
    justify-content:center!important;
    overflow:visible!important;
  }
  .caha-hero35 .caha-hero35-device{width:min(680px,96%)!important}
  .caha-hero35 .portfolio-device{width:100%!important;max-width:none!important;margin:0!important}
}

@media (max-width:639px){
  .caha-hero35{padding:118px 0 64px!important}
  .caha-hero35 .caha-hero35-copy h1{font-size:clamp(2.85rem,13vw,4.5rem)!important}
  .caha-hero35 .hero-actions{flex-direction:column!important}
  .caha-hero35 .hero-actions .caha-button{width:100%!important}
  .caha-hero35 .caha-hero35-visual{margin-top:30px!important}
  .caha-hero35 .caha-hero35-device{width:100%!important}
}


/* CAHA DIGITAL V0.21.6 — compact-height desktop hero */
@media (min-width:1024px) and (max-height:820px){
 .caha-hero35{min-height:100dvh!important;padding:92px 0 34px!important}
 .caha-hero35 .caha-hero35-layout{gap:clamp(28px,3.4vw,52px)!important}
 .caha-hero35 .caha-hero35-copy h1{margin:10px 0 13px!important;font-size:clamp(2.75rem,4.25vw,4.65rem)!important}
 .caha-hero35 .caha-hero35-copy>p{font-size:clamp(.9rem,1vw,1.02rem)!important;line-height:1.55!important}
 .caha-hero35 .hero-actions{margin-top:19px!important;gap:9px!important}.caha-hero35 .hero-actions .caha-button{min-height:46px!important;padding-inline:14px!important;font-size:.78rem!important}
 .caha-hero35 .hero-proof{margin-top:15px!important}.caha-hero35 .caha-hero35-visual{min-height:clamp(390px,58dvh,500px)!important}.caha-hero35 .caha-hero35-device{width:min(44vw,680px)!important}
}
@media (min-width:1024px) and (max-height:700px){.caha-hero35{padding-top:78px!important}.caha-hero35 .caha-hero35-copy h1{font-size:clamp(2.55rem,3.9vw,4.1rem)!important}.caha-hero35 .caha-hero35-visual{min-height:360px!important}.caha-hero35 .hero-proof{display:none!important}}
