/* HOLZCOM V72 site effects — subtle HC_DIZ extraction */
.hz-cursor-glow{position:fixed;left:0;top:0;width:420px;height:420px;border-radius:50%;pointer-events:none;z-index:120;background:radial-gradient(circle,rgba(196,168,122,.18) 0%,rgba(196,168,122,.10) 28%,rgba(180,202,232,.08) 46%,rgba(180,202,232,0) 72%);filter:blur(18px);opacity:0;transform:translate3d(-50%,-50%,0);transition:opacity .28s ease;mix-blend-mode:screen}
body.hz-fine-pointer .hz-cursor-glow{opacity:.72}

.hdr{background:rgba(248,246,243,.52)!important;backdrop-filter:blur(22px)!important;border-bottom-color:rgba(26,23,20,.04)!important}
.hdr.is-scrolled{background:rgba(248,246,243,.78)!important;border-bottom-color:rgba(26,23,20,.08)!important;box-shadow:0 12px 30px rgba(26,23,20,.06)!important}
.hdr__cta,.btn--ghost,.btn--glass{background:rgba(255,255,255,.56);backdrop-filter:blur(18px);border:1px solid rgba(26,23,20,.10);box-shadow:0 8px 24px rgba(26,23,20,.05)}
.hdr__cta:hover,.btn--ghost:hover,.btn--glass:hover{background:rgba(255,255,255,.78);border-color:rgba(26,23,20,.16);box-shadow:0 12px 28px rgba(26,23,20,.08)}
.btn--glass{color:var(--ink);text-decoration:none}
.hero__split-ctas{display:flex;gap:10px;flex-wrap:wrap}
.hero__split-ctas .btn{min-width:136px}

.btn--primary,.btn--accent,.calc__cta-big{position:relative;overflow:hidden;isolation:isolate}
.btn--primary::before,.btn--accent::before,.calc__cta-big::before{content:"";position:absolute;top:-140%;left:-34%;width:42%;height:360%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.30),transparent);transform:translateX(-220%) rotate(16deg);transition:transform .82s ease;pointer-events:none;z-index:0}
.btn--primary:hover::before,.btn--accent:hover::before,.calc__cta-big:hover::before{transform:translateX(360%) rotate(16deg)}
.btn--primary>*,.btn--accent>*,.calc__cta-big>*{position:relative;z-index:1}

.hz-fx-magnetic{transform:translate3d(var(--hz-mx,0),var(--hz-my,0),0) rotateX(var(--hz-tilt-x,0deg)) rotateY(var(--hz-tilt-y,0deg));transform-style:preserve-3d;will-change:transform;transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s ease,border-color .28s ease,background .28s ease}
.btn.hz-fx-magnetic:hover,.dock__btn.hz-fx-magnetic:hover,.hdr__cta.hz-fx-magnetic:hover,.contact-chip.hz-fx-magnetic:hover{transform:translate3d(var(--hz-mx,0),calc(var(--hz-my,0) - 2px),0) rotateX(var(--hz-tilt-x,0deg)) rotateY(var(--hz-tilt-y,0deg))}
.catalog-card.hz-fx-magnetic:hover,.blog-card.hz-fx-magnetic:hover,.trust-card.hz-fx-magnetic:hover,.case-card.hz-fx-magnetic:hover,.review-card.hz-fx-magnetic:hover,.contact-panel.hz-fx-magnetic:hover,.contact-map-card.hz-fx-magnetic:hover,.contact-form.hz-fx-magnetic:hover,.contact-form__assist-item.hz-fx-magnetic:hover,.dir.hz-fx-magnetic:hover,.detail-panel.hz-fx-magnetic:hover,.detail-photo.hz-fx-magnetic:hover{transform:translate3d(var(--hz-mx,0),calc(var(--hz-my,0) - 5px),0) rotateX(var(--hz-tilt-x,0deg)) rotateY(var(--hz-tilt-y,0deg));box-shadow:0 20px 42px rgba(26,23,20,.10)}

.hz-fx-reveal{opacity:.001;transform:translateY(18px) scale(.99);transition:opacity .62s cubic-bezier(.22,1,.36,1),transform .62s cubic-bezier(.22,1,.36,1)}
.hz-fx-reveal.is-in{opacity:1;transform:none}

.hz-fx-media{overflow:hidden}
.hz-fx-media img{transform:translateY(var(--hz-parallax-y,0px)) scale(1.012);transition:transform .62s ease,filter .35s ease;will-change:transform}
.hz-fx-media:hover img{transform:translateY(var(--hz-parallax-y,0px)) scale(1.045)}
.hero__visual.hz-fx-media .hv-photo img,.hero__visual.hz-fx-media .hv-gi img{filter:brightness(.97) saturate(1.02) contrast(1.01)}
.hero__visual.hz-fx-media:hover .hv-photo img,.hero__visual.hz-fx-media:hover .hv-gi img{filter:brightness(1.03) saturate(1.04) contrast(1.02)}
.blog-card__img.hz-fx-media img,.catalog-card__img.hz-fx-media img,.detail-photo.hz-fx-media img,.dir__visual-img.hz-fx-media img{filter:brightness(.98) saturate(1.02)}
.blog-card__img.hz-fx-media:hover img,.catalog-card__img.hz-fx-media:hover img,.detail-photo.hz-fx-media:hover img,.dir__visual-img.hz-fx-media:hover img{filter:brightness(1.04) saturate(1.04)}

.contact-panel,.contact-map-card,.contact-form,.detail-panel{position:relative;overflow:hidden}
.contact-panel::before,.contact-map-card::before,.contact-form::before,.detail-panel::before{content:"";position:absolute;inset:auto -16% -34% auto;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(196,168,122,.14),rgba(196,168,122,0) 72%);pointer-events:none;opacity:.88}
.contact-panel::after,.contact-map-card::after,.contact-form::after,.detail-panel::after{content:"";position:absolute;inset:0 auto auto 0;height:1px;width:100%;background:linear-gradient(90deg,rgba(255,255,255,.84),rgba(255,255,255,0));pointer-events:none}
.contact-panel:hover,.contact-map-card:hover,.contact-form:hover,.detail-panel:hover{border-color:rgba(196,168,122,.18);box-shadow:0 24px 60px rgba(26,23,20,.10)}
.contact-form__assist-item{position:relative;overflow:hidden}
.contact-form__assist-item::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.18),transparent 55%);opacity:0;transition:opacity .24s ease;pointer-events:none}
.contact-form__assist-item:hover::after{opacity:1}

.dock{transition:opacity .32s ease,transform .32s ease}
.dock:not(.is-visible){transform:translateX(-50%) translateY(18px)}
body.hz-footer-dock-guard .dock{opacity:0!important;pointer-events:none!important;transform:translateX(-50%) translateY(20px)!important}

.hero__visual,.blog-card,.catalog-card,.review-card,.case-card,.trust-card,.contact-panel,.contact-map-card,.contact-form,.contact-form__assist-item,.dir,.detail-panel,.detail-photo{backface-visibility:hidden}

.dock__btn svg,.trust-card__icon svg,.contact-chip svg,.detail-kicker svg{transform-origin:center;transition:transform .24s ease,filter .24s ease}
.dock__btn:hover svg,.trust-card:hover .trust-card__icon svg,.contact-chip:hover svg{animation:hzIconPulse .75s ease}
.hero__dot{animation:hzIconPulse 4.8s ease-in-out infinite}
@keyframes hzIconPulse{0%{transform:scale(1);filter:none}50%{transform:scale(1.08);filter:drop-shadow(0 0 8px rgba(196,168,122,.14))}100%{transform:scale(1);filter:none}}

@media (max-width:920px){
  .hero__split-ctas{width:100%;flex-direction:column}
  .hero__split-ctas .btn{width:100%;justify-content:center}
}

@media (prefers-reduced-motion: reduce){
  .hz-cursor-glow,.btn--primary::before,.btn--accent::before,.calc__cta-big::before{display:none!important}
  .hz-fx-magnetic,.btn.hz-fx-magnetic:hover,.dock__btn.hz-fx-magnetic:hover,.hdr__cta.hz-fx-magnetic:hover,.contact-chip.hz-fx-magnetic:hover,.catalog-card.hz-fx-magnetic:hover,.blog-card.hz-fx-magnetic:hover,.trust-card.hz-fx-magnetic:hover,.case-card.hz-fx-magnetic:hover,.review-card.hz-fx-magnetic:hover,.contact-panel.hz-fx-magnetic:hover,.contact-map-card.hz-fx-magnetic:hover,.contact-form.hz-fx-magnetic:hover,.contact-form__assist-item.hz-fx-magnetic:hover,.dir.hz-fx-magnetic:hover,.detail-panel.hz-fx-magnetic:hover,.detail-photo.hz-fx-magnetic:hover{transform:none!important}
  .hz-fx-reveal{opacity:1!important;transform:none!important}
  .hz-fx-media img{transform:none!important}
  .hero__dot{animation:none!important}
}
