.product-inquiry{display:block;width:100%;min-height:48px;padding:12px 18px;margin-top:22px;background:#243c3a;color:white;border:0;border-radius:10px;font:700 16px inherit;cursor:pointer}.simple .product-inquiry{grid-column:1/-1;margin-top:0}.booking-modal{width:min(620px,calc(100% - 24px));max-height:90dvh;border:0;border-radius:20px;padding:24px;color:#243c3a;background:#faf8f3;font:16px/1.6 'Malgun Gothic',sans-serif;box-sizing:border-box}.booking-modal::backdrop{background:#122c2b99}.booking-modal h2{font-size:25px;margin:0 0 18px}.booking-modal label{display:block;font-weight:600;margin:14px 0 6px}.booking-modal input,.booking-modal textarea{box-sizing:border-box;width:100%;font:inherit;padding:12px;border:1px solid #cad3cb;border-radius:8px;background:white}.booking-modal button,.booking-modal a{font:inherit;min-height:44px}.booking-modal .dismiss{float:right;width:44px;border:0;background:transparent;font-size:24px}.booking-modal .primary{display:block;width:100%;padding:12px;background:#243c3a;color:white;border:0;border-radius:8px;text-align:center;text-decoration:none;margin-top:14px;cursor:pointer}.booking-modal .note,.slot-help{font-size:14px;color:#65706d}.slot-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.slot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.slot-grid button{min-height:58px!important;padding:8px 2px!important;border:1px solid #8aab97!important;border-radius:8px!important;background:#edf5ee!important;color:#243c3a!important;cursor:pointer;font:600 14px/1.4 'Malgun Gothic',sans-serif!important}.slot-grid button small{display:block;font-size:11px;font-weight:400}.slot-grid button[data-state=inquiry]{background:#fff8e9!important;border-color:#dfc894!important}.slot-grid button:disabled{background:#eee!important;color:#858585!important;border-color:#ddd!important;cursor:not-allowed}.slot-grid button[aria-pressed=true]{background:#243c3a!important;color:white!important;border:2px solid #987447!important}.slot-grid button:focus-visible{outline:3px solid #987447;outline-offset:2px}.slot-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:12px}.slot-legend span{padding:3px 8px;background:#edf5ee;border-radius:4px}.slot-legend span:nth-child(2){background:#eee}.slot-legend span:nth-child(3){background:#fff8e9}.slot-value{position:absolute!important;width:1px!important;height:1px!important;opacity:0;padding:0!important;pointer-events:none}.slot-warning{padding:10px 12px;background:#fff3d9;color:#755720;border-radius:8px;font-size:13px}.booking-modal [hidden]{display:none!important}.booking-modal textarea[readonly]{min-height:220px}.inquiry #customer-name,.inquiry #customer-phone{width:100%;box-sizing:border-box;padding:12px;font:inherit;border:1px solid #cad3cb;border-radius:8px}.slot-selected{font-weight:700;margin:8px 0}.preview-notice{padding:10px 20px;text-align:center;background:#fff3d9;color:#755720;font:14px/1.5 sans-serif}@media(max-width:420px){.slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-modal{padding:20px}}

.inquiry .fields{display:flex;flex-direction:column;gap:6px}.inquiry .fields>label{margin-top:12px}.inquiry .fields>.slot-grid{width:100%;margin:8px 0}.inquiry .fields>.slot-warning,.inquiry .fields>.slot-legend{width:100%;box-sizing:border-box}.booking-modal,.inquiry{overscroll-behavior:contain}.booking-modal .product-inquiry{font-family:inherit}

/* Short, grouped time picker shared by all product dialogs. */
.slot-periods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:5px;background:#e9ece7;border-radius:12px;margin:8px 0 12px}
.slot-periods[hidden]{display:none}
.slot-periods button{min-height:60px;padding:8px 2px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:#4e6058!important;font:700 17px/1.5 'Malgun Gothic',sans-serif!important;cursor:pointer}
.slot-periods button small{display:block;font-size:11px;font-weight:400}
.slot-periods button[aria-pressed=true]{background:#fff!important;color:#203c32!important;box-shadow:0 2px 6px #173f2317}
.slot-periods button:focus-visible{outline:3px solid #987447;outline-offset:2px}
.slot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.slot-grid button,.slot-grid button[data-state=inquiry]{min-height:56px!important;background:#fff!important;border:1px solid #b9c6be!important;border-radius:10px!important;font-size:18px!important;letter-spacing:.3px}
.slot-grid button:disabled{background:#eceeeb!important;border-color:#eceeeb!important;color:#949a95!important;font-size:16px!important}
.slot-grid button[aria-pressed=true]{background:#244b3b!important;color:#fff!important;border:2px solid #244b3b!important;box-shadow:0 0 0 2px #d0dfd5}
.slot-help{margin:4px 0;color:#415749;font-size:14px}
.slot-warning{background:transparent;padding:0;margin:0 0 6px;color:#616c64;font-size:13px;line-height:1.6}
.slot-selected{padding:12px 14px;border-radius:10px;background:#e6f0e8;color:#244b3b;font-size:15px;margin:6px 0}
.booking-modal .dismiss{position:sticky;top:0;background:#faf8f3;z-index:2;border-radius:50%}
.booking-modal,.inquiry{isolation:isolate}
.inquiry-team{margin:20px 0;padding:16px;border:1px solid #cad3cb;border-radius:12px;background:#f3f7f3}.inquiry-team legend{font-weight:700}.inquiry-team p{font-size:14px;margin:0 0 12px}.inquiry-team select{width:100%;min-height:46px;padding:10px;font:inherit;border:1px solid #cad3cb;border-radius:8px;background:white;color:#243c3a}
/* Keep the dismiss control outside the scrolling form on every product. */
#inquiry[open]{display:flex;flex-direction:column;overflow:hidden;padding:0!important;max-height:90dvh;max-height:90vh;width:min(760px,calc(100% - 24px));box-sizing:border-box}
#inquiry .inquiry-fixed-header{position:relative;flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;border-bottom:1px solid #e1e6df;background:#faf8f3;z-index:5}
#inquiry .inquiry-fixed-header h2{font-size:23px;margin:0;line-height:1.4}
#inquiry #close-inquiry{position:static!important;float:none!important;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0!important;border:1px solid #c6d0c8;border-radius:50%;background:white;color:#243c3a;font:28px/1 sans-serif;cursor:pointer}
#inquiry .inquiry-scroll-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px 24px;scroll-padding-top:12px}
#inquiry [hidden]{display:none!important}
#inquiry .inquiry-finish{display:block;width:100%;padding:16px;border:0;border-radius:10px;background:#fee500;color:#241e00;font:700 17px/1.5 sans-serif;cursor:pointer;margin:16px 0}
#inquiry .inquiry-finish:disabled{opacity:.65;cursor:wait}
#inquiry .inquiry-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.65;font-weight:400;margin-top:18px}
#inquiry #inquiry-consent{width:20px;height:20px;flex:0 0 20px;margin:3px 0;padding:0}
#inquiry .inquiry-team{scroll-margin:12px}
@media(max-width:480px){#inquiry .inquiry-fixed-header{padding:12px 16px}#inquiry .inquiry-fixed-header h2{font-size:20px}#inquiry .inquiry-scroll-body{padding:16px}}
#inquiry #group-quote{margin:0}#inquiry .inquiry-quote{border:1px solid #d1ded5;background:#eef5ef;border-radius:12px;padding:16px;margin:16px 0}#inquiry .inquiry-quote span{font-size:13px;color:#587060}#inquiry .inquiry-quote strong{display:block;font-size:24px;color:#234b36;margin:4px 0}#inquiry .inquiry-quote p{font-size:13px;margin:0}#inquiry input[readonly]{background:#f0f2ee;font-weight:700}#inquiry label[for=customer-name],#inquiry label[for=customer-phone],#inquiry label[for=people],#inquiry label[for=wish-date]{display:block}#inquiry #people{width:100%;margin:0}
/* Prevent focus scrolling the outer dialog and hiding its fixed header. */
#inquiry[open]{overflow:clip!important}#inquiry .inquiry-scroll-body{flex:1 1 auto}#inquiry .inquiry-fixed-header{position:sticky;top:0;z-index:8}

#inquiry #slot-grid[hidden],#inquiry #slot-periods[hidden],#inquiry .inquiry-team[hidden]{display:none!important}#inquiry .inquiry-team .slot-grid button[aria-pressed="true"]{background:#254f3e;color:white;border-color:#254f3e}


#inquiry .slot-grid button:disabled{background:#e5e7eb!important;border-color:#d1d5db!important;color:#6b7280!important;opacity:1;box-shadow:none!important;cursor:not-allowed}#inquiry .slot-grid button:disabled small{font-weight:700;font-size:12px}
#inquiry .inquiry-quantity{display:grid;grid-template-columns:48px minmax(0,1fr) 28px 48px;align-items:center;gap:6px;border:1px solid #dce3ec;border-radius:14px;background:#fff;padding:6px;margin:0 0 8px}#inquiry .inquiry-quantity button{width:48px;height:48px;min-height:48px;margin:0;padding:0;border:0;border-radius:10px;background:#edf3ff;color:#285dcc;font:600 26px/1 system-ui;touch-action:manipulation}#inquiry .inquiry-quantity button:disabled{background:#f3f4f6;color:#adb4c0;cursor:default}#inquiry .inquiry-quantity #people{border:0;box-shadow:none;min-height:48px;padding:8px 0;text-align:center;font:700 20px/1.4 system-ui;border-radius:0;min-width:0;color:#22354a}#inquiry .inquiry-quantity>span{color:#718096;font-size:15px}#inquiry .inquiry-quantity:focus-within{outline:2px solid #326ce5;outline-offset:2px}
#inquiry .inquiry-quantity #people:focus-visible{outline:none}
.inquiry-required,.inquiry-field-error{color:#b42318}.inquiry-field-error{display:block;font-size:13px;margin:4px 0 12px}.booking-modal [aria-invalid=true]{border:2px solid #b42318!important}.booking-modal .inquiry-consent:has([aria-invalid=true]){outline:2px solid #b42318;outline-offset:4px}
