/* Prince Desire — enhancement layer (loaded after style.css)
   scroll reveal · button effects · card polish · stat hover · mobile alignment */

/* 1. Scroll reveal (JS adds .pd-reveal then .is-in) */
@media (prefers-reduced-motion:no-preference){
  .pd-reveal{opacity:0;transform:translateY(26px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1);will-change:opacity,transform}
  .pd-reveal.is-in{opacity:1;transform:none}
  .pd-site.motion-off .pd-reveal{opacity:1;transform:none;transition:none}
}

/* 2. Buttons — light sweep + pointer glow + lift */
.pill{position:relative;overflow:hidden;isolation:isolate}
.pill::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,transparent 30%,#ffffff38 50%,transparent 70%);transform:translateX(-130%);transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.pill:hover::before{transform:translateX(130%)}
.pill::after{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at var(--px,50%) var(--py,50%),#ffffff2a,transparent 60%);opacity:0;transition:opacity .3s}
.pill:hover::after{opacity:1}
.pill:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 28px #0003}
.pill--red:hover{box-shadow:0 12px 30px #ff203545}
.pill--white:hover{box-shadow:0 12px 28px #ffffff45}
.pill .icon{transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.pill:hover .icon{transform:translateX(4px)}
.icon-button{transition:background .2s,transform .2s,box-shadow .2s}
.icon-button:hover{box-shadow:0 0 0 4px #ffffff10}
.desktop-nav a:hover,.desktop-nav button:hover{color:#dffaff}

/* 3. Cards */
.work-card{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s;will-change:transform}
.work-card:hover{transform:translateY(-6px) scale(1.015);box-shadow:0 22px 44px -18px #0007}
.work-card img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.work-card:hover img{transform:scale(1.06)}
.service-card:hover{box-shadow:0 18px 36px -16px #0008}
.feature-card{transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.feature-card:hover{transform:translateY(-3px)}
.closing-services button{transition:transform .3s cubic-bezier(.2,.7,.2,1),background .3s,box-shadow .3s}
.closing-services button:hover{transform:translateY(-4px);background:#ffffff22;box-shadow:0 16px 32px -14px #000b}
.story-portrait:hover{box-shadow:0 0 35px #74bfe466,0 0 60px #e8a77744}

/* 4. Stats */
.impact-stats>div{transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.impact-stats>div:hover{transform:translateY(-3px)}
.impact-stats dt{transition:color .3s}
.impact-stats>div:hover dt{color:#8ef1ff}

/* 5. Mobile alignment polish */
@media (max-width:700px){
  .pill{min-height:44px}
  .impact-stats{text-align:center}
  .pill:hover{transform:none}
}

/* 6. Industries & Expertise — clickable with hover motion */
.industries li{list-style:none}
.ind-link{display:inline-flex;align-items:center;gap:10px;padding:6px 0;color:inherit;text-decoration:none;position:relative;transition:color .25s,transform .3s cubic-bezier(.2,.7,.2,1)}
.ind-link::after{content:'';position:absolute;left:0;bottom:2px;height:1px;width:100%;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.2,.7,.2,1);opacity:.6}
.ind-link .icon{width:16px;height:16px;opacity:0;transform:translateX(-6px);transition:opacity .25s,transform .3s cubic-bezier(.2,.7,.2,1)}
.ind-link:hover,.ind-link:focus-visible{color:#0b5c4d;transform:translateX(6px)}
.ind-link:hover::after,.ind-link:focus-visible::after{transform:scaleX(1)}
.ind-link:hover .icon,.ind-link:focus-visible .icon{opacity:1;transform:translateX(0)}
.ind-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
