/* Clearer navigation, readable service terms, and restrained interaction feedback. */
.header{position:sticky;top:12px;z-index:20;backdrop-filter:blur(18px);background:#ffffffed;border-color:#e0e9f0}
.languages button{min-width:44px;min-height:44px;font-size:14px}
.header nav a{position:relative;padding-block:8px}
.header nav a:after{content:'';position:absolute;bottom:2px;inset-inline:0;height:2px;background:var(--accent);transform:scaleX(0);transition:transform .25s}
.header nav a:hover:after,.header nav a:focus-visible:after{transform:scaleX(1)}
.service-card,.project{transition:transform .25s,box-shadow .25s,border-color .25s}
.service-bottom{gap:20px;flex-wrap:wrap;margin-top:22px}
.service-cta{font-size:14px;min-height:48px;padding:10px 18px;text-align:center}
.fine{font-size:14px!important;line-height:1.9}
.step p,.project-bottom small,.price span{font-size:14px}
.project-bottom strong{font-size:16px}
.feature-overview .button{margin-top:4px}
.button:active{transform:scale(.98)}
.portrait-frame img{transition:transform .7s cubic-bezier(.2,.7,.2,1)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  .service-card:hover,.project:hover{transform:translateY(-5px);border-color:#afcce1;box-shadow:0 14px 35px #2d466512}
  .portrait-frame:hover img{transform:scale(1.035)}
  .project:hover .project-screenshot img{transform:scale(1.035)}
}
@media(max-width:720px){
  .header{top:6px}
  .projects{grid-template-columns:1fr;gap:22px}
  .project,.project:nth-child(n+4),.project:last-child{grid-column:span 1}
  .project-bottom{padding:18px}
  .service-cta{width:100%}
  .steps{grid-template-columns:1fr;gap:22px}
  .step{padding-top:18px}
  html{scroll-padding-top:145px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation:none!important;transition:none!important}
  .button:hover,.button:active,.project:hover,.project:hover img{transform:none}
}
