@media (max-width: 900px) {
	.primary-navigation { display: none; }
	.menu-toggle { display: grid; gap: 4px; padding: .5rem; cursor: pointer; }
	.menu-toggle > span:not(.screen-reader-text) { display: block; width: 24px; height: 2px; background: currentColor; }
	.primary-navigation.is-open { position: absolute; top: 70px; right: 1.25rem; left: 1.25rem; display: grid; gap: 1.3rem; padding: 1.3rem; border-radius: 14px; background: var(--color-navy-deep); box-shadow: var(--shadow-deep); }
	.primary-navigation.is-open .nav-list { display: grid; gap: 1rem; }
	.primary-navigation.is-open .header-phone { display: block; }
	.primary-navigation.is-open .language-switcher { width: max-content; }
	.hero-photo { width: 100%; }
.hero-photo img { object-position: 56% 66%; }
	.hero-photo::after { background: linear-gradient(90deg, rgba(12,31,38,.84) 0%, rgba(12,31,38,.58) 48%, rgba(12,31,38,.16) 100%), linear-gradient(0deg, rgba(7,24,31,.76) 0%, transparent 58%, rgba(7,24,31,.24) 100%); }
	.hero-grid { grid-template-columns: 1fr; gap: 2rem; padding-top: 4.5rem; }
	.hero-section, .hero-grid { min-height: auto; }
	.hero-panel { width: min(100%, 470px); min-height: 0; margin: 0 0 3.5rem; background: linear-gradient(145deg, rgba(246,243,234,.9), rgba(217,235,233,.82)); }
	.hero-panel-title { max-width: 460px; }
	.service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.fleet-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.blog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.proof-grid, .route-preview { grid-template-columns: 1fr; gap: 2rem; }
	.route-preview-visual { min-height: 380px; }
	.single-article-header-inner.has-detail-image { grid-template-columns: 1fr; gap: 2rem; }
	.single-article-header-media { width: min(100%, 620px); }
	.detail-contact { grid-template-columns: 1fr; }
	.detail-contact .button-whatsapp { grid-column: 1; }
	.booking-popup { align-items: start; padding: 1rem; padding-top: max(1rem, env(safe-area-inset-top)); padding-bottom: max(1rem, env(safe-area-inset-bottom)); }
	.booking-popup-panel { width: min(100%, 720px); max-height: calc(100vh - 2rem); max-height: calc(100dvh - 2rem); padding: 2.25rem 1.5rem 1.5rem; padding-bottom: max(1.5rem, env(safe-area-inset-bottom)); }
	.booking-popup-header { margin-bottom: 1.5rem; padding-right: 1.5rem; }
	.booking-popup-header h2 { font-size: clamp(2.15rem, 5vw, 3.3rem); }
	.booking-form-grid { grid-template-columns: 1fr; }
	.booking-field-wide { grid-column: auto; }
	.booking-form-footer { grid-template-columns: 1fr; }
	.booking-required-note, .booking-whatsapp-note, .booking-form-status, .booking-submit { grid-column: 1; grid-row: auto; }
	.booking-submit { width: 100%; }
}
@media (max-width: 760px) {
	.quick-concierge { padding: 28px 0 8px; }
	.quick-concierge-card { border-radius: 21px; }
	.quick-concierge-meta { padding: 13px 16px; }
	.quick-concierge-body { grid-template-columns: 1fr; gap: 18px; padding: 18px 16px 20px; }
	.quick-concierge-intro h2 { max-width: 14ch; margin: 9px 0 10px; font-size: clamp(2rem,9vw,2.75rem); line-height: .98; }
	.quick-concierge-description { max-width: 48ch; font-size: .73rem; line-height: 1.5; }
	.quick-concierge-trust { margin-top: 13px; font-size: .59rem; }
	.quick-concierge-choice { padding: 10px; border-radius: 15px; }
	.quick-concierge-choice-heading { margin: 2px 2px 9px; }
	.quick-concierge-grid { gap: 8px; }
	.quick-concierge-option { display: block; min-height: 104px; padding: 10px; }
	.quick-concierge-number { display: none; }
	.quick-concierge-icon { position: absolute; top: 10px; left: 10px; width: 30px; height: 30px; }
	.quick-concierge-option-copy { display: block; padding: 36px 1px 0; }
	.quick-concierge-option-copy strong { display: -webkit-box; overflow: hidden; font-size: .68rem; line-height: 1.15; text-overflow: clip; white-space: normal; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
	.quick-concierge-option-copy small { display: -webkit-box; overflow: hidden; margin-top: 3px; font-size: .54rem; line-height: 1.22; text-overflow: clip; white-space: normal; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
	.quick-concierge-arrow { top: 10px; right: 10px; }
	.quick-concierge-footer { gap: .35rem .55rem; padding: 10px 16px; }
}
@media (max-width: 560px) {
	.container { width: min(calc(100% - 2rem), var(--container)); }
	.header-inner { min-height: 72px; }
	.site-branding { min-width: 0; max-width: calc(100% - 48px); }
	.site-header .brand-logo { width: min(218px, 100%); }
	.site-header .custom-logo { max-width: min(218px, 100%); max-height: 50px; }
	.site-footer .brand-logo { width: min(265px, 100%); }
	.text-logo { max-width: 100%; }
	.logo-mark { flex: 0 0 34px; width: 34px; height: 34px; }
	.text-logo .brand-tagline { max-width: 220px; overflow-wrap: anywhere; font-size: .58rem; }
	.hero-photo img { object-position: 56% 66%; filter: brightness(1.08) saturate(1.04) contrast(1.02); }
	.hero-photo::after { background: linear-gradient(90deg, rgba(12,31,38,.72) 0%, rgba(12,31,38,.46) 46%, rgba(12,31,38,.18) 100%), linear-gradient(0deg, rgba(7,24,31,.52) 0%, transparent 60%, rgba(7,24,31,.16) 100%); }
	.hero-wash { opacity: .045; }
	.hero-copy h1 { max-width: 100%; font-size: clamp(2.7rem, 14vw, 4.4rem); }
	.hero-description { font-size: .9rem; }
	.hero-actions { align-items: stretch; flex-direction: column; }
	.hero-actions .button { width: 100%; }
	.hero-trust { align-items: flex-start; flex-direction: column; gap: .3rem; }
	.hero-services-grid { gap: .5rem; }
	.hero-service { gap: .5rem; padding: .65rem 2.05rem .65rem .55rem; }
	.hero-service-icon { flex-basis: 27px; width: 27px; height: 27px; }
	.hero-service strong { overflow-wrap: break-word; word-break: normal; font-size: .68rem; line-height: 1.3; }
	html[lang^="ru"] .hero-service strong { font-size: .64rem; letter-spacing: -.01em; }
	.service-grid, .fleet-grid, .homepage-blog-grid { grid-template-columns: minmax(0, 1fr); }
	.service-card { position: relative; display: grid; grid-template-columns: 96px minmax(0,1fr); align-items: stretch; min-height: 124px; padding: 7px; border-radius: 18px; }
	.service-card-image { width: 96px; height: 100%; min-height: 110px; aspect-ratio: auto; border-radius: 13px; }
	.service-card-body { min-width: 0; padding: .55rem 2rem .45rem .78rem; }
	.service-card-title { min-width: 0; gap: .45rem; }
	.service-icon { width: 30px; min-width: 30px; max-width: 30px; height: 30px; padding: 7px; border-radius: 9px; }
	.service-card h3 { display: -webkit-box; overflow: hidden; font-size: 1.02rem; line-height: 1.08; text-overflow: clip; white-space: normal; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
	.service-card p { display: -webkit-box; overflow: hidden; margin-top: .38rem; font-size: .72rem; line-height: 1.35; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
	.service-card .card-arrow { top: .58rem; right: .5rem; width: 26px; height: 26px; }
	.route-preview-visual { min-height: 420px; }
	.blog-grid:not(.homepage-blog-grid) { grid-template-columns: 1fr; }
	.route-chips { right: .9rem; bottom: .9rem; left: .9rem; gap: .45rem; }
	.route-chips > span, .route-chips > a { padding: .6rem .75rem; }
	.blog-archive-hero { padding: 4rem 0 3rem; }
	.blog-archive-hero h1 { max-width: 100%; overflow-wrap: normal; margin-top: 1rem; word-break: normal; font-size: clamp(2.15rem, 10vw, 2.65rem); line-height: 1; letter-spacing: -.035em; text-wrap: balance; }
	.blog-archive-hero p:not(.eyebrow) { margin-top: 1.25rem; font-size: .95rem; line-height: 1.65; }
	.single-article-header { padding: 2.75rem 0 3rem; }
	.single-article-header::after { top: -20%; right: -70%; }
	.single-article-header h1 { overflow-wrap: break-word; word-break: normal; hyphens: none; font-size: clamp(2.25rem, 10.5vw, 3.25rem); line-height: 1.02; letter-spacing: -.035em; text-wrap: balance; }
	.single-article-header .single-excerpt { margin-top: 1.2rem; font-size: .9rem; line-height: 1.65; }
	.single-article-header-media { width: 100%; padding: .4rem; border-radius: 22px; }
	.single-article-header-image { border-radius: 17px; }
	.detail-type-kicker { margin-bottom: .75rem; }
	.blog-card-body > p { min-height: 0; }
	.single-content-wrap { padding-top: 2.5rem; }
	.single-entry-content { font-size: .96rem; }
	.single-entry-content h1, .single-entry-content h2 { line-height: 1.08; }
	.single-entry-content h3 { font-size: 1.45rem; line-height: 1.12; }
	.single-entry-content table { font-size: .82rem; }
	.related-posts-heading { margin-bottom: 1.5rem; }
	.related-post-card .blog-card-body > p { min-height: 0; }
	.detail-contact { margin-top: 2.5rem; padding: 2rem 1.5rem; }
.detail-contact { text-align: center; }
.detail-contact-copy > p:last-child { margin-right: auto; margin-left: auto; }
.detail-contact-list { text-align: left; }
.detail-contact .button-whatsapp { justify-self: center; width: auto; max-width: 100%; padding: .65rem .85rem; font-size: .68rem; }
	.footer-grid { grid-template-columns: 1fr; gap: 2.2rem; padding-bottom: 2.5rem; }
	.site-footer .text-logo strong { font-size: 1.3rem; }
.text-logo .brand-name { max-width: none; overflow-wrap: normal; white-space: nowrap; font-size: clamp(.9rem, 3.8vw, 1.05rem); letter-spacing: -.03em; }
	.text-logo { gap: .55rem; }
	.footer-bottom { align-items: flex-start; flex-direction: column; }
	.whatsapp-float { right: .75rem; bottom: max(.75rem, env(safe-area-inset-bottom)); gap: .38rem; padding: .66rem .86rem; font-size: .7rem; box-shadow: 0 12px 32px rgba(10,86,47,.24); }
	.whatsapp-float .icon { width: 16px; height: 16px; }
	.booking-popup { padding-right: .65rem; padding-left: .65rem; }
	.booking-popup-panel { max-height: calc(100vh - 1.3rem); max-height: calc(100dvh - 1.3rem); padding: 2rem 1rem 1.1rem; }
	.booking-popup-header { margin-bottom: 1.15rem; padding-right: 1.25rem; }
	.booking-popup-brand { width: min(190px, 100%); margin-bottom: .85rem; }
	.booking-popup-panel h2 { font-size: clamp(2rem, 10vw, 3rem); }
	.booking-phone-group { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: .4rem; }
	.booking-field input, .booking-field select { min-height: 46px; padding: .65rem .7rem; font-size: .82rem; }
	.booking-field textarea { min-height: 88px; }
	.booking-form { gap: 1rem; }
	.booking-form-grid { gap: .75rem; }
	.booking-popup-close { top: .75rem; right: .75rem; width: 34px; height: 34px; }
}
@media (max-width: 380px) {
	.hero-services-grid { grid-template-columns: 1fr; }
	.hero-service { min-height: 48px; }
	.single-article-header h1 { font-size: clamp(2.05rem, 10.5vw, 2.65rem); }
}
@media (hover: none) and (pointer: coarse) {
	.button:hover, .service-card:hover, .fleet-card:hover, .blog-card:hover { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}