/**
 * PNC France - Socle autonome
 *
 * Remplace les quelques règles de base que le thème héritait de Divi
 * (remise à zéro, typographie par défaut, formulaires, alignements WordPress).
 * N'est chargé que lorsque Divi n'est plus le thème parent : tant que Divi
 * est actif, c'est sa propre feuille qui joue ce rôle.
 *
 * Les valeurs reprennent celles de Divi 4.27 et de son personnalisateur, pour
 * que la bascule ne change rien au rendu.
 *
 * @package PNC_France
 */

/* Divi applique border-box à tous les éléments ; le thème en dépend. */
* {
	box-sizing: border-box;
}

/* Remise à zéro (identique à celle de Divi) */
a, abbr, acronym, address, applet, b, big, blockquote, body, center, cite, code,
dd, del, dfn, div, dl, dt, em, fieldset, font, form, h1, h2, h3, h4, h5, h6,
html, i, iframe, img, ins, kbd, label, legend, li, object, ol, p, pre, q, s,
samp, small, span, strike, strong, sub, sup, tt, u, ul, var {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	vertical-align: baseline;
	background: transparent;
}

ol,
ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote::before,
blockquote::after,
q::before,
q::after {
	content: "";
	content: none;
}

blockquote {
	margin: 20px 0 30px;
	border-left: 5px solid #2ea3f2;
	padding-left: 20px;
}

blockquote p {
	padding-bottom: 0;
}

:focus {
	outline: 0;
}

:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

del {
	text-decoration: line-through;
}

ins {
	text-decoration: none;
}

pre {
	overflow: auto;
	padding: 10px;
}

code,
pre {
	font-family: "Courier New", monospace;
	margin-bottom: 10px;
}

figure {
	margin: 0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

article, aside, footer, header, hgroup, nav, section, main {
	display: block;
}

/* Typographie par défaut */
body {
	font-family: "Open Sans", Arial, sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.7em;
	color: #666;
	background-color: #fff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

a {
	color: #2ea3f2;
	text-decoration: none;
}

a:hover {
	text-decoration: none;
}

p {
	padding-bottom: 1em;
}

p:not(.has-background):last-of-type {
	padding-bottom: 0;
}

strong {
	font-weight: 700;
}

cite,
em,
i {
	font-style: italic;
}

sub,
sup {
	height: 0;
	line-height: 1;
	position: relative;
	vertical-align: baseline;
}

sup {
	bottom: 0.8em;
}

sub {
	top: 0.3em;
}

dl {
	margin: 0 0 1.5em;
}

dl dt {
	font-weight: 700;
}

dd {
	margin-left: 1.5em;
}

h1, h2, h3, h4, h5, h6 {
	color: #023177;
	padding-bottom: 10px;
	line-height: 1em;
	font-weight: 500;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
	color: inherit;
}

h1 { font-size: 30px; }
h2 { font-size: 26px; }
h3 { font-size: 22px; }
h4 { font-size: 18px; }
h5 { font-size: 16px; }
h6 { font-size: 14px; }

img {
	max-width: 100%;
	height: auto;
}

embed,
iframe,
object,
video {
	max-width: 100%;
}

/* Formulaires */
input {
	-webkit-appearance: none;
	appearance: none;
}

input[type="checkbox"] {
	-webkit-appearance: checkbox;
	appearance: auto;
}

input[type="radio"] {
	-webkit-appearance: radio;
	appearance: auto;
}

input.text,
input.title,
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="text"],
select,
textarea {
	background-color: #fff;
	border: 1px solid #bbb;
	padding: 2px;
	color: #4e4e4e;
	margin: 0;
}

textarea {
	padding: 4px;
}

input.text:focus,
input.title:focus,
input[type="text"]:focus,
select:focus,
textarea:focus {
	border-color: #2d3940;
	color: #3e3e3e;
}

button,
input,
select,
textarea {
	font-family: inherit;
}

button::-moz-focus-inner {
	padding: 0;
	border: 0;
}

/* Contenu éditorial (listes, tableaux) */
.entry-content ul {
	list-style-type: disc;
	padding: 0 0 23px 1em;
	line-height: 26px;
}

.entry-content ol {
	list-style-type: decimal;
	list-style-position: inside;
	padding: 0 0 23px;
	line-height: 26px;
}

.entry-content ul li ul,
.entry-content ul li ol {
	padding: 2px 0 2px 20px;
}

.entry-content ol li ul,
.entry-content ol li ol {
	padding: 2px 0 2px 35px;
}

.entry-content table:not(.variations) {
	border: 1px solid #eee;
	margin: 0 0 15px;
	text-align: left;
	width: 100%;
}

.entry-content thead th,
.entry-content tr th {
	color: #555;
	font-weight: 700;
	padding: 9px 24px;
}

.entry-content tr td {
	border-top: 1px solid #eee;
	padding: 6px 24px;
}

/* Classes d'alignement WordPress */
.alignleft {
	display: inline;
	float: left;
	margin: 0 30px 20px 0;
}

.alignright {
	display: inline;
	float: right;
	margin: 0 0 20px 30px;
}

.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption {
	border: 1px solid #ddd;
	text-align: center;
	background-color: #f3f3f3;
	margin-bottom: 10px;
	max-width: 96%;
	padding: 8px;
}

.wp-caption img {
	margin: 0;
	padding: 0;
	border: 0;
}

.clear {
	clear: both;
}

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.container {
	width: 80%;
	max-width: 1080px;
	margin: auto;
}
