/* Luxe layer: conversion + polish for the public site. Loaded last. */
.lx-progress{position:fixed;left:0;top:0;height:3px;width:100%;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,#b98b45,#e3c48c);z-index:9999;pointer-events:none}
body:not(.admin-page) .site-header{transition:box-shadow .3s,background .3s;backdrop-filter:saturate(1.4) blur(14px);background:rgba(255,253,249,.88)}
body:not(.admin-page) .site-header.is-stuck{box-shadow:0 10px 34px rgba(25,22,19,.1)}
.lx-reveal{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.lx-reveal.is-in{opacity:1;transform:none}
/* quick book */
.lx-quick{position:relative;z-index:6;margin-top:-46px}
.lx-quick__form{display:grid;grid-template-columns:1.1fr 1.4fr 1.1fr auto;gap:18px;align-items:end;padding:22px 26px;background:var(--jb-paper,#fffdf9);border:1px solid var(--jb-line,rgba(25,22,19,.12));border-radius:22px;box-shadow:0 30px 70px rgba(25,22,19,.18)}
.lx-quick__intro strong{display:block;font:500 22px/1.1 var(--jb-serif,'Playfair Display',serif);color:var(--jb-ink,#191613)}
.lx-quick__intro span{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--jb-gold-dk,#8f6a2e)}
.lx-quick label span{display:block;margin-bottom:6px;font:700 10px var(--jb-sans,sans-serif);letter-spacing:.16em;text-transform:uppercase;color:var(--jb-muted,#6c655c)}
.lx-quick select,.lx-quick input{width:100%;height:50px;padding:0 14px;border:1px solid var(--jb-line,rgba(25,22,19,.18));border-radius:12px;background:#fff;font:500 15px var(--jb-sans,sans-serif);color:#191613}
.lx-quick select:focus,.lx-quick input:focus{outline:0;border-color:#b98b45;box-shadow:0 0 0 4px rgba(185,139,69,.18)}
/* ribbon */
.lx-ribbon{overflow:hidden;margin-top:34px;padding:16px 0;background:var(--jb-ink,#191613);color:#f1e3c8}
.lx-ribbon__track{display:flex;gap:34px;width:max-content;animation:lxmq 38s linear infinite;font:500 clamp(18px,2vw,26px) var(--jb-serif,'Playfair Display',serif);font-style:italic;white-space:nowrap}
.lx-ribbon i{color:#b98b45;font-style:normal}
@keyframes lxmq{to{transform:translateX(-50%)}}
/* cards */
.jb-service-card,.jb-work__item,.jb-team__card{transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s}
.jb-service-card:hover,.jb-team__card:hover{transform:translateY(-8px);box-shadow:0 30px 60px rgba(25,22,19,.16)}
.jb-service-card img,.jb-work__item img{transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.jb-service-card:hover img,.jb-work__item:hover img{transform:scale(1.07)}
/* footer credit */
.footer-bottom{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;justify-content:space-between}
.made-by{font-size:13px;letter-spacing:.04em;opacity:.9}
.made-by a{color:inherit;text-decoration:none;border-bottom:1px solid #b98b45;padding-bottom:1px}
.made-by strong{color:#e3c48c;letter-spacing:.1em;text-transform:uppercase;font-size:12px}
.made-by a:hover strong{color:#fff}
@media(max-width:900px){.lx-quick__form{grid-template-columns:1fr 1fr}.lx-quick__intro,.lx-quick__form button{grid-column:1/-1}}
@media(max-width:560px){.lx-quick{margin-top:-26px}.lx-quick__form{grid-template-columns:1fr;padding:18px}}
@media(prefers-reduced-motion:reduce){.lx-ribbon__track{animation:none}.lx-reveal{opacity:1;transform:none}}
