.shop-main{max-width:1250px;margin:auto;padding:45px 32px 70px}.shop-intro{max-width:650px;margin-bottom:32px}.shop-intro h1{font:500 clamp(42px,5vw,62px)/1 'Cormorant Garamond',serif;margin:14px 0}.shop-intro h1 em{font-weight:400}.shop-intro p{color:var(--muted)}.shop-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;align-items:start}.shop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.product-card{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.product-image{aspect-ratio:1.25;background:#ede7dc;display:grid;place-items:center;color:#7d725e;font:italic 25px 'Cormorant Garamond',serif}.product-image img{width:100%;height:100%;object-fit:contain;max-height:330px}.product-copy{padding:22px}.product-copy h2{font:500 30px/1.05 'Cormorant Garamond',serif;margin:0 0 12px}.product-copy p{font-size:14px;color:var(--muted);white-space:pre-line}.product-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px}.product-footer .btn{padding:11px 16px}.shop-cart{position:sticky;top:20px;background:white;border:1px solid var(--line);border-radius:8px;padding:26px}.shop-cart h2{font:500 32px 'Cormorant Garamond',serif;margin:0}.cart-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0;border-bottom:1px solid #e9e3d9}.cart-line strong{font-size:14px}.cart-line small{display:block;color:#6c675f;margin-top:4px}.cart-qty{display:flex;align-items:center;gap:10px;flex-shrink:0}.cart-qty button{width:34px;height:34px;border:1px solid #d6cdbc;border-radius:50%;background:white;color:#164e3d;font-size:20px}.cart-qty button:disabled{opacity:.35}.cart-qty span{font-size:14px}.shop-cart .btn{width:100%;margin-top:12px;text-align:center;justify-content:center}.shop-cart .check-field{align-items:flex-start;font-size:12px}.shop-cart form{margin-top:20px}.shop-empty{grid-column:1/-1;padding:70px 30px;background:#eee8de;border-radius:8px;text-align:center}.shop-empty h2{font:500 36px 'Cormorant Garamond',serif}.shop-empty p{max-width:430px;margin:15px auto;color:#6b645a}.shop-steps{display:flex;gap:22px;border-block:1px solid #ddd4c5;padding:18px 0;margin-top:30px;font-size:12px;color:#6c675f}.store-header-links{display:flex;gap:20px;align-items:center;font-size:13px}.cart-link{color:#164e3d}.cart-review{margin:20px 0;padding:20px;border:1px solid #dcd3c6;background:#fbf8f2;border-radius:6px}.cart-review h3{font:500 26px 'Cormorant Garamond',serif;margin:0}.cart-review .small a{text-decoration:underline}.studio-dialog::backdrop{background:#191e1a88;backdrop-filter:blur(3px)}.studio-dialog{border:1px solid #d9cdbc;border-radius:12px;padding:30px;width:min(620px,calc(100vw - 30px));max-height:90dvh;overflow:auto;color:#29251f;background:#faf7f2}.studio-dialog h2{font:500 36px 'Cormorant Garamond',serif;margin:0 0 10px}.dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.dialog-heading button{background:transparent;border:0;font-size:27px;padding:0 8px}.studio-dialog .field-grid{grid-template-columns:1fr 1fr}.studio-dialog select{width:100%;min-height:48px;border:1px solid #cfc5b5;background:white;border-radius:4px;padding:10px;font:inherit}.studio-dialog .check-field{margin:15px 0}.studio-dialog .actions{flex-wrap:wrap}.studio-dialog p{color:#6b645a;font-size:14px}.studio-dialog img{height:140px;max-width:100%;object-fit:contain}.product-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.product-admin-card{display:flex;align-items:center;gap:18px;padding:20px 0;border-bottom:1px solid #e5ddd0}.product-admin-card img{width:70px;height:70px;object-fit:contain;background:#eee8dc;border-radius:5px}.product-admin-card .product-admin-copy{flex:1;min-width:0}.product-admin-card h3{font-size:23px;margin:0 0 8px}.product-admin-card p{font-size:13px;color:#6c675f;margin:4px 0}.order-admin-card{border:1px solid #dfd4c4;border-radius:8px;padding:24px;margin-top:18px}.order-admin-card h3{font:500 26px 'Cormorant Garamond',serif;margin:0 0 5px}.order-admin-card .order-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}.order-admin-card li{font-size:14px;margin:8px 0}.order-admin-card p{font-size:13px}.studio-day-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:20px}.studio-day-nav button{min-height:44px}.studio-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0}.studio-summary div{padding:18px;background:#eee7db;border-radius:7px;font-size:12px}.studio-summary strong{display:block;font:500 32px 'Cormorant Garamond',serif;margin-bottom:5px}.booking-extra{font-size:12px;margin-top:10px;color:#655d50}.booking-extra .btn-plain{padding:8px 0;min-height:42px;text-align:left}.booking-extra .collect-list{padding:10px;background:#f0eade;margin-top:10px;border-radius:5px}.booking-extra .collect-list p{margin:5px 0}.booking-extra-actions{display:flex;gap:16px;flex-wrap:wrap}.studio-tabs{overflow-x:auto;max-width:100%;white-space:nowrap}.studio-tabs button{flex-shrink:0}.setup-note a{color:inherit;text-decoration:underline}.status-label.pending_deposit{background:#f9e6bb;color:#785116}.appointment-card:has(.status-label.cancelled){opacity:.7}.studio-dialog .notice[hidden]{display:none}.booking-deposit-note{margin:20px 0;border:1px solid #d9cfbe;background:#f2ecdf;padding:18px;border-radius:6px;font-size:13px}.booking-deposit-note strong{display:block;color:#174c3a;margin-bottom:6px}.payment-balance{font-size:13px;padding:16px;background:#f0eadd;border-radius:6px;margin:15px 0}.pay-pending{text-align:center;padding:20px}.shop-mobile-summary{display:none}.shop-cart:target{scroll-margin-top:20px}
@media(max-width:750px){.shop-main{padding:28px 20px 95px}.shop-layout{grid-template-columns:1fr;gap:24px}.shop-grid{gap:12px}.product-copy{padding:15px}.product-copy h2{font-size:25px}.product-copy p{font-size:12px}.product-footer{display:block}.product-footer strong{display:block;margin-bottom:12px}.product-footer .btn{width:100%}.shop-cart{position:static;padding:24px}.shop-steps{gap:10px;font-size:11px}.store-header-links{gap:12px;font-size:12px}.store-header-links .back-site{display:none}.shop-mobile-summary{display:flex;position:fixed;z-index:40;bottom:0;left:0;right:0;background:#164e3d;color:white;padding:16px 22px calc(16px + env(safe-area-inset-bottom));justify-content:space-between;text-decoration:none}.studio-main{padding:26px 16px 40px}.studio-heading{align-items:flex-start;gap:8px}.studio-heading h1{font-size:40px}.studio-heading .btn{padding:10px 13px;min-width:0}.studio-tabs{margin-inline:-16px;padding-inline:16px;gap:0}.studio-tabs button{padding:14px 16px;font-size:13px}.admin-panel{padding:22px 16px}.panel-heading{display:block}.filter-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.filter-row label{display:none}.filter-control{flex:1;min-width:140px;width:140px;max-width:100%}.appointment-card{grid-template-columns:1fr!important;padding:20px;gap:14px}.appointment-time{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.appointment-time small{font-size:12px}.status-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px}.status-actions select{width:auto;flex:1;min-width:110px;height:44px;font-size:16px}.status-actions .btn{padding:10px 14px}.studio-summary{gap:8px;margin:18px 0}.studio-summary div{padding:13px 10px;font-size:10px}.studio-summary strong{font-size:26px}.studio-day-nav{position:sticky;top:0;z-index:6;background:#fffdf8;padding:10px 0}.studio-day-nav .btn{margin-left:auto}.studio-dialog{padding:22px;width:calc(100vw - 16px);max-height:95dvh}.studio-dialog .field-grid{grid-template-columns:1fr}.studio-dialog input,.studio-dialog select,.studio-dialog textarea,.studio-main input,.studio-main textarea{font-size:16px}.product-editor-grid{grid-template-columns:1fr}.product-admin-card{gap:12px}.product-admin-card img{width:50px;height:60px}.product-admin-card .btn{padding:10px}.hours-row{gap:9px;grid-template-columns:1fr 1fr}.hours-row>label:first-child{grid-column:1/-1}.hours-row .check-field{grid-column:1/-1}.treatment-list{grid-template-columns:1fr}.treatment-editor{padding:18px}.treatment-footer{flex-wrap:wrap}.cart-review{padding:16px}.photo-action-row{z-index:10}}

.product-card:only-child{grid-column:1/-1;max-width:440px}.studio-dialog{overscroll-behavior:contain}.studio-main:has(dialog[open]){overflow:hidden}@media(max-width:750px){.product-card:only-child{max-width:none}.appointment-card .status-actions{flex-direction:row;align-items:center}.status-actions button{width:auto}.studio-tabs{scrollbar-width:thin}}
