.site-header{position:sticky;top:0;z-index:100;background-color:var(--color-bg);border-bottom:1px solid var(--color-border)}.site-header__inner{display:flex;align-items:center;gap:var(--space-4);width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-padding);min-height:clamp(56px,3.5rem + 1vw,64px)}.site-header__logo{font-family:var(--font-display);font-size:var(--text-lg);font-weight:500;color:var(--color-text);text-decoration:none;letter-spacing:-.01em;flex-shrink:0;line-height:1.2}.site-header__logo:hover{color:var(--color-accent)}.site-header__nav{display:none;flex:1;justify-content:center}.site-header__nav-list{display:flex;align-items:center;gap:clamp(var(--space-4),2vw,var(--space-8));list-style:none}.site-header__nav-link{font-family:var(--font-body);font-size:var(--text-small);font-weight:400;color:var(--color-text-muted);text-decoration:none;letter-spacing:.01em;padding-block:var(--space-2);border-bottom:2px solid transparent;transition:color .2s ease,border-color .2s ease}.site-header__nav-link:hover{color:var(--color-text)}.site-header__nav-link--active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.site-header__cta{display:none;align-items:center;justify-content:center;height:42px;padding-inline:1.25rem;border-radius:var(--radius-button);background-color:var(--color-accent);border:1px solid var(--color-accent);color:var(--color-surface);font-family:var(--font-body);font-size:var(--text-small);font-weight:700;letter-spacing:.01em;text-decoration:none;white-space:nowrap;flex-shrink:0;transition:background-color .2s ease,border-color .2s ease}.site-header__cta:hover{background-color:var(--color-accent-dark);border-color:var(--color-accent-dark);color:var(--color-surface)}.site-header__cta--mobile{display:inline-flex;width:100%;height:48px;margin-top:var(--space-4)}.site-header__menu-btn{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;width:44px;height:44px;color:var(--color-text);border-radius:var(--radius-button)}.site-header__menu-btn:hover{color:var(--color-accent)}.site-header__menu-icon{display:block}.site-header__mobile{display:none;background-color:var(--color-surface);border-top:1px solid var(--color-border);padding:var(--space-6) var(--container-padding) var(--space-8)}.site-header__mobile--open{display:block}.site-header__mobile-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-2)}.site-header__mobile-link{display:block;font-family:var(--font-body);font-size:var(--text-body);font-weight:400;color:var(--color-text);text-decoration:none;padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);letter-spacing:.01em}.site-header__mobile-link:hover,.site-header__mobile-link--active{color:var(--color-accent)}@media(min-width:768px){.site-header__inner{min-height:clamp(64px,4rem + .5vw,72px)}.site-header__nav{display:flex}.site-header__cta{display:inline-flex}.site-header__menu-btn,.site-header__mobile{display:none}}.site-footer{background-color:var(--color-surface);border-top:1px solid var(--color-border);padding-block:clamp(var(--space-12),5vw,var(--space-16))}.site-footer__inner{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-padding)}.site-footer__grid{display:grid;grid-template-columns:1fr;gap:var(--space-8);margin-bottom:var(--space-8)}.site-footer__name{font-family:var(--font-display);font-size:var(--text-lg);font-weight:500;color:var(--color-text);margin-bottom:var(--space-3);line-height:1.3}.site-footer__tagline{font-family:var(--font-body);font-size:var(--text-small);color:var(--color-text-muted);line-height:1.5;letter-spacing:.01em;max-width:28ch}.site-footer__nav-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-3)}.site-footer__nav-link,.site-footer__contact-link,.site-footer__privacy{font-family:var(--font-body);font-size:var(--text-small);color:var(--color-text-muted);text-decoration:none;letter-spacing:.01em;transition:color .2s ease}.site-footer__nav-link:hover,.site-footer__contact-link:hover,.site-footer__privacy:hover{color:var(--color-accent)}.site-footer__contacts{display:flex;flex-direction:column;gap:var(--space-3)}.site-footer__bottom{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding-top:var(--space-6);border-top:1px solid var(--color-border);text-align:center}.site-footer__copy{font-family:var(--font-body);font-size:var(--text-small);color:var(--color-text-muted);letter-spacing:.01em}@media(min-width:768px){.site-footer__grid{grid-template-columns:1.4fr 1fr 1.2fr;gap:var(--space-10)}.site-footer__bottom{flex-direction:row;justify-content:space-between;align-items:center;text-align:left}}.contact-modal__overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background-color:#2b2a2880;opacity:0;transition:opacity .22s cubic-bezier(.22,1,.36,1)}.contact-modal__overlay--open{opacity:1}.contact-modal{position:relative;width:100%;max-width:480px;max-height:calc(100vh - 2 * var(--space-4));overflow-y:auto;background-color:var(--color-surface);border-radius:var(--radius-xl);padding:clamp(var(--space-6),5vw,var(--space-10));box-shadow:var(--shadow-lg);opacity:0;transform:scale(.96);transition:opacity .22s cubic-bezier(.22,1,.36,1),transform .22s cubic-bezier(.22,1,.36,1)}.contact-modal--open{opacity:1;transform:scale(1)}.contact-modal__close{position:absolute;top:var(--space-3);right:var(--space-3);display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--color-text-muted);border-radius:var(--radius-button);transition:color .2s ease}.contact-modal__close:hover{color:var(--color-text)}.contact-modal__title{font-family:var(--font-display);font-size:var(--text-h3);font-weight:500;line-height:1.2;color:var(--color-text);margin:0 var(--space-8) var(--space-3) 0}.contact-modal__lead{font-family:var(--font-body);font-size:var(--text-small);color:var(--color-text-muted);line-height:1.5;letter-spacing:.01em;margin:0 0 var(--space-6)}.contact-modal__form{display:flex;flex-direction:column;gap:var(--space-4)}.contact-modal__field{display:flex;flex-direction:column;gap:var(--space-2)}.contact-modal__label{font-size:var(--text-small);font-weight:700;color:var(--color-text);letter-spacing:.01em}.contact-modal__input,.contact-modal__textarea{width:100%;box-sizing:border-box;padding:var(--space-3) var(--space-4);font-family:var(--font-body);font-size:var(--text-body);color:var(--color-text);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-button);transition:border-color .2s ease}.contact-modal__input:focus,.contact-modal__textarea:focus{outline:2px solid var(--color-accent);outline-offset:2px;border-color:var(--color-accent)}.contact-modal__input--error{border-color:var(--color-error)}.contact-modal__textarea{resize:vertical;min-height:96px;line-height:1.5}.contact-modal__consent{display:grid;grid-template-columns:1.125rem 1fr;gap:var(--space-3);align-items:start;cursor:pointer}.contact-modal__checkbox{width:1.125rem;height:1.125rem;margin-top:.15rem;accent-color:var(--color-accent);cursor:pointer}.contact-modal__consent-text{font-size:var(--text-small);color:var(--color-text-muted);line-height:1.45;letter-spacing:.01em}.contact-modal__link{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}.contact-modal__link:hover{color:var(--color-accent-dark)}.contact-modal__error{font-size:var(--text-xs);color:var(--color-error);line-height:1.4;letter-spacing:.01em;margin:0}.contact-modal__btn{display:inline-flex;align-items:center;justify-content:center;width:100%;height:clamp(48px,44px + .5vw,56px);padding-inline:var(--space-6);border-radius:var(--radius-button);background-color:var(--color-accent);border:1px solid var(--color-accent);color:var(--color-surface);font-family:var(--font-body);font-size:var(--text-small);font-weight:700;letter-spacing:.01em;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.contact-modal__btn:hover{background-color:var(--color-accent-dark);border-color:var(--color-accent-dark)}.contact-modal__note{font-size:var(--text-small);color:var(--color-text-muted);text-align:center;line-height:1.45;letter-spacing:.01em;margin:0}.contact-modal__success{display:flex;flex-direction:column;gap:var(--space-4);padding-top:var(--space-2)}@media(prefers-reduced-motion:reduce){.contact-modal__overlay,.contact-modal{transition:none}.contact-modal{transform:none}}.landing{background-color:var(--color-bg)}.landing__container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-padding)}.landing__container--narrow{max-width:640px}.landing__section{padding-block:var(--section-gap)}.landing__section--surface{background-color:var(--color-surface)}.landing__section-title{font-size:var(--text-h2);margin-bottom:clamp(var(--space-6),3vw,var(--space-10));max-width:24ch}.landing__section-lead{font-size:var(--text-body);color:var(--color-text-muted);max-width:52ch;margin-bottom:clamp(var(--space-6),3vw,var(--space-8));line-height:1.5}.landing__hero{padding-block:clamp(var(--space-10),4vw,var(--space-20)) clamp(var(--space-8),3.5vw,var(--space-12));background-color:var(--color-bg);border-bottom:1px solid var(--color-border)}.landing__hero-grid{display:grid;grid-template-columns:1fr;gap:var(--space-8);align-items:center}.landing__hero-content{min-width:0}.landing__hero-photo{display:grid;aspect-ratio:4 / 5;width:100%;max-width:320px;margin:0 auto;border-radius:var(--radius-lg);overflow:hidden;line-height:0}.landing__hero-photo img{grid-area:1 / 1;width:100%;height:100%;min-width:100%;min-height:100%;object-fit:cover;object-position:center center;display:block;border-radius:var(--radius-lg)}@media(min-width:768px){.landing__hero-grid{grid-template-columns:1.1fr .9fr;gap:var(--space-12)}.landing__hero-photo{max-width:none;margin:0}}.landing__hero-title{font-size:var(--text-h1);margin-bottom:var(--space-4);letter-spacing:-.01em}.landing__hero-subtitle{font-family:var(--font-body);font-size:clamp(1.125rem,1rem + .5vw,1.375rem);font-weight:700;color:var(--color-text);margin-bottom:var(--space-3);line-height:1.4}.landing__hero-text{font-size:var(--text-body);color:var(--color-text-muted);max-width:48ch;margin-bottom:var(--space-8);line-height:1.5}.landing__hero-cta{display:flex;flex-direction:column;align-items:stretch;gap:clamp(var(--space-6),2vw,var(--space-8));width:100%;max-width:36rem}.landing__hero-actions{display:flex;flex-direction:row;flex-wrap:wrap;align-items:stretch;gap:var(--space-3);width:100%;margin:0;padding:0}.landing__hero-actions .landing__btn{flex:1 1 calc(50% - var(--space-3) / 2);min-width:0;max-width:100%}.landing__btn{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:clamp(48px,46px + .25vw,52px);min-height:clamp(48px,46px + .25vw,52px);padding-inline:var(--space-6);border-radius:var(--radius-button);font-family:var(--font-body);font-size:var(--text-small);font-weight:700;line-height:1.25;letter-spacing:.01em;text-decoration:none;transition:background-color .2s ease,border-color .2s ease,color .2s ease;white-space:normal;text-align:center}.landing__btn--primary{background-color:var(--color-accent);color:var(--color-surface);border:1px solid var(--color-accent)}.landing__btn--primary:hover{background-color:var(--color-accent-dark);border-color:var(--color-accent-dark);color:var(--color-surface)}.landing__btn--secondary{background-color:transparent;color:var(--color-text);border:1px solid var(--color-border)}.landing__btn--secondary:hover{border-color:var(--color-accent);color:var(--color-accent)}.landing__btn--full{width:100%}.landing__trust-tags{display:flex;flex-wrap:wrap;gap:var(--space-2);list-style:none;margin:0;padding:0;width:100%}.landing__trust-tag{font-size:var(--text-small);color:var(--color-text-muted);padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:100px;background-color:var(--color-surface);line-height:1.3;letter-spacing:.01em}.landing__grid{display:grid;align-items:stretch;gap:var(--space-4);list-style:none}.landing__grid--2,.landing__grid--3,.landing__grid--4{grid-template-columns:1fr}@media(min-width:768px){.landing__grid{gap:var(--space-6)}.landing__grid--2,.landing__grid--3,.landing__grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1280px){.landing__grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.landing__grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}}.landing__card{display:flex;flex-direction:column;height:100%;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:clamp(var(--space-6),2vw,var(--space-8));box-shadow:var(--shadow-card)}.landing__section--surface .landing__card{background-color:var(--color-bg)}.landing__card--compact{padding:clamp(var(--space-6),1.75vw,var(--space-8))}.landing__card--quote{justify-content:flex-start}.landing__card-title{font-size:var(--text-card-title);line-height:1.3;margin-bottom:var(--space-2);min-height:2.6em}.landing__card-text{flex-grow:1;font-size:var(--text-small);color:var(--color-text-muted);line-height:1.45;letter-spacing:.01em}.landing__awards-heading{font-family:var(--font-display);font-size:var(--text-h3);font-weight:500;margin-top:clamp(var(--space-10),4vw,var(--space-12));margin-bottom:var(--space-6);letter-spacing:-.01em}.landing__awards{display:grid;grid-template-columns:1fr;gap:var(--space-4);list-style:none}@media(min-width:768px){.landing__awards{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)}}@media(min-width:1280px){.landing__awards{grid-template-columns:repeat(3,minmax(0,1fr))}}.landing__award-card{display:flex;flex-direction:column;gap:var(--space-3);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:var(--space-4);box-shadow:var(--shadow-card)}.landing__award-preview{aspect-ratio:3 / 4;width:100%;margin:0;border-radius:calc(var(--radius-card) - 4px);background-color:var(--color-surface);border:1px solid var(--color-border);overflow:hidden}.landing__award-preview img{display:block;width:100%;height:100%;object-fit:contain}.landing__award-label{font-size:var(--text-small);color:var(--color-text-muted);text-align:center;line-height:1.35;letter-spacing:.01em}.landing__quote{display:flex;flex-direction:column;flex-grow:1;margin:0}.landing__quote p{font-family:var(--font-display);font-size:clamp(1rem,.95rem + .2vw,1.125rem);font-style:italic;font-weight:400;line-height:1.55;color:var(--color-text)}.landing__quote p:before{content:"“";color:var(--color-accent)}.landing__form{display:flex;flex-direction:column;gap:var(--space-4)}.landing__form-field{display:flex;flex-direction:column;gap:var(--space-2)}.landing__form-label{font-size:var(--text-small);font-weight:700;color:var(--color-text);letter-spacing:.01em}.landing__form-input,.landing__form-textarea{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--text-body);color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-button);transition:border-color .2s ease}.landing__form-input:hover,.landing__form-textarea:hover{border-color:color-mix(in srgb,var(--color-border) 60%,var(--color-text-muted))}.landing__form-input:focus,.landing__form-textarea:focus{outline:none;border-color:var(--color-accent)}.landing__form-textarea{resize:vertical;min-height:120px;line-height:1.5}.landing__form-consent{display:flex;align-items:flex-start;gap:var(--space-3)}.landing__form-checkbox{flex-shrink:0;width:1.125rem;height:1.125rem;margin-top:.15rem;accent-color:var(--color-accent);cursor:pointer}.landing__form-consent-label{font-size:var(--text-small);color:var(--color-text-muted);line-height:1.45;cursor:pointer;letter-spacing:.01em}.landing__form-link{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}.landing__form-link:hover{color:var(--color-accent-dark)}.landing__form-note{font-size:var(--text-small);color:var(--color-text-muted);text-align:center;line-height:1.45}.landing__form-error{font-size:var(--text-small);color:var(--color-error)}.landing__form-success{padding:var(--space-6);text-align:center;font-size:var(--text-body);color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card)}@media(max-width:540px){.landing__hero-actions{flex-direction:column;gap:var(--space-3)}.landing__hero-actions .landing__btn{flex:1 1 auto;width:100%;max-width:none}}@media(min-width:541px)and (max-width:767px){.landing__hero-actions{gap:var(--space-4)}}.about{background-color:var(--color-bg)}.about__container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-padding)}.about__container--narrow{max-width:720px}.about__section{padding-block:var(--section-gap)}.about__section--surface{background-color:var(--color-surface)}.about__section-title{font-size:var(--text-h2);margin-bottom:clamp(var(--space-6),3vw,var(--space-10));max-width:24ch}.about__section-lead{font-size:var(--text-body);color:var(--color-text-muted);max-width:52ch;margin-bottom:clamp(var(--space-6),3vw,var(--space-8));line-height:1.5}.about__hero{padding-block:clamp(var(--space-10),4vw,var(--space-20)) clamp(var(--space-8),3.5vw,var(--space-12));background-color:var(--color-bg);border-bottom:1px solid var(--color-border)}.about__hero-grid{display:grid;grid-template-columns:1fr;gap:var(--space-8);align-items:center}.about__hero-content{min-width:0}.about__hero-photo{display:grid;aspect-ratio:4 / 5;width:100%;max-width:320px;margin:0 auto;border-radius:var(--radius-lg);overflow:hidden;line-height:0}.about__hero-photo img{grid-area:1 / 1;width:100%;height:100%;min-width:100%;min-height:100%;object-fit:cover;object-position:center center;display:block;border-radius:var(--radius-lg)}.about__hero-title{font-size:var(--text-h1);margin-bottom:var(--space-4);letter-spacing:-.01em}.about__hero-subtitle{font-family:var(--font-body);font-size:clamp(1.125rem,1rem + .5vw,1.375rem);font-weight:400;color:var(--color-text-muted);margin-bottom:var(--space-3);line-height:1.4;letter-spacing:.01em}.about__hero-text{font-size:var(--text-body);color:var(--color-text-muted);max-width:48ch;margin-bottom:var(--space-8);line-height:1.5}@media(min-width:768px){.about__hero-grid{grid-template-columns:1.1fr .9fr;gap:var(--space-12)}.about__hero-photo{max-width:none;margin:0}}.about__btn{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:clamp(48px,44px + .5vw,56px);min-height:clamp(48px,44px + .5vw,56px);padding-inline:clamp(1.25rem,1rem + 1vw,2rem);border-radius:var(--radius-button);font-family:var(--font-body);font-size:var(--text-small);font-weight:700;letter-spacing:.01em;text-decoration:none;transition:background-color .2s ease,border-color .2s ease,color .2s ease;white-space:nowrap}.about__btn--primary{background-color:var(--color-accent);color:var(--color-surface);border:1px solid var(--color-accent)}.about__btn--primary:hover{background-color:var(--color-accent-dark);border-color:var(--color-accent-dark);color:var(--color-surface)}.about__btn--secondary{background-color:transparent;color:var(--color-text);border:1px solid var(--color-border)}.about__btn--secondary:hover{border-color:var(--color-accent);color:var(--color-accent)}.about__grid{display:grid;align-items:stretch;gap:var(--space-4);list-style:none}.about__grid--2,.about__grid--3{grid-template-columns:1fr}.about__card{display:flex;flex-direction:column;height:100%;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:clamp(var(--space-6),2vw,var(--space-8));box-shadow:var(--shadow-card)}.about__section--surface .about__card{background-color:var(--color-bg)}.about__card--compact{padding:clamp(var(--space-6),1.75vw,var(--space-8));justify-content:center}.about__card-label{font-size:var(--text-small);color:var(--color-text-muted);margin-bottom:var(--space-2);letter-spacing:.01em}.about__card-title{font-size:var(--text-card-title);line-height:1.3}@media(min-width:768px){.about__grid{gap:var(--space-6)}.about__grid--2,.about__grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1280px){.about__grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}}.about__timeline{list-style:none;margin:0;padding:0;border-top:1px solid var(--color-border)}.about__timeline-item{display:grid;grid-template-columns:1fr;gap:var(--space-2);padding-block:var(--space-6);border-bottom:1px solid var(--color-border)}.about__timeline-period{font-family:var(--font-body);font-size:var(--text-small);font-weight:700;color:var(--color-accent);letter-spacing:.01em}.about__timeline-place{font-size:var(--text-card-title);margin-bottom:var(--space-2);line-height:1.3}.about__timeline-detail{font-size:var(--text-small);color:var(--color-text-muted);line-height:1.45;letter-spacing:.01em}@media(min-width:768px){.about__timeline-item{grid-template-columns:minmax(140px,.35fr) 1fr;gap:var(--space-8);align-items:start}}.about__chips{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-3);list-style:none}.about__chip{grid-column:span 6;display:flex;align-items:center;justify-content:center;text-align:center;min-height:3.25rem;padding:var(--space-3) var(--space-4);font-size:var(--text-small);font-weight:400;color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-button);background-color:var(--color-surface);line-height:1.35;letter-spacing:.01em}@media(min-width:768px){.about__chips{gap:var(--space-4)}.about__chip{grid-column:span 4;min-height:3.5rem}}@media(min-width:1280px){.about__chip{grid-column:span 3}.about__chip:nth-child(n+5){grid-column:span 4}}.about__quote{margin:0;padding:0;border:none}.about__quote p{font-family:var(--font-display);font-size:clamp(1.125rem,1rem + .35vw,1.375rem);font-style:italic;font-weight:400;line-height:1.55;color:var(--color-text)}.about__quote p:before{content:"“";color:var(--color-accent)}.about__doc-card{display:flex;flex-direction:column;gap:var(--space-3);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:var(--space-4);box-shadow:var(--shadow-card)}.about__doc-preview{aspect-ratio:3 / 4;width:100%;margin:0;border-radius:calc(var(--radius-card) - 4px);background-color:var(--color-bg);border:1px solid var(--color-border);overflow:hidden}.about__doc-preview img{display:block;width:100%;height:100%;object-fit:contain}.about__doc-label{font-size:var(--text-small);color:var(--color-text-muted);text-align:center;letter-spacing:.01em}.about__cta-inner{text-align:center}.about__cta-title{max-width:none;margin-inline:auto;margin-bottom:var(--space-8)}.about__cta-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-4)}@media(max-width:479px){.about__cta-actions{flex-direction:column;align-items:stretch}.about__btn{width:100%;white-space:normal;text-align:center}}.booking{background-color:var(--color-bg)}.booking__container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-padding)}.booking__container--narrow{max-width:720px}.booking__section{padding-block:var(--section-gap)}.booking__section--surface{background-color:var(--color-surface)}.booking__section-title{font-size:var(--text-h2);margin-bottom:clamp(var(--space-6),3vw,var(--space-10));max-width:20ch}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.booking__intro{padding-block:clamp(var(--space-10),4vw,var(--space-20)) clamp(var(--space-8),3.5vw,var(--space-12));background-color:var(--color-bg);border-bottom:1px solid var(--color-border)}.booking__title{font-size:var(--text-h1);margin-bottom:var(--space-4);letter-spacing:-.01em}.booking__subtitle{font-family:var(--font-body);font-size:var(--text-body);color:var(--color-text-muted);line-height:1.5;max-width:48ch}.booking__columns{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-6);align-items:start}.booking__form-col,.booking__info-col{min-width:0;width:100%}@media(min-width:768px){.booking__columns{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:var(--space-10)}}@media(min-width:1280px){.booking__columns{gap:var(--space-12)}}.booking__form{display:flex;flex-direction:column;gap:var(--space-5);width:100%;box-sizing:border-box;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:clamp(var(--space-6),2vw,var(--space-8));box-shadow:var(--shadow-card)}.booking__field{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.booking__label{font-size:var(--text-small);font-weight:700;color:var(--color-text);letter-spacing:.01em}.booking__input,.booking__textarea{display:block;width:100%;box-sizing:border-box;padding:var(--space-3) var(--space-4);font-size:var(--text-body);color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-button);transition:border-color .2s ease}.booking__input:hover,.booking__textarea:hover{border-color:color-mix(in srgb,var(--color-border) 60%,var(--color-text-muted))}.booking__input:focus,.booking__textarea:focus{outline:2px solid var(--color-accent);outline-offset:2px;border-color:var(--color-accent)}.booking__input--error{border-color:#a35b4a}.booking__textarea{resize:vertical;min-height:120px;line-height:1.5}.booking__consent{display:grid;grid-template-columns:1.125rem 1fr;align-items:start;gap:var(--space-3);width:100%;cursor:pointer}.booking__checkbox{width:1.125rem;height:1.125rem;margin:.15rem 0 0;accent-color:var(--color-accent);cursor:pointer}.booking__consent-label{font-size:var(--text-small);color:var(--color-text-muted);line-height:1.45;letter-spacing:.01em}.booking__link{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}.booking__link:hover{color:var(--color-accent-dark)}.booking__error{font-size:var(--text-xs);color:#a35b4a;letter-spacing:.01em;line-height:1.4;margin:0}.booking__note,.booking__success{font-size:var(--text-small);text-align:left;line-height:1.45;letter-spacing:.01em;margin:0}.booking__note{color:var(--color-text-muted)}.booking__success{color:var(--color-accent-dark)}.booking__legal-text{font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.55;letter-spacing:.01em;text-align:left;margin:0;padding-top:var(--space-2);border-top:1px solid var(--color-border)}.booking__btn{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:clamp(48px,44px + .5vw,56px);min-height:clamp(48px,44px + .5vw,56px);padding-inline:clamp(1.25rem,1rem + 1vw,2rem);border-radius:var(--radius-button);font-family:var(--font-body);font-size:var(--text-small);font-weight:700;letter-spacing:.01em;text-decoration:none;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.booking__btn--primary{background-color:var(--color-accent);color:var(--color-surface);border:1px solid var(--color-accent)}.booking__btn--primary:hover{background-color:var(--color-accent-dark);border-color:var(--color-accent-dark);color:var(--color-surface)}.booking__btn--full{width:100%}.booking__info-col{width:100%;min-width:0}.booking__panel{width:100%;box-sizing:border-box;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:clamp(var(--space-6),2vw,var(--space-8));box-shadow:var(--shadow-card)}.booking__panel-block{padding-block:var(--space-6)}.booking__panel-block:first-child{padding-top:0}.booking__panel-block:last-child{padding-bottom:0}.booking__panel-block+.booking__panel-block{border-top:1px solid var(--color-border)}.booking__card-title{font-size:var(--text-card-title);margin:0 0 var(--space-4);line-height:1.3}.booking__card-hint{font-size:var(--text-small);color:var(--color-text-muted);margin:0 0 var(--space-4);line-height:1.45;letter-spacing:.01em}.booking__contact-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-1, .25rem);margin:0;padding:0}.booking__contact-link{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) 0;font-size:var(--text-small);color:var(--color-text);text-decoration:none;letter-spacing:.01em;transition:color .2s ease}.booking__contact-link:hover{color:var(--color-accent)}.booking__icon{flex-shrink:0;color:var(--color-text-muted)}.booking__contact-link:hover .booking__icon{color:var(--color-accent)}.booking__steps{list-style:none;display:flex;flex-direction:column;gap:var(--space-4);margin:0;padding:0}.booking__step{display:grid;grid-template-columns:2rem minmax(0,1fr);column-gap:var(--space-3);align-items:baseline;font-size:var(--text-small);color:var(--color-text);line-height:1.45;letter-spacing:.01em}.booking__step-num{font-family:var(--font-display);font-size:var(--text-small);font-weight:500;color:var(--color-accent);line-height:1.45}.booking__step-text{color:var(--color-text)}.booking__prep-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.booking__prep-list li{position:relative;padding:var(--space-3) 0 var(--space-3) var(--space-4);font-size:var(--text-small);color:var(--color-text-muted);line-height:1.45;letter-spacing:.01em;border-top:1px solid var(--color-border)}.booking__prep-list li:last-child{padding-bottom:0}.booking__prep-list li:before{content:"";position:absolute;left:0;top:calc(var(--space-3) + .55em);width:5px;height:5px;border-radius:50%;background-color:var(--color-accent);opacity:.55}.privacy{background-color:var(--color-bg)}.privacy__container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-padding)}.privacy__intro{padding-block:clamp(var(--space-10),4vw,var(--space-20)) clamp(var(--space-8),3.5vw,var(--space-12));background-color:var(--color-bg);border-bottom:1px solid var(--color-border)}.privacy__title{font-size:var(--text-h1);margin-bottom:var(--space-4);letter-spacing:-.01em;max-width:18ch}.privacy__meta{font-size:var(--text-small);color:var(--color-text-muted);letter-spacing:.01em}.privacy__section{padding-block:var(--section-gap)}.privacy__section--surface{background-color:var(--color-surface)}.privacy__content{max-width:760px}.privacy__heading{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:500;line-height:1.3;margin:var(--space-8) 0 var(--space-3);color:var(--color-text)}.privacy__heading:first-child{margin-top:0}.privacy__text{font-size:var(--text-body);color:var(--color-text-muted);line-height:1.6;letter-spacing:.01em;margin:0}.admin-login{min-height:calc(100vh - 120px);display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--container-padding);background-color:var(--color-bg)}.admin-login__card{width:100%;max-width:400px;padding:clamp(var(--space-8),4vw,var(--space-10));background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.admin-login__title{font-size:var(--text-h2);margin-bottom:var(--space-6);text-align:center}.admin-login__form{display:flex;flex-direction:column;gap:var(--space-4)}.admin-login__label{display:block;font-size:var(--text-small);color:var(--color-text-muted);margin-bottom:var(--space-2)}.admin-login__input{width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-body);font-size:var(--text-body);border:1px solid var(--color-border);border-radius:var(--radius-button);background-color:var(--color-bg);color:var(--color-text)}.admin-login__input:focus{outline:2px solid var(--color-accent);outline-offset:1px}.admin-login__error{font-size:var(--text-small);color:var(--color-error)}.admin-login__btn{margin-top:var(--space-2);padding:var(--space-3) var(--space-6);font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:#fff;background-color:var(--color-accent);border:none;border-radius:var(--radius-button);cursor:pointer}.admin-login__btn:hover:not(:disabled){background-color:var(--color-accent-dark)}.admin-login__btn:disabled{opacity:.7;cursor:not-allowed}.admin{padding-block:clamp(var(--space-8),3vw,var(--space-12));background-color:var(--color-bg);min-height:calc(100vh - 120px)}.admin__container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-padding)}.admin__header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-8)}.admin__title{font-size:var(--text-h1);margin-bottom:var(--space-2)}.admin__subtitle{font-size:var(--text-small);color:var(--color-text-muted)}.admin__logout{padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--text-small);border:1px solid var(--color-border);border-radius:var(--radius-button);background:var(--color-surface);color:var(--color-text);cursor:pointer}.admin__logout:hover{border-color:var(--color-accent);color:var(--color-accent)}.admin__toolbar{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-6);align-items:flex-end}.admin__filter{display:flex;flex-direction:column;gap:var(--space-2);min-width:160px}.admin__filter-label{font-size:var(--text-small);color:var(--color-text-muted)}.admin__select{padding:var(--space-2) var(--space-3);font-family:var(--font-body);font-size:var(--text-small);border:1px solid var(--color-border);border-radius:var(--radius-button);background:var(--color-surface);color:var(--color-text)}.admin__select--inline{min-width:130px}.admin__search{display:flex;flex:1;flex-wrap:wrap;gap:var(--space-2);min-width:min(100%,280px)}.admin__search-input{flex:1;min-width:200px;padding:var(--space-2) var(--space-3);font-family:var(--font-body);border:1px solid var(--color-border);border-radius:var(--radius-button);background:var(--color-surface)}.admin__search-btn{padding:var(--space-2) var(--space-4);font-family:var(--font-body);font-size:var(--text-small);border:none;border-radius:var(--radius-button);background:var(--color-accent);color:#fff;cursor:pointer}.admin__search-btn:hover{background:var(--color-accent-dark)}.admin__error{color:var(--color-error);margin-bottom:var(--space-4);font-size:var(--text-small)}.admin__loading,.admin__empty{color:var(--color-text-muted);padding:var(--space-8) 0}.admin__table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.admin__table{width:100%;border-collapse:collapse;font-size:var(--text-small)}.admin__table th,.admin__table td{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--color-border);vertical-align:top}.admin__table th{font-weight:500;color:var(--color-text-muted);background:var(--color-bg)}.admin__table tbody tr:last-child td{border-bottom:none}.admin__reason{max-width:220px;line-height:1.4;color:var(--color-text-muted)}.admin__table a{color:var(--color-accent);text-decoration:none;white-space:nowrap}.admin__table a:hover{text-decoration:underline}@media(max-width:767px){.admin__table th:nth-child(5),.admin__table td:nth-child(5){display:none}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #f6f3ee;--color-surface: #fbf8f4;--color-text: #2b2a28;--color-text-muted: #6f6a64;--color-text-faint: #a39d96;--color-border: #ddd6ce;--color-accent: #8b6b3f;--color-accent-dark: #6e5432;--color-error: #a35b4a;--font-display: "Lora", Georgia, serif;--font-body: "PT Sans", -apple-system, sans-serif;--radius-lg: clamp(16px, 1.25vw, 20px);--radius-xl: clamp(20px, 1.5vw, 24px);--radius-card: clamp(16px, 1.25vw, 20px);--radius-button: clamp(10px, .75vw, 14px);--shadow-card: 0 2px 12px rgba(43, 42, 40, .04);--shadow-lg: 0 16px 48px rgba(43, 42, 40, .14);--text-h1: clamp(2.25rem, 1.5rem + 2.5vw, 4.5rem);--text-h2: clamp(2rem, 1.5rem + 1.25vw, 3rem);--text-h3: clamp(1.625rem, 1.375rem + .625vw, 2rem);--text-lg: clamp(1.125rem, 1.05rem + .25vw, 1.25rem);--text-body: clamp(1.0625rem, 1rem + .25vw, 1.25rem);--text-small: clamp(.9375rem, .9rem + .125vw, 1rem);--text-xs: clamp(.8125rem, .78rem + .1vw, .875rem);--text-card-title: clamp(1.125rem, 1.05rem + .2vw, 1.375rem);--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--section-gap: clamp(var(--space-12), 5vw, var(--space-20));--container-max: 1200px;--container-padding: clamp(1.25rem, 3vw, 2.5rem)}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:var(--text-body);font-weight:400;line-height:1.6;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3{font-family:var(--font-display);font-weight:500;line-height:1.15;color:var(--color-text)}h1{font-weight:600}a{color:var(--color-accent);text-decoration:underline;text-underline-offset:3px;transition:color .2s ease}a:hover{color:var(--color-accent-dark)}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea{font-family:inherit}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}
