/* Úvodní kompozice: velký text vlevo, fotografie a rychlé údaje vpravo. */
.site-header { position: relative; background: var(--paper); backdrop-filter: none; border-bottom: 0; }
.hero-reference { min-height: 600px; padding-top: 54px; padding-bottom: 48px; grid-template-columns: .94fr 1.06fr; gap: 48px; }
.hero-reference .hero-copy { padding: 50px 0 22px; }
.hero-reference h1 { max-width: 610px; font-size: clamp(48px, 5.45vw, 73px); letter-spacing: -.065em; }
.hero-reference h1 em { font-style: italic; font-weight: 400; }
.hero-reference .lead { max-width: 435px; margin-top: 34px; font-size: 16px; }
.button-primary { background: #1267e9; padding: 15px 22px; }
.button-primary:hover { background: #0d56c8; }
.hero-reference .hero-visual { min-height: 570px; border-radius: 31px; background: linear-gradient(145deg, #d9dedd 0%, #bfc8c6 52%, #93a4a0 100%); }
.hero-photo::before { content: ""; position: absolute; inset: 0; opacity: .44; background: radial-gradient(circle at 57% 36%, rgba(255,255,255,.68) 0 4%, transparent 20%), linear-gradient(110deg, transparent 0 46%, rgba(255,255,255,.26) 47% 56%, transparent 57%); }
.hero-image { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; object-fit: cover; object-position: 52% center; }
.photo-overlay { position: relative; z-index: 1; min-height: 570px; display: grid; place-content: center; gap: 13px; color: #4d6460; text-align: center; font-size: 14px; }
.photo-overlay .material-symbols-rounded { font-size: 38px; margin: auto; }
.hero-contact { position: absolute; z-index: 2; top: 18px; right: 18px; display: flex; align-items: center; gap: 8px; padding: 11px 18px; border-radius: 100px; background: rgba(255,255,255,.92); font-size: 14px; font-weight: 600; }
.hero-contact .material-symbols-rounded { font-size: 18px; }
.hero-stats { position: absolute; z-index: 2; right: 20px; bottom: 20px; left: 20px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.hero-stats div { min-height: 92px; padding: 16px; display: flex; flex-direction: column; justify-content: center; background: rgba(255,255,255,.94); border-radius: 17px; box-shadow: 0 9px 25px rgba(23,43,38,.07); }
.hero-stats strong { font-size: 25px; line-height: 1.1; letter-spacing: -.05em; }
.hero-stats span { margin-top: 6px; color: #65736f; font-size: 11px; line-height: 1.25; }
.hero-stats small { font-size: 9px; }
@media (max-width: 1080px) {
  .hero-reference { min-height: 0; grid-template-columns: 1fr; gap: 32px; padding-top: 30px; }
  .hero-reference .hero-copy { padding-top: 0; }
  .hero-reference .hero-visual, .photo-overlay { min-height: 500px; }
}
@media (max-width: 850px) { .hero-reference .hero-visual, .photo-overlay { min-height: 440px; } }
@media (max-width: 520px) { .hero-reference .hero-visual, .photo-overlay { min-height: 400px; border-radius: 23px; } .hero-stats { right: 12px; bottom: 12px; left: 12px; gap: 6px; } .hero-stats div { min-height: 76px; padding: 11px; border-radius: 13px; } .hero-stats strong { font-size: 21px; } .hero-stats span { font-size: 9px; } }
