/* =========================================================
   ACE INTERNET SERVICES — RESPONSIVE CSS CLEAN FINAL
   Replace the full content of ace-responsive.css with this file
========================================================= */

/* Safety */
html,
body{
  max-width:100%;
  overflow-x:hidden;
}

/* =========================================================
   TABLET
========================================================= */

@media(max-width:1180px){

  .ace-services__grid{
    grid-template-columns:repeat(3,1fr)!important;
  }

  .ace-case-grid{
    grid-template-columns:1fr!important;
  }

}

@media(max-width:1100px){

  .kooka-nav,
  .kooka-header__right,
  .kooka-header__actions{
    display:none!important;
  }

  .kooka-mobile-toggle,
  .kooka-menu-toggle{
    display:flex!important;
  }

  .kooka-header__inner{
    width:min(100% - 32px,1340px)!important;
    height:76px!important;
  }

  .kooka-header__logo{
    width:185px!important;
    min-width:185px!important;
  }

  .ace-footer-main{
    grid-template-columns:1fr 1fr!important;
  }

  .ace-footer-map{
    grid-column:1 / -1!important;
  }

  .ace-benefits-grid,
  .ace-phone-benefits__grid,
  .ace-cloud-options__grid,
  .ace-webhosting-benefits__grid,
  .ace-business-offer__grid{
    grid-template-columns:repeat(2,1fr)!important;
  }

}

@media(max-width:980px){

  .ace-about-grid,
  .ace-timeline,
  .ace-stats-grid,
  .ace-trusted__inner{
    grid-template-columns:1fr!important;
  }

  .ace-trusted .ace-testimonials{
    grid-template-columns:1fr!important;
  }

}

@media(max-width:900px){

  .ace-services__top,
  .ace-case-top,
  .ace-testimonials-top{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:20px!important;
  }

  .ace-services__grid,
  .ace-pricing-grid--five,
  .ace-business-grid,
  .ace-business-solutions__grid,
  .ace-phone-features__grid{
    grid-template-columns:repeat(2,1fr)!important;
  }

  .ace-floating-contact{
    display:none!important;
  }

  .ace-final-cta__inner{
    grid-template-columns:1fr!important;
    min-height:auto!important;
  }

  .ace-final-cta__text{
    padding:38px 30px 10px!important;
  }

  .ace-final-cta__actions{
    justify-content:flex-start!important;
    padding:0 30px 34px!important;
    flex-wrap:wrap!important;
  }

  .ace-final-cta__image{
    height:220px!important;
  }

  .ace-airstream-intro__grid,
  .ace-coverage-grid,
  .ace-nbn-intro .ace-page-container,
  .ace-nbn-intro-card,
  .ace-business-intro,
  .ace-business-original__grid,
  .ace-managed-intro .ace-container,
  .ace-managed-cta__inner,
  .ace-phone-intro .ace-container,
  .ace-phone-easy .ace-container,
  .ace-voip-intro .ace-container,
  .ace-voip-notice__grid,
  .ace-cloud-intro .ace-container,
  .ace-cloud-highlights,
  .ace-cloud-transition__grid,
  .ace-cloud-hosting-intro__grid,
  .ace-hosting-options__grid,
  .ace-webhosting-intro__grid,
  .ace-contact-form-layout{
    grid-template-columns:1fr!important;
  }

  .ace-call-rates{
    overflow-x:auto!important;
  }

  .ace-call-rates .tablepress{
    min-width:700px!important;
  }

}

/* =========================================================
   MOBILE
========================================================= */

@media(max-width:760px){

  html,
  body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  /* Hide WordPress/Hello title such as "Home" */
  body:not(.blog) .page-header,
  body:not(.blog) .entry-title{
    display:none!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }

  #content,
  .site-main,
  .page-content,
  .elementor,
  .elementor-element,
  .e-con,
  .e-con-inner{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }

  .ace-container,
  .ace-page-container,
  .ace-services__inner,
  .ace-case-studies__inner,
  .ace-trusted__inner,
  .ace-stats__inner{
    padding-left:24px!important;
    padding-right:24px!important;
  }

  /* HEADER */

  .kooka-header{
    position:sticky!important;
    top:0!important;
    z-index:99999!important;
    background:#061120!important;
  }

  .admin-bar .kooka-header{
    top:46px!important;
  }

  .kooka-header__inner{
    width:100%!important;
    height:82px!important;
    padding:0 22px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
  }

  .kooka-header__logo{
    width:190px!important;
    min-width:190px!important;
  }

  .kooka-header__logo img{
    width:100%!important;
    max-height:54px!important;
    object-fit:contain!important;
  }

  .kooka-nav,
  .kooka-header__right,
  .kooka-header__actions{
    display:none!important;
  }

  .kooka-mobile-toggle,
  .kooka-menu-toggle{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:5px!important;
    width:44px!important;
    height:36px!important;
    border:1px solid #1877ff!important;
    border-radius:6px!important;
    background:transparent!important;
    padding:8px!important;
  }

  .kooka-mobile-toggle span,
  .kooka-menu-toggle span{
    display:block!important;
    width:100%!important;
    height:2px!important;
    background:#fff!important;
    margin:0!important;
  }

  /* HOME HERO */

  .ace-hero{
    position:relative!important;
    min-height:680px!important;
    height:auto!important;
  }

  .ace-hero__slider,
  .ace-hero__slide{
    position:absolute!important;
    inset:0!important;
  }

  .ace-hero__copy{
    display:none!important;
  }

  .ace-hero__copy.is-active{
    display:block!important;
  }

  .ace-hero__content{
    min-height:680px!important;
    height:auto!important;
    padding:88px 24px 48px!important;
    justify-content:flex-start!important;
  }

  .ace-hero__copy > span{
    font-size:12px!important;
    letter-spacing:2px!important;
    margin-bottom:18px!important;
  }

  .ace-hero h1{
    font-size:44px!important;
    line-height:1!important;
    letter-spacing:-1.6px!important;
    color:#fff!important;
  }

  .ace-hero p{
    font-size:17px!important;
    line-height:1.6!important;
    color:rgba(255,255,255,.86)!important;
  }

  .ace-hero__buttons{
    width:100%!important;
    flex-direction:column!important;
    gap:14px!important;
    margin-top:30px!important;
  }

  .ace-btn{
    width:100%!important;
    min-height:56px!important;
    color:#fff!important;
  }

  .ace-btn--primary{
    background:#1877ff!important;
  }

  .ace-btn--outline{
    border-color:rgba(255,255,255,.50)!important;
  }

  .ace-hero__stats{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
    margin-top:34px!important;
  }

  .ace-floating-contact{
    display:none!important;
  }

  /* INTERNAL PAGE HERO */

  .ace-page-hero{
    min-height:320px!important;
  }

  .ace-page-hero__inner{
    padding:72px 24px 58px!important;
  }

  .ace-page-hero h1{
    font-size:40px!important;
    line-height:1!important;
  }

  .ace-page-hero p{
    font-size:18px!important;
    line-height:1.5!important;
  }

  .ace-breadcrumb{
    font-size:13px!important;
    flex-wrap:wrap!important;
  }

  /* HOME SERVICES */

  .ace-services{
    padding:66px 0!important;
  }

  .ace-services__top,
  .ace-case-top{
    display:block!important;
    margin-bottom:32px!important;
  }

  .ace-section-eyebrow{
    font-size:12px!important;
    letter-spacing:2.4px!important;
  }

  .ace-services h2,
  .ace-case-top h2,
  .ace-trusted__heading h2{
    font-size:34px!important;
    line-height:1.12!important;
    letter-spacing:-1px!important;
  }

  .ace-services__view,
  .ace-view-all{
    display:inline-flex!important;
    margin-top:18px!important;
    color:#1877ff!important;
    text-decoration:none!important;
  }

  .ace-services__grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
    overflow:visible!important;
  }

  .ace-service-card{
    width:100%!important;
    min-width:0!important;
    min-height:auto!important;
    padding:30px 26px!important;
    text-align:left!important;
    align-items:flex-start!important;
  }

  .ace-service-card__icon{
    margin:0 0 20px!important;
  }

  .ace-service-card h3{
    font-size:26px!important;
    line-height:1.15!important;
  }

  .ace-service-card p{
    font-size:16.5px!important;
    line-height:1.65!important;
  }

  .ace-service-card span{
    color:#1877ff!important;
  }

  /* STATS */

  .ace-stats{
    padding:60px 0!important;
  }

  .ace-stats__inner,
  .ace-stats-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:22px!important;
  }

  .ace-stat{
    padding:0!important;
    text-align:center!important;
  }

  .ace-stat::after{
    display:none!important;
  }

  /* REAL SOLUTIONS */

  .ace-case-studies{
    padding:68px 0!important;
    background:#fff!important;
  }

  .ace-case-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:26px!important;
  }

  .ace-case{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    max-width:100%!important;
    min-height:auto!important;
    height:auto!important;
    border-radius:20px!important;
    overflow:hidden!important;
    background:#fff!important;
    text-decoration:none!important;
    border:1px solid #e6edf5!important;
    box-shadow:0 14px 40px rgba(7,21,37,.07)!important;
  }

  .ace-case img{
    order:1!important;
    width:100%!important;
    height:250px!important;
    min-height:250px!important;
    object-fit:cover!important;
    display:block!important;
  }

  .ace-case__text{
    order:2!important;
    padding:28px 24px!important;
    background:#fff!important;
  }

  .ace-case__text span{
    color:#1877ff!important;
    font-size:11px!important;
    font-weight:900!important;
    letter-spacing:2px!important;
    text-transform:uppercase!important;
  }

  .ace-case__text h3{
    color:#071525!important;
    font-size:28px!important;
    line-height:1.15!important;
    margin:12px 0!important;
  }

  .ace-case__text p{
    color:#5f6874!important;
    font-size:16px!important;
    line-height:1.65!important;
    margin:0 0 18px!important;
  }

  .ace-case__text strong{
    color:#1877ff!important;
  }

  /* TRUSTED */

  .ace-trusted{
    padding:62px 0!important;
  }

  .ace-trusted__inner{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:30px!important;
  }

  .ace-trusted .ace-testimonials,
  .ace-testimonials{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  .ace-testimonial{
    padding:28px 24px!important;
  }

  .ace-testimonial p{
    font-size:16.5px!important;
    line-height:1.65!important;
  }

  /* FINAL CTA */

  .ace-final-cta{
    padding:0!important;
  }

  .ace-final-cta__inner{
    display:grid!important;
    grid-template-columns:1fr!important;
    min-height:auto!important;
  }

  .ace-final-cta__text{
    padding:38px 24px 18px!important;
  }

  .ace-final-cta h2{
    font-size:30px!important;
    line-height:1.13!important;
  }

  .ace-final-cta p{
    font-size:16.5px!important;
    line-height:1.6!important;
  }

  .ace-final-cta__actions{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:14px!important;
    padding:0 24px 32px!important;
  }

  .ace-final-cta__btn{
    width:100%!important;
    min-height:56px!important;
    background:#1877ff!important;
    color:#fff!important;
    border-color:#1877ff!important;
  }

  .ace-final-cta__btn--outline{
    background:#061120!important;
    border-color:#061120!important;
  }

  .ace-final-cta__image{
    height:230px!important;
  }

  /* COMMON PAGE GRIDS */

  .ace-about-grid,
  .ace-timeline,
  .ace-business-intro,
  .ace-business-original__grid,
  .ace-managed-intro .ace-container,
  .ace-phone-intro .ace-container,
  .ace-phone-easy .ace-container,
  .ace-voip-intro .ace-container,
  .ace-cloud-intro .ace-container,
  .ace-cloud-hosting-intro__grid,
  .ace-webhosting-intro__grid,
  .ace-contact-form-layout,
  .ace-contact-details__grid,
  .ace-cloud-benefit{
    grid-template-columns:1fr!important;
  }

  .ace-benefits-grid,
  .ace-pricing-grid,
  .ace-pricing-grid--five,
  .ace-nbn-benefits-grid,
  .ace-business-grid,
  .ace-business-solutions__grid,
  .ace-business-offer__grid,
  .ace-managed-benefits__list,
  .ace-phone-features__grid,
  .ace-phone-benefits__grid,
  .ace-cloud-pillars,
  .ace-cloud-options__grid,
  .ace-hosting-options__grid,
  .ace-webhosting-benefits__grid{
    grid-template-columns:1fr!important;
  }

  .ace-phone-benefits__layout{
    grid-template-columns:1fr!important;
  }

  .ace-phone-benefits__phones{
    min-height:auto!important;
    display:grid!important;
    gap:18px!important;
  }

  .ace-phone-benefits__phones::before,
  .ace-phone-benefits__phones::after{
    display:none!important;
  }

  .ace-phone-device,
  .ace-phone-device--main,
  .ace-phone-device--top,
  .ace-phone-device--bottom{
    position:relative!important;
    inset:auto!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    width:100%!important;
    height:230px!important;
    animation:none!important;
  }

  .ace-call-rates{
    overflow-x:auto!important;
  }

  .ace-call-rates .tablepress{
    min-width:700px!important;
  }

  /* CONTACT */

  .ace-contact-form__row{
    grid-template-columns:1fr!important;
  }

  .ace-contact-form-panel,
  .ace-contact-support-panel{
    padding:28px!important;
  }

  .ace-contact-form-panel h2{
    font-size:34px!important;
  }

  .ace-contact-map{
    height:300px!important;
  }

  /* BLOG */

  body.blog .page-header{
    display:block!important;
    padding:70px 24px 54px!important;
  }

  body.blog .page-content{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:26px!important;
    padding:56px 24px 76px!important;
  }

  body.blog article.post img{
    height:220px!important;
  }

  body.blog article.post .entry-title{
    display:block!important;
    font-size:22px!important;
    padding:24px 24px 10px!important;
  }

  body.blog article.post p{
    padding:8px 24px 28px!important;
  }

  /* FOOTER */

  .ace-site-footer{
    display:block!important;
    background:#061120!important;
    color:#fff!important;
  }

  .ace-footer-main{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:34px!important;
    padding:56px 24px!important;
  }

  .ace-footer-brand img{
    width:210px!important;
    margin:0 0 22px!important;
  }

  .ace-footer-col h4{
    color:#fff!important;
    font-size:13px!important;
    letter-spacing:2px!important;
    text-transform:uppercase!important;
    margin:0 0 18px!important;
  }

  .ace-footer-col a,
  .ace-footer-col span,
  .ace-footer-brand p{
    display:block!important;
    color:rgba(255,255,255,.72)!important;
    font-size:16px!important;
    line-height:1.65!important;
    margin:0 0 12px!important;
    text-decoration:none!important;
  }

  .ace-footer-brand a[href^="tel"],
  .ace-footer-brand a[href^="mailto"]{
    color:#8abaff!important;
  }

  .ace-footer-btn{
    display:inline-flex!important;
    width:auto!important;
    min-height:48px!important;
    align-items:center!important;
    justify-content:center!important;
    background:#1877ff!important;
    color:#fff!important;
    padding:14px 22px!important;
    border-radius:8px!important;
    margin-top:16px!important;
  }

  .ace-footer-map iframe{
    width:100%!important;
    height:270px!important;
    border:0!important;
    border-radius:12px!important;
    filter:grayscale(100%) contrast(92%) brightness(92%);
  }

  .ace-footer-bottom{
    display:block!important;
    background:#030b14!important;
    padding:26px 24px!important;
    color:rgba(255,255,255,.62)!important;
    font-size:14px!important;
    line-height:1.7!important;
  }

  .ace-footer-bottom div{
    margin-bottom:8px!important;
  }

  .ace-footer-bottom a{
    color:#1877ff!important;
  }

}

/* SMALL MOBILE */

@media(max-width:520px){

  .ace-hero h1{
    font-size:40px!important;
  }

  .ace-page-hero{
    min-height:300px!important;
  }

  .ace-page-hero h1{
    font-size:36px!important;
  }

  .ace-services h2,
  .ace-case-top h2,
  .ace-trusted__heading h2{
    font-size:31px!important;
  }

  .ace-case img{
    height:230px!important;
    min-height:230px!important;
  }

}
/* FINAL CTA - MOBILE FIX */

@media(max-width:760px){

  .ace-final-cta{
    padding:0!important;
    background:#061120!important;
  }

  .ace-final-cta__inner{
    display:flex!important;
    flex-direction:column!important;
    min-height:auto!important;
    border-radius:0!important;
  }

  .ace-final-cta__text{
    order:1!important;
    padding:54px 24px 26px!important;
    text-align:left!important;
  }

  .ace-final-cta__text h2{
    margin:0 0 18px!important;
    color:#fff!important;
    font-size:36px!important;
    line-height:1.08!important;
    letter-spacing:-1.4px!important;
  }

  .ace-final-cta__text p{
    margin:0!important;
    color:rgba(255,255,255,.78)!important;
    font-size:17px!important;
    line-height:1.6!important;
  }

  .ace-final-cta__actions{
    order:2!important;
    display:flex!important;
    flex-direction:column!important;
    gap:14px!important;
    padding:0 24px 34px!important;
  }

  .ace-final-cta__btn{
    width:100%!important;
    min-height:56px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:12px!important;
    font-size:12px!important;
    font-weight:900!important;
    letter-spacing:1.6px!important;
    text-transform:uppercase!important;
    text-decoration:none!important;
  }

  .ace-final-cta__btn--primary{
    background:#1877ff!important;
    color:#fff!important;
  }

  .ace-final-cta__btn--outline{
    background:transparent!important;
    color:#fff!important;
    border:1px solid rgba(255,255,255,.28)!important;
  }

  .ace-final-cta__image{
    order:3!important;
    width:100%!important;
    height:260px!important;
    overflow:hidden!important;
  }

  .ace-final-cta__image img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    display:block!important;
  }
}
/* TRUSTED / TESTIMONIALS - MOBILE FIX */

@media(max-width:760px){

  .ace-trusted{
    padding:70px 0!important;
    background:#fff!important;
    overflow:hidden!important;
  }

  .ace-trusted__inner{
    display:block!important;
    padding:0 24px!important;
  }

  .ace-trusted__heading{
    margin-bottom:32px!important;
  }

  .ace-trusted__heading .ace-section-eyebrow{
    display:block!important;
    margin-bottom:14px!important;
    color:#1877ff!important;
    font-size:12px!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:3px!important;
    text-transform:uppercase!important;
  }

  .ace-trusted__heading h2{
    margin:0!important;
    color:#071525!important;
    font-size:36px!important;
    line-height:1.08!important;
    letter-spacing:-1.4px!important;
    font-weight:900!important;
  }

  .ace-testimonials{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  .ace-testimonial{
    position:relative!important;
    padding:30px 26px!important;
    border-radius:20px!important;
    background:#f7f9fc!important;
    border:1px solid #e3eaf3!important;
    box-shadow:0 14px 36px rgba(7,21,37,.06)!important;
    overflow:hidden!important;
  }

  .ace-quote{
    position:absolute!important;
    top:18px!important;
    right:22px!important;
    color:rgba(24,119,255,.14)!important;
    font-size:74px!important;
    line-height:1!important;
    font-weight:900!important;
  }

  .ace-testimonial p{
    position:relative!important;
    z-index:2!important;
    margin:0 0 24px!important;
    color:#425064!important;
    font-size:17px!important;
    line-height:1.65!important;
  }

  .ace-testimonial__author{
    position:relative!important;
    z-index:2!important;
    display:block!important;
    padding-top:18px!important;
    border-top:1px solid #e3eaf3!important;
  }

  .ace-testimonial__author strong{
    display:block!important;
    margin-bottom:4px!important;
    color:#071525!important;
    font-size:17px!important;
    line-height:1.3!important;
    font-weight:900!important;
  }

  .ace-testimonial__author span{
    display:block!important;
    color:#6b7480!important;
    font-size:14px!important;
    line-height:1.45!important;
  }

}
/* ================================
   KOOKA MOBILE HEADER + MENU
================================ */

.kooka-mobile-menu{
  display:none;
}

@media(max-width:1100px){

  .kooka-nav,
  .kooka-header__right{
    display:none!important;
  }

  .kooka-header{
    position:sticky!important;
    top:0!important;
    z-index:99999!important;
    background:#061120!important;
  }

  .admin-bar .kooka-header{
    top:46px!important;
  }

  .kooka-header__inner{
    height:82px!important;
    width:100%!important;
    padding:0 22px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
  }

  .kooka-header__logo{
    width:190px!important;
    min-width:190px!important;
  }

  .kooka-header__logo img{
    width:100%!important;
    max-height:54px!important;
    object-fit:contain!important;
  }

  .kooka-mobile-toggle{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:5px!important;
    width:44px!important;
    height:36px!important;
    border:1px solid #1877ff!important;
    border-radius:7px!important;
    background:transparent!important;
    padding:8px!important;
    cursor:pointer!important;
    z-index:100001!important;
  }

  .kooka-mobile-toggle span{
    display:block!important;
    width:100%!important;
    height:2px!important;
    background:#fff!important;
    transition:.25s ease!important;
  }

  body.kooka-menu-open .kooka-mobile-toggle span:nth-child(1){
    transform:translateY(7px) rotate(45deg);
  }

  body.kooka-menu-open .kooka-mobile-toggle span:nth-child(2){
    opacity:0;
  }

  body.kooka-menu-open .kooka-mobile-toggle span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg);
  }

  .kooka-mobile-menu{
    display:block!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    top:82px!important;
    bottom:0!important;
    z-index:100000!important;
    background:#061120!important;
    transform:translateX(100%);
    transition:.32s ease;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch;
  }

  .admin-bar .kooka-mobile-menu{
    top:128px!important;
  }

  body.kooka-menu-open .kooka-mobile-menu{
    transform:translateX(0);
  }

  body.kooka-menu-open{
    overflow:hidden!important;
  }

  .kooka-mobile-menu__inner{
    padding:28px 24px 44px!important;
    display:grid!important;
    gap:20px!important;
  }

  .kooka-mobile-menu a,
  .kooka-mobile-group strong{
    color:#fff!important;
    text-decoration:none!important;
  }

  .kooka-mobile-menu__inner > a{
    font-size:20px!important;
    font-weight:800!important;
    padding:10px 0!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
  }

  .kooka-mobile-group{
    padding:18px 0!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
  }

  .kooka-mobile-group strong{
    display:block!important;
    margin-bottom:12px!important;
    color:#8abaff!important;
    font-size:12px!important;
    font-weight:900!important;
    letter-spacing:2px!important;
    text-transform:uppercase!important;
  }

  .kooka-mobile-group a{
    display:block!important;
    padding:8px 0!important;
    color:rgba(255,255,255,.78)!important;
    font-size:17px!important;
    line-height:1.35!important;
  }

  .kooka-mobile-menu__cta{
    margin-top:14px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    height:56px!important;
    border-radius:12px!important;
    background:#1877ff!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:900!important;
    letter-spacing:1.8px!important;
    text-transform:uppercase!important;
    border-bottom:none!important;
  }

  .kooka-mobile-menu__phone{
    display:flex!important;
    justify-content:center!important;
    color:#8abaff!important;
    font-size:22px!important;
    font-weight:900!important;
    border-bottom:none!important;
  }
}
/* ================================
   KOOKA MOBILE HEADER + MENU
================================ */

.kooka-mobile-menu{
  display:none;
}

@media(max-width:1100px){

  .kooka-nav,
  .kooka-header__right{
    display:none!important;
  }

  .kooka-header{
    position:sticky!important;
    top:0!important;
    z-index:99999!important;
    background:#061120!important;
  }

  .admin-bar .kooka-header{
    top:46px!important;
  }

  .kooka-header__inner{
    height:82px!important;
    width:100%!important;
    padding:0 22px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
  }

  .kooka-header__logo{
    width:190px!important;
    min-width:190px!important;
  }

  .kooka-header__logo img{
    width:100%!important;
    max-height:54px!important;
    object-fit:contain!important;
  }

  .kooka-mobile-toggle{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:5px!important;
    width:44px!important;
    height:36px!important;
    border:1px solid #1877ff!important;
    border-radius:7px!important;
    background:transparent!important;
    padding:8px!important;
    cursor:pointer!important;
    z-index:100001!important;
  }

  .kooka-mobile-toggle span{
    display:block!important;
    width:100%!important;
    height:2px!important;
    background:#fff!important;
    transition:.25s ease!important;
  }

  body.kooka-menu-open .kooka-mobile-toggle span:nth-child(1){
    transform:translateY(7px) rotate(45deg);
  }

  body.kooka-menu-open .kooka-mobile-toggle span:nth-child(2){
    opacity:0;
  }

  body.kooka-menu-open .kooka-mobile-toggle span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg);
  }

  .kooka-mobile-menu{
    display:block!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    top:82px!important;
    bottom:0!important;
    z-index:100000!important;
    background:#061120!important;
    transform:translateX(100%);
    transition:.32s ease;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch;
  }

  .admin-bar .kooka-mobile-menu{
    top:128px!important;
  }

  body.kooka-menu-open .kooka-mobile-menu{
    transform:translateX(0);
  }

  body.kooka-menu-open{
    overflow:hidden!important;
  }

  .kooka-mobile-menu__inner{
    padding:28px 24px 44px!important;
    display:grid!important;
    gap:20px!important;
  }

  .kooka-mobile-menu a,
  .kooka-mobile-group strong{
    color:#fff!important;
    text-decoration:none!important;
  }

  .kooka-mobile-menu__inner > a{
    font-size:20px!important;
    font-weight:800!important;
    padding:10px 0!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
  }

  .kooka-mobile-group{
    padding:18px 0!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
  }

  .kooka-mobile-group strong{
    display:block!important;
    margin-bottom:12px!important;
    color:#8abaff!important;
    font-size:12px!important;
    font-weight:900!important;
    letter-spacing:2px!important;
    text-transform:uppercase!important;
  }

  .kooka-mobile-group a{
    display:block!important;
    padding:8px 0!important;
    color:rgba(255,255,255,.78)!important;
    font-size:17px!important;
    line-height:1.35!important;
  }

  .kooka-mobile-menu__cta{
    margin-top:14px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    height:56px!important;
    border-radius:12px!important;
    background:#1877ff!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:900!important;
    letter-spacing:1.8px!important;
    text-transform:uppercase!important;
    border-bottom:none!important;
  }

  .kooka-mobile-menu__phone{
    display:flex!important;
    justify-content:center!important;
    color:#8abaff!important;
    font-size:22px!important;
    font-weight:900!important;
    border-bottom:none!important;
  }
}
@media(max-width:1100px){

  .kooka-mobile-menu{
    display:block!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    top:82px!important;
    bottom:0!important;
    z-index:100000!important;
    background:#061120!important;
    transform:translateX(100%)!important;
    transition:transform .32s ease!important;
    overflow-y:auto!important;
    visibility:hidden!important;
    opacity:0!important;
  }

  .admin-bar .kooka-mobile-menu{
    top:128px!important;
  }

  body.kooka-menu-open .kooka-mobile-menu,
  .kooka-header.mobile-open .kooka-mobile-menu{
    transform:translateX(0)!important;
    visibility:visible!important;
    opacity:1!important;
  }

  body.kooka-menu-open{
    overflow:hidden!important;
  }

  .kooka-mobile-menu__inner{
    padding:28px 24px 44px!important;
    display:grid!important;
    gap:20px!important;
  }

  .kooka-mobile-menu a,
  .kooka-mobile-group strong{
    color:#fff!important;
    text-decoration:none!important;
  }

  .kooka-mobile-menu__inner > a{
    font-size:20px!important;
    font-weight:800!important;
    padding:10px 0!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
  }

  .kooka-mobile-group{
    padding:18px 0!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
  }

  .kooka-mobile-group strong{
    display:block!important;
    margin-bottom:12px!important;
    color:#8abaff!important;
    font-size:12px!important;
    font-weight:900!important;
    letter-spacing:2px!important;
    text-transform:uppercase!important;
  }

  .kooka-mobile-group a{
    display:block!important;
    padding:8px 0!important;
    color:rgba(255,255,255,.78)!important;
    font-size:17px!important;
  }

  .kooka-mobile-toggle{
    cursor:pointer!important;
    z-index:100001!important;
  }

  .kooka-header.mobile-open .kooka-mobile-toggle span:nth-child(1),
  body.kooka-menu-open .kooka-mobile-toggle span:nth-child(1){
    transform:translateY(7px) rotate(45deg)!important;
  }

  .kooka-header.mobile-open .kooka-mobile-toggle span:nth-child(2),
  body.kooka-menu-open .kooka-mobile-toggle span:nth-child(2){
    opacity:0!important;
  }

  .kooka-header.mobile-open .kooka-mobile-toggle span:nth-child(3),
  body.kooka-menu-open .kooka-mobile-toggle span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg)!important;
  }
}
/* =========================
   HERO - STATS MOBILE
========================= */
@media (max-width: 768px){

  .ace-hero-stats{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px 18px;
    margin-top:38px;
  }

  .ace-hero-stat{
    display:flex;
    align-items:flex-start;
    gap:14px;
    margin:0;
  }

  .ace-hero-stat svg,
  .ace-hero-stat img{
    width:38px;
    height:38px;
    flex-shrink:0;
  }

  .ace-hero-stat h4{
    margin:0 0 4px;
    font-size:1.55rem;
    line-height:1.1;
  }

  .ace-hero-stat p{
    margin:0;
    font-size:.95rem;
    line-height:1.3;
  }

}
@media (max-width:768px){

.ace-hero__stats{
    display:grid !important;
    grid-template-columns:repeat(2,1fr);
    gap:24px 18px;
    width:100%;
}

.ace-hero__stat{
    display:flex;
    align-items:flex-start;
    gap:12px;
    margin:0;
}

.ace-hero__stat img{
    width:38px;
    height:38px;
    flex-shrink:0;
}

.ace-hero__stat div{
    display:flex;
    flex-direction:column;
}

.ace-hero__stat strong{
    font-size:1.45rem;
    line-height:1.1;
}

.ace-hero__stat span{
    font-size:.9rem;
    line-height:1.3;
}

}
@media(max-width:760px){

  .ace-hero__stats{
    display:grid!important;
    grid-template-columns:repeat(2,1fr)!important;
    gap:22px 16px!important;
    width:100%!important;
    margin-top:34px!important;
  }

  .ace-hero__stat{
    display:flex!important;
    align-items:flex-start!important;
    gap:11px!important;
    margin:0!important;
  }

  .ace-hero__stat img{
    width:34px!important;
    height:34px!important;
    flex-shrink:0!important;
  }

  .ace-hero__stat strong{
    display:block!important;
    color:#fff!important;
    font-size:18px!important;
    line-height:1.05!important;
    font-weight:900!important;
    margin:0 0 4px!important;
  }

  .ace-hero__stat span{
    display:block!important;
    color:rgba(255,255,255,.72)!important;
    font-size:12px!important;
    line-height:1.25!important;
    font-weight:700!important;
  }

  .ace-floating-contact{
    display:none!important;
  }

}
/* =====================================
   MOBILE - TESTIMONIALS REDESIGN
===================================== */

@media (max-width:760px){

  /* Separación entre Case Studies y Testimonials */

  .ace-case-studies{
      padding-bottom:48px!important;
      background:#fff!important;
  }

  .ace-trusted{
      background:#f4f7fb!important;
      padding:58px 0 72px!important;
      border-top:1px solid #e6edf5;
  }

  .ace-trusted__inner{
      padding:0 24px!important;
  }

  .ace-trusted__heading{
      margin-bottom:34px!important;
  }

  .ace-trusted__heading h2{
      max-width:320px;
  }

  /* Tarjetas */

  .ace-testimonials{
      display:grid;
      gap:18px;
  }

  .ace-testimonial{
      background:#fff!important;
      border:1px solid #dfe7f2!important;
      border-radius:22px!important;
      box-shadow:0 12px 32px rgba(7,21,37,.05)!important;
      padding:30px 26px!important;
  }

  .ace-quote{
      color:#d8e5fb!important;
      font-size:72px!important;
  }

}
/*====================================
    TOPBAR MOBILE
====================================*/

@media (max-width:991px){

    .kooka-topbar{
        display:block;
    }

    .kooka-topbar__inner{
        height:42px;
        padding:0 18px;
    }

    .kooka-topbar__left{
        flex:1;
    }

    .kooka-topbar__left a{
        font-size:13px;
        font-weight:600;
    }

    .kooka-topbar__left span{
        display:none;
    }

    .kooka-topbar__right{
        gap:18px;
    }

    /* Ocultamos Self Help y Console Login */

    .kooka-topbar__right .kooka-topbar__item,
    .kooka-topbar__right a:nth-child(2){
        display:none;
    }

    .kooka-topbar__right a{
        font-size:13px;
    }

}
/* HEADER MOBILE FIX */
@media (max-width: 1024px) {

  .kooka-topbar {
    display: none !important;
  }

  .kooka-nav,
  .kooka-header__right {
    display: none !important;
  }

  .kooka-header {
    position: relative;
    z-index: 9999;
  }

  .kooka-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 22px 24px;
  }

  .kooka-header__logo img {
    max-width: 210px;
    height: auto;
    display: block;
  }

  .kooka-mobile-toggle {
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    gap: 7px;
    width: 52px;
    height: 52px;
    background: transparent;
    border: 2px solid #2384ff;
    border-radius: 12px;
    cursor: pointer;
    z-index: 10001;
  }

  .kooka-mobile-toggle span {
    display: block;
    width: 28px;
    height: 3px;
    background: #ffffff;
    border-radius: 99px;
    margin: 0 auto;
  }

  .kooka-mobile-menu {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #06111f;
    border-top: 1px solid rgba(255,255,255,.12);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all .25s ease;
    z-index: 9998;
  }

  .kooka-mobile-menu.is-open {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }

  .kooka-mobile-menu__inner {
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 18px;
  }

  .kooka-mobile-menu a,
  .kooka-mobile-group strong {
    color: #ffffff !important;
    text-decoration: none;
    font-size: 16px;
    font-weight: 700;
  }

  .kooka-mobile-group {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-top: 10px;
    border-top: 1px solid rgba(255,255,255,.12);
  }

  .kooka-mobile-group a {
    color: rgba(255,255,255,.75) !important;
    font-weight: 500;
    padding-left: 12px;
  }

  .kooka-mobile-menu__cta {
    margin-top: 10px;
    background: #2384ff;
    color: #fff !important;
    text-align: center;
    padding: 16px;
    border-radius: 10px;
    text-transform: uppercase;
    letter-spacing: 2px;
  }

  .kooka-mobile-menu__phone {
    color: #2b8cff !important;
    font-size: 22px !important;
    text-align: center;
  }
}
/* ACCESSIBILITY CONTRAST FIX - MOBILE */

@media(max-width:760px){

  .ace-btn--primary,
  .ace-final-cta__btn--primary,
  .kooka-mobile-menu__cta{
    background:#005FCC!important;
    border-color:#005FCC!important;
    color:#fff!important;
  }

  .ace-section-eyebrow,
  .ace-services__view,
  .ace-view-all,
  .ace-case__text span,
  .ace-case__text strong,
  .ace-service-card span,
  .ace-footer-bottom a{
    color:#005FCC!important;
  }

  .ace-trusted__heading .ace-section-eyebrow{
    color:#005FCC!important;
  }

}
/* ACCESSIBILITY CONTRAST FIX - FINAL */

@media(max-width:760px){

  .ace-services .ace-section-eyebrow,
  .ace-services__view{
    color:#004FA8!important;
  }

  .ace-footer-bottom,
  .ace-footer-bottom div{
    color:#d6e4f5!important;
  }

  .ace-footer-bottom a{
    color:#9ecbff!important;
  }

}
/* MOBILE LOGO CLICK FIX */

@media(max-width:1100px){

  .kooka-header__logo{
    position:relative!important;
    z-index:100003!important;
    display:flex!important;
    pointer-events:auto!important;
  }

  .kooka-header__logo img{
    pointer-events:none!important;
  }

  .kooka-mobile-menu{
    z-index:100000!important;
  }

  .kooka-mobile-toggle{
    z-index:100004!important;
  }

}