/* @override 
	https://dev.olivgraphic.com/wp-content/themes/hello-theme-olivgraphic/style.css?* */
/* 
Theme Name: Hello Olivgraphic
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
*/


/* ============================================================
   VARIABLES GLOBALES
   ============================================================ */

:root {
	--radius:        10px;
	--radius-s:      20px;
	--radius-l:      50px;
	--content-width: 1500px;
	--blue:          #1e626f;
	--soft-grey: #d7e8eb;
	--red:           #f33c32;
	--vp-color-brand : #1e626f !important;
	--vp-filter-minimal--items-active__color : #f33c32 !important ;
	--shadow:0px 0px 15px rgba(13, 13, 13, 0.15);
}

a {
	color: var(--blue);
	text-decoration: none !important;
}

a:hover {
	color: var(--red);
	text-decoration: none !important;
}


/* ============================================================
   HEADER
   ============================================================ */


.hfe-site-logo-img {
	border-radius: var(--radius) !important;
	overflow: hidden;
}

.hfe-page-title a {
	text-decoration: none;
}

#page-title {
	display: inherit;
	margin-bottom: 10px;
	max-width: 1100px;
}

h1.elementor-heading-title {
	font-size: 2.5em !important;
}

.page-subtitle {
	color: var(--blue) !important;
	opacity: 0.7;
	font-size: 2em;
}

#page-title-container {
	background: var(--blue) !important;
}

#page-title-container video {
	display: none;
}

#page-title-container .elementor-background-video-container:after {
	content: " ";
	position: absolute;
	width: 100vw;
	height: 100vh;
	background: linear-gradient(
		to bottom,
		rgba(14, 38, 44, 0.01)  0.2%,
		rgba(14, 38, 44, 0.7)  60.6%,
		rgba(14, 38, 44, 0.96) 100%
	) !important;
}


/* ============================================================
   PAGE D'ACCUEIL
   ============================================================ */

.home #page-title {
	display: none;
}

.home #page-title-container video {
	display: inherit;
}

.hero-home {
	display: none !important;
}

.home .hero-home {
	display: inherit !important;
}

/* Accès en mode édition Elementor */
.elementor-editor-active.postid-1722 .hero-home {
	display: inherit !important;
}


/* ============================================================
   LAYOUT & CONTAINERS
   ============================================================ */

.wrap {
	max-width: var(--content-width) !important;
	margin: 0 auto;
}

.wrap-x {
	max-width: calc(100px + var(--content-width)) !important;
	margin: 0 auto;
}

.radius {
	border-radius: var(--radius) !important;
	overflow: hidden;
}

.radius-l {
	border-radius: var(--radius-l) !important;
	overflow: hidden;
}

.shadow {
	box-shadow: var(--shadow) !important;
}

#main img {
	border-radius: var(--radius-s) !important;
	overflow: hidden;
}


/* ============================================================
   EN-TÊTE DES ARTICLES / PAGES
   ============================================================ */

.post-header {
	max-width: var(--content-width) !important;
	margin: 0 auto;
	padding: 40px 20px;
}

.post-header .entry-title {
	max-width: var(--content-width) !important;
	margin: 0 auto;
	font-size: 3.2em;
	color: #000;
	text-align: center;
	font-weight: normal;
	font-style: normal;
}

.post-header .post-subtitle {
	font-size: 1.5em;
	margin: 12px auto 0;
	color: var(--red) !important;
	text-align: center;
}
/* ============================================================
   POST META
   ============================================================ */


.home .post-meta {
  display: none;
}

.post-meta {
  padding: 10px;
  font-size: 0.95em;
  color: var(--blue);
  text-align: center;
}

.post-meta > span,
.post-meta > time {
margin: 10px;

}

.post-meta i {
  font-size: 0.9em;
  opacity: 0.7;
}

.post-meta__author a,
.post-meta__comments a {
  color: inherit;
  text-decoration: none;
}

.post-meta__author a:hover,
.post-meta__comments a:hover {
  color: var(--red);
}


/* ============================================================
   ARCHIVE
   ============================================================ */

.archive-desc {
	display: none;
	padding: 4%;
	border-radius: var(--radius-s) !important;
	font-size: 1.25em;
	text-align: center;
    background-color: var(--soft-grey);
    background-image: url("/wp-content/uploads/bg-texture-1.jpg");
    background-position: center;
    background-size: 100% auto;
	margin: 0 -5% 20px;

}

.category .archive-desc {
	display: inline-block;
}


.archive .page-content {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	padding: 2%;
}

.archive .post-custom {
	padding: 1%;
	width: 48%;
	margin: 1%;
}

.archive .post-thumb a img {
	width: 100%;
	border-radius: var(--radius-s) !important;
}

.archive .post-title {
	font-size: 1.5em;
	text-align: center;
	margin-bottom: 0;
}

.archive .post-meta {
	 padding: 10px;
  font-size: 0.95em;
  color: var(--blue);
  text-align: center;
}




.tpae-preset-blog {
  display: flex;
  gap: 13px;
  border-radius: 10px;
  overflow: hidden;
  background-color: #ffffff;
  position: relative;
  
}

.tpae-preset-image-container {
  position: relative;
  width: 40%;
  overflow: hidden;
  border-radius: 4px 0px 0px 4px;
}

.tpae-preset-image{
  width: 96%;
  height: auto;
  display: flex;
  border-radius: var(--radius-s) !important;
  
}

.tpae-preset-image-container img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: var(--radius-s) !important;
}



.tpae-preset-blog:hover .tpae-preset-image-container img {
  transform: scale(1.05);
  transition: transform 0.3s ease-in-out;
}

.tpae-preset-content {
  position: relative;
  width: 60%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  padding: 10px 30px 30px;
}

.tpae-preset-title {
	color: var(--blue) !important;
}

.tpae-preset-excerpt{
  color: #000000;
}

.tpae-preset-excerpt:hover{
  color: #000000;
}

.tpae-paragraph{

}

.tpae-slb-category{
  font-size: 12px;
  line-height: 20px;
  font-weight: 400;
  color: #000000;
  padding: 5px 4px 5px 4px;
  background-color: #ededed;
border-radius: 3px 0 0 3px;
line-height: 26px;
position: relative;
margin-right: 20px;
cursor: default;
user-select: none;
transition: color 0.2s;
}

.tpae-slb-category::after{
  content: '';
position: absolute;
border-bottom: 13px solid transparent;
border-left: 10px solid #ededed;
border-top: 13px solid transparent;
right: -10px;
top: 0;
}

.solid-line{
  width: 75px;
  height: 5px;
  background-color: var(--blue);
  display: inline-block;
  opacity: 0.4;
}

.tpae-preset-blog:hover .solid-line{
  width: 0px;
  transition: width 0.5s ease-in-out;

}

.tpae-preset-meta-category{
  width: 100%;
  margin: 0px;
  padding-top: 20px;
}





/* ============================================================
   POST
   ============================================================ */



.post-intro {
	padding: 4%;
	border-radius: var(--radius-s) !important;
	font-size: 1.1em;
	text-align: center;
    background-color: var(--soft-grey);
    background-image: url("/wp-content/uploads/bg-texture-1.jpg");
    background-position: center;
    background-size: 100% auto;
	margin: 20px -10%; color: var(--blue) !important;
}

.post-single {
	 margin: 0px auto;
	
}

.single-post .post-content {
	 margin: 0px auto;
	max-width: 800px !important;
}

.post-content h2, .post-content h3{
	font-weight: 700 !important;
		color: var(--blue) !important;

}



/* ============================================================
   POST-CALLTO
   ============================================================ */

.post-callto {
	padding: 6%;
	border-radius: var(--radius-s) !important;
	font-size: 1.25em;
	text-align: center;
    background-color: var(--soft-grey);
    background-image: url("/wp-content/uploads/bg-blue2.jpg");
    background-position: center;
    background-size: 100% auto;
	margin: 20px -20%;

}

.post-callto.alignfull{
	width: 140% !important;

}

.post-callto h3 {
	color: #FFF !important;
	font-size: 1em !important;
}

.post-callto .wp-element-button{
	background-color: var(--red) !important;
	font-weight: bold;
	color: #FFF !important; 		font-size: 0.8em !important;

}


/* ============================================================
   POST-CALLTO
   ============================================================ */

.post-nav {
	padding:0% ;
	border-radius: var(--radius-s) !important;
	font-size: 1em;
	text-align: center;
    background-color: var(--soft-grey);
    background-image: url("/wp-content/uploads/bg-texture-1.jpg");
    background-position: center;
    background-size: 100% auto;
	margin-bottom: 30px;
}

.post-nav  .prev-post-content span,
.post-nav  .next-post-content span {
	text-transform: none;
	font-size: 1.2em;
	font-weight: normal;
	font-style: normal;
	line-height: 1.2em;
}

.post-nav  a:hover .prev-post-content span,
.post-nav  a:hover .next-post-content span {
	color: var(--red) !important;
}



/* ============================================================
   TYPOGRAPHIE UTILITAIRES
   ============================================================ */

.fat-title * {
	font-weight: 800 !important;
	letter-spacing: -2px !important;
}

.fat-title i,
.fat-title b {
	font-weight: 400 !important;
}




/* ============================================================
   PORTFOLIO
   ============================================================ */

.vp-filter__item.vp-filter__item a {
	border-radius: 10px;
	
}

.vp-filter__item.vp-filter__item-active a {
	background-color: var(--soft-grey);
}

.vp-portfolio {
	max-width: 1600px;
	margin: 0 auto;
}

.vp-portfolio__item {
	border-radius: 20px !important;
	border: 1px solid #fff;
	overflow: hidden !important;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	transform: scale(1, 1);
}

.vp-portfolio__item:hover {
	transform: scale(0.99, 0.99);
}



.single-portfolio svg#line,
.single-post svg#line{
	display: none;
}

.folio-text {
	max-width: 1100px !important;
	margin: 0 auto;
	color: #000;
}


.folio-main img,
.folio-gallery img,
.folio-thumbnail img {
	border-radius: 20px;
	width: auto;
}


.folio-thumbnail  {
	max-width: 1100px !important; margin: 0 auto !important; text-align: center;
}



.folio-main img,
.folio-gallery img {
	border-radius: 20px;
}

.pf-chapo * {
	font-style: italic;
	font-weight: 400 !important;
	letter-spacing: -1px;
	font-size: 1.2em;
}

.pf-text h3 {
	font-weight: 800 !important;
	letter-spacing: -1px;
	font-size: 1.5em;
	color: var(--blue);
}

.pf-tag {
	color: var(--blue);
	background-color: var(--soft-grey);
	border-radius: var(--radius-s);
	padding: 25px;
	margin-top: 10px;
	letter-spacing: -1px;
	font-size: 0.95em;
}

.folio-text strong, .folio-text b {
	font-weight: 800 !important;
}

.pf-gallery .gallery-list-content {
	border-radius: var(--radius-s);
	box-shadow: var(--shadow);
}

.tp-post-image {
	border-radius: var(--radius-s) !important;
	box-shadow: 0px 0px 35px rgba(13, 13, 13, 0.1);
	overflow: hidden;
}


/* ============================================================
   PANNEAU CONTACT RAPIDE
   ============================================================ */

#oc-overlay {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
	z-index: 9998;
}

#oc-overlay.open {
	display: block;
}

#oc-panel {
	position: fixed;
	top: 0;
	right: -100%;
	width: 100%;
	max-width: 100vw;
	height: 100%;
	background: #fff;
	z-index: 9999;
	padding: 4%;
	box-shadow: -4px 0 20px rgba(0, 0, 0, 0.15);
	transition: right 0.35s ease;
	overflow-y: auto;
}

#oc-panel.open {
	right: 0;
}

#oc-close {
	position: absolute;
	top: 20px;
	right: 20px;
	background: none;
	border: none;
	font-size: 3em;
	cursor: pointer;
	color: rgb(241, 65, 56);
}


/* ============================================================
   ANIMATION — LIGNE SVG (page d'accueil)
   ============================================================ */

.home .ligne-style {
	fill: none;
	stroke: rgba(255, 255, 255, 0.43);
	stroke-width: 1.85px;
}

.ligne-style {
	fill: none;
	stroke: var(--blue);
	stroke-width: 1.85px;
	opacity: 0.6;
}

/***************************************************
 * Generated by SVG Artista on 3/30/2026, 3:46:05 PM
 * MIT license (https://opensource.org/licenses/MIT)
 * W. https://svgartista.net
 **************************************************/

@keyframes animate-svg-stroke-1 {
	0%   { stroke-dashoffset: 1568.9146728515625px; stroke-dasharray: 1568.9146728515625px; }
	100% { stroke-dashoffset: 0;                    stroke-dasharray: 1568.9146728515625px; }
}
@-webkit-keyframes animate-svg-stroke-1 {
	0%   { stroke-dashoffset: 1568.9146728515625px; stroke-dasharray: 1568.9146728515625px; }
	100% { stroke-dashoffset: 0;                    stroke-dasharray: 1568.9146728515625px; }
}

.ligne-style {
	animation:         animate-svg-stroke-1 1.4s cubic-bezier(0.4, 0, 0.2, 1) 0.5s both;
	-webkit-animation: animate-svg-stroke-1 1.4s cubic-bezier(0.4, 0, 0.2, 1) 0.5s both;
}


/* ============================================================
   ANIMATION — ICÔNE WEBDESIGN
   ============================================================ */

#ico-webdesign {
	width: 100% !important;
	height: auto;
}

#ico-webdesign .cls-1           { stroke: var(--blue) !important; }
#ico-webdesign-ligne3.cls-1     { stroke: var(--red)  !important; }

/* -- Élément 1 : contour + remplissage (une fois) -- */
@keyframes animate-svg-ico-web-stroke-1 {
	0%   { stroke-dashoffset: 778.0240478515625px; stroke-dasharray: 778.0240478515625px; }
	100% { stroke-dashoffset: 0;                   stroke-dasharray: 778.0240478515625px; }
}
@-webkit-keyframes animate-svg-ico-web-stroke-1 {
	0%   { stroke-dashoffset: 778.0240478515625px; stroke-dasharray: 778.0240478515625px; }
	100% { stroke-dashoffset: 0;                   stroke-dasharray: 778.0240478515625px; }
}
@keyframes animate-svg-ico-web-fill-1 {
	0%   { fill: transparent;       }
	100% { fill: rgb(232, 232, 232); }
}
@-webkit-keyframes animate-svg-ico-web-fill-1 {
	0%   { fill: transparent;       }
	100% { fill: rgb(232, 232, 232); }
}
.svg-elem-ico-web-1 {
	animation:         animate-svg-ico-web-stroke-1 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s    both,
	                   animate-svg-ico-web-fill-1   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s both;
	-webkit-animation: animate-svg-ico-web-stroke-1 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s    both,
	                   animate-svg-ico-web-fill-1   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s both;
}

/* -- Élément 2 : tracé infini avec fondu -- */
@keyframes animate-svg-ico-web-stroke-2 {
	0%   { stroke-dashoffset: 377.8848876953125px; stroke-dasharray: 377.8848876953125px; }
	50%  { stroke-dashoffset: 0;                   stroke-dasharray: 377.8848876953125px; }
	100% { stroke-dashoffset: 0;                   stroke-dasharray: 377.8848876953125px; opacity: 0; stroke-width: 0.5px; }
}
@-webkit-keyframes animate-svg-ico-web-stroke-2 {
	0%   { stroke-dashoffset: 377.8848876953125px; stroke-dasharray: 377.8848876953125px; }
	50%  { stroke-dashoffset: 0;                   stroke-dasharray: 377.8848876953125px; }
	100% { stroke-dashoffset: 0;                   stroke-dasharray: 377.8848876953125px; opacity: 0; stroke-width: 0.5px; }
}
.svg-elem-ico-web-2 {
	animation:         animate-svg-ico-web-stroke-2 2s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s infinite both,
	                   animate-svg-ico-web-fill-2   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s  infinite both;
	-webkit-animation: animate-svg-ico-web-stroke-2 2s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s infinite both,
	                   animate-svg-ico-web-fill-2   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s  infinite both;
}

/* -- Éléments 3 à 5 : petits tracés infinis (même longueur) -- */
@keyframes animate-svg-ico-web-stroke-3-5 {
	0%   { stroke-dashoffset: 32.77000427246094px; stroke-dasharray: 32.77000427246094px; }
	100% { stroke-dashoffset: 0;                   stroke-dasharray: 32.77000427246094px; }
}
@-webkit-keyframes animate-svg-ico-web-stroke-3-5 {
	0%   { stroke-dashoffset: 32.77000427246094px; stroke-dasharray: 32.77000427246094px; }
	100% { stroke-dashoffset: 0;                   stroke-dasharray: 32.77000427246094px; }
}
.svg-elem-ico-web-3 {
	animation:         animate-svg-ico-web-stroke-3-5 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s infinite both,
	                   animate-svg-ico-web-fill-3     0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s    infinite both;
	-webkit-animation: animate-svg-ico-web-stroke-3-5 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s infinite both,
	                   animate-svg-ico-web-fill-3     0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s    infinite both;
}
.svg-elem-ico-web-4 {
	animation:         animate-svg-ico-web-stroke-3-5 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s infinite both,
	                   animate-svg-ico-web-fill-4     0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s  infinite both;
	-webkit-animation: animate-svg-ico-web-stroke-3-5 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s infinite both,
	                   animate-svg-ico-web-fill-4     0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s  infinite both;
}
.svg-elem-ico-web-5 {
	animation:         animate-svg-ico-web-stroke-3-5 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.48s infinite both,
	                   animate-svg-ico-web-fill-5     0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s  infinite both;
	-webkit-animation: animate-svg-ico-web-stroke-3-5 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.48s infinite both,
	                   animate-svg-ico-web-fill-5     0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s  infinite both;
}

/* -- Éléments 6 à 11 : tracés restants (une fois) -- */
@keyframes animate-svg-ico-web-stroke-6  {
	0% { stroke-dashoffset: 616.4892578125px;      stroke-dasharray: 616.4892578125px;      }
	100% { stroke-dashoffset: 0; stroke-dasharray: 616.4892578125px;      }
}
@keyframes animate-svg-ico-web-stroke-7  {
	0% { stroke-dashoffset: 261.68011474609375px;  stroke-dasharray: 261.68011474609375px;  }
	100% { stroke-dashoffset: 0; stroke-dasharray: 261.68011474609375px;  }
}
@keyframes animate-svg-ico-web-stroke-8  {
	0% { stroke-dashoffset: 468.6779479980469px;   stroke-dasharray: 468.6779479980469px;   }
	100% { stroke-dashoffset: 0; stroke-dasharray: 468.6779479980469px;   }
}
@keyframes animate-svg-ico-web-stroke-9  {
	0% { stroke-dashoffset: 269.36236572265625px;  stroke-dasharray: 269.36236572265625px;  }
	100% { stroke-dashoffset: 0; stroke-dasharray: 269.36236572265625px;  }
}
@keyframes animate-svg-ico-web-stroke-10 {
	0% { stroke-dashoffset: 27.51000213623047px;   stroke-dasharray: 27.51000213623047px;   }
	100% { stroke-dashoffset: 0; stroke-dasharray: 27.51000213623047px;   }
}
@keyframes animate-svg-ico-web-stroke-11 {
	0% { stroke-dashoffset: 29.550003051757812px;  stroke-dasharray: 29.550003051757812px;  }
	100% { stroke-dashoffset: 0; stroke-dasharray: 29.550003051757812px;  }
}
@-webkit-keyframes animate-svg-ico-web-stroke-6  {
	0% { stroke-dashoffset: 616.4892578125px;      stroke-dasharray: 616.4892578125px;      }
	100% { stroke-dashoffset: 0; stroke-dasharray: 616.4892578125px;      }
}
@-webkit-keyframes animate-svg-ico-web-stroke-7  {
	0% { stroke-dashoffset: 261.68011474609375px;  stroke-dasharray: 261.68011474609375px;  }
	100% { stroke-dashoffset: 0; stroke-dasharray: 261.68011474609375px;  }
}
@-webkit-keyframes animate-svg-ico-web-stroke-8  {
	0% { stroke-dashoffset: 468.6779479980469px;   stroke-dasharray: 468.6779479980469px;   }
	100% { stroke-dashoffset: 0; stroke-dasharray: 468.6779479980469px;   }
}
@-webkit-keyframes animate-svg-ico-web-stroke-9  {
	0% { stroke-dashoffset: 269.36236572265625px;  stroke-dasharray: 269.36236572265625px;  }
	100% { stroke-dashoffset: 0; stroke-dasharray: 269.36236572265625px;  }
}
@-webkit-keyframes animate-svg-ico-web-stroke-10 {
	0% { stroke-dashoffset: 27.51000213623047px;   stroke-dasharray: 27.51000213623047px;   }
	100% { stroke-dashoffset: 0; stroke-dasharray: 27.51000213623047px;   }
}
@-webkit-keyframes animate-svg-ico-web-stroke-11 {
	0% { stroke-dashoffset: 29.550003051757812px;  stroke-dasharray: 29.550003051757812px;  }
	100% { stroke-dashoffset: 0; stroke-dasharray: 29.550003051757812px;  }
}

.svg-elem-ico-web-6  {
	animation:         animate-svg-ico-web-stroke-6  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s  both,
	                   animate-svg-ico-web-fill-6    0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s  both;
	-webkit-animation: animate-svg-ico-web-stroke-6  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s  both,
	                   animate-svg-ico-web-fill-6    0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s  both;
}
.svg-elem-ico-web-7  {
	animation:         animate-svg-ico-web-stroke-7  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.72s both,
	                   animate-svg-ico-web-fill-7    0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s  both;
	-webkit-animation: animate-svg-ico-web-stroke-7  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.72s both,
	                   animate-svg-ico-web-fill-7    0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s  both;
}
.svg-elem-ico-web-8  {
	animation:         animate-svg-ico-web-stroke-8  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.84s both,
	                   animate-svg-ico-web-fill-8    0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s  both;
	-webkit-animation: animate-svg-ico-web-stroke-8  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.84s both,
	                   animate-svg-ico-web-fill-8    0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s  both;
}
.svg-elem-ico-web-9  {
	animation:         animate-svg-ico-web-stroke-9  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.96s both,
	                   animate-svg-ico-web-fill-9    0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s  both;
	-webkit-animation: animate-svg-ico-web-stroke-9  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.96s both,
	                   animate-svg-ico-web-fill-9    0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s  both;
}
.svg-elem-ico-web-10 {
	animation:         animate-svg-ico-web-stroke-10 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.08s both,
	                   animate-svg-ico-web-fill-10   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.7s  both;
	-webkit-animation: animate-svg-ico-web-stroke-10 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.08s both,
	                   animate-svg-ico-web-fill-10   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.7s  both;
}
.svg-elem-ico-web-11 {
	animation:         animate-svg-ico-web-stroke-11 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s  both,
	                   animate-svg-ico-web-fill-11   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8s  both;
	-webkit-animation: animate-svg-ico-web-stroke-11 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s  both,
	                   animate-svg-ico-web-fill-11   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8s  both;
}


/* ============================================================
   ANIMATION — ICÔNE LOGO
   ============================================================ */

#ico-logo {
	width: 100% !important;
	height: auto;
}

#ico-logo .cls-1        { stroke: var(--blue) !important; }
#ico-logo-ligne2.cls-1  { stroke: var(--red)  !important; }

/* -- Élément 1 : tracé infini -- */
@keyframes animate-svg-ico-logo-stroke-1 {
	0%   { stroke-dashoffset: 812.141845703125px; stroke-dasharray: 812.141845703125px; }
	100% { stroke-dashoffset: 0;                  stroke-dasharray: 812.141845703125px; }
}
@-webkit-keyframes animate-svg-ico-logo-stroke-1 {
	0%   { stroke-dashoffset: 812.141845703125px; stroke-dasharray: 812.141845703125px; }
	100% { stroke-dashoffset: 0;                  stroke-dasharray: 812.141845703125px; }
}
.svg-elem-ico-logo-1 {
	animation:         animate-svg-ico-logo-stroke-1 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s    infinite both,
	                   animate-svg-ico-logo-fill-1   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s infinite both;
	-webkit-animation: animate-svg-ico-logo-stroke-1 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s    infinite both,
	                   animate-svg-ico-logo-fill-1   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s infinite both;
}

/* -- Élément 2 : tracé infini avec fondu -- */
@keyframes animate-svg-ico-logo-stroke-2 {
	0%   { stroke-dashoffset: 464.71002197265625px; stroke-dasharray: 464.71002197265625px; }
	50%  { stroke-dashoffset: 0;                    stroke-dasharray: 464.71002197265625px; }
	100% { stroke-dashoffset: 0;                    stroke-dasharray: 464.71002197265625px; opacity: 0; stroke-width: 0.5px; }
}
@-webkit-keyframes animate-svg-ico-logo-stroke-2 {
	0%   { stroke-dashoffset: 464.71002197265625px; stroke-dasharray: 464.71002197265625px; }
	50%  { stroke-dashoffset: 0;                    stroke-dasharray: 464.71002197265625px; }
	100% { stroke-dashoffset: 0;                    stroke-dasharray: 464.71002197265625px; opacity: 0; stroke-width: 0.5px; }
}
.svg-elem-ico-logo-2 {
	animation:         animate-svg-ico-logo-stroke-2 3s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s infinite both,
	                   animate-svg-ico-logo-fill-2   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s  infinite both;
	-webkit-animation: animate-svg-ico-logo-stroke-2 3s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s infinite both,
	                   animate-svg-ico-logo-fill-2   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s  infinite both;
}

/* -- Éléments 3 à 10 : tracés (une fois) -- */
@keyframes animate-svg-ico-logo-stroke-3  { 0% { stroke-dashoffset: 246.18511962890625px; stroke-dasharray: 246.18511962890625px; } 100% { stroke-dashoffset: 0; stroke-dasharray: 246.18511962890625px; } }
@keyframes animate-svg-ico-logo-stroke-4  { 0% { stroke-dashoffset: 114.4881591796875px;  stroke-dasharray: 114.4881591796875px;  } 100% { stroke-dashoffset: 0; stroke-dasharray: 114.4881591796875px;  } }
@keyframes animate-svg-ico-logo-stroke-5  { 0% { stroke-dashoffset: 125.78763580322266px; stroke-dasharray: 125.78763580322266px; } 100% { stroke-dashoffset: 0; stroke-dasharray: 125.78763580322266px; } }
@keyframes animate-svg-ico-logo-stroke-6  { 0% { stroke-dashoffset: 56.10725021362305px;  stroke-dasharray: 56.10725021362305px;  } 100% { stroke-dashoffset: 0; stroke-dasharray: 56.10725021362305px;  } }
@keyframes animate-svg-ico-logo-stroke-7  { 0% { stroke-dashoffset: 45.35426712036133px;  stroke-dasharray: 45.35426712036133px;  } 100% { stroke-dashoffset: 0; stroke-dasharray: 45.35426712036133px;  } }
@keyframes animate-svg-ico-logo-stroke-8  { 0% { stroke-dashoffset: 120.19014739990234px; stroke-dasharray: 120.19014739990234px; } 100% { stroke-dashoffset: 0; stroke-dasharray: 120.19014739990234px; } }
@keyframes animate-svg-ico-logo-stroke-9  { 0% { stroke-dashoffset: 207.5899658203125px;  stroke-dasharray: 207.5899658203125px;  } 100% { stroke-dashoffset: 0; stroke-dasharray: 207.5899658203125px;  } }
@keyframes animate-svg-ico-logo-stroke-10 { 0% { stroke-dashoffset: 12.904972076416016px; stroke-dasharray: 12.904972076416016px; } 100% { stroke-dashoffset: 0; stroke-dasharray: 12.904972076416016px; } }
@-webkit-keyframes animate-svg-ico-logo-stroke-3  { 0% { stroke-dashoffset: 246.18511962890625px; stroke-dasharray: 246.18511962890625px; } 100% { stroke-dashoffset: 0; stroke-dasharray: 246.18511962890625px; } }
@-webkit-keyframes animate-svg-ico-logo-stroke-4  { 0% { stroke-dashoffset: 114.4881591796875px;  stroke-dasharray: 114.4881591796875px;  } 100% { stroke-dashoffset: 0; stroke-dasharray: 114.4881591796875px;  } }
@-webkit-keyframes animate-svg-ico-logo-stroke-5  { 0% { stroke-dashoffset: 125.78763580322266px; stroke-dasharray: 125.78763580322266px; } 100% { stroke-dashoffset: 0; stroke-dasharray: 125.78763580322266px; } }
@-webkit-keyframes animate-svg-ico-logo-stroke-6  { 0% { stroke-dashoffset: 56.10725021362305px;  stroke-dasharray: 56.10725021362305px;  } 100% { stroke-dashoffset: 0; stroke-dasharray: 56.10725021362305px;  } }
@-webkit-keyframes animate-svg-ico-logo-stroke-7  { 0% { stroke-dashoffset: 45.35426712036133px;  stroke-dasharray: 45.35426712036133px;  } 100% { stroke-dashoffset: 0; stroke-dasharray: 45.35426712036133px;  } }
@-webkit-keyframes animate-svg-ico-logo-stroke-8  { 0% { stroke-dashoffset: 120.19014739990234px; stroke-dasharray: 120.19014739990234px; } 100% { stroke-dashoffset: 0; stroke-dasharray: 120.19014739990234px; } }
@-webkit-keyframes animate-svg-ico-logo-stroke-9  { 0% { stroke-dashoffset: 207.5899658203125px;  stroke-dasharray: 207.5899658203125px;  } 100% { stroke-dashoffset: 0; stroke-dasharray: 207.5899658203125px;  } }
@-webkit-keyframes animate-svg-ico-logo-stroke-10 { 0% { stroke-dashoffset: 12.904972076416016px; stroke-dasharray: 12.904972076416016px; } 100% { stroke-dashoffset: 0; stroke-dasharray: 12.904972076416016px; } }

.svg-elem-ico-logo-3  {
	animation:         animate-svg-ico-logo-stroke-3  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s both, animate-svg-ico-logo-fill-3  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s    both;
	-webkit-animation: animate-svg-ico-logo-stroke-3  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s both, animate-svg-ico-logo-fill-3  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s    both;
}
.svg-elem-ico-logo-4  {
	animation:         animate-svg-ico-logo-stroke-4  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s both, animate-svg-ico-logo-fill-4  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s  both;
	-webkit-animation: animate-svg-ico-logo-stroke-4  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s both, animate-svg-ico-logo-fill-4  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s  both;
}
.svg-elem-ico-logo-5  {
	animation:         animate-svg-ico-logo-stroke-5  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.48s both, animate-svg-ico-logo-fill-5  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s  both;
	-webkit-animation: animate-svg-ico-logo-stroke-5  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.48s both, animate-svg-ico-logo-fill-5  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s  both;
}
.svg-elem-ico-logo-6  {
	animation:         animate-svg-ico-logo-stroke-6  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s  both, animate-svg-ico-logo-fill-6  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s  both;
	-webkit-animation: animate-svg-ico-logo-stroke-6  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s  both, animate-svg-ico-logo-fill-6  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s  both;
}
.svg-elem-ico-logo-7  {
	animation:         animate-svg-ico-logo-stroke-7  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.72s both, animate-svg-ico-logo-fill-7  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s  both;
	-webkit-animation: animate-svg-ico-logo-stroke-7  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.72s both, animate-svg-ico-logo-fill-7  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s  both;
}
.svg-elem-ico-logo-8  {
	animation:         animate-svg-ico-logo-stroke-8  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.84s both, animate-svg-ico-logo-fill-8  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s  both;
	-webkit-animation: animate-svg-ico-logo-stroke-8  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.84s both, animate-svg-ico-logo-fill-8  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s  both;
}
.svg-elem-ico-logo-9  {
	animation:         animate-svg-ico-logo-stroke-9  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.96s both, animate-svg-ico-logo-fill-9  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s  both;
	-webkit-animation: animate-svg-ico-logo-stroke-9  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.96s both, animate-svg-ico-logo-fill-9  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s  both;
}
.svg-elem-ico-logo-10 {
	animation:         animate-svg-ico-logo-stroke-10 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.08s both, animate-svg-ico-logo-fill-10 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.7s  both;
	-webkit-animation: animate-svg-ico-logo-stroke-10 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.08s both, animate-svg-ico-logo-fill-10 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.7s  both;
}


/* ============================================================
   ANIMATION — ICÔNE PRINT
   ============================================================ */

#ico-print {
	width: 100% !important;
	height: auto;
}

#ico-print .cls-1         { stroke: var(--blue) !important; }
#ico-print-ligne2 .cls-1  { stroke: var(--red)  !important; }

/* -- Élément 1 : contour + remplissage (une fois) -- */
@keyframes animate-svg-ico-print-stroke-1 {
	0%   { stroke-dashoffset: 778.0318603515625px; stroke-dasharray: 778.0318603515625px; }
	100% { stroke-dashoffset: 0;                   stroke-dasharray: 778.0318603515625px; }
}
@-webkit-keyframes animate-svg-ico-print-stroke-1 {
	0%   { stroke-dashoffset: 778.0318603515625px; stroke-dasharray: 778.0318603515625px; }
	100% { stroke-dashoffset: 0;                   stroke-dasharray: 778.0318603515625px; }
}
@keyframes animate-svg-ico-print-fill-1 {
	0%   { fill: transparent;       }
	100% { fill: rgb(232, 232, 232); }
}
@-webkit-keyframes animate-svg-ico-print-fill-1 {
	0%   { fill: transparent;       }
	100% { fill: rgb(232, 232, 232); }
}
.svg-elem-ico-print-1 {
	animation:         animate-svg-ico-print-stroke-1 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s    both,
	                   animate-svg-ico-print-fill-1   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s both;
	-webkit-animation: animate-svg-ico-print-stroke-1 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s    both,
	                   animate-svg-ico-print-fill-1   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s both;
}

/* -- Éléments 2 à 5 : petits tracés infinis (même longueur ~63.6px) -- */
@keyframes animate-svg-ico-print-stroke-2-5 {
	0%   { stroke-dashoffset: 63.627235412597656px; stroke-dasharray: 63.627235412597656px; }
	100% { stroke-dashoffset: 0;                    stroke-dasharray: 63.627235412597656px; }
}
@-webkit-keyframes animate-svg-ico-print-stroke-2-5 {
	0%   { stroke-dashoffset: 63.627235412597656px; stroke-dasharray: 63.627235412597656px; }
	100% { stroke-dashoffset: 0;                    stroke-dasharray: 63.627235412597656px; }
}
.svg-elem-ico-print-2 {
	animation:         animate-svg-ico-print-stroke-2-5 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s infinite both, animate-svg-ico-print-fill-2 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s  infinite both;
	-webkit-animation: animate-svg-ico-print-stroke-2-5 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s infinite both, animate-svg-ico-print-fill-2 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s  infinite both;
}
.svg-elem-ico-print-3 {
	animation:         animate-svg-ico-print-stroke-2-5 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s infinite both, animate-svg-ico-print-fill-3 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s    infinite both;
	-webkit-animation: animate-svg-ico-print-stroke-2-5 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s infinite both, animate-svg-ico-print-fill-3 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s    infinite both;
}
.svg-elem-ico-print-4 {
	animation:         animate-svg-ico-print-stroke-2-5 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s infinite both, animate-svg-ico-print-fill-4 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s  infinite both;
	-webkit-animation: animate-svg-ico-print-stroke-2-5 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s infinite both, animate-svg-ico-print-fill-4 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s  infinite both;
}
.svg-elem-ico-print-5 {
	animation:         animate-svg-ico-print-stroke-2-5 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.48s infinite both, animate-svg-ico-print-fill-5 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s  infinite both;
	-webkit-animation: animate-svg-ico-print-stroke-2-5 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.48s infinite both, animate-svg-ico-print-fill-5 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s  infinite both;
}

/* -- Élément 6 : tracé infini avec fondu -- */
@keyframes animate-svg-ico-print-stroke-6 {
	0%   { stroke-dashoffset: 232.77793884277344px; stroke-dasharray: 232.77793884277344px; }
	50%  { stroke-dashoffset: 0;                    stroke-dasharray: 232.77793884277344px; }
	100% { stroke-dashoffset: 0;                    stroke-dasharray: 232.77793884277344px; opacity: 0; stroke-width: 0.5px; }
}
@-webkit-keyframes animate-svg-ico-print-stroke-6 {
	0%   { stroke-dashoffset: 232.77793884277344px; stroke-dasharray: 232.77793884277344px; }
	50%  { stroke-dashoffset: 0;                    stroke-dasharray: 232.77793884277344px; }
	100% { stroke-dashoffset: 0;                    stroke-dasharray: 232.77793884277344px; opacity: 0; stroke-width: 0.5px; }
}
.svg-elem-ico-print-6 {
	animation:         animate-svg-ico-print-stroke-6 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s infinite both,
	                   animate-svg-ico-print-fill-6   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s infinite both;
	-webkit-animation: animate-svg-ico-print-stroke-6 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s infinite both,
	                   animate-svg-ico-print-fill-6   0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s infinite both;
}

/* -- Éléments 7 à 17 : tracés restants (une fois) -- */
@keyframes animate-svg-ico-print-stroke-7  { 0% { stroke-dashoffset: 140.4417724609375px;   stroke-dasharray: 140.4417724609375px;   } 100% { stroke-dashoffset: 0; stroke-dasharray: 140.4417724609375px;   } }
@keyframes animate-svg-ico-print-stroke-8  { 0% { stroke-dashoffset: 479.8173828125px;       stroke-dasharray: 479.8173828125px;       } 100% { stroke-dashoffset: 0; stroke-dasharray: 479.8173828125px;       } }
@keyframes animate-svg-ico-print-stroke-9  { 0% { stroke-dashoffset: 39.02897262573242px;    stroke-dasharray: 39.02897262573242px;    } 100% { stroke-dashoffset: 0; stroke-dasharray: 39.02897262573242px;    } }
@keyframes animate-svg-ico-print-stroke-10 { 0% { stroke-dashoffset: 198.755859375px;        stroke-dasharray: 198.755859375px;        } 100% { stroke-dashoffset: 0; stroke-dasharray: 198.755859375px;        } }
@keyframes animate-svg-ico-print-stroke-11 { 0% { stroke-dashoffset: 87.44109344482422px;    stroke-dasharray: 87.44109344482422px;    } 100% { stroke-dashoffset: 0; stroke-dasharray: 87.44109344482422px;    } }
@keyframes animate-svg-ico-print-stroke-12 { 0% { stroke-dashoffset: 56.260009765625px;      stroke-dasharray: 56.260009765625px;      } 100% { stroke-dashoffset: 0; stroke-dasharray: 56.260009765625px;      } }
@keyframes animate-svg-ico-print-stroke-13 { 0% { stroke-dashoffset: 140.4417724609375px;    stroke-dasharray: 140.4417724609375px;    } 100% { stroke-dashoffset: 0; stroke-dasharray: 140.4417724609375px;    } }
@keyframes animate-svg-ico-print-stroke-14 { 0% { stroke-dashoffset: 479.8174743652344px;    stroke-dasharray: 479.8174743652344px;    } 100% { stroke-dashoffset: 0; stroke-dasharray: 479.8174743652344px;    } }
@keyframes animate-svg-ico-print-stroke-15 { 0% { stroke-dashoffset: 39.02897644042969px;    stroke-dasharray: 39.02897644042969px;    } 100% { stroke-dashoffset: 0; stroke-dasharray: 39.02897644042969px;    } }
@keyframes animate-svg-ico-print-stroke-16 { 0% { stroke-dashoffset: 198.75588989257812px;   stroke-dasharray: 198.75588989257812px;   } 100% { stroke-dashoffset: 0; stroke-dasharray: 198.75588989257812px;   } }
@keyframes animate-svg-ico-print-stroke-17 { 0% { stroke-dashoffset: 87.44111633300781px;    stroke-dasharray: 87.44111633300781px;    } 100% { stroke-dashoffset: 0; stroke-dasharray: 87.44111633300781px;    } }
@-webkit-keyframes animate-svg-ico-print-stroke-7  { 0% { stroke-dashoffset: 140.4417724609375px;   stroke-dasharray: 140.4417724609375px;   } 100% { stroke-dashoffset: 0; stroke-dasharray: 140.4417724609375px;   } }
@-webkit-keyframes animate-svg-ico-print-stroke-8  { 0% { stroke-dashoffset: 479.8173828125px;       stroke-dasharray: 479.8173828125px;       } 100% { stroke-dashoffset: 0; stroke-dasharray: 479.8173828125px;       } }
@-webkit-keyframes animate-svg-ico-print-stroke-9  { 0% { stroke-dashoffset: 39.02897262573242px;    stroke-dasharray: 39.02897262573242px;    } 100% { stroke-dashoffset: 0; stroke-dasharray: 39.02897262573242px;    } }
@-webkit-keyframes animate-svg-ico-print-stroke-10 { 0% { stroke-dashoffset: 198.755859375px;        stroke-dasharray: 198.755859375px;        } 100% { stroke-dashoffset: 0; stroke-dasharray: 198.755859375px;        } }
@-webkit-keyframes animate-svg-ico-print-stroke-11 { 0% { stroke-dashoffset: 87.44109344482422px;    stroke-dasharray: 87.44109344482422px;    } 100% { stroke-dashoffset: 0; stroke-dasharray: 87.44109344482422px;    } }
@-webkit-keyframes animate-svg-ico-print-stroke-12 { 0% { stroke-dashoffset: 56.260009765625px;      stroke-dasharray: 56.260009765625px;      } 100% { stroke-dashoffset: 0; stroke-dasharray: 56.260009765625px;    } }
@-webkit-keyframes animate-svg-ico-print-stroke-13 { 0% { stroke-dashoffset: 140.4417724609375px;    stroke-dasharray: 140.4417724609375px;    } 100% { stroke-dashoffset: 0; stroke-dasharray: 140.4417724609375px;   } }
@-webkit-keyframes animate-svg-ico-print-stroke-14 { 0% { stroke-dashoffset: 479.8174743652344px;    stroke-dasharray: 479.8174743652344px;    } 100% { stroke-dashoffset: 0; stroke-dasharray: 479.8174743652344px;   } }
@-webkit-keyframes animate-svg-ico-print-stroke-15 { 0% { stroke-dashoffset: 39.02897644042969px;    stroke-dasharray: 39.02897644042969px;    } 100% { stroke-dashoffset: 0; stroke-dasharray: 39.02897644042969px;   } }
@-webkit-keyframes animate-svg-ico-print-stroke-16 { 0% { stroke-dashoffset: 198.75588989257812px;   stroke-dasharray: 198.75588989257812px;   } 100% { stroke-dashoffset: 0; stroke-dasharray: 198.75588989257812px; } }
@-webkit-keyframes animate-svg-ico-print-stroke-17 { 0% { stroke-dashoffset: 87.44111633300781px;    stroke-dasharray: 87.44111633300781px;    } 100% { stroke-dashoffset: 0; stroke-dasharray: 87.44111633300781px;   } }

.svg-elem-ico-print-7  {
	animation:         animate-svg-ico-print-stroke-7  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.72s both, animate-svg-ico-print-fill-7  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s  both;
	-webkit-animation: animate-svg-ico-print-stroke-7  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.72s both, animate-svg-ico-print-fill-7  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s  both;
}
.svg-elem-ico-print-8  {
	animation:         animate-svg-ico-print-stroke-8  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.84s both, animate-svg-ico-print-fill-8  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s  both;
	-webkit-animation: animate-svg-ico-print-stroke-8  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.84s both, animate-svg-ico-print-fill-8  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s  both;
}
.svg-elem-ico-print-9  {
	animation:         animate-svg-ico-print-stroke-9  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.96s both, animate-svg-ico-print-fill-9  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s  both;
	-webkit-animation: animate-svg-ico-print-stroke-9  1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.96s both, animate-svg-ico-print-fill-9  0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s  both;
}
.svg-elem-ico-print-10 {
	animation:         animate-svg-ico-print-stroke-10 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.08s both, animate-svg-ico-print-fill-10 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.7s  both;
	-webkit-animation: animate-svg-ico-print-stroke-10 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.08s both, animate-svg-ico-print-fill-10 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.7s  both;
}
.svg-elem-ico-print-11 {
	animation:         animate-svg-ico-print-stroke-11 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s  both, animate-svg-ico-print-fill-11 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8s  both;
	-webkit-animation: animate-svg-ico-print-stroke-11 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s  both, animate-svg-ico-print-fill-11 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8s  both;
}
.svg-elem-ico-print-12 {
	animation:         animate-svg-ico-print-stroke-12 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.32s both, animate-svg-ico-print-fill-12 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.9s  both;
	-webkit-animation: animate-svg-ico-print-stroke-12 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.32s both, animate-svg-ico-print-fill-12 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.9s  both;
}
.svg-elem-ico-print-13 {
	animation:         animate-svg-ico-print-stroke-13 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.44s both, animate-svg-ico-print-fill-13 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2s    both;
	-webkit-animation: animate-svg-ico-print-stroke-13 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.44s both, animate-svg-ico-print-fill-13 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2s    both;
}
.svg-elem-ico-print-14 {
	animation:         animate-svg-ico-print-stroke-14 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.56s both, animate-svg-ico-print-fill-14 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.1s  both;
	-webkit-animation: animate-svg-ico-print-stroke-14 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.56s both, animate-svg-ico-print-fill-14 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.1s  both;
}
.svg-elem-ico-print-15 {
	animation:         animate-svg-ico-print-stroke-15 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.68s both, animate-svg-ico-print-fill-15 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.2s  both;
	-webkit-animation: animate-svg-ico-print-stroke-15 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.68s both, animate-svg-ico-print-fill-15 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.2s  both;
}
.svg-elem-ico-print-16 {
	animation:         animate-svg-ico-print-stroke-16 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8s  both, animate-svg-ico-print-fill-16 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.3s  both;
	-webkit-animation: animate-svg-ico-print-stroke-16 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8s  both, animate-svg-ico-print-fill-16 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.3s  both;
}
.svg-elem-ico-print-17 {
	animation:         animate-svg-ico-print-stroke-17 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.92s both, animate-svg-ico-print-fill-17 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.4s  both;
	-webkit-animation: animate-svg-ico-print-stroke-17 1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.92s both, animate-svg-ico-print-fill-17 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.4s  both;
}


/* ============================================================
   RESPONSIVE — HELPERS DEBUG (décommenter pour activer)
   ============================================================ */

/*
body:before {
	content: "standard";
	position: fixed;
	background: rgba(186, 133, 189, 0.5);
	font-size: 0.8em;
	color: #fff;
	z-index: 10;
	padding: 0 6px;
	text-transform: uppercase;
}
*/

@media (max-width: 1200px) { body:before { content: "max-width:1200px"; background: rgba(11, 116, 48, 0.5);  } }
@media (max-width: 1024px) { body:before { content: "max-width:1024px"; background: rgba(122, 209, 242, 0.5); } }
@media (max-width: 767px)  { body:before { content: "max-width:767px";  background: rgba(23, 118, 254, 0.5);  } }
@media (max-width: 480px)  { body:before { content: "max-width:480px";  background: rgba(76, 106, 7, 0.5);    } }


/* ============================================================
   RESPONSIVE — STYLES
   ============================================================ */

@media (max-width: 1200px) {
	body {
		font-size: 12px !important;
	}
}

@media (max-width: 767px) {
	/* styles mobile à compléter */
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
  .tpae-preset-meta-category {
    padding-top: 0;
  }

  .tpae-preset-content {
    gap: 8px;
  }
  
  .tpae-preset-blog {
    flex-direction: row;
    gap: 10px;
  }

  .tpae-preset-image-container {
    width: 45%;
  }

  .tpae-preset-content {
    width: 55%;
  }
}



@media screen and (max-width: 700px) {
  .tpae-preset-blog {
    flex-direction: column;
    align-items: start;
    text-align: start;
  }

  .tpae-preset-image-container {
    width: 100%;
    height: auto;
    border-radius: 8px 0 0 8px;
  }

  .tpae-preset-image-container img {
    border-radius: 8px 8px 0 0;
  }

  .tpae-preset-content {
    width: 100% !important;
    padding: 15px;
  }


  .tpae-preset-description {
    font-size: 14px;
  }

  .solid-line {
    width: 50px;
    height: 4px;
  }
}