/* ==========================================================
   OG Platform — Home Frontend Styles
   Version: 3.1.2
========================================================== */

@media (max-width: 768px) {
  html,
  body,
  .page-id-90,
  .og-site-main,
  .og-homepage {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .page-id-90 *,
  .og-homepage * {
    box-sizing: border-box !important;
  }

  .og-homepage .og-site-container {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .og-home-hero {
    width: 100% !important;
    max-width: 100% !important;
    padding: 36px 0 48px !important;
    overflow: hidden !important;
  }

  .og-home-hero-inner {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .og-home-hero-copy {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .og-home-eyebrow {
    font-size: 15px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.08em !important;
  }

  .og-home-hero-title,
  .og-home-hero-title span {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    font-size: 42px !important;
    line-height: 0.98 !important;
    letter-spacing: -0.055em !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }

  .og-home-hero-text {
    width: 100% !important;
    max-width: 100% !important;
    font-size: 18px !important;
    line-height: 1.45 !important;
  }

  .og-home-hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .og-home-hero-actions a {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .og-home-hero-stats {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  .og-home-hero-stats li {
    max-width: 100% !important;
    white-space: normal !important;
  }

  .og-home-hero-visual {
    display: none !important;
  }

  .og-home-section,
  .og-home-trust-bar,
  .og-home-finder,
  .og-home-categories,
  .og-home-steps,
  .og-home-business,
  .og-home-why,
  .og-home-testimonials,
  .og-home-final-cta {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .og-home-section [class*="grid"],
  .og-home-section [class*="cards"],
  .og-home-section [class*="list"] {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .og-home-section article,
  .og-home-section .og-card,
  .og-home-section [class*="card"] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
}

@media (max-width: 768px) {
  .og-home-hero-title,
  .og-home-hero-title span {
    font-size: 38px !important;
    line-height: 1.02 !important;
    letter-spacing: -0.045em !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
}

@media (max-width: 768px) {
  .og-home-hero-title {
    max-width: 100% !important;
    font-size: 36px !important;
    line-height: 1.05 !important;
    letter-spacing: -0.035em !important;
  }

  .og-home-hero-title span {
    display: inline !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }
}


/* ==========================================================
   OG PLATFORM
   MOBILE APP MENU FOUNDATION
========================================================== */

.og-mobile-menu {
  position: fixed;
  inset: 0;
  z-index: 999999;
  background: rgba(8,14,30,.55);
  backdrop-filter: blur(10px);

  opacity: 0;
  visibility: hidden;

  transition:
      opacity .28s ease,
      visibility .28s ease;
}

.og-mobile-menu.is-open{
  opacity:1;
  visibility:visible;
}

.og-mobile-menu-panel{

  position:absolute;

  top:0;
  left:0;

  width:min(92vw,390px);

  height:100%;

  background:#fff;

  display:flex;
  flex-direction:column;

  transform:translateX(-105%);

  transition:transform .34s cubic-bezier(.22,.61,.36,1);

  box-shadow:
      0 30px 70px rgba(0,0,0,.18);
}

.og-mobile-menu.is-open .og-mobile-menu-panel{

  transform:translateX(0);

}

.og-mobile-menu-header{

  padding:28px 26px;

  border-bottom:1px solid #edf2f7;

}

.og-mobile-menu-logo{

  width:170px;
  display:block;

}

.og-mobile-menu-title{

  margin-top:18px;

  font-size:14px;

  color:#6b7280;

  letter-spacing:.08em;

  text-transform:uppercase;

}

.og-mobile-menu-list{

  flex:1;

  overflow:auto;

  padding:12px 0;

}

.og-mobile-menu-list a{

  display:flex;

  justify-content:space-between;

  align-items:center;

  padding:18px 26px;

  text-decoration:none;

  color:#0f172a;

  font-size:17px;

  font-weight:600;

  border-bottom:1px solid #f3f4f6;

  transition:.2s;
}

.og-mobile-menu-list a:hover{

  background:#f8fbff;

  padding-left:34px;

}

.og-mobile-menu-section{

  padding:20px 26px 10px;

  font-size:11px;

  font-weight:700;

  color:#94a3b8;

  letter-spacing:.12em;

  text-transform:uppercase;

}

.og-mobile-menu-footer{

  border-top:1px solid #edf2f7;

  padding:22px;

}

.og-mobile-menu-account{

  display:flex;

  gap:12px;
}

.og-mobile-menu-btn{

  flex:1;

  border-radius:16px;

  text-align:center;

  padding:14px;

  font-weight:700;

  text-decoration:none;

  color:#fff;

  background:#1f6fff;
}


@media (max-width: 782px) {
  .og-mobile-menu.is-open .og-mobile-menu-search {
    display: flex !important;
    position: relative !important;
    transform: translateY(-70px) !important;
    margin: 0 28px -18px !important;
    z-index: 999999 !important;
  }

  .og-mobile-menu.is-open .og-mobile-menu-content {
    position: relative !important;
    margin-top: 0 !important;
    z-index: 1 !important;
  }
}

@media (max-width: 782px) {
  .og-mobile-menu.is-open .og-mobile-menu-panel {
    position: absolute !important;
  }

  .og-mobile-menu.is-open .og-mobile-menu-top {
    position: relative !important;
    padding-bottom: 86px !important;
  }

  .og-mobile-menu.is-open .og-mobile-menu-search {
    position: absolute !important;
    left: 28px !important;
    right: 28px !important;
    top: 210px !important;
    width: auto !important;
    margin: 0 !important;
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 999999 !important;
  }

  .og-mobile-menu.is-open .og-mobile-menu-content {
    padding-top: 22px !important;
  }
}