/*
Theme Name: Twenty Twenty-Four Child
Template: twentytwentyfour
Theme URI: https://wordpress.org/themes/twentytwentyfour/
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Four emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Requires at least: 6.7
Tested up to: 6.8
Requires PHP: 7.2
Version: 1.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfive
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/
 
/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */

/* Cible le conteneur parent du header */
header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: var(--wp--preset--color--base-2) !important; /* Fond opaque */
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); /* Ombre pour le détachement */
    padding-top: 10px;
    padding-bottom: 10px;
}

.cky-btn-revisit-wrapper {
    display: none !important;
}

.icon-wrapper {
  --icon-bg: #ffe2da;
  --icon-color: var(--wp--preset--color--accent-4);
  --icon-size: 20px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  background-color: var(--icon-bg);
  padding: 10px;
  border-radius: 12px;
}

.icon {
  width: var(--icon-size);
  height: var(--icon-size);

  fill: none;
  stroke: var(--icon-color);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.icon-wrapper.is-blue {
  --icon-bg: #e7f0ff;
  --icon-color: #1e4fd8;
}

.featured-label {
  background: var(--wp--preset--color--accent-4);
  color: #ffffff;
  text-transform: uppercase;
  font-size: 12px !important;
  font-weight: bold;
  border-radius: 5px;
  padding: 2px !important;
  display: inline-block !important; /* ajoute !important */
  width: auto !important;           /* évite le 100% */
  max-width: fit-content;           /* adapte à la taille du texte */
}

/* Masquer les sous-menus de "Services" sur mobile */
@media (max-width: 767px) {
    .wp-block-navigation-item.has-child ul.wp-block-navigation__submenu-container {
        display: none !important;
    }
}

/* Bandeau sticky mobile */
.mobile-sticky-banner {
    display: none;
    position: fixed;
    left: 0;
    right: 0;
    bottom: constant(safe-area-inset-bottom);
    bottom: env(safe-area-inset-bottom);
    background-color: #FFFFFF;
    border-top: 1px solid #ddd;
    padding: 10px;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
    z-index: 9999;
}

@media (max-width: 767px) {
    .mobile-sticky-banner {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}

    .sticky-button {
        flex: 1;
        text-align: center;
        padding: 12px;
        margin: 0 5px;
        border-radius: 20px;
        font-weight: bold;
        text-decoration: none;
        max-width: 48%; /* Pour éviter que les boutons ne touchent les bords */
    }
    /* Bouton "Nous appeler" (à gauche) */
    .call-button {
        color: var(--wp--preset--color--accent-4) !important;
        border: 2px solid var(--wp--preset--color--accent-4);
        background-color: transparent;
    }

    /* Bouton "Devis en ligne" (à droite) */
    .devis-button {
        background-color: var(--wp--preset--color--accent-4);
		color: #FFFFFF;
        border: none;
    }
}

/* Appliquer un style global aux wrappers */
.wpcf7-form-control-wrap {
  display: block;
  margin-bottom: 1rem; /* espace entre les champs */
}

/* Inputs textuels + email + tel + url + password */
.wpcf7-form-control[type="text"],
.wpcf7-form-control[type="email"],
.wpcf7-form-control[type="tel"],
.wpcf7-form-control[type="url"],
.wpcf7-form-control[type="password"],
textarea.wpcf7-form-control,
select.wpcf7-form-control {
  width: 90%;
  padding: 12px 14px;
  border: 1px solid #ccc;
  border-radius: 8px;
  background: #fff;
  font-size: 16px;
  transition: all 0.3s ease;
}

/* Focus avec effet visuel */
.wpcf7-form-control[type="text"]:focus,
.wpcf7-form-control[type="email"]:focus,
.wpcf7-form-control[type="tel"]:focus,
.wpcf7-form-control[type="url"]:focus,
.wpcf7-form-control[type="password"]:focus,
textarea.wpcf7-form-control:focus,
select.wpcf7-form-control:focus {
  border-color: #eb7f1d;
  box-shadow: 0 0 0 3px rgba(0,115,230,0.2);
  outline: none;
}

/* Placeholder plus doux */
.wpcf7-form-control::placeholder {
  color: #888;
  font-style: italic;
}

.wpcf7-buttons-wrapper {
  display: flex;               /* active flexbox */
  justify-content: flex-end;   /* aligne à droite */
  align-items: center;         /* centre verticalement */
  gap: 20px;                   /* espace entre boutons */
  flex-wrap: nowrap;           /* empêche l’empilement */
}

/* S'assure que les boutons restent flex items */
.wpcf7-buttons-wrapper .cf7-btn-previous,
.wpcf7-buttons-wrapper .cf7-btn-submit {
  display: inline-flex;       /* nécessaire pour que le gap fonctionne correctement */
}