.cmcrm.cm-booking{max-width:1200px}.cm-progress{list-style:none;padding:0;margin:25px 0;display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.cm-progress li{padding:10px 3px;border-bottom:2px solid #e4dacf;font-size:11px;color:#736c63;text-align:center}.cm-progress li.is-active{border-color:#80664c;color:#493522;font-weight:700}.cm-choice-grid,.cm-catalog-admin{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.cm-choice{position:relative;display:flex;flex-direction:column;border:1px solid #d6cbbb;background:#fffdf9;cursor:pointer;overflow:hidden;transition:border-color .2s,box-shadow .2s,transform .2s}.cm-choice:hover{border-color:#80664c;transform:translateY(-3px)}.cm-choice:has(input:checked){border:2px solid #80664c;box-shadow:0 0 0 3px #80664c22}.cm-choice img,.cm-asset-image{width:100%;height:190px;object-fit:cover;background:#f2ece4}.cm-choice-info{padding:18px;display:flex;flex-direction:column;gap:10px;flex:1}.cmcrm .cm-choice h3{font-size:19px;margin:0}.cmcrm .cm-choice p{font-size:12px;line-height:1.6;color:#736c63;margin:0;flex:1}.cmcrm .cm-choice strong{font-size:17px;font-weight:600;color:#654c35}.cm-select-label{display:block;padding:9px;border:1px solid #c5b49f;font-size:11px;text-align:center;margin-top:8px}.cm-choice:has(input:checked) .cm-select-label{color:#fff;background:#80664c;border-color:#80664c}.cm-choice:has(input:checked) .cm-select-label::after{content:' ✓'}.cmcrm .cm-choice input[type=radio],.cmcrm .cm-choice input[type=checkbox]{position:absolute;top:12px;left:12px;width:20px;height:20px;min-height:0;margin:0;padding:0;accent-color:#80664c}.cmcrm .cm-check input[type=radio]{width:18px;height:18px;min-height:0;flex:none;margin:3px 0 0;padding:0;accent-color:#80664c}.cm-unavailable{opacity:.5;cursor:not-allowed}.cm-wizard-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border:1px solid #d6cbbb;background:#eee6dc;margin-top:20px}.cm-total-live{font-size:11px;color:#736c63;margin-right:auto}.cm-total-live b{display:block;color:#493522;font-size:21px}.cm-summary{background:#f3ede5;padding:20px;margin:20px 0}.cm-summary p{display:flex;justify-content:space-between;gap:16px;font-size:13px}.cm-summary-total{border-top:1px solid #d6cbbb;padding-top:15px;margin:20px 0 0!important;font-size:17px!important}.cmcrm [hidden]{display:none!important}.cm-step{scroll-margin-top:30px}.cm-catalog-admin .cm-card{padding:20px}.cm-catalog-admin .cm-eyebrow{margin-top:14px}.cmcrm button:disabled{opacity:.6;cursor:wait}
@media(max-width:900px){.cm-choice-grid,.cm-catalog-admin{grid-template-columns:repeat(2,minmax(0,1fr))}.cm-progress{grid-template-columns:repeat(3,1fr)}.cm-wizard-footer{flex-wrap:wrap}.cm-total-live{flex:1}.cm-wizard-footer>button:last-child{margin-left:auto}}
@media(max-width:560px){.cm-choice-grid,.cm-catalog-admin{grid-template-columns:1fr}.cm-choice{display:grid;grid-template-columns:115px minmax(0,1fr)}.cm-choice img{width:115px;height:100%;min-height:190px;object-fit:contain}.cm-choice-info{padding:15px}.cmcrm .cm-choice h3{font-size:17px}.cm-choice .cm-select-label{margin-top:0}.cm-wizard-footer{padding:16px}.cm-wizard-footer>button:last-child{width:100%}.cmcrm .cm-progress{font-size:10px}}
@media(prefers-reduced-motion:reduce){.cm-choice{transition:none;transform:none!important}}

.cm-checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:24px;align-items:start}.cm-checkout-main{min-width:0}.cm-checkout-main>.cm-card{margin:0 0 24px}.cmcrm .cm-order-panel{position:sticky;top:24px;margin:0;padding:24px}.cm-order-panel .cm-wizard-footer{display:block;padding:0;background:none;border:0}.cm-order-panel [data-checkout]{width:100%;margin-top:16px}.cm-checkout-layout .cm-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cm-order-panel .cm-summary{padding:14px}.cm-order-panel .cm-muted{font-size:12px}.cm-package-grid{margin-top:14px}.cmcrm .cm-package-card{font:inherit;text-align:left;display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid #d6cbbb;background:#fffdf9;color:#493522;cursor:pointer}.cm-package-card img{width:100%;height:140px;object-fit:cover}.cm-package-card span{font-size:13px}.cm-package-card b{margin-top:auto;font-size:13px}.cmcrm .cm-package-card[aria-pressed=true]{border:2px solid #80664c;background:#f3ede5}.cmcrm .cm-package-card:focus-visible{outline:3px solid #80664c;outline-offset:3px}.cm-booking [data-cm-package-preview],.cm-booking [data-package-description]{display:none}.cm-booking [data-cm-summary]:empty::before{content:'Your selected package and products will appear here.'}
@media(max-width:1000px){.cm-checkout-layout{grid-template-columns:minmax(0,1fr) 310px;gap:16px}.cm-checkout-layout .cm-choice-grid{grid-template-columns:1fr}}
@media(max-width:760px){.cm-checkout-layout{display:block}.cmcrm .cm-order-panel{position:static}.cm-checkout-layout .cm-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.cm-checkout-layout .cm-choice-grid{grid-template-columns:1fr}.cm-package-card img{height:190px}}

/* Keep the selected tier attached to its service and reset theme typography. */
.cmcrm.cm-booking h1,.cmcrm.cm-booking h2,.cmcrm.cm-booking h3,.cmcrm.cm-booking .cm-package-card{font-family:"Rethink Sans",sans-serif;letter-spacing:normal!important;word-spacing:normal!important;text-transform:none;line-height:1.3;overflow-wrap:anywhere}
.cmcrm.cm-booking h1{font-size:clamp(30px,5vw,48px)}
.cmcrm.cm-booking h2{font-size:clamp(24px,3vw,32px)}
.cmcrm.cm-booking .cm-choice-info h3{font-size:20px;line-height:1.35}
.cm-booking [data-grid="booth"]{grid-template-columns:minmax(0,1fr)}
.cm-service-group{min-width:0;border:1px solid #d6cbbb;background:#fffdf9}
.cm-service-group>.cm-choice{border:0;display:grid;grid-template-columns:160px minmax(0,1fr);transform:none}
.cm-service-group>.cm-choice img{width:160px;height:100%;min-height:180px;object-fit:contain}
.cm-service-group>.cm-choice:has(input:checked){border:0;box-shadow:inset 0 0 0 2px #80664c}
.cm-service-packages{padding:20px;background:#f3ede5;border-top:1px solid #d6cbbb}
.cmcrm .cm-service-packages>h3{font-size:18px;margin:0 0 14px}
.cmcrm .cm-package-card strong{font-size:18px;font-weight:600;letter-spacing:normal;line-height:1.35}
.cmcrm .cm-package-card span{line-height:1.6}
.cmcrm .cm-package-card:disabled{cursor:not-allowed}
.cm-order-schedule,.cm-schedule-summary{line-height:1.6;font-size:14px}
@media(max-width:560px){.cm-service-group>.cm-choice{grid-template-columns:110px minmax(0,1fr)}.cm-service-group>.cm-choice img{width:110px;min-height:160px}.cm-service-packages{padding:15px}.cmcrm.cm-booking .cm-choice-info h3{font-size:18px}}

/* Theme radio skins must not float over service names. Keep native selection semantics. */
.cmcrm.cm-booking .cm-choice input.cm-choice-input[type=radio],.cmcrm.cm-booking .cm-choice input.cm-choice-input[type=checkbox]{position:absolute!important;inset:0 auto auto 0!important;width:1px!important;height:1px!important;min-width:0!important;min-height:0!important;max-width:1px!important;max-height:1px!important;margin:0!important;padding:0!important;border:0!important;opacity:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;appearance:none!important;-webkit-appearance:none!important}
.cmcrm.cm-booking .cm-choice-input::before,.cmcrm.cm-booking .cm-choice-input::after{display:none!important;content:none!important}
.cmcrm.cm-booking .cm-choice:has(.cm-choice-input:focus-visible){outline:3px solid #80664c;outline-offset:3px}
.cmcrm.cm-booking .cm-choice-kind{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#70553e}
.cmcrm.cm-booking .cm-choice-info p{font-size:14px;line-height:1.65;white-space:pre-line}
.cmcrm.cm-booking .cm-package-description{white-space:pre-line;font-size:14px;line-height:1.65}
.cmcrm.cm-booking .cm-package-availability{color:#805334;font-size:12px;line-height:1.5}
.cmcrm.cm-booking .cm-package-card img{height:auto;aspect-ratio:3/2;object-fit:contain;background:#f8f4f1}
