/* =========================================================
       Quote page layout only
       Quote system styling remains controlled by css/quote.css
       Nav controlled by css/core-nav.css
       Hero/header controlled by css/core-page-header.css
       Footer controlled by css/core-footer.css
       ========================================================= */

    #mb-quote-page .mb-section {
      padding-top: clamp(14px, 2.2vw, 24px);
      padding-bottom: clamp(14px, 2.2vw, 24px);
    }

    #mb-quote-page .mb-core-page-hero {
      padding-bottom: clamp(18px, 3vw, 34px);
    }

    #mb-quote-page main > section + section {
      margin-top: 0;
    }

    #mb-quote-page .mb-footer {
      margin-top: clamp(38px, 5vw, 64px);
    }

    #mb-quote-page .mb-core-statement,
    #mb-quote-page .mb-core-route-copy,
    #mb-quote-page .mb-core-route-steps,
    #mb-quote-page .mb-core-promise,
    #mb-quote-page .mb-core-local,
    #mb-quote-page .quote-shell-panel {
      border-radius: 30px;
      padding: clamp(24px, 4vw, 42px);
      background: linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.045));
      border: 1px solid rgba(62,166,255,.12);
      box-shadow: var(--shadow, 0 28px 70px rgba(0,0,0,.32));
      backdrop-filter: blur(12px);
    }

    #mb-quote-page .mb-core-statement-grid,
    #mb-quote-page .mb-core-route {
      display: grid;
      grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
      gap: clamp(18px, 3vw, 32px);
      align-items: stretch;
    }

    #mb-quote-page .mb-core-route {
      gap: clamp(14px, 2vw, 22px);
    }

    #mb-quote-page .mb-core-statement h2,
    #mb-quote-page .mb-core-promise h2,
    #mb-quote-page .mb-core-local h2,
    #mb-quote-page .mb-core-route h2,
    #mb-quote-page .quote-shell-head h2 {
      margin: 0;
      font-family: "Outfit", Inter, sans-serif;
      font-size: clamp(34px, 5vw, 62px);
      line-height: .96;
      letter-spacing: -.035em;
      font-weight: 900;
      text-wrap: balance;
    }

    #mb-quote-page .mb-core-statement-copy,
    #mb-quote-page .mb-core-route-copy,
    #mb-quote-page .mb-core-route-steps {
      display: grid;
      gap: 18px;
    }

    #mb-quote-page .mb-core-route-copy {
      align-content: center;
    }

    #mb-quote-page .mb-core-statement-lede {
      margin: 0;
      color: rgba(255,255,255,.84);
      font-size: clamp(19px, 2.2vw, 25px);
      line-height: 1.55;
      font-weight: 800;
    }

    #mb-quote-page .mb-core-statement-copy p,
    #mb-quote-page .mb-core-route p,
    #mb-quote-page .mb-core-local p,
    #mb-quote-page .mb-core-promise p,
    #mb-quote-page .quote-shell-head p {
      margin: 0;
      color: var(--muted, rgba(255,255,255,.76));
      font-size: 16px;
      line-height: 1.72;
    }

    #mb-quote-page .mb-core-step {
      display: grid;
      grid-template-columns: 56px minmax(0, 1fr);
      gap: 16px;
      align-items: start;
      padding: 18px;
      border-radius: 22px;
      background: rgba(255,255,255,.045);
      border: 1px solid rgba(62,166,255,.10);
    }

    #mb-quote-page .mb-core-step-number {
      width: 48px;
      height: 48px;
      border-radius: 16px;
      display: grid;
      place-items: center;
      font-family: "Outfit", Inter, sans-serif;
      font-weight: 900;
      color: #fff;
      background: linear-gradient(135deg, rgba(255,77,77,.24), rgba(62,166,255,.24));
      border: 1px solid rgba(62,166,255,.16);
    }

    #mb-quote-page .mb-core-step h3 {
      margin: 0 0 6px;
      font-family: "Outfit", Inter, sans-serif;
      font-size: 22px;
      line-height: 1.05;
      font-weight: 900;
    }

    #mb-quote-page .mb-core-step p {
      margin: 0;
      color: var(--muted, rgba(255,255,255,.76));
      line-height: 1.65;
      font-size: 15px;
    }

    #mb-quote-page .mb-core-promise-list {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 14px;
      margin-top: 26px;
    }

    #mb-quote-page .mb-core-promise-item {
      display: flex;
      gap: 12px;
      align-items: flex-start;
      padding: 16px;
      border-radius: 20px;
      background: rgba(255,255,255,.045);
      border: 1px solid rgba(62,166,255,.10);
      color: #fff;
      font-weight: 800;
      line-height: 1.35;
    }

    #mb-quote-page .mb-core-tick {
      width: 24px;
      height: 24px;
      border-radius: 999px;
      display: grid;
      place-items: center;
      flex: 0 0 auto;
      color: #fff;
      background: linear-gradient(135deg, var(--red-1, #ff4d4d), var(--blue-1, #3ea6ff));
      font-size: 14px;
      font-weight: 900;
    }

    #mb-quote-page .mb-core-local,
    #mb-quote-page .quote-shell-head {
      text-align: center;
    }

    #mb-quote-page .mb-core-local h2,
    #mb-quote-page .mb-core-local p,
    #mb-quote-page .quote-shell-head h2,
    #mb-quote-page .quote-shell-head p {
      margin-left: auto;
      margin-right: auto;
    }

    #mb-quote-page .mb-core-local p,
    #mb-quote-page .quote-shell-head p {
      max-width: 760px;
      margin-top: 16px;
    }

    #mb-quote-page .mb-core-page-hero-shell,
    #mb-quote-page .mb-core-page-copy,
    #mb-quote-page .mb-core-page-card-panel,
    #mb-quote-page .mb-core-statement,
    #mb-quote-page .mb-core-route,
    #mb-quote-page .mb-core-promise,
    #mb-quote-page .quote-shell-panel {
      opacity: 0;
      transform: translateY(24px);
      animation: mbQuotePageFadeIn .9s cubic-bezier(.2,.8,.2,1) forwards;
      will-change: opacity, transform;
    }

    #mb-quote-page .mb-core-page-hero-shell { animation-delay: .12s; }
    #mb-quote-page .mb-core-page-copy { animation-delay: .28s; }
    #mb-quote-page .mb-core-page-card-panel { animation-delay: .38s; }
    #mb-quote-page .mb-core-statement { animation-delay: .16s; }
    #mb-quote-page .mb-core-route { animation-delay: .18s; }
    #mb-quote-page .mb-core-promise { animation-delay: .2s; }
    #mb-quote-page .quote-shell-panel { animation-delay: .22s; }

    @keyframes mbQuotePageFadeIn {
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }

    #mb-quote-page .quote-shell-section {
      padding-top: clamp(16px, 2.4vw, 28px);
      padding-bottom: clamp(18px, 3vw, 34px);
    }

    #mb-quote-page .quote-shell-head {
      margin-bottom: clamp(18px, 2.4vw, 24px);
    }

    #mb-quote-page #quote_container {
      border-radius: 34px;
      box-shadow: var(--shadow, 0 28px 70px rgba(0,0,0,.32));
      overflow: hidden;
    }

    #mb-quote-page .radiator-pill-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(70px, 1fr));
      gap: 12px;
      max-width: 320px;
      margin: 0 auto;
    }

    #mb-quote-page .radiator-pill-grid .q_btn {
      width: 100%;
      min-width: 0;
    }

    @media (prefers-reduced-motion: reduce) {
      #mb-quote-page .mb-core-page-hero-shell,
      #mb-quote-page .mb-core-page-copy,
      #mb-quote-page .mb-core-page-card-panel,
      #mb-quote-page .mb-core-statement,
      #mb-quote-page .mb-core-route,
      #mb-quote-page .mb-core-promise,
      #mb-quote-page .quote-shell-panel {
        opacity: 1;
        transform: none;
        animation: none;
      }
    }

    @media (max-width: 900px) {
      #mb-quote-page .mb-core-statement-grid,
      #mb-quote-page .mb-core-route {
        grid-template-columns: 1fr;
      }

      #mb-quote-page .mb-core-statement,
      #mb-quote-page .mb-core-route-copy,
      #mb-quote-page .mb-core-promise,
      #mb-quote-page .mb-core-local {
        text-align: center;
      }

      #mb-quote-page .mb-section {
        padding-top: 12px;
        padding-bottom: 12px;
      }

      #mb-quote-page .mb-core-promise-list {
        grid-template-columns: 1fr;
      }
    }

    @media (max-width: 640px) {
      #mb-quote-page #quote_container {
        border-radius: 28px;
      }

      #mb-quote-page .mb-core-step {
        grid-template-columns: 1fr;
        text-align: center;
      }

      #mb-quote-page .mb-core-step-number {
        margin: 0 auto;
      }

      #mb-quote-page .mb-core-promise-item {
        flex-direction: column;
        text-align: center;
        align-items: center;
      }

      #mb-quote-page .radiator-pill-grid {
        grid-template-columns: repeat(2, minmax(70px, 1fr));
        max-width: 240px;
      }
    }


/* Shared-design quote page additions. The quote system itself remains controlled by css/quote.css. */
.mb-svg-defs{position:absolute}.mb-skip-link{position:fixed;top:16px;left:16px;z-index:9999;padding:12px 18px;border-radius:12px;background:#fff;color:#07111f;box-shadow:0 12px 30px rgba(0,0,0,.28);font:800 14px/1 Inter,system-ui,sans-serif;transform:translateY(-180%);transition:transform .2s ease}.mb-skip-link:focus{transform:translateY(0);outline:3px solid #3ea6ff;outline-offset:3px}
#mb-quote-page .mb-breadcrumb{position:relative;z-index:2;margin:-28px 0 34px}#mb-quote-page .mb-breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0 8px;list-style:none;color:rgba(255,255,255,.65);font-size:13px}#mb-quote-page .mb-breadcrumb li+li:before{content:"/";margin-right:8px;color:rgba(255,255,255,.35)}#mb-quote-page .mb-breadcrumb a{color:inherit;text-decoration:none}#mb-quote-page .mb-breadcrumb a:hover{color:#fff}
#mb-quote-page,#mb-quote-page main,#mb-quote-page section,#mb-quote-page .mb-container,#mb-quote-page .quote-shell-panel,#mb-quote-page #quote_container{min-width:0;max-width:100%}
#mb-quote-page .quote-shell-panel{box-sizing:border-box;overflow:hidden}
#mb-quote-page #quote_container{width:100%;box-sizing:border-box}
@media(max-width:640px){#mb-quote-page .quote-shell-panel{padding:16px 12px;border-radius:24px}#mb-quote-page .quote-shell-head h2{font-size:clamp(2rem,10vw,2.75rem);overflow-wrap:anywhere}#mb-quote-page #quote_container{border-radius:22px}#mb-quote-page .btn_row,#mb-quote-page .flue-options{max-width:100%}#mb-quote-page .q_btn,#mb-quote-page .nav_btn{max-width:100%;white-space:normal}}