/* Applies at every width: preserve the map link, deactivate empty corners. */
html body #wrapper .fusion-tb-footer .ccrs-mf-map-element,
html body #wrapper .fusion-tb-footer .ccrs-mf-map-frame,
html body #wrapper .fusion-tb-footer a.ccrs-mf-map-link{
  pointer-events:none!important;cursor:default!important;
}
html body #wrapper .fusion-tb-footer a.ccrs-mf-map-link::before,
html body #wrapper .fusion-tb-footer a.ccrs-mf-map-link::after{
  pointer-events:none!important;
}
html body #wrapper .fusion-tb-footer .ccrs-mf-map-image{
  pointer-events:auto!important;cursor:pointer!important;
  -webkit-clip-path:polygon(85.00% 0.82%,73.25% 5.25%,52.50% 14.10%,25.75% 30.98%,0.75% 47.54%,0.50% 50.33%,1.50% 52.62%,19.75% 79.67%,24.50% 85.90%,33.00% 96.23%,41.25% 99.51%,43.75% 99.51%,51.50% 95.90%,53.00% 94.10%,71.25% 66.39%,76.50% 54.75%,98.25% 3.77%,98.25% 2.95%,97.00% 2.13%,86.50% 0.82%)!important;clip-path:polygon(85.00% 0.82%,73.25% 5.25%,52.50% 14.10%,25.75% 30.98%,0.75% 47.54%,0.50% 50.33%,1.50% 52.62%,19.75% 79.67%,24.50% 85.90%,33.00% 96.23%,41.25% 99.51%,43.75% 99.51%,51.50% 95.90%,53.00% 94.10%,71.25% 66.39%,76.50% 54.75%,98.25% 3.77%,98.25% 2.95%,97.00% 2.13%,86.50% 0.82%)!important;
}
html body #wrapper .fusion-tb-footer a.ccrs-mf-map-link:focus-visible{
  outline:2px solid #09ea9f!important;outline-offset:4px!important;
}

/* Isolated font names keep the existing page typography untouched. */
@font-face{font-family:CCRSFooterRegular;src:url(fonts/proxima-regular.woff2) format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:CCRSFooterHeavy;src:url(fonts/proxima-extrabold.woff2) format('woff2');font-style:normal;font-weight:400 900;font-display:swap}

/* The original footer is the fallback until the replacement mounts. */
html body #wrapper #ccrs-mobile-footer{display:none!important}

@media screen and (max-width:767px){
  html body #wrapper .fusion-tb-footer .ccrs-footer-bar.ccrs-mf-ready{
    display:block!important;position:relative!important;box-sizing:border-box!important;
    width:100%!important;max-width:100%!important;min-width:0!important;
    height:auto!important;min-height:0!important;max-height:none!important;
    margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
    background:transparent!important;background-image:none!important;
    box-shadow:none!important;overflow:visible!important;transform:none!important;
  }
  html body #wrapper .fusion-tb-footer .ccrs-footer-bar.ccrs-mf-ready::before,
  html body #wrapper .fusion-tb-footer .ccrs-footer-bar.ccrs-mf-ready::after{
    display:none!important;content:none!important;
  }
  html body #wrapper .fusion-tb-footer .ccrs-footer-bar.ccrs-mf-ready>:not(#ccrs-mobile-footer){display:none!important}
  html body #wrapper #ccrs-mobile-footer{
    display:block!important;position:relative!important;isolation:isolate;
    box-sizing:border-box!important;width:100%!important;max-width:100%!important;
    min-width:0!important;height:auto!important;margin:0!important;padding:0!important;
    border:2px solid #09ea9f!important;border-radius:16px!important;background:#000914!important;box-shadow:none!important;
    color:#eef2fc!important;-webkit-text-fill-color:#eef2fc!important;
    font-family:CCRSFooterRegular,proximaregular,Arial,sans-serif!important;
    text-align:center!important;line-height:1.4!important;overflow-wrap:normal!important;
  }
  html body #wrapper #ccrs-mobile-footer *,
  html body #wrapper #ccrs-mobile-footer *::before,
  html body #wrapper #ccrs-mobile-footer *::after{box-sizing:border-box!important}
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__inner{
    display:block!important;width:100%!important;max-width:540px!important;
    margin:0 auto!important;padding:clamp(46px,14.35vw,70px) max(17px,env(safe-area-inset-right)) calc(22px + env(safe-area-inset-bottom)) max(17px,env(safe-area-inset-left))!important;
  }
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__heading{
    display:block!important;margin:0!important;padding:0!important;border:0!important;
    font:400 clamp(34px,10.8vw,56px)/1.06 CCRSFooterHeavy,proximaextrabold,'Arial Black',sans-serif!important;
    text-align:center!important;text-transform:uppercase!important;letter-spacing:-.025em!important;
    color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:none!important;
  }
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__heading>span{
    display:block!important;font:inherit!important;letter-spacing:inherit!important;
    color:#fff!important;-webkit-text-fill-color:#fff!important;
  }
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__heading>.ccrs-mf__started{color:#09ea9f!important;-webkit-text-fill-color:#09ea9f!important}
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__intro{
    display:block!important;margin:12px 0 0!important;padding:0!important;
    font:400 clamp(16px,4.85vw,24px)/1.4 CCRSFooterRegular,proximaregular,Arial,sans-serif!important;
    color:#e5eafb!important;-webkit-text-fill-color:#e5eafb!important;letter-spacing:0!important;
  }
  html body #wrapper #ccrs-mobile-footer a{
    text-decoration:none!important;text-shadow:none!important;cursor:pointer!important;
    -webkit-tap-highlight-color:rgba(9,234,159,.15);
  }
  html body #wrapper #ccrs-mobile-footer a::before,
  html body #wrapper #ccrs-mobile-footer a::after{display:none!important;content:none!important}
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__cta{
    display:flex!important;align-items:center!important;justify-content:center!important;
    gap:20px!important;width:100%!important;max-width:100%!important;min-height:70px!important;
    height:auto!important;margin:26px 0 0!important;padding:18px 18px!important;
    border:0!important;border-radius:10px!important;
    background:linear-gradient(105deg,#09ea9f 0%,#00d7ba 48%,#009fff 100%)!important;
    box-shadow:none!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
    font:400 clamp(17px,5vw,24px)/1.15 CCRSFooterHeavy,proximaextrabold,Arial,sans-serif!important;
    letter-spacing:-.015em!important;text-align:center!important;text-transform:uppercase!important;
    transform:translateY(0)!important;filter:none!important;
    transition:var(--ccrs-cta-transition,transform .20s cubic-bezier(.2,.72,.2,1),filter .20s ease,box-shadow .20s ease,background .20s ease,border-color .20s ease,color .20s ease)!important;
  }
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__cta-label{
    display:block!important;min-width:0!important;font:inherit!important;letter-spacing:inherit!important;
    color:#fff!important;-webkit-text-fill-color:#fff!important;
  }
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__arrow{
    display:block!important;width:30px!important;height:30px!important;flex:0 0 30px!important;
    color:#fff!important;fill:none!important;transform:translateX(0)!important;
    transition:var(--ccrs-cta-arrow-transition,transform .20s cubic-bezier(.2,.72,.2,1),filter .20s ease,color .20s ease)!important;
  }
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__brand{
    display:block!important;position:relative!important;isolation:isolate!important;width:86%!important;max-width:390px!important;
    margin:34px auto 0!important;padding:0!important;background:none!important;border:0!important;
  }
  /* Responsive light behind the original sharp logo, fading to the base colour. */
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__brand::before{
    content:""!important;display:block!important;position:absolute!important;
    z-index:-1!important;pointer-events:none!important;left:50%!important;top:50%!important;
    width:120%!important;height:clamp(140px,46vw,220px)!important;
    transform:translate(-50%,-50%)!important;border:0!important;
    background:radial-gradient(ellipse at center,rgba(0,146,214,.17) 0%,rgba(0,115,174,.09) 38%,rgba(0,115,174,0) 72%)!important;
  }
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__logo{
    display:block!important;width:100%!important;max-width:100%!important;height:auto!important;
    margin:0!important;padding:0!important;border:0!important;object-fit:contain!important;
    filter:none!important;opacity:1!important;transform:none!important;
    transition:transform .20s ease,filter .20s ease!important;
  }
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__links{
    display:grid!important;grid-template-columns:minmax(0,.45fr) minmax(0,.55fr)!important;
    align-items:stretch!important;gap:0!important;width:100%!important;margin:32px 0 0!important;
    padding:0 10px!important;text-align:left!important;
  }
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__connect{display:block!important;min-width:0!important;padding:0 16px 0 0!important}
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__information{
    display:flex!important;flex-direction:column!important;align-items:flex-start!important;min-width:0!important;
    border-left:1px solid #09ea9f!important;padding:0 0 0 24px!important;margin:0!important;
  }
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__label{
    display:block!important;margin:0 0 13px!important;padding:0!important;
    font:400 clamp(11px,3.1vw,14px)/1.2 CCRSFooterHeavy,proximaextrabold,Arial,sans-serif!important;
    letter-spacing:.13em!important;text-transform:uppercase!important;
    color:#e5eafb!important;-webkit-text-fill-color:#e5eafb!important;
  }
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__socials{display:flex!important;align-items:center!important;gap:clamp(12px,4.4vw,20px)!important;margin:0!important;padding:0!important}
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__social{
    display:flex!important;align-items:center!important;justify-content:center!important;
    width:clamp(42px,12.3vw,54px)!important;height:clamp(42px,12.3vw,54px)!important;flex:0 0 clamp(42px,12.3vw,54px)!important;
    padding:8px!important;margin:0!important;border:0!important;border-radius:50%!important;
    color:#fff!important;-webkit-text-fill-color:#fff!important;box-shadow:none!important;
  }
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__social svg{display:block!important;width:28px!important;height:28px!important;color:#fff!important}
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__social--facebook{background:linear-gradient(135deg,#079aff,#0866ff)!important;padding:0!important;overflow:hidden!important}
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__social--facebook svg{transform:none!important;width:clamp(42px,12.3vw,54px)!important;height:clamp(42px,12.3vw,54px)!important;flex:0 0 clamp(42px,12.3vw,54px)!important;margin:0!important;padding:0!important}
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__social--instagram{background:radial-gradient(circle at 28% 100%,#ffdf70 0%,#ffbe46 17%,#fd5949 35%,#d6249f 62%,#6935dc 86%)!important}
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__legal{
    display:block!important;margin:0!important;padding:0!important;min-height:30px!important;
    font:400 clamp(14px,4.2vw,20px)/1.45 CCRSFooterHeavy,proximaextrabold,Arial,sans-serif!important;
    color:#09ea9f!important;-webkit-text-fill-color:#09ea9f!important;letter-spacing:0!important;
    white-space:normal!important;
  }
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__legal+.ccrs-mf__legal{margin-top:4px!important}
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__copyright{
    display:block!important;width:100%!important;margin:26px 0 0!important;padding:18px 0 0!important;
    border-top:1px solid #09ea9f!important;
    font:400 clamp(12px,3.5vw,17px)/1.5 CCRSFooterRegular,proximaregular,Arial,sans-serif!important;
    color:#e5eafb!important;-webkit-text-fill-color:#e5eafb!important;text-align:center!important;
    letter-spacing:0!important;
  }
  html body #wrapper #ccrs-mobile-footer a:focus-visible{outline:2px solid #fff!important;outline-offset:5px!important}
  /* Use the Global CTA Registry's shared tokens; defaults keep the same effect
     available if that plugin is inactive. The shared button layer unifies
     these values across the site when JavaScript is available. */
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__cta:focus-visible{
    transform:var(--ccrs-cta-transform,translateY(-5px))!important;
    background:var(--ccrs-cta-filled-bg,linear-gradient(90deg,#09EA9F 0%,#0CD6C0 48%,#159EF6 100%))!important;
    filter:var(--ccrs-cta-filled-filter,brightness(1.13) saturate(1.08))!important;
    box-shadow:var(--ccrs-cta-filled-shadow,0 16px 34px rgba(0,0,0,.32),0 0 0 1px rgba(9,234,159,.30),0 0 28px rgba(9,234,159,.38),0 0 38px rgba(21,158,246,.16))!important;
  }
  html body #wrapper #ccrs-mobile-footer .ccrs-mf__cta:focus-visible .ccrs-mf__arrow{
    transform:var(--ccrs-cta-arrow-transform,translateX(9px) scale(1.10))!important;
    filter:var(--ccrs-cta-arrow-filter,drop-shadow(0 0 5px rgba(255,255,255,.32)))!important;
  }
  @media(hover:hover) and (pointer:fine){
    html body #wrapper #ccrs-mobile-footer .ccrs-mf__cta:hover{
      transform:var(--ccrs-cta-transform,translateY(-5px))!important;
      background:var(--ccrs-cta-filled-bg,linear-gradient(90deg,#09EA9F 0%,#0CD6C0 48%,#159EF6 100%))!important;
      filter:var(--ccrs-cta-filled-filter,brightness(1.13) saturate(1.08))!important;
      box-shadow:var(--ccrs-cta-filled-shadow,0 16px 34px rgba(0,0,0,.32),0 0 0 1px rgba(9,234,159,.30),0 0 28px rgba(9,234,159,.38),0 0 38px rgba(21,158,246,.16))!important;
    }
    html body #wrapper #ccrs-mobile-footer .ccrs-mf__cta:hover .ccrs-mf__arrow{
      transform:var(--ccrs-cta-arrow-transform,translateX(9px) scale(1.10))!important;
      filter:var(--ccrs-cta-arrow-filter,drop-shadow(0 0 5px rgba(255,255,255,.32)))!important;
    }
    html body #wrapper #ccrs-mobile-footer .ccrs-mf__legal:hover{color:#fff!important;-webkit-text-fill-color:#fff!important}
  }
  @media(max-width:360px){
    html body #wrapper #ccrs-mobile-footer .ccrs-mf__links{padding-inline:4px!important;grid-template-columns:minmax(0,.43fr) minmax(0,.57fr)!important}
    html body #wrapper #ccrs-mobile-footer .ccrs-mf__information{padding-left:16px!important}
    html body #wrapper #ccrs-mobile-footer .ccrs-mf__socials{gap:10px!important}
    html body #wrapper #ccrs-mobile-footer .ccrs-mf__cta{gap:12px!important;padding-inline:14px!important}
  }
  @media(prefers-reduced-motion:reduce){
    html body #wrapper #ccrs-mobile-footer{
      --ccrs-cta-transform:none;--ccrs-cta-arrow-transform:none;
      --ccrs-cta-transition:none;--ccrs-cta-arrow-transition:none;
    }
    html body #wrapper #ccrs-mobile-footer .ccrs-mf__cta,
    html body #wrapper #ccrs-mobile-footer .ccrs-mf__arrow,
    html body #wrapper #ccrs-mobile-footer .ccrs-mf__logo{transition:none!important}
    html body #wrapper #ccrs-mobile-footer .ccrs-mf__brand:is(:hover,:focus-visible) .ccrs-mf__logo{transform:none!important}
  }
}
