/* Scoped to the order dialog; shared storefront artwork and typography stay intact. */
.order-dialog{width:min(760px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid #d8d6c8;border-radius:12px;background:#f8f5ee;color:#30372e;box-shadow:0 24px 100px #26301f33;font-family:inherit;overflow:auto}
.order-dialog::backdrop{background:#28332280;backdrop-filter:blur(4px)}
.order-dialog *{box-sizing:border-box}.order-dialog [hidden]{display:none!important}
.order-shell{padding:32px 40px}.order-top{display:flex;justify-content:space-between;gap:16px;align-items:center}.order-eyebrow{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#66715b;margin:0}
.order-close{width:44px;height:44px;border:1px solid #c9cdbf;border-radius:50%;background:transparent;color:inherit;font:24px Georgia;cursor:pointer;flex:none}
.order-dialog h2{font:normal 34px/1.15 Georgia,serif;margin:24px 0 12px}.order-dialog h3{font:normal 21px/1.3 Georgia,serif;margin:0 0 6px}
.order-intro,.order-hint{color:#606857;font-size:14px;line-height:1.65;margin:0 0 22px}.order-progress{display:flex;gap:6px;margin:16px 0 8px}.order-progress span{height:3px;background:#dddccf;flex:1}.order-progress .done{background:#66715b}.order-counter{font-size:12px;color:#66715b;margin:0}
.order-preview-note{padding:12px 16px;border-left:2px solid #8c967d;background:#eceee5;font-size:13px;line-height:1.6;margin:20px 0}
.order-dialog fieldset{padding:0;border:0;margin:22px 0}.order-dialog legend,.order-label{display:block;font-size:15px;font-weight:600;margin-bottom:12px}
.order-options{display:grid;gap:10px}.order-choice{display:flex;align-items:flex-start;gap:12px;padding:18px;border:1px solid #d2d6c8;border-radius:6px;background:#fcfaf5;cursor:pointer;min-height:60px}
.order-choice:has(input:checked){border-color:#66715b;background:#edf0e5;box-shadow:inset 0 0 0 1px #66715b}.order-choice input{width:18px;height:18px;flex:none;margin:3px 0 0;accent-color:#66715b}.order-choice strong{display:block;font-size:15px;font-weight:500;line-height:1.5}.order-choice small{display:block;color:#606857;font-size:13px;line-height:1.6;margin-top:3px}.order-price{margin-left:auto;white-space:nowrap;font-size:15px;padding-top:2px}
.order-input{display:block;width:100%;min-width:0;padding:14px 16px;border:1px solid #bfc7b6;border-radius:5px;background:#fcfaf5;color:#30372e;font:16px/1.5 inherit;font-family:inherit;font-size:16px;line-height:1.5;min-height:48px}.order-dialog textarea{resize:vertical;min-height:130px}.order-dialog input[type=date]{max-width:100%;appearance:none}.order-field{margin:24px 0}.order-field .order-hint{margin:8px 0 0;font-size:13px}.order-error{color:#974532;font-size:13px;line-height:1.5;margin:8px 0 0}.order-error:empty{display:none}.order-input[aria-invalid=true]{border-color:#974532}
.order-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:26px;padding-top:22px;border-top:1px solid #dadcce}.order-nav button,.order-edit{min-height:46px;padding:12px 20px;border:1px solid #78836a;background:transparent;color:#47543d;border-radius:5px;font-family:inherit;font-size:14px;cursor:pointer}.order-nav .order-next{background:#66715b;color:#fff;border-color:#66715b;margin-left:auto}.order-nav button:disabled{opacity:.5;cursor:wait}.order-dialog :focus-visible{outline:2px solid #66715b;outline-offset:3px}
.order-summary{margin:24px 0}.order-summary>div{display:grid;grid-template-columns:140px 1fr;gap:14px;padding:14px 0;border-bottom:1px solid #dedfd4}.order-summary dt{font-size:13px;color:#66715b}.order-summary dd{margin:0;font-size:15px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.order-total{background:#eceee5;padding:18px;margin-top:22px;border-radius:5px}.order-total strong{display:block;font:normal 25px Georgia;margin-bottom:8px}.order-total p{margin:0;font-size:13px;line-height:1.6;color:#606857}.order-edit{font-size:12px;padding:8px 12px;min-height:40px;margin-top:16px}.order-consent{display:flex;gap:12px;font-size:13px;line-height:1.7;margin:24px 0}.order-consent input{width:18px;height:18px;flex:none;accent-color:#66715b;margin-top:4px}.order-consent a{color:#47543d;text-decoration:underline}.order-review-note{font-size:13px;line-height:1.7;color:#606857}.order-step:focus{outline:none}html:has(.order-dialog[open]){overflow:hidden}
@media(max-width:600px){.order-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0}.order-shell{padding:18px 22px 30px}.order-dialog h2{font-size:29px;margin-top:22px}.order-choice{padding:15px 13px}.order-summary>div{grid-template-columns:1fr;gap:5px}.order-price{font-size:14px}.order-nav{padding-bottom:env(safe-area-inset-bottom)}.order-intro{font-size:14px}}
@media(prefers-reduced-motion:reduce){.order-dialog,.order-dialog *{scroll-behavior:auto!important}}

[data-options="contact_channel"]{grid-template-columns:repeat(2,minmax(0,1fr))}[data-options="contact_channel"] .order-choice{padding:14px;min-width:0;min-height:54px}

.order-policy-note{margin:-12px 0 24px 30px;font-size:13px;line-height:1.7}.order-policy-note a{color:#47543d;text-decoration:underline}
