/* Mobile refinements; desktop typography and layout stay in their existing styles. */
@media (max-width: 767px) {
 body { padding-bottom: calc(76px + env(safe-area-inset-bottom, 0px)); }
 body .container, body .header-container { padding-left: 20px; padding-right: 20px; }
 body main h1 { font-size: clamp(2rem, 8.4vw, 2.65rem); line-height: 1.12; overflow-wrap: break-word; text-wrap: balance; }
 body main h2 { overflow-wrap: break-word; }
 body main .premium-badge { max-width: 100%; white-space: normal; line-height: 1.5; letter-spacing: .08em; padding: 7px 12px; }
 body .hero-image-bg { height: auto; min-height: 0; }
 body .hero-content-wrapper { position: relative; top: auto; transform: none; padding-top: 125px; padding-bottom: 100px; }
 body .hero-award h1 { margin: 0 0 20px; }
 body .hero-content-wrapper p { font-size: 1rem; line-height: 1.65; margin-bottom: 0; }
 body .floating-form-container { padding: 26px 20px; margin-top: -45px; border-radius: 18px; }
 body .form-flex { gap: 24px; }
 body .form-text-content, body .form-input-content { min-width: 0; }
 body .floating-form-container h2 { font-size: 1.7rem; }
 body .form-text-content ul { margin-top: 20px !important; }
 body .form-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
 body .form-grid > *, body .form-floating-group { min-width: 0; }
 body .form-input { font-size: 16px; min-height: 54px; }
 body textarea.form-input { min-height: 130px; }
 body main .btn-submit { max-width: 100%; white-space: normal; min-height: 48px; line-height: 1.4; }
 body .how-we-help { padding: 45px 0; }
 body .mini-about { padding: 45px 0; }
 body .mini-about-grid { gap: 28px; }
 body .mini-about-stats { gap: 20px; margin: 24px 0; }
 body .contact-page-main .contact-hero h1, body .industry-page .industry-hero h1 { font-size: clamp(2rem,8.4vw,2.65rem); line-height: 1.12; }
 body .hover-lift-row { margin: 0; padding: 0; border: 0; border-radius: 0; }
 body .feature-row { gap: 22px; margin-bottom: 44px; }
 body .feature-row:last-child { margin-bottom: 0; }
 body .feature-image { animation: none; }
 body .feature-image > div { min-height: 0; aspect-ratio: 3 / 2; border-radius: 16px; }
 body .feature-actual-img { object-fit: cover; }
 body .feature-row:nth-child(2) .feature-actual-img { object-fit: contain; background: #fff; }
 body .feature-text, body .hover-lift-row:hover .feature-text { transform: none; }
 body .feature-desc, body .form-subtitle { font-size: 1rem; line-height: 1.65; }
 body .arvento-reasons, body .arvento-insights, body .arvento-faq { padding: 44px 0; }
 body .arvento-reasons-grid, body .arvento-insights-grid { grid-template-columns: minmax(0,1fr); gap: 20px; }
 body .arvento-insights article { grid-template-rows: auto; gap: 14px; }
 body .arvento-faq summary { padding: 18px 48px 18px 18px; font-size: .98rem; }
 body .arvento-faq details > div { padding: 0 18px 18px; }
 body .services-page-main .services-hero, body .industry-page .industry-hero { padding: 125px 0 48px; }
 body .services-page-main .services-hero .display-title { font-size: clamp(2rem,8.4vw,2.65rem); line-height: 1.12; }
 body .services-page-main .hero-lead, body .industry-page .industry-lead { font-size: 1rem; line-height: 1.7; }
 body .arvento-service-detail .service-premium-row { flex-direction: column; gap: 26px; margin-bottom: 35px; padding-top: 0; }
 body .arvento-service-detail .service-sticky-sidebar, body .arvento-service-detail .service-scroll-content { width: 100%; min-width: 0; flex-basis: auto; position: static; }
 body .arvento-service-detail .service-3d-card { padding: 24px 20px; }
 body .arvento-service-detail .service-digital-grid, body .arvento-service-detail .service-reporting-grid, body .arvento-service-detail .service-cfo-grid,
 body .arvento-service-detail .service-digital-followup, body .arvento-service-detail .service-reporting-systems,
 body .arvento-service-detail .service-process-grid, body .arvento-service-detail .service-faq-layout { grid-template-columns: minmax(0,1fr); gap: 22px; }
 body .arvento-service-detail .service-example, body .arvento-service-detail .service-insight-panel,
 body .arvento-service-detail .service-faq-layout { padding: 24px 20px; }
 body .arvento-service-detail .service-digital-example { display: block; }
 body .industry-page .industry-cards, body .industry-page .industry-featured, body .industry-page .industry-feature-row,
 body .industry-page .industry-kpi-grid, body .industry-page .industry-faq-panel { grid-template-columns: minmax(0,1fr); gap: 22px; }
 body .industry-page .industry-feature-copy { order: 0 !important; }
 body .industry-page .industry-card-copy { padding: 24px 20px; }
 body .industry-page .industry-featured .industry-card-image img { min-height: 0; height: auto; }
 body .contact-page-main .contact-hero { padding: 125px 0 65px; }
 body .contact-page-main .contact-grid-wrapper { margin-top: -20px; padding: 0 20px; }
 body .contact-page-main .contact-grid { gap: 26px; }
 body .contact-page-main .contact-form-col { order: 1; min-width: 0; }
 body .contact-page-main .contact-info-col { order: 2; padding-top: 0; gap: 16px; }
 body .contact-page-main .form-glass-container { padding: 58px 20px 26px; border-radius: 18px; }
 body .contact-page-main .info-card { padding: 22px 18px; gap: 14px; }
 body .contact-page-main .info-content { min-width: 0; overflow-wrap: anywhere; }
 body .contact-page-main { padding-bottom: 45px; }
 body main .services-cta { padding: 48px 0 !important; }
 body main .services-cta .cta-title { font-size: 1.9rem !important; }
 body main .services-cta .cta-text { font-size: 1rem !important; margin-bottom: 24px !important; }
 body main .services-cta .btn-submit { width: 100% !important; padding: 16px 20px !important; }
 body .mobile-sticky-cta { padding-bottom: calc(10px + env(safe-area-inset-bottom,0px)); }
 body .mobile-nav-overlay { padding-top: calc(var(--mobile-header-offset,80px) + 20px); padding-bottom: calc(90px + env(safe-area-inset-bottom,0px)); overscroll-behavior: contain; }
 body .mobile-nav-overlay > ul > li { margin-bottom: 16px; }
 body .mobile-nav-overlay a { font-size: 1.65rem; line-height: 1.4; min-height: 44px; }
 body .mobile-nav-overlay .submenu-toggle, body .mobile-menu-toggle { min-width: 44px; min-height: 44px; }
 body .mobile-nav-overlay ul.sub-menu a { font-size: 1rem; padding: 10px 16px; margin: 0; overflow-wrap: break-word; }
 body .mobile-nav-overlay .submenu-toggle { width: 44px; height: 44px; }
}
@media (max-width: 767px) and (hover: none) {
 body .hover-lift-row:hover, body .floating-form-container:hover, body .form-glass-container:hover,
 body .info-card:hover, body .hover-lift-row:hover .feature-image > div { transform: none; }
 body .contact-page-main .btn-submit::after { animation: none; }
}
