/* AJUSTES RESPONSIVOS POR TAMAÑO DE PANTALLA */ @media(max-width:900px) {
  .hero-grid {
    gap:20px;
    grid-template-columns:1fr 0.85fr
}
  .hero-visual {
    min-height:370px
}
  .visual-card {
    min-height:300px
}
  .visual-content {
    min-height:255px
}
  .hero-logo {
    width:215px
}
  .chip-wifi {
    left:-12px
}
  .chip-web {
    right:-10px
}
  .process-grid {
    gap:55px
}
  .quote-layout {
    gap:40px
}}
@media(max-width:700px) {
  html {
    scroll-padding-top:76px
}
  .container {
    width:min(100% - 34px,560px)
}
  .header-inner {
    height:68px
}
  .brand {
    width:145px;
    height:55px
}
  .menu-toggle {
    display:flex;
    width:42px;
    height:42px;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:12px;
    background:transparent
}
  .menu-toggle span {
    width:17px;
    height:2px;
    border-radius:2px;
    background:white;
    transition:transform .2s,opacity .2s
}
  .menu-toggle[aria-expanded="true"] span:first-child {
    transform:translateY(7px) rotate(45deg)
}
  .menu-toggle[aria-expanded="true"] span:nth-child(2) {
    opacity:0
}
  .menu-toggle[aria-expanded="true"] span:last-child {
    transform:translateY(-7px) rotate(-45deg)
}
  .site-nav {
    position:absolute;
    top:68px;
    left:0;
    right:0;
    display:none;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding:9px 18px 19px;
    background:var(--navy);
    border-bottom:1px solid rgba(255,255,255,.12)
}
  .site-nav.is-open {
    display:flex
}
  .site-nav a {
    padding:13px 7px
}
  .site-nav .nav-cta {
    margin-top:8px;
    text-align:center
}
  .hero {
    padding-top:58px;
    min-height:auto
}
  .hero-grid {
    grid-template-columns:1fr;
    gap:16px;
    padding-bottom:40px
}
  .hero-copy {
    max-width:540px
}
  .hero .eyebrow {
    margin-bottom:16px
}
  .hero h1 {
    max-width:540px;
    font-size:clamp(44px,12vw,65px)
}
  .hero-lede {
    max-width:490px;
    font-size:16px
}
  .hero-note {
    margin-top:30px
}
  .hero-visual {
    min-height:335px;
    margin-top:0
}
  .visual-card {
    width:min(390px,90%);
    min-height:278px
}
  .visual-content {
    min-height:233px
}
  .hero-logo {
    width:205px
}
  .chip-wifi {
    left:0;
    top:55px
}
  .chip-web {
    right:-2px;
    bottom:40px
}
  .orbit-large {
    width:390px;
    height:180px
}
  .orbit-small {
    width:310px;
    height:145px
}
  .hero-footer {
    gap:10px;
    font-size:7px;
    letter-spacing:.11em
}
  .section-pad {
    padding:75px 0
}
  .section-heading {
    display:block;
    margin-bottom:28px
}
  .section-heading h2,.quote-intro h2 {
    font-size:36px
}
  .section-heading>p {
    margin-top:15px;
    font-size:14px
}
  .desktop-break {
    display:none
}
  .service-grid {
    grid-template-columns:1fr;
    gap:13px
}
  .service-card {
    min-height:0;
    padding:23px 22px
}
  .service-card h3 {
    font-size:21px
}
  .service-promise {
    align-items:flex-start;
    flex-wrap:wrap;
    padding:17px
}
  .service-promise p {
    flex:1 1 calc(100% - 55px)
}
  .service-promise .text-link {
    margin-left:52px
}
  .process-grid {
    grid-template-columns:1fr;
    gap:35px
}
  .process h2 {
    font-size:41px
}
  .process-lede {
    font-size:14px
}
  .step {
    gap:17px;
    padding-bottom:25px
}
  .quote-layout {
    grid-template-columns:1fr;
    gap:25px
}
  .quote-intro {
    position:static
}
  .quote-intro>p:not(.eyebrow) {
    max-width:480px
}
  .quote-aside {
    margin-top:17px
}
  .quote-brand {
    display:none
}
  .form-shell {
    padding:22px 17px;
    border-radius:18px
}
  .form-progress {
    margin:-22px -17px 22px
}
  .form-grid {
    grid-template-columns:1fr;
    gap:13px
}
  .field-full {
    grid-column:auto
}
  .form-heading {
    margin-bottom:20px
}
  .field input,.field select {
    min-height:45px
}
  .footer-main {
    flex-wrap:wrap;
    gap:15px;
    padding-top:27px
}
  .footer-brand {
    width:120px;
    height:59px
}
  .footer-main p {
    flex:1 1 55%;
    font-size:11px
}
  .footer-cta {
    margin-left:auto
}
  .footer-bottom {
    gap:12px;
    flex-wrap:wrap;
    font-size:9px
}
  .footer-bottom span:last-child {
    display:none
}}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after {
    scroll-behavior:auto!important;
    transition:none!important;
    animation:none!important
}}
