/* Mobile fit correction for the quote request flow */
.quote-page,
.quote-shell,
.quote-form,
.quote-mode,
.quote-card,
.quote-fields,
.quote-fields > *,
.quote-visit-section,
.visit-fields,
.quote-file-box{
  min-width:0;
  max-width:100%;
}

.quote-page-body{overflow-x:hidden}

@media(max-width:700px){
  .quote-page{
    width:100%;
    max-width:100vw;
    padding:38px 16px 56px;
    overflow-x:hidden;
  }

  .quote-shell{width:100%;margin:0}
  .quote-intro{width:100%;margin-bottom:24px}
  .quote-intro h1{font-size:clamp(34px,10vw,42px);line-height:1.08;letter-spacing:-.035em}
  .quote-intro p{max-width:100%;font-size:14px;line-height:1.55}

  .quote-mode{
    width:100%;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }

  .quote-mode-button{
    width:100%;
    min-width:0;
    min-height:160px;
    padding:16px 14px;
    white-space:normal;
    justify-content:flex-start;
    border-radius:12px;
  }

  .quote-mode-button strong{font-size:14px;line-height:1.3}
  .quote-mode-button small{font-size:11px;line-height:1.5}
  .quote-option-top{margin-bottom:4px}
  .quote-option-icon{width:34px;height:34px}

  .quote-card{width:100%;padding:18px 14px;border-radius:12px}

  .quote-fields,
  .quote-fields.two-column,
  .visit-fields{
    width:100%;
    grid-template-columns:minmax(0,1fr);
  }

  .quote-fields label,
  .quote-fields .full-width,
  .quote-visit-section{
    min-width:0;
    width:100%;
    grid-column:auto;
  }

  .quote-fields input,
  .quote-fields textarea,
  .quote-fields select,
  .quote-file-box input{
    display:block;
    width:100%;
    min-width:0;
    max-width:100%;
  }

  .quote-fields textarea{min-height:132px}
  .quote-file-box{width:100%;align-items:flex-start;flex-direction:column}
  .quote-file-box > span,.quote-file-box small{min-width:0;max-width:100%;overflow-wrap:anywhere}
  .quote-submit-row{width:100%;flex-direction:column;align-items:stretch}
  .quote-submit{width:100%;min-width:0}
}

@media(max-width:420px){
  .quote-page{padding-left:14px;padding-right:14px}
  .quote-card{padding:16px 12px}
  .quote-intro h1{font-size:34px}
  .quote-mode{gap:8px}
  .quote-mode-button{min-height:158px;padding:14px 12px}
  .quote-mode-button strong{font-size:13px}
  .quote-mode-button small{font-size:10px}
  .quote-option-icon{width:30px;height:30px}
}
