.nav-content { max-width: var(--max-w); }
.hero.reveal { opacity: 1; transform: none; }
.hero > :not(.hero-canvas) {
  opacity: 0;
  transform: translateY(12px);
  filter: blur(3px);
  transition: opacity .8s ease, transform .8s cubic-bezier(.16, 1, .3, 1), filter .8s ease;
}
.hero.visible > :not(.hero-canvas) { opacity: 1; transform: none; filter: none; }
.hero > .hero-canvas { opacity: 0; }
.hero.visible > .hero-canvas { opacity: 1; }
.hero-headline, .about-title, .section-header, .projekt-title, .artykuly-title, .std-title {
  text-wrap: balance;
  word-break: normal;
  overflow-wrap: normal;
}
.hero-headline { max-width: 850px; }
.hero-subtitle, .section-subtitle { text-wrap: pretty; }
.artykuly-title-row { align-items: baseline; gap: 16px; }
.artykuly-title-row > :last-child { flex-shrink: 0; }
.offer { padding-top: 40px; padding-bottom: 48px; }
.offer-grid { display: grid; grid-template-columns: 1fr; gap: 24px; }
.offer-item { display: flex; flex-direction: column; gap: 16px; border-top: 2px solid var(--ink); padding-top: 24px; }
.offer-item h3 { font-size: 20px; line-height: 1.4; text-wrap: balance; }
.offer-item p { font-size: 16px; line-height: 1.6; color: var(--gray); }
.offer-item strong { color: var(--ink); }
.offer-start { margin-top: 28px; font-size: 15px; color: var(--gray); }
.hero-cta, .contact-primary { background: var(--ink); color: var(--white); border-color: var(--ink); min-height: 44px; font-size: 16px; }
.hero-cta:hover, .contact-primary:hover { background: var(--ink); color: var(--white); opacity: .85; }
.content-details { margin-top: 20px; }
.content-details > summary { color: var(--ink); font-size: 16px; cursor: pointer; padding: 12px 0; text-decoration: underline; text-underline-offset: 5px; }
.content-details[open] > summary { margin-bottom: 20px; }
.content-details > .projekty-list > *, .content-details > .artykuly-list > * { opacity: 1; transform: none; }
.kontakt { text-align: center; border-top: 1px solid var(--gray-light); }
.kontakt .section-header { margin: 0 auto 20px; }
.kontakt .section-subtitle { max-width: 650px; margin: 0 auto 24px; text-wrap: balance; }
.kontakt-availability { max-width: 590px; color: var(--gray); }
.contact-hint { max-width: 520px; margin: 24px auto 0; font-size: 16px; color: var(--gray); text-wrap: balance; }
.kontakt-links { align-items: center; justify-content: center; margin: 32px auto 0; }
.kontakt-links .pill-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 24px; font-size: 15px; line-height: 1.4; }
.contact-address { margin-top: 24px; color: var(--gray); font-size: 14px; }
.kontakt .kontakt-location { margin-top: 8px; font-size: 14px; }
.kompetencje-item-featured { grid-column: 1 / -1; }
.kompetencje-item-featured .kompetencje-title { font-size: 19px; }
.kompetencje-item-featured .kompetencje-desc { font-size: 15px; max-width: 720px; }
.mapa-card-link, .std-link { color: var(--gray); opacity: 1; }
.mapa-card a:hover .mapa-card-link, .std-item:hover .std-link { color: var(--ink); }
.client-logo-text { color: #757578; }
.testimonial-dots { align-items: center; }
.testimonial-dot { width: 44px; height: 44px; border-radius: 50%; background: transparent; position: relative; }
.testimonial-dot::after { content: ''; position: absolute; inset: 18px; border-radius: 50%; background: var(--gray-light); }
.testimonial-dot.active { background: transparent; }
.testimonial-dot.active::after { background: var(--ink); }
.carousel-pause { margin-top: 12px; font: inherit; font-size: 14px; color: var(--gray); background: transparent; border: 1px solid var(--gray-light); border-radius: 24px; padding: 8px 16px; min-height: 44px; cursor: pointer; }
.footer-content { display: flex; flex-wrap: wrap; gap: 12px 24px; align-items: center; justify-content: space-between; }
.footer-links { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 20px; }
.footer-links a { color: #98989d; text-decoration: none; font-size: 13px; }
.footer-links a:hover { color: var(--white); }
.footer-egg { color: #2a2a2e; text-decoration: none; font-size: 10px; margin-left: 6px; }
.footer-egg::after { content: "v0.1"; }
.footer-egg:hover { color: #3a3a3e; }
.project-note { margin-top: 20px; font-size: 14px; color: var(--gray); }
@media (min-width: 768px) {
  .offer-grid { grid-template-columns: repeat(3, 1fr); gap: 32px; }
  .offer { padding-top: 32px; padding-bottom: 64px; }
  .about, .kompetencje, .projekty, .standardy, .artykuly, .kontakt { padding-top: 56px; padding-bottom: 56px; }
  .about-photo { max-height: 440px; }
  .nav-links a { font-size: 14px; }
  .hero-headline { font-size: clamp(44px, 5vw, 60px); line-height: 1.12; letter-spacing: -.035em; }
  .kontakt { padding-top: 80px; padding-bottom: 88px; }
  .projekty > .projekty-list, .artykuly > .artykuly-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 32px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero > :not(.hero-canvas) { opacity: 1; transform: none; filter: none; }
}
