@media (max-width: 1000px) {
  .service-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 900px) {
  .hero-home { min-height: auto; }
  .hero-card, .yard, .contact-grid, .feature-grid { grid-template-columns: 1fr; }
  .hero-visual { min-height: 280px; }
  .hero-copy { padding: 46px 32px; }
  h1 { font-size: 44px; }
  .boat-mark { right: 24px; bottom: 24px; width: 72%; height: 220px; }
  .menu { position: absolute; top: 76px; right: 0; left: 0; display: none; flex-direction: column; align-items: stretch; padding: 14px 19px 20px; background: var(--navy); border-bottom: 1px solid rgba(255, 255, 255, .1); box-shadow: 0 10px 25px rgba(23, 27, 58, .08); }
  .menu.open { display: flex; }
  .nav-dropdown { display: grid; }
  .nav-dropdown-toggle { width: 100%; padding: 10px 12px; text-align: left; }
  .nav-submenu { position: static; min-width: 0; margin: 2px 0 6px 12px; border: 0; border-left: 1px solid rgba(255, 255, 255, .2); border-radius: 0; background: transparent; box-shadow: none; }
  .nav-dropdown:not(.open) .nav-submenu { display: none; }
  .nav-submenu a { color: rgba(255, 255, 255, .78); }
  .nav-submenu a:hover, .nav-submenu a:focus-visible, .nav-submenu a.is-active { background: rgba(255, 255, 255, .1); color: #fff; }
  .mobile-toggle { display: block; }
  .brand img { width: 205px; }
  .feature-visual { min-height: 320px; }
  .project-grid { grid-template-columns: repeat(2, 1fr); }
  .project-card:last-child { grid-column: 1 / -1; }
  .technical-mark { right: 4%; opacity: .45; }
  .yachtbouw-page .page-hero-card { min-height: 420px; padding: 54px 42px; }
  .yachtbouw-page .page-hero h1 { font-size: 50px; }
    .electric-process-grid { grid-template-columns: repeat(3, 1fr); }
    .projecten-page .page-hero-card { min-height: 370px; padding: 52px 42px; }
    .projecten-page .page-hero h1 { font-size: 50px; }
    .featured-project { grid-template-columns: 1fr; min-height: 0; }
    .featured-project-visual { min-height: 340px; }
    .discipline-grid { grid-template-columns: repeat(2, 1fr); }
    .project-detail-page .page-hero-card { min-height: 300px; padding: 48px 42px; }
    .project-detail-page .page-hero h1 { font-size: 50px; }
    .detail-intro-grid { grid-template-columns: 1fr; }
  .custom-grid { min-height: 0; }
  .custom-visual { min-height: 340px; }
  .construction-block { gap: 24px; padding: 44px; }
  .reference-visual { min-height: 300px; }
  .aanbod-page .page-hero-card { min-height: 300px; padding: 48px 42px; }
  .aanbod-page .page-hero h1 { font-size: 50px; }
  .aanbod-cta-grid { grid-template-columns: 1fr; }
  .detail-layout { grid-template-columns: 1fr; }
  .onderhoud-page .page-hero-card { min-height: 390px; padding: 54px 42px; }
  .onderhoud-page .page-hero h1 { font-size: 50px; }
  .maintenance-grid { grid-template-columns: repeat(2, 1fr); }
  .refit-grid, .drive-block, .hull-layout { grid-template-columns: 1fr; }
  .refit-grid { min-height: 0; }
  .refit-visual { min-height: 330px; }
  .drive-block { gap: 24px; padding: 44px; }
  .hull-visual { min-height: 300px; }
  .installation-grid { grid-template-columns: repeat(2, 1fr); }
  .process-grid { grid-template-columns: repeat(2, 1fr); }
  .elektrisch-page .page-hero-card { min-height: 390px; padding: 54px 42px; }
  .elektrisch-page .page-hero h1 { font-size: 50px; }
  .hybrid-grid, .battery-block, .integration-block { grid-template-columns: 1fr; }
  .hybrid-grid { min-height: 0; }
  .hybrid-visual { min-height: 330px; }
  .battery-block { gap: 24px; padding: 44px; }
  .integration-block { gap: 24px; padding: 44px; }
  .electric-process-grid { grid-template-columns: repeat(3, 1fr); }
  .werf-page .page-hero-card { min-height: 380px; padding: 54px 42px; }
  .werf-page .page-hero h1 { font-size: 50px; }
  .facility-grid { grid-template-columns: repeat(2, 1fr); }
  .slipway-grid, .workshop-layout, .yard-service-block, .yard-tech-layout, .location-layout { grid-template-columns: 1fr; }
  .slipway-grid { min-height: 0; }
  .slipway-visual { min-height: 330px; }
  .workshop-visual { min-height: 300px; }
  .yard-service-block { gap: 24px; padding: 44px; }
  .location-visual { min-height: 280px; }
  .over-ons-page .page-hero-card { min-height: 380px; padding: 52px 42px; }
  .over-ons-page .page-hero h1 { font-size: 50px; }
  .working-grid, .principles-grid { grid-template-columns: repeat(2, 1fr); }
  .history-grid, .craft-block, .yard-about-grid, .team-layout { grid-template-columns: 1fr; }
  .craft-block { gap: 24px; padding: 44px; }
  .yard-about-grid { min-height: 0; }
  .yard-about-visual { min-height: 330px; }
  .team-visual { min-height: 300px; }
  .diensten-page .page-hero-card { min-height: 370px; padding: 52px 42px; }
  .diensten-page .page-hero h1 { font-size: 50px; }
  .main-service-grid { grid-template-columns: 1fr; }
  .service-card-wide { grid-column: auto; }
  .service-detail-grid, .service-detail-block, .services-projects-block { grid-template-columns: 1fr; }
  .service-detail-block { gap: 24px; padding: 44px; }
  .services-projects-visual { min-height: 300px; }
  .yard-services-grid, .extra-technical-grid { grid-template-columns: repeat(2, 1fr); }
  .contact-page .page-hero-card { min-height: 340px; padding: 50px 42px; }
  .contact-page .page-hero h1 { font-size: 50px; }
  .contact-main-grid, .contact-location-grid { grid-template-columns: 1fr; }
  .contact-details { padding: 8px 0 18px; }
  .contact-help-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  .shell { width: min(100% - 24px, 1180px); }
  .nav { height: 68px; }
  .menu { top: 68px; }
  .brand { min-width: 0; }
  .brand img { width: 175px; }
  .hero, .page-hero { padding-top: 14px; }
  .hero-home { min-height: 70vh; }
  .hero-card, .page-hero-card { border-radius: 20px; }
  .hero-copy, .page-hero-card { padding: 34px 22px; }
  h1 { font-size: 36px; }
  .hero-copy p, .page-hero p { font-size: 15px; }
  h2 { font-size: 31px; }
  .section { padding: 44px 0; }
  .narrow-content h2 { font-size: 32px; }
  .feature-grid { min-height: 0; border-radius: 20px; }
  .feature-visual { min-height: 240px; }
  .feature-copy { padding: 32px 24px; }
  .feature-copy h2, .electric-copy h2 { font-size: 34px; }
  .service-grid { grid-template-columns: 1fr; }
  .project-grid { grid-template-columns: 1fr; }
  .project-card:last-child { grid-column: auto; }
  .project-visual { min-height: 190px; }
  .section-head-row { align-items: flex-start; flex-direction: column; gap: 0; }
  .section-head-row .text-link { margin-bottom: 0; }
  .electric-block { border-radius: 20px; }
  .electric-copy { padding: 34px 24px; }
  .technical-mark { right: -74px; top: 70%; transform: translateY(-50%) rotate(-18deg) scale(.75); }
  .cta-content { align-items: flex-start; flex-direction: column; padding: 4px 0; }
  .cta-content .btn { width: 100%; }
  .yard-copy, .contact-card, .placeholder-section { padding: 24px; }
  .yard-meta { grid-template-columns: 1fr; }
  .footer-row { align-items: flex-start; flex-direction: column; }
  .footer-links { justify-content: flex-start; }
  .yachtbouw-page .page-hero { padding-bottom: 32px; }
  .yachtbouw-page .page-hero-card { min-height: 420px; padding: 38px 24px; border-radius: 20px; }
  .yachtbouw-page .page-hero h1 { font-size: 37px; }
  .yachtbouw-page .page-hero p { font-size: 15px; }
  .yachtbouw-intro h2 { font-size: 32px; }
  .heritage-grid, .propulsion-grid { grid-template-columns: 1fr; }
  .heritage-visual { min-height: 220px; }
  .heritage-copy { padding: 23px 24px 26px; }
  .build-points, .construction-list { grid-template-columns: 1fr; }
  .custom-visual { min-height: 230px; }
  .feature-copy { padding: 32px 24px; }
  .construction-block { gap: 16px; padding: 34px 24px; border-radius: 20px; }
  .construction-copy h2 { font-size: 32px; }
  .construction-list div { padding: 13px 0; }
  .propulsion-card { min-height: 190px; }
  .reference-block { border-radius: 20px; }
  .reference-visual { min-height: 220px; }
  .reference-copy { padding: 32px 24px; }
  .reference-copy h2 { font-size: 32px; }
  .aanbod-page .page-hero { padding-bottom: 32px; }
  .aanbod-page .page-hero-card { min-height: 300px; padding: 38px 24px; border-radius: 20px; }
  .aanbod-page .page-hero h1 { font-size: 37px; }
  .aanbod-page .page-hero p { font-size: 15px; }
  .aanbod-intro h2 { font-size: 32px; }
  .aanbod-grid { grid-template-columns: 1fr; gap: 18px; }
  .aanbod-image { min-height: 230px; }
  .aanbod-card-body { padding: 23px 24px 25px; }
  .aanbod-card h2 { font-size: 27px; }
  .aanbod-card-top { align-items: flex-start; flex-direction: column; gap: 8px; }
  .aanbod-type { text-align: left; }
  .aanbod-cta-grid .cta-content { padding: 4px 0; }
  .aanbod-secondary { padding: 24px; }
  .detail-main-photo { min-height: 300px; border-radius: 20px; }
  .detail-specs { grid-template-columns: 1fr; }
  .onderhoud-page .page-hero { padding-bottom: 32px; }
  .onderhoud-page .page-hero-card { min-height: 390px; padding: 38px 24px; border-radius: 20px; }
  .onderhoud-page .page-hero h1 { font-size: 37px; }
  .onderhoud-page .page-hero p { font-size: 15px; }
  .onderhoud-intro h2 { font-size: 32px; }
  .maintenance-grid, .refit-points, .drive-grid, .hull-list, .installation-grid, .process-grid, .reference-grid { grid-template-columns: 1fr; }
  .refit-visual { min-height: 230px; }
  .drive-block { gap: 16px; padding: 34px 24px; border-radius: 20px; }
  .drive-copy h2 { font-size: 32px; }
  .hull-visual { min-height: 230px; }
  .installation-grid article { min-height: 0; }
  .process-grid article { padding: 15px 0 8px; }
  .reference-visual { min-height: 200px; }
  .elektrisch-page .page-hero { padding-bottom: 32px; }
  .elektrisch-page .page-hero-card { min-height: 390px; padding: 38px 24px; border-radius: 20px; }
  .elektrisch-page .page-hero h1 { font-size: 37px; }
  .elektrisch-page .page-hero p { font-size: 15px; }
  .elektrisch-intro h2 { font-size: 32px; }
  .electric-component-grid, .hybrid-points, .battery-grid, .charging-grid, .system-map, .monitor-grid, .electric-process-grid { grid-template-columns: 1fr; }
  .hybrid-visual { min-height: 230px; }
  .battery-block { gap: 16px; padding: 34px 24px; border-radius: 20px; }
  .battery-copy h2 { font-size: 32px; }
  .charging-grid article { min-height: 0; }
  .integration-block { gap: 16px; padding: 34px 24px; border-radius: 20px; }
  .integration-copy h2 { font-size: 32px; }
  .system-map span:nth-child(2n) { transform: none; }
  .electric-process-grid article { padding: 15px 0 8px; }
  .werf-page .page-hero { padding-bottom: 32px; }
  .werf-page .page-hero-card { min-height: 390px; padding: 38px 24px; border-radius: 20px; }
  .werf-page .page-hero h1 { font-size: 37px; }
  .werf-page .page-hero p { font-size: 15px; }
  .werf-intro h2 { font-size: 32px; }
  .facility-grid, .slipway-points, .workshop-list, .yard-service-grid, .yard-tech-list, .yard-process-grid { grid-template-columns: 1fr; }
  .facility-grid article { min-height: 0; }
  .slipway-visual { min-height: 230px; }
  .workshop-copy { padding: 8px 0; }
  .workshop-copy h2 { font-size: 32px; }
  .workshop-visual { min-height: 230px; }
  .yard-service-block { gap: 16px; padding: 34px 24px; border-radius: 20px; }
  .yard-service-block h2 { font-size: 32px; }
  .yard-tech-links { padding: 22px 0 0; border-top: 1px solid var(--line); border-left: 0; }
  .winter-strip { align-items: flex-start; flex-direction: column; gap: 18px; }
  .location-visual { min-height: 220px; }
  .location-copy { padding: 28px 24px; }
  .location-copy h2 { font-size: 32px; }
  .over-ons-page .page-hero { padding-bottom: 32px; }
  .over-ons-page .page-hero-card { min-height: 380px; padding: 38px 24px; border-radius: 20px; }
  .over-ons-page .page-hero h1 { font-size: 37px; }
  .over-ons-page .page-hero p { font-size: 15px; }
  .over-ons-intro h2 { font-size: 32px; }
  .working-grid, .history-grid, .craft-list, .principles-grid { grid-template-columns: 1fr; }
  .history-visual { min-height: 220px; }
  .history-copy { padding: 23px 24px 26px; }
  .craft-block { gap: 16px; padding: 34px 24px; border-radius: 20px; }
  .craft-copy h2 { font-size: 32px; }
  .yard-about-grid { min-height: 0; }
  .yard-about-visual { min-height: 230px; }
  .team-copy { padding: 8px 0; }
  .team-copy h2 { font-size: 32px; }
  .team-visual { min-height: 230px; }
  .principles-grid article { padding: 21px; }
  .diensten-page .page-hero { padding-bottom: 32px; }
  .diensten-page .page-hero-card { min-height: 370px; padding: 38px 24px; border-radius: 20px; }
  .diensten-page .page-hero h1 { font-size: 37px; }
  .diensten-page .page-hero p { font-size: 15px; }
  .diensten-intro h2 { font-size: 32px; }
  .main-service-card, .service-card-wide { grid-template-columns: 1fr; }
  .main-service-visual { min-height: 220px; }
  .main-service-copy { padding: 23px 24px 28px; }
  .main-service-copy h3 { font-size: 27px; }
  .service-detail-grid, .service-detail-list, .technical-service-list, .yard-services-grid, .extra-technical-grid { grid-template-columns: 1fr; }
  .service-detail-grid h2, .service-detail-block h2 { font-size: 32px; }
  .service-detail-block { gap: 16px; padding: 34px 24px; border-radius: 20px; }
  .winter-service-strip { align-items: flex-start; flex-direction: column; gap: 18px; }
  .services-projects-block { border-radius: 20px; }
  .services-projects-visual { min-height: 220px; }
  .services-projects-copy { padding: 32px 24px; }
  .services-projects-copy h2 { font-size: 32px; }
  .contact-page .page-hero { padding-bottom: 32px; }
  .contact-page .page-hero-card { min-height: 340px; padding: 38px 24px; border-radius: 20px; }
  .contact-page .page-hero h1 { font-size: 37px; }
  .contact-page .page-hero p { font-size: 15px; }
  .contact-intro h2 { font-size: 32px; }
  .contact-form-panel { padding: 24px; }
  .contact-form-grid, .contact-help-grid { grid-template-columns: 1fr; }
  .contact-form-panel .field.full { grid-column: auto; }
  .contact-location-visual { min-height: 220px; }
  .contact-location-copy { padding: 28px 24px; }
  .contact-location-copy h2 { font-size: 32px; }
  .visit-block { align-items: flex-start; flex-direction: column; }
  .visit-actions { width: 100%; }
  .visit-actions .btn { flex: 1; }
}