/* v207: mobilflödet håller alla fält och åtgärder inom skärmen.
   Filen laddas sist i <head> så att reglerna inte skrivs över av sidans
   äldre inline-stilar. */
@media (max-width:760px){
  #step2,#step4,.control-section,.review-section,.review-card,
  .delivery-section,.customer-order-block,.ceremony-date-block-v191{
    min-width:0!important;
    max-width:100%!important;
  }

  #step1 .summary{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto!important;
    gap:0!important;
  }
  #step1 .summary>div{
    display:grid!important;
    grid-template-columns:92px minmax(0,1fr)!important;
    gap:12px!important;
    align-items:start!important;
    padding:9px 0!important;
  }
  #step1 .summary>div+div{border-top:1px solid #e7dccb!important}
  #step1 .summary strong{min-width:0!important;overflow-wrap:anywhere!important}

  .delivery-grid,.customer-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .delivery-field,.delivery-field-wide,.delivery-field-postal,
  .delivery-field input,.delivery-field select,
  .ceremony-date-block-v191 input[type="date"]{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  .ceremony-date-block-v191{overflow:hidden!important}

  .step-actions,.step-actions-with-cancel{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
    width:100%!important;
  }
  .step-actions-left{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
    width:100%!important;
  }
  .step-actions button,.step-actions a,
  .step-actions-left button,.step-actions-left a,
  .continue,.submit-order,.cancel-order-button,.back-button{
    position:static!important;
    transform:none!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:52px!important;
    margin:0!important;
    white-space:normal!important;
  }

  .price-summary-row{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
  }
  .price-summary-desc{min-width:0!important;overflow-wrap:anywhere!important}
  .price-summary-value{white-space:nowrap!important}
  .review-row{grid-template-columns:minmax(0,1fr)!important}
  .review-row strong{text-align:left!important;white-space:normal!important}
}

.stone-engraving .engraving-line{
  white-space:nowrap!important;
  font-size:inherit!important;
  max-width:none!important;
}
