.contact-hero{padding-top:var(--hero-pad-y);padding-bottom:var(--hero-pad-bottom);background:var(--hero-bg)}.contact-hero__content{text-align:center;width:min(760px,100%);margin:0 auto}.contact-hero .page-title{max-width:none;margin:0 auto 1rem;font-size:clamp(2.2rem,3.2vw,3rem)}.contact-hero .page-lead{max-width:44ch;margin:0 auto}.contact-quick{flex-direction:column;gap:.3rem;margin:1.25rem 0 0;display:none}.contact-quick a{color:var(--sage-dark);overflow-wrap:anywhere;font-weight:600;text-decoration:none}.contact-main-section{padding-bottom:var(--section-pad-y);padding-top:0!important}.contact-main-grid{border-radius:var(--card-radius);width:min(1120px,100%);box-shadow:var(--card-shadow);background:linear-gradient(#fffffffc,#fcf8f2f2);border:1px solid #84a98c29;grid-template-columns:1fr 300px;gap:0;margin:0 auto;display:grid;overflow:hidden}.contact-form-col{min-width:0;padding:2rem 2.6rem 1.8rem}.contact-form{gap:1rem;display:grid}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;display:grid}.contact-form label{letter-spacing:.12em;text-transform:uppercase;color:var(--sage-dark);gap:.45rem;font-size:.82rem;font-weight:700;display:grid}.contact-form input,.contact-form textarea{width:100%;min-width:0;color:var(--dark-text);letter-spacing:normal;text-transform:none;background:#ffffffe6;border:1px solid #52796f8c;border-radius:14px;padding:.95rem 1rem;font-family:inherit;font-size:1rem;font-weight:400;line-height:1.65}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--sage-dark);outline:none;box-shadow:0 0 0 4px #84a98c1f}.contact-form textarea{resize:vertical;min-height:110px}.form-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.form-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex}.form-status{min-height:1.5rem;color:var(--muted);font-size:.95rem}.form-status.is-success{color:#2f6f55}.form-status.is-error{color:#8d3d3d}.form-note{color:var(--muted);font-size:.88rem;line-height:1.75}.contact-sidebar{background:linear-gradient(#f4f0e8,#ede9e1);border-left:1px solid #84a98c29;flex-direction:column;display:flex}.contact-info-block{border-bottom:1px solid #84a98c24;gap:.35rem;padding:1.6rem 1.8rem;display:grid}.contact-info-block:first-child{padding-top:2rem}.contact-info-label{letter-spacing:.16em;text-transform:uppercase;color:var(--sage-dark);margin-bottom:.3rem;font-size:.72rem;font-weight:700}.contact-info-price{font-family:var(--subpage-heading-family);color:var(--dark-text);letter-spacing:-.02em;font-size:clamp(1.9rem,3vw,2.4rem);line-height:1.1}.contact-info-block p{color:#2b3132c7;margin:0;font-size:.96rem;line-height:1.75}.contact-info-block--fine p{color:#2b3132b8;font-size:.85rem}.contact-info-block--fine .contact-info-label{color:var(--sage-dark)}.contact-link{color:var(--dark-text);overflow-wrap:anywhere;font-size:.96rem;font-weight:500;line-height:1.9;text-decoration:none;display:block}.contact-link:hover{color:var(--sage-dark)}.contact-info-note{color:var(--muted);font-size:.85rem}.contact-steps-block{border-bottom:none;flex:1;padding-bottom:2rem}.contact-steps{counter-reset:steps;gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.contact-steps li{counter-increment:steps;color:#2b3132cc;grid-template-columns:1.5rem 1fr;gap:.5rem;font-size:.9rem;line-height:1.55;display:grid}.contact-steps li:before{content:counter(steps);width:1.4rem;height:1.4rem;color:var(--sage-dark);background:#84a98c40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:.08rem;font-size:.68rem;font-weight:700;display:flex}.contact-policy-strip{background:var(--section-bg-soft);border-top:1px solid #84a98c1a;padding:3rem 5%}.contact-policy-inner{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem 4rem;width:min(1120px,100%);margin:0 auto;display:grid}.contact-policy-item h3{font-family:var(--subpage-heading-family);color:var(--dark-text);margin-bottom:.7rem;font-size:1.1rem;font-weight:600}.contact-policy-item p{font-size:var(--subpage-body-size);color:#2b3132c7;margin:0;line-height:1.85}@media (width<=900px){.contact-quick{display:flex}.contact-main-grid{grid-template-columns:1fr}.contact-sidebar{border-top:1px solid #84a98c29;border-left:none;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.contact-info-block:first-child{padding-top:1.6rem}.contact-steps-block{border-top:1px solid #84a98c24;grid-column:1/-1;padding-bottom:1.6rem}.contact-form-col{padding:2rem 2rem 1.8rem}}@media (width<=768px){.contact-hero{padding-top:1rem;padding-bottom:2rem}.contact-main-grid{border-radius:22px}.contact-form-col{padding:1.6rem 1.4rem}.contact-sidebar{grid-template-columns:1fr}.contact-info-block{border-right:none}.contact-steps-block{grid-column:1}.contact-policy-strip{padding:2.25rem 1.5rem}.contact-policy-inner{grid-template-columns:1fr;gap:1.5rem}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column;align-items:stretch}.contact-form .cta-button{width:100%}}.page-intro{background:var(--hero-bg);padding:.9rem 5% .8rem}.page-intro__inner{flex-wrap:wrap;align-items:baseline;gap:.2rem 1.4rem;width:min(1120px,100%);margin:0 auto;display:flex}.page-intro__title{font-family:var(--font-display-soft);letter-spacing:-.015em;color:var(--dark-text);margin:0;font-size:clamp(1.5rem,2.1vw,1.85rem);font-weight:500;line-height:1.15}.page-intro__lead{color:var(--muted);max-width:none;margin:0;font-size:.98rem;line-height:1.5}body.contact-page main.page,body.booking-page main.page{padding-top:90px}.price-section{padding:.9rem 5% clamp(1.2rem,2.2vw,1.8rem)}.price-card{border-radius:var(--card-radius);width:min(1120px,100%);box-shadow:var(--card-shadow-soft);background:#fff;border:1px solid #84a98c38;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"main cta";align-items:center;gap:.4rem 3rem;margin:0 auto;padding:clamp(1.1rem,2vw,1.5rem) clamp(1.3rem,2.8vw,2.2rem);display:grid}.price-card__main{grid-area:main}.price-card__cta{grid-area:cta}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.price-list{margin:0;padding:0;list-style:none}.price-list__item{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.3rem 3.5rem;display:flex}.price-list__name{color:var(--dark-text);font-size:1.05rem;line-height:1.35}.price-list__name b{font-size:1.12rem;font-weight:600;display:block}.price-list__name small{color:var(--muted);margin-top:.1rem;font-size:.93rem;display:block}.price-list__price{font-family:var(--subpage-heading-family,var(--font-display-soft));letter-spacing:-.02em;color:var(--dark-text);white-space:nowrap;font-size:clamp(2.2rem,3.4vw,2.8rem);line-height:1.05}.price-card__note{color:var(--muted);margin:.45rem 0 0;font-size:.85rem;line-height:1.5}.price-card__cta{justify-items:center;gap:.5rem;display:grid}.price-card__cta .cta-button{white-space:nowrap;min-height:56px;margin:0;padding:0 2.4rem;font-size:1.02rem}.price-card__caption{color:var(--muted);text-align:center;text-wrap:balance;max-width:34ch;margin:0;font-size:.88rem;line-height:1.45}body.contact-page .contact-main-section{padding:0 5% clamp(1.4rem,2.4vw,2rem)!important}body.contact-page .contact-main-grid{grid-template-columns:minmax(0,1fr) 290px}body.contact-page .contact-form-col{padding:1.5rem 2.2rem 1.4rem}body.contact-page .contact-form__title{margin:0 0 .35rem;font-size:clamp(1.35rem,1.9vw,1.6rem)}body.contact-page .contact-form__hint{color:var(--muted);margin:0 0 1rem;font-size:.94rem;line-height:1.6}body.contact-page .contact-form input,body.contact-page .contact-form textarea{padding:.7rem .9rem}body.contact-page .contact-form label{font-size:.74rem}body.contact-page .contact-info-block{padding:1.1rem 1.6rem}body.contact-page .contact-info-block:first-child{padding-top:1.5rem}body.contact-page .contact-info-block:last-child{border-bottom:0}body.contact-page .form-note{margin:0;font-size:.84rem;line-height:1.65}body.contact-page .form-actions{flex-wrap:wrap;align-items:center;gap:.6rem 1rem;display:flex}body.contact-page .cf-turnstile{flex:0 auto}body.contact-page .cf-turnstile:empty{display:none}a.cta-button--secondary,button.cta-button--secondary{color:var(--sage-dark);border:1.5px solid var(--sage-dark);background:0 0;min-height:48px;margin:0;padding:0 1.6rem}a.cta-button--secondary:hover,button.cta-button--secondary:hover{color:var(--sage-dark);box-shadow:none;background:#52796f1a}.form-actions .form-status{flex:100%;min-height:0}.form-actions .form-status:empty{display:none}body.contact-page .contact-policy-strip{padding-top:0}@media (width<=860px){.price-card{grid-template-columns:1fr}.price-card__cta{justify-items:stretch}.price-card__cta .cta-button{width:100%}body.contact-page .contact-main-grid{grid-template-columns:1fr}body.contact-page .contact-sidebar{border-top:1px solid #84a98c29;border-left:0}body.contact-page .contact-form-col{padding:1.3rem 1.2rem}body.contact-page .form-actions{flex-direction:column;align-items:stretch}body.contact-page .form-actions .cta-button{width:100%}.price-list__item{max-width:none}}body.contact-page main.page .contact-form-col{border-top:0;border-radius:22px;padding:1.6rem 1.9rem 1.3rem}body.contact-page main.page>section.contact-main-section:nth-of-type(odd):nth-of-type(n+3):not(.final-cta),body.contact-page main.page>section.contact-main-section{background:var(--warm-canvas,#fcf9f3);padding-bottom:1.4rem!important}body.contact-page main.page .contact-main-grid{align-items:start}body.contact-page main.page .contact-sidebar{box-shadow:none;background:0 0;border:0}body.contact-page main.page .contact-info-block{border-bottom:1px solid #84a98c29;padding:.9rem 0 .9rem 2rem}body.contact-page .contact-form textarea{min-height:78px}body.contact-page .contact-form{gap:.75rem}@media (width<=860px){body.contact-page main.page .contact-info-block{padding:.9rem .2rem}body.contact-page main.page .contact-form-col{padding:1.1rem}}.form-req{color:var(--muted);margin:0 0 .1rem;font-size:.82rem;line-height:1.5}body.contact-page .contact-form__hint{margin:0 0 .9rem}body.contact-page main.page .contact-info-block{border-bottom:1px solid #84a98c2e;padding:1rem 0 1rem 2rem;display:block}body.contact-page main.page .contact-info-block:first-child{padding-top:.3rem}body.contact-page main.page .contact-info-block:last-child{border-bottom:0}body.contact-page main.page .contact-info-block p{color:#2b3132d1;margin:0;font-size:.96rem;line-height:1.65}body.contact-page main.page .contact-info-block p small{color:var(--muted);font-size:.84rem}body.contact-page main.page .contact-info-label{margin-bottom:.35rem}body.contact-page main.page .contact-link{line-height:1.8}@media (width<=860px){.price-card{grid-template-columns:1fr;grid-template-areas:"main""cta";row-gap:.9rem}.price-card__cta{justify-items:stretch;margin-top:.4rem}}.contact-booking-hint{color:var(--muted);margin:-.3rem 0 1rem;font-size:.95rem}.contact-booking-hint a{color:var(--sage-dark);text-underline-offset:3px;text-decoration:underline}.booking-section{padding:.9rem 5% clamp(1.8rem,3vw,2.6rem)}.booking-wrap{width:min(1120px,100%);margin:0 auto}.booking-fallback{border:var(--card-border-soft);border-radius:var(--card-radius);box-shadow:var(--card-shadow-soft);background:#fff;max-width:720px;margin:0 auto;padding:1.6rem 1.8rem}.booking-fallback p{color:var(--muted);margin:0 0 1rem}.booking-fallback p:last-child{margin-bottom:0}#rezervace-root{min-height:320px}.booking-how{margin:2rem 0 0}.booking-how .booking-how__title{font-family:var(--font-display-soft);color:var(--dark-text);margin:0 0 .9rem;font-size:clamp(1.3rem,1.8vw,1.5rem);font-weight:500;line-height:1.2}.booking-how__steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;margin:0;padding:0;list-style:none;display:grid}.booking-how__steps li{color:var(--dark-text);align-items:flex-start;gap:.8rem;font-size:1rem;line-height:1.5;display:flex}.booking-how__num{border:1.5px solid var(--sage-dark);width:1.9rem;height:1.9rem;color:var(--sage-dark);border-radius:50%;flex:none;place-items:center;margin-top:.1rem;font-size:.92rem;font-weight:700;display:grid}.booking-terms{border-top:1px solid #84a98c40;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:1.2rem 3rem;margin:1.6rem 0 0;padding-top:1.4rem;display:grid}.booking-terms .booking-terms__col h3{letter-spacing:.16em;text-transform:uppercase;color:var(--sage-dark);margin:0 0 .4rem;font-family:"Source Sans 3",system-ui,sans-serif;font-size:.74rem;font-weight:700;line-height:1.3}.booking-terms__col p{color:var(--dark-text);max-width:62ch;margin:0;font-size:.98rem;line-height:1.65}.booking-terms__col a{color:var(--sage-dark)}@media (width<=760px){.booking-how__steps{grid-template-columns:1fr;gap:.9rem}.booking-terms{grid-template-columns:1fr}}
