:root{--cream:#f8f5ef;--ivory:#fffdf9;--sand:#eee5d8;--gold:#bb9256;--gold-dark:#96703d;--ink:#43352e;--muted:#81756c;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--ivory);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,249,.95);backdrop-filter:blur(20px);border-bottom:1px solid #e9dfd1}.nav-shell{width:min(1480px,94%);margin:auto;display:flex;align-items:center;justify-content:space-between;min-height:85px;gap:22px}.brand{display:flex;align-items:center;gap:11px;flex-shrink:0}.brand-mark{font:46px var(--serif);color:var(--gold);line-height:.9}.brand small,.brand strong{display:block;letter-spacing:.14em}.brand small{font-size:9px}.brand strong{font:500 25px var(--serif);letter-spacing:.13em;line-height:1.05}.navigation{display:flex;align-items:center;gap:clamp(10px,1.8vw,29px)}.navigation a{font-size:12px;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;transition:color .2s}.navigation a:hover,.text-link:hover{color:var(--gold)}.nav-actions{display:flex;align-items:center;gap:12px}.lang-switch{display:flex;background:#f2eadf;border-radius:24px;padding:3px;gap:2px}.lang{border:0;background:transparent;border-radius:20px;padding:7px 8px;color:#6b5b50;font-size:11px}.lang.active{background:white;box-shadow:0 1px 5px #00000012}.nav-cta{white-space:nowrap;padding:12px 17px;border:1px solid var(--gold);color:var(--gold-dark);border-radius:30px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.menu-toggle{display:none;border:0;background:none;padding:7px}.menu-toggle span{display:block;width:23px;height:2px;background:var(--ink);margin:5px 0}.hero{position:relative;background:linear-gradient(113deg,#f6eee4 0%,#faf6f1 47%,#eee2d3 100%);overflow:hidden}.hero-glow{position:absolute;left:-150px;top:-90px;width:550px;height:550px;border-radius:50%;background:radial-gradient(circle,#fff6e7 0%,transparent 70%)}.hero-inner{max-width:1450px;margin:auto;display:grid;grid-template-columns:1fr .89fr;min-height:650px;position:relative}.hero-copy{padding:96px 38px 105px max(6vw,40px);display:flex;align-items:flex-start;flex-direction:column;justify-content:center;z-index:1}.eyebrow,.kicker{font-size:11px;font-weight:700;color:var(--gold-dark);letter-spacing:.22em}.eyebrow{display:flex;align-items:center;gap:13px;margin-bottom:25px}.eyebrow .line{width:32px;height:1px;background:var(--gold)}.hero-mini{font:12px var(--sans);letter-spacing:.28em;margin-bottom:17px}.hero-mini em{font-style:normal;color:var(--gold-dark);font-weight:700}.hero h1{font:400 clamp(49px,5.1vw,86px)/1.14 var(--serif);letter-spacing:-.04em;margin:0 0 25px;max-width:720px}.hero h1 i,h2 i{color:var(--gold);font-weight:400}.hero-sub{font-size:17px;color:#675950;line-height:1.8;max-width:450px}.hero-buttons{display:flex;align-items:center;gap:25px;margin-top:22px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:25px;border-radius:35px;padding:17px 28px;font-size:12px;letter-spacing:.11em;text-transform:uppercase;font-weight:700;transition:transform .2s,background .2s;text-align:center}.btn:hover{transform:translateY(-2px)}.btn-gold{color:white;background:linear-gradient(135deg,#d0aa70,#a77d42)}.btn-outline{border:1px solid #b99568;color:var(--gold-dark)}.subtle-link,.text-link{font-size:13px;font-weight:700;letter-spacing:.03em}.hero-foot{display:flex;align-items:center;gap:10px;margin-top:75px;color:#8a7b70;font-size:12px}.star{font-size:29px;color:var(--gold)}.hero-photo-wrap{position:relative;min-height:650px;overflow:hidden;align-self:stretch}.hero-photo-bg{position:absolute;inset:35px 0 0 0;border-top-left-radius:45% 22%;background:#d6c5b4}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center 35%;position:absolute;inset:0;filter:saturate(.9) sepia(.06)}.photo-label{position:absolute;bottom:24px;right:35px;color:white;display:flex;gap:14px;font-size:10px;letter-spacing:.16em;text-shadow:0 1px 8px #0008}.scroll-cue{position:absolute;bottom:25px;left:6vw;color:#847464;font-size:10px;letter-spacing:.21em;display:flex;gap:12px}.intro-band{background:#eee4d6;display:flex;align-items:center;justify-content:center;gap:25px;padding:22px;text-align:center;color:#816b52}.intro-band span{color:var(--gold)}.intro-band p{margin:0;font:italic 17px var(--serif)}.section{padding:112px max(5vw,20px)}.section-heading{text-align:center;max-width:690px;margin:0 auto 54px}.section-heading h2,h2{font:400 clamp(38px,4vw,60px)/1.2 var(--serif);letter-spacing:-.035em;margin:14px 0 20px}.section-heading p{font-size:15px;color:var(--muted);line-height:1.85}.services-grid{max-width:1240px;margin:auto;display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.service-card{border:1px solid #e9dfd3;background:#fdfaf6;min-height:220px;padding:26px 19px;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-4px);box-shadow:0 10px 35px #47362510}.service-symbol{font:30px var(--serif);color:var(--gold);margin-bottom:20px;display:block}.service-card h3{font:500 19px/1.25 var(--serif);margin:0 0 12px}.service-card p{font-size:12px;line-height:1.7;color:#766a61;margin:0}.service-note{text-align:center;margin:30px 0 0;color:#9b8b7b;font-size:12px}.salon-section{background:#f5efe6}.salon-grid{max-width:1260px;margin:auto;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(40px,7vw,115px)}.salon-images{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:end}.salon-images img{width:100%;height:390px;object-fit:cover}.salon-images img:nth-child(2){height:295px;margin-top:70px}.salon-copy p,.art-lead-text p,.about-inner p{font-size:15px;line-height:1.95;color:#70645c}.salon-copy h2{max-width:460px}.text-link{display:inline-block;border-bottom:1px solid var(--gold);padding-bottom:9px;margin-top:16px}.products{background:#fffdf9}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1150px;margin:auto}.product-card{text-align:center}.product-card img{width:100%;aspect-ratio:1.12;object-fit:contain;background:#faf9f7;border:1px solid #efeae4}.product-card h3{font:500 22px var(--serif);margin:22px 0 8px}.product-card p{font-size:13px;line-height:1.75;color:var(--muted);max-width:280px;margin:auto}.center{text-align:center;margin-top:38px}.art-section{background:#f5f0e8}.art-lead{display:grid;grid-template-columns:.85fr 1.15fr;min-height:630px;background:#dfd2c0}.art-lead-image{min-height:630px;overflow:hidden}.art-lead-image img{width:100%;height:100%;object-fit:cover;object-position:center 30%}.art-lead-text{padding:80px clamp(40px,8vw,135px);display:flex;justify-content:center;flex-direction:column}.art-lead-text h2{font-size:clamp(39px,4.3vw,64px)}.signature{font:italic 25px var(--serif);color:var(--gold-dark);margin-top:24px}.gallery-section{padding:105px max(4vw,20px) 115px;text-align:center}.filter-bar{display:flex;justify-content:center;gap:13px;margin-bottom:35px;flex-wrap:wrap}.filter{background:transparent;border:1px solid #d8cbbc;border-radius:30px;padding:10px 20px;font-size:12px;color:#77695c}.filter.active{background:#bb9256;color:white;border-color:#bb9256}.gallery{max-width:1300px;margin:auto;columns:4 225px;column-gap:18px;text-align:left}.gallery-item{display:block;break-inside:avoid;margin:0 0 18px;position:relative;overflow:hidden;border:0;padding:0;background:#ede4d8;width:100%;cursor:zoom-in}.gallery-item img{width:100%;height:auto;transition:transform .4s}.gallery-item:hover img{transform:scale(1.035)}.gallery-item:after{content:'↗';position:absolute;right:12px;bottom:12px;background:#faf6eeee;color:#866a45;padding:6px 10px;border-radius:50%;opacity:0;transition:opacity .3s}.gallery-item:hover:after{opacity:1}.gallery-foot{font-size:14px;line-height:1.8;color:#827367;max-width:550px;margin:45px auto 24px}.about{background:#fdfbf8}.about-inner{max-width:840px;margin:auto;text-align:center}.about-inner p{max-width:740px;margin:0 auto 17px}.about-quote{font:italic 24px/1.6 var(--serif)!important;color:var(--gold-dark)!important;margin-top:28px!important}.est-mark{font:400 61px var(--serif);color:var(--gold);margin-top:35px}.est-mark span{display:block;font:700 10px var(--sans);letter-spacing:.22em;color:#8f7d6d;margin-top:5px}.contact{background:#f1e8dc}.contact-grid{max-width:1220px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:auto}.contact-card{background:#fbf8f3;text-align:center;padding:35px 20px;min-height:280px;display:flex;align-items:center;flex-direction:column}.contact-card.featured{background:#e6d7c2}.contact-icon{font:30px var(--serif);color:var(--gold);margin-bottom:15px}.contact-card h3{font:500 22px var(--serif);margin-bottom:18px}.contact-card p,.contact-card a:not(.btn){font-size:13px;line-height:1.8;color:#6b5c51}.contact-card a:not(.btn){margin:4px 0}.contact-card a.phone{font-size:21px;font-weight:600;color:var(--ink)}.contact-card .btn{margin-top:15px;padding:13px 19px}.footer{background:#3d342e;color:#f6efe5;padding:38px max(5vw,20px);display:flex;justify-content:space-between;gap:25px;align-items:center}.footer-logo{font:15px var(--serif);letter-spacing:.12em}.footer-logo b{color:#d8b780}.footer p{margin:8px 0;font-size:11px;color:#c3b5a6}.footer>a{font-size:12px}.lightbox[hidden]{display:none}.lightbox{position:fixed;inset:0;background:rgba(22,18,16,.96);z-index:100;display:flex;align-items:center;justify-content:center;padding:60px 70px 75px}.lightbox img{max-height:100%;max-width:100%;object-fit:contain}.close-lightbox,.lightbox-arrow{position:absolute;background:#ffffff20;color:white;border:0;border-radius:50%;width:43px;height:43px;font-size:27px}.close-lightbox{top:18px;right:22px}.lightbox-arrow.prev{left:14px}.lightbox-arrow.next{right:14px}.lightbox p{position:absolute;bottom:18px;color:#eee;font-size:13px;left:20px;right:20px;text-align:center}
@media(max-width:1150px){.navigation{gap:12px}.navigation a{font-size:10px}.nav-cta{display:none}.services-grid{grid-template-columns:repeat(3,1fr)}.hero-inner{min-height:580px}.hero-photo-wrap{min-height:580px}.hero-copy{padding-left:5vw}.hero h1{font-size:clamp(43px,5vw,70px)}}
@media(max-width:820px){.nav-shell{min-height:70px}.menu-toggle{display:block}.navigation{display:none;position:absolute;top:70px;left:0;right:0;background:#fffdf9;padding:24px 6%;box-shadow:0 20px 30px #0001;flex-direction:column;align-items:stretch;gap:0}.navigation.open{display:flex}.navigation a{padding:15px;border-bottom:1px solid #f1e9df;font-size:13px}.hero-inner{grid-template-columns:1fr 1fr;min-height:520px}.hero-copy{padding:55px 22px 70px 5vw}.hero h1{font-size:clamp(38px,5.6vw,55px)}.hero-photo-wrap{min-height:520px}.hero-sub{font-size:14px}.hero-foot{margin-top:45px}.scroll-cue{display:none}.salon-grid{grid-template-columns:1fr;gap:35px}.salon-copy{max-width:630px}.art-lead-text{padding:45px}.art-lead,.art-lead-image{min-height:560px}.contact-grid{gap:10px}.contact-card{padding:28px 10px}.contact-card .btn{font-size:10px}}
@media(max-width:620px){.nav-shell{width:92%}.brand-mark{font-size:36px}.brand small{font-size:8px}.brand strong{font-size:21px}.lang{font-size:11px;padding:6px 7px}.hero-inner{display:flex;flex-direction:column-reverse}.hero-photo-wrap{min-height:365px;max-height:460px;height:60vh;order:0}.hero-photo{object-position:center 32%}.hero-copy{padding:45px 7% 50px;order:1}.hero h1{font-size:clamp(43px,11vw,63px)}.hero-sub{font-size:15px}.hero-foot{margin-top:32px}.hero-buttons{gap:17px}.btn{padding:15px 22px}.photo-label{right:15px;bottom:14px;font-size:9px}.intro-band{padding:21px 17px;gap:13px}.intro-band p{font-size:14px}.section{padding:75px 6%}.section-heading{margin-bottom:35px}.section-heading h2,h2{font-size:41px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.service-card{padding:19px 15px;min-height:208px}.service-card h3{font-size:18px}.service-card p{font-size:11px}.service-symbol{margin-bottom:13px}.salon-images{gap:9px}.salon-images img{height:240px}.salon-images img:nth-child(2){height:185px;margin-top:30px}.product-grid{grid-template-columns:1fr;gap:36px;max-width:420px}.product-card img{aspect-ratio:1.3}.art-lead{grid-template-columns:1fr}.art-lead-image{height:470px;min-height:0}.art-lead-text{padding:58px 7%}.art-lead-text h2{font-size:45px}.gallery-section{padding:75px 5%}.gallery{columns:2 140px;column-gap:10px}.gallery-item{margin-bottom:10px}.contact-grid{grid-template-columns:1fr;gap:12px}.contact-card{min-height:0;padding:27px 18px}.footer{flex-direction:column;align-items:flex-start}.lightbox{padding:64px 35px 82px}.lightbox-arrow{width:30px;height:38px}.lightbox-arrow.prev{left:3px}.lightbox-arrow.next{right:3px}}
@media(max-width:370px){.services-grid{grid-template-columns:1fr}.service-card{min-height:0}.lang span{display:none}.brand strong{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media(max-width:620px){.hero-photo-wrap,.hero-copy{order:initial}}

/* One reference layout for Czech and German, scaled to fit in the viewport. */
.reference-hero{display:none;position:relative;line-height:0;width:100%;overflow:hidden;background:#f7eee6}
.reference-hero>img{display:block;width:100%;height:auto}
.reference-hotspots{position:absolute;inset:0;line-height:normal}
.reference-hotspots .spot{position:absolute;display:block;z-index:2}
.reference-hotspots .spot:focus-visible{outline:3px solid #7d5421;outline-offset:2px;background:#ffffff22}
.spot-logo{left:7%;top:0;width:17%;height:14%}.spot-home{left:30.4%;top:1.3%;width:6.4%;height:11%}.spot-services{left:37.8%;top:1.3%;width:7%;height:11%}.spot-art{left:45.8%;top:1.3%;width:10%;height:11%}.spot-about{left:58%;top:1.3%;width:5.4%;height:11%}.spot-contact{left:64.8%;top:1.3%;width:8%;height:11%}.spot-book{left:78.3%;top:3%;width:16.5%;height:8%}.spot-main-button{left:17.2%;top:83.2%;width:19.6%;height:9%}
.german-overlay{display:none;position:absolute;inset:0;line-height:1.25;z-index:3;pointer-events:none}
.german-overlay a{pointer-events:auto}
.de-top{height:15.4%;position:absolute;inset:0 0 auto;background:linear-gradient(90deg,#fcf6ef 0%,#f9eee7 65%,#f6e9dd 100%);display:flex;align-items:center;justify-content:space-between;padding:0 6% 0 8%;gap:3%;color:#493a30}
.de-brand{display:flex;align-items:center;text-align:center;gap:10px;font:clamp(12px,1.45vw,21px)/1.1 Georgia,serif;white-space:nowrap}
.lotus,.de-lotus{color:#c7a05d;font-family:Georgia,serif}.lotus{font-size:clamp(26px,3vw,45px)}
.de-nav{display:flex;align-items:center;gap:clamp(10px,2vw,34px)}.de-nav a{white-space:nowrap;font-size:clamp(9px,1.1vw,15px);letter-spacing:.1em}.de-nav a:hover{color:#ac813d}
.de-book{white-space:nowrap;border:1.5px solid #b58a46;border-radius:50px;padding:clamp(8px,1vw,15px) clamp(12px,1.4vw,24px);font-size:clamp(9px,1vw,14px);letter-spacing:.08em}
.de-left{position:absolute;top:15.4%;bottom:0;left:0;width:46.2%;background:linear-gradient(90deg,#f9ece1 0%,#faf1e9 17%,#f9eee6 80%,#f6e8dc 100%);display:flex;align-items:center;flex-direction:column;text-align:center;justify-content:center;padding:2% 1% 4%;color:#534338}
.de-lotus{font-size:clamp(40px,5.7vw,78px);line-height:.95;margin-bottom:1.5%}
.de-title{font:clamp(27px,3.25vw,49px)/1.06 Georgia,serif;letter-spacing:.025em}.de-title strong{font-weight:400;color:#c49a56;font-size:1.42em}
.de-rule{width:32%;height:1px;background:#c6a16d;margin:5.8% 0}
.de-headline{font:italic clamp(20px,2.75vw,42px)/1.2 Georgia,serif}
.de-sub{font-size:clamp(12px,1.46vw,21px);line-height:1.4;margin-top:4.5%}
.de-button{background:linear-gradient(100deg,#d4af72,#a87f42);color:#fff;border-radius:50px;font-size:clamp(10px,1.22vw,18px);letter-spacing:.06em;padding:2.4% 6%;margin-top:6.2%}
@media(min-width:821px){
 .reference-hero{display:block;width:min(100%,1350px,calc(88svh * 1648 / 928));margin:0 auto}
 .hero{display:none}
 .site-header{position:absolute;top:0;left:0;right:0;z-index:60;background:transparent;border:0;box-shadow:none;backdrop-filter:none;pointer-events:none}
 .site-header .brand,.site-header .navigation,.site-header .nav-cta{display:none}
 .site-header .nav-shell{width:min(100%,1350px,calc(88svh * 1648 / 928));height:0;min-height:0;position:relative}
 .site-header .nav-actions{position:absolute;right:3.4%;top:calc(min(100vw,1350px,88svh * 1648 / 928) * .133);pointer-events:auto}
 .site-header .lang-switch{background:#fffaf3ee;box-shadow:0 2px 12px #5437192c}
 html[lang="de"] .german-overlay{display:block}
 html[lang="de"] .reference-hotspots{display:none}
}
@media(max-width:820px){.reference-hero{display:none!important}.hero{display:block}.site-header{position:sticky}}


#lightbox-caption{display:none!important}


/* Mobile hero: desktop-inspired side-by-side composition shared by CZ and DE. */
.mobile-hero-logo{display:none}
@media (max-width:820px){
  .reference-hero{display:none!important}
  .hero{display:block!important;background:#f7ede4;overflow:hidden}
  .hero-inner{display:grid!important;grid-template-columns:52% 48%!important;max-width:none;min-height:0!important;height:clamp(410px,105vw,570px)!important;width:100%;margin:0 auto}
  .hero-copy{order:initial!important;grid-column:1;grid-row:1;min-width:0;align-items:center!important;justify-content:center!important;text-align:center!important;padding:19px 9px 26px 12px!important;background:linear-gradient(100deg,#f9efe6,#fff7ee 85%,#f1e4d8);z-index:2}
  .hero-photo-wrap{order:initial!important;grid-column:2;grid-row:1;min-width:0;min-height:0!important;max-height:none!important;height:100%!important;position:relative}
  .hero-photo{object-position:51% center!important;filter:saturate(.99)}
  .hero-photo-bg{inset:0;border-radius:0;background:#eee0d4}
  .mobile-hero-logo{display:block;color:#cca566;width:73px;height:63px;margin:0 auto 3px}
  .mobile-hero-logo svg{width:100%;height:100%}
  .hero .eyebrow,.hero .hero-foot,.hero .subtle-link,.hero .photo-label{display:none!important}
  .hero .hero-mini{font:400 clamp(13px,3.5vw,22px)/1.2 Georgia,serif;letter-spacing:.015em;margin:0 0 18px;color:#574438;max-width:100%}
  .hero .hero-mini em{display:block;font:400 clamp(28px,7.5vw,47px)/1.05 Georgia,serif;letter-spacing:.02em;color:#c6a060;margin-top:2px}
  .hero h1{font:italic 400 clamp(22px,5.6vw,36px)/1.17 Georgia,serif!important;letter-spacing:-.028em;margin:0 0 13px!important;color:#514036;max-width:100%;overflow-wrap:normal;text-wrap:balance}
  .hero h1 i{color:#b79054}
  .hero-sub{font-size:clamp(11px,2.8vw,15px)!important;line-height:1.45!important;max-width:100%;margin:0!important;color:#58473b}
  .hero-buttons{display:flex!important;margin:19px 0 0!important;justify-content:center;gap:0!important;flex-wrap:nowrap}
  .hero-buttons .btn{padding:11px 13px!important;font-size:clamp(9px,2.2vw,12px)!important;white-space:nowrap;letter-spacing:.035em}
  .scroll-cue{display:none!important}
}
@media (max-width:390px){
 .hero-inner{height:440px!important;grid-template-columns:54% 46%!important}
 .hero-copy{padding:12px 8px 22px!important}
 .mobile-hero-logo{width:57px;height:47px;margin-bottom:6px}
 .hero .hero-mini{font-size:12px;margin-bottom:16px}
 .hero .hero-mini em{font-size:27px}
 .hero h1{font-size:21px!important}
 .hero-sub{font-size:11px!important}
 .hero-buttons .btn{font-size:9px!important;padding:10px 10px!important}
}
@media (max-width:340px){
 .hero-inner{height:425px!important;grid-template-columns:56% 44%!important}
 .hero h1{font-size:19px!important}
 .hero .hero-mini em{font-size:24px}
}

/* Price section: same responsive structure in Czech and German */
.pricing-section{background:#fcf8f3;text-align:center}.price-tabs{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:0 auto 28px;max-width:950px}.price-tab{border:1px solid #cdb594;border-radius:30px;background:transparent;color:#5e4a38;padding:11px 19px;cursor:pointer;font:500 13px/1.3 inherit}.price-tab.active{background:#b28a51;color:#fff;border-color:#b28a51}.price-rows{max-width:850px;margin:0 auto 22px;background:#fffdf9;border:1px solid #eaded0;border-radius:13px;overflow:hidden;text-align:left}.price-row{display:flex;align-items:baseline;justify-content:space-between;gap:22px;padding:13px 19px;border-bottom:1px solid #f0e7dc;color:#514237}.price-row:last-child{border:0}.price-row span{flex:1}.price-row strong{white-space:nowrap;font-weight:600;color:#997342}.price-note{color:#736657;font-size:13px;max-width:760px;margin:18px auto 22px;line-height:1.6}.price-call{display:inline-flex}@media(max-width:620px){.price-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.price-tab{font-size:12px;padding:10px 7px}.price-row{padding:12px 13px;font-size:13px;gap:8px}.price-row strong{font-size:13px}}
