/* assets/css/sections/80212e90.css assets/css/sections/e46a88dd.css assets/css/sections/a7de590f.css assets/css/sections/cdb114bb.css assets/css/sections/5fd89fa0.css assets/css/sections/32b8f5bc.css assets/css/sections/5d46318f.css assets/css/sections/a266e989.css assets/css/sections/e6c0b977.css assets/css/sections/ba8ed25f.css assets/css/sections/620ca0b1.css */

.gl-team__link:hover::after{transform:translateX(4px)}
@media (prefers-reduced-motion:reduce){.gl-team__link::after{transition:none}.gl-team__link:hover::after{transform:none}}


  .contact-form {
    column-gap: 24px;
  }
  .label {
    pointer-events: none;
  }
  .label.label_active {
    pointer-events: none;
    color: #003557;
    text-transform: uppercase;
    margin-top: -6px;
    font-size: 14px;
    font-weight: 700;
    line-height: 15px;
    padding-top: 0;
  }
  .label::before {
    content: '';
    background: #F6F6F6;
    height: calc(100% + 6px);
    width: calc(100% - 6px);
    display: block;
    position: absolute;
    top: -3px;
    left: 11px;
    z-index: -1;
    opacity: 0;
    transition: all 0.3s ease;
  }
  .label.label_active::before {
    opacity: 1;
  }
  .field_invalid {
    border: 1px solid #D22528;  
  }
  .field_invalid-block + .field__err + .field__err-block,
  .field_invalid + .field__err {
    opacity: 1;
    pointer-events: none;
  }
  
  .field__err-block::before {
  content: '';
  width: 13px;
  height: 13px;
  background: #D22528;
  position: absolute;
  top: -6px;
  right: 16px;
  transform: rotate(45deg);
  }
  
  .button-wrap {
    flex-wrap: wrap;
  }
  @media screen and (max-width: 359px) {
    .button-wrap__block {
      flex-direction: column;
    }
    .button-wrap__text {
      text-align: center;
    }
  }



 
  .label.label_active {
    inset: 0% auto auto 0%;
  }

  .label.label_active + textarea,
  .label.label_active + select,
  .label.label_active + input {
    border-color: #003557;
  }
  .label.label_active + select.field_invalid,
  .label.label_active + input.field_invalid {
    border: 1px solid #D22528;
  }

  
 



  .field__err {
    pointer-events: none;
  }

 
 /*
    .widget-align-right{
        height: 80px !important;
      min-height: 80px !important;
    } */
    .widget-align-right:has(.hs-shadow-container.active){
      overflow: visible;
      width: 100%!important;
      height: 100%!important;
    }
    #hubspot-messages-iframe-container iframe{
      width: 100%!important;
      height: 100%!important;
    }
 
div.gl-se__tile:hover {
  transform: none;
}
  



/* Registration modal (fin-modal): /stuck-doing-admin, /do-it-myself, /financial-clarity etc. */
.fin-modal.is-open{opacity:1;display:flex}
.fin-modal__card.is-open{transform:translateY(0) scale(1)}

/* Video popup (Andy preview) */
.modal-web.is-open{display:flex}

/* Sticky header that appears after the hero (/90-day-path etc.) */
.hdr-web.is-visible{transform:translateY(0)}

/* Offer modal (older landings) */
.modal.modal_offer.is-visible{display:block}

  .gl-vmodal.gl-vmodal--open{display:flex}


.hero__video {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.hero__video .picture-item { 
   position: absolute;
  top: 0;
  left: 0; 
  z-index: 0; 
  width: 100%;
  height: 100%;
}
.hero__video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; 
  border: 0;
  pointer-events: none;
  z-index: 2;
}




  /* accordion */
  .gl-faq__a {
    max-height: 0;
    overflow: hidden;
    transition: max-height 380ms cubic-bezier(0.22, 0.61, 0.36, 1);
    will-change: max-height;
  }

  /* rich text children */
  .gl-faq__rt p,
  .gl-faq__rt ul,
  .gl-faq__rt ol {
    margin: 0 0 14px;
  }
  .gl-faq__rt > *:last-child {
    margin-bottom: 0;
  }
  .gl-faq__rt ul,
  .gl-faq__rt ol {
    padding-left: 20px;
  }
  .gl-faq__rt li {
    margin-bottom: 6px;
  }
  .gl-faq__rt li:last-child {
    margin-bottom: 0;
  }
  .gl-faq__rt h3,
  .gl-faq__rt h4,
  .gl-faq__rt h5 {
    margin: 20px 0 8px;
    font-family: Poppins, sans-serif;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: -0.01em;
    color: var(--gl-blue);
  }
  .gl-faq__rt h3 { font-size: 20px; }
  .gl-faq__rt h4 { font-size: 18px; }
  .gl-faq__rt h5 { font-size: 16px; }
  .gl-faq__rt strong,
  .gl-faq__rt b {
    font-weight: 700;
    color: var(--gl-blue);
  }
  .gl-faq__rt em,
  .gl-faq__rt i {
    font-style: italic;
  }
  .gl-faq__rt a {
    color: var(--gl-red);
    font-weight: 500;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.18em;
    transition: color 180ms;
  }
  .gl-faq__rt a:hover {
    color: var(--gl-red-hover);
  }
  .gl-faq__rt blockquote {
    margin: 16px 0;
    padding: 4px 0 4px 16px;
    border-left: 3px solid var(--gl-red);
    background: transparent;
    font-size: 16px;
    color: var(--gl-blue);
  }

  @media (prefers-reduced-motion: reduce) {
    .gl-faq__a,
    .gl-faq__ico,
    .gl-faq__rt a {
      transition: none;
    }
  }


  /* FAQ question is an h3 — drop the default heading margins */
  .gl-faq__q { margin: 0; }
  /* plus marker as a pseudo element so the FAQPage JSON-LD keeps a clean question string */
  .gl-faq__ico::after { content: "+"; }


/* Case slider: Swiper hooks on the CMS list, plus arrow and dot states.
   Layout and sizing live in Webflow classes — keep only what classes can't express. */

/* Swiper needs the CMS list to behave as the track and each item as a slide. */
.gl-cslider__viewport .w-dyn-list{width:100%}
.gl-cslider__viewport .w-dyn-items{display:flex;box-sizing:content-box;width:100%;height:100%;margin:0;padding:0;position:relative;transition-property:transform;z-index:1}
.gl-cslider__viewport .w-dyn-item{flex:0 0 100%;width:100%;max-width:100%;min-width:0;flex-shrink:0;height:auto;padding:0;position:relative;transition-property:transform}

/* Equal-height cards so the viewport does not jump between slides. */
.gl-cslider__viewport .w-dyn-item > .gl-case{height:100%}

/* Arrows */
.gl-cslider__nav svg{width:17px;height:13px;display:block}
.gl-cslider__nav:hover{background-color:var(--gl-red);border-color:var(--gl-red);color:#fff}
.gl-cslider__nav:focus-visible{outline:2px solid #fff;outline-offset:3px}
.gl-cslider__nav.swiper-button-disabled{opacity:.4;cursor:default;pointer-events:none}

/* Pagination bullets */
.gl-cslider__dots .swiper-pagination-bullet{width:8px;height:8px;border:0;border-radius:999px;padding:0;margin:0;cursor:pointer;background:rgba(255,255,255,.35);opacity:1;transition:width .3s,background-color .3s}
.gl-cslider__dots .swiper-pagination-bullet-active{width:30px;background:#fff}
.gl-cslider__dots .swiper-pagination-bullet:focus-visible{outline:2px solid #fff;outline-offset:3px}
.gl-cslider__dots:empty{display:none}

/* Light section: dots and focus rings need the blue, not white. */
.gl-results--light .gl-cslider__dots .swiper-pagination-bullet{background:rgba(0,53,87,.28)}
.gl-results--light .gl-cslider__dots .swiper-pagination-bullet-active{background:var(--gl-blue)}
.gl-results--light .gl-cslider__dots .swiper-pagination-bullet:focus-visible{outline-color:var(--gl-blue)}
.gl-results--light .gl-cslider__nav:focus-visible{outline-color:var(--gl-blue)}

@media (prefers-reduced-motion:reduce){
  .gl-cslider__viewport .w-dyn-items{transition-duration:1ms !important}
  .gl-cslider__dots .swiper-pagination-bullet{transition:none}
}


/* Case study card: CMS rich text styled by tag */

/* --- Person block --- */
.gl-case__rt-person p{margin:0;font-family:"Montserrat Custom",sans-serif;font-size:12.5px;line-height:1.35;color:var(--gl-gray-500)}
.gl-case__rt-person p:first-child{font-family:Poppins,sans-serif;font-size:15.5px;font-weight:700;line-height:1.2;color:var(--gl-blue)}
.gl-case__rt-person p strong{display:inline-flex;align-items:center;gap:6px;margin-top:5px;font-family:"Montserrat Custom",sans-serif;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gl-blue)}
.gl-case__rt-person p strong::before{content:"";flex:0 0 auto;width:15px;height:15px;border-radius:50%;background-color:var(--gl-blue);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E");background-size:9px 9px;background-repeat:no-repeat;background-position:50% 50%}

/* --- Body block --- */
.gl-case__rt-body h3{margin:0;font-family:Poppins,sans-serif;font-size:20px;font-weight:700;line-height:1.2;letter-spacing:-.01em;color:var(--gl-blue)}
.gl-case__rt-body p{margin:0 0 22px;font-family:"Montserrat Custom",sans-serif;font-size:15px;line-height:1.7;color:var(--gl-gray-700)}
.gl-case__rt-body p:last-child{margin-bottom:0}
.gl-case__rt-body h3+p{margin-top:5px}
.gl-case__rt-body p em{display:block;font-family:"Montserrat Custom",sans-serif;font-size:12px;font-style:normal;font-weight:700;letter-spacing:.05em;line-height:1.4;text-transform:uppercase;color:var(--gl-gray-500)}
.gl-case__rt-body p strong{display:block;margin-bottom:8px;font-family:"Montserrat Custom",sans-serif;font-size:11px;font-weight:700;letter-spacing:.14em;line-height:1.4;text-transform:uppercase;color:var(--gl-red)}
.gl-case__rt-body p:has(> strong:only-child){margin-bottom:8px}
.gl-case__rt-body p:has(> strong:only-child) strong{margin-bottom:0}

/* --- Metrics block --- */
.gl-case__rt-metrics ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none}
.gl-case__rt-metrics li{margin:0;padding:0;font-family:"Montserrat Custom",sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.04em;line-height:1.35;text-transform:uppercase;color:var(--gl-gray-500)}
.gl-case__rt-metrics li strong{display:block;margin-bottom:8px;font-family:Poppins,sans-serif;font-size:32px;font-weight:700;letter-spacing:-.02em;line-height:1;color:var(--gl-red)}

@media screen and (max-width:479px){
  .gl-case__rt-metrics ul{grid-template-columns:1fr}
}


/* New York page only: 5 pillars as 3 on top + 2 full-width below, desktop only.
   6-column track lets 3x2 fill the top row and 2x3 fill the bottom row.
   Below 992px Webflow's own medium/small rules take over untouched. */
@media screen and (min-width: 992px) {
  .gl-ocs__grid { grid-template-columns: repeat(6, 1fr); }
  .gl-ocs__grid > .gl-ocs__card { grid-column: span 2; }
  .gl-ocs__grid > .gl-ocs__card:nth-child(n + 4) { grid-column: span 3; }
}

.gl-faq__q{margin:0}.gl-faq__q:has(>.gl-faq__btn){padding-top:0;padding-bottom:0}.gl-faq__btn{display:flex;flex:1 1 auto;width:100%;justify-content:space-between;align-items:inherit;column-gap:16px;margin:0;padding:22px 0;border:0;border-radius:0;background:none;font:inherit;letter-spacing:inherit;color:inherit;text-align:left;cursor:pointer;-webkit-appearance:none;appearance:none}.gl-faq__btn:focus{outline:none}.gl-faq__btn:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:2px}