.order-section { background: var(--cream); padding: 5rem 0; scroll-margin-top: 1rem; }
.order-configurator { scroll-margin-top: 1.5rem; }
.order-layout { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1fr); gap: 4rem; align-items: start; }
.order-title { font-size: 3.5rem; line-height: 1.05; margin: 0; text-wrap: balance; }
.order-intro { color: var(--muted); line-height: 1.75; margin: 1rem 0 1.5rem; }
.order-price { margin: 0 0 1rem; line-height: 1.5; color: var(--muted); }
.order-price strong { color: var(--ink); font-size: 1.75rem; font-variant-numeric: tabular-nums; }
.order-subtotal { margin: -0.5rem 0 1.25rem; font-size: 1.1rem; font-weight: 800; line-height: 1.6; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.order-facts { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; padding: 1rem 0; border-block: 1px solid var(--line-light); margin: 0 0 1.5rem; font-weight: 700; font-size: .9rem; }
.order-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.order-fields [data-order-neighborhood] { grid-column: 1 / -1; }
.order-fields [data-order-neighborhood][hidden] { display: none; }
.order-fields label { display: grid; align-content: start; gap: .5rem; font-size: .9rem; font-weight: 700; line-height: 1.5; }
.order-fields input, .order-fields select { width: 100%; min-width: 0; min-height: 48px; padding: .7rem .75rem; border: 1px solid #8c7b60; border-radius: 4px; background: var(--paper); color: var(--ink); font: 400 1rem/1.4 "Mulish", system-ui, sans-serif; }
.order-fields input::placeholder { color: #6b5e49; opacity: 1; }
.order-fields input { font-variant-numeric: tabular-nums; }
.order-fields input[aria-invalid="true"] { border-color: #a02520; }
.order-fields small { color: var(--muted); font-weight: 400; }
.order-summary { min-height: 1.75rem; margin: 1.1rem 0; font-weight: 800; line-height: 1.75; font-variant-numeric: tabular-nums; }
.order-error { color: #a02520; line-height: 1.6; margin: 1rem 0; }
.order-note, .order-help, .order-repeat { color: var(--muted); font-size: .88rem; line-height: 1.7; margin: .9rem 0 0; }
.order-note[data-order-delivery-note] { margin: 0 0 1.25rem; }
.order-help a, .order-repeat a { display: inline-flex; align-items: center; min-height: 44px; text-underline-offset: 4px; }
.order-submit { background: var(--ink); color: var(--cream); width: 100%; gap: .6rem; }
.order-submit::before { content: ""; width: 22px; height: 22px; flex: 0 0 22px; background: url("/assets/whatsapp.svg") center / contain no-repeat; }
.order-delivery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; border-top: 1px solid var(--line-light); margin-top: 3rem; padding-top: 2rem; }
.order-delivery h3 { font-size: 1.35rem; margin: 0 0 .5rem; }
.order-delivery p { color: var(--muted); line-height: 1.75; margin: 0; }
.order-delivery a { text-underline-offset: 4px; }
.order-business { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); }
.order-business .order-fields { margin-top: 0; }
.order-business .order-delivery { grid-template-columns: minmax(0, 1fr); }
[data-order-controls][hidden], [data-order-error][hidden] { display: none; }
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible, select:focus-visible { outline: 3px solid #9c6f24; outline-offset: 4px; }
::selection { background: #e4bc5e; color: #15110b; }
@media (max-width: 900px) {
  .order-layout { gap: 2rem; }
  .order-title { font-size: 2.7rem; }
}
@media (max-width: 700px) {
  .order-section { padding: 3.5rem 0; }
  .order-layout { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .order-title { font-size: 2.4rem; }
  .order-delivery { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
}
@media (max-width: 560px) { .order-fields { grid-template-columns: minmax(0, 1fr); } }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; }
}
