/* Mobile/sirsiove media queries v klasickej syntaxi (max-width) — tento subor nespracuva Tailwind/Lightning CSS,
   aby fungovali aj na starsom iOS Safari (< 16.4), ktory nepozna range syntax (width<=600px). */

@media(max-width:600px) { .gallery-grid { grid-template-columns: 1fr 1fr; gap: 10px; } }
@media(min-width:1500px) { .hero { min-height: 790px; } .hero-heading { font-size: 145px; } .hero-heading .middle-line { font-size: 124px; } .hero-photo-line { height: 200px; } .hero-photo-line img { width: 195px; height: 200px; } }
@media(max-width:900px) { .site-header { padding: 0 26px; height: 88px; } .header-links { gap: 20px; } .hero { min-height: 630px; padding: 30px 26px; } .hero-heading { font-size: 92px; } .hero-heading .middle-line { font-size: 80px; } .hero-caption { left: 50px; top: 72px; } .hero-photo-line { height: 155px; gap: 15px; } .hero-photo-line img { width: 150px; height: 155px; } .hero-photo-line .bracket { font-size: 145px; } .asterisk { font-size: 100px; } .section { padding: 50px 26px; } .services-grid { gap: 22px; } .service-preview img { height: 140px; } .editorial-title { font-size: 48px; } .intro { padding-top: 70px; } .site-footer { padding: 40px 26px; } .page-heading { font-size: 62px; } }
@media(max-width:600px) { .site-header { height: 85px; padding: 0 20px; } .brand { font-size: 21px; } .desktop-nav { display: none; } .menu-toggle { display: inline-flex; } .header-links { gap: 8px; } .mobile-menu { padding: 10px 20px 25px; display: flex; flex-direction: column; gap: 16px; border-bottom: 1px solid var(--border); } .hero { min-height: 585px; padding: 57px 20px 22px; } .hero-heading { font-size: 68px; } .hero-heading .middle-line { font-size: 52px; margin-top: 9px; } .hero-caption { top: 15px; left: 20px; font-size: 9px; } .hero-photo-line { height: 145px; gap: 10px; margin: 15px 0 19px; } .hero-photo-line img { width: 128px; height: 145px; } .hero-photo-line .bracket { font-size: 128px; } .asterisk { font-size: 83px; padding-top: 32px; } .photo-caption { display: none; } .hero-foot { margin-top: 43px; font-size: 10px; } .hero-foot > p { max-width: 165px; } .section { padding: 38px 20px; } .services-grid { grid-template-columns: 1fr 1fr; gap: 28px 20px; } .service-preview img { height: 150px; } .service-preview-title { font-size: 11px; } .section-top { margin-bottom: 26px; } .editorial-title { font-size: 38px; } .intro { padding-top: 60px; } .intro-photo { gap: 10px; } .intro-photo img { width: 62%; height: 290px; } .intro-photo .punctuation { font-size: 78px; } .intro-photo .star { font-size: 62px; } .intro-copy { font-size: 13px; } .site-footer { padding: 35px 20px 24px; } .footer-top { align-items: flex-start; gap: 25px; } .footer-top nav { flex-direction: column; gap: 10px; } .footer-bottom { gap: 15px; font-size: 9px; } .page-heading { font-size: 46px; overflow-wrap: anywhere; margin: 15px 0 32px; } .detail-grid { grid-template-columns: 1fr; gap: 32px; } .booking-dialog { width: calc(100% - 24px); border-radius: 6px; } }
@media(min-width:1500px) { .service-preview { height: 680px; } .service-preview-title h3 { font-size: 38px; min-height: 86px; } }
@media(max-width:1100px) and (min-width:901px) { .service-preview-content { inset-inline: 20px; } .service-preview-title h3 { font-size: 28px; } .service-preview-more { padding-inline: 14px; font-size: 12px; } }
@media(max-width:900px) { .services-heading { font-size: 58px; } .services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-inline: -26px; gap: 2px; } .service-preview { height: 500px; } .service-preview img { height: 100%; } .service-preview-title h3 { font-size: 30px; } }
@media(max-width:600px) { .services-heading { font-size: 40px; margin-bottom: 30px; } .services-grid { grid-template-columns: minmax(0, 1fr); margin-inline: -20px; gap: 2px; } .service-preview { height: 490px; } .service-preview img { height: 100%; aspect-ratio: auto; } .service-preview-title { margin-top: 0; } .service-preview-title h3 { font-size: 34px; min-height: 0; } }
@media(max-width:600px) { .staff-heading { font-size: 34px; } }
@media(max-width:900px) { .staff-section { padding: 50px 26px; } .staff-grid { gap: 10px; } .staff-photo { height: 260px; border-radius: 12px; } .staff-member.is-active .staff-photo { height: 500px; } .staff-info h3 { font-size: 28px; } }
@media(max-width:700px) {
  .staff-section { padding: 38px 20px; }
  .staff-stage { display: block; position: relative; height: 560px; margin-top: 40px; border-radius: 12px; overflow: hidden; background: var(--muted); }
  .staff-stage-item { position: absolute; inset: 0; opacity: 0; transition: opacity .5s ease; pointer-events: none; }
  .staff-stage-item.is-active { opacity: 1; }
  .staff-stage-item img { width: 100%; height: 100%; object-fit: cover; object-position: center 20%; display: block; }
  .staff-stage-item::after { content: ''; position: absolute; inset: 0; background: var(--media-scrim); }
  .staff-stage-info { position: absolute; bottom: 0; left: 0; right: 0; z-index: 1; padding: 26px; color: var(--media-foreground); transform: translateY(10px); transition: transform .5s ease; }
  .staff-stage-item.is-active .staff-stage-info { transform: none; }
  .staff-stage-info h3 { font-family: var(--font-editorial); font-size: 28px; line-height: 1.05; font-weight: 500; letter-spacing: -0.02em; }
  .staff-stage-info hr { width: 48px; border: 0; border-top: 2px solid var(--media-foreground); margin: 20px 0; }
  .staff-grid { margin-top: 10px; gap: 8px; }
  .staff-member, .staff-photo { transition: none; }
  .staff-member { flex: 1 1 0; }
  .staff-member.is-active { display: none; }
  .staff-photo { height: 190px; }
  .staff-info { display: none; }
}
@media(max-width:900px) { .price-layout { grid-template-columns: minmax(170px, 1fr) minmax(0, 2.4fr); gap: 32px; } .lash-price-table td { font-size: 18px; } .lash-price-table tbody th { font-size: 22px; } }
@media(max-width:700px) {
  .price-heading-row { margin-bottom: 26px; }
  .price-layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .price-selector { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 0; gap: 6px; }
  .price-option { min-width: 0; height: auto; min-height: 52px; padding: 8px; font-size: 15px; justify-content: center; border: 1px solid var(--border); border-radius: 12px; }
  .price-option::after { display: none; }
  .price-person { margin-top: 22px; }
  .price-person h3 { font-size: 22px; }
  .lash-price-table th, .lash-price-table td { padding: 20px 3px; }
  .lash-price-table th:first-child { width: 22%; }
  .lash-price-table thead th { font-size: 10px; }
  .lash-price-table tbody th { font-size: 18px; }
  .lash-price-table td { font-size: 16px; }
  .price-item { gap: 16px; padding-block: 19px; }
  .price-item dt { font-size: 18px; }
  .price-item dd { font-size: 22px; }
  .price-booking { padding-inline: 26px; }
}
@media(max-width:600px) {
  .services-grid > .scroll-reveal, .staff-grid > .scroll-reveal { transition-delay: 0s; }
}
@media(max-width:700px) { .footer-info { grid-template-columns: 1fr; gap: 26px; } }
@media(max-width:900px) { .hero-leaf-left { width: 300px; height: 300px; left: -90px; } .hero-leaf-right { width: 320px; height: 320px; right: -100px; } }
@media(max-width:600px) { .hero-leaf-left { width: 220px; height: 220px; left: -70px; top: 20px; } .hero-leaf-right { width: 240px; height: 240px; right: -80px; bottom: 0; } }
@media(max-width:700px) { .price-option > span:first-child { align-items: center; text-align: center; } .price-option-role { font-size: 9px; } }
