/* Mobile-only corrections. The homepage door/video hero is intentionally excluded. */
@media (max-width:800px){
  /* Keep every control in the homepage search experience visible and usable. */
  main>.heroDominique{
    box-sizing:border-box!important;
    width:100%!important;
    height:auto!important;
    min-height:760px!important;
    padding:52px 16px 38px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    overflow:hidden!important;
  }
  main>.heroDominique>.domSectionTitle{
    order:0!important;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    margin:0 0 28px!important;
    padding:0 4px!important;
    text-align:center!important;
    font-size:clamp(32px,10vw,46px)!important;
    line-height:1.04!important;
  }
  main>.heroDominique>.heroSearch{
    order:1!important;
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    width:100%!important;
    max-width:520px!important;
    margin:0!important;
    z-index:4!important;
  }
  main>.heroDominique .searchBar{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    width:100%!important;
    max-width:100%!important;
    background:#fff!important;
    box-shadow:0 16px 38px #00000024!important;
  }
  main>.heroDominique .searchBar label{
    display:block!important;
    visibility:visible!important;
    width:100%!important;
    min-height:70px!important;
    padding:12px 14px!important;
    border:0!important;
    border-bottom:1px solid #ddd!important;
    background:#fff!important;
  }
  main>.heroDominique .searchBar label span{display:block!important;font-size:8px!important;letter-spacing:.14em!important}
  main>.heroDominique .searchBar input,
  main>.heroDominique .searchBar select{
    display:block!important;
    visibility:visible!important;
    width:100%!important;
    height:34px!important;
    margin:2px 0 0!important;
    padding:0!important;
    border:0!important;
    background:#fff!important;
    font-size:16px!important;
    -webkit-appearance:auto!important;
    appearance:auto!important;
  }
  main>.heroDominique .searchBar button{
    display:block!important;
    width:100%!important;
    min-height:58px!important;
    padding:14px!important;
    border:0!important;
    background:#41372B!important;
    color:#fff!important;
    font-size:10px!important;
    letter-spacing:.14em!important;
    text-transform:uppercase!important;
  }
  main>.heroDominique>img{
    order:2!important;
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    width:auto!important;
    height:auto!important;
    max-width:72%!important;
    max-height:390px!important;
    margin:26px auto -38px!important;
    object-fit:contain!important;
    object-position:center bottom!important;
  }

  /* Each testimonial remains exactly one phone-width slide with no clipped text. */
  .reviewsHome{padding-inline:14px!important;overflow:hidden!important}
  .reviewCarousel{width:100%!important;max-width:100%!important;overflow:hidden!important}
  .reviewTrack{display:flex!important;width:100%!important;max-width:none!important;overflow:visible!important}
  .reviewSlide{
    flex:0 0 100%!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    height:auto!important;
    padding:30px 20px!important;
    overflow:visible!important;
  }
  .reviewSlide blockquote{
    width:100%!important;
    max-width:none!important;
    margin:24px 0 34px!important;
    font-size:clamp(18px,5.2vw,23px)!important;
    line-height:1.45!important;
    white-space:normal!important;
    overflow:visible!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }
  .reviewSlide>p{width:100%!important;margin-top:0!important}

  /* Stack compliance logos at readable sizes. */
  footer>.legal{display:flex!important;flex-direction:column!important;align-items:center!important;gap:18px!important}
  footer>.legal .riseFooter{order:3!important;width:min(180px,62vw)!important;height:auto!important;margin:0 auto!important}
  footer>.legal .complianceMarks{order:4!important;width:min(150px,52vw)!important;height:auto!important;margin:0 auto!important}
  footer>.legal a:last-child{order:5!important}

  /* A clear circular MENU control, as requested. */
  .menuButton{
    display:grid!important;
    place-items:center!important;
    width:54px!important;
    height:54px!important;
    padding:0!important;
    border:1px solid #174c5270!important;
    border-radius:50%!important;
    background:#fff!important;
    color:#6B5945!important;
    font:700 9px/1 Arial,sans-serif!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
  }
  .menuButton span{display:none!important}
}

@media (max-width:390px){
  main>.heroDominique{padding-inline:12px!important}
  main>.heroDominique>img{max-width:78%!important}
}
