.cc-cal{display:block;min-width:0;width:100%;color:#24221e;--cal-gold:#c59b49;--cal-line:#d8d3c9;--cal-paper:#f7f4ec}
.cc-cal__availability{text-align:center;margin:0 0 12px;font-size:13px;font-weight:600;color:#655127}
.cc-cal [hidden]{display:none!important}.cc-cal button{font:inherit;cursor:pointer;touch-action:manipulation}.cc-cal button:disabled{opacity:.32;cursor:default}.cc-cal button:focus-visible,.cc-cal a:focus-visible{outline:3px solid var(--cal-gold);outline-offset:3px}
.cc-cal__modes{display:flex;gap:4px;padding:4px;background:#eae6de;border-radius:12px;width:max-content;max-width:100%;margin:0 auto 12px}.cc-cal__modes button{min-height:44px;padding:8px 20px;border:0;border-radius:9px;font-size:14px;color:#24221e}.cc-cal__modes [aria-pressed=true]{background:#24221e;color:white}
.cc-cal__stage{display:block;position:relative;width:100%;aspect-ratio:1;border:0;border-radius:14px;overflow:hidden;background:#e8e3d8;padding:0}.cc-cal__stage img{display:block;width:100%;height:100%;object-fit:contain}.cc-cal[data-mode=page] .cc-cal__stage{background:#24221e}.cc-cal__stage-label,.cc-cal__expand{position:absolute;bottom:14px;background:rgba(25,24,21,.84);color:white;border-radius:8px;padding:8px 11px;font-size:12px;line-height:1.2}.cc-cal__stage-label{left:14px}.cc-cal__expand{right:14px}
.cc-cal__navigation{display:flex;align-items:center;justify-content:center;gap:16px;margin:12px 0}.cc-cal__navigation button{width:44px;height:44px;border:1px solid var(--cal-line);border-radius:9px;background:transparent;font-size:26px;line-height:1}.cc-cal__navigation p{margin:0;min-width:130px;text-align:center;font-size:14px}.cc-cal__navigation p span{display:block;font-size:12px;color:#756f65;margin-top:2px}
.cc-cal__rail{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:4px 2px 10px;scrollbar-width:thin}.cc-cal__rail button{flex:0 0 90px;min-width:0;padding:3px;border:3px solid transparent;border-radius:8px;background:transparent;scroll-snap-align:nearest}.cc-cal__rail button[aria-pressed=true]{border-color:var(--cal-gold);background:#fff}.cc-cal__rail img{width:100%;height:auto;aspect-ratio:594/420;object-fit:contain;display:block;background:#24221e}.cc-cal__rail span{display:block;font-size:11px;text-align:center;padding:6px 0 2px;color:#24221e}
.cc-cal__foot{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding-top:8px}.cc-cal__foot button,.cc-cal__foot a{font-size:13px;text-decoration:underline;text-underline-offset:4px;border:0;background:none;min-height:44px}.cc-cal__foot p{margin:0;font-size:12px;color:#726b60;line-height:1.5}
.cc-cal__dialog{position:fixed;inset:0;border:0;background:#191813;color:#f7f4ec;width:100vw;max-width:none;height:100dvh;max-height:100dvh;padding:0;margin:0;z-index:1000}.cc-cal__dialog::backdrop{background:#191813}.cc-cal__dialog-layout{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));gap:8px}.cc-cal__dialog-title{text-align:center;font-size:15px;margin:0;padding:4px 0}.cc-cal__zoom-stage{position:relative;min-height:0;overflow:hidden;border:2px solid var(--cal-gold);touch-action:none;cursor:grab}.cc-cal__zoom-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transform-origin:center;pointer-events:none;user-select:none}.cc-cal__dialog .cc-cal__navigation{margin:0 0 8px}.cc-cal__dialog .cc-cal__navigation span{width:130px;text-align:center;font-size:14px}.cc-cal__dialog button{color:inherit;background:#2c2a24;border:1px solid #6c665c;border-radius:9px;min-height:44px}.cc-cal__zoom-controls{position:relative;min-height:44px;display:flex;justify-content:center;padding-inline:50px}.cc-cal__zoom-controls>div{display:flex;gap:8px}.cc-cal__zoom-controls button{padding:8px 12px;min-width:42px}.cc-cal__zoom-controls [data-close]{position:absolute;right:0;top:0;font-size:24px}.cc-cal__zoom-controls [data-fit]{font-size:13px;white-space:nowrap}.cc-cal__dialog-nav[hidden]{display:none}
.template-product:has(cc-calendar-viewer) .product__gallery-container{min-width:0}.template-product:has(cc-calendar-viewer) .section--padding{padding-top:24px}.template-product:has(cc-calendar-viewer) .product__info{padding:24px;border:1px solid #dedbd5;border-radius:14px;background:white}.template-product:has(cc-calendar-viewer) .product__title h1{font-size:clamp(26px,2.7vw,40px);line-height:1.1}.template-product:has(cc-calendar-viewer) .product{gap:32px}
@media(min-width:1024px){.cc-cal{max-width:760px;margin:auto}}
@media(max-width:767px){.template-product:has(cc-calendar-viewer) .page-width--full{padding-inline:16px}.cc-cal__stage-label,.cc-cal__expand{bottom:10px;font-size:11px;padding:7px 9px}.cc-cal__stage-label{left:10px}.cc-cal__expand{right:10px}.cc-cal__rail button{flex-basis:76px}.cc-cal__modes button{padding-inline:18px}.cc-cal__dialog-layout{padding-inline:8px}.cc-cal__zoom-controls{padding-inline:44px}.cc-cal__zoom-controls>div{gap:4px}.cc-cal__zoom-controls button{padding-inline:10px;min-width:36px}}
@media(prefers-reduced-motion:reduce){.cc-cal *{scroll-behavior:auto!important}}
