/* Warm Studio workspace / Modern Editorial customer experience. */
.cmcrm{--cm-ink:#352e29;--cm-muted:#74665b;--cm-line:#e8ddd1;--cm-paper:#fffdf9;--cm-tan:#96714e;--studio-canvas:#f4eee6;--studio-soft:#faf5ee;--studio-selected:#eadbca;color:var(--cm-ink)}
.cmcrm.cm-admin{background:var(--studio-canvas);grid-template-columns:200px minmax(0,1fr)}
.cmcrm.cm-admin .cm-sidebar{width:200px;background:#e9dfd2;color:#493c31;border-right:1px solid #d8c9b7;padding:22px 12px}
.cmcrm.cm-admin .cm-sidebar nav a,.cmcrm.cm-admin .cm-sidebar nav a:last-child{color:#544638!important;border-radius:10px;font-weight:500;min-height:46px;padding:12px}
.cmcrm.cm-admin .cm-sidebar nav a.active{background:#fffaf3;color:#583e28!important;box-shadow:0 2px 8px #6d4c2810;font-weight:700}
.cmcrm.cm-admin .cm-sidebar nav a:hover{background:#f6eee4}.cmcrm.cm-admin .cm-sidebar nav a:last-child{border-top:1px solid #d8c9b7;margin-top:auto}
.cmcrm.cm-admin .cm-menu-close{color:#493c31;border-color:#bfa98f}.cmcrm.cm-admin .cm-main{padding:26px clamp(20px,3vw,40px) 40px}
.cmcrm.cm-admin .cm-top{margin:12px 0 24px}.cmcrm.cm-admin h1{font-size:28px!important;font-weight:600}.cmcrm.cm-admin h2{font-size:19px!important;font-weight:600}.cmcrm.cm-admin h3{font-size:16px!important}
.cmcrm.cm-admin .cm-card,.cmcrm.cm-admin .cm-record-summary,.cmcrm.cm-admin .cm-module-card{background:var(--cm-paper);border:1px solid var(--cm-line);border-radius:16px;padding:24px;box-shadow:0 4px 18px #62442206;margin-bottom:20px}
.cmcrm.cm-admin .cm-card .cm-card{background:var(--studio-soft);border-radius:12px;padding:18px;box-shadow:none}.cmcrm.cm-admin .cm-app-toolbar{border-color:#dfd1c0;padding-bottom:14px}.cmcrm.cm-admin .cm-app-toolbar>span{color:#74665b}
.cmcrm .cm-button:not(.cm-secondary){background:#96714e;border-color:#96714e;color:#fff}.cmcrm .cm-button:not(.cm-secondary):hover{background:#7a5739;border-color:#7a5739}.cmcrm .cm-button.cm-secondary{background:#fffdf9;border-color:#d1bfa9;color:#60472f}.cmcrm .cm-button.cm-secondary:hover{background:#f3e9dc}
.cmcrm .cm-button{padding:11px 18px;font-weight:600;transition:background .15s,border-color .15s;transform:none!important}.cmcrm input:not([type=checkbox]):not([type=radio]),.cmcrm select,.cmcrm textarea{background:#fffefb;border-color:#d7c8b8;padding:11px 12px;color:#352e29}.cmcrm input::placeholder,.cmcrm textarea::placeholder{color:#8b7d70}.cmcrm :focus-visible{outline-color:#96714e}.cmcrm input[type=checkbox],.cmcrm input[type=radio]{accent-color:#96714e}
.cmcrm.cm-admin .cm-priority-grid>a{background:var(--cm-paper);border-color:var(--cm-line);border-radius:14px;padding:20px;min-height:96px}.cmcrm.cm-admin .cm-priority-grid>a>.cm-nav-icon{background:#f0e2d1;color:#8a6441}.cmcrm.cm-admin .cm-priority-list li{background:transparent;border-bottom:1px solid var(--cm-line)}.cmcrm.cm-admin .cm-upcoming-event{background:var(--studio-soft);border:1px solid #eee2d5;border-radius:12px;padding:15px}
.cmcrm.cm-admin .cm-table th{background:#f6eee4;color:#756453;font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:none;border-color:var(--cm-line)}.cmcrm.cm-admin .cm-table td{border-color:#eee5da;padding:13px 12px}.cmcrm.cm-admin .cm-table tbody tr:hover{background:#faf4ec}
.cmcrm.cm-admin .cm-focus-tabs{background:var(--studio-canvas);border-color:#ddcdbb}.cmcrm.cm-admin .cm-focus-tabs [aria-selected=true]{background:#eadbca;border-color:#96714e;color:#543b26}.cmcrm.cm-admin .cm-fold{background:#fcf8f2;border:1px solid var(--cm-line);border-radius:12px}.cmcrm.cm-admin .cm-fold>summary{padding:15px}.cmcrm.cm-admin .cm-settings-nav a{background:#fffaf3;border:1px solid #e5d7c7}.cmcrm.cm-admin .cm-settings-nav [aria-current=page],.cmcrm.cm-admin .cm-tabs [aria-current=page]{background:#96714e;color:#fff}.cmcrm .cm-more[open]{background:#fffdf9;border:1px solid #dfcdb8;border-radius:12px;box-shadow:0 10px 30px #60402015}
.cmcrm.cm-admin .cm-month-grid{background:#fffdf9;border:1px solid var(--cm-line);border-radius:12px;overflow:hidden}.cmcrm.cm-admin .cm-month-grid th{background:#f1e6d8;color:#75604c}.cmcrm.cm-admin .cm-month-grid td{border-color:#e8ddd1}.cmcrm.cm-admin .cm-outside{background:#f7f0e7;color:#948473}.cmcrm.cm-admin .cm-today .cm-day-number{background:#96714e}.cmcrm.cm-admin .cm-calendar-entry{background:#eee0cd;border-color:#a67f55;color:#543e29}.cmcrm.cm-admin .cm-calendar-entry.cm-cal-lead{background:#e6ede8;border-color:#70927c;color:#34533f}.cmcrm.cm-admin .cm-calendar-entry.cm-cal-tentative{background:#f8ecd4;border-color:#b98d41;color:#755419}
/* Modern Editorial: quiet borders, photo-led cards and clear event hierarchy. */
.cmcrm.cm-public{background:#fffdf9;color:#352e29;max-width:1240px;padding:clamp(24px,4vw,52px);font-size:16px;line-height:1.65}.cmcrm.cm-public .cm-brand{border-bottom:1px solid #e8ddd1;padding-bottom:20px;margin-bottom:28px}.cmcrm.cm-public .cm-brand img{width:145px;max-height:90px}.cmcrm.cm-public h1,.cmcrm.cm-public h2{color:#352e29;font-weight:500;letter-spacing:-.025em!important}.cmcrm.cm-public h1{font-size:clamp(34px,4vw,48px)}.cmcrm.cm-public h2{font-size:clamp(26px,3vw,34px)}.cmcrm.cm-public h3{font-size:19px;font-weight:600}.cmcrm.cm-public .cm-eyebrow{font-size:11px;letter-spacing:.12em;color:#927452}.cmcrm.cm-public .cm-card{border:1px solid #e8ddd1;border-radius:10px;background:#fffdf9;padding:28px;box-shadow:none}.cmcrm.cm-public .cm-choice,.cmcrm.cm-public .cm-package-card{border:1px solid #e3d6c7;border-radius:9px;background:#fffdf9}.cmcrm.cm-public .cm-choice:has(input:checked),.cmcrm.cm-public .cm-package-card[aria-pressed=true]{border:2px solid #96714e;background:#f7eee2;box-shadow:0 0 0 3px #96714e12}.cmcrm.cm-public .cm-choice-info{padding:20px;gap:10px}.cmcrm.cm-public .cm-choice-category{color:#8b6844;font-size:13px;font-weight:700}.cmcrm.cm-public .cm-select-label{border-radius:7px;border-color:#cbb394;color:#775332}.cmcrm.cm-public .cm-choice:has(input:checked) .cm-select-label{background:#96714e;color:#fff}.cmcrm.cm-public .cm-package-card{padding:0;overflow:hidden;gap:12px}.cmcrm.cm-public .cm-package-card>img{height:210px;aspect-ratio:3/2;object-fit:cover}.cmcrm.cm-public .cm-package-card>:not(img){margin-left:20px;margin-right:20px}.cmcrm.cm-public .cm-package-card>b:last-child{margin-bottom:20px}.cmcrm.cm-public .cm-flow-summary{background:#faf5ed;border:1px solid #e8ddd1;border-radius:8px;padding:14px 18px;margin:8px 0}.cmcrm.cm-public .cm-flow-summary>span{color:#684d33}.cmcrm.cm-public .cm-order-panel{background:#faf5ed;border-color:#e8ddd1}.cmcrm.cm-public .cm-summary{background:transparent;padding:0}.cmcrm.cm-public .cm-summary-item{border-color:#e8ddd1;padding:16px 0}.cmcrm.cm-public .cm-summary-thumb{width:100px!important;height:75px!important;object-fit:cover;border-radius:6px}.cmcrm.cm-public .cm-order-schedule{background:#f0e4d4!important;padding:18px!important}.cmcrm.cm-public .cm-summary-total{border-color:#dfcdb8}.cmcrm.cm-public .cm-public-foot{color:#88715b;text-align:center;padding:24px 0 0;margin-top:32px}
.cmcrm.cm-portal .cm-client-event{border-radius:10px;padding:28px;margin-top:28px;box-shadow:none}.cm-editorial-event-hero{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;align-items:center;margin-bottom:24px}.cm-editorial-event-hero>img{width:220px;height:270px;object-fit:cover;border-radius:8px;background:#f4eadc}.cm-editorial-event-copy{min-width:0}.cmcrm.cm-portal .cm-editorial-event-hero .cm-section-head{align-items:flex-start}.cmcrm.cm-portal .cm-event-stats{grid-template-columns:1fr 1fr;gap:18px;background:transparent;border-color:#e8ddd1}.cmcrm.cm-portal .cm-event-stats>div:last-child{grid-column:1/-1}.cmcrm.cm-portal .cm-event-stats strong{font-size:17px;color:#44392e}.cmcrm.cm-portal .cm-portal-actions{background:#f7eee2;border:1px solid #e8d9c7;border-radius:8px;padding:20px}.cmcrm.cm-portal .cm-focus-tabs{background:#fffdf9;backdrop-filter:none;border-radius:0;padding:0;border-bottom:1px solid #e8ddd1}.cmcrm.cm-portal .cm-focus-tabs button{border-radius:0}.cmcrm.cm-portal .cm-focus-tabs [aria-selected=true]{background:#faf3e9;border-bottom:2px solid #96714e;color:#5b4028}.cmcrm.cm-portal .cm-portal-money>div{background:#faf5ed}.cmcrm.cm-portal .cm-portal-money strong{color:#5f4329}.cmcrm.cm-portal .cm-portal-product{border-bottom:1px solid #e8ddd1;padding:16px 0}.cmcrm.cm-portal .cm-portal-product img{height:160px;object-fit:contain;background:#faf5ed}.cmcrm.cm-portal .cm-portal-package-photo{max-width:520px;background:#faf5ed;border:1px solid #e8ddd1;border-radius:8px}.cmcrm.cm-portal .cm-portal-package-photo img{height:280px;object-fit:cover}
@media(max-width:1100px){.cmcrm.cm-admin .cm-main{padding:22px}.cmcrm.cm-admin .cm-card{padding:20px}}
@media(max-width:782px){.cmcrm.cm-admin{display:block}.cmcrm.cm-admin .cm-sidebar{width:min(300px,85vw);padding:20px 14px}.cmcrm.cm-admin .cm-mobile-bar{background:#e9dfd2;color:#493c31;border-bottom:1px solid #d8c9b7}.cmcrm.cm-admin .cm-mobile-bar button{color:#493c31;border-color:#bea78e}.cmcrm.cm-admin .cm-main{padding:18px 14px 30px}.cmcrm.cm-admin .cm-card,.cmcrm.cm-admin .cm-record-summary{padding:18px;border-radius:14px}.cmcrm.cm-admin .cm-card-list tr{background:#fffdf9;border-color:#e8ddd1;border-radius:14px}.cmcrm.cm-admin .cm-focus-tabs button{min-height:46px}.cmcrm.cm-public{padding:24px 16px;margin:0 auto}.cmcrm.cm-public .cm-card,.cmcrm.cm-portal .cm-client-event{padding:20px}.cmcrm.cm-public .cm-package-card>img{height:190px}.cm-editorial-event-hero{grid-template-columns:130px minmax(0,1fr);gap:18px;align-items:start}.cm-editorial-event-hero>img{width:130px;height:190px}.cmcrm.cm-portal .cm-event-stats{grid-template-columns:1fr}.cmcrm.cm-portal .cm-event-stats>div:last-child{grid-column:auto}.cmcrm.cm-portal .cm-event-stats strong{font-size:16px}.cmcrm.cm-public .cm-brand{padding-bottom:16px;margin-bottom:22px}}
@media(max-width:480px){.cm-editorial-event-hero{grid-template-columns:1fr}.cm-editorial-event-hero>img{width:100%;height:220px}.cmcrm.cm-public .cm-choice-info{padding:15px}.cmcrm.cm-admin .cm-priority-grid>a{padding:14px}.cmcrm.cm-public .cm-flow-summary{padding:12px}.cmcrm.cm-portal .cm-portal-package-photo img{height:220px}}
@media(prefers-reduced-motion:reduce){.cmcrm .cm-button{transition:none}}

.cm-editorial-event-hero.cm-editorial-no-photo{grid-template-columns:1fr}
.cmcrm .cm-studio-notices{border:1px solid #dfd1c0;border-radius:9px;background:#faf5ed;margin:0 0 16px;padding:10px 14px;font-size:12px;color:#74665b}.cm-studio-notices>summary{cursor:pointer}.cm-studio-notices .notice{margin:12px 0 0;box-shadow:none}.cm-studio-notices .notice p{font-size:12px}


/* CRM audit 2026-10-21: readable summaries, controls and payment tables. */
.cmcrm.cm-admin .cm-record-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px 20px}
.cmcrm.cm-admin .cm-record-summary>dl{grid-column:1/-1;display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,2fr) minmax(110px,1fr);width:100%;min-width:0;gap:12px 24px}
.cmcrm.cm-admin .cm-record-summary dl>div,.cmcrm.cm-admin .cm-record-summary dd{min-width:0;margin-left:0;overflow-wrap:anywhere}
.cmcrm.cm-admin .cm-record-summary .cm-record-badges{margin:0;align-self:center;gap:8px;flex-wrap:wrap}
.cmcrm.cm-admin .cm-record-summary .cm-record-actions{min-width:0;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.cmcrm.cm-admin .cm-button{min-height:40px;height:auto;max-width:100%;padding:9px 14px;font-size:13px;line-height:1.45;white-space:normal;text-align:center;align-items:center;justify-content:center}
.cmcrm.cm-admin .cm-fold>summary{padding:12px 14px;min-height:44px;line-height:1.5;height:auto;box-sizing:border-box;overflow-wrap:anywhere}
.cmcrm.cm-admin .cm-card h2,.cmcrm.cm-admin .cm-card h3{line-height:1.4}
.cmcrm.cm-admin .cm-payment-workspace .cm-table{table-layout:auto;width:100%}
.cmcrm.cm-admin .cm-payment-workspace .cm-table th:last-child,.cmcrm.cm-admin .cm-payment-workspace .cm-table td:last-child{white-space:nowrap;overflow-wrap:normal;word-break:normal;min-width:72px;text-align:right}
.cmcrm.cm-admin .cm-payment-workspace .cm-table td:first-child{white-space:nowrap;overflow-wrap:normal}
.cmcrm.cm-admin .cm-payment-workspace .cm-table td:nth-child(3){overflow-wrap:anywhere;word-break:normal}
.cmcrm.cm-public .cm-flow-summary{min-width:0;gap:12px;padding:12px 14px;align-items:center}
.cmcrm.cm-public .cm-flow-summary>span{min-width:0;overflow-wrap:anywhere;line-height:1.5}
.cmcrm.cm-public .cm-flow-summary .cm-button{flex:0 0 auto;width:auto;max-width:100%;min-height:44px;height:auto;padding:9px 13px;font-size:13px;line-height:1.4;white-space:normal}
.cmcrm.cm-public .cm-choice-info h3,.cmcrm.cm-public .cm-package-card h3{line-height:1.4;margin-top:0;white-space:normal}
.cmcrm.cm-public .cm-choice-info p{line-height:1.55;white-space:normal}
.cmcrm.cm-public .cm-order-panel fieldset{min-inline-size:0;max-width:100%;box-sizing:border-box}
.cmcrm.cm-public .cm-order-panel label{white-space:normal;line-height:1.5}
@media(max-width:782px){
.cmcrm.cm-admin .cm-record-summary{grid-template-columns:minmax(0,1fr)}
.cmcrm.cm-admin .cm-record-summary>dl{grid-template-columns:minmax(0,1fr)}
.cmcrm.cm-admin .cm-record-summary .cm-record-actions{justify-content:flex-start}
.cmcrm.cm-admin .cm-button{min-height:44px}
.cmcrm.cm-public .cm-flow-summary{flex-wrap:wrap}
.cmcrm.cm-public .cm-flow-summary>span{flex:1 1 140px}
.cmcrm.cm-public .cm-flow-summary .cm-flow-thumb{width:48px!important;height:40px!important}
.cmcrm.cm-public .cm-service-packages{padding:12px;min-width:0}
}

/* Hide the package prompt once its selection is summarized. */
.cmcrm.cm-public .cm-service-packages:has([data-package-cards][hidden])>h3{display:none}
.cmcrm.cm-public .cm-service-packages:has([data-package-cards][hidden]){padding:0;border:0;background:transparent}
.cmcrm.cm-public .cm-service-packages:has([data-package-cards][hidden])>.cm-flow-summary{margin-bottom:0}

/* Fast motion: retain feedback without long entrance delays. */
@keyframes cmcrm-quick-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.cmcrm .cm-card{animation-duration:.18s;animation-delay:0s}
.cmcrm.cm-public .cm-guided-booking .cm-step{animation:cmcrm-quick-in .18s ease-out both}
.cmcrm .cm-button,.cmcrm .cm-choice,.cmcrm .cm-package-card{transition:background-color .14s ease,border-color .14s ease,box-shadow .14s ease}
.cmcrm.cm-public .cm-brand{min-height:111px}
.cmcrm.cm-public .cm-brand img{width:145px;height:90px;object-fit:contain}
@media(max-width:782px){.cmcrm.cm-public .cm-brand{min-height:107px}}
@media(prefers-reduced-motion:reduce){.cmcrm .cm-card,.cmcrm.cm-public .cm-guided-booking .cm-step{animation:none}.cmcrm .cm-button,.cmcrm .cm-choice,.cmcrm .cm-package-card{transition:none}}
