@media (max-width:1240px){
  .hero:has(.hero-grid--portrait){
    padding-bottom:0;
    min-height:calc(100svh - var(--header-h))
  }
  .hero:has(.hero-grid--portrait) > .container.hero-grid{
    min-height:0;
    display:flex;
    flex-direction:column;
    flex:1 1 auto
  }
  .hero-grid--portrait{
    display:flex;
    flex-direction:column;
    flex:1 1 auto;
    min-height:calc(100svh - var(--header-h) - var(--hero-space));
    align-items:stretch;
    gap:clamp(1.25rem,4vh,2rem)
  }
  .hero-grid--portrait .hero-shell,
  .hero-portrait-column{
    grid-column:auto
  }
  .hero-grid--portrait .hero-shell{
    align-self:stretch;
    padding-right:0;
    order:1;
    flex:0 0 auto
  }
  .hero-portrait-column{
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    align-items:center;
    width:100%;
    max-width:min(420px,100%);
    margin-inline:auto;
    margin-top:auto;
    order:2;
    flex:1 1 auto;
    min-height:0;
    max-height:none
  }
  .hero-portrait{
    grid-row:auto;
    position:relative;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    width:100%;
    flex:1 1 auto;
    min-height:0;
    max-height:100%
  }
  .hero-portrait img{
    position:relative;
    inset:auto;
    width:100%;
    height:auto;
    max-width:100%;
    max-height:100%;
    margin:0;
    object-fit:contain;
    object-position:bottom center
  }
  .hero-grid,.split,.contact-shell,.cta-shell,.trust-bar{grid-template-columns:1fr}
  .hero-tech-column{
    display:block;
    width:100%;
    max-width:none;
    justify-self:stretch;
    align-self:stretch;
    order:2
  }
  .hero-tech-cloud{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    column-gap:clamp(.85rem,3.5vw,1.75rem);
    row-gap:clamp(1rem,3vw,1.5rem);
    min-height:auto;
    padding:1.35rem 0 .35rem;
    width:100%
  }
  .hero-tech-card{
    position:relative;
    top:auto!important;
    left:auto!important;
    justify-content:center;
    width:100%;
    animation:none!important;
    will-change:auto
  }
  .hero-tech-card img{
    width:clamp(3.1rem,11vw,4.35rem);
    height:clamp(3.1rem,11vw,4.35rem)
  }
  .trust-pills{grid-template-columns:repeat(2,minmax(0,1fr))}
  .showcase-grid--single{grid-template-columns:minmax(0,1fr);max-width:26rem;margin-inline:auto}
  .showcase-grid:not(.showcase-grid--single),.upcoming-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cards--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .article-track{grid-auto-columns:minmax(0,calc((100% - 1.2rem)/2))}
}
@media (max-width:920px){
  :root{
    --section-space:5rem;
    --hero-space:6.75rem
  }
  .menu-toggle{display:inline-flex}
  .site-nav{
    position:absolute;
    left:1rem;
    right:1rem;
    top:calc(100% + .65rem);
    padding:.8rem;
    border-radius:24px;
    border:1px solid var(--line);
    background:rgba(255,255,255,.96);
    box-shadow:var(--shadow);
    display:none
  }
  .site-nav.open{display:block}
  .site-nav ul{display:grid;gap:.2rem}
  .site-nav a{width:100%;justify-content:flex-start}
  .site-nav .desktop-cta{display:none}
  .hero-grid{gap:1.2rem}
  .hero{padding-top:6.75rem}
  .hero-network-bg{opacity:.62}
  .hero:has(.hero-network-bg) .hero-network-bg{opacity:.94}
  .hero::before,.hero::after{opacity:.24}
  .hero-net-canvas{opacity:.64}
  .hero:has(.hero-network-bg) .hero-net-canvas{opacity:.88}
  .article-track{grid-auto-columns:100%}
  .container{width:min(100% - 2rem,var(--container))}
}
@media (max-width:760px){
  .hero-title{font-size:clamp(3.25rem,15vw,4.5rem)}
  .section-heading,.cta-title,.contact-title,.blog-title{font-size:clamp(2.35rem,11vw,3.2rem)}
  .cards--2,.cards--3,.cards--4,.showcase-grid,.upcoming-grid,.process-grid,.row,.form-grid{grid-template-columns:1fr}
  .hero-network-bg{opacity:.5}
  .hero:has(.hero-network-bg) .hero-network-bg{opacity:.9}
  .hero::before,.hero::after{opacity:.16}
  .hero-net-canvas{opacity:.54}
  .hero:has(.hero-network-bg) .hero-net-canvas{opacity:.82}
  .trust-pills{grid-template-columns:1fr;gap:.75rem}
  .contact-phone,.contact-links,.button-row,.btn-row{gap:.75rem}
  .contact-links a,.contact-phone a,.btn{width:100%}
  .carousel-head{align-items:start;flex-direction:column}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important
  }
  body::before,body::after,.hero-network-bg{opacity:.45}
  .hero:has(.hero-network-bg) .hero-network-bg{opacity:.82}
  .hero::before,.hero::after{opacity:.1}
  .hero-net-canvas{opacity:.24}
  .hero:has(.hero-network-bg) .hero-net-canvas{opacity:.85}
  .hero-network-bg::before,.hero-network-bg::after,.hero-net-canvas,.hero::before,.hero::after,.hero-tech-card{animation:none !important}
}
