@font-face{font-family:Playfair Display;font-style:normal;font-weight:500 700;font-display:swap;src:url(../fonty/playfair-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:500 700;font-display:swap;src:url(../fonty/playfair-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--zz-green:#42503c;--zz-green-dark:#353f2f;--zz-green-deep:#2c342a;--zz-cream:#f4efe5;--zz-beige:#ece4d3;--zz-card:#fbf8f1;--zz-line:#e3d9c5;--zz-ink:#2b2a23;--zz-muted:#857b6c;--zz-bronze:#8a674a;--zz-error:#a33a2a;--zz-serif:"Playfair Display", Georgia, "Times New Roman", serif;--zz-sans:"Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", Arial, sans-serif;font-family:var(--zz-sans);--booking-bg:var(--zz-cream);--booking-panel:var(--zz-card);--booking-ink:var(--zz-ink);--booking-muted:var(--zz-muted);--booking-line:var(--zz-line);--booking-green:var(--zz-green);--booking-blue:var(--zz-green);--booking-rose:var(--zz-green);--booking-red:var(--zz-bronze);--booking-red-dark:var(--zz-green-dark);--booking-gold:var(--zz-bronze);--booking-success:#5c7a4f;--booking-success-dark:#46603b;--booking-selected:var(--zz-green);--booking-selected-dark:var(--zz-green-deep);--booking-cream:var(--zz-beige);--booking-shadow:0 14px 36px #2c342a17}body{background:var(--zz-cream);color:var(--zz-ink);font-family:var(--zz-sans)}button{border-color:var(--zz-line);background:var(--zz-card);border-radius:10px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid var(--zz-bronze);outline-offset:2px}a{color:var(--zz-green)}.zz-header{z-index:30;border-bottom:1px solid var(--zz-line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#faf7f0f5;justify-content:space-between;align-items:center;gap:16px;padding:10px 26px;display:flex;position:sticky;top:0}.zz-brand{align-items:center;text-decoration:none;display:flex}.zz-brand-logo{opacity:.88;filter:brightness(0)invert(31%)sepia(12%)saturate(1257%)hue-rotate(66deg)brightness(89%)contrast(88%);width:118px;height:auto;display:block}.zz-nav{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.zz-nav a{color:var(--zz-ink);letter-spacing:.015em;font-size:14.5px;font-weight:600;text-decoration:none}.zz-nav a:hover,.zz-nav a.is-active{color:var(--zz-green)}.zz-nav a.is-active:not(.zz-cta){text-underline-offset:6px;text-decoration:underline}.zz-nav a.zz-cta{background:var(--zz-green);color:var(--zz-cream);border-radius:10px;padding:9px 18px;font-weight:700;text-decoration:none}.zz-nav a.zz-cta:hover,.zz-nav a.zz-cta.is-active{background:var(--zz-green-dark);color:var(--zz-cream)}.zz-nav a.zz-cta.secondary{border:1.5px solid var(--zz-green);color:var(--zz-green);background:0 0}.zz-nav a.zz-cta.secondary:hover,.zz-nav a.zz-cta.secondary.is-active{color:var(--zz-green);background:#42503c14}.zz-nav-toggle{border:1px solid var(--zz-line);background:var(--zz-card);border-radius:8px;padding:6px 12px;font-size:20px;line-height:1.2;display:none}.zz-hero{background:linear-gradient(100deg,#2c342adb 0%,#2c342a9e 50%,#2c342a47 100%),url(https://masaze-zazi.cz/obrazky/hero.webp) 50% 45%/cover}.zz-hero-inner{gap:8px;width:min(1180px,100% - 32px);margin:0 auto;padding:44px 0 46px;display:grid}.zz-eyebrow{color:#d9d2be;letter-spacing:.22em;text-transform:uppercase;margin:0;font-size:12.5px;font-weight:700}.zz-hero h1{color:#f7f3e8;font-family:var(--zz-serif);text-shadow:0 2px 24px #0000004d;margin:0;font-size:clamp(30px,4.4vw,48px);font-weight:500;line-height:1.15}.zz-hero-text{color:#ece5d0;text-shadow:0 1px 12px #0000004d;max-width:60ch;margin:0;font-size:clamp(15px,1.8vw,17.5px);font-weight:600;line-height:1.5}.booking-shell{background:var(--zz-cream);padding-bottom:56px}.booking-layout{margin-top:26px}.booking-panel,.booking-summary{border-color:var(--zz-line);background:var(--zz-card);border-radius:18px}.booking-panel{padding:28px}.panel-head span,.summary-head span{color:var(--zz-bronze);letter-spacing:.18em;font-size:12px;font-weight:700}.panel-head h1{color:var(--zz-green-deep);font-family:var(--zz-serif);margin-top:6px;font-size:clamp(26px,3.4vw,36px);font-weight:600;line-height:1.2}.summary-head strong,.month-card h2,.service-detail h3{font-family:var(--zz-serif);color:var(--zz-green-deep);font-weight:600}.booking-calendar-footnote{color:var(--zz-muted)}.booking-step{border-color:var(--zz-line);background:#fbf8f1bf;border-radius:12px}.booking-step span{background:var(--zz-beige);color:var(--zz-muted)}.booking-step.active{background:var(--zz-card);border-color:#42503c73;box-shadow:0 8px 20px #2c342a14}.booking-step.done{border-color:#42503c47}.booking-step.done span{background:var(--zz-green-dark)}.service-card{border-color:var(--zz-line);background:#fffdf8;border-radius:12px;box-shadow:0 6px 18px #2c342a0d}.service-item.selected .service-card{background:#f6f3ea;border-color:#42503c8c;box-shadow:0 10px 24px #2c342a1a}.service-card:hover{border-color:#42503c80}.service-detail-toggle{color:var(--zz-green)}.service-detail-toggle:hover{border-color:var(--zz-line);background:var(--zz-beige)}.service-select-action{color:var(--zz-green);background:#f3efe4;border-color:#42503c59}.service-select-action:hover,.service-select-action.selected{color:var(--zz-cream)}.service-detail{border-color:var(--zz-line);background:#fffdf8;border-radius:12px}.service-detail p,.service-detail dd{color:#55503f}.service-detail dt{color:var(--zz-muted)}.service-detail dl div{border-top-color:var(--zz-line)}.service-availability.is-error{color:var(--zz-error)}.month-card{border-color:var(--zz-line);background:#fffdf8;border-radius:12px}.date-cell{border-radius:6px}.date-cell.unavailable{color:#c3b9a8;background:#f2ede3;border-color:#ebe3d4}.date-cell.available{box-shadow:none;background:#fffdf8;border-color:#ddd2bd}.date-cell.available:hover,.slot-button:hover{background:#f6f3ea;border-color:#42503c73}.date-cell.nearest,.date-cell.available.nearest:hover{background:var(--zz-bronze);border-color:#6f5239;box-shadow:0 4px 10px #8a674a38}.nearest-dot{background:var(--zz-bronze);border-color:#6f5239}.date-cell.selected,.date-cell.available.selected,.date-cell.available.selected:hover{border-color:var(--zz-green-deep);background:var(--zz-green);color:#fff;box-shadow:0 6px 14px #2c342a3d}.calendar-shift:hover{color:var(--zz-green);background:#42503c12}.legend-jump:hover{color:var(--zz-green)}.slot-button{background:#fffdf8;border-radius:10px}.slot-button.selected{border-color:var(--zz-green);background:var(--zz-green);color:var(--zz-cream);box-shadow:none}.slot-button.selected span{color:#ddd5bf}.field input,.field select,.field textarea,.coupon-field-row input,.gift-voucher-field input{background:#fffdf8;border-color:#d9cfbb;border-radius:10px}.field span b,.consent-line b,.captcha-line b{color:var(--zz-bronze)}.coupon-field{background:#f7f2e7;border-color:#cdbb9c;border-radius:12px}.coupon-verify-button{color:var(--zz-cream);border-radius:10px}.coupon-verify-button:not(:disabled):hover{background:var(--zz-green-dark);border-color:var(--zz-green-dark)}.coupon-message.valid{color:var(--zz-green-dark)}.coupon-message.invalid,.field-error,.field small.field-message,.booking-submit-status.error{color:var(--zz-error)}.coupon-message.warning{color:#7a5a2c}.contact-card{border-color:var(--zz-line);background:var(--zz-beige);border-radius:12px}.panel-actions button{border-radius:10px}.primary-action,a.primary-action{border-color:var(--zz-green);background:var(--zz-green);color:var(--zz-cream);letter-spacing:.01em;font-weight:700}.primary-action:hover{border-color:var(--zz-green-dark);background:var(--zz-green-dark)}.danger-action{color:var(--zz-error);border-color:#a33a2a66}.danger-action:hover{border-color:var(--zz-error);background:var(--zz-error);color:#fff}.booking-summary:not(.is-empty) .summary-head{border-bottom-color:var(--zz-line)}.booking-summary dl div{border-top-color:var(--zz-line)}.done-mark{background:var(--zz-green);color:var(--zz-cream)}.calendar-download-box,.payment-qr-box,.booking-delivery-status{border-color:var(--zz-line);background:#f7f2e7;border-radius:14px}.calendar-download{background:var(--zz-green);border-color:var(--zz-green);color:var(--zz-cream);border-radius:10px}.calendar-download:hover{background:var(--zz-green-dark)}.privacy-panel{border-color:var(--zz-line);background:var(--zz-card);border-radius:18px}.privacy-panel h1,.privacy-panel h2{color:var(--zz-green-deep);font-family:var(--zz-serif);font-weight:600}.privacy-panel h1{line-height:1.15}.privacy-panel .booking-brand{grid-template-columns:auto minmax(0,1fr);gap:18px}.privacy-panel .booking-brand img{filter:brightness(0)invert(31%)sepia(12%)saturate(1257%)hue-rotate(66deg)brightness(89%)contrast(88%);width:72px}.privacy-panel .booking-brand span{color:var(--zz-bronze);letter-spacing:.18em}.privacy-panel .booking-brand strong{color:var(--zz-green-deep);font-family:var(--zz-serif);font-size:clamp(22px,3vw,28px);font-weight:600;line-height:1.2}.privacy-panel p,.privacy-panel li{color:#55503f}.privacy-note{border-color:var(--zz-line);background:#f7f2e7;border-radius:12px}.text-link{color:var(--zz-green)}.voucher-card{border-color:var(--zz-line);background:#fffdf8;border-radius:14px}.voucher-card.selected{border-color:var(--zz-green);box-shadow:0 0 0 2px #42503c24}.voucher-card h2{font-family:var(--zz-serif);color:var(--zz-green-deep);font-weight:600}.voucher-qty{border-color:var(--zz-line);background:var(--zz-beige)}.voucher-qty button:not(:disabled):hover{background:#e2d8c3}.voucher-payment-note{background:#f7f2e7;border-color:#cdbb9c}.voucher-link-button{border-color:var(--zz-line);background:var(--zz-card);border-radius:10px}@media (width<=960px){.zz-nav-toggle{display:block}.zz-nav{border-bottom:1px solid var(--zz-line);background:#faf7f0fc;flex-direction:column;align-items:stretch;gap:4px;padding:12px 18px 18px;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 14px 30px #2c342a1f}.zz-nav.open{display:flex}.zz-nav a{padding:8px 4px}.zz-nav .zz-cta{text-align:center;margin-top:4px}}@media (width<=640px){.zz-header{padding:8px 14px}.zz-brand-logo{width:96px}.zz-hero-inner{width:calc(100% - 28px);padding:28px 0 30px}.booking-panel{padding:18px}}
