/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

    /* MAX-WIDTH 1360px CONSTRAINT */
    .about, .prestations, .catalogue, .valeurs-wrap, .points, .realisations, .fb-section, .partenaires, .petits, .avis, .contact-section, footer { padding-left: max(60px, calc(50vw - 680px)); padding-right: max(60px, calc(50vw - 680px)); }
    .hero { padding-left: max(40px, calc(50vw - 680px)); padding-right: max(40px, calc(50vw - 680px)); }
    .topbar { padding-left: max(40px, calc(50vw - 680px)); padding-right: max(40px, calc(50vw - 680px)); }

    /* RESPONSIVE */
    @media(max-width:960px) {
      .topbar { padding: 0 20px }
      nav ul { display: none }
      .hero { padding: 100px 20px 40px }
      .hero-gallery { grid-template-columns: 1fr 1fr; gap: 15px; margin: 40px auto 0; padding: 0 }
      .hg-1, .hg-3, .hg-5 { transform: none; height: 220px; }
      .hg-2, .hg-4 { transform: none; height: 220px; }
      .hg-5 { grid-column: span 2; }
      .about { grid-template-columns: 1fr; padding: 60px 24px; gap: 40px }
      .about-img { height: 300px }
      .prestations { padding: 60px 24px }
      .slider-track { overflow-x: auto; scroll-snap-type: x mandatory; }
      .prest-card { flex: 0 0 calc(50% - 12px) }
      .catalogue { padding: 60px 24px }
      .cat-grid { grid-template-columns: 1fr 1fr; gap: 20px }
      .contact-section { grid-template-columns: 1fr; padding: 60px 24px; gap: 40px }
      .contact-form { padding: 30px 20px }
      .valeurs-wrap { padding: 0 20px }
      .valeurs { padding: 50px 24px; border-radius: 24px }
      .valeurs-grid { grid-template-columns: 1fr; gap: 20px }
      .points { grid-template-columns: 1fr; padding: 60px 24px }
      .realisations { padding: 60px 24px }
      .gallery { grid-template-columns: 1fr 1fr; grid-template-rows: auto }
      .gallery-wide { grid-column: span 1 }
      .fb-section { grid-template-columns: 1fr; padding: 60px 24px; gap: 40px }
      .partenaires { padding: 60px 24px }
      .petits { padding: 60px 24px }
      .petits-grid { grid-template-columns: 1fr }
      .avis { grid-template-columns: 1fr; padding: 60px 24px; gap: 40px }
      footer { padding: 40px 24px 24px }
      .footer-grid { grid-template-columns: 1fr 1fr; gap: 28px }
      .real-head { flex-direction: column; align-items: flex-start; gap: 16px }
    }
    @media(max-width:600px) {
      .prest-card { flex: 0 0 100% }
      .cat-grid { grid-template-columns: 1fr }
    }