a.service-tile { text-decoration: none; color: inherit; }

.page-main { padding-top: calc(var(--nav-h) + 48px); }
.request-layout {
  display: grid;
  gap: 2rem;
}
@media (min-width: 960px) {
  .request-layout { grid-template-columns: 0.9fr 1.1fr; align-items: start; }
}
.request-aside h1 {
  margin: 0 0 0.75rem;
  font-size: clamp(1.8rem, 3vw, 2.4rem);
  color: var(--sky);
}
.request-aside-points {
  display: grid;
  gap: 0.65rem;
  margin: 1.25rem 0 1.5rem;
  color: var(--ink-soft);
  font-weight: 600;
}
.request-aside-points li { padding-inline-start: 0.2rem; }
.request-form {
  padding: 1.5rem;
  border-radius: 24px;
  border: 1px solid rgba(140,163,194,.25);
  background: rgba(15,39,72,.75);
}
.form-errors {
  padding: 0.85rem 1rem;
  border-radius: 12px;
  background: rgba(255, 80, 100, 0.12);
  border: 1px solid rgba(255, 120, 140, 0.35);
  color: #ffb4c0;
}
.form-errors p { margin: 0.2rem 0; }

.blog-grid {
  display: grid;
  gap: 1rem;
}
@media (min-width: 800px) {
  .blog-grid { grid-template-columns: repeat(2, 1fr); }
}
.blog-card {
  display: grid;
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid var(--line-soft);
  background: rgba(15,39,72,.55);
  transition: border-color .2s, transform .2s var(--ease);
  cursor: pointer;
}
.blog-card:hover { border-color: rgba(51,181,255,.45); }
.blog-card__cover {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  background: linear-gradient(135deg, rgba(51,181,255,.25), rgba(79,107,255,.3));
}
.blog-card__cover--empty { min-height: 160px; }
.blog-card__body { padding: 1.2rem 1.3rem 1.4rem; display: grid; gap: .55rem; }
.blog-card__body time { color: var(--teal); font-size: .82rem; font-weight: 700; }
.blog-card__body h2 { font-size: 1.25rem; color: var(--ink); }
.blog-card__body p { color: var(--mute); font-size: .95rem; }
.blog-card .go { color: var(--teal); font-weight: 700; font-size: .9rem; }

.post-article { max-width: 760px; }
.post-date { display: block; margin: 0 0 1.5rem; color: var(--mute); }
.post-cover {
  width: 100%;
  border-radius: 20px;
  margin-bottom: 1.5rem;
  border: 1px solid var(--line-soft);
}
.post-body {
  color: var(--ink-soft);
  font-size: 1.08rem;
  line-height: 1.85;
}
.post-body p { margin: 0 0 1rem; }

.thanks-box { max-width: 640px; }

.nav-links a.is-active { color: var(--sky); }
.lang-toggle {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--line);
  color: var(--ink-soft);
  font-size: 0.82rem;
  font-weight: 700;
}
.lang-toggle:hover {
  border-color: var(--sky);
  color: var(--sky);
  background: rgba(51,181,255,.08);
}
