@import "https://fonts.googleapis.com/css2?family=Alegreya:wght@600;700&family=Inter:wght@400;600;700;800;900&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--booking-bg:#181411;--booking-panel:#fffdf9;--booking-ink:#201b17;--booking-muted:#6a625b;--booking-line:#e2d8cc;--booking-green:#b91c1c;--booking-blue:#b91c1c;--booking-gold:#d4b574;--booking-rose:#b91c1c;--booking-red:#b91c1c;--booking-red-dark:#991b1b;--booking-cream:#f7f0e8;--booking-shadow:0 24px 58px #18141138;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:var(--booking-ink);background:#211c16;margin:0}button,input,select,textarea{font:inherit}button{border:1px solid var(--booking-line);color:inherit;cursor:pointer;background:#fff;border-radius:7px}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:2px solid #3f7f9d8c}.booking-shell{background:linear-gradient(#1814110d 0,#f3eee6 430px 100%);width:100%;margin:0 auto;padding:0 0 44px}.booking-hero{isolation:isolate;color:#fffdfa;background:linear-gradient(90deg,#000000b3,#00000061 52%,#0000009e),url(https://masaze-zazi.cz/wp-content/uploads/2025/07/khampha-phimmachak-aof9V5B3EmQ-unsplash-1536x1024.jpg) 50% 42%/cover;align-items:center;min-height:156px;padding:26px max(18px,50vw - 590px);display:flex;position:relative;overflow:hidden}.booking-hero:before{content:"";z-index:-1;background:radial-gradient(circle at 72% 18%,#ffffff1f,#0000 22%),#0000001f;position:absolute;inset:0}.booking-brand{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:28px;width:min(100%,1040px);min-width:0;display:grid}.booking-brand img{object-fit:contain;background:0 0;border:0;border-radius:0;flex:none;width:clamp(100px,10.2vw,128px);height:auto}.booking-hero-text{gap:10px;min-width:0;display:grid}.booking-brand span,.panel-head span,.summary-head span{color:var(--booking-muted);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:800;display:block}.booking-brand span{color:#ffffffc7}.booking-brand strong{color:#fff;letter-spacing:0;text-wrap:balance;font-size:clamp(40px,5.1vw,64px);font-weight:900;line-height:.95;display:block}.booking-hero-text p{color:#ffffffe6;text-shadow:0 1px 14px #00000061;white-space:nowrap;max-width:none;margin:0;font-family:Alegreya,Georgia,serif;font-size:clamp(18px,1.7vw,23px);font-weight:700;line-height:1.35}.booking-layout{z-index:2;grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:22px;width:min(1180px,100% - 32px);margin:18px auto 0;display:grid;position:relative}.booking-main{gap:16px;min-width:0;display:grid}.booking-calendar-footnote{color:#695d50b8;text-align:center;width:min(1180px,100% - 32px);margin:14px auto 0;font-size:12px;font-weight:650;line-height:1.45}.booking-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0;display:grid}.booking-step{text-align:left;background:#fffdf9b8;align-items:center;gap:9px;min-height:53px;padding:9px;display:flex}.booking-step span{width:28px;height:28px;color:var(--booking-muted);background:#ece5d8;border-radius:50%;flex:0 0 28px;place-items:center;font-size:13px;font-weight:900;display:grid}.booking-step strong{font-size:14px}.booking-step.active{background:#fffdf9;border-color:#b91c1c80;box-shadow:0 10px 24px #22303914}.booking-step.active span,.booking-step.done span{background:var(--booking-green);color:#fff}.booking-panel,.booking-summary{border:1px solid var(--booking-line);background:var(--booking-panel);min-width:0;box-shadow:var(--booking-shadow);border-radius:8px}.booking-panel{padding:24px}.panel-head{margin-bottom:20px}.panel-head h1{letter-spacing:0;margin:4px 0 0;font-size:clamp(28px,4vw,42px);line-height:1.08}.service-grid{gap:10px;display:grid}.service-item{gap:6px;display:grid}.service-card{background:#fffdf9e0;border:1px solid #e8e1d6;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 13px;transition:border-color .18s,box-shadow .18s,transform .18s,background .18s;display:grid;box-shadow:0 8px 22px #2230390e}.service-item.selected .service-card{background:snow;border-color:#b91c1c6b;box-shadow:0 10px 26px #b91c1c1a}.service-card:hover{border-color:#b91c1c9e;transform:translateY(-1px);box-shadow:0 12px 28px #22303914}.service-select-area{text-align:left;background:0 0;border:0;justify-items:start;gap:4px;min-width:0;min-height:38px;padding:0;display:grid}.service-select-area:hover{border-color:#0000}.service-name{min-width:0;font-size:17px;font-weight:760;line-height:1.28}.service-meta{color:var(--booking-muted);flex-wrap:wrap;gap:6px;font-size:13px;font-weight:650;line-height:1.25;display:flex}.service-meta span+span:before{content:"";background:#cfc6b8;border-radius:50%;width:4px;height:4px;margin:0 7px 2px 1px;display:inline-block}.service-availability{color:var(--booking-red);align-items:center;gap:7px;margin:10px 0 0;font-size:13px;font-weight:760;line-height:1.25;display:inline-flex}.service-availability:before{content:"";background:var(--booking-green);border-radius:50%;flex:none;width:7px;height:7px;box-shadow:0 0 0 3px #b91c1c1f}.service-actions{align-items:center;gap:7px;display:flex}.service-detail-toggle,.service-select-action{min-height:38px;padding:0 12px;font-size:13px;font-weight:780}.service-detail-toggle{color:#49645b;background:0 0;border-color:#0000;align-items:center;gap:8px;display:inline-flex}.service-detail-toggle:hover{background:#fff7f7;border-color:#efd7d7}.service-detail-toggle i{border-bottom:1.5px solid;border-right:1.5px solid;width:7px;height:7px;transition:transform .18s;transform:translateY(-2px)rotate(45deg)}.service-detail-toggle[aria-expanded=true] i{transform:translateY(2px)rotate(225deg)}.service-select-action{color:var(--booking-red-dark);background:#fff7f7;border-color:#b91c1c47}.service-select-action:hover,.service-select-action.selected{border-color:var(--booking-green);background:var(--booking-green);color:#fff}.service-detail{background:#fbfdfbdb;border:1px solid #efe1da;border-radius:8px;gap:9px;margin:0 12px 4px;padding:13px 14px 14px;animation:.18s ease-out detail-reveal;display:grid;box-shadow:inset 0 1px #fffc}@keyframes detail-reveal{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.service-detail h3{margin:0;font-size:15px;font-weight:780;line-height:1.25}.service-detail p{color:#43515a;margin:0;font-size:14px;line-height:1.5}.service-detail dl{gap:6px;margin:2px 0 0;display:grid}.service-detail dl div{border-top:1px solid #f0e5dd;grid-template-columns:88px minmax(0,1fr);gap:10px;padding-top:7px;display:grid}.service-detail dt{color:#60716b;white-space:nowrap;font-size:12px;font-weight:760}.service-detail dd{color:#43515a;text-align:left;font-size:14px;font-weight:500;line-height:1.5}.date-cell.available:hover,.slot-button:hover{border-color:#b91c1c5c}.slot-button.selected{border-color:var(--booking-green);background:#fff7f7;box-shadow:inset 0 0 0 1px #b91c1c2e}.service-card small,.slot-button span,.field small{color:var(--booking-muted)}.calendar-legend{color:var(--booking-muted);flex-wrap:wrap;gap:10px 16px;margin-bottom:14px;font-size:13px;font-weight:760;display:flex}.calendar-legend span,.legend-jump{align-items:center;gap:7px;display:inline-flex}.legend-jump{min-height:0;color:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;background:0 0;border:0;border-radius:0;padding:0}.legend-jump:hover{color:var(--booking-red-dark);text-underline-offset:3px;background:0 0;text-decoration:underline}.legend-jump:disabled{opacity:.45;text-decoration:none}.legend-dot{border-radius:2px;width:12px;height:12px;display:inline-block}.today-dot{background:#fff0bd;border:1px solid #d3aa41}.nearest-dot{background:#ffe3e3;border:1px solid #b91c1c66}.calendar-slider{grid-template-columns:12px minmax(0,1fr) 12px;align-items:stretch;gap:4px;display:grid}.calendar-shift{color:#6a625b6b;background:0 0;border:0;border-radius:8px;place-items:center;min-width:0;min-height:100%;padding:0;font-size:20px;font-weight:500;line-height:1;display:grid}.calendar-shift:hover{color:#991b1bb8;background:#fff7f7b8}.calendar-shift:disabled{opacity:.2;background:0 0}.calendar-board{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.month-card{background:#fff;border:1px solid #e6ddd0;border-radius:8px;min-width:0;padding:10px}.month-card h2{text-transform:capitalize;margin:0 0 10px;font-size:16px;line-height:1.25}.month-weekdays,.month-grid{grid-template-columns:repeat(7,minmax(28px,1fr));gap:4px;display:grid}.month-weekdays{margin-bottom:5px}.month-weekdays span{color:var(--booking-muted);text-align:center;font-size:11px;font-weight:820}.date-cell{aspect-ratio:1;text-align:center;color:#2a221c;background:0 0;border-color:#0000;border-radius:2px;place-items:center;width:100%;min-width:0;min-height:30px;padding:0;transition:border-color .16s,background .16s,box-shadow .16s,transform .16s,color .16s;display:grid;position:relative}.date-cell strong{z-index:1;font-size:14px;font-weight:760;line-height:1;position:relative}.date-cell.empty{background:0 0;border:0}.date-cell.unavailable{color:#c6beb6;background:#f7f4ef;border-color:#f0eae1}.date-cell.available{color:#1f1712;background:#fffdf9;border-color:#eadbd3;box-shadow:inset 0 0 0 1px #b91c1c0a}.date-cell.available:hover{background:#fff8f5;border-color:#b91c1c52;transform:translateY(-1px)}.date-cell.today{color:#604414;background:#fff0bd;border-color:#d3aa41;box-shadow:inset 0 0 0 1px #a06f151f}.date-cell.today:disabled{opacity:1}.date-cell.nearest{color:#7f1d1d;background:#ffe3e3;border-color:#b91c1c66;box-shadow:inset 0 0 0 1px #b91c1c14}.date-cell.selected{border-color:var(--booking-green);background:var(--booking-green);color:#fff;transform:translateY(-1px);box-shadow:0 10px 22px #b91c1c42}.date-cell.available.selected:hover{border-color:var(--booking-green);background:var(--booking-green);color:#fff}.slot-grid{grid-template-columns:repeat(auto-fit,minmax(116px,1fr));gap:8px;margin-top:14px;display:grid}.slot-button{justify-content:center;place-items:center;min-height:42px;padding:8px 10px;display:inline-flex}.slot-button strong{font-size:15px;line-height:1}.booking-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.field{gap:7px;display:grid}.field span{color:var(--booking-muted);font-size:13px;font-weight:760}.field span b,.consent-line b,.captcha-line b{color:var(--booking-rose);font-weight:900}.field input,.field select,.field textarea{border:1px solid var(--booking-line);width:100%;color:var(--booking-ink);background:#fff;border-radius:7px}.field input,.field select{height:44px;padding:0 12px}.field select{min-width:165px}.field textarea{resize:vertical;min-height:110px;padding:12px}.full-field,.phone-field{grid-column:1/-1}.phone-row{grid-template-columns:minmax(165px,220px) minmax(0,1fr);gap:10px;display:grid}.phone-row.custom-dial{grid-template-columns:minmax(150px,200px) 110px minmax(0,1fr)}.dial-input{text-align:center}.trap-field{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.trap-field[hidden]{display:none}.consent-line,.captcha-line{color:var(--booking-muted);align-items:flex-start;gap:10px;line-height:1.45;display:flex}.consent-line input,.captcha-line input{margin-top:3px}.consent-line a{color:var(--booking-blue);font-weight:760}.captcha-line{width:fit-content;max-width:100%;color:var(--booking-ink);background:#fff7f7;border:1px solid #efd7d7;border-radius:7px;padding:11px 13px;font-weight:760}.field-error,.empty-state{color:var(--booking-rose);margin:12px 0 0;font-weight:760}.empty-state{color:var(--booking-muted);font-size:14px;font-weight:650}.field small.field-message{color:var(--booking-rose);font-weight:760}.booking-submit-status{color:var(--booking-red-dark);background:#fff7f7;border:1px solid #efd7d7;border-radius:7px;margin:12px 0 0;padding:11px 13px;font-weight:760}.booking-submit-status.error{color:#9d4c52;background:#fff7f6;border-color:#ead1d2}.contact-card{background:#faf6ed;border:1px solid #e7dfd1;border-radius:8px;justify-content:space-between;gap:14px;margin-top:18px;padding:14px;display:flex}.contact-card span{color:var(--booking-muted);text-align:right}.panel-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.split-actions{justify-content:space-between}.panel-actions button{min-height:42px;padding:0 16px}.primary-action{border-color:var(--booking-green);background:var(--booking-green);color:#fff;font-weight:820}.primary-action:hover{border-color:var(--booking-red-dark);background:var(--booking-red-dark)}a.primary-action{border:1px solid var(--booking-green);border-radius:7px;justify-content:center;align-items:center;min-height:42px;padding:0 16px;text-decoration:none;display:inline-flex}.booking-summary{overflow-wrap:anywhere;padding:0;position:sticky;top:16px}.booking-summary.is-empty{align-items:center;min-height:53px;padding:9px 18px;display:flex}.summary-head{border-bottom:0;padding:0}.booking-summary:not(.is-empty) .summary-head{border-bottom:1px solid #e9e1d4;padding:18px 18px 20px}.summary-head strong{margin-top:38px;font-size:22px;line-height:1.16;display:block}.booking-summary dl{gap:0;margin:0;padding:18px 24px 22px;display:grid}.done-list{gap:12px;margin:18px 0 0;display:grid}.booking-summary dl div,.done-list div{border-top:1px solid #e9e1d4;justify-content:space-between;gap:14px;padding-top:12px;display:flex}.booking-summary dl div{padding:14px 0}.booking-summary dl div:first-child{border-top:0}.booking-summary dl dt,.done-list dt{white-space:nowrap;flex:none;min-width:max-content}.booking-summary dl dd,.done-list dd{overflow-wrap:anywhere;min-width:0}.summary-term-row dd{overflow-wrap:normal}.summary-term{justify-items:end;gap:3px;line-height:1.2;display:grid}.summary-term span,.summary-term strong{white-space:nowrap;display:block}.booking-summary .summary-address-row{grid-template-columns:max-content minmax(0,1fr);align-items:start;display:grid}.booking-summary .summary-address-row dd{overflow-wrap:normal;word-break:normal;text-wrap:pretty;justify-self:end;max-width:260px}dt{color:var(--booking-muted);font-size:13px}dd{text-align:right;margin:0;font-weight:780}.done-panel{text-align:center;justify-items:center;padding:34px 24px;display:grid}.done-mark{background:var(--booking-green);color:#fff;border-radius:50%;place-items:center;width:58px;height:58px;margin-bottom:14px;font-size:30px;font-weight:900;display:grid}.centered-head{text-align:center}.centered-actions{justify-content:center}.booking-delivery-status{background:#fff7f7;border-radius:8px;gap:7px;width:min(100%,520px);margin-top:18px;padding:13px 15px;display:grid}.booking-delivery-status p{color:#43515a;margin:0;font-size:14px;line-height:1.45}.calendar-download-box{background:#faf6ed;border:1px solid #e7dfd1;border-radius:8px;justify-items:center;gap:8px;width:min(100%,460px);margin-top:18px;padding:16px;display:grid}.calendar-download-box p{color:#66726f;max-width:360px;margin:0;font-size:14px;line-height:1.5}.calendar-download{color:#2f657e;background:#eef6f7;border:1px solid #c7dce1;border-radius:7px;justify-content:center;align-items:center;min-height:42px;padding:0 16px;font-weight:820;text-decoration:none;display:inline-flex}.calendar-download:hover{background:#e2f0f2}.cancellation-layout{grid-template-columns:minmax(0,760px);justify-content:center}.cancellation-panel{width:100%}.centered-text{text-align:center}.cancellation-details{width:min(100%,520px);margin-inline:auto}.cancellation-note{color:#43515a;text-align:center;background:#fff7f7;border:1px solid #efd7d7;border-radius:8px;width:min(100%,520px);margin:18px auto 0;padding:13px 15px;font-size:14px;font-weight:650;line-height:1.5}.cancellation-actions{width:min(100%,520px);margin-inline:auto}.danger-action{color:var(--booking-red-dark);background:#fff7f7;border-color:#b91c1c6b;font-weight:820}.danger-action:hover{border-color:var(--booking-red-dark);background:var(--booking-red-dark);color:#fff}.privacy-shell{width:min(920px,100% - 32px);margin:0 auto;padding:26px 0 56px}.privacy-shell .booking-brand{margin-bottom:18px}.privacy-panel{border:1px solid var(--booking-line);background:var(--booking-panel);box-shadow:var(--booking-shadow);border-radius:8px;gap:18px;padding:28px;display:grid}.privacy-panel h1{margin:0;font-size:clamp(30px,5vw,46px);line-height:1.05}.privacy-panel h2{margin:12px 0 0;font-size:20px}.privacy-panel p,.privacy-panel li{color:#43515a;line-height:1.65}.privacy-panel p,.privacy-panel ul{margin:0}.privacy-panel ul{padding-left:20px}.privacy-note{background:#fff7f7;border:1px solid #efd7d7;border-radius:7px;padding:14px}.text-link{color:var(--booking-blue);font-weight:760}@media (prefers-reduced-motion:reduce){.service-card,.service-detail,.service-detail-toggle i{transition:none;animation:none}}@media (width<=920px){.booking-hero,.booking-layout{grid-template-columns:1fr}.booking-summary{order:-1;position:static}.service-grid{grid-template-columns:1fr}.slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=640px){.booking-shell{width:100%}.booking-hero{min-height:0;padding:24px 14px}.booking-brand{grid-template-columns:1fr;align-items:start;gap:12px}.booking-brand img{width:112px}.booking-brand strong{font-size:clamp(34px,12vw,48px)}.booking-hero-text p{white-space:normal;text-wrap:balance;font-size:18px}.booking-layout{width:min(100% - 20px,1180px);margin-top:10px}.booking-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-panel,.booking-summary{padding:16px}.calendar-slider{grid-template-columns:10px minmax(0,1fr) 10px;gap:3px}.calendar-shift{font-size:18px}.booking-form,.slot-grid,.phone-row{grid-template-columns:1fr}.service-card{grid-template-columns:1fr;gap:11px;padding:12px}.service-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%;display:grid}.service-detail-toggle,.service-select-action{justify-content:center;width:100%;min-height:40px}.service-detail{margin-inline:4px}.service-detail dl div{grid-template-columns:1fr;gap:4px}.contact-card,.booking-summary dl div,.done-list div{display:grid}.booking-summary .summary-address-row{grid-template-columns:1fr}.booking-summary .summary-address-row dd{justify-self:stretch;max-width:none}.contact-card span,dd{text-align:left}}
