/* ══════════════════════════════════════════════
   premium.css — v8 premium polish (loaded last)
══════════════════════════════════════════════ */
html.lenis,html.lenis body{height:auto;}
.lenis.lenis-smooth{scroll-behavior:auto!important;}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain;}
html{scroll-behavior:auto;}

::selection{background:rgba(239,68,68,.35);color:#fff;}
::-webkit-scrollbar{width:10px;}
::-webkit-scrollbar-track{background:#070303;}
::-webkit-scrollbar-thumb{background:linear-gradient(#ef4444,#7f1d1d);border-radius:999px;border:2px solid #070303;}

/* Glass header refinement */
.site-header{
  backdrop-filter:saturate(180%) blur(18px);
  -webkit-backdrop-filter:saturate(180%) blur(18px);
  border-bottom:1px solid rgba(255,255,255,.06)!important;
}
.nav-link{transition:color .3s var(--ease),background .3s var(--ease),transform .3s var(--ease)!important;}
.nav-link:hover{transform:translateY(-1px);}

/* Admin nav button */
.nav-admin{
  border:1px solid rgba(239,68,68,.45)!important;
  background:linear-gradient(135deg,rgba(239,68,68,.18),rgba(249,115,22,.08))!important;
  border-radius:999px!important;
  box-shadow:0 0 0 0 rgba(239,68,68,.4);
  animation:adminPulse 3s ease-in-out infinite;
}
.nav-admin:hover{background:linear-gradient(135deg,#ef4444,#f97316)!important;color:#fff!important;}
@keyframes adminPulse{50%{box-shadow:0 0 18px 0 rgba(239,68,68,.35);}}

/* Cards: smoother premium hover */
.card,.skill-card,.stat-card,.contact-card,.glass-card{
  transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s cubic-bezier(.2,.8,.2,1),border-color .4s!important;
  will-change:transform;
}
.card:hover,.skill-card:hover,.stat-card:hover,.contact-card:hover{transform:translateY(-6px);}

/* Buttons */
.btn{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,background .35s!important;}
.btn:active{transform:scale(.97)!important;}

/* Smooth premium reveal */
.reveal-p{opacity:0;transform:translateY(28px);filter:blur(6px);
  transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1),filter .9s;}
.reveal-p.in{opacity:1;transform:none;filter:none;}

/* Responsive safety */
img,video,svg{max-width:100%;}
.container{width:100%;padding-left:max(var(--gutter,1rem),env(safe-area-inset-left));padding-right:max(var(--gutter,1rem),env(safe-area-inset-right));}
@media (max-width:900px){
  .nav-mobile .nav-admin{justify-content:center;}
  h1{font-size:clamp(2rem,8vw,3rem)!important;line-height:1.1!important;}
  h2{font-size:clamp(1.5rem,6vw,2.2rem)!important;}
}
@media (max-width:420px){
  .btn-row{flex-direction:column;align-items:stretch;}
  .btn-row .btn{width:100%;justify-content:center;}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;}
  .reveal-p{opacity:1;transform:none;filter:none;}
}

/* v9 — extra responsive polish */
html,body{max-width:100%;overflow-x:hidden;}
h1,h2,h3,p{overflow-wrap:break-word;}
@media (max-width:1024px){
  .hero-grid,.about-grid,.contact-grid{gap:2rem!important;}
}
@media (max-width:768px){
  .hero-grid,.about-grid,.contact-grid,.two-col{grid-template-columns:1fr!important;text-align:center;}
  .hero-content .hero-tags,.hero-content .btn-row,.hero-content .socials{justify-content:center;}
  .hero-photo-wrap{margin-inline:auto!important;}
  .skills-grid,.cards-grid,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.9rem!important;}
  .nav-mobile .nav-link{padding:.85rem 1rem!important;}
}
@media (max-width:480px){
  .skills-grid,.cards-grid,.grid-3{grid-template-columns:1fr!important;}
  .site-footer{text-align:center;}
  .brand-tag{display:none;}
}

/* ══════════════════════════════════════════════
   v10 — premium finish + phone smoothness
══════════════════════════════════════════════ */

/* Performance discipline: compositing hints where it matters */
.site-header,.back-to-top,.scroll-progress,.cursor-glow{will-change:transform;}
.particle,.aurora span,.marquee-track{will-change:transform,opacity;}
.hero-photo-frame{will-change:transform;}

/* Nav pill: gradient hairline */
.nav-desktop{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 30px -18px rgba(0,0,0,.8);
  background:linear-gradient(160deg,rgba(255,255,255,.045),rgba(255,255,255,.015))!important;
}
.nav-desktop .nav-link.active{
  background:linear-gradient(135deg,rgba(239,68,68,.3),rgba(249,115,22,.14))!important;
  box-shadow:0 6px 18px -8px rgba(239,68,68,.6),inset 0 1px 0 rgba(255,255,255,.12);
}

/* Hero badge + buttons: extra shine */
.badge{background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.02)),rgba(34,197,94,.06)!important;
  border:1px solid rgba(34,197,94,.28)!important;box-shadow:0 8px 24px -12px rgba(34,197,94,.4);}
.btn-primary{background-image:linear-gradient(135deg,#ef4444,#f97316 60%,#fbbf24)!important;background-size:160% auto;
  transition:background-position .6s var(--ease),transform .35s var(--ease),box-shadow .35s!important;}
.btn-primary:hover{background-position:right center;}

/* Section code labels with gradient text */
.section-code{background:linear-gradient(90deg,#f87171,#fb923c);-webkit-background-clip:text;background-clip:text;color:transparent;}

/* Journey cards: premium gradient hover */
.journey-card{position:relative;overflow:hidden;}
.journey-card::after{content:"";position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .5s var(--ease);
  background:radial-gradient(60% 90% at 85% 10%,rgba(239,68,68,.18),transparent 70%);}
.journey-card:hover::after{opacity:1;}
.journey-arrow{transition:transform .45s cubic-bezier(.34,1.56,.64,1);}
.journey-card:hover .journey-arrow{transform:translateX(6px);}

/* Tech marquee: gentler on the eye */
.marquee-track{animation-duration:34s;}
.tech-badge{box-shadow:inset 0 1px 0 rgba(255,255,255,.06);}

/* Footer glow line */
.footer-top-line{background:linear-gradient(90deg,transparent,#ef4444,#f97316,#fbbf24,transparent)!important;
  height:2px!important;filter:drop-shadow(0 0 10px rgba(239,68,68,.55));}

/* Page fade-in on load */
body{animation:pageIn .6s ease both;}
@keyframes pageIn{from{opacity:0}to{opacity:1}}
body.is-leaving{opacity:0;transition:opacity .22s ease;}

/* Phone smoothness: lighter blurs, fewer compositing layers */
@media (max-width:768px){
  .site-header{backdrop-filter:blur(10px) saturate(150%)!important;-webkit-backdrop-filter:blur(10px) saturate(150%)!important;}
  .nav-mobile{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);}
  .aurora span{filter:blur(28px);}
  .marquee-track{animation-duration:40s;}
  .card,.skill-card,.stat-card,.contact-card{will-change:auto;}
  .hero-photo-frame{will-change:auto;}
}
@media (max-width:480px){
  .socials{gap:.7rem;}
  .hero-tags{gap:.45rem;}
}

/* Respect reduced motion fully */
@media (prefers-reduced-motion:reduce){
  body{animation:none;}
  .reveal-p{opacity:1;transform:none;filter:none;}
}
