/* ==========================================================================
   DDEC — compléments pour les compositions (patterns/)
   Seulement ce que les styles de blocs de ddec.css ne couvrent pas.
   Chaque classe se pose dans « Avancé › Classes CSS additionnelles ».
   ========================================================================== */

/* --------------------------------------------------------------------------
   Héros d'accueil : arche + galet + illustration flottante + étiquette
   Groupe « ddec-compo » : 1re image = arche, image « galet », bloc Illustration,
   paragraphe « ddec-etiquette » (facultatif).
   -------------------------------------------------------------------------- */
.ddec-compo{position:relative;max-width:560px;margin-inline:auto;padding-bottom:14%}
.ddec-compo>*{margin:0!important}
.ddec-compo>.wp-block-image:first-child{width:80%;margin-left:auto!important}
.ddec-compo>.wp-block-image:first-child img{width:100%;aspect-ratio:4/5;object-fit:cover}
.ddec-compo>.wp-block-image.is-style-galet{position:absolute;left:0;bottom:0;width:46%;z-index:2}
.ddec-compo>.wp-block-image.is-style-galet img{width:100%;aspect-ratio:1;object-fit:cover;box-shadow:0 0 0 8px #fff}
.ddec-compo>.ddec-illustration{position:absolute;left:0;top:6%;width:42%;z-index:3;background:#fff;border-radius:var(--r-xl);padding:10px 12px;box-shadow:var(--sh-flottant)}
.ddec-compo>.ddec-illustration img{width:100%}
.ddec-compo>.ddec-etiquette{position:absolute;right:0;bottom:8%;z-index:3}
.ddec-etiquette{
	display:inline-flex;align-items:center;gap:.6rem;background:#fff;color:var(--ddec-encre);
	font-size:.875rem;font-weight:550;line-height:1.3;padding:.7rem 1rem .7rem .8rem;border-radius:var(--r-pill);box-shadow:var(--sh-carte)
}
.ddec-etiquette::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--ddec-jaune);box-shadow:0 0 0 3px #fff,0 0 0 4px var(--ddec-jaune);flex:none}
@media (max-width:600px){
	.ddec-compo>.ddec-illustration{width:46%;padding:6px 8px;border-radius:var(--r-md)}
	.ddec-compo>.ddec-etiquette{font-size:.8125rem;padding:.55rem .8rem .55rem .7rem}
}

/* --------------------------------------------------------------------------
   Colonnes séparées par des filets sauge (« ddec-filets » sur le bloc Colonnes)
   -------------------------------------------------------------------------- */
@media (min-width:782px){
	.ddec-filets>.wp-block-column+.wp-block-column{border-left:1px solid var(--ddec-sauge-70);padding-left:var(--wp--preset--spacing--50)}
}
@media (max-width:781px){
	.ddec-filets>.wp-block-column+.wp-block-column{border-top:1px solid var(--ddec-sauge-70);padding-top:var(--wp--preset--spacing--50)}
}

/* --------------------------------------------------------------------------
   Frise d'étapes (« ddec-etapes » sur le bloc Colonnes) : un trait pointillé
   relie les pastilles numérotées
   -------------------------------------------------------------------------- */
.ddec-etapes{position:relative}
.ddec-etapes .is-style-pastille{position:relative;z-index:1}
@media (min-width:782px){
	.ddec-etapes::before{content:"";position:absolute;left:40px;right:12%;top:33px;border-top:2px dashed var(--ddec-sauge);z-index:0}
}

/* --------------------------------------------------------------------------
   Portes d'entrée en bento : images à hauteur égale, carte pleine hauteur
   -------------------------------------------------------------------------- */
.ddec-portes>*{height:100%}
.ddec-portes .wp-block-image img{width:100%;height:clamp(190px,17vw,240px);object-fit:cover}
.ddec-portes .is-style-carte-survol{gap:.75rem}
.ddec-portes .is-style-carte-survol>.wp-block-ddec-illustration{margin-inline:auto!important;padding-top:1rem}

/* Carte claire : le lien fléché reste au pied de la carte */
.ddec-pied-carte{margin-top:auto!important}

/* --------------------------------------------------------------------------
   Initiales (cartes d'équipe, témoignages)
   -------------------------------------------------------------------------- */
.ddec-initiales{
	width:72px;height:72px;border-radius:50%;display:grid;place-items:center;flex:none;
	background:var(--ddec-brume);color:var(--ddec-encre);font-weight:600;font-size:1.25rem;letter-spacing:.02em;margin:0
}
.has-brume-background-color .ddec-initiales,.is-style-carte .ddec-initiales{background:#fff}
.ddec-initiales.is-petite{width:48px;height:48px;font-size:.9375rem}

/* Petite étiquette (type de document, catégorie…) */
.ddec-tag{
	display:inline-flex;align-items:center;padding:.25rem .7rem;border-radius:var(--r-pill);
	background:var(--ddec-brume);color:var(--ddec-encre);font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;line-height:1.5
}
.has-brume-background-color .ddec-tag,.is-style-carte .ddec-tag{background:#fff}

/* --------------------------------------------------------------------------
   Lignes (documents, agenda) : une ligne par élément, filet entre chacune
   -------------------------------------------------------------------------- */
.ddec-lignes>*{margin:0!important}
.ddec-lignes>*{position:relative}
.ddec-lignes>*+*::before{content:"";position:absolute;left:1rem;right:1rem;top:0;border-top:1px solid var(--ddec-line)}
.ddec-lignes>*:hover::before,.ddec-lignes>*:hover+*::before{opacity:0}
.ddec-lignes :where(h3,h4) a{text-decoration:none}
.ddec-lignes :where(h3,h4) a:hover{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--ddec-jaune)}
.ddec-lignes>*{transition:background-color .3s,transform .6s var(--ease-spring)}
.ddec-lignes>*:hover{background:var(--ddec-brume)}
.ddec-lignes>* :where(h3,h4){margin:0}
.ddec-lignes .wp-block-button__link{min-height:44px;padding:.75rem 1.1rem;font-size:.875rem}

/* --------------------------------------------------------------------------
   Bandeau défilant de mots (« ddec-mots » + style Bandeau défilant)
   -------------------------------------------------------------------------- */
.ddec-mots .ddec-defilant__piste>*{display:inline-flex;align-items:center}
.ddec-mots .ddec-defilant__piste>*::after{content:"";width:9px;height:9px;border-radius:50%;background:var(--ddec-sauge);margin-left:var(--ddec-mots-gap,2.5rem)}
.ddec-mots{--ddec-mots-gap:2.5rem}

/* --------------------------------------------------------------------------
   Témoignages : la carte pousse la signature en bas
   -------------------------------------------------------------------------- */
.ddec-temoignage{display:flex;flex-direction:column;height:100%}
.ddec-temoignage>.ddec-signature{margin-top:auto!important;padding-top:var(--wp--preset--spacing--40)}
.ddec-temoignage p.ddec-avis{font-size:var(--wp--preset--font-size--lg);line-height:1.5;color:var(--ddec-encre);font-weight:450;letter-spacing:-.01em}
.has-encre-background-color.ddec-temoignage p.ddec-avis{color:#fff}

/* --------------------------------------------------------------------------
   Coordonnées : liste sans puces, libellés en petites capitales
   -------------------------------------------------------------------------- */
.ddec-infos{list-style:none;padding:0;margin:0}
.ddec-infos li{padding:.85rem 0;border-top:1px solid var(--ddec-line)}
.ddec-infos li:first-child{border-top:0;padding-top:0}
.ddec-infos strong{display:block;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ddec-encre);font-weight:600;margin-bottom:.15rem}

/* --------------------------------------------------------------------------
   Galerie : coins arrondis, léger zoom au survol
   -------------------------------------------------------------------------- */
.wp-block-gallery.ddec-galerie .wp-block-image{border-radius:var(--r-lg);overflow:hidden}
.wp-block-gallery.ddec-galerie .wp-block-image img{transition:transform 1.2s var(--ease-spring);border-radius:0!important}
.wp-block-gallery.ddec-galerie .wp-block-image:hover img{transform:scale(1.05)}

/* --------------------------------------------------------------------------
   Illustration en fond de carte d'appel (alignée en bas à droite)
   -------------------------------------------------------------------------- */
.ddec-appel-illu{position:relative;overflow:hidden}
@media (min-width:782px){
	.ddec-appel-illu>.ddec-illustration{position:absolute;right:clamp(1rem,3vw,2.5rem);bottom:0;margin:0!important}
	.ddec-appel-illu>:not(.ddec-illustration){max-width:min(60%,520px)}
}

/* Frise sous le héros d'accueil */
.ddec-frise-heros{margin-top:var(--wp--preset--spacing--60)!important;position:relative;z-index:0}

/* Héros photo dont le contenu est placé en bas à gauche : le conteneur intérieur
   garde toute la largeur pour que le groupe « large » s'aligne sur la grille du site */
.wp-block-cover.has-custom-content-position.has-custom-content-position:is(.is-position-bottom-left,.is-position-center-left,.is-position-top-left) .wp-block-cover__inner-container{width:100%}


/* Liens des bandeaux défilants : sans soulignement, trait jaune au survol */
.ddec-mots a{text-decoration:none}
.ddec-mots a:hover{text-decoration:underline;text-decoration-color:var(--ddec-jaune);text-decoration-thickness:3px;text-underline-offset:6px}
