/* ===== Space D polish layer (shared) ===== */
:root{--pz-e:cubic-bezier(.2,.7,.2,1)}
.pz-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:9999;background:linear-gradient(90deg,var(--pz-a),var(--pz-a2));transform-origin:0 50%;transform:scaleX(0);pointer-events:none;opacity:.85}
html.pz{scroll-behavior:smooth}
html.pz body{overflow-x:clip}
html.pz .rv{transition:opacity .85s var(--pz-e),transform .95s var(--pz-e),filter 1s var(--pz-e);transition-delay:var(--d,0s)}
html.pz .rv:not(.in){transform:translateY(26px)}
html.pz .rv.pz-done{transition:opacity .6s var(--pz-e),transform .6s var(--pz-e),border-color .4s,box-shadow .5s var(--pz-e),background-color .4s;transition-delay:0s}
html.pz h2.rv{transition:opacity .9s var(--pz-e),transform 1s var(--pz-e),filter 1.1s var(--pz-e);transition-delay:var(--d,0s)}
html.pz h2.rv:not(.in){filter:blur(7px)}
html.pz img.pz-img{clip-path:inset(6% 4% 6% 4%);scale:1.08;transition:clip-path 1.4s var(--pz-e),scale 2s var(--pz-e),transform 1.2s var(--pz-e),filter .7s ease}
html.pz img.pz-img.pz-in{clip-path:inset(0 0 0 0);scale:1}
/* button sheen: a soft light sweep on hover */
.btn{position:relative;overflow:hidden;isolation:isolate}
html.pz .btn:after{content:"";position:absolute;top:-10%;bottom:-10%;left:-70%;width:45%;background:linear-gradient(100deg,transparent,var(--pz-sheen,rgba(255,255,255,.32)),transparent);transform:skewX(-20deg);pointer-events:none;z-index:1}
html.pz .btn:hover:after{transform:skewX(-20deg) translateX(480%);transition:transform 1.05s var(--pz-e)}
@keyframes pzkbs{from{scale:1}to{scale:1.045}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pz-progress{transition:none}img.pz-img{clip-path:none!important;scale:1!important}}

/* ===== Ironvale — site tuning ===== */
:root{--pz-a:#ff5a1f;--pz-a2:#ffc21a;--pz-sheen:rgba(255,255,255,.3)}
.hero-bg{animation:pzkbs 20s ease-in-out infinite alternate}
.nav-in{transition:height .5s var(--pz-e)}
.nav.scrolled .nav-in{height:62px}
.links a:after{transition:width .5s var(--pz-e)}
.btn{transition:transform .45s var(--pz-e),box-shadow .45s var(--pz-e),background .3s,border-color .3s,color .3s}
.plan{transition:transform .8s var(--pz-e),border-color .4s,box-shadow .8s var(--pz-e)}
.plan.pz-done:hover{transform:translateY(-6px);box-shadow:0 34px 60px -34px rgba(0,0,0,.9)}
.rev{transition:transform .8s var(--pz-e),border-color .4s}.rev.pz-done:hover{transform:translateY(-4px)}
.imgstack .b{transition:transform 1s var(--pz-e)}.imgstack:hover .b{transform:translateY(-6px)}
.imgstack img{transition:clip-path 1.4s var(--pz-e),scale 2s var(--pz-e),transform .2s linear}
.sv{transition:background .4s var(--pz-e)}
footer .pz-note{margin-top:14px;font-size:.8rem;color:#7c858f;letter-spacing:.04em}
