@media (max-width: 1100px) {
  .site-header { width:min(100% - 24px,1420px); }
  .page-frame { width:min(100% - 24px,1420px); }
  .site-nav { position:absolute; top:66px; right:0; width:min(340px,calc(100vw - 24px)); padding:12px; border-radius:18px; background:rgba(17,16,15,.96); border:1px solid rgba(255,255,255,.08); backdrop-filter:blur(18px); display:none; flex-direction:column; align-items:stretch; box-shadow:0 22px 50px rgba(0,0,0,.35); }
  .site-nav.open { display:flex; }
  .site-nav a { padding:13px 14px; }
  .nav-toggle { display:block; }
  .hero { grid-template-columns:1fr .65fr; gap:24px; padding:55px 44px; }
  .feature-strip { grid-template-columns:repeat(2,1fr); }
  .home-update { grid-template-columns:minmax(0,3fr) minmax(250px,2fr); gap:20px; }
  .home-update-content { padding-right:8px; }
  .price-grid { grid-template-columns:1fr; }
  .price-card { min-height:340px; }
  .booking-layout { grid-template-columns:1fr; }
  .about-grid,.contact-grid { grid-template-columns:1fr; }
  .admin-shell { grid-template-columns:210px 1fr; }
}
@media (max-width: 768px) {
  .site-header { height:68px; margin-top:10px; padding:0 12px; border-radius:18px; }
  .brand { min-width:0; }
  .brand img { width:40px; height:40px; }
  .brand span { font-size:16px; }
  .page-frame { margin-top:10px; min-height:calc(100vh - 98px); }
  .inner-page { padding-top:34px; }
  .hero { min-height:auto; grid-template-columns:1fr; padding:46px 24px; border-radius:24px; }
  .hero h1 { font-size:clamp(54px,17vw,82px); }
  .hero p { font-size:17px; }
  .hero-mark { width:min(300px,78vw); margin-top:18px; }
  .feature-strip { grid-template-columns:1fr; }
  .feature-strip article { min-height:130px; }
  .home-update { min-height:0; grid-template-columns:1fr; gap:20px; padding:16px; }
  .home-update-media { height:280px; min-height:280px; }
  .home-update-content { padding:0 6px 8px; }
  .home-update-content h2 { margin-bottom:16px; }
  .home-split { align-items:flex-start; flex-direction:column; padding:32px 24px; }
  .service-grid { grid-template-columns:1fr; }
  .service-card { min-height:170px; padding:25px; }
  .service-card h2 { margin-top:34px; }
  .service-cta { align-items:flex-start; flex-direction:column; }
  .field-row { grid-template-columns:1fr; }
  .booking-form { padding:22px; }
  .map-shell { height:520px; border-radius:22px; }
  .map-card { left:14px; right:14px; bottom:14px; min-width:0; }
  .about-hero { grid-template-columns:1fr; padding:34px 25px; }
  .about-orbit { width:min(260px,72vw); }
  .admin-shell { display:block; }
  .admin-sidebar { border-right:0; border-bottom:1px solid rgba(255,255,255,.06); }
  .admin-menu { grid-template-columns:repeat(3,1fr); }
  .admin-menu button { text-align:center; font-size:12px; padding:10px 8px; }
  .admin-main { padding:22px; }
  .admin-grid { grid-template-columns:1fr; }
}
@media (max-width: 480px) {
  .site-header,.page-frame { width:calc(100% - 16px); }
  .brand span { font-size:14px; }
  .hero-actions { display:grid; grid-template-columns:1fr; }
  .home-update { padding:12px; border-radius:20px; }
  .home-update-media { height:220px; min-height:220px; border-radius:15px; }
  .home-update-content { padding:0 4px 6px; }
  .home-update-content h2 { font-size:30px; }
  .home-update-content p { font-size:15px; }
  .button { width:100%; }
  .page-heading h1,.about-hero h1 { font-size:44px; }
  .page-heading p { font-size:16px; }
  .price-card { padding:24px; }
  .price strong { font-size:62px; }
  .contact-card { min-height:140px; }
  .admin-menu { grid-template-columns:repeat(2,1fr); }
}
@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
}
