/* Award.vibe mobile utility pages — one visual family with the home hero. */
@media (max-width:900px) {
  html:has(body:is(.request-page,.contact-page,.how-page)),
  html body.site-shell-page:is(.request-page,.contact-page,.how-page) {
    min-height:100svh !important;
    background:#fff !important;
    background-image:none !important;
    color:#17181c !important;
  }

  body:is(.request-page,.contact-page,.how-page) > :is(.bg-glow,.grain,.nav-blur) { display:none !important; }
  body:is(.request-page,.contact-page,.how-page) .info-page-lines {
    z-index:0 !important;height:400px !important;display:block !important;opacity:1 !important;
  }

  html body.request-page.site-shell-page > main.request-main,
  html body.contact-page.site-shell-page > main,
  html body.how-page.site-shell-page > main.how-main {
    position:relative !important;z-index:2 !important;width:100% !important;max-width:none !important;
    margin:0 !important;padding:0 0 88px !important;background:transparent !important;
  }

  body:is(.request-page,.contact-page,.how-page) .info-hero.hero {
    width:100% !important;min-height:clamp(310px,42svh,360px) !important;max-width:none !important;
    margin:0 !important;padding:0 22px !important;overflow:hidden !important;display:flex !important;
    align-items:center !important;text-align:center !important;background:transparent !important;
  }

  body:is(.request-page,.contact-page,.how-page) .info-hero .hero__copy {
    width:100% !important;max-width:370px !important;margin:0 auto !important;padding:92px 0 30px !important;
    display:flex !important;flex-direction:column !important;align-items:center !important;
  }

  body:is(.request-page,.contact-page,.how-page) .info-hero__tag.hero-drop-tag {
    min-height:0 !important;margin:0 0 14px !important;padding:0 !important;display:block !important;
    border:0 !important;border-radius:0 !important;background:none !important;color:#17181c !important;
    font-size:14px !important;font-weight:700 !important;line-height:1.2 !important;letter-spacing:-.018em !important;
    box-shadow:none !important;
  }

  body:is(.request-page,.contact-page,.how-page) .info-hero__title.headline,
  body:is(.request-page,.contact-page,.how-page) .info-hero__title.headline > .line,
  body:is(.request-page,.contact-page,.how-page) .info-hero__title.headline > .line--bold {
    display:none !important;
  }

  body:is(.request-page,.contact-page,.how-page) .info-hero .hero-subtitle {
    width:min(348px,100%) !important;max-width:348px !important;min-height:0 !important;margin:0 auto !important;
    display:block !important;color:#7b7e87 !important;font-size:15px !important;font-weight:300 !important;
    line-height:1.36 !important;letter-spacing:-.018em !important;text-align:center !important;text-wrap:balance !important;
  }

  body:is(.request-page,.contact-page,.how-page) .info-content {
    position:relative !important;z-index:2 !important;width:min(calc(100% - 44px),560px) !important;
    margin:-84px auto 0 !important;padding:0 !important;
  }

  body.how-page .how-steps { margin:0 !important;padding:0 !important;display:grid !important;gap:12px !important;list-style:none !important; }
  body.how-page .how-step {
    min-height:184px !important;padding:22px !important;border:0 !important;border-radius:16px !important;
    background:#f4f4f2 !important;box-shadow:none !important;
  }
  body.how-page .how-step__number {
    width:35px !important;height:35px !important;display:grid !important;place-items:center !important;border-radius:999px !important;
    background:#1d1d1f !important;color:#fff !important;font-size:10px !important;font-weight:400 !important;line-height:1 !important;
  }
  body.how-page .how-step h2 {
    margin:26px 0 0 !important;color:#17181c !important;font-size:18px !important;font-weight:350 !important;
    line-height:1.08 !important;letter-spacing:-.032em !important;
  }
  body.how-page .how-step p {
    margin:11px 0 0 !important;color:#7b7e87 !important;font-size:14px !important;font-weight:300 !important;
    line-height:1.48 !important;letter-spacing:-.012em !important;
  }
  body.how-page .how-action {
    min-height:54px !important;margin-top:14px !important;padding:0 20px !important;display:flex !important;
    align-items:center !important;justify-content:space-between !important;border:1px solid #d9d9d7 !important;
    border-radius:999px !important;background:#fff !important;color:#17181c !important;font-size:14px !important;
    font-weight:450 !important;line-height:1 !important;text-decoration:none !important;
    box-shadow:inset 0 0 0 1px rgba(23,24,28,.015) !important;
  }
  body.how-page .how-action > :last-child { color:#8d8f95 !important; }

  body:is(.request-page,.contact-page) .info-panel,
  html body.contact-page.site-shell-page #contact-form {
    width:100% !important;max-width:none !important;margin:0 !important;padding:0 !important;display:grid !important;
    gap:0 !important;border:0 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;
  }
  body:is(.request-page,.contact-page) .info-panel :is(.request-form__identity,.contact-identity) { display:grid !important; }
  body:is(.request-page,.contact-page) .info-panel label,
  html body.contact-page.site-shell-page #contact-form label {
    margin:0 0 9px !important;color:#17181c !important;font-size:13px !important;font-weight:350 !important;
    line-height:1.2 !important;letter-spacing:-.015em !important;
  }
  body:is(.request-page,.contact-page) .info-panel label small {
    color:#9a9ca3 !important;font-size:11px !important;font-weight:300 !important;
  }
  body:is(.request-page,.contact-page) .info-panel :is(input,textarea),
  html body.contact-page.site-shell-page #contact-form :is(input,textarea) {
    width:100% !important;margin:0 0 24px !important;border:1px solid transparent !important;border-radius:14px !important;
    background:#f4f4f2 !important;color:#17181c !important;font-size:16px !important;font-weight:300 !important;
    line-height:1.45 !important;letter-spacing:-.012em !important;box-shadow:none !important;
  }
  body:is(.request-page,.contact-page) .info-panel input,
  html body.contact-page.site-shell-page #contact-form input { min-height:56px !important;padding:0 17px !important; }
  body:is(.request-page,.contact-page) .info-panel textarea,
  html body.contact-page.site-shell-page #contact-form textarea {
    min-height:164px !important;padding:16px 17px !important;resize:vertical !important;
  }
  body:is(.request-page,.contact-page) .info-panel :is(input,textarea)::placeholder,
  html body.contact-page.site-shell-page #contact-form :is(input,textarea)::placeholder { color:#989aa1 !important;opacity:1 !important; }
  body:is(.request-page,.contact-page) .info-panel :is(input,textarea):focus,
  html body.contact-page.site-shell-page #contact-form :is(input,textarea):focus {
    border-color:#d6d6d4 !important;background:#fff !important;box-shadow:0 0 0 3px rgba(23,24,28,.045) !important;
  }
  body:is(.request-page,.contact-page) .info-panel > button[type="submit"],
  html body.contact-page.site-shell-page #contact-form > button[type="submit"] {
    min-height:54px !important;margin-top:2px !important;border:0 !important;border-radius:999px !important;
    background:#1d1d1f !important;color:#fff !important;font-size:14px !important;font-weight:450 !important;
    line-height:1 !important;letter-spacing:-.012em !important;box-shadow:none !important;
  }

  body:is(.request-page,.contact-page,.how-page) .site-footer {
    margin-top:96px !important;background:#fff !important;color:#777d88 !important;
  }
}

@media (max-width:380px), (max-height:700px) {
  body:is(.request-page,.contact-page,.how-page) .info-hero.hero { min-height:300px !important; }
  body:is(.request-page,.contact-page,.how-page) .info-hero .hero__copy {
    padding-top:84px !important;padding-bottom:24px !important;
  }
  body:is(.request-page,.contact-page,.how-page) .info-hero__title.headline,
  body:is(.request-page,.contact-page,.how-page) .info-hero__title.headline > .line { font-size:32px !important; }
  body:is(.request-page,.contact-page,.how-page) .info-hero .hero-subtitle {
    margin-top:0 !important;font-size:14px !important;
  }
  body:is(.request-page,.contact-page,.how-page) .info-content {
    margin-top:-64px !important;
  }
}
