/* Shared header, mobile menu, chat widget. Extracted from the home page so every page matches. */
.ann{background:linear-gradient(90deg,var(--crdk),var(--cr) 40%,#A00010 55%,var(--cr) 70%,var(--crdk));
  height:40px;overflow:hidden;display:flex;align-items:center;
  box-shadow:0 3px 16px rgba(139,0,0,.4);position:relative;z-index:300}
.ann::before,.ann::after{content:'';position:absolute;top:0;bottom:0;width:100px;z-index:2;pointer-events:none}
.ann::before{left:0;background:linear-gradient(90deg,var(--crdk),transparent)}
.ann::after{right:0;background:linear-gradient(-90deg,var(--crdk),transparent)}
.ann-track{display:flex;animation:marquee 32s linear infinite;white-space:nowrap}
.ann-item{font-size:10px;font-weight:700;letter-spacing:.25em;text-transform:uppercase;
  color:#fff;padding:0 56px;display:flex;align-items:center;gap:14px}
.ann-item::after{content:'◆';color:rgba(255,255,255,.4);font-size:7px}
.nav{position:fixed;top:40px;left:0;right:0;z-index:299;padding:0 56px;
  display:flex;align-items:center;gap:28px;height:68px;
  background:rgba(255,255,255,.06);
  backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);
  border-bottom:1px solid rgba(255,255,255,.14);
  transition:top .4s var(--ease),background .4s,box-shadow .4s,border-color .4s}
.nav.solid{
  top:0;
  background:rgba(255,255,255,.95);
  backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);
  box-shadow:0 1px 0 rgba(139,0,0,.07),0 4px 20px rgba(0,0,0,.07);
  border-bottom:1px solid rgba(184,150,46,.18);
}
.nav.solid::before{
  content:'';position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,transparent 0%,var(--cr) 30%,var(--crdk) 70%,transparent 100%);
}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}
.logo-mark{width:40px;height:40px;border-radius:8px;
  background:linear-gradient(135deg,var(--cr),var(--crdk));
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:700;
  box-shadow:0 4px 14px rgba(139,0,0,.35);
  transition:transform .35s var(--spring),box-shadow .3s}
.nav-logo:hover .logo-mark{transform:scale(1.07);box-shadow:0 8px 24px rgba(139,0,0,.5)}
.logo-text{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:600;
  color:#fff;transition:color .35s}
.nav.solid .logo-text{color:var(--cr)}
.nav-links{display:flex;list-style:none;gap:0;flex:1}
.nav-links a{
  text-decoration:none;font-size:10.5px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;padding:10px 16px;
  color:rgba(255,255,255,.88);transition:color .25s;position:relative;
}
.nav-links a::after{
  content:'';position:absolute;bottom:6px;left:16px;right:16px;
  height:1.5px;background:var(--cr);
  transform:scaleX(0);transform-origin:left;
  transition:transform .3s cubic-bezier(.22,1,.36,1);
}
.nav-links a:hover::after,.nav-links a.active::after{transform:scaleX(1)}
.nav-links a:hover{color:#fff}
.nav.solid .nav-links a{color:rgba(0,0,0,.45);font-weight:700}
.nav.solid .nav-links a:hover{color:var(--cr)}
.nav.solid .nav-links a.active{color:var(--cr)}
.nav-search{display:flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.12);backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.2);border-radius:24px;padding:8px 16px;transition:all .3s}
.nav.solid .nav-search{
  background:rgba(255,255,255,.7);
  border:1px solid rgba(139,0,0,.1);
  box-shadow:inset 0 1px 3px rgba(0,0,0,.04);
}
.nav.solid .nav-search:focus-within{border-color:rgba(139,0,0,.3);background:#fff}
.nav-search input{border:none;outline:none;background:transparent;font-size:11.5px;color:#fff;width:120px}
.nav.solid .nav-search input{color:var(--ink)}
.nav-search input::placeholder{color:rgba(255,255,255,.45)}
.nav.solid .nav-search input::placeholder{color:#bbb}
.nav-search svg{flex-shrink:0;color:rgba(255,255,255,.55)}
.nav.solid .nav-search svg{color:rgba(139,0,0,.4)}
.btn-nav{
  background:linear-gradient(135deg,var(--cr),var(--crdk));
  color:#fff;border:none;padding:13px 26px;border-radius:3px;
  font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  cursor:pointer;text-decoration:none;display:inline-flex;white-space:nowrap;
  position:relative;overflow:hidden;
  box-shadow:0 4px 18px rgba(139,0,0,.38);
  transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;
}
.btn-nav::before{
  content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);
  transition:left .5s;
}
.btn-nav:hover::before{left:100%}
.btn-nav:hover{transform:translateY(-2px);box-shadow:0 10px 32px rgba(139,0,0,.52)}
#zc-panel *,#zc-btn,#zc-panel input,#zc-panel textarea,#zc-panel button{cursor:auto}
#zc-btn{cursor:pointer}
#zc-send,#zc-x{cursor:pointer}
#zc-inp{cursor:text}
.mob-btn{
  display:none;flex-direction:column;justify-content:center;gap:6px;
  width:44px;height:44px;background:transparent;border:none;
  position:relative;z-index:9002;flex-shrink:0;cursor:pointer;padding:10px;
}
.mob-btn span{
  display:block;height:1.5px;border-radius:2px;
  background:#fff;transition:all .4s cubic-bezier(.22,1,.36,1);transform-origin:center;
}
.mob-btn span:nth-child(1){width:22px}
.mob-btn span:nth-child(2){width:14px;margin-left:auto}
.mob-btn span:nth-child(3){width:18px}
.nav.solid .mob-btn span{background:var(--ink)}
.mob-btn.open span:nth-child(1){width:20px;transform:translateY(7.5px) rotate(45deg)}
.mob-btn.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.mob-btn.open span:nth-child(3){width:20px;transform:translateY(-7.5px) rotate(-45deg)}
.mob-btn.open span,.nav.solid .mob-btn.open span{background:var(--ink)}
.mob-overlay{
  position:fixed;inset:0;z-index:9001;
  background:linear-gradient(160deg,#0A0404 0%,#120606 60%,#180808 100%);
  display:flex;flex-direction:column;
  padding:0;overflow:hidden;
  opacity:0;visibility:hidden;
  transition:opacity .5s cubic-bezier(.22,1,.36,1),visibility .5s;
  pointer-events:none;
}
.mob-overlay::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.012) 0,rgba(255,255,255,.012) 1px,transparent 1px,transparent 20px);
}
.mob-overlay::after{
  content:'';position:absolute;bottom:-80px;left:-60px;
  width:360px;height:360px;border-radius:50%;
  background:radial-gradient(circle,rgba(139,0,0,.22),transparent 65%);
  pointer-events:none;
}
.mob-overlay.open{opacity:1;visibility:visible;pointer-events:all}
.mob-overlay-top{
  display:flex;align-items:center;justify-content:space-between;
  padding:18px 24px;flex-shrink:0;position:relative;z-index:2;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.mob-close{
  position:static;z-index:9003;
  width:40px;height:40px;border-radius:50%;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;font-size:18px;color:rgba(255,255,255,.7);
  transition:background .25s,transform .3s,color .25s;
  flex-shrink:0;
}
.mob-close:hover{background:var(--cr);color:#fff;border-color:var(--cr);transform:rotate(90deg)}
.mob-links-wrap{
  flex:1;display:flex;flex-direction:column;
  justify-content:center;padding:0 32px;gap:0;
  position:relative;z-index:2;
}
.mob-overlay a{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(34px,9vw,52px);
  font-weight:600;color:rgba(255,255,255,.75);text-decoration:none;
  line-height:1;letter-spacing:-.3px;
  padding:18px 0;
  border-bottom:1px solid rgba(255,255,255,.05);
  display:flex;align-items:center;justify-content:space-between;
  opacity:0;transform:translateY(20px);
  transition:opacity .45s,transform .45s,color .25s;
}
.mob-overlay a:last-of-type{border-bottom:none}
.mob-overlay a::after{
  content:'';
  width:20px;height:1px;
  background:rgba(139,0,0,.35);
  transition:width .3s,background .25s;
  flex-shrink:0;
}
.mob-overlay a:hover{color:#fff}
.mob-overlay a:hover::after{width:32px;background:var(--cr)}
.mob-overlay.open a:nth-child(1){opacity:1;transform:none;transition-delay:.08s}
.mob-overlay.open a:nth-child(2){opacity:1;transform:none;transition-delay:.14s}
.mob-overlay.open a:nth-child(3){opacity:1;transform:none;transition-delay:.20s}
.mob-overlay.open a:nth-child(4){opacity:1;transform:none;transition-delay:.26s}
.mob-overlay.open a:nth-child(5){opacity:1;transform:none;transition-delay:.32s}
.mob-overlay.open a:nth-child(6){opacity:1;transform:none;transition-delay:.38s}
.mob-overlay.open a:nth-child(7){opacity:1;transform:none;transition-delay:.44s}
.mob-overlay.open a:nth-child(8){opacity:1;transform:none;transition-delay:.50s}
.mob-cta-wrap{
  padding:20px 32px 40px;
  border-top:1px solid rgba(0,0,0,.08);
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  opacity:0;transform:translateY(10px);
  transition:opacity .4s .44s,transform .4s .44s;
  position:relative;z-index:2;
}
.mob-overlay.open .mob-cta-wrap{opacity:1;transform:none}
.mob-cta{
  font-family:'Cormorant Garamond',serif !important;
  font-size:16px !important;font-weight:600;
  color:rgba(200,100,100,.9) !important;
  letter-spacing:.04em;text-transform:none;
  text-decoration:none;
  opacity:1 !important;transform:none !important;
  transition:color .25s,letter-spacing .3s !important;
  background:none !important;
  box-shadow:none !important;
  padding:0 !important;
  border-radius:0 !important;
}
.mob-cta:hover{
  color:#fff !important;
  letter-spacing:.08em !important;
  box-shadow:none !important;
  transform:none !important;
}
.mob-footer-note{
  font-size:9px;color:rgba(255,255,255,.18);
  letter-spacing:.18em;text-transform:uppercase;
  font-family:'Lato',sans-serif;
}
.nav-links a.active{color:#fff}
.nav-links a.active::after{width:calc(100% - 24px)}
.nav.solid .nav-links a.active{color:var(--cr)}
@media(max-width:700px){.nav{padding:0 20px;height:74px}
.nav-links,.nav-search,.btn-nav{display:none}
.mob-btn{display:flex}}
.ann-item{font-size:9.5px;letter-spacing:.28em;padding:0 48px}
.nav-links a{font-size:10.5px;letter-spacing:.12em}
.btn-nav{font-size:10.5px;letter-spacing:.14em;padding:13px 24px}
.nav-search{position:relative}
@keyframes cwRing{0%,100%{opacity:.6;transform:scale(1)}50%{opacity:0;transform:scale(1.18)}}
.logo-box{display:inline-flex;align-items:center;gap:11px;padding:0;background:none;border:none;box-shadow:none}
.logo-z{font-family:'Georgia','Times New Roman',serif;font-size:40px;font-weight:700;font-style:italic;color:#fff;line-height:1;display:block;transition:color .4s;text-shadow:0 2px 12px rgba(0,0,0,.25)}
.logo-vline{width:1px;height:32px;background:rgba(255,255,255,.35);flex-shrink:0;transition:background .4s}
.logo-text-group{display:flex;flex-direction:column;gap:3px}
.logo-main{font-family:'Georgia','Times New Roman',serif;font-size:13px;font-weight:700;color:#fff;letter-spacing:3.5px;display:block;line-height:1;transition:color .4s}
.logo-sub{font-family:'Georgia','Times New Roman',serif;font-size:7px;color:rgba(255,255,255,.55);letter-spacing:4px;display:block;line-height:1;transition:color .4s}
.nav.solid .logo-z{color:#B03030;text-shadow:none}
.nav.solid .logo-vline{background:rgba(184,150,46,.5)}
.nav.solid .logo-main{color:#1E1610}
.nav.solid .logo-sub{color:#7A6548}
.logo-box-ft{display:inline-flex;align-items:center;gap:11px;margin-bottom:14px}
.logo-box-ft .logo-z{color:#D06060;text-shadow:none}
.logo-box-ft .logo-vline{background:rgba(184,150,46,.4)}
.logo-box-ft .logo-main{color:rgba(255,255,255,.9)}
.logo-box-ft .logo-sub{color:rgba(255,255,255,.4)}
@media(max-width:768px){#zc-panel{width:calc(100vw - 32px) !important;right:-4px !important;bottom:60px !important}
#zc{bottom:16px !important;right:16px !important}}
@media(max-width:640px){.ann-item{padding:0 28px !important;font-size:9px !important}}
@media(max-width:480px){.nav{padding:0 16px !important;height:60px !important}
.logo-text{font-size:16px !important}
.logo-mark{width:36px !important;height:36px !important}
.back-top,
  #zc{bottom:12px !important;right:12px !important}
#zc-panel{width:calc(100vw - 24px) !important;right:-6px !important}
#zc-btn{width:46px !important;height:46px !important}
.mob-overlay a{font-size:clamp(24px,8vw,40px) !important}}
@media(max-width:375px){#zc-panel{width:calc(100vw - 16px) !important;right:-4px !important}}
@media(max-width:700px){.nav-links,.nav-search,.btn-nav{display:none !important}
.mob-btn{display:flex !important}}
@media(max-width:500px){#zc-head{padding:18px 16px 24px !important}
#zc-headline{font-size:17px !important}
#zc-msgs{height:220px !important;padding:12px !important}
#zc-foot{padding:10px 12px 12px !important}
.zc-b{font-size:13px !important;padding:9px 12px !important}}
@media(max-width:768px){a:not(.btn-nav),button:not(.btn-nav){min-height:44px;display:inline-flex;align-items:center}
.btn-nav{display:none !important}
.nav-links a,.ft-links a,.ft-col ul li a,.testi-btn,.testi-dot{min-height:44px}}
.mob-btn{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;background:transparent;border:none;padding:8px;cursor:pointer;flex-shrink:0}
.mob-btn span{display:block;width:22px;height:1.5px;border-radius:1px;background:var(--cr,#8B0000);transition:all .35s;transform-origin:center}
.mob-btn.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.mob-btn.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.mob-btn.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.mob-overlay{position:fixed;inset:0;z-index:9000;background:linear-gradient(160deg,#F6F1E3,#EDE5CC);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(4px,1.5vh,8px);padding:70px 24px 28px;overflow-y:auto;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s,visibility .3s}
.mob-overlay.open{opacity:1;visibility:visible;pointer-events:all}
.mob-overlay a{font-family:'Cormorant Garamond',serif;font-size:clamp(24px,6vw,44px);font-weight:600;color:#111;text-decoration:none;line-height:1.2;text-align:center;width:100%;opacity:0;transform:translateY(14px);transition:opacity .3s,transform .3s}
.mob-overlay.open a:nth-child(n){opacity:1;transform:none}
.mob-overlay.open a:nth-child(1){transition-delay:.04s}
.mob-overlay.open a:nth-child(2){transition-delay:.08s}
.mob-overlay.open a:nth-child(3){transition-delay:.12s}
.mob-overlay.open a:nth-child(4){transition-delay:.16s}
.mob-overlay.open a:nth-child(5){transition-delay:.20s}
.mob-overlay.open a:nth-child(6){transition-delay:.24s}
.mob-overlay a:hover{color:#8B0000}
.mob-overlay-cta{margin-top:clamp(12px,2vh,20px);opacity:0;transform:translateY(14px);transition:opacity .3s .28s,transform .3s .28s;display:flex;justify-content:center}
.mob-overlay.open .mob-overlay-cta{opacity:1;transform:none}
.mob-overlay-cta a{font-family:'Lato',sans-serif!important;font-size:12px!important;font-weight:800!important;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg,#8B0000,#5E0000);color:#fff!important;padding:14px 32px;border-radius:8px;box-shadow:0 4px 14px rgba(139,0,0,.3);white-space:nowrap;width:auto!important;display:inline-block!important}
@media(max-width:700px){.nav-links,.nav-search,.btn-nav{display:none!important}
.mob-btn{display:flex!important}}
@media(min-width:701px){.mob-btn,.mob-overlay{display:none!important}}
@media(max-width:600px){#zc{bottom:12px!important;right:12px!important}
#zc-btn{width:46px!important;height:46px!important;border-radius:14px!important}
#zc-panel{width:calc(100vw - 24px)!important;right:-2px!important;bottom:60px!important;border-radius:16px!important}
#zc-head{padding:16px 14px 22px!important}
#zc-headline{font-size:16px!important}
#zc-tagline{font-size:11px!important}
#zc-msgs{height:240px!important;padding:12px!important}
.zc-b{font-size:13px!important;padding:9px 12px!important;max-width:85%!important}
#zc-foot{padding:10px 10px 12px!important;gap:8px!important}
#zc-inp{font-size:14px!important;padding:9px 12px!important;border-radius:12px!important}
#zc-send{width:36px!important;height:36px!important;border-radius:10px!important}
#zc-credit{font-size:9px!important}}
@media(max-width:375px){#zc-panel{width:calc(100vw - 16px)!important;right:-4px!important}
#zc-msgs{height:200px!important}}
.nav{
  height:72px;
  padding:0 64px;
  background:rgba(5,2,2,.18);
  backdrop-filter:blur(24px) saturate(160%);
  -webkit-backdrop-filter:blur(24px) saturate(160%);
  border-bottom:1px solid rgba(255,255,255,.09);
}
.nav.solid{
  height:72px;
  background:rgba(255,255,255,.95);
  backdrop-filter:blur(28px) saturate(180%);
  -webkit-backdrop-filter:blur(28px) saturate(180%);
  box-shadow:0 1px 0 rgba(139,0,0,.06),0 6px 32px rgba(0,0,0,.06);
  border-bottom:1px solid rgba(184,150,46,.14);
}
.nav.solid::before{
  height:1.5px;
  background:linear-gradient(90deg,transparent 0%,var(--cr) 25%,var(--crdk) 75%,transparent 100%);
}
.logo-box{gap:13px}
.logo-z{
  font-size:36px;
  letter-spacing:-.02em;
  font-style:italic;
}
.logo-vline{height:28px;opacity:.7}
.logo-main{font-size:12px;letter-spacing:4px}
.logo-sub{font-size:6.5px;letter-spacing:4.5px;opacity:.6}
.nav-links{gap:4px}
.nav-links a{
  font-size:10px;
  letter-spacing:.18em;
  padding:10px 14px;
  color:rgba(255,255,255,.82);
}
.nav-links a::after{
  bottom:4px;
  height:1px;
  left:14px;right:14px;
}
.nav.solid .nav-links a{color:rgba(20,12,8,.52)}
.btn-nav{
  border-radius:2px;
  font-size:10px;
  letter-spacing:.18em;
  padding:12px 28px;
  box-shadow:0 3px 16px rgba(139,0,0,.32);
}
@media(max-width:700px){.nav{
    padding:0 20px;
    height:66px;
  }
.mob-btn{display:flex!important}
.mob-btn span{background:rgba(255,255,255,.9)!important}
.nav.solid .mob-btn span{background:var(--ink)!important}
.mob-btn.open span{background:var(--ink)!important}}
@media(max-width:700px){.nav{
    height:60px !important;
    padding:0 18px !important;
  }
.logo-sub{display:none !important}
.logo-z{font-size:32px !important}
.logo-main{font-size:11px !important;letter-spacing:2.5px !important}
.logo-vline{height:26px !important}}
@media(max-width:700px){.mob-overlay{
    background:rgba(250,246,236,.97) !important;
    backdrop-filter:blur(32px) saturate(180%) !important;
    -webkit-backdrop-filter:blur(32px) saturate(180%) !important;
  }
.mob-links-wrap{
    padding:0 32px 0 40px !important;
    gap:0 !important;
    justify-content:center !important;
  }
.mob-overlay a{
    font-size:clamp(28px,8vw,44px) !important;
    padding:12px 0 !important;
    letter-spacing:-.3px !important;
  }
.mob-cta-wrap{
    padding:24px 32px 36px !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:14px !important;
  }
.mob-cta{
    font-size:10px !important;
    padding:14px 28px !important;
    width:100% !important;
    justify-content:center !important;
    display:flex !important;
    text-align:center !important;
    border-radius:4px !important;
  }
.mob-footer-note{
    font-size:10px !important;
    color:rgba(0,0,0,.35) !important;
  }}
@media(max-width:700px){.mob-btn{min-width:44px !important;min-height:44px !important}
.testi-btn,.testi-dot,.faq-q,.btn-hp,.btn-hg,.btn-nav,.mob-cta{min-height:44px !important}}
@media(max-width:480px){.nav{height:56px !important}}
@media(max-width:375px){.mob-overlay a{font-size:26px !important}}
.nav-svc-item{position:relative}
.svc-drop-wrap{
  position:absolute;
  top:100%;
  left:0;
  max-height:0;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
  z-index:500;
  width:max-content;
  transition:opacity .18s ease, max-height 0s linear .18s, visibility 0s linear .18s;
  visibility:hidden;
}
.nav-svc-item:hover .svc-drop-wrap,
.nav-svc-item:focus-within .svc-drop-wrap{
  max-height:640px;
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition:opacity .18s ease, max-height 0s linear, visibility 0s linear;
}
.svc-drop{
  margin-top:14px;
  background:var(--white,#fff);
  border:1px solid rgba(139,0,0,.14);
  border-radius:12px;
  box-shadow:0 18px 44px rgba(30,22,16,.18),0 2px 10px rgba(30,22,16,.08);
  padding:14px 16px;
  min-width:380px;
  max-width:min(430px,calc(100vw - 40px));
  columns:2;
  column-gap:16px;
}
@media(max-width:700px){.svc-drop-wrap{display:none !important}}
.mob-svc-group{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
.mob-svc-toggle{
  all:unset;
  box-sizing:border-box;
  width:100%;
  cursor:pointer;
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-family:'Cormorant Garamond',serif;
  font-weight:600;
  font-size:clamp(24px,7vw,40px);
  color:#111;
  line-height:1.1;
  padding:14px 0;
  text-align:center;
  opacity:1 !important;
  transform:none !important;
}
.mob-svc-toggle:hover,.mob-svc-toggle:focus-visible{color:#8B0000;outline:none}
.mob-svc-caret{
  font-size:.5em;
  display:inline-block;
  transition:transform .25s ease;
  transform:translateY(-2px);
}
.mob-svc-group.open .mob-svc-toggle .mob-svc-caret{transform:translateY(-2px) rotate(180deg)}
.mob-svc-panel{
  max-height:0;
  overflow:hidden;
  width:100%;
  transition:max-height .35s ease;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.mob-svc-group.open .mob-svc-panel{max-height:70vh;overflow-y:auto;-webkit-overflow-scrolling:touch}
#mobSvcPanel a{
  all:unset;
  box-sizing:border-box;
  display:block !important;
  width:100% !important;
  max-width:360px !important;
  text-align:center !important;
  font-family:'Lato',Arial,sans-serif !important;
  font-size:15px !important;
  font-weight:700 !important;
  letter-spacing:.01em !important;
  color:rgba(20,12,8,.68) !important;
  padding:10px 8px !important;
  margin:0 auto !important;
  cursor:pointer;
  border-bottom:1px solid rgba(139,0,0,.08) !important;
  opacity:1 !important;
  transform:none !important;
  text-transform:none !important;
  background:none !important;
  box-shadow:none !important;
  line-height:1.35 !important;
}
#mobSvcPanel a:last-child{border-bottom:none !important}
#mobSvcPanel a:hover,#mobSvcPanel a.cur{color:#8B0000 !important}
#mobSvcPanel a.mob-svc-overview{
  font-weight:800 !important;
  color:#8B0000 !important;
  text-transform:uppercase !important;
  font-size:12px !important;
  letter-spacing:.1em !important;
  padding-bottom:12px !important;
  margin-bottom:4px !important;
  border-bottom:1px solid rgba(139,0,0,.18) !important;
}
.mob-links-wrap{justify-content:safe center !important}
@media(min-width:701px){.mob-svc-group,.mob-svc-panel{display:none !important}}
#zc{position:fixed;bottom:24px;right:24px;z-index:99999;font-family:'Lato',sans-serif}
#zc-btn{
  width:60px;height:60px;border-radius:18px;
  background:linear-gradient(145deg,#8B0000,#5E0000);
  border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  color:#fff;position:relative;overflow:hidden;
  box-shadow:0 10px 36px rgba(139,0,0,.55),0 2px 8px rgba(0,0,0,.2);
  transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;
}
#zc-btn::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.2),transparent);border-radius:inherit;pointer-events:none}
#zc-btn::after{content:'';position:absolute;inset:-7px;border-radius:24px;border:1.5px solid rgba(139,0,0,.3);animation:zcRing 3s ease infinite;pointer-events:none}
@keyframes zcRing{0%,100%{opacity:.5;transform:scale(1)}50%{opacity:0;transform:scale(1.2)}}
#zc-btn:hover{transform:scale(1.08) translateY(-3px);box-shadow:0 20px 52px rgba(139,0,0,.65)}
#zc-btn svg{pointer-events:none;position:relative;z-index:1}
#zc-panel{
  display:none;flex-direction:column;
  position:absolute;bottom:76px;right:0;width:380px;
  border-radius:22px;overflow:hidden;
  background:rgba(246,241,227,.55);
  backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 32px 80px rgba(0,0,0,.2),0 8px 24px rgba(0,0,0,.1);
  transform-origin:bottom right;
}
#zc-panel.on{display:flex}
#zc-head{
  background:linear-gradient(145deg,#3D0000,#8B0000);
  padding:24px 20px 30px;position:relative;overflow:hidden;
}
#zc-head::before{content:'';position:absolute;inset:0;
  background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.022) 0,rgba(255,255,255,.022) 1px,transparent 1px,transparent 14px);
  pointer-events:none}
#zc-head::after{content:'';position:absolute;top:-50px;right:-50px;width:200px;height:200px;
  border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.08),transparent 65%);pointer-events:none}
#zc-head-top{display:flex;justify-content:flex-end;margin-bottom:14px;position:relative;z-index:1}
#zc-x{
  background:rgba(255,255,255,.12);border:none;cursor:pointer;color:rgba(255,255,255,.7);
  width:30px;height:30px;border-radius:9px;
  display:flex;align-items:center;justify-content:center;font-size:14px;
  transition:background .2s;
}
#zc-x:hover{background:rgba(255,255,255,.22);color:#fff}
#zc-avatars{display:flex;margin-bottom:16px;position:relative;z-index:1}
#zc-avatars span{
  width:42px;height:42px;border-radius:14px;
  background:rgba(255,255,255,.18);
  border:1.5px solid rgba(255,255,255,.3);
  backdrop-filter:blur(8px);
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-size:17px;font-weight:700;font-family:'Cormorant Garamond',serif;
}
#zc-headline{
  font-family:'Cormorant Garamond',serif;
  font-size:22px;font-weight:600;color:#fff;line-height:1.2;margin-bottom:6px;
  position:relative;z-index:1;
}
#zc-sub{
  font-size:11px;color:rgba(255,255,255,.45);
  display:flex;align-items:center;gap:6px;
  position:relative;z-index:1;letter-spacing:.02em;
}
#zc-dot{width:7px;height:7px;border-radius:50%;background:#4ADE80;display:inline-block;flex-shrink:0;
  box-shadow:0 0 6px rgba(74,222,128,.5)}
#zc-msgs{
  background:transparent;padding:16px;
  height:260px;overflow-y:auto;
  display:flex;flex-direction:column;gap:10px;
  scrollbar-width:thin;scrollbar-color:rgba(139,0,0,.2) transparent;
}
#zc-msgs::-webkit-scrollbar{width:3px}
#zc-msgs::-webkit-scrollbar-thumb{background:rgba(139,0,0,.2);border-radius:2px}
.zc-date{text-align:center;font-size:10px;color:#bbb;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin:4px 0}
.zc-row{display:flex;gap:9px;align-items:flex-end}
.zc-row.me{flex-direction:row-reverse}
.zc-av{
  width:28px;height:28px;border-radius:9px;
  background:linear-gradient(135deg,#8B0000,#5E0000);
  color:#fff;font-size:11px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;font-family:'Cormorant Garamond',serif;
}
.zc-bubble{
  max-width:78%;padding:11px 14px;
  border-radius:4px 16px 16px 16px;
  font-size:13px;line-height:1.6;color:#111;
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(8px);
  box-shadow:0 1px 3px rgba(0,0,0,.06),0 2px 8px rgba(0,0,0,.04);
  border:1px solid rgba(255,255,255,.9);
  overflow-wrap:break-word;word-break:break-word;
}
.zc-bubble p{margin:0 0 8px}
.zc-bubble p:last-child{margin-bottom:0}
.zc-bubble .zc-h{font-family:'Lato',Arial,sans-serif;font-size:12.5px;font-weight:800;letter-spacing:.02em;margin:10px 0 4px}
.zc-bubble .zc-h:first-child{margin-top:0}
.zc-bubble ul,.zc-bubble ol{margin:0 0 8px;padding-left:18px}
.zc-bubble ul:last-child,.zc-bubble ol:last-child{margin-bottom:0}
.zc-bubble li{margin:0 0 4px}
.zc-bubble li:last-child{margin-bottom:0}
.zc-bubble strong{font-weight:800}
.zc-row.me .zc-bubble{
  background:linear-gradient(135deg,#8B0000,#6B0000);
  color:#fff;border:none;
  border-radius:16px 4px 16px 16px;
  box-shadow:0 4px 16px rgba(139,0,0,.3);
}
.zc-bubble.typing span{display:inline-block;width:6px;height:6px;border-radius:50%;background:rgba(139,0,0,.3);animation:zcDot 1.2s ease infinite;margin:0 2px}
.zc-bubble.typing span:nth-child(2){animation-delay:.2s}
.zc-bubble.typing span:nth-child(3){animation-delay:.4s}
.zc-body{overflow-wrap:break-word}
.zc-clamp{max-height:170px;overflow:hidden;position:relative}
.zc-clamp::after{content:'';position:absolute;left:0;right:0;bottom:0;height:46px;background:linear-gradient(rgba(255,255,255,0),rgba(255,255,255,.96))}
.zc-more{display:block;margin-top:6px;background:none;border:none;padding:0;color:#8B0000;font-weight:800;font-size:12px;font-family:inherit;cursor:pointer}
.zc-actions{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.zc-cta{display:block;text-align:center;text-decoration:none;font-weight:800;font-size:12.5px;line-height:1.3;padding:10px 14px;border-radius:10px;border:1.5px solid #8B0000;color:#8B0000;background:#fff;cursor:pointer;transition:background .15s,transform .15s}
.zc-cta:hover{background:rgba(139,0,0,.07);transform:translateY(-1px)}
.zc-cta-primary,.zc-bubble a.zc-cta-primary{background:linear-gradient(135deg,#8B0000,#6B0000);color:#fff!important;border-color:transparent;box-shadow:0 4px 14px rgba(139,0,0,.28)}
.zc-cta-primary:hover{background:linear-gradient(135deg,#9a0000,#750000)}
.zc-bubble a.zc-cta{display:block;margin:8px 0 2px}
.zc-bubble a.zc-link{color:#8B0000;text-decoration:underline;font-weight:700}
.zc-price{margin-top:8px;font-size:11.5px;font-weight:700;color:#5A2E00;text-align:center}
.zc-opts{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.zc-opt{background:#fff;border:1.5px solid rgba(139,0,0,.35);color:#8B0000;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:700;font-family:inherit;line-height:1.3;text-align:left;cursor:pointer;transition:background .15s}
.zc-opt:hover{background:rgba(139,0,0,.07)}
.zc-opts.used .zc-opt{opacity:.5;pointer-events:none}
.zc-note{align-self:center;font-size:10.5px;color:#8a8a8a;text-align:center;padding:0 8px}
.zc-wait{display:block;margin-top:6px;font-size:11px;color:#8a8a8a}
@keyframes zcDot{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-5px)}}
#zc-foot{
  background:rgba(255,255,255,.45);
  backdrop-filter:blur(12px);
  padding:12px 14px;
  border-top:1px solid rgba(255,255,255,.5);
  display:flex;align-items:center;gap:10px;
}
#zc-inp{
  flex:1;border:1.5px solid rgba(255,255,255,.7);border-radius:14px;
  padding:10px 16px;font-size:13px;font-family:'Lato',sans-serif;
  outline:none;background:rgba(255,255,255,.6);color:#111;
  resize:none;max-height:72px;line-height:1.4;
  transition:border-color .2s,background .2s,box-shadow .2s;
}
#zc-inp:focus{border-color:rgba(139,0,0,.4);background:rgba(255,255,255,.9);box-shadow:0 0 0 3px rgba(139,0,0,.07)}
#zc-inp::placeholder{color:#C0BAB0}
#zc-send{
  width:40px;height:40px;border-radius:13px;
  background:linear-gradient(135deg,#8B0000,#5E0000);
  border:none;cursor:pointer;color:#fff;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  box-shadow:0 4px 16px rgba(139,0,0,.38);
  transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .2s;
}
#zc-send:hover{transform:scale(1.1);box-shadow:0 8px 24px rgba(139,0,0,.5)}
#zc-send svg{pointer-events:none}
#zc-credit{
  background:rgba(255,255,255,.4);text-align:center;
  font-size:9px;color:#B0A898;
  padding:5px 0 10px;
  letter-spacing:.14em;text-transform:uppercase;
  border-top:1px solid rgba(255,255,255,.5);
}
#zc-popup{
  position:absolute;bottom:76px;right:0;
  display:flex;align-items:flex-start;gap:10px;
  background:rgba(246,241,227,.75);
  backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  border:1px solid rgba(255,255,255,.6);
  border-radius:18px;
  box-shadow:0 12px 48px rgba(0,0,0,.14),0 2px 8px rgba(0,0,0,.08);
  padding:14px 16px;width:300px;
  animation:popupIn .4s cubic-bezier(.34,1.56,.64,1) both;
  cursor:pointer;
}
#zc-popup:hover{box-shadow:0 16px 56px rgba(0,0,0,.22),0 0 0 1px rgba(139,0,0,.1)}
#zc-popup-av{
  width:38px;height:38px;border-radius:12px;flex-shrink:0;
  background:linear-gradient(145deg,#8B0000,#5E0000);
  display:flex;align-items:center;justify-content:center;font-size:18px;
  box-shadow:0 4px 14px rgba(139,0,0,.35);
}
#zc-popup-body{flex:1;min-width:0}
#zc-popup-name{font-size:12px;font-weight:800;color:#111;letter-spacing:.02em;margin-bottom:3px}
#zc-popup-msg{font-size:12.5px;color:#555;line-height:1.55;margin-bottom:10px}
#zc-popup-cta{
  display:inline-flex;align-items:center;gap:6px;
  background:linear-gradient(135deg,#8B0000,#5E0000);color:#fff;
  border:none;border-radius:6px;padding:8px 16px;
  font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  cursor:pointer;box-shadow:0 3px 10px rgba(139,0,0,.3);transition:all .25s;
}
#zc-popup-cta:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(139,0,0,.4)}
#zc-popup-close{
  position:absolute;top:10px;right:10px;
  background:none;border:none;cursor:pointer;
  color:#ccc;font-size:12px;line-height:1;padding:2px;
  transition:color .2s;
}
#zc-popup-close:hover{color:#999}
@media(max-width:420px){#zc-panel{width:calc(100vw - 32px);right:-8px}}
.mob-overlay{
  align-items:stretch !important;
  justify-content:flex-start !important;
  padding:0 !important;
  gap:0 !important;
  background:linear-gradient(160deg,#0A0404 0%,#120606 60%,#180808 100%) !important;
}
.mob-overlay-top{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  width:100% !important;
  padding:18px 24px !important;
  flex-shrink:0 !important;
  position:relative !important;
  z-index:2 !important;
  border-bottom:1px solid rgba(0,0,0,.08) !important;
  opacity:1 !important;
  transform:none !important;
}
.mob-overlay-top .logo-box{
  opacity:1 !important;
  display:inline-flex !important;
}
.mob-overlay-top .logo-z{
  color:#D06060 !important;
  font-size:32px !important;
  text-shadow:none !important;
  opacity:1 !important;
}
.mob-overlay-top .logo-main{
  color:rgba(255,255,255,.85) !important;
  font-size:11px !important;
  letter-spacing:3px !important;
  opacity:1 !important;
}
.mob-overlay-top .logo-vline{
  background:rgba(184,150,46,.4) !important;
  height:24px !important;
  opacity:1 !important;
}
.mob-links-wrap{
  flex:1 !important;
  width:100% !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  padding:0 32px !important;
  align-items:stretch !important;
}
.mob-cta-wrap{
  width:100% !important;
}
@media(max-width:768px){.nav-logo{
    display:flex !important;
    align-items:center !important;
    height:100% !important;
    min-height:unset !important;
    flex-shrink:0 !important;
    opacity:1 !important;
    visibility:visible !important;
  }
.nav-logo .logo-box{display:inline-flex !important;opacity:1 !important}
.nav-logo .logo-z{display:block !important;opacity:1 !important}
.nav-logo .logo-main{display:block !important;opacity:1 !important}
.nav{display:flex !important;align-items:center !important;opacity:1 !important}}
.mob-overlay{
  background:#fff !important;
  backdrop-filter:none !important;
}
.mob-overlay::before{display:none !important}
.mob-overlay::after{display:none !important}
.mob-overlay-top{border-bottom:1px solid rgba(0,0,0,.06) !important}
.mob-overlay-top .logo-z{color:#B03030 !important;text-shadow:none !important}
.mob-overlay-top .logo-main{color:#1E1610 !important}
.mob-overlay-top .logo-vline{background:rgba(184,150,46,.5) !important}
.mob-close{
  background:rgba(0,0,0,.05) !important;
  border:1px solid rgba(0,0,0,.08) !important;
  color:#333 !important;
}
.mob-close:hover{background:var(--cr) !important;color:#fff !important;border-color:var(--cr) !important}
.mob-overlay a{
  color:rgba(20,12,8,.75) !important;
  border-bottom:1px solid rgba(0,0,0,.05) !important;
}
.mob-overlay a:hover{color:#8B0000 !important}
.mob-overlay a::after{background:rgba(139,0,0,.25) !important}
.mob-overlay a:hover::after{background:var(--cr) !important}
.mob-cta-wrap{border-top:1px solid rgba(0,0,0,.05) !important}
.mob-cta{color:rgba(139,0,0,.8) !important}
.mob-cta:hover{color:#8B0000 !important}
.mob-footer-note{color:rgba(0,0,0,.25) !important}
@media(max-width:700px){.nav-logo{display:flex !important;align-items:center !important;min-height:unset !important}
.logo-box{display:inline-flex !important;opacity:1 !important}
.logo-z{display:block !important;opacity:1 !important;font-size:30px !important}
.logo-main{display:block !important;opacity:1 !important;font-size:10px !important;letter-spacing:3px !important}
.logo-sub{display:none !important}
.logo-vline{display:block !important;opacity:1 !important;height:22px !important}}
@media(max-width:700px){.nav{
    display:flex !important;
    align-items:center !important;
    height:62px !important;
    padding:0 18px !important;
    background:#fff !important;
    backdrop-filter:blur(20px) !important;
    -webkit-backdrop-filter:blur(20px) !important;
    box-shadow:0 1px 0 rgba(0,0,0,.07),0 2px 16px rgba(0,0,0,.07) !important;
    border-bottom:1px solid rgba(0,0,0,.06) !important;
    position:sticky !important;
    top:0 !important;
    z-index:999 !important;
    opacity:1 !important;
    visibility:visible !important;
  }
.nav-logo{
    display:flex !important;
    align-items:center !important;
    opacity:1 !important;
    visibility:visible !important;
    text-decoration:none !important;
    flex-shrink:0 !important;
    min-height:unset !important;
  }
.logo-box{display:inline-flex !important;opacity:1 !important;gap:9px !important}
.logo-z{display:block !important;opacity:1 !important;font-size:30px !important;color:#B03030 !important;text-shadow:none !important}
.logo-vline{display:block !important;opacity:1 !important;height:22px !important;background:rgba(184,150,46,.5) !important}
.logo-main{display:block !important;opacity:1 !important;font-size:10.5px !important;letter-spacing:3px !important;color:#1E1610 !important}
.logo-sub{display:none !important}
.mob-btn{
    display:flex !important;
    opacity:1 !important;
    visibility:visible !important;
    margin-left:auto !important;
  }
.mob-btn span{background:#1A0A0A !important}
.mob-btn.open span{background:#1A0A0A !important}
.nav-links,.nav-search,.btn-nav{display:none !important}}
@media(max-width:700px){.nav{
    position:fixed !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    z-index:9999 !important;
  }}
@media(max-width:700px){.nav{
    background:rgba(255,255,255,.72) !important;
    backdrop-filter:blur(20px) saturate(180%) !important;
    -webkit-backdrop-filter:blur(20px) saturate(180%) !important;
    box-shadow:0 1px 0 rgba(0,0,0,.06),0 4px 20px rgba(0,0,0,.06) !important;
    border-bottom:1px solid rgba(255,255,255,.5) !important;
  }}
.nav{
  background:rgba(255,255,255,.72) !important;
  backdrop-filter:blur(20px) saturate(180%) !important;
  -webkit-backdrop-filter:blur(20px) saturate(180%) !important;
  box-shadow:0 1px 0 rgba(0,0,0,.06),0 4px 20px rgba(0,0,0,.06) !important;
  border-bottom:1px solid rgba(255,255,255,.5) !important;
}
.nav.scrolled,.nav.solid{
  background:rgba(255,255,255,.82) !important;
  backdrop-filter:blur(28px) saturate(200%) !important;
  -webkit-backdrop-filter:blur(28px) saturate(200%) !important;
  box-shadow:0 1px 0 rgba(0,0,0,.08),0 6px 28px rgba(0,0,0,.08) !important;
  border-bottom:1px solid rgba(255,255,255,.6) !important;
}
.nav{
  background:rgba(255,255,255,.88) !important;
  backdrop-filter:blur(24px) saturate(180%) !important;
  -webkit-backdrop-filter:blur(24px) saturate(180%) !important;
  box-shadow:0 1px 0 rgba(0,0,0,.08),0 4px 24px rgba(0,0,0,.1) !important;
  border-bottom:1px solid rgba(255,255,255,.6) !important;
}
.nav.scrolled,.nav.solid{
  background:rgba(255,255,255,.95) !important;
  backdrop-filter:blur(28px) saturate(200%) !important;
  -webkit-backdrop-filter:blur(28px) saturate(200%) !important;
  box-shadow:0 1px 0 rgba(0,0,0,.08),0 6px 28px rgba(0,0,0,.1) !important;
}
.nav{
  background:rgba(255,255,255,.96) !important;
  backdrop-filter:blur(20px) !important;
  -webkit-backdrop-filter:blur(20px) !important;
  box-shadow:0 1px 0 rgba(0,0,0,.08),0 2px 20px rgba(0,0,0,.08) !important;
  border-bottom:1px solid rgba(0,0,0,.06) !important;
}
.nav.scrolled,.nav.solid{
  background:rgba(255,255,255,.99) !important;
  box-shadow:0 1px 0 rgba(139,0,0,.07),0 4px 24px rgba(0,0,0,.1) !important;
  border-bottom:1px solid rgba(184,150,46,.15) !important;
}
.nav-links a{color:rgba(20,12,8,.6) !important}
.nav-links a:hover{color:#8B0000 !important}
.nav.solid .nav-links a,.nav.scrolled .nav-links a{color:rgba(20,12,8,.6) !important}
.logo-z{color:#B03030 !important;text-shadow:none !important}
.logo-main{color:#1E1610 !important}
.logo-sub{color:#7A6548 !important}
.logo-vline{background:rgba(184,150,46,.5) !important}
@media(max-width:700px){.logo-sub{display:block !important;font-size:6px !important;letter-spacing:3px !important;color:#7A6548 !important;opacity:.8}
.logo-main{font-size:10px !important;letter-spacing:2.5px !important}
.logo-z{font-size:28px !important}
.logo-vline{height:28px !important}
.logo-box{gap:8px !important}}
.nav,
.nav.solid,
.nav.scrolled{
  background:rgba(255,255,255,.82) !important;
  backdrop-filter:blur(24px) saturate(180%) !important;
  -webkit-backdrop-filter:blur(24px) saturate(180%) !important;
  box-shadow:0 1px 0 rgba(0,0,0,.07),0 4px 24px rgba(0,0,0,.08) !important;
  border-bottom:1px solid rgba(255,255,255,.55) !important;
}
.nav.solid,.nav.scrolled{
  background:rgba(255,255,255,.9) !important;
  box-shadow:0 1px 0 rgba(139,0,0,.06),0 6px 28px rgba(0,0,0,.1) !important;
  border-bottom:1px solid rgba(184,150,46,.12) !important;
}
.nav-links a{color:rgba(20,12,8,.6) !important}
.nav-links a:hover,.nav-links a.active{color:#8B0000 !important}
.logo-z{color:#B03030 !important;text-shadow:none !important}
.logo-main{color:#1E1610 !important}
.logo-sub{color:#7A6548 !important}
.logo-vline{background:rgba(184,150,46,.45) !important}
.btn-nav{box-shadow:0 3px 14px rgba(139,0,0,.3) !important}
.mob-btn span{background:#1A0A0A !important}
.logo-box-ft .logo-z{color:#E88080 !important;font-size:42px !important;text-shadow:0 2px 14px rgba(220,80,80,.35) !important}
.logo-box-ft .logo-main{color:#fff !important;font-size:13px !important;letter-spacing:4px !important;font-weight:700 !important}
.logo-box-ft .logo-sub{color:rgba(255,255,255,.55) !important;font-size:7.5px !important;letter-spacing:3.5px !important}
.logo-box-ft .logo-vline{background:rgba(184,150,46,.6) !important;height:32px !important}
.nav,
.nav.solid,
.nav.scrolled{
  background:rgba(255,255,255,.75) !important;
  backdrop-filter:blur(24px) saturate(180%) !important;
  -webkit-backdrop-filter:blur(24px) saturate(180%) !important;
  box-shadow:0 1px 0 rgba(0,0,0,.07),0 4px 24px rgba(0,0,0,.08) !important;
  border-bottom:1px solid rgba(255,255,255,.5) !important;
}
.nav.solid,.nav.scrolled{
  background:rgba(255,255,255,.88) !important;
  box-shadow:0 1px 0 rgba(139,0,0,.06),0 6px 28px rgba(0,0,0,.1) !important;
  border-bottom:1px solid rgba(184,150,46,.12) !important;
}
@media(max-width:700px){.nav,.nav.solid,.nav.scrolled{
    background:rgba(255,255,255,.75) !important;
    backdrop-filter:blur(24px) saturate(180%) !important;
    -webkit-backdrop-filter:blur(24px) saturate(180%) !important;
  }}
.logo-box-ft{background:rgba(139,0,0,.06) !important;border:1px solid rgba(139,0,0,.15) !important}
.logo-box-ft .logo-z{color:#B03030 !important;text-shadow:none !important;font-size:40px !important}
.logo-box-ft .logo-main{color:#1E1610 !important;font-size:12.5px !important;letter-spacing:3.5px !important;font-weight:700 !important}
.logo-box-ft .logo-sub{color:#7A6548 !important;font-size:7px !important;letter-spacing:3.5px !important}
.logo-box-ft .logo-vline{background:rgba(184,150,46,.55) !important;height:30px !important}
.logo-box-ft{display:inline-flex !important;opacity:1 !important;visibility:visible !important}
.logo-box-ft{display:inline-flex !important;align-items:center !important;gap:10px !important;background:rgba(139,0,0,.06) !important;border:1px solid rgba(139,0,0,.15) !important;border-radius:4px !important;padding:8px 14px 8px 10px !important;margin-bottom:14px !important;opacity:1 !important;visibility:visible !important}
.logo-box-ft .logo-z{color:#B03030 !important;font-size:38px !important;text-shadow:none !important;display:block !important;opacity:1 !important}
.logo-box-ft .logo-vline{background:rgba(184,150,46,.55) !important;height:28px !important;display:block !important;opacity:1 !important;width:1px !important;flex-shrink:0 !important}
.logo-box-ft .logo-main{color:#1E1610 !important;font-size:12px !important;letter-spacing:3.5px !important;font-weight:700 !important;display:block !important;opacity:1 !important}
.logo-box-ft .logo-sub{color:#7A6548 !important;font-size:7px !important;letter-spacing:3px !important;display:block !important;opacity:1 !important}
.nav{
  background:rgba(255,255,255,0) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  box-shadow:none !important;
  border-bottom:none !important;
}
.nav.solid,.nav.scrolled{
  background:rgba(255,255,255,.88) !important;
  backdrop-filter:blur(24px) saturate(180%) !important;
  -webkit-backdrop-filter:blur(24px) saturate(180%) !important;
  box-shadow:0 1px 0 rgba(0,0,0,.07),0 4px 24px rgba(0,0,0,.08) !important;
  border-bottom:1px solid rgba(255,255,255,.5) !important;
}
.nav:not(.solid):not(.scrolled) .nav-links a{color:rgba(255,255,255,.9) !important}
.nav:not(.solid):not(.scrolled) .nav-links a:hover{color:#fff !important}
.nav:not(.solid):not(.scrolled) .logo-z{color:#fff !important;text-shadow:0 1px 8px rgba(0,0,0,.3) !important}
.nav:not(.solid):not(.scrolled) .logo-main{color:rgba(255,255,255,.9) !important}
.nav:not(.solid):not(.scrolled) .logo-sub{color:rgba(255,255,255,.55) !important}
.nav:not(.solid):not(.scrolled) .logo-vline{background:rgba(255,255,255,.35) !important}
.nav:not(.solid):not(.scrolled) .mob-btn span{background:rgba(255,255,255,.9) !important}
.nav:not(.solid):not(.scrolled){
  background:linear-gradient(to bottom,rgba(0,0,0,.18),transparent) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
@media(max-width:700px){.nav,
  .nav:not(.solid):not(.scrolled){
    background:rgba(255,255,255,.96) !important;
    backdrop-filter:blur(20px) !important;
    -webkit-backdrop-filter:blur(20px) !important;
    box-shadow:0 1px 0 rgba(0,0,0,.08),0 2px 16px rgba(0,0,0,.08) !important;
    border-bottom:1px solid rgba(0,0,0,.06) !important;
  }
.nav .logo-z,
  .nav:not(.solid):not(.scrolled) .logo-z{color:#B03030 !important;text-shadow:none !important}
.nav .logo-main,
  .nav:not(.solid):not(.scrolled) .logo-main{color:#1E1610 !important}
.nav .logo-sub,
  .nav:not(.solid):not(.scrolled) .logo-sub{color:#7A6548 !important}
.nav .logo-vline,
  .nav:not(.solid):not(.scrolled) .logo-vline{background:rgba(184,150,46,.5) !important}
.nav .mob-btn span,
  .nav:not(.solid):not(.scrolled) .mob-btn span{background:#1A0A0A !important}
.nav .nav-links a,
  .nav:not(.solid):not(.scrolled) .nav-links a{color:rgba(20,12,8,.6) !important}}
#zc{
  right:clamp(12px,4vw,28px) !important;
  bottom:clamp(12px,4vw,28px) !important;
}
#zc-btn{
  width:clamp(46px,12vw,60px) !important;
  height:clamp(46px,12vw,60px) !important;
}
#zc-panel{
  width:min(380px,calc(100vw - 24px)) !important;
  max-width:calc(100vw - 24px) !important;
  max-height:min(560px,calc(100vh - 100px)) !important;
  right:0 !important;
}
#zc-msgs{
  max-height:min(240px,38vh) !important;
  height:auto !important;
  padding:clamp(10px,3vw,16px) !important;
}
#zc-head{padding:clamp(14px,4vw,24px) clamp(12px,3.5vw,20px) clamp(18px,5vw,30px) !important}
#zc-avatars span{width:clamp(34px,9vw,42px) !important;height:clamp(34px,9vw,42px) !important;font-size:clamp(14px,3.5vw,17px) !important}
#zc-headline{font-size:clamp(18px,4.5vw,22px) !important}
#zc-sub{font-size:clamp(10px,2.5vw,11px) !important}
#zc-foot{padding:clamp(8px,2.5vw,12px) clamp(10px,3vw,14px) !important;gap:clamp(6px,2vw,10px) !important}
#zc-inp{font-size:clamp(13px,3.2vw,14px) !important;padding:clamp(8px,2.5vw,10px) clamp(12px,3vw,16px) !important}
#zc-send{width:clamp(34px,8vw,40px) !important;height:clamp(34px,8vw,40px) !important}
#zc-credit{font-size:clamp(8px,2vw,9px) !important}
.zc-bubble{font-size:clamp(12.5px,3vw,13px) !important;max-width:82% !important}
#zc-popup{width:min(300px,calc(100vw - 24px)) !important;max-width:calc(100vw - 24px) !important}
.nav{
  -webkit-transform:translateZ(0) !important;
  transform:translateZ(0) !important;
  will-change:transform !important;
  -webkit-backface-visibility:hidden !important;
  backface-visibility:hidden !important;
}
#wa-widget{
  position:fixed;bottom:24px;left:24px;z-index:9998;
  width:60px;height:60px;border-radius:50%;
  background:linear-gradient(145deg,#2CE566,#1DA851);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 10px 32px rgba(29,168,81,.45),0 2px 8px rgba(0,0,0,.15);
  text-decoration:none;
  transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;
}
#wa-widget:hover{transform:scale(1.08) translateY(-2px);box-shadow:0 16px 40px rgba(29,168,81,.55)}
#wa-widget svg{width:30px;height:30px}
#wa-widget::after{
  content:'';position:absolute;inset:-6px;border-radius:50%;
  border:1.5px solid rgba(29,168,81,.35);
  animation:waRing 2.6s ease infinite;pointer-events:none;
}
@keyframes waRing{0%,100%{opacity:.6;transform:scale(1)}50%{opacity:0;transform:scale(1.18)}}
@media(max-width:700px){#wa-widget{width:clamp(48px,12vw,56px);height:clamp(48px,12vw,56px);bottom:clamp(12px,4vw,20px);left:clamp(12px,4vw,20px)}
#wa-widget svg{width:26px;height:26px}}

/* ---- Shared header behaviour ---- */
nav.nav{transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .3s ease,background-color .3s ease}
nav.nav.nav-hidden{opacity:0;visibility:hidden;pointer-events:none}
body[data-chrome="injected"] nav.nav{position:sticky;top:0}

/* ---- Floating booking + menu bar on the home hero (only while the header is hidden) ---- */
.zi-float{position:fixed;top:52px;right:14px;z-index:300;display:none;align-items:center;gap:10px}
.zi-float.on{display:flex}
.zi-float-cta{background:#8B0000;color:#fff;text-decoration:none;font:700 11px/1 'Lato',sans-serif;letter-spacing:.14em;text-transform:uppercase;padding:13px 18px;border-radius:2px;box-shadow:0 6px 18px rgba(139,0,0,.35);white-space:nowrap}
.zi-float-cta:hover{background:#6B0000}
.zi-float-menu{width:46px;height:46px;background:#fff;border:1px solid rgba(27,19,17,.12);border-radius:2px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;box-shadow:0 6px 18px rgba(0,0,0,.12)}
.zi-float-menu span{display:block;width:20px;height:1.5px;background:#1b1311}
@media(max-width:700px){.zi-float-cta{padding:11px 12px;font-size:10px;letter-spacing:.1em}}

/* ---------- Final: chat widget sizing on phones ---------- */
@media(max-width:600px){
  html body #zc{right:12px !important;bottom:12px !important}
  html body #zc-btn{width:52px !important;height:52px !important;border-radius:17px !important}
  html body #zc-panel{
    width:min(340px,calc(100vw - 24px)) !important;max-width:none !important;
    right:0 !important;bottom:68px !important;
    height:min(540px,calc(100dvh - 108px)) !important;max-height:none !important;
    border-radius:20px !important;
    background:linear-gradient(180deg,rgba(255,252,246,.97),rgba(246,241,227,.94)) !important;
    box-shadow:0 24px 60px rgba(40,0,0,.28),0 0 0 1px rgba(184,150,46,.28) !important;
    animation:zcPop .38s cubic-bezier(.22,1,.36,1) both;
  }
  html body #zc-head{padding:14px 14px 14px !important;flex-shrink:0;box-shadow:inset 0 -1px 0 rgba(184,150,46,.55)}
  html body #zc-head-top{position:absolute !important;top:10px;right:10px;margin:0 !important}
  html body #zc-x{width:30px !important;height:30px !important}
  html body #zc-avatars{display:none !important}
  html body #zc-headline{font-size:18px !important;margin:0 !important;padding-right:40px;line-height:1.1}
  html body #zc-sub{font-size:10.5px !important;margin-top:4px !important;color:rgba(255,255,255,.72) !important}
  html body #zc-msgs{flex:1 1 auto !important;height:auto !important;min-height:0 !important;max-height:none !important;padding:12px 10px !important;gap:10px !important}
  html body .zc-bubble{font-size:13px !important;line-height:1.5 !important;max-width:86% !important;padding:9px 12px !important}
  html body .zc-av{width:24px;height:24px;border-radius:8px;font-size:10px}
  html body .zc-opts{gap:6px;margin-top:8px}
  html body .zc-opt{font-size:12px;padding:6px 11px;min-height:0}
  html body .zc-cta{min-height:0;font-size:12.5px;padding:9px 12px}
  html body #zc-foot{flex-shrink:0;padding:10px !important;gap:8px !important;background:rgba(255,255,255,.72) !important}
  html body #zc-inp{font-size:16px !important;padding:9px 12px !important;border-radius:12px !important;min-height:40px}
  html body #zc-send{width:40px !important;height:40px !important;border-radius:12px !important}
  html body #zc-disclaimer{font-size:10.5px !important}
  html body #zc-credit{font-size:8.5px !important}
  html body .zc-row{animation:zcUp .3s ease both}
}
@keyframes zcPop{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}
@keyframes zcUp{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){#zc-panel,.zc-row{animation:none !important}}

/* ---------- "What Sets Us Apart" bento (from live site) ---------- */
.wu-list{display:flex;flex-direction:column;margin-top:52px}
.wu-item{
  background:transparent;
  border-bottom:1px solid var(--line);
  padding:52px 48px;
  display:grid;grid-template-columns:80px 1fr;gap:32px;align-items:start;
  position:relative;overflow:hidden;
  transition:background .3s,padding-left .35s var(--ease);
}
.wu-item:first-child{border-top:1px solid var(--line)}
.wu-item:hover{background:rgba(255,255,255,.7);padding-left:56px;border-left:3px solid var(--cr)}
.wu-big{
  font-family:'Cormorant Garamond',serif;font-size:76px;font-weight:300;
  color:rgba(139,0,0,.22);line-height:1;letter-spacing:-.05em;
  transition:color .3s;
}
.wu-item:hover .wu-big{color:var(--cr)}
.wu-name{font-family:'Cormorant Garamond',serif;font-size:23px;font-weight:600;
  color:var(--ink);margin-bottom:8px;letter-spacing:-.2px}
.wu-note{font-family:'Lato',sans-serif;font-size:14px;color:var(--muted);line-height:1.8}
.wu-arrow{
  display:inline-flex;align-items:center;gap:6px;margin-top:12px;
  font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--cr);opacity:0;transition:opacity .25s,gap .25s;
}
.wu-item:hover .wu-arrow{opacity:1;gap:10px}
@media(max-width:900px){
.wu-item{padding:28px 20px;grid-template-columns:52px 1fr;gap:16px}
.wu-item:hover{padding-left:28px}
}
/* ══ WHY US BENTO GRID ══ */
#why-us .wu-list{display:none}
.wu-bento{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-auto-rows:minmax(200px,auto);
  gap:14px;margin-top:52px;
}
.wu-card{
  background:var(--white);border-radius:20px;
  padding:36px 32px;border:1px solid rgba(0,0,0,.06);
  position:relative;overflow:hidden;
  display:flex;flex-direction:column;justify-content:flex-end;
  box-shadow:0 2px 12px rgba(0,0,0,.04);
  transition:transform .35s var(--ease),box-shadow .35s var(--ease);
}
.wu-card:hover{transform:scale(1.025);box-shadow:0 20px 56px rgba(0,0,0,.1),0 0 0 1px rgba(139,0,0,.06)}
.wu-card--tall{grid-row:span 2}
.wu-card--accent{
  background:linear-gradient(145deg,var(--crdk) 0%,var(--cr) 100%);
}
.wu-card--accent .wu-card-num{color:rgba(255,255,255,.1)}
.wu-card--accent .wu-card-title{color:#fff}
.wu-card--accent .wu-card-body{color:rgba(255,255,255,.68)}
.wu-card--accent:hover{box-shadow:0 20px 56px rgba(139,0,0,.35)}
.wu-rcic-badge{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.15);backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.25);border-radius:20px;
  color:#fff;font-size:10px;font-weight:700;letter-spacing:.16em;
  padding:5px 14px;margin-bottom:20px;text-transform:uppercase;width:fit-content;
}
.wu-card--full{grid-column:span 3;flex-direction:row;align-items:center;gap:48px;padding:32px 40px}
.wu-card-num{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(80px,10vw,130px);font-weight:300;
  color:rgba(139,0,0,.07);line-height:1;letter-spacing:-.05em;
  position:absolute;top:-0.1em;right:.05em;
  pointer-events:none;user-select:none;transition:color .3s;
}
.wu-card:hover .wu-card-num{color:rgba(139,0,0,.12)}
.wu-card--accent:hover .wu-card-num{color:rgba(255,255,255,.15)}
.wu-card-title{
  font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:600;
  color:var(--ink);letter-spacing:-.2px;margin-bottom:8px;position:relative;z-index:1;
}
.wu-card-body{
  font-family:'Lato',sans-serif;font-size:14px;color:var(--muted);
  line-height:1.8;position:relative;z-index:1;
}
.wu-card--full .wu-card-title{font-size:24px;margin-bottom:6px}
.wu-card--full .wu-card-body{font-size:15px;max-width:560px;margin-bottom:0}
.wu-card-link{
  display:inline-flex;align-items:center;gap:6px;margin-top:16px;
  font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--cr);text-decoration:none;
  opacity:0;transform:translateY(6px);
  transition:opacity .25s,transform .25s,gap .25s;position:relative;z-index:1;
}
.wu-card:hover .wu-card-link{opacity:1;transform:translateY(0)}
.wu-card:hover .wu-card-link:hover{gap:10px}
.wu-card--accent .wu-card-link{color:rgba(255,255,255,.8)}
.wu-stat-large{
  font-family:'Cormorant Garamond',serif;font-size:clamp(52px,8vw,96px);
  font-weight:700;color:var(--cr);line-height:1;letter-spacing:-.03em;
  position:relative;z-index:1;margin-bottom:8px;
}
/* ══ RESPONSIVE bento ══ */
@media(max-width:1100px){
  .wu-bento{grid-template-columns:repeat(2,1fr)}
  .wu-card--tall{grid-row:span 1}
  .wu-card--full{grid-column:span 2;flex-direction:column;gap:16px}
  .final-cta{padding:100px 40px}
}
@media(max-width:700px){
.wu-bento{grid-template-columns:1fr}
.wu-card--full{grid-column:1;flex-direction:column}
}
/* ── BENTO grid cards: depth refinement ── */
.wu-card{
  border-radius:18px;
  border:1px solid rgba(0,0,0,.05);
  box-shadow:0 1px 8px rgba(0,0,0,.04);
}
.wu-card:hover{
  transform:translateY(-6px) scale(1.012);
  box-shadow:0 24px 60px rgba(0,0,0,.09),0 0 0 1px rgba(139,0,0,.05);
}
.wu-card--accent:hover{
  box-shadow:0 24px 60px rgba(139,0,0,.3),0 0 0 1px rgba(139,0,0,.2);
}
/* ── WHY US - Bento refinement ── */
.wu-item{
  padding:52px 56px !important;
  gap:36px !important;
}
.wu-big{
  font-size:clamp(80px,8vw,110px) !important;
  color:rgba(139,0,0,.12) !important;
}
.wu-item:hover .wu-big{
  color:rgba(139,0,0,.22) !important;
}
.wu-name{
  font-size:clamp(20px,2vw,26px) !important;
  letter-spacing:-.3px !important;
  font-weight:600 !important;
}
.wu-note{
  font-size:15px !important;
  line-height:1.88 !important;
  color:#555 !important;
}
.wu-item:hover{
  box-shadow:0 20px 60px rgba(0,0,0,.07) !important;
}
@media(max-width:1100px){
.wu-item{ padding:36px 32px !important; }
}
