.order{background:var(--paper-raised);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);animation:order-settle .32s var(--ease-out);margin-top:2rem;padding:1.75rem}@keyframes order-settle{0%{opacity:0;transform:translateY(8px)}}.order__title{letter-spacing:-.025em;margin-top:.25rem;font-size:clamp(1.375rem,1.1rem + 1vw,1.75rem);font-weight:640}.order__empty{border:1px dashed var(--line);border-radius:var(--radius);color:var(--ink-soft);margin-top:1.5rem;padding:1.25rem}.order__packages{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.75rem;margin-top:1.25rem;display:grid}.order__package{border:2px solid var(--line);border-radius:var(--radius);background:var(--paper);width:100%;height:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .18s var(--ease-out), background-color .18s var(--ease-out), transform .16s var(--ease-out);flex-direction:column;align-items:flex-start;gap:.25rem;padding:1.125rem 1.25rem;display:flex}.order__package:active{transform:scale(.98)}.order__package:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.order__package[data-active]{border-color:var(--accent);background:var(--accent-wash)}@media (hover:hover) and (pointer:fine){.order__package:not([data-active]):hover{border-color:var(--ink-faint)}}.order__package-name{font-size:1.0625rem;font-weight:620}.order__package-price{letter-spacing:-.02em;color:var(--accent);font-size:1.5rem;font-weight:680}.order__package-facts{color:var(--ink-soft);font-size:.875rem}.order__package-summary{text-wrap:pretty;margin-top:.25rem;font-size:.875rem}.order__details{grid-template-columns:minmax(0,1fr) minmax(17rem,22rem);align-items:start;gap:1.75rem;margin-top:1.5rem;display:grid}.order__choices{flex-direction:column;gap:1.25rem;display:flex}.order__label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.5rem;font-size:.8125rem;font-weight:620;display:block}.order__count{flex-direction:column;display:flex}.order__stepper{border:1px solid var(--line);background:var(--paper);border-radius:999px;align-self:flex-start;align-items:center;display:inline-flex}.order__stepper button{width:2.75rem;height:2.75rem;color:var(--ink);font:inherit;cursor:pointer;transition:transform .16s var(--ease-out);background:0 0;border:0;border-radius:50%;font-size:1.375rem}.order__stepper button:active:not(:disabled){transform:scale(.9)}.order__stepper button:disabled{opacity:.35;cursor:default}.order__stepper output{text-align:center;font-variant-numeric:tabular-nums;min-width:2.5rem;font-size:1.25rem;font-weight:640}.order__hint{color:var(--ink-soft);margin-top:.375rem;font-size:.875rem}.order__addons{border:0;flex-direction:column;gap:.5rem;margin:0;padding:0;display:flex}.order__addon{border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .16s var(--ease-out), background-color .16s var(--ease-out);grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.75rem .875rem;display:grid}.order__addon[data-checked]{border-color:var(--accent);background:var(--accent-wash)}.order__addon input{width:1.125rem;height:1.125rem;accent-color:var(--accent)}.order__addon-text{flex-direction:column;display:flex}.order__addon-name{font-weight:580}.order__addon-description{color:var(--ink-soft);font-size:.8125rem}.order__addon-price{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.order__summary{border-radius:var(--radius);background:var(--paper);border:1px solid var(--line);flex-direction:column;gap:.75rem;padding:1.25rem;display:flex;position:sticky;top:5rem}.order__lines{flex-direction:column;gap:.375rem;font-size:.9375rem;display:flex}.order__lines li,.order__total{justify-content:space-between;gap:1rem;display:flex}.order__lines li span:last-child,.order__total span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}.order__total{border-top:1px solid var(--line);padding-top:.75rem;font-size:1.25rem;font-weight:680}.order__deposit{color:var(--ink-soft);font-size:.875rem}.order__confirm{width:100%}.order__summary .booking .field{flex-direction:column;gap:.3125rem;display:flex}.order__summary .booking .field__input{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-raised);width:100%;color:var(--ink);font:inherit;padding:.625rem .75rem}@media (max-width:52rem){.order{padding:1.25rem}.order__details{grid-template-columns:1fr}.order__summary{position:static}}@media (prefers-reduced-motion:reduce){.order{animation:none}}
