/* ═══ SERVICES PAGE ═══ */

/* ═══ SERVICES HERO ═══ */
#zxn .zx-shero{
  padding:clamp(10rem,18vh,14rem) 0 clamp(3.5rem,6vh,5rem);
  position:relative;overflow:hidden;background:var(--ink) !important;text-align:center;
}
#zxn .zx-shero-atmo{position:absolute;inset:0;z-index:0;
  background:
    radial-gradient(ellipse 55% 42% at 50% 0%,rgba(31,69,68,.65),transparent 65%),
    radial-gradient(ellipse 40% 32% at 82% 68%,rgba(215,181,122,.08),transparent 60%);
}
#zxn .zx-sgrid{position:absolute;inset:0;z-index:0;
  background-image:linear-gradient(rgba(215,181,122,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(215,181,122,.05) 1px,transparent 1px);
  background-size:56px 56px;
  mask-image:radial-gradient(ellipse 65% 60% at 50% 30%,black 15%,transparent 75%);
  -webkit-mask-image:radial-gradient(ellipse 65% 60% at 50% 30%,black 15%,transparent 75%);
}
#zxn .zx-shero-in{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}
#zxn .zx-shero .zx-display{margin:1.6rem 0 1.4rem !important;font-size:clamp(3rem,7.5vw,6.8rem) !important}
#zxn .zx-shero-sub{color:var(--ivdim) !important;font-size:clamp(1.05rem,1.5vw,1.2rem) !important;max-width:600px;line-height:1.75 !important}

/* ═══ FILTER CONSOLE ═══ */
#zxn .zx-console{
  position:sticky;top:81px;z-index:900;
  background:rgba(10,20,20,.92) !important;
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  padding:1.3rem 0;
}
#zxn .zx-console-in{display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap}
#zxn .zx-search{
  flex:1;min-width:230px;display:flex;align-items:center;gap:.8rem;
  border:1px solid var(--line);padding:.85rem 1.2rem;
  background:rgba(243,239,228,.02);transition:border-color .3s;
}
#zxn .zx-search:focus-within{border-color:var(--goldline)}
#zxn .zx-search svg{width:16px;height:16px;stroke:var(--ivmute);flex-shrink:0}
#zxn .zx-search input{
  flex:1;background:transparent !important;border:none !important;outline:none !important;
  font-family:var(--sans) !important;font-size:.9rem !important;color:var(--ivory) !important;
  letter-spacing:.02em;padding:0 !important;box-shadow:none !important;min-width:0;
}
#zxn .zx-search input::placeholder{color:var(--ivmute)}
#zxn .zx-pills{display:flex;gap:.6rem;flex-wrap:wrap}
#zxn .zx-pill{
  font-family:var(--sans) !important;font-size:.72rem !important;font-weight:700 !important;
  letter-spacing:.14em !important;text-transform:uppercase !important;
  color:var(--ivdim) !important;background:transparent !important;
  border:1px solid var(--line) !important;border-radius:0 !important;
  padding:.7rem 1.3rem !important;cursor:pointer;transition:all .3s var(--ease);
}
#zxn .zx-pill:hover{border-color:var(--goldline) !important;color:var(--ivory) !important}
#zxn .zx-pill.zx-on{background:var(--gold) !important;border-color:var(--gold) !important;color:#0A1414 !important}
#zxn .zx-count{
  font-family:var(--serif) !important;font-style:italic !important;
  font-size:.92rem !important;color:var(--ivmute) !important;white-space:nowrap;margin-left:auto;
}
#zxn .zx-count b{color:var(--gold) !important;font-weight:500}

/* ═══ SERVICES GRID ═══ */
#zxn .zx-sgrid-sec{padding:clamp(4rem,8vw,6.5rem) 0 clamp(5rem,9vw,7rem);background:var(--ink) !important;min-height:60vh}
#zxn .zx-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
#zxn .zx-card{
  position:relative;border:1px solid var(--line);background:var(--ink2) !important;
  padding:2.4rem 2.2rem;display:flex;flex-direction:column;overflow:hidden;
  transition:transform .45s var(--ease),opacity .45s var(--ease),border-color .4s,box-shadow .4s;
}
#zxn .zx-card::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(560px circle at var(--mx,50%) var(--my,50%),rgba(215,181,122,.08),transparent 45%);
  opacity:0;transition:opacity .4s;pointer-events:none;
}
#zxn .zx-card:hover::before{opacity:1}
#zxn .zx-card:hover{border-color:var(--goldline);transform:translateY(-6px);box-shadow:0 22px 46px rgba(0,0,0,.5)}
#zxn .zx-card.zx-hide{display:none}
#zxn .zx-card.zx-pop{animation:zxPop .5s var(--ease)}
@keyframes zxPop{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
#zxn .zx-card-img{position:relative;margin:-2.4rem -2.2rem 1.8rem;height:168px;overflow:hidden;background:var(--ink) !important}
#zxn .zx-card-img img{width:100%;height:100%;object-fit:cover;filter:grayscale(.3) brightness(.95) saturate(.95);transition:filter .5s var(--ease),transform .7s var(--ease)}
#zxn .zx-card-img::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,20,20,0) 58%,var(--ink2) 100%);pointer-events:none}
#zxn .zx-card.zx-feat .zx-card-img::after{background:linear-gradient(180deg,rgba(13,33,32,0) 58%,#0D2120 100%)}
#zxn .zx-card:hover .zx-card-img img{filter:grayscale(0) brightness(1.05) saturate(1.1);transform:scale(1.07)}
#zxn .zx-card-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.9rem}
#zxn .zx-ic{
  width:54px;height:54px;border:1px solid var(--goldline);background:var(--golddim);
  display:flex;align-items:center;justify-content:center;transition:all .4s;
}
#zxn .zx-ic svg{width:22px;height:22px;stroke:var(--gold);transition:all .4s}
#zxn .zx-card:hover .zx-ic{background:var(--gold);box-shadow:0 0 26px rgba(215,181,122,.35)}
#zxn .zx-card:hover .zx-ic svg{stroke:#0A1414}
#zxn .zx-cno{font-family:var(--serif) !important;font-style:italic !important;font-size:.95rem !important;color:var(--ivmute) !important;transition:color .3s}
#zxn .zx-card:hover .zx-cno{color:var(--gold) !important}
#zxn .zx-ccat{
  font-family:var(--sans) !important;font-size:9px !important;font-weight:800 !important;
  letter-spacing:.26em !important;text-transform:uppercase !important;color:var(--gold) !important;
  margin-bottom:.7rem !important;
}
#zxn .zx-ct{
  font-family:var(--serif) !important;font-weight:400 !important;font-size:1.5rem !important;
  line-height:1.15 !important;color:var(--ivory) !important;margin-bottom:.9rem !important;
  transition:color .3s;
}
#zxn .zx-card:hover .zx-ct{color:var(--goldhi) !important}
#zxn .zx-cd{font-size:.92rem !important;color:var(--ivdim) !important;line-height:1.7 !important;margin-bottom:1.8rem !important;flex:1}
#zxn .zx-tags{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.8rem}
#zxn .zx-tag{
  font-family:var(--sans) !important;font-size:.68rem !important;font-weight:700 !important;
  letter-spacing:.08em !important;color:var(--ivdim) !important;
  border:1px solid var(--line);padding:.35rem .85rem;transition:all .3s;
}
#zxn .zx-card:hover .zx-tag{border-color:rgba(215,181,122,.18)}
#zxn .zx-cgo{
  display:inline-flex;align-items:center;gap:.7rem;
  font-family:var(--sans) !important;font-size:.74rem !important;font-weight:800 !important;
  letter-spacing:.18em !important;text-transform:uppercase !important;color:var(--gold) !important;
  border-top:1px solid var(--line);padding-top:1.4rem;transition:gap .3s var(--ease);
}
#zxn .zx-card:hover .zx-cgo{gap:1.1rem}
#zxn .zx-cgo svg{width:15px;height:15px;stroke:var(--gold)}
#zxn .zx-clink{position:absolute;inset:0;z-index:5}

/* Featured card (spans 2) */
#zxn .zx-card.zx-feat{grid-column:span 2;background:linear-gradient(140deg,var(--green) 0%,#0D2120 70%) !important;border-color:var(--goldline)}

/* No results */
#zxn .zx-none{display:none;text-align:center;padding:5rem 1rem;border:1px dashed var(--line)}
#zxn .zx-none.zx-show{display:block}
#zxn .zx-none-t{font-family:var(--serif) !important;font-style:italic !important;font-size:1.6rem !important;color:var(--ivory) !important;margin-bottom:.8rem !important}
#zxn .zx-none-s{color:var(--ivmute) !important;font-size:.95rem !important}

/* ═══ CTA ═══ */
#zxn .zx-cta{padding:clamp(6rem,11vw,9rem) 0;border-top:1px solid var(--line);position:relative;overflow:hidden;background:var(--ink2) !important;text-align:center}
#zxn .zx-cta-glow{position:absolute;top:-160px;left:50%;transform:translateX(-50%);width:860px;height:430px;background:radial-gradient(ellipse,rgba(215,181,122,.13),transparent 70%);pointer-events:none}
#zxn .zx-cta-in{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}
#zxn .zx-cta .zx-display{margin:1.6rem 0 1.4rem !important}
#zxn .zx-cta-s{color:var(--ivdim) !important;font-size:1.1rem !important;max-width:520px;margin:0 auto 2.8rem !important;line-height:1.75 !important}
#zxn .zx-cta-b{display:flex;gap:1.1rem;justify-content:center;flex-wrap:wrap}

/* ═══ RESPONSIVE ═══ */
@media(max-width:1024px){
  #zxn .zx-cards{grid-template-columns:repeat(2,1fr)}
  #zxn .zx-card.zx-feat{grid-column:span 2}
}
@media(max-width:860px){
  #zxn .zx-nav-links,#zxn .zx-nav-cta{display:none}
  #zxn .zx-burger{display:flex}
  #zxn .zx-count{margin-left:0;width:100%}
  #zxn .zx-ft-top{flex-direction:column;text-align:center}
  #zxn .zx-ft-links{justify-content:center}
  #zxn .zx-ft-btm{flex-direction:column;text-align:center}
}
@media(max-width:640px){
  #zxn .zx-cards{grid-template-columns:1fr}
  #zxn .zx-card.zx-feat{grid-column:span 1}
  #zxn .zx-cta-b{flex-direction:column;width:100%}
  #zxn .zx-btn-gold,#zxn .zx-btn-ghost{justify-content:center;width:100%}
}
@media(prefers-reduced-motion:reduce){
  #zxn *,#zxn *::before,#zxn *::after{animation-duration:.01ms !important;transition-duration:.01ms !important}
}
