/* fonts */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: optional;
  src: url(fonts/cyrillic-034e3f1d.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: optional;
  src: url(fonts/latin-25e30982.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: optional;
  src: url(fonts/cyrillic-034e3f1d.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: optional;
  src: url(fonts/latin-25e30982.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: optional;
  src: url(fonts/cyrillic-4f4a8253.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: optional;
  src: url(fonts/latin-2fed1d1b.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: optional;
  src: url(fonts/cyrillic-4f4a8253.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: optional;
  src: url(fonts/latin-2fed1d1b.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: optional;
  src: url(fonts/cyrillic-4f4a8253.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: optional;
  src: url(fonts/latin-2fed1d1b.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 300;
  font-display: optional;
  src: url(fonts/cyrillic-cdf0a3bd.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 300;
  font-display: optional;
  src: url(fonts/latin-35841fe7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 400;
  font-display: optional;
  src: url(fonts/cyrillic-cdf0a3bd.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 400;
  font-display: optional;
  src: url(fonts/latin-35841fe7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 500;
  font-display: optional;
  src: url(fonts/cyrillic-cdf0a3bd.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 500;
  font-display: optional;
  src: url(fonts/latin-35841fe7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* webera layout: lux (own markup, see view.php). Design colours are fixed; the accent comes from the site (--orange) and the page's own light/dark switch. */
html[data-layout=lux]{
  --lx-bg:#0d0b0c;--lx-bg2:#151213;--lx-ink:#efe7dc;--lx-mut:#b0a79c;--lx-line:rgba(239,231,220,.16);
  --lx-acc:var(--orange);--lx-acc-t:var(--orange);--lx-on:var(--on-orange,#111);
  --lx-serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  background:var(--lx-bg)
}
html[data-layout=lux][data-theme=light]{--lx-bg:#faf6ef;--lx-bg2:#f0e8da;--lx-ink:#1d1812;--lx-mut:#5f564a;--lx-line:rgba(29,24,18,.16);--lx-acc-t:var(--orange-ink,var(--orange))}

html[data-layout=lux] body{background:var(--lx-bg);color:var(--lx-ink)}

/* serif voice, compact sizes */
html[data-layout=lux] :is(.hero-title,.section-title,.nav-logo-text,.lx-num b,.hero-stat-num,.lx-no,.lx-steps i,.lx-badge b,.lx-quotes p,.lx-li-body h3,.lx-feat h3,.lx-steps h3,.footer-col-title,.cta-title){font-family:var(--lx-serif);font-weight:500;letter-spacing:0}
html[data-layout=lux] .nav-logo-text{font-size:26px;letter-spacing:.06em;text-transform:uppercase}

/* navigation: logo in the middle, links on both sides */
html[data-layout=lux] nav#navbar{justify-content:center}
html[data-layout=lux] .nav-links{left:32px;right:32px;justify-content:flex-start;gap:26px;pointer-events:none}
html[data-layout=lux] .nav-links>li{pointer-events:auto}
html[data-layout=lux] .nav-links>li:nth-child(5){margin-left:auto}
html[data-layout=lux] .nav-links a{font-size:11px;letter-spacing:.24em;text-transform:uppercase}
html[data-layout=lux] .nav-cta{border-radius:0;padding:12px 22px;font-size:11px!important;letter-spacing:.2em}
html[data-layout=lux] nav#navbar .nav-logo{position:absolute;left:50%;transform:translateX(-50%)}
html[data-layout=lux] nav#navbar.scrolled{background:color-mix(in srgb,var(--lx-bg) 92%,transparent);box-shadow:0 1px 0 var(--lx-line)}
@media(max-width:1180px){
 html[data-layout=lux] .nav-links{left:auto;right:0}
 html[data-layout=lux] .nav-links>li:nth-child(5){margin-left:0}
 html[data-layout=lux] nav#navbar{justify-content:space-between}
 html[data-layout=lux] nav#navbar .nav-logo{position:static;transform:none}
}

/* buttons */
html[data-layout=lux] :is(.btn-primary,.btn-secondary,.lx-btn,.lx-more){border-radius:0;padding:15px 34px;font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;text-decoration:none;display:inline-flex;align-items:center;gap:8px;min-height:46px}
html[data-layout=lux] .btn-primary{background:var(--lx-acc);color:var(--lx-on);border:1px solid var(--lx-acc)}
html[data-layout=lux] .btn-secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.6)}
html[data-layout=lux] .lx-btn{background:transparent;color:var(--lx-ink);border:1px solid var(--lx-line);cursor:pointer;font-family:inherit}
html[data-layout=lux] .lx-btn:hover{border-color:var(--lx-acc);color:var(--lx-acc-t)}

/* hero */
html[data-layout=lux] #hero.lx-hero{height:auto;min-height:100vh;min-height:100svh;justify-content:center;align-items:center;flex-direction:column;text-align:center;padding:130px 20px 150px}
html[data-layout=lux] .lx-frame{margin:0 auto;max-width:780px;width:100%;padding:48px 42px;border:1px solid color-mix(in srgb,var(--lx-acc) 45%,transparent);background:rgba(10,8,9,.5);backdrop-filter:blur(3px);position:relative;z-index:2;color:#fff}
html[data-layout=lux] .lx-frame::before,html[data-layout=lux] .lx-frame::after{content:"";position:absolute;left:50%;width:12px;height:12px;margin-left:-6px;background:var(--lx-acc);transform:rotate(45deg)}
html[data-layout=lux] .lx-frame::before{top:-7px}
html[data-layout=lux] .lx-frame::after{bottom:-7px}
html[data-layout=lux] .lx-hero .hero-badge{border-radius:0;letter-spacing:.2em;text-transform:uppercase;font-size:11px;margin-bottom:18px;background:transparent;border:0;color:var(--lx-acc);padding:0}
html[data-layout=lux] .lx-hero .hero-badge::before{display:none}
html[data-layout=lux] .lx-hero .hero-title{font-size:clamp(32px,4.2vw,50px);line-height:1.08;margin-bottom:14px}
html[data-layout=lux] .lx-hero .hero-title span{display:block}
html[data-layout=lux] .lx-hero .hero-title .line-orange{color:var(--lx-acc);font-style:italic;font-weight:400}
html[data-layout=lux] .lx-hero .hero-subtitle{margin:0 auto 26px;font-size:16px;color:rgba(255,255,255,.82);max-width:540px}
html[data-layout=lux] .lx-hero .hero-actions{justify-content:center}
html[data-layout=lux] .lx-hstats{position:absolute;left:0;right:0;bottom:26px;display:flex;justify-content:center;gap:44px;flex-wrap:wrap;padding:0 16px;z-index:2}
html[data-layout=lux] .lx-hstats .hero-stat{text-align:center;color:#fff}
html[data-layout=lux] .lx-hstats .hero-stat-num{font-size:30px}
html[data-layout=lux] .lx-hstats .hero-stat-label{font-size:11px;letter-spacing:.18em;text-transform:uppercase;opacity:.8}

/* section scaffolding */
html[data-layout=lux] :is(#services,#why-us,#process,#gallery,#testimonials,#stats,#partners){background:var(--lx-bg);color:var(--lx-ink)}
html[data-layout=lux] :is(#why-us,#gallery){background:var(--lx-bg2)}
html[data-layout=lux] .lx-sec{padding:72px 0}
html[data-layout=lux] .lx-wrap{max-width:1180px;margin:0 auto;padding:0 28px}
html[data-layout=lux] .lx-head{text-align:center;margin-bottom:44px;display:block}
html[data-layout=lux] .lx-head .section-label,html[data-layout=lux] #why-us .section-label{color:var(--lx-acc-t);font-size:11px;letter-spacing:.38em;text-transform:uppercase}
html[data-layout=lux] .section-title{color:var(--lx-ink);font-size:clamp(28px,3vw,38px);line-height:1.12;margin-top:10px}
html[data-layout=lux] .lx-orn{width:56px;height:1px;background:var(--lx-acc);margin:20px auto 0;position:relative}
html[data-layout=lux] .lx-orn::after{content:"";position:absolute;left:50%;top:-4px;width:8px;height:8px;margin-left:-4px;background:var(--lx-bg);border:1px solid var(--lx-acc);transform:rotate(45deg)}
html[data-layout=lux] #gallery .lx-orn::after{background:var(--lx-bg2)}

/* services: numbered list with a changing arch picture */
html[data-layout=lux] .lx-svc{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:start}
html[data-layout=lux] .lx-list{list-style:none;margin:0;padding:0}
html[data-layout=lux] .lx-list li{display:grid;grid-template-columns:64px 1fr;gap:10px;padding:30px 0;border-top:1px solid var(--lx-line);cursor:pointer;transition:padding .3s}
html[data-layout=lux] .lx-list li:last-child{border-bottom:1px solid var(--lx-line)}
html[data-layout=lux] .lx-list li:hover,html[data-layout=lux] .lx-list li.on{padding-left:12px}
html[data-layout=lux] .lx-no{font-size:24px;font-style:italic;color:var(--lx-acc-t)}
html[data-layout=lux] .lx-li-body h3{font-size:28px;line-height:1.1;color:var(--lx-ink)}
html[data-layout=lux] .lx-list li.on h3{color:var(--lx-acc-t)}
html[data-layout=lux] .lx-li-body p{color:var(--lx-mut);margin:8px 0 0;max-width:460px;font-size:15px;line-height:1.65}
html[data-layout=lux] .lx-meta{display:flex;gap:16px;margin-top:10px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--lx-acc-t)}
html[data-layout=lux] .lx-more{padding:10px 0;margin-top:8px;color:var(--lx-acc-t);border:0;background:none;min-height:44px}
html[data-layout=lux] .lx-thumb{display:none}
html[data-layout=lux] .lx-pic{position:sticky;top:100px;aspect-ratio:4/5;border-radius:var(--wl-lux,300px 300px 0 0);border:1px solid var(--lx-line);padding:10px}
html[data-layout=lux] .lx-pic div{width:100%;height:100%;border-radius:var(--wl-lux-in,290px 290px 0 0);background-size:cover;background-position:center;transition:opacity .25s}

/* about */
html[data-layout=lux] .lx-about{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}
html[data-layout=lux] .lx-arch{aspect-ratio:3/4;border-radius:var(--wl-lux,300px 300px 0 0);position:relative;overflow:visible}
html[data-layout=lux] .lx-arch>img,html[data-layout=lux] .lx-arch>video{width:100%;height:100%;object-fit:cover;border-radius:var(--wl-lux,300px 300px 0 0);display:block}
html[data-layout=lux] .lx-badge{position:absolute;right:-26px;bottom:48px;background:var(--lx-acc);color:var(--lx-on);padding:18px 22px;text-align:center}
html[data-layout=lux] .lx-badge b{display:block;font-size:34px;line-height:1}
html[data-layout=lux] .lx-badge small{display:block;font-size:10px;letter-spacing:.22em;text-transform:uppercase;margin-top:6px}
html[data-layout=lux] .lx-lead{color:var(--lx-mut);font-size:17px;line-height:1.7;margin:16px 0 28px}
html[data-layout=lux] .lx-feat{display:grid;gap:22px}
html[data-layout=lux] .lx-feat>div{padding-left:24px;border-left:1px solid var(--lx-acc)}
html[data-layout=lux] .lx-feat h3{font-size:22px;color:var(--lx-ink)}
html[data-layout=lux] .lx-feat p{color:var(--lx-mut);font-size:15px;margin-top:2px}

/* numbers */
html[data-layout=lux] #stats.lx-stats{padding:56px 0;border-block:1px solid var(--lx-line)}
html[data-layout=lux] .lx-nums{display:grid;grid-template-columns:repeat(4,1fr)}
html[data-layout=lux] .lx-num{text-align:center;padding:6px 10px;border-right:1px solid var(--lx-line)}
html[data-layout=lux] .lx-num:last-child{border:0}
html[data-layout=lux] .lx-num b{display:block;font-size:40px;font-weight:400;color:var(--lx-acc-t);line-height:1.1}
html[data-layout=lux] .lx-num>span{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--lx-mut)}

/* steps */
html[data-layout=lux] .lx-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;position:relative}
html[data-layout=lux] .lx-steps::before{content:"";position:absolute;top:32px;left:12%;right:12%;height:1px;background:var(--lx-line)}
html[data-layout=lux] .lx-steps>div{text-align:center;position:relative}
html[data-layout=lux] .lx-steps i{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 20px;border-radius:50%;border:1px solid var(--lx-acc);background:var(--lx-bg);color:var(--lx-acc-t);font-size:26px;font-style:normal}
html[data-layout=lux] .lx-steps h3{font-size:22px;margin-bottom:6px;color:var(--lx-ink)}
html[data-layout=lux] .lx-steps p{color:var(--lx-mut);font-size:15px}

/* gallery */
html[data-layout=lux] .lx-gal{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:200px;gap:12px}
html[data-layout=lux] .lx-gal .gallery-item{position:relative;overflow:hidden;border-radius:0;cursor:zoom-in;background:var(--lx-bg2);flex:none;height:auto;min-height:0}
html[data-layout=lux] .lx-gal .gallery-item img,html[data-layout=lux] .lx-gal .gallery-item video{width:100%;height:100%;object-fit:cover;display:block;position:relative;transition:transform .8s}
html[data-layout=lux] .lx-gal .gallery-item:hover img{transform:scale(1.05)}
html[data-layout=lux] .lx-gal .gallery-blur{display:none}
html[data-layout=lux] .lx-gal .gallery-item:nth-child(1){grid-column:span 3;grid-row:span 2}
html[data-layout=lux] .lx-gal .gallery-item:nth-child(2){grid-column:span 3}
html[data-layout=lux] .lx-gal .gallery-item:nth-child(3){grid-column:span 2}
html[data-layout=lux] .lx-gal .gallery-item:nth-child(4){grid-column:span 1}
html[data-layout=lux] .lx-gal .gallery-item:nth-child(5){grid-column:span 3}

/* brands */
html[data-layout=lux] .lx-brands{padding:26px 0;overflow:hidden;border-bottom:1px solid var(--lx-line)}
html[data-layout=lux] .lx-brands .partner-logo{color:var(--lx-mut);font-family:var(--lx-serif);letter-spacing:.3em}

/* reviews */
html[data-layout=lux] .lx-quotes{max-width:820px;margin:0 auto;text-align:center;min-height:200px}
html[data-layout=lux] .lx-quotes blockquote{display:none;margin:0}
html[data-layout=lux] .lx-quotes blockquote.on{display:block;animation:lxf .6s}
html[data-layout=lux] .lx-quotes p{font-size:clamp(20px,2.4vw,28px);font-style:italic;line-height:1.4;color:var(--lx-ink)}
html[data-layout=lux] .lx-quotes cite{display:block;margin-top:22px;font-style:normal;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--lx-acc-t)}
html[data-layout=lux] .lx-dots{display:flex;justify-content:center;margin-top:20px}
html[data-layout=lux] .lx-dots button{width:44px;height:44px;border:0;background:none;cursor:pointer;position:relative}
html[data-layout=lux] .lx-dots button::after{content:"";position:absolute;left:50%;top:50%;width:9px;height:9px;margin:-5px 0 0 -5px;transform:rotate(45deg);border:1px solid var(--lx-acc)}
html[data-layout=lux] .lx-dots button.on::after{background:var(--lx-acc)}
html[data-layout=lux] .lx-revbtns{display:flex;gap:12px;justify-content:center;margin-top:20px;flex-wrap:wrap}
@keyframes lxf{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* the page's own booking, call-to-action and footer: same square look */
html[data-layout=lux] #booking{background:var(--lx-bg)}
html[data-layout=lux] :is(.bk-input,.form-input,.form-select,.form-textarea,select.bk-input){border-radius:0}
html[data-layout=lux] :is(.bk-submit,.bk-btn,button.form-submit,.btn-white,.btn-add-review){border-radius:0;letter-spacing:.18em;text-transform:uppercase;font-size:11px}
html[data-layout=lux] #cta-banner .cta-title{font-size:clamp(26px,3vw,36px)}
html[data-layout=lux] footer#contact .footer-col-title{letter-spacing:.2em;text-transform:uppercase;font-size:12px}

/* tablets and phones */
@media(max-width:900px){
 html[data-layout=lux] .lx-sec{padding:56px 0}
 html[data-layout=lux] .lx-wrap{padding:0 20px}
 html[data-layout=lux] .lx-svc,html[data-layout=lux] .lx-about{grid-template-columns:1fr;gap:36px}
 html[data-layout=lux] .lx-pic{display:none}
 html[data-layout=lux] .lx-thumb{display:block;grid-column:2;width:100%;max-width:340px;aspect-ratio:16/10;object-fit:cover;margin-top:8px}
 html[data-layout=lux] .lx-list li{padding:24px 0}
 html[data-layout=lux] .lx-li-body h3{font-size:24px}
 html[data-layout=lux] .lx-arch{max-width:360px;margin:0 auto}
 html[data-layout=lux] .lx-badge{right:-8px}
 html[data-layout=lux] .lx-nums{grid-template-columns:1fr 1fr;gap:26px 0}
 html[data-layout=lux] .lx-num:nth-child(2){border:0}
 html[data-layout=lux] .lx-steps{grid-template-columns:1fr 1fr;gap:34px 18px}
 html[data-layout=lux] .lx-steps::before{display:none}
 html[data-layout=lux] .lx-gal{grid-template-columns:1fr 1fr;grid-auto-rows:170px}
 html[data-layout=lux] .lx-gal .gallery-item:nth-child(n){grid-column:span 1;grid-row:span 1}
 html[data-layout=lux] .lx-gal .gallery-item:nth-child(1){grid-column:span 2;grid-row:span 2}
 html[data-layout=lux] #hero.lx-hero{padding:110px 14px 130px}
 html[data-layout=lux] .lx-frame{padding:32px 18px}
 html[data-layout=lux] .lx-hstats{gap:22px;bottom:18px}
}
@media(max-width:480px){
 html[data-layout=lux] .lx-steps{grid-template-columns:1fr}
 html[data-layout=lux] .lx-list li{grid-template-columns:44px 1fr}
 html[data-layout=lux] .lx-hero .hero-title{font-size:30px}
}

/* one tidy gallery for every design: equal pictures in a row with arrows, swipe on phones */
html[data-layout=lux] .wlc{position:relative}
html[data-layout=lux] .wlc-t{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 2px 8px;-webkit-overflow-scrolling:touch}
html[data-layout=lux] .wlc-t::-webkit-scrollbar{display:none}
html[data-layout=lux] .wlc .gallery-item{flex:0 0 clamp(240px,31%,420px);height:auto;aspect-ratio:4/3;position:relative;overflow:hidden;border-radius:18px;scroll-snap-align:start;cursor:zoom-in;min-height:0;grid-column:auto;grid-row:auto;margin:0}
html[data-layout=lux] .wlc .gallery-item img,html[data-layout=lux] .wlc .gallery-item video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
html[data-layout=lux] .wlc .gallery-item:hover img{transform:scale(1.04)}
html[data-layout=lux] .wlc .gallery-blur{display:none}
html[data-layout=lux] .wlc-b{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(10,10,14,.6);backdrop-filter:blur(8px);color:#fff;font-size:1.6rem;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0}
html[data-layout=lux] .wlc-b:hover{background:rgba(10,10,14,.85)}
html[data-layout=lux] .wlc-p{left:8px}
html[data-layout=lux] .wlc-n{right:8px}
@media(max-width:700px){
 html[data-layout=lux] .wlc .gallery-item{flex-basis:78%}
 html[data-layout=lux] .wlc-b{width:40px;height:40px}
}

/* glass: booking, cards with forms */
html[data-layout=lux] :is(.bk-cal-box,.bk-panel){background:rgba(127,127,127,.10)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(127,127,127,.28)!important;box-shadow:0 10px 40px rgba(0,0,0,.12)!important}
html[data-layout=lux] #booking :is(input,select,textarea){background:rgba(127,127,127,.10)!important;border:1px solid rgba(127,127,127,.30)!important}
html[data-layout=lux] .wl :is(.fcard,aside.bk,.panelwrap){background:rgba(127,127,127,.12)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(127,127,127,.28)!important}
html[data-layout=lux] .wl :is(header,.top):not(.hero .top){z-index:1000}
html[data-layout=lux] .wl header,html[data-layout=lux] .wl nav.nav{z-index:1000}

html[data-layout=lux][data-theme] body{background:var(--lx-bg);color:var(--lx-ink)}
html[data-layout=lux][data-theme]{background:var(--lx-bg)}
html[data-layout=lux] nav#navbar .nav-logo-text span{color:var(--lx-acc-t)}
html[data-layout=lux] nav#navbar ~ .nav-links a.nav-cta{background:transparent!important;color:var(--lx-acc-t)!important;border:0!important;box-shadow:none!important}
html[data-layout=lux] nav#navbar:not(.scrolled) .nav-logo-text span{color:color-mix(in srgb,var(--orange) 55%,#fff)}
html[data-layout=lux] nav#navbar:not(.scrolled) ~ .nav-links a.nav-cta{color:#fff!important}

html[data-layout=lux] .wl{position:relative;z-index:1}

/* footer in the light version: light, not black */
html[data-layout=lux][data-theme=light] footer#contact{background:color-mix(in srgb,var(--lx-ink,#111) 6%,var(--lx-bg,#fff));color:var(--lx-ink,#111);border-top:1px solid color-mix(in srgb,var(--lx-ink,#111) 14%,transparent)}
html[data-layout=lux][data-theme=light] footer#contact :is(p,a,li,span,small,button,div,.footer-bottom,.footer-bottom *,.footer-brand p){color:color-mix(in srgb,var(--lx-ink,#111) 78%,transparent) !important}
html[data-layout=lux][data-theme=light] footer#contact :is(.footer-col-title,h3,h4,.nav-logo-text){color:var(--lx-ink,#111) !important}
html[data-layout=lux][data-theme=light] footer#contact :is(.footer-top,.footer-bottom){border-color:color-mix(in srgb,var(--lx-ink,#111) 14%,transparent)}
html[data-layout=lux][data-theme=light] footer#contact :is(.footer-links a:hover,a:hover,button:hover){color:var(--orange-ink,var(--orange)) !important}
html[data-layout=lux][data-theme=light] footer#contact .footer-socials a{border-color:color-mix(in srgb,var(--lx-ink,#111) 25%,transparent);color:var(--lx-ink,#111)}
html[data-layout=lux][data-theme=light] footer#contact .footer-socials a svg{stroke:currentColor}
html[data-layout=lux] .wl{background:transparent}

/* the owner's videos inside picture boxes */
html[data-layout=lux] .wl .wl-v{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;border-radius:inherit;pointer-events:none;display:block}
html[data-layout=lux] :where(.wl *):has(> .wl-v){position:relative;overflow:hidden;isolation:isolate}

/* a logo picture must be clearly visible on every design and theme, without a plate behind it: its lightness is measured in the browser (data-wl-lg)
   and the picture itself is flipped (same colours, light instead of dark) when it would vanish into the background */
html[data-layout=lux] img[data-wl-lg=box]{border-radius:10px}
/* the small decorative mark next to the name is not drawn when the business has a real logo picture */
html[data-layout=lux] .wl .logo:has(img)>i{display:none}
/* the shop teaser of alomobile sits outside the design: its small notes must stay readable on the design's background */
html[data-layout=lux][data-theme=dark] .shopx-perks span{color:rgba(255,255,255,.9);background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.24)}

/* the design must not be ONE stacking layer: the page's own sections after it (booking, call-to-action, footer) have z-index 1 too and were painted over its fixed menu */
html[data-layout=lux] .wl{z-index:auto}


/* real Google reviews: rating line, stars and G logo on every review, and the two Google buttons */
html[data-layout=lux] .wl-gsum{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 22px}
html[data-layout=lux] .wl-gn{font-size:2.3rem;font-weight:800;line-height:1}
html[data-layout=lux] .wl-gs{color:#fbbc04;letter-spacing:2px;font-size:1.1rem;line-height:1}
html[data-layout=lux] .wl-gt{opacity:.8;font-size:.95rem}
html[data-layout=lux] .wl-gh{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}
html[data-layout=lux] .wl-gi{flex:0 0 auto;width:22px;height:22px}
html[data-layout=lux] .wl-gb{margin:4px 3px}
html[data-layout=lux] :is(.wl-gsum,.wl-gh){justify-content:center}
