/* Layout and navigation refinements for phone, tablet/iPad and desktop. */
.site-header { min-height: 76px; height: auto; }
.brand { display: flex; align-items: center; min-width: 0; }
.brand img { display: block; width: clamp(145px, 19vw, 250px); height: auto; max-height: 62px; object-fit: contain; }
.menu { min-width: 44px; min-height: 44px; }

.videos { background: #f0e9df; }
.video-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.video-card { min-width: 0; overflow: hidden; background: #fff; box-shadow: 0 8px 24px rgba(36, 26, 19, .08); }
.video-card video { display: block; width: 100%; aspect-ratio: 16 / 9; background: #18120f; object-fit: cover; }
.video-copy { padding: 24px; }
.video-copy span { color: #8e6f4b; font-size: .68rem; font-weight: 700; letter-spacing: .16em; }
.video-copy h3 { font-size: clamp(1.6rem, 2.3vw, 2.1rem); margin: .5rem 0 .75rem; }
.video-copy p, .video-note { color: #6d6259; }
.video-copy code, .video-note code { color: #4c3b2b; font-family: Inter, Arial, sans-serif; font-size: .85em; font-weight: 700; }
.video-note { max-width: 780px; margin: 28px auto 0; text-align: center; }

@media (max-width: 1000px) {
  .section { padding: 88px 6vw; }
  .section-dark { padding: 88px 6vw; }
  .hero-content { margin-left: 6vw; }
  .video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .video-card:last-child { grid-column: 1 / -1; max-width: calc(50% - 12px); }
}

@media (max-width: 850px) {
  .site-header { padding: 0 5vw; min-height: 70px; }
  .site-header nav { display: none; position: absolute; top: 100%; left: 0; right: 0; padding: 16px 6vw 22px; background: #18120f; flex-direction: column; align-items: stretch; gap: 4px; border-top: 1px solid rgba(198, 167, 122, .25); }
  .site-header nav.is-open { display: flex; }
  .site-header nav a { display: block; padding: 11px 0; font-size: .82rem; }
  .site-header nav .nav-cta { margin-top: 8px; padding: 12px 14px !important; text-align: center; }
  .menu { display: grid; place-items: center; }
  .hero { min-height: 760px; }
  .hero-content { padding: 130px 0 70px; }
  .section-heading { align-items: start; }
}

@media (max-width: 700px) {
  .section, .section-dark { padding: 70px 6vw; }
  .hero { min-height: 690px; }
  .hero h1 { font-size: clamp(3.4rem, 15vw, 5rem); line-height: .84; }
  .hero-copy { font-size: 1rem; }
  .hero-actions { gap: 18px; flex-wrap: wrap; }
  .space-grid, .event-grid, .gallery-grid, .price-grid, .intro-grid, .feature, .contact { grid-template-columns: 1fr; }
  .event-grid > div, .event-grid > div:nth-child(2) { border-right: 0; margin-right: 0; padding: 24px 0; border-bottom: 1px solid #59483a; }
  .event-grid > div:last-child { border-bottom: 0; }
  .gallery-grid { grid-auto-rows: 240px; }
  .g1 { grid-row: span 1; }
  .feature-copy { padding: 70px 6vw; }
  .video-grid { grid-template-columns: 1fr; }
  .video-card:last-child { grid-column: auto; max-width: none; }
  footer { padding: 36px 6vw; }
}

@media (max-width: 400px) {
  .brand img { width: 142px; }
  .hero-actions .button { width: 100%; text-align: center; }
  .checks { grid-template-columns: 1fr; }
}
