/*
-----------------------------------------------------------
TYPOGRAPHY
----------------------------------------------------------- */

/* ALLIANZ OFFICIAL FONT */
@font-face {
	font-family: 'allianz_light';
	src: url('includes/font/AllianzNeoW01-Light.woff2') format('woff2'),
			url('includes/font/AllianzNeoW01-Light.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'allianz_regular';
	src: url('includes/font/AllianzNeoW01-Regular.woff2') format('woff2'),
		url('includes/font/AllianzNeoW01-Regular.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'allianz_semibold';
	src: url('includes/font/AllianzNeoW01-SemiBold.woff2') format('woff2'),
		url('includes/font/AllianzNeoW01-SemiBold.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'allianz_bold';
	src: url('includes/font/AllianzNeoW01-Bold.woff2') format('woff2'),
		url('includes/font/AllianzNeoW01-Bold.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}


/*
-----------------------------------------------------------
VARIABLES
----------------------------------------------------------- */
:root {
	--c-black: #414141;
	--c-allianz: #003781;
	--c-allianz-web: #007AB3;
	--c-entreprise1: #FF934F;
	--c-entreprise2: #FFE8B0;
	--c-agricole1: #407D71;
	--c-agricole2: #E3EBAF;
	--c-particulier1: #8A679C;
	--c-particulier2: #E1CFEB;
	--c-medicale1: #96DCFA;
	--c-medicale2: #C1EBFB;
	--c-beige: #F5F0E0;
}


/*
-----------------------------------------------------------
GENERAL
----------------------------------------------------------- */
body.bootstrap_global {
	background-color: #EDEDED;
	font-family: 'allianz_regular', sans-serif;
}
.w920 {
	max-width: 920px;
	width: 100%;

}
.bg-white {
	background-color: #fff;
}
.wrap {
	padding: 40px 30px;
}


* {
	word-break: break-word;
	-webkit-hyphens: inherit;
	-moz-hyphens: inherit;
	-ms-hyphens: inherit;
	-o-hyphens: inherit;
	hyphens: inherit;
}


/*
-----------------------------------------------------------
BOUTON ALLIANZ
----------------------------------------------------------- */
.bouton_allianz {
	border-radius: 6px;
	display: inline-block;
	font-family: 'allianz_semibold';
	font-size: 15px;
	font-weight: normal;
	text-align: center;
	text-transform: uppercase;

	background-color: var(--c-allianz-web);
	border: none;
	color: white;
	outline: none;
	overflow: hidden;
	padding: 1em 3em;
	position: relative;
	transition: color 0.4s;
	z-index: 1;
}
.bouton_allianz::before {
	background-color: #fff;
	border-radius: 50%;
	content: '';
	height: 1em;
	left: 50%;
	position: absolute;
	top: 50%;
	transform-origin: center;
	transform: translate3d(-50%, -50%, 0) scale3d(0, 0, 0);
	transition: transform 1s ease-in-out;
	width: 1em;
	z-index: -1;
}
.bouton_allianz:link,
.bouton_allianz:visited {
	text-decoration: none;
}
.bouton_allianz:hover {
	text-decoration: none;
}
.bouton_allianz:hover {
	cursor: pointer;
	color: var(--c-allianz-web);
}
.bouton_allianz:hover::before {
	transform: translate3d(-50%, -50%, 0) scale3d(100, 100, 100);
}
.bouton_allianz .icon {
	margin-right: 10px;
	position: relative;
	top: -4px;
}
.bouton_allianz .icon svg {
	width: 30px;
}
.bouton_allianz .icon svg path {
	fill: #fff;
	transition: fill 0.5s;
}
.bouton_allianz:hover .icon svg path {
	fill: var(--c-allianz);
}


/*
-----------------------------------------------------------
HEADER
----------------------------------------------------------- */
#header {
	min-height: 470px;
	position: relative;
}
#header .container {
	position: relative;
	z-index: 1;
}


/* arrière-plan header */
.header_background {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;

	width: 100%;
	height: 100%;

	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: -2;
}
.header_background_filter {
	background-color: #3C3C3C;
	opacity: 0.5;

	height: 100%;
	width: 100%;

	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: -1;
}


header#masthead {
	background: none transparent;
	box-shadow: none;
	padding-top: 0;
}
#masthead .navbar {
	align-items: start;
}
.navbar-brand {
	background-color: rgba(0,55,129,0.80);
	padding: 40px 40px 20px;
}


/* MENU DE NAVIGATION */
#main-nav {
	padding-top: 85px;
}
#masthead #main-nav .nav-item a {
	border-radius: 6px;
	border: 1px solid #fff;
	font-size: 15px;
	font-weight: 400;
	padding: 20px;
	text-transform: uppercase;
	transition: all 0.5s;
}
#masthead #main-nav .nav-item a:link,
#masthead #main-nav .nav-item a:visited {
	color: #fff;
}
#masthead #main-nav .nav-item a:hover {
	background-color: #fff;
	color: rgb(0,55,129);
}


/* BOUTON : MON ESPACE CLIENT */
#masthead #main-nav .picto_espaceclient a {
	padding: 18px 20px;
}
.picto_espaceclient a::before {
	content: url(img/picto_espaceclient_blanc.png);
	display: inline;
	height: 22px;
	left: 0;
	margin-right: 4px;
	position: relative;
	top: 4px;
	transition: content 0.5s;
	width: 22px;
}
.picto_espaceclient a:hover::before {
	content: url(img/picto_espaceclient_bleu.png);
}

/* BOUTON : MON ESPACE CLIENT (MOBILE) */
#topnav-mobile {
	background-color: #fff;
	display: flex;
	padding: 20px;
	text-align: center;
}
#topnav-mobile .nav-item a {
	border-radius: 6px;
	border: 1px solid var(--c-allianz);
	font-size: 15px;
	font-weight: 400;
	padding: 10px 20px;
	text-transform: uppercase;
	transition: all 0.5s;
}
#topnav-mobile .nav-item a:link,
#topnav-mobile .nav-item a:visited {
	color: var(--c-allianz);
	text-decoration: none;
}
#topnav-mobile .picto_espaceclient a::before {
	content: url(img/picto_espaceclient_bleu.png);
}

/* hover */
#topnav-mobile .nav-item a:hover {
	background-color: var(--c-allianz);
	border-color: var(--c-allianz);
	color: #fff;
}
#topnav-mobile .picto_espaceclient a:hover::before {
	content: url(img/picto_espaceclient_blanc.png);
}



/*
-----------------------------------------------------------
SUBHEAD (baseline + services)
----------------------------------------------------------- */
#subhead {
	padding: 50px 0 0;
	padding: 18vh 0 0;
	text-align: center;
}
#subhead .h1 ,
#subhead h1 {
	color: #fff;
	font-size: 42px;
	font-weight: 600;
	margin-bottom: 50px;
	margin-top: 0;
	/* text-transform: uppercase; */
}
#subhead .h1 strong ,
#subhead h1 strong {
	font-family: 'allianz_bold';
}

/* SERVICES : PICTOS */
#services_row {
	display: flex;
	justify-content: space-evenly;
}
.services {}
.services a {
	display: grid;
	font-family: 'allianz_bold';
	font-size: 24px;
	padding: 10px;
	text-decoration: none;
	text-transform: uppercase;
}
.services a:link,
.services a:visited {
	color: #fff;
}
.services a:hover {

}
.services img {
	margin: 0 auto;
}
.services_intitule {
	padding-top: 10px;
	color: #fff;
	transition: all 0.45s;
}
.services_intitule .light {
	font-family: 'allianz_light';
	font-size: 12px;
	line-height: 1em;
	position: relative;
	top: -2px;
	display: block;
}
.services_intitule .normal {
	position: relative;
	top: 0;
	display: block;
}

.services_rond {
	align-content: center;
	border-radius: 50%;
	border: 3px solid var(--c-allianz);
	display: grid;
	height: 106px;
	margin: 0 auto;
	transition: border 0.45s;
	width: 106px;

	outline: none;
	overflow: hidden;
	position: relative;
	z-index: 1;
}
.services_rond::before {
	background-color: var(--c-allianz-web);
	border: 1px solid var(--c-allianz-web);

	border-radius: 50%;
	content: '';
	height: 1em;
	left: 50%;
	position: absolute;
	top: 50%;
	transform-origin: center;
	transform: translate3d(-50%, -50%, 0) scale3d(0, 0, 0);
	transition: transform 0.45s ease-in-out;
	width: 1em;
	z-index: -1;
}
.services_icon svg {
	width: 70px;
}
.services_icon svg path {
	transition: fill 0.45s ease-in-out, fill 0.2s ease-in-out;
}

/* COLOR & ICON */
.services_rond_entreprise { border-color: var(--c-entreprise1); }
.services_rond_agricole { border-color: var(--c-agricole2); }
.services_rond_particulier { border-color: var(--c-particulier2); }
.services_rond_medicale { border-color: var(--c-medicale1); }

.services_rond_entreprise::before {
	background-color: var(--c-entreprise1);
	border: 1px solid var(--c-entreprise1);
}
.services_rond_agricole::before {
	background-color: var(--c-agricole2);
	border: 1px solid var(--c-agricole2);
}
.services_rond_particulier::before {
	background-color: var(--c-particulier2);
	border: 1px solid var(--c-particulier2);
}
.services_rond_medicale::before {
	background-color: var(--c-medicale1);
	border: 1px solid var(--c-medicale1);
}
.services_icon_entreprise svg path { fill: var(--c-entreprise1); }
.services_icon_agricole svg path { fill: var(--c-agricole2); }
.services_icon_particulier svg path { fill: var(--c-particulier2); }
.services_icon_medicale svg path { fill: var(--c-medicale1); }

/* HOVER */
.services a:hover .services_rond {
	cursor: pointer;
	color: #161616;
}
.services a:hover .services_rond::before {
  transform: translate3d(-50%, -50%, 0) scale3d(15, 15, 15);
}
.services a:hover .services_icon svg path {
	fill: #fff;
}
.services a:hover .services_intitule {
	opacity: 0.3;
}


/*
-----------------------------------------------------------
TEMPLATE : HOMEPAGE
----------------------------------------------------------- */
body.bootstrap_homepage #header {
	height: 100vh;
}
body.bootstrap_homepage .site-main {
	padding: 50px 100px;
}
body.bootstrap_homepage .container.w920 {
	padding-left: 0;
	padding-right: 0;
}

/*
-----------------------------------------------------------
BLOC ACCUEIL
----------------------------------------------------------- */
#bloc_accueil {
	margin-left: 0;
	margin-right: 0;
	text-align: left;
}
#bloc_accueil_photo {
	padding: 0;
}
.bloc_accueil_photo {
	height: 100%;
	object-fit: cover;
	object-position: 60% 0;
	width: 100%;
}
#bloc_accueil_content {
	padding: 0;
}
#bloc_accueil_head {
	background-color: var(--c-beige);
}
#bloc_accueil_titre {
	color: var(--c-allianz);
	font-family: 'allianz_bold';
	font-size: 30px;
	font-weight: normal;
	line-height: 0.95em;
	margin: 0 0 -80px;
	padding-right: 30px;
	text-transform: uppercase;
}
#bloc_accueil_intro {
	color: var(--c-black);
	font-size: 16px;
	/* line-height: 2em; */
}
#bloc_accueil_body .bouton_allianz {
	width: 100%;
}
.main_accueil .bouton_allianz {
	width: 40%;
}


/*
-----------------------------------------------------------
SUB FOOTER
----------------------------------------------------------- */
#subfooter {
	margin-top: 50px;
	margin-bottom: 50px;
	text-align: center;
}
.subfooter_titre {
	color: #000;
	font-family: 'allianz_semibold';
	font-size: 18px;
	font-weight: normal;
	margin: 0;
	text-align: center;
	padding-bottom: .3em;
}
.subfooter_titre span {
	display: block;
	font-size: 36px;
}
#subfooter_nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
	padding-top: 30px;
}
.subfooter_item {
	text-align: center;
}
.subfooter_lien {
	display: grid;
	font-family: 'allianz_bold';
	font-size: 24px;
	padding: 10px;
	text-transform: uppercase;
}
.subfooter_lien:link,
.subfooter_lien:visited {
	color: var(--c-allianz);
	text-decoration: none;
}
.subfooter_lien:hover {
	color: var(--c-allianz-web);
	text-decoration: none;
}
.subfooter_lien .rond {
	align-content: center;
	border-radius: 50%;
	border: 3px solid var(--c-allianz);
	display: grid;
	height: 106px;
	margin: 0 auto;
	transition: border 0.45s;
	width: 106px;

	outline: none;
	overflow: hidden;
	position: relative;
	z-index: 1;
}
.subfooter_lien .rond::before {
	background-color: var(--c-allianz-web);
	border-radius: 50%;
	border: 1px solid var(--c-allianz-web);
	content: '';
	height: 1em;
	left: 50%;
	position: absolute;
	top: 50%;
	transform-origin: center;
	transform: translate3d(-50%, -50%, 0) scale3d(0, 0, 0);
	transition: transform 0.45s ease-in-out;
	width: 1em;
	z-index: -1;
}
.subfooter_lien:hover .rond {
	cursor: pointer;
	color: #161616;
	border-color: var(--c-allianz-web);
}
.subfooter_lien:hover .rond::before {
  transform: translate3d(-50%, -50%, 0) scale3d(15, 15, 15);
}
.subfooter_icon svg path {
	fill: var(--c-allianz);
	transition: fill 0.45s;
}
.subfooter_lien:hover .subfooter_icon svg path {
	fill: #fff;
}
.subfooter_texte {
	padding-top: 10px;
}
#subfooter .bouton_allianz {
	margin-top: 50px;
}


/*
-----------------------------------------------------------
BANNIERE
----------------------------------------------------------- */
#banniere {
    overflow: hidden;
    position: absolute;
    z-index: 10;
    width: 100%;
    transform: translateY(-200px);
}
#banniere .col {
	padding: 0;
}
.page_main_title {
	color: #fff;
	font-family: 'allianz_bold';
	font-size: 40px;
	font-weight: normal;
	margin: 0;
	text-shadow: 0 4px 5px rgba(0,0,0,0.5);
	text-transform: uppercase;
}
.page_summary {
	background-color: var(--c-allianz);
	color: #fff;
	font-size: 18px;
	line-height: 1.8em;
	margin: 0;
	min-height: 220px;
	padding: 0;
	position: relative;
}
.page_summary::before {
	background-color: var(--c-allianz);
	content: '';
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 300%;
	z-index: -1;
}
#page_summary .wrap {
    padding-bottom: 40px;
    /* padding-right: 8em; */
}
#page_summary p {
	margin-bottom: 0;
}
.meta_page_categorie {
	color: #3c3c3c;
	font-family: 'allianz_bold';
	font-size: 16px;
	text-transform: uppercase;
}
.page_titre {
	color: #fff;
	font-family: 'allianz_bold';
	font-size: 48px;
	font-weight: normal;
	line-height: 1em;
	margin: 0;
	padding-bottom: 10px;
}

/* SI PAGE SERVICES */
body.page_services #banniere {
	transform: translateY(-90%);
}
body.page_services #page_summary .wrap {
	padding-right: 40px;
}
.back_services {
	display: block;
	margin-top: 10px;
	padding-left: 35px;
	position: relative;
}
.back_services:link,
.back_services:visited {
	color: #fff;
	text-decoration: none;
}
.back_services:hover {
	color: #ddd;
	text-decoration: none;
}
.picto_back {
	display: block;
	left: 0;
	position: absolute;
	top: -2px;
	width: 24px;
}
.picto_back svg {
	fill: #fff;
}
.back_services:hover .picto_back svg {
	fill: #ddd;
}



/*
-----------------------------------------------------------
LISTE DES PRESTATIONS
----------------------------------------------------------- */
#pageliste {
	padding-top: 50px;
	padding-bottom: 50px;
}
.pageliste_item + .pageliste_item {
	margin-top: 90px;
}
.pageliste_photo {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	padding: 0;
}
.pageliste_content {
	padding: 0;
}
.pageliste_content .wrap {
	padding: 40px;
}
.pageliste_head {
	background-color: var(--c-beige);
}
.pageliste_titre {
	color: var(--c-allianz);
	font-family: 'allianz_bold';
	font-size: 42px;
	font-weight: normal;
	line-height: 0.95em;
	margin: 0 0 -80px;
	padding-right: 30px;
	text-transform: uppercase;
	padding-bottom: .3em;
}
.pageliste_body {
	font-size: 21px;
	line-height: 1.5em;
	color: var(--c-black);
}
.pageliste_liste ul {
	margin: 0;
	padding: 0;
}
.pageliste_liste li {
	list-style: none;
	padding-bottom: 14px;
}
.pageliste_lien {
	font-family: 'allianz_regular';
	font-size: 19px;
	transition: opacity;
}
.pageliste_lien:link, .pageliste_lien:visited {
	color: var(--c-allianz);
	text-decoration: none;
}
.pageliste_lien:hover {
	opacity: 0.6;
	text-decoration: none;
}


/*
-----------------------------------------------------------
BLOCS EXPERTISE
----------------------------------------------------------- */
#page_expertises {
	margin-top: 40px;
	margin-bottom: 160px;
}
#page_expertises_titre {
	padding: 0;
}
#page_expertises_titre .wrap {
	background-color: var(--c-entreprise2);
	margin-right: -50%;
	padding-bottom: 30px;
	padding-left: 40px;
	padding-right: 60%;
	padding-top: 30px;
	position: relative;
	top: 25px;
}
#page_expertises_titre h3 ,
#page_expertises_titre .h3 {
	color: var(--c-allianz);
	font-family: 'allianz_semibold';
	font-size: 24px;
	font-weight: normal;
	line-height: 1.5em;
	margin: 0;
}
#page_expertises_liste {
	padding: 0;

	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(3, 1fr);
	grid-column-gap: 25px;
	grid-row-gap: 25px;
	margin-bottom: -80px;
}
.expertise_bloc {
	position: relative;
	width: 100%;
	height: 170px;
	overflow: hidden;
}
.expertise_bloc::before {
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: var(--c-allianz);
	opacity: 0.5;
	transition: opacity 0.5s;
	top: 0;
	left: 0;
	z-index: 1;
}
.expertise_bloc:hover::before {
	opacity: 0;
}
.expertise_photo {
	top: 0;
	left: 0;
	position: absolute;
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.expertise_lien {
	justify-content: center;
	align-items: center;
	display: flex;
	height: 100%;
	position: relative;
	z-index: 1;
}
.expertise_lien:link, .expertise_lien:visited {
	text-decoration: none;
}
.expertise_lien:hover {
	text-decoration: none;
}
.expertise_nom {
	font-family: 'allianz_bold';
	font-weight: normal;
	font-size: 32px;
	color: #fff;
	text-transform: uppercase;
}


/*
-----------------------------------------------------------
PAGE DEFAULT
----------------------------------------------------------- */
#entry {

}
.the_content {
	padding-top: 30px;
	position: relative;
	z-index: 10;
}
.the_content {
	color: var(--c-black);
}
.the_content * {
	font-size: 18px;
	line-height: 1.75em;
}
.the_content *:first-child {
	margin-top: 0;
}
.the_content h2 {
	color: var(--c-allianz);
	font-family: 'allianz_bold';
	font-size: 1.667em;
	font-weight: normal;
	line-height: 1em;
	margin-bottom: 20px;
	margin-top: 30px;
	position: relative;
}
.the_content h2::before {
	background-color: var(--c-allianz-web);
	content: '';
	display: inline-block;
	height: 19px;
	margin-right: 14px;
	position: relative;
	width: 14px;
}
.the_content h3 {
	color: var(--c-allianz-web);
	font-family: 'allianz_bold';
	font-size: 1.389em;
	font-weight: normal;
	line-height: 1em;
	margin-top: 20px;
}
.the_content h4 {
	color: var(--c-allianz-web);
	font-size: 1.167em;
	opacity: 0.7;
}
.the_content p {
	font-size: 18px;
	line-height: 1.75em;
	margin-bottom: 30px;
}
.the_content strong {
	font-family: 'allianz_bold';
	font-weight: normal;
}
.the_content ul {
    padding-left: 20px;
}
.the_content li {
	color: var(--c-allianz);
	margin-top: 20px;
}
.the_content div,
.the_content embed,
.the_content figcaption,
.the_content figure,
.the_content iframe,
.the_content img,
.the_content table {
	max-width: 100%;
}
.the_content blockquote {
	font-style: italic;
}

.the_content .bouton_allianz:link,
.the_content .bouton_allianz:visited {
	color: #fff;
}
.the_content input.bouton_allianz:hover,
.the_content .bouton_allianz:hover {
	color: var(--c-allianz-web);
}


/*
-----------------------------------------------------------
FORMULAIRE DE CONTACT
----------------------------------------------------------- */
.the_content .wpcf7-submit {
	color: #fff;
	padding: 0.5em 2em;
	width: 100%;
}
.card-body .choix {
	display: block;
	margin-left: -1em;
	padding-bottom: 20px;
}
.card-body .piecejointe {
	display: block;
	margin-bottom: 15px;
}

.wpcf7-form .row {
	margin-left: 0;
	margin-right: 0;

	padding-left: 0;
	padding-right: 0;
}
.wpcf7-form .row > * {
	margin-left: 0;
	margin-right: 0;
}

.icon_page_contact {
	display: block;
}
.icon_page_contact svg {
	fill: var(--c-allianz-web);
	width: 40px;
	height: auto;
	padding-top: 20px;
}


/*
-----------------------------------------------------------
FICHES IPID
----------------------------------------------------------- */
#fiches_ipid {
	display: grid;
	grid-gap: 1em;
	grid-template-columns: repeat(2, 1fr);
}
#fiches_ipid .bouton_allianz {
	font-size: 11px;
	padding-right: 2em;
	padding-left: 2em;
}
.bouton_intitule {}



/*
-----------------------------------------------------------
FAQ
----------------------------------------------------------- */
.accordion .card-header .btn {
	text-decoration: none;
	text-transform: uppercase;
	font-size: 21px;
	font-family: 'allianz_semibold';
	font-weight: normal;
}




/*
-----------------------------------------------------------
FOOTER
----------------------------------------------------------- */
/* Footer agences  */
.footer_descripion {
	overflow: hidden;
	background-image:
		url("img/footer-description-bg-left.png"),
		url("img/footer-description-bg-right.png");
	background-position: bottom left 6%, bottom right 3%;
	background-repeat: no-repeat;
	background-color: #fff;
}
.footer_descripion ._inner {
	background: rgba(255, 255, 255, 0.75);
	border-radius: 4px;
}
.footer_descripion ._inner::before {
	position: relative;
}
.footer_descripion ._title .h2 {
	color: var(--c-allianz-web);
	font-family: 'Allianz_bold';
	font-size: 28px;
	line-height: 1.2;
	margin-bottom: 15px;
}
.footer_descripion ._title small {
display: block;
font-size: 16px;
color: #b4b4b4;
font-family: 'Allianz_regular';
/* line-height: 1; */
}
.footer_descripion ._inner a {
	color: inherit;
	text-decoration: underline;
}
.footer_descripion p {
	font-size: 16px;
	font-family: 'Allianz_semibold';
	margin-bottom: 15px;
}
.footer_descripion p:last-child {
	margin-bottom: 0;
}
/* Services category__content  */
.category__content {
	background: #fff;
}
.category__content h2 {
	font-family: 'allianz_bold';
	font-weight: 600;
	color: #007ab3;
	text-transform: uppercase;
	padding: 0;
	margin: 0 0 10px;
}
.category__content h3 {
	margin: 0px 0 0;
	color: var(--c-allianz);
}
.category__content li {
	margin-bottom: .5em;
  display: flex;
}
.category__content li::before {
	content: "–";
	display: inline-block;
	margin-right: 5px;
	flex-shrink: 0;
}
.category__content li ,
.category__content p {
	color: var(--c-allianz);
	font-weight: 600;
	margin-bottom: 1em;
	font-family: 'allianz_light',sans-serif;
}
.category__content small {
	font-size: 84%;
	font-family: 'allianz_regular',sans-serif;
	font-weight: 600;
	color: var(--c-allianz);
}
.category__content p a {
	color: inherit;
	text-decoration: underline;
}
/* Footer agences  */
.page-child .footer_agences {
	display: none;
}
.footer_agences ._grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	grid-gap: 20px;
}
.footer_agences ._item {
	border: 1px solid #d8d8d8;
	border-radius: 3px;
	padding: 20px 20px;
}
.footer_agences ._item ._title {
	font-size: 28px;
	font-weight: 400;
	line-height: 1.2;
	color: var(--c-allianz-web);
	margin-bottom: 10px;
}
.footer_agences ._item ._content {
	font-family: 'Allianz_semibold';
	font-size: 16px;
}
.footer_agences ._item ._content a {
	color: inherit;
	text-decoration: underline;
}


footer#colophon {
	background-color: #BFBFBF !important;
}

/* MENUS */
.menu_footer {
	margin: 30px 0;
}
.menu_footer ul {
	margin: 0;
	padding: 0;
	text-align: center;
}
.menu_footer li {
	display: inline-block;
	list-style: none;
	padding-right: 36px;
}
footer#colophon .menu_footer a {
	font-size: 1.15em;
	font-weight: 400;
	position: relative;
	text-decoration: none;
	text-transform: uppercase;
}
footer#colophon .menu_footer a:link,
footer#colophon .menu_footer a:visited {
	color: var(--c-black);
}
footer#colophon .menu_footer a:hover {
	color: var(--c-allianz-web);
}
footer#colophon .menu_footer a::before {
	background-color: var(--c-allianz-web);
	bottom: -2px;
	content: '';
	height: 2px;
	left: 0;
	position: absolute;
	right: 0;
	transform-origin: bottom right;
	transform: scaleX(0);
	transition: transform 0.5s ease;
}
footer#colophon .menu_footer a:hover::before {
	transform-origin: bottom left;
	transform: scaleX(1);
}

/* BLOC SOCIAL LINKS */
#footer_social_links {
	color: var(--c-black);
	font-size: 16px;
	font-weight: 500;
	text-transform: uppercase;
}
#footer_social_links span {
	margin-right: 20px;
}
#footer_social_links a + a {
	margin-left: 20px;
}
#footer_social_links img {
	position: relative;
	top: -2px;
	transition: opacity 1s;
	width: 34px;
}
#footer_social_links img:hover {
	opacity: 0.4;
}

/* ORIAS */
.footer_orias {
	color: var(--c-black);
	margin-top: 16px;
	text-transform: uppercase;
}
.footer_orias .strong {
	font-family: 'allianz_bold';
}


/*
-----------------------------------------------------------
TOOLBAR
----------------------------------------------------------- */
#toolbar {
	background-color: var(--c-allianz-web);
	border-bottom-left-radius: 4px;
	border-top-left-radius: 4px;
	min-width: 100px;
	position: fixed;
	right: 0;
	top: 200px;
	z-index: 100;
}
.toolbar_item {
	position: relative;
	text-align: center;
}
.toolbar_item::before {
	background-color: #fff;
	content: '';
	display: block;
	height: 1px;
	margin: 0 auto;
	position: relative;
	top: 0;
	width: 54px;
}
.toolbar_item:first-child {
	margin-top: 0;
}
.toolbar_item:first-child::before {
	display: none;
}
.toolbar_lien {
	display: block;
	padding: 8px 13px 14px;
	transition: all .3s;
}
.toolbar_lien:link,
.toolbar_lien:visited {
	color: #fff;
	text-decoration: none;
}
.toolbar_lien:hover {
	opacity: 0.6;
}
.toolbar_icon {
	display: block;
	margin-bottom: -10px;
}
.toolbar_icon svg {
	fill: #fff;
	max-width: 48px;
}
.toolbar_texte {
	display: block;
	font-size: 12px;
}


/*
-----------------------------------------------------------
MEGAMENU
----------------------------------------------------------- */

/* MODAL */
.super-modal {
    padding-top: 85px;
    padding-left: 25px;
}
.super-modal a {
	border-radius: 6px;
	border: 1px solid #fff;
	color: #fff;
	cursor: pointer;
	font-size: 15px;
	font-weight: 400;
	padding: 20px;
	text-decoration: none;
	text-transform: uppercase;
	transition: all 0.5s;
}
.super-modal a:link,
.super-modal a:visited {
	color: #fff;
}
.super-modal a:hover {
	background-color: #fff;
	color: var(--c-allianz);
}


/* BURGER */
.super-modal .burger {
	padding: 19px 16px;
}
.super-modal .burger svg {
	height: auto;
	width: 28px;
}
.super-modal .burger svg #menu_burger {
	fill: #fff;
}
.super-modal .burger:hover svg #menu_burger {
	fill: var(--c-allianz);
}


#modal1 .modal-dialog {
	margin: auto;
	max-width: 100%;
	padding: 0;
}
.modal-backdrop.show {
	background-color: var(--c-allianz);
	opacity: .9;
}



/* TOOLBAR FX */
#toolbar {
	transition: right 1s, bottom 1s;
}
body.modal-open #toolbar {
	right: -200px;
}


/* MEGAMENU BODY */
#megamenu {
	color: #fff;
	height: 100vh;
	pointer-events: auto;
	width: 100%;
}
#megamenu .row {
	position: relative;
}

/* BOUTON CLOSE */
#megamenu .close-rounded {
	background-color: transparent;
	border-radius: 6px;
	border: 1px solid #fff;
	padding: 6px 4px;

	height: 46px;
	width: 46px;
	transition: all 0.5s;

	position: absolute;
	right: 32px;
	top: 85px;
	z-index: 9999;
}
#megamenu .close-rounded::before, #megamenu .close-rounded::after {
	background-color: #fff;
	content: ' ';
	height: 33px;
	left: 21px;
	position: absolute;
	transition: all 0.5s;
	width: 2px;
}
#megamenu .close-rounded::before {
	transform: rotate(45deg);
}
#megamenu .close-rounded::after {
	transform: rotate(-45deg);
}

#megamenu .close-rounded:hover {
	background-color: #fff;
}
#megamenu .close-rounded:hover::before,
#megamenu .close-rounded:hover::after {
	background-color: var(--c-allianz-web);
}


/* MEGAMENU LOGO */
#megamenu-logo {
    margin-top: 40px;
    padding-left: 75px;
}

/* NAB TAB */
#megamenu nav {
	margin-top: 40px;
	margin-bottom: -10px;
	padding-bottom: 30px;
	padding-left: 0;
	padding-right: 0;
}
.nav-tabs .nav-item {
    margin-bottom: 10px;
}
#megamenu .nav-tabs .nav-item {
	border-radius: 6px;
	border: 1px solid #fff;
	color: #fff;
	font-family: 'allianz_bold';
	font-size: 19px;
	font-weight: normal;
	text-transform: uppercase;
	transition: all 0.5s;
}
#megamenu .nav-tabs .nav-item:hover {
	background-color: #fff;
	color: var(--c-allianz);
}
#megamenu .nav-tabs .nav-link.active {
	color: var(--c-allianz);
}
#megamenu .nav-tabs .nav-item + .nav-item {
	margin-left: 20px;
}

#megamenu .nav-tabs .nav-item[data-toggle] {
	padding-right: 40px;
	position: relative;
}
#megamenu .nav-tabs .nav-item[data-toggle]::before {
	content: url(img/picto/fleche-blanc.svg);
	display: block;
	position: absolute;
	right: 15px;
	top: 8px;
	width: 15px;
}
#megamenu .nav-tabs .nav-item.active[data-toggle]::before,
#megamenu .nav-tabs .nav-item[data-toggle]:hover::before {
	content: url(img/picto/fleche-bleu.svg);
}


/* TAB CONTENT */
#nav-tabContent div[class*="col-"] {
	margin-top: 30px;
}
#nav-tabContent span {
	font-family: 'allianz_bold';
	font-size: 24px;
	font-weight: normal;
}
#nav-tabContent ul {
	margin-bottom: 0;
	padding: 0;
}
#nav-tabContent li {
	list-style: none;
	padding: 2px 0;
}
#nav-tabContent a {
	text-decoration: none;
	font-size: 16px;
}
#nav-tabContent a:link,
#nav-tabContent a:visited {
	color: #fff;
}
#nav-tabContent a:hover {
	color: var(--c-allianz-web);
}


/*
-----------------------------------------------------------
TEMPLATE : SERVICES (color)
----------------------------------------------------------- */
.page_entreprise .header_background_filter { background-color: var(--c-entreprise1); opacity: 0.2; }
.page_entreprise .page_summary { background-color: var(--c-entreprise1); }
.page_entreprise .page_summary::before { background-color: var(--c-entreprise1); }
.page_entreprise .pageliste_head { background-color: var(--c-entreprise2); }
.page_entreprise .pageliste_titre { color: var(--c-entreprise1); }
.page_entreprise #page_expertises_titre .wrap { background-color: var(--c-entreprise2); }
.page_entreprise .the_content h2 { color: var(--c-entreprise1); }
.page_entreprise .the_content h2::before { background-color: var(--c-entreprise2); }
/* .page_entreprise .the_content h3 { color: var(--c-entreprise1); } */
.page_entreprise .the_content h4 { color: var(--c-entreprise1); opacity: 1;  }


.page_agricole .header_background_filter { background-color: var(--c-agricole1); opacity: 0.2; }
.page_agricole .page_summary { background-color: var(--c-agricole1); }
.page_agricole .page_summary::before { background-color: var(--c-agricole1); }
.page_agricole .pageliste_head { background-color: var(--c-agricole2); }
.page_agricole .pageliste_titre { color: var(--c-agricole1); }
.page_agricole #page_expertises_titre .wrap { background-color: var(--c-agricole2); }
.page_agricole .the_content h2 { color: var(--c-agricole1); }
.page_agricole .the_content h2::before { background-color: var(--c-agricole2); }
.page_agricole .the_content h3 { color: var(--c-agricole2); }
.page_agricole .the_content h4 { color: var(--c-agricole2); }


.page_particulier .header_background_filter { background-color: var(--c-particulier1); opacity: 0.2; }
.page_particulier .page_summary { background-color: var(--c-particulier1); }
.page_particulier .page_summary::before { background-color: var(--c-particulier1); }
.page_particulier .pageliste_head { background-color: var(--c-particulier2); }
.page_particulier .pageliste_titre { color: var(--c-particulier1); }
.page_particulier #page_expertises_titre .wrap { background-color: var(--c-particulier2); }
.page_particulier .the_content h2 { color: var(--c-particulier1); }
.page_particulier .the_content h2::before { background-color: var(--c-particulier2); }
.page_particulier .the_content h3 { color: var(--c-particulier2); }
.page_particulier .the_content h4 { color: var(--c-particulier2); }


.page_medicale .header_background_filter { background-color: var(--c-medicale1); opacity: 0.2; }
.page_medicale .page_summary { background-color: var(--c-medicale1); }
.page_medicale .page_summary::before { background-color: var(--c-medicale1); }
.page_medicale .pageliste_head { background-color: var(--c-medicale2); }
.page_medicale .pageliste_titre { color: var(--c-medicale1); }
.page_medicale #page_expertises_titre .wrap { background-color: var(--c-medicale2); }
.page_medicale .the_content h2 { color: var(--c-medicale1); }
.page_medicale .the_content h2::before { background-color: var(--c-medicale2); }
.page_medicale .the_content h3 { color: var(--c-medicale2); }
.page_medicale .the_content h4 { color: var(--c-medicale2); }






/*
-----------------------------------------------------------
RESPONSIVE
----------------------------------------------------------- */

/*
---------------------------------------------------------  XL */
@media (max-width: 1199px) {

	/* BANNIERE */
	.page_summary .wrap {
		padding-right: 90px;
	}


	/* BASELINE + PICTOS */
	.services a {
		font-size: 18px;
	}


	/* MAIN NAV */
	#main-nav {
		display: flex;
		flex-basis: auto;
	}

	/* SUBFOOTER */
	#subfooter_nav {
		padding-left: 50px;
		padding-right: 50px;
	}

}

/*
---------------------------------------------------------  LG */
@media (max-width: 991px) {

	/* TEMPLATE SERVICES */
	body.page_services #header,
	body.page_entreprise #header,
	body.page_agricole #header,
	body.page_particulier #header,
	body.page_medicale #header {
		min-height: 515px;
	}
	#banniere .container {
		max-width: 100%;
	}
	#banniere .wrap {
		padding: 30px;
	}
	body.page_services #banniere .page_summary .wrap,
	#banniere .page_summary .wrap {
		padding-right: 110px;
	}
	.page_main_title {
		font-size: 40px;
	}
	body.page_services #primary {
		padding-left: 50px;
		padding-right: 50px;
	}
	.page_summary {
		min-height: 0;
	}
	#banniere {
		transform: translateY(-100%);
	}
	.page_titre {
		font-size: 36px;
	}


	/* BASELINE + PICTOS */
	#subhead .h1 strong ,
	#subhead h1 strong {
		display: block;
	}


	/* SUBFOOTER */
	.subfooter_titre,
	#subfooter_nav {
		padding-left: 100px;
		padding-right: 100px;
	}

}

/*
---------------------------------------------------------  MD */
@media (max-width: 767px) {

	/* header */
	body.bootstrap_homepage #header {
		height: auto;
	}
	header#masthead {
		background: none transparent;
		box-shadow: none;
		padding: 0;
	}

	#header .container {
		margin-left: auto;
		margin-right: auto;
		max-width: 100%;
		padding-left: 0;
		padding-right: 0;
	}

	/* logo */
	.navbar-brand {
		display: block;
		margin-right: -30px;
		text-align: center;
		width: 100%;
	}

	/* MAIN NAV */
	#main-nav {
		display: none;
	}
	.super-modal {
		padding: 0;
		position: absolute;
		right: 50px;
		top: 50%;
		transform: translateY(-50%);
	}

	/* BASELINE + PICTOS */
	#subhead {
		padding-top: 60px;
		padding-bottom: 40px;
	}
	#subhead .h1 ,
	#subhead h1 {
		font-size: 32px;
		line-height: 1em;
		margin-bottom: 20px;
		padding-left: 15px;
		padding-right: 15px;
	}
	#subhead .h1 strong ,
	#subhead h1 strong {
		display: initial;
	}
	#services_row {
		display: block;
	}
	.services {
		display: inline-block;
		width: 24%;
	}



	/* MEGA MENU */
	#megamenu .close-rounded {
		right: 0;
		top: 32px;
	}
	#megamenu-logo {
		display: none
	}
	#megamenu #nav {
		margin-top: 80px;
	}
	#megamenu #nav-tab {
		border-bottom: none;
		display: block;
		padding-bottom: 0;
		margin-top: 120px;
	}
	#megamenu .nav-tabs .nav-item + .nav-item {
		margin-left: 0;
		margin-top: 2px;
	}
	#nav-tabContent {
		padding-bottom: 90px;
	}


	/* TOOLBAR */
	#toolbar {
		border-radius: 0;
		display: flex;
		justify-content: space-evenly;
		left: 0;
		top: auto;
		width: 100%;
		bottom: -200px;
	}
	#toolbar.hasScrolled {
		bottom: 0;
	}
	.toolbar_item {
		padding-left: 0;
		padding-right: 0;
		width: 100%;
	}
	.toolbar_item::before {
		left: -50%;
		top: 50%;
		transform: rotate(90deg);
	}
	.toolbar_lien {
		padding-left: 8px;
		padding-right: 8px;
	}
	.toolbar_texte {
		display: block;
		font-size: 15px;
	}
	/* espace réservé à la toolbar */
	body {padding-bottom: 105px !important;}


	/* TEMPLATE SERVICES */
	body.page_services #header {
		min-height: 700px;
	}
	#page_expertises_titre .wrap {
		margin-right: 0;
		padding-right: 40px;
		top: 0;
	}
	#page_expertises_liste {
		padding: 15px;
	}
	#banniere .wrap {
		padding: 30px 35px;
	}
	body.page_services #banniere .page_summary .wrap,
	#banniere .page_summary .wrap {
		padding-left: 15px;
		padding-right: 15px;
		padding-top: 10px;
		padding-bottom: 10px;
	}
	.pageliste_photo {
		height: calc(100vw - 100px);
		max-height: 400px;
	}


	/* HOMEPAGE */
	body.bootstrap_homepage .site-main {
		/*
		padding: 0 50px;
		*/
		padding: 50px;
	}
	body.bootstrap_homepage #subfooter .bouton_allianz {
		margin-top: 0;
	}

	/* titre bloc */
	.pageliste_titre {
		padding-right: 0;
	}

	/* FICHES IPID */
	#fiches_ipid {
		grid-template-columns: repeat(1, 1fr);
	}


}

/*
---------------------------------------------------------  SM */
@media (max-width: 575px) {

	/* HEADER */
	#header .container {
		padding: 0;
	}
	.navbar-brand a {
		display: block;
		height: 100%;
		width: 100%;
	}
	.super-modal {
		right: 15px;
	}


	/* MEGA MENU */
	#megamenu .close-rounded {
		right: 15px;
	}
	#megamenu #nav-tab {
		padding-right: 15px;
		padding-left: 15px;
	}


	/* ACCUEIL */
	body.bootstrap_homepage #header {
		height: auto;
		min-height: calc(100vh - 90px);
	}
	#subhead {

	}
	#subhead h1 {
		font-size: 18px;
	}

		/* picto */
		.services_rond {
			width: 90px;
			height: 90px;
		}
		.services_icon {
			padding: 10px;
		}
		.services_icon svg {
			width: 100%;
		}
		.services_intitule {
			padding-top: 5px;
		}
		.services a {
			font-size: 16px;s
		}


	/* SUB FOOTER */
	#subfooter .container {
		padding-left: 15px;
		padding-right: 15px;
	}
	body.bootstrap_homepage .bouton_allianz .icon {
		display: block;
		margin: 0 auto 5px;
		position: static;
	}


	/* FOOTER */
	.menu_footer li {
		display: block;
		margin-left: -15px;
		margin-right: -15px;
		padding-bottom: 10px;
		padding-right: 0;
		padding-top: 10px;
	}
	.menu_footer li a {
		display: block;
	}


	/* TEMPLATE SERVICES */
	body.page_services #primary {
		padding-left: 30px;
		padding-right: 30px;
	}
	body.page_services #banniere .page_summary .wrap {
		padding-left: 15px;
		padding-right: 15px;
		padding-bottom: 15px;
		padding-top: 15px;
	}
	body.page_services #banniere .page_summary .wrap p {
    font-size: 16px;
		text-align: justify;
    line-height: 1.4;
	}
	#page_expertises_liste {
		grid-template-columns: repeat(1, 1fr);
		grid-template-rows: repeat(1, 1fr);
		padding: 0;
	}
	.pageliste_item + .pageliste_item {
		margin-top: 50px;
	}
	.pageliste_content .wrap {
		padding: 20px;
	}
	.pageliste_titre {
		font-size: 34px;
		margin-bottom: -44px;
	}
	.pageliste_lien {
		font-size: 20px;
	}

	#banniere .wrap {
		padding-left: 15px;
		padding-right: 15px;
	}


	/* PAGE CONTENU */
	#entry {
		padding-left: 0;
		padding-right: 0;
	}
	#entry .wrap {
		padding-left: 30px;
		padding-right: 30px;
	}


	/* HOMEPAGE */
	body.bootstrap_homepage #main {
		padding-left: 15px;
		padding-right: 15px;
	}
	body.bootstrap_homepage .bouton_allianz .icon {
		top: 8px;
	}

	#bloc_accueil_head .wrap,
	#bloc_accueil_body .wrap {
		padding-left: 30px;
		padding-right: 30px;
	}
	#bloc_accueil_titre {
		padding-right: 0;
	}

	.services {
		width: 48%;
	}

	.footer_descripion {
		background-image: none;
	}
	.footer_descripion p {
		font-size: 14px;
	}
	._excerpt p{
		line-height: 1.4;
		font-size: 16px;
	}
}


/*
---------------------------------------------------------  SMALL MOBILE */
@media (max-width: 470px) {


	/* HEADER */
	.navbar-brand img {
		max-width: 150px;
	}


}
