/* Prevent any horizontal drag or overflow on mobile */
html, body {
  overflow-x: hidden !important;
  max-width: 100vw !important;
  position: relative;
}

*, *:before, *:after {
  box-sizing: border-box !important;
}

.partner-logos>div.no-logo span{position:static;font-size:18px;color:#173f34;letter-spacing:.06em;text-align:center}
.film-frame .play-button{display:none!important}
.brand-logo img{width:335px;max-width:34vw;height:64px}.page-nav .brand-logo{background:#fff;padding:2px 12px}.page-nav .brand-logo img{width:310px;max-width:55vw}@media(max-width:600px){.brand-logo img{width:245px;max-width:66vw;height:54px}}
.editorial-art{background:url('assets/business-studio.webp') center 38%/cover no-repeat!important}.editorial-art:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#0b241fc9,transparent 68%)}.editorial-art>span{position:relative;z-index:2}.editorial-art .sun{display:none}.featured-insight{transition:transform .35s}.featured-insight:hover{transform:translateY(-5px)}.insight-grid a{display:inline-block;padding:8px 0}.small-insights article{transition:padding .3s,background .3s}.small-insights article:hover{padding-left:18px;background:#ffffff33}.conversion-banner{position:fixed;right:22px;bottom:22px;z-index:60;background:#fff;color:#10231f;box-shadow:0 12px 45px #0716122b;padding:15px 18px;display:flex;align-items:center;gap:18px;font-size:11px}.conversion-banner .button{min-height:40px;padding:0 16px}@media(max-width:600px){.conversion-banner{left:10px;right:10px;bottom:10px;justify-content:space-between}.conversion-banner>span{max-width:145px}}
@media(max-width:700px){.editorial-art{background-image:url('assets/business-studio-mobile.webp')!important}}

/* FIX HERO IMAGE ON MOBILE (picture > img) */
.hero picture, .hero picture img, .hero img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* Clean Mobile Header & Horizontal Scroll Prevention */
@media(max-width: 900px) {
  .site-header {
    padding: 0 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    max-width: 100vw !important;
  }
  .card-grid {
    width: 100% !important;
    max-width: 100% !important;
  }
  .trust-strip {
    width: 100% !important;
    max-width: 100vw !important;
  }
  /* Hide top header picker on mobile so hamburger & logo are perfectly aligned */
  .header-actions .global-picker {
    display: none !important;
  }
}

/* MOBILE QUOTE WIZARD MODAL PERFECT LAYOUT */
@media(max-width: 700px) {
  .modal.wizard, .modal {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    min-height: auto !important;
    max-height: 88vh !important;
    padding: 28px 16px 20px !important;
    overflow-y: auto !important;
    margin: auto !important;
    border-radius: 12px !important;
    box-shadow: 0 15px 50px rgba(0,0,0,0.3) !important;
  }
  .modal h2, .wizard-step h2 {
    font-size: 24px !important;
    line-height: 1.2 !important;
    margin: 10px 0 14px !important;
  }
  .option-grid {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }
  .option-grid label {
    min-height: 58px !important;
    padding: 12px 14px !important;
  }
  .option-grid span {
    font-size: 18px !important;
  }
  .two-col, .three-col {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  .phone-input {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }
  .wizard-controls {
    margin-top: 20px !important;
    display: flex !important;
    gap: 10px !important;
  }
  .wizard-controls button {
    flex: 1 !important;
  }
  .plan-grid {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }
  .plan-grid label {
    min-height: 72px !important;
    padding: 12px 14px !important;
  }
}
