/* MAG Engineering Polish. Complements the existing cinematic.css / cinematic.js.
   No dependencies, no carousel transforms, reduced-motion safe. */
.design-v2.portfolio-home .hero-grid::before {
  content:""; position:absolute; inset:-8% -5%; z-index:-1; pointer-events:none;
  background-image:linear-gradient(#c3dcff17 1px,transparent 1px),linear-gradient(90deg,#c3dcff17 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(90deg,transparent,#000 34%,#000 88%,transparent);
  opacity:.52;
}
.design-v2.portfolio-home .engineering-purpose {
  max-width:40ch; margin:12px 0 25px;
  color:#e7effc; font:500 clamp(15px,1.55vw,18px)/1.6 Inter,Arial,sans-serif;
  letter-spacing:-.015em; text-wrap:pretty;
}
.design-v2.portfolio-home #home .hero-actions {position:relative;z-index:2;}
.design-v2.portfolio-home #home .hero-actions .btn {position:relative;overflow:hidden;isolation:isolate;}
.design-v2.portfolio-home #home .hero-actions .btn::after {
  content:"";pointer-events:none;position:absolute;inset:0;z-index:-1;
  background:linear-gradient(115deg,transparent 18%,#ffffff38 49%,transparent 78%);
  transform:translateX(-145%);transition:transform .75s cubic-bezier(.22,.8,.25,1);
}
.design-v2.portfolio-home #home .hero-actions .btn:hover::after,
.design-v2.portfolio-home #home .hero-actions .btn:focus-visible::after {transform:translateX(145%);}
.design-v2.portfolio-home #projects .project-media {position:relative;isolation:isolate;}
.design-v2.portfolio-home #projects .project-media::after {
  content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background:radial-gradient(250px circle at var(--ep-x,50%) var(--ep-y,50%),#86bfff42,transparent 76%);
  opacity:0;transition:opacity .25s ease;
}
.design-v2.portfolio-home #projects .project-card:hover .project-media::after,
.design-v2.portfolio-home #projects .project-card:focus-visible .project-media::after {opacity:1;}
.design-v2.portfolio-home #skills .skill-row {transition:background .3s ease,padding-left .3s ease;}
@media(hover:hover) and (pointer:fine) {
  .design-v2.portfolio-home #skills .skill-row:hover {padding-left:18px;}
}
.design-v2.portfolio-home #contact a.contact-link {transition:background .25s,border-color .25s,padding-left .3s;}
.design-v2.portfolio-home #contact a.contact-link:hover {
  background:linear-gradient(90deg,#78b4fa13,transparent 65%);padding-left:10px;
}
@media(max-width:860px) {
 .design-v2.portfolio-home .hero-grid::before {opacity:.2; background-size:42px 42px;}
 .design-v2.portfolio-home .engineering-purpose {font-size:15px;max-width:34ch;margin-bottom:18px;}
}
@media(max-width:640px) {
 .design-v2.portfolio-home .hero-grid::before {display:none;}
 .design-v2.portfolio-home #skills .skill-row:hover {padding-left:10px;}
 .design-v2.portfolio-home #contact a.contact-link:hover {padding-left:0;}
}
@media(prefers-reduced-motion:reduce){
 .design-v2.portfolio-home .hero-actions .btn::after {display:none;}
 .design-v2.portfolio-home #projects .project-media::after {display:none;}
 .design-v2.portfolio-home #skills .skill-row,.design-v2.portfolio-home #contact a.contact-link {transition:none;}
}
