/* UZ Design 3D: visual layer over the UZ Store theme. Remove the sandbox file uz-design-3d.php to return to the previous design. */
:root{--r-btn:999px;--r:14px;--shadow:0 22px 50px -22px rgba(0,0,0,.78),0 6px 14px -8px rgba(0,0,0,.5);--uz-gold:#D4AF37;--uz-gold2:#F1DC9A;--uz-gold3:#A8841F;--uz-glow:rgba(212,175,55,.3)}

/* Buttons: gold depth, lift on hover */
.btn,.button,.single_add_to_cart_button{transition:transform .25s var(--ease,ease),box-shadow .25s,filter .25s}
.btn--primary,.single_add_to_cart_button,.add_to_cart_button,.pc__btn,.button.alt{background-image:linear-gradient(135deg,var(--uz-gold2) 0%,var(--uz-gold) 48%,var(--uz-gold3) 100%);box-shadow:0 12px 26px -12px rgba(212,175,55,.7),inset 0 1px 0 rgba(255,255,255,.38)}
.btn:hover,.button:hover,.single_add_to_cart_button:hover{transform:translateY(-2px);filter:brightness(1.07)}
.btn:active,.button:active{transform:translateY(0)}
input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px rgba(212,175,55,.25)}

/* Header and sections */
.site-header{border-bottom:1px solid rgba(212,175,55,.22);transition:box-shadow .3s}
body.uz3d-scrolled .site-header{box-shadow:0 16px 34px -18px rgba(0,0,0,.85)}
.section{position:relative}
.section+.section::before{content:"";position:absolute;top:0;left:50%;width:min(520px,60%);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(212,175,55,.5),transparent);pointer-events:none}
.uz3d-progress{position:fixed;top:0;left:0;width:100%;height:2px;transform-origin:0 50%;transform:scaleX(var(--p,0));background:linear-gradient(90deg,var(--uz-gold3),var(--uz-gold2),var(--uz-gold));z-index:9999;pointer-events:none}

/* Hero depth */
.slide__img{will-change:transform;transition:transform .9s var(--ease,ease-out)}

/* Product cards and category tiles: 3D tilt, glow */
.product-card,.cat-tile,.uz3d-step{transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .25s ease-out,box-shadow .35s,border-color .35s;position:relative}
.product-card{border-radius:var(--r);background:linear-gradient(160deg,var(--c-surface),color-mix(in srgb,var(--c-surface) 86%,#D4AF37 7%));border:1px solid var(--c-line);box-shadow:var(--shadow)}
.pc__media{border-radius:var(--r) var(--r) 0 0;overflow:hidden}
.cat-tile{border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden}
.product-card:hover,.cat-tile:hover,.uz3d-step:hover{border-color:rgba(212,175,55,.55);box-shadow:0 30px 60px -26px rgba(0,0,0,.92),0 0 0 1px rgba(212,175,55,.22),0 0 38px -8px var(--uz-glow)}
.product-card:after,.uz3d-step:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(260px circle at var(--mx,50%) var(--my,0%),rgba(241,220,154,.16),transparent 62%);opacity:0;transition:opacity .3s}
.product-card:hover:after,.uz3d-step:hover:after{opacity:1}

/* Single product gallery */
.woocommerce-product-gallery{border-radius:var(--r)}
.woocommerce-product-gallery__image img{border-radius:var(--r)}

/* New homepage sections */
.uz3d-stage{overflow:hidden}
.uz3d-stage:before{content:"";position:absolute;right:-8%;top:-20%;width:60vw;height:60vw;max-width:760px;max-height:760px;background:radial-gradient(circle,rgba(212,175,55,.2),transparent 62%);pointer-events:none}
.uz3d-stage__row,.uz3d-two{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;position:relative}
.uz3d-stage__copy p,.uz3d-two p{color:var(--c-muted);max-width:30em}
.uz3d-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.uz3d-art{height:500px;display:grid;place-items:center;perspective:1100px;position:relative}
.uz3d-ring{position:absolute;top:56%;width:350px;height:350px;border-radius:50%;border:1px solid var(--uz-gold);transform:rotateX(72deg);box-shadow:0 0 60px rgba(212,175,55,.4),inset 0 0 40px rgba(212,175,55,.26)}
.uz3d-ring--2{width:240px;height:240px;opacity:.6}
.uz3d-floor{position:absolute;bottom:42px;width:230px;height:36px;border-radius:50%;background:radial-gradient(rgba(0,0,0,.7),transparent 70%);filter:blur(6px)}
.uz3d-scene{position:relative;width:140px;height:230px;transform-style:preserve-3d;animation:uz3d-spin 16s linear infinite}
.uz3d-art:hover .uz3d-scene{animation-play-state:paused}
@keyframes uz3d-spin{from{transform:rotateX(-8deg) rotateY(0)}to{transform:rotateX(-8deg) rotateY(360deg)}}
.uz3d-part{position:absolute;transform-style:preserve-3d}
.uz3d-face{position:absolute}
.uz3d-glass{background:linear-gradient(100deg,rgba(255,255,255,.34),rgba(255,255,255,0) 28%,rgba(255,255,255,0) 66%,rgba(255,255,255,.2)),linear-gradient(180deg,#e1b25a,#6e3a10);border:1px solid rgba(255,235,190,.55);opacity:.93}
.uz3d-gold{background:linear-gradient(110deg,#f5dd9c,#b8872b 45%,#7c5614 70%,#e9c46f);border:1px solid rgba(255,235,190,.5)}
.uz3d-defs{display:grid;gap:14px;margin-top:22px}
.uz3d-defs p{border-left:2px solid var(--uz-gold);padding-left:16px;margin:0}
.uz3d-defs b{color:var(--c-primary);font-weight:600}
.uz3d-layers{perspective:1000px;height:380px;display:grid;place-items:center}
.uz3d-stack{position:relative;width:250px;height:250px;transform-style:preserve-3d;transform:rotateX(58deg) rotateZ(-32deg);transition:transform .7s}
.uz3d-layers:hover .uz3d-stack{transform:rotateX(50deg) rotateZ(-18deg)}
.uz3d-lay{position:absolute;inset:0;border-radius:18px;border:1px solid var(--uz-gold);display:flex;align-items:flex-end;padding:14px 16px;font-family:var(--f-head);font-size:24px;font-weight:600;color:var(--c-primary);background:linear-gradient(135deg,rgba(212,175,55,.34),rgba(21,18,15,.62));box-shadow:0 22px 40px -20px rgba(0,0,0,.85);transition:transform .7s}
.uz3d-lay:nth-child(2){transform:translateZ(56px)}.uz3d-lay:nth-child(3){transform:translateZ(112px)}
.uz3d-layers:hover .uz3d-lay:nth-child(2){transform:translateZ(90px)}.uz3d-layers:hover .uz3d-lay:nth-child(3){transform:translateZ(180px)}
.uz3d-head{max-width:560px;margin-bottom:44px}
.uz3d-head p{color:var(--c-muted)}
.uz3d-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;list-style:none;margin:0;padding:0}
.uz3d-step{border:1px solid var(--c-line);border-radius:18px;padding:26px;background:var(--c-surface)}
.uz3d-step b{font-family:var(--f-head);font-size:40px;color:var(--uz-gold);display:block;line-height:1}
.uz3d-step h3{font-size:1.5rem;margin:10px 0 6px}
.uz3d-step p{color:var(--c-muted);font-size:.95rem;margin:0}

@media (max-width:900px){.uz3d-stage__row,.uz3d-two{grid-template-columns:1fr}.uz3d-art{height:380px}.uz3d-steps{grid-template-columns:1fr 1fr}.uz3d-layers{height:320px}}
@media (max-width:600px){.uz3d-steps{grid-template-columns:1fr}.uz3d-ring{width:280px;height:280px}}
@media (prefers-reduced-motion:reduce){.uz3d-scene{animation:none;transform:rotateX(-8deg) rotateY(-28deg)}.uz3d-stack,.uz3d-lay,.product-card,.cat-tile,.uz3d-step,.slide__img{transition:none}}
