/*-----------------------------------------------------------------------------

Atelier__85 CSS Framework 2025 - V1.0

-------------------------------------------------------------------------------

By Nicolas EVARISTE (https://www.atelier85.fr)
© 2025 - All rights reserved - Toute reproduction interdite

------------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
 Variables
------------------------------------------------------------------------------*/
:root{
	--coul-1: #bdd495;	 					/* Couleur : Vert moyen */
	--coul-1-2: #dcedb4;	 				/* Couleur : Vert clair */
	--coul-2: #556244;						/* Couleur : Vert foncé */
	--coul-3: #f8cce2;						/* Couleur : Rose */
	--coul-4: #ffe0f0;						/* Couleur : Rose clair */
	--coul-5: #d39e7a;						/* Couleur : Terracotta */
	
	
	
	--coul-blanc: #ffffff;					/* Couleur : Blanc */
	--coul-noir: #000000;					/* Couleur : noir */

	
	--font-1: "Nothing You Could Do", cursive;
	--font-2: "Patrick Hand", cursive;
	--font-3: "Roboto", sans-serif;
	
	--100px: 100px;	
	--50px: 50px;	
	--25px: 25px;	
	--10px: 10px;
	--5px: 5px;
}

/*-----------------------------------------------------------------------------
 Reset
------------------------------------------------------------------------------*/
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
img {
	max-width: 100%;
	height: auto;
	border: none;
    vertical-align: middle;
}
h1, h2, h3, h4, h4, h5, h6 {
	margin: 0;
	font-size: inherit;
	font-weight: normal;
	padding: 0;
	margin: 0;
}
form, figure{
	margin: 0;
	padding: 0;
}
iframe {
  border: 0;
  max-width: 100%;
}
pre{
	margin: 0;
	padding: 0;
}

strong{
	font-weight: 500;
}

/*-----------------------------------------------------------------------------
 Général
------------------------------------------------------------------------------*/

/* HTML / Body
--------------------------------------------------*/
html, body {
	height: 100%;
}
body {
	font-family: var(--font-3);
 	font-optical-sizing: auto;
	font-size: 18px;
	font-weight: 300;
	line-height: 1.5;
	color: #000000;
	background: #ffffff;
	margin: 0;
	-webkit-transition: opacity 0.5s ease-in-out;
	-o-transition: opacity 0.5s ease-in-out;
	transition: opacity 0.5s ease-in-out;
}

/* WP
--------------------------------------------------*/
.wp-block-image{
	margin: 0;
	padding: 0;
	margin-top: 30px;
}
.wp-block-file{
	
}
.wp-block-gallery{
	
}
.wp-block-separator{
	display: block;
	width: 100%;
	height: 1px;
	border: 0;
	background: var(--coul-1);
	margin-top: 70px;
	margin-bottom: 70px;
}
.wp-block-spacer{
	
}
.wp-block-columns{
	
}
.wp-block-column{
	
}
h1.wp-block-heading,
h2.wp-block-heading,
h3.wp-block-heading,
h4.wp-block-heading,
h5.wp-block-heading,
h6.wp-block-heading{
	
}
h1.wp-block-heading{
	font-size: 2.2rem;
	line-height: 1em;
	font-weight: 300;
}
h2.wp-block-heading{
	font-size: 1.6rem;
	font-weight: 400;
}
h3.wp-block-heading{
	font-size: 1.5rem;
}
h4.wp-block-heading{
	font-size: 1.3rem;
}
h5.wp-block-heading{
	
}
h6.wp-block-heading{
	
}
figcaption{
	font-size: 14px;
	text-align: center;
	color: #afafaf;
}

/*-----------------------------------------------------------------------------
 Grid et Flex
------------------------------------------------------------------------------*/

/* Grille
--------------------------------------------------*/
.grid{
	display: grid;
}

/* Flex
--------------------------------------------------*/
.flex-col{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.flex-col-float{
	display: flex;
	flex-grow: 0;
  	flex-shrink: 0;
}

/* Colonnes
--------------------------------------------------*/
.col-1{
	grid-template-columns: 1fr;
}
.col-2{
	grid-template-columns: repeat(2, 1fr);
}
.col-3{
	grid-template-columns: repeat(3, 1fr);
}
.col-4{
	grid-template-columns: repeat(4, 1fr);
}
.col-6{
	grid-template-columns: repeat(6, 1fr);
}
.col-2_33-66{
	grid-template-columns: 33% 66%;
}
.col-2_66-33{
	grid-template-columns: 66% 33%;
}

/* Colonnes - Séparations
--------------------------------------------------*/
.col-2-separ{
	grid-template-columns: 1fr 1px 1fr;
}
.col-3-separ{
	grid-template-columns: 1fr 1px 1fr 1px 1fr;
}
.col-4-separ{
	grid-template-columns: 1fr 1px 1fr 1px 1fr 1px 1fr;
}
.col-6-separ{
	grid-template-columns: 1fr 1fr 1px 1fr 1fr 1px 1fr 1fr;
}
.separation-v{
	width: 1px;
	height: 100%;
}
.separation-h{
	width: 100%;
	height: 1px;
}

/* Gap
--------------------------------------------------*/
.gap-100{
	grid-gap: var(--100px);
}
.gap-50{
	grid-gap: var(--50px);
}
.gap-25{
	grid-gap: var(--25px);
}

/*-----------------------------------------------------------------------------
 Alignements
------------------------------------------------------------------------------*/

/* Alignements - Grid
--------------------------------------------------*/
.align-middle{
	align-items: center; 
}
.align-top{
	align-items: start;
}
.align-bottom{
	align-items: end;
}
.item-center{
	align-self: center;
  	justify-self: center; 
}

/* Alignements - Textes
--------------------------------------------------*/
.txt-center{
	text-align: center;
}
.txt-justify{
	text-align: justify;
}
.txt-left{
	text-align: left;
}
.txt-right{
	text-align: right;
}

/* Alignements - Divers
--------------------------------------------------*/
.center{
	position: relative;
	left: 50%;
	transform: translateX(-50%);
}

/*-----------------------------------------------------------------------------
 Couleurs
------------------------------------------------------------------------------*/

/* Couleurs textes
--------------------------------------------------*/
.couleur-1{
	color: var(--coul-1);
}
.couleur-1-2{
	color: var(--coul-1-2);
}
.couleur-2{
	color: var(--coul-2);
}
.couleur-3{
	color: var(--coul-3);
}
.couleur-4{
	color: var(--coul-4);
}
.couleur-5{
	color: var(--coul-5);
}
.couleur-blanc{
	color: var(--coul-blanc);
}
.couleur-noir{
	color: var(--coul-noir);
}

/* Couleurs fonds
--------------------------------------------------*/
.bg-couleur-1{
	background-color: var(--coul-1);
}
.bg-couleur-1-2{
	background-color: var(--coul-1-2);
}
.bg-couleur-2{
	background-color: var(--coul-2);
}
.bg-couleur-3{
	background-color: var(--coul-3);
}
.bg-couleur-4{
	background-color: var(--coul-4);
}
.bg-couleur-5{
	background-color: var(--coul-5);
}
.bg-couleur-blanc{
	background-color: var(--coul-blanc);
}
.bg-couleur-noir{
	background-color: var(--coul-noir);
}

/*-----------------------------------------------------------------------------
 Liens et boutons
------------------------------------------------------------------------------*/

/* Liens
--------------------------------------------------*/
a.lien{
	display: inline-block;
	position: relative;
	color: inherit;	
	text-decoration: none;
}
a.lien::after{
    content: '';
    display: block;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 1px;
	margin-left: auto;
	margin-right: auto;
    transition: all 300ms;
	opacity: 0;
	width: 0;
	height: 1px;
	background: var(--coul-noir);
}
a.lien:hover::after{
	opacity: 1;
	width: 100%;

}

/* Liens et Boutons - Boutons
--------------------------------------------------*/
a{
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.bt{
	display: inline-block;
	text-decoration: none !important;
	cursor: pointer;
	-webkit-appearance: none; 
	-moz-appearance: none;
	appearance: none;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	border-width: 1px;
	border-style: solid;
	padding: 5px 15px 5px 15px;		/* --- A CUSTOMISER */
}
.bt1{
	background: var(--coul-3);
	border: 2px solid var(--coul-3);
	color: #000;
	font-weight: 400;	
}
.bt1:hover{
	background: #fff;
	border: 2px solid var(--coul-3);
}
.bt2{
	background: #fff;
	border: 2px solid var(--coul-3);
	color: #000;
	font-weight: 400;	
}
.bt2:hover{
	background: var(--coul-3);
	border: 2px solid var(--coul-3);
}
.bt3{
	background: #fff;
	border: 2px solid var(--coul-blanc);
	color: #000;
	font-weight: 400;	
}
.bt3:hover{
	background: var(--coul-3);
	border: 2px solid var(--coul-blanc);
}
.cn-set-cookie.bt{
	background: #ffffff !important;
	border: none !important;
}
.cn-more-info.bt{
	background: none;
	color: #fff;
	border: none !important;
}

/*-----------------------------------------------------------------------------
 Effets / Animations
------------------------------------------------------------------------------*/

/* Hover
--------------------------------------------------*/
.hover-scale img,
.hover-scale svg{
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.hover-scale img:hover,
.hover-scale svg:hover{
	transform: scale(1.1);
}
@-webkit-keyframes fadeEffect {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes fadeEffect {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* Rotation
--------------------------------------------------*/
.rotation{
	-webkit-animation:spin 4s linear infinite;
    -moz-animation:spin 4s linear infinite;
    animation:spin 4s linear infinite;
}
@-moz-keyframes spin { 100% { -moz-transform: rotate(360deg); } }
@-webkit-keyframes spin { 100% { -webkit-transform: rotate(360deg); } }
@keyframes spin { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } }

/* Scale
--------------------------------------------------*/
img.scale,
.wp-block-image.scale img{
	-webkit-animation:scale-anim 1.5s linear infinite;
    -moz-animation:scale-anim 1.5s linear infinite;
    animation:scale-anim 1.5s linear infinite;
}
@keyframes scale-anim {
  50% {
    -webkit-transform:scale(1.15);
    -moz-transform:scale(1.15);
    -ms-transform:scale(1.15);
    -o-transform:scale(1.15);
    transform:scale(1.15);
  }
}

/*-----------------------------------------------------------------------------
 Mise en forme
------------------------------------------------------------------------------*/

/* Width / Height
--------------------------------------------------*/
.w100{
	width: 100%;
}
.wrap-1200{
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

/* Rounded
--------------------------------------------------*/
.rounded-50{
	border-radius: 50px;
}
.rounded-30{
	border-radius: 30px;
}
.rounded-20{
	border-radius: 20px;
}
.rounded-10{
	border-radius: 10px;
}
.rounded-5{
	border-radius: 5px;
}
.rounded-br{
	border-top-left-radius: 0 !important;
	border-top-right-radius: 0 !important;
	border-bottom-left-radius: 0 !important;
}
.rounded-bl{
	border-top-left-radius: 0 !important;
	border-top-right-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
}
.rounded-r{
	border-top-left-radius: 0 !important;
	border-bottom-left-radius: 0 !important;
}
.rounded-l{
	border-top-right-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
}
.rounded-t{
	border-bottom-left-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
}
.rounded-b{
	border-top-left-radius: 0 !important;
	border-top-right-radius: 0 !important;
}
.rond{
	border-radius: 50%;
}
.rond-haut{
	border-radius: 50% 50% 0 0;
}
.rond-bas{
	border-radius: 0 0 50% 50%;
}
.rounded-bulle{
	border-bottom-left-radius: 0 !important;
}
.forme-1{
	border-radius:59% 41% 77% 23% / 31% 61% 39% 69% 
}

/*-----------------------------------------------------------------------------
 Textes
------------------------------------------------------------------------------*/

/* Textes - Font Family
--------------------------------------------------*/
.font-1 {
  font-family: var(--font-1);
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}
.font-2 {
  font-family: var(--font-2);
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}
.font-3 {
  font-family: var(--font-3);
  font-optical-sizing: auto;
}

/* Textes - Mise en forme
--------------------------------------------------*/
.bold, strong{
	font-weight: 600;
}
.italic{
	font-style: italic;
}
.uppercase{
	text-transform: uppercase;
}
.fw-100{
	font-weight: 100;
}
.fw-200{
	font-weight: 200;
}
.fw-300{
	font-weight: 300;
}
.fw-400{
	font-weight: 400;
}

/* Titres
--------------------------------------------------*/
.titre-1{
	font-size: 37px !important;
}
.titre-2{
	font-size: 30px !important;
}

/*-----------------------------------------------------------------------------
 Divers
------------------------------------------------------------------------------*/
.overflow-h{
	overflow: hidden;
}

/*-----------------------------------------------------------------------------
 Responsive
------------------------------------------------------------------------------*/
@media screen and (max-width: 1200px) {
.wrap-1200{
	width: 100%;
	padding-left: 50px;
	padding-right: 50px;
}	
}
@media screen and (max-width: 900px) {
.titre-1{
	font-size: 35px !important;
	line-height: 1.1;
}
.titre-2{
	font-size: 30px !important;
	line-height: 1.1;
}
}
@media screen and (max-width: 700px) {
.rounded-50{
	border-radius: 30px;
}
.wrap-1200{
	width: 100%;
	padding-left: 30px;
	padding-right: 30px;
}	
.titre-1{
	font-size: 32px !important;
	line-height: 1;
}
.titre-2{
	font-size: 28px !important;
	line-height: 1;
}
.wp-block-separator{
	margin-top: 45px;
	margin-bottom: 45px;
}	
}