/*
Theme Name: Neve Child
Theme URI: https://themeisle.com/themes/neve/
Template: neve
Author: ThemeIsle
Author URI: https://themeisle.com
Description: Neve is a next-generation, ultra-fast WordPress theme designed for top performance, SEO, and Core Web Vitals. Its lightweight codebase and small size ensure minimal overhead and lightning-fast load times. Fully compatible with the block editor, popular page builders (Elementor, Bricks, Oxygen etc), and WooCommerce, it’s perfect for blogs, small businesses, agencies, portfolios, and online stores. With responsive design, multilingual translations, and easy customization options, Neve empowers you to create a future-proof, high-ranking online presence. Discover everything Neve has to offer and explore our powerful premium version at https://themeisle.com/themes/neve/.
Tags: blog,custom-logo,e-commerce,rtl-language-support,grid-layout,one-column,two-columns,custom-background,custom-colors,custom-header,custom-menu,featured-image-header,featured-images,flexible-header,full-width-template,sticky-post,theme-options,threaded-comments,translation-ready,accessibility-ready,wide-blocks,block-styles,footer-widgets,portfolio,left-sidebar,right-sidebar
Version: 4.1.4.1762029762
Updated: 2025-11-01 20:42:42

*/

/*
Theme Name: Neve Child
Template: neve
*/

/* Premium harmonized CSS without inline styles */

/* Global resets */
img {
  max-width: 100%;
  height: auto;
}

h1, h2, h3 {
  font-family: 'Playfair Display', serif;
  color: #2b3a2f;
}

p {
  font-family: 'Lato', sans-serif;
  color: #2b3a2f;
  line-height: 1.6;
}

/* Presentation section */
#presentation {
  background-color: #ddebde;
  padding: 80px 20px;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.presentation-wrapper {
  max-width: 700px;
  margin: auto;
  position: relative;
  z-index: 10;
}

/* Tagline */
.presentation-tagline {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 5px;
}

.presentation-tagline .bar {
  width: 6px;
  height: 20px;
  background: #749d83;
  border-radius: 3px;
}

.presentation-tagline p {
  font-size: 1.05em;
  color: #749d83;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  margin: 0;
}

/* Main title */
.presentation-name {
  margin-top: 5px;
  font-size: 2.8em;
  font-weight: 700;
}

.presentation-title {
  font-size: 2em;
  margin-top: -10px;
  font-weight: 700;
}

/* Logo */
.presentation-logo {
  width: 50%;
  max-width: 360px;
  margin-top: 10px;
}

/* RDV texts */
.presentation-rdv {
  font-size: 1.7em;
  margin-top: 25px;
  font-weight: 700;
}

.presentation-urgence {
  font-size: 1.6em;
  color: #749d83;
  font-weight: 700;
  margin-top: 0;
}

/* CTA */
.cta-call {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #749d83;
  padding: 14px 30px;
  border-radius: 50px;
  color: white !important;
  font-size: 1.3em;
  font-weight: 700;
  text-decoration: none !important;
  margin-top: 10px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.12);
  transition: 0.2s ease;
}

.cta-call:hover {
  background: #5f8970;
}

/* Diplôme block */
.formation-block {
  background-color: #e9f3ea;
  border-radius: 12px;
  padding: 25px;
  margin: 35px auto 0;
  max-width: 700px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 30px;
  box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.formation-photo img {
  max-width: 228px;
  border-radius: 14px;
  box-shadow: 0 0 12px rgba(0,0,0,0.12);
}

.formation-text {
  flex: 1;
  min-width: 260px;
}

.formation-title {
  font-size: 1.3em;
  font-weight: 700;
  margin-bottom: 5px;
  display: block;
}

/* Divider */
.premium-divider {
  width: 120px;
  height: 4px;
  background: #749d83;
  margin: 60px auto 40px;
  border-radius: 2px;
}

.premium-divider.before-title {
  margin: 80px auto 50px;
}

.premium-divider.between-blocks {
  margin: 50px auto 30px;
}

@media (max-width: 768px) {
  .premium-divider {
    margin: 40px auto 30px !important;
    width: 90px;
  }
  .premium-divider.before-title {
    margin: 50px auto 35px !important;
  }
  .premium-divider.between-blocks {
    margin: 40px auto 25px !important;
  }
}

/* Responsive */
@media (max-width: 850px) {
  .soin-grid {
    grid-template-columns: 1fr;
  }

  .formation-photo img {
    max-width: 200px;
  }

  .cta-call {
    font-size: 1.15em;
    padding: 12px 22px;
  }

  h1 { font-size: 1.8em; }
  h2 { font-size: 1.5em !important; }
  p { font-size: 1em; }

  #contact .contact-grid {
    grid-template-columns: 1fr;
  }
}

/*************************************************
  BOUTON RETOUR HAUT
*************************************************/

#back-to-top {
  position: fixed;
  bottom: 25px;
  right: 25px;
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background: #2b3a2f;
  color: #fff;
  border: none;
  font-size: 22px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  z-index: 2000;
  opacity: 0;
  visibility: hidden;
  transition: opacity .3s ease, visibility .3s ease, transform .3s ease;
}

#back-to-top.show {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
}

#back-to-top:hover {
  background: #3c4b41;
}
/*************************************************
   FIX RESPONSIVE — SECTION SOINS
*************************************************/

@media (max-width: 850px) {

  /* La grille passe bien en 1 colonne */
  .soin-grid {
    grid-template-columns: 1fr !important;
  }

  /* Corrige les cartes qui utilisent grid-column: span 2 */
  .soin-card[style*="grid-column"] {
    grid-column: auto !important;
  }

  /* Réduit les colonnes internes sur les listes */
  .soin-card ul {
    columns: 1 !important;
  }
}
/*************************************************
   CENTRAGE LISTES + PARAGRAPHES DANS .soin-card
*************************************************/

.soin-card ul {
  padding-left: 0;
  list-style-position: inside;
  text-align: center;
}

.soin-card li {
  margin-bottom: 6px;
}

/* Centrer les paragraphes uniquement dans les cartes */
.soin-card p {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
/********************************* Modification titre pour mobile *************************/
/********************************* Modification titre pour mobile *************************/
@media(max-width:700px){
  #presentation h1 {
    font-size: 2.3em !important;
  }
  #presentation h1 span {
    font-size: 0.6em !important;
  }
}
/********************************
style PREMIUM pour tous les H2*********/
.premium-h2 {
  font-family: 'Playfair Display', serif;
  color: #2b3a2f;
  font-size: 2.2em;
  font-weight: 700;
  text-align: center;
  margin-bottom: 20px;
  line-height: 1.3;
}

/* Version mobile */
@media (max-width: 700px) {
  .premium-h2 {
    font-size: 1.8em;
  }
}
/******************************
 PREMIUM H3 CENTRÉ
******************************/
.premium-h3-center {
  font-family: 'Playfair Display', serif;
  color: #2b3a2f;
  font-size: 1.6em;
  font-weight: 700;
  margin-bottom: 15px;
  line-height: 1.3;
  text-align: center;
}

/******************************
 PREMIUM H3 ALIGNÉ À GAUCHE
******************************/
.premium-h3 {
  font-family: 'Playfair Display', serif;
  color: #2b3a2f;
  font-size: 1.6em;
  font-weight: 700;
  margin-bottom: 15px;
  line-height: 1.3;
  text-align: left;
}

/******************************
 RESPONSIVE
******************************/
@media (max-width: 700px) {
  .premium-h3,
  .premium-h3-center {
    font-size: 1.4em;
  }
}

