@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url('fonts/jost-400-normal.woff') format('woff')}
@font-face{font-family:Jost;font-style:normal;font-weight:500;font-display:swap;src:url('fonts/jost-500-normal.woff') format('woff')}
@font-face{font-family:Vollkorn;font-style:normal;font-weight:400;font-display:swap;src:url('fonts/vollkorn-400-normal.woff') format('woff')}
@font-face{font-family:Vollkorn;font-style:italic;font-weight:400;font-display:swap;src:url('fonts/vollkorn-400-italic.woff') format('woff')}
:root{--paper:#f9f5ef;--white:#fffdf9;--ink:#2e2927;--muted:#68615a;--line:#ddd4c9;--accent:#754c41;--serif:'Vollkorn',Georgia,'Times New Roman',serif;--sans:'Jost','Trebuchet MS',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}button,summary{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #aa6851;outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400;line-height:1.15}h1,h2,h3,.wordmark{font-family:var(--serif)}em{font-weight:400}.container{width:min(1280px,calc(100% - 96px));margin-inline:auto}.section{padding-block:110px}.eyebrow{font-family:var(--sans);font-size:.875rem;font-weight:500;letter-spacing:.18em;line-height:1.5}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:52px;padding:13px 24px;background:var(--ink);color:var(--white);border:1px solid var(--ink);font-size:.9375rem;font-weight:500;line-height:1.4;transition:background .2s,color .2s,border-color .2s;text-align:center}.button:hover{background:var(--accent);border-color:var(--accent)}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:.9375rem;line-height:1.5;border-bottom:1px solid currentColor;padding-bottom:4px}.text-link:hover{color:var(--accent)}.skip-link{position:fixed;z-index:20;left:20px;top:-80px;background:var(--ink);color:white;padding:12px 20px}.skip-link:focus{top:10px}.site-header{position:sticky;top:0;z-index:10;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:96px}.wordmark{display:flex;flex-direction:column;flex-shrink:0;font-size:1.65rem;letter-spacing:.08em;line-height:1.15}.wordmark span{font:500 .75rem/1.5 var(--sans);text-align:center;letter-spacing:.38em;margin-top:6px}.desktop-nav{display:flex;align-items:center;gap:29px;font-size:.9375rem}.desktop-nav a:hover{color:var(--accent)}.header-cta{min-height:43px;padding:10px 18px;font-size:.875rem}.mobile-menu{display:none}.hero{padding-top:64px}.hero-copy{text-align:center}.hero h1{font-size:clamp(3rem,5.45vw,5.25rem);line-height:1.06;letter-spacing:-.035em;margin:25px auto 22px}.hero h1 em{color:var(--accent)}.hero-description{font-size:1.0625rem;line-height:1.75;color:var(--muted)}.hero-actions{display:flex;align-items:center;justify-content:center;gap:30px;margin-top:29px}.hero-images{display:grid;grid-template-columns:1fr 1.32fr 1fr;gap:24px;margin-top:53px;align-items:center}.hero-image{overflow:hidden;background:#eaded4}.hero-image img{transition:transform .7s}.hero-image:hover img{transform:scale(1.035)}.side-image{height:330px}.center-image{height:420px}.hero-footnote{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 0;border-bottom:1px solid var(--line);font-size:.875rem}.hero-footnote>span{font-size:.75rem;letter-spacing:.13em}.hero-footnote a{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.stars{color:var(--accent);letter-spacing:.12em}.review-count{color:var(--muted)}.services-layout{display:grid;grid-template-columns:.86fr 1.3fr;gap:105px}.section-intro h2,.about-copy h2{font-size:clamp(2.6rem,4vw,4.1rem);letter-spacing:-.03em;margin:22px 0 27px}.section-intro>p:not(.eyebrow){max-width:345px;color:var(--muted);margin-bottom:30px}.service-list{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:30px 1fr 24px;gap:18px;padding:26px 0;border-bottom:1px solid var(--line)}.service-number{font-size:.8125rem;letter-spacing:.1em;color:var(--muted);padding-top:6px}.service h3{font-size:1.8rem;line-height:1.25;margin-bottom:8px}.service p{color:var(--muted);max-width:510px}.service-mark{font-size:1.8rem;line-height:1.35;color:var(--accent)}.about{background:#eee4d8}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.about-image{height:570px;overflow:hidden}.about-copy p:not(.eyebrow){color:var(--muted);margin-top:19px;max-width:480px}.about-details{display:flex;flex-direction:column;gap:7px;font-size:.9375rem;border-top:1px solid #d4c8bb;margin:29px 0;padding-top:23px}.about-details a{text-decoration:underline;text-underline-offset:4px}.reviews-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:43px}.reviews-heading h2{font-size:clamp(2.8rem,4vw,4.1rem);letter-spacing:-.025em;margin-top:18px}.rating{display:flex;align-items:center;gap:20px}.rating>strong{font-family:var(--serif);font-size:3.5rem;font-weight:400;line-height:1}.rating>strong span{font-size:1.4rem;color:var(--muted)}.rating p{font-size:.875rem;color:var(--muted)}.review-grid{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--line)}.review{padding:35px 55px 40px 0}.review+.review{border-left:1px solid var(--line);padding-left:55px;padding-right:0}.quote-mark{display:block;font:4.5rem/.9 var(--serif);color:var(--accent);height:42px}.review blockquote{font-family:var(--serif);font-size:1.85rem;line-height:1.4;margin:12px 0 28px;max-width:470px}.review figcaption{display:flex;flex-direction:column;gap:4px}.review figcaption strong{font-weight:500}.review figcaption span{font-size:.875rem;color:var(--muted)}.reviews-footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:24px}.reviews-footer p{font-size:.8125rem;color:var(--muted)}.contact{background:var(--ink);color:var(--paper);padding-bottom:0}.contact-heading{text-align:center}.contact-heading .eyebrow{color:#d5c6b8}.contact-heading h2{font-size:clamp(2.75rem,4.8vw,4.6rem);letter-spacing:-.025em;margin:20px 0}.contact-heading>p:last-child{color:#d5c6b8}.contact-grid{display:grid;grid-template-columns:1fr .9fr 1.1fr;gap:56px;margin-top:65px;margin-bottom:80px}.contact-block h3{font-family:var(--sans);font-size:.875rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;margin-bottom:24px;color:#d5c6b8}.contact-phone{display:block;font:400 1.9rem/1.25 var(--serif);margin-bottom:22px}.button-light{background:var(--paper);border-color:var(--paper);color:var(--ink)}.button-light:hover{background:#dfcec0;border-color:#dfcec0;color:var(--ink)}.small-note{font-size:.8125rem;color:#c3b8b0;line-height:1.65;margin-top:18px;max-width:280px}.contact address{font-style:normal;line-height:1.85;margin-bottom:26px}.contact .text-link:hover{color:#e6c8b5}.hours{margin:0}.hours>div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid #514943;font-size:.9375rem}.hours>div:first-child{padding-top:0}.hours dd{margin:0;white-space:nowrap}.hours dt{color:#e2d8cf}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #514943;padding:30px 0}.site-footer .wordmark{font-size:1.4rem}.site-footer .wordmark span{font-size:.75rem}.site-footer p,.site-footer>a:last-child{font-size:.8125rem;color:#c3b8b0}.mobile-contact{display:none}
@media(min-width:1600px){.hero h1{font-size:5.4rem}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.desktop-nav{gap:19px}.header-cta{display:none}.services-layout{gap:55px}.about-layout{gap:55px}.contact-grid{gap:32px}.side-image{height:290px}.center-image{height:370px}.hero-images{gap:18px}.about-image{height:510px}.hours>div{font-size:.875rem;gap:10px}}
@media(max-width:760px){html{scroll-padding-top:86px}.container{width:calc(100% - 40px)}.section{padding-block:68px}.header-inner{min-height:79px}.wordmark{font-size:1.4rem}.wordmark span{font-size:.75rem}.desktop-nav{display:none}.mobile-menu{display:block}.mobile-menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:13px;min-height:44px;font-size:.9375rem}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{font-size:1.2rem}.mobile-menu nav{position:absolute;left:0;right:0;top:100%;display:flex;flex-direction:column;padding:15px 20px 25px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 16px 20px #2e292710}.mobile-menu nav a{padding:12px 0;border-bottom:1px solid var(--line)}.hero{padding-top:40px}.eyebrow{font-size:.75rem;letter-spacing:.13em}.hero h1{font-size:clamp(2.65rem,8.6vw,4rem);line-height:1.1;margin-top:21px}.hero-description{font-size:1rem}.desktop-break{display:none}.hero-actions{gap:19px;flex-direction:column;margin-top:23px}.hero-actions .button{width:100%;max-width:340px;gap:18px}.hero-images{margin-top:34px;gap:10px;grid-template-columns:.78fr 1.25fr .78fr}.side-image{height:180px}.center-image{height:250px}.hero-footnote{justify-content:center;padding-block:22px}.hero-footnote>span{display:none}.hero-footnote a{gap:8px;font-size:.8125rem}.hero-footnote .stars{font-size:.875rem}.services-layout{grid-template-columns:1fr;gap:36px}.section-intro h2,.about-copy h2{font-size:3rem;margin-block:17px 20px}.section-intro h2 br{display:block}.section-intro>p:not(.eyebrow){max-width:100%;margin-bottom:22px}.service{padding-block:23px;gap:13px;grid-template-columns:25px 1fr 18px}.service h3{font-size:1.65rem}.service p{font-size:1rem}.service-mark{font-size:1.6rem}.about-layout{grid-template-columns:1fr;gap:35px}.about-image{height:420px;max-height:110vw}.about-copy h2 br{display:none}.about-copy h2 em{display:block}.about-copy p:not(.eyebrow){max-width:100%}.reviews-heading{align-items:flex-start;flex-direction:column;gap:25px;margin-bottom:29px}.reviews-heading h2{font-size:3rem;margin-top:14px}.rating>strong{font-size:2.75rem}.review-grid{grid-template-columns:1fr}.review{padding:27px 0 30px}.review+.review{border-left:0;border-top:1px solid var(--line);padding:27px 0 30px}.review blockquote{font-size:1.65rem;margin-bottom:20px}.reviews-footer{flex-direction:column;align-items:flex-start;gap:13px}.contact{padding-bottom:72px}.contact-heading{text-align:left}.contact-heading h2{font-size:3.2rem;line-height:1.12;max-width:400px}.contact-heading h2 em{display:block}.contact-grid{grid-template-columns:1fr;gap:40px;margin-block:40px 48px}.contact-block h3{margin-bottom:17px}.contact-phone{font-size:2rem}.contact-block .button{width:100%}.small-note{max-width:100%}.hours>div{font-size:1rem;padding-block:12px}.site-footer{flex-wrap:wrap;gap:24px;padding-block:27px}.site-footer .wordmark{width:100%;align-items:flex-start}.site-footer .wordmark span{text-align:left;padding-left:3px}.site-footer p{flex:1}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:11;min-height:60px;background:var(--paper);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.mobile-contact a{display:flex;align-items:center;justify-content:center;text-align:center;gap:14px;flex:1;padding:16px 8px;font-size:.875rem;line-height:1.4}.mobile-contact a:last-child{background:var(--ink);color:var(--paper)}}
@media(max-width:360px){.container{width:calc(100% - 32px)}.hero h1{font-size:2.4rem}.hero-images{gap:7px}.side-image{height:150px}.center-image{height:210px}.hero-footnote a{justify-content:center}.review-count{display:none}.contact-heading h2{font-size:2.8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Original emblem and language navigation shared by both static pages. */
.wordmark{flex-direction:row;align-items:center;gap:11px;letter-spacing:normal}
.wordmark .brand-emblem{width:54px;height:54px;object-fit:contain;flex-shrink:0}
.wordmark .brand-wording{display:flex;flex-direction:column;margin:0;text-align:left;letter-spacing:normal}
.wordmark .brand-name{font:400 1.55rem/1.1 var(--serif);letter-spacing:.055em;margin:0;text-align:left;white-space:nowrap}
.wordmark .brand-location{font:500 .75rem/1.5 var(--sans);letter-spacing:.3em;margin:5px 0 0;text-align:left}
.header-tools{display:flex;align-items:center;gap:20px;flex-shrink:0}
.language-switch{display:flex;align-items:center;gap:1px;font-size:.8125rem;letter-spacing:.04em}
.language-switch a{min-height:44px;min-width:38px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}
.language-switch a[aria-current="page"]{color:var(--ink);font-weight:500;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.language-switch a:hover{color:var(--accent)}
.language-switch>span{color:#948b82;font-size:.75rem}
.social-link{margin-top:24px}
.social-handle{display:block;margin-top:8px;color:#c3b8b0;font-size:.875rem}
.site-footer .brand-emblem{filter:brightness(0) invert(1);opacity:.9}
.site-footer .wordmark .brand-name{font-size:1.4rem;padding:0}
.site-footer .wordmark .brand-location{padding:0}
.footer-social{font-size:.875rem;white-space:nowrap}
.footer-social:hover{text-decoration:underline;text-underline-offset:5px}
:lang(ru) .eyebrow{letter-spacing:.12em}
:lang(ru) .service h3{font-size:1.7rem}
:lang(ru) .contact-phone{font-size:clamp(1.4rem,2.2vw,1.9rem);white-space:nowrap}
@media(max-width:1100px){.contact-grid{grid-template-columns:1fr 1fr;gap:40px}.contact-block:last-child{grid-column:1/-1}.hours{max-width:440px}}
@media(max-width:940px){
  .desktop-nav{display:none}
  .mobile-menu{display:block}
  .mobile-menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;min-width:44px;font-size:.9375rem}
  .mobile-menu summary::-webkit-details-marker{display:none}
  .mobile-menu summary span{font-size:1.2rem}
  .mobile-menu summary .menu-label{font-size:.9375rem}
  .mobile-menu nav{position:absolute;left:0;right:0;top:100%;display:flex;flex-direction:column;padding:15px 32px 25px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 16px 20px #2e292710}
  .mobile-menu nav a{padding:12px 0;border-bottom:1px solid var(--line)}
}
@media(max-width:760px){
  .header-inner{gap:12px}
  .header-tools{gap:8px}
  .wordmark{gap:8px}
  .wordmark .brand-emblem{width:40px;height:40px}
  .wordmark .brand-name{font-size:1.2rem}
  .wordmark .brand-location{font-size:.625rem;margin-top:4px;letter-spacing:.24em}
  .mobile-menu nav{padding-inline:20px}
  .contact-grid{grid-template-columns:1fr}
  .site-footer .wordmark{align-items:center}
  .site-footer .wordmark .brand-name{font-size:1.4rem}
  .site-footer p{flex:1 1 100%}
  :lang(ru) .service h3{font-size:1.6rem}
  :lang(ru) .contact-phone{font-size:2rem}
}
@media(max-width:520px){.mobile-menu summary .menu-label{display:none}}
@media(max-width:360px){
  .header-inner{gap:8px}
  .header-tools{gap:4px}
  .wordmark{gap:7px}
  .wordmark .brand-emblem{width:36px;height:36px}
  .wordmark .brand-name{font-size:1.05rem}
  .language-switch a{min-width:36px}
  :lang(ru) .contact-phone{font-size:1.8rem}
}
