/* Krishva website v2.9 polish layer: same dark brand, a little more premium. Loaded after every other stylesheet.
   Softer glass cards with an accent edge on hover, calmer spacing on phones, 44px tap targets, clear focus rings, smooth rise-in for cards
   that had no animation yet. Respects prefers-reduced-motion. No layout changes to existing sections. */
:root{--kg29-edge:rgba(160,110,255,.45);--kg29-glass:rgba(255,255,255,.035);--kg29-ease:cubic-bezier(.2,.7,.2,1)}
.svc-card,.work-card,.post-card,.price-card,.stack-card,.aside-card,.form-card{transition:transform .35s var(--kg29-ease),border-color .35s,box-shadow .35s,background-color .35s}
@media (hover:hover){
  .svc-card:hover,.work-card:hover,.post-card:hover,.price-card:hover,.stack-card:hover{transform:translateY(-4px);border-color:var(--kg29-edge);box-shadow:0 18px 50px -24px rgba(123,0,255,.55),0 0 0 1px rgba(123,0,255,.18) inset}
}
.post-card img,.work-card img{transition:transform .6s var(--kg29-ease)}
@media (hover:hover){.post-card:hover img,.work-card:hover img{transform:scale(1.03)}}
.form-card,.aside-card{background-color:var(--kg29-glass)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #b48cff;outline-offset:3px;border-radius:10px}
input,select,textarea{transition:border-color .2s,box-shadow .2s}
input:focus,select:focus,textarea:focus{box-shadow:0 0 0 4px rgba(123,0,255,.22)}
.btn,.button,button[type=submit]{transition:transform .15s var(--kg29-ease),box-shadow .25s,background-color .25s,border-color .25s}
.btn:active,.button:active,button[type=submit]:active{transform:scale(.97)}
.site-header.is-scrolled .nav{box-shadow:0 12px 40px -20px rgba(0,0,0,.8)}
::selection{background:rgba(123,0,255,.55);color:#fff}
@media (max-width:640px){
  h1{letter-spacing:-.02em}
  h2{font-size:clamp(1.55rem,1.1rem + 2.6vw,2.1rem);line-height:1.15}
  .svc-card,.work-card,.post-card,.price-card,.stack-card{border-radius:20px}
  .btn,.button{min-height:46px}
  .nav a,.mobile-menu a{min-height:44px;display:flex;align-items:center}
  section{scroll-margin-top:84px}
}
@media (prefers-reduced-motion:no-preference){
  .kg29-rise{opacity:0;transform:translateY(22px)}
  .kg29-rise.is-in{opacity:1;transform:none;transition:opacity .7s var(--kg29-ease),transform .7s var(--kg29-ease)}
}
