/*
Theme Name: Twenty Sixteen
Theme URI: https://wordpress.org/themes/twentysixteen/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: Twenty Sixteen is a modernized take on an ever-popular WordPress layout — the horizontal masthead with an optional right sidebar that works perfectly for blogs and websites. It has custom color options with beautiful default color schemes, a harmonious fluid grid using a mobile-first approach, and impeccable polish in every detail. Twenty Sixteen will make your WordPress look beautiful everywhere.
Version: 1.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: one-column, two-columns, right-sidebar, accessibility-ready, custom-background, custom-colors, custom-header, custom-menu, editor-style, featured-images, flexible-header, microformats, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready, blog
Text Domain: twentysixteen

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/


/**
 * Table of Contents
 *
 * 1.0 - Normalize
 * 2.0 - Genericons
 * 3.0 - Typography
 * 4.0 - Elements
 * 5.0 - Forms
 * 6.0 - Navigation
 *   6.1 - Links
 *   6.2 - Menus
 * 7.0 - Accessibility
 * 8.0 - Alignments
 * 9.0 - Clearings
 * 10.0 - Widgets
 * 11.0 - Content
 *    11.1 - Header
 *    11.2 - Posts and pages
 *    11.3 - Post Formats
 *    11.4 - Comments
 *    11.5 - Sidebar
 *    11.6 - Footer
 * 12.0 - Media
 *    12.1 - Captions
 *    12.2 - Galleries
 * 13.0 - Multisite
 * 14.0 - Media Queries
 *    14.1 - >= 710px
 *    14.2 - >= 783px
 *    14.3 - >= 910px
 *    14.4 - >= 985px
 *    14.5 - >= 1200px
 * 15.0 - Print
 */


/**
 * 1.0 - Normalize
 *
 * Normalizing styles have been helped along thanks to the fine work of
 * Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
 */

html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: 700;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 0;
}

hr {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}

code,
kbd,
pre,
samp {
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

select {
	text-transform: none;
}

button {
	overflow: visible;
}

button,
input,
select,
textarea {
	max-width: 100%;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
	opacity: .5;
}

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

input[type="checkbox"],
input[type="radio"] {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-right: 0.4375em;
	padding: 0;
}

input[type="date"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-outer-spin-button,
input[type="time"]::-webkit-inner-spin-button,
input[type="time"]::-webkit-outer-spin-button,
input[type="datetime-local"]::-webkit-inner-spin-button,
input[type="datetime-local"]::-webkit-outer-spin-button,
input[type="week"]::-webkit-inner-spin-button,
input[type="week"]::-webkit-outer-spin-button,
input[type="month"]::-webkit-inner-spin-button,
input[type="month"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"] {
	-webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #d1d1d1;
	margin: 0 0 1.75em;
	min-width: inherit;
	padding: 0.875em;
}

fieldset > :last-child {
	margin-bottom: 0;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
	vertical-align: top;
}

optgroup {
	font-weight: bold;
}


/**
 * 2.0 - Genericons
 */

.menu-item-has-children a:after,
.social-navigation a:before,
.dropdown-toggle:after,
.bypostauthor > article .fn:after,
.comment-reply-title small a:before,
.pagination .prev:before,
.pagination .next:before,
.pagination .nav-links:before,
.pagination .nav-links:after,
.search-submit:before {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-family: "Genericons";
	font-size: 16px;
	font-style: normal;
	font-variant: normal;
	font-weight: normal;
	line-height: 1;
	speak: none;
	text-align: center;
	text-decoration: inherit;
	text-transform: none;
	vertical-align: top;
}


/**
 * 3.0 - Typography
 */

body,
button,
input,
select,
textarea {
	color: #1a1a1a;
	font-family: Merriweather, Georgia, serif;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.75;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	font-weight: 700;
	margin: 0;
	text-rendering: optimizeLegibility;
}

p {
	margin: 0 0 1.75em;
}

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

blockquote {
	border: 0 solid #1a1a1a;
	border-left-width: 4px;
	color: #686868;
	font-size: 19px;
	font-size: 1.1875rem;
	font-style: italic;
	line-height: 1.4736842105;
	margin: 0 0 1.4736842105em;
	overflow: hidden;
	padding: 0 0 0 1.263157895em;
}

blockquote,
q {
	quotes: none;
}

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

blockquote p {
	margin-bottom: 1.4736842105em;
}

blockquote cite,
blockquote small {
	color: #1a1a1a;
	display: block;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.75;
}

blockquote cite:before,
blockquote small:before {
	content: "\2014\00a0";
}

blockquote em,
blockquote i,
blockquote cite {
	font-style: normal;
}

blockquote strong,
blockquote b {
	font-weight: 400;
}

blockquote > :last-child {
	margin-bottom: 0;
}

address {
	font-style: italic;
	margin: 0 0 1.75em;
}

code,
kbd,
tt,
var,
samp,
pre {
	font-family: Inconsolata, monospace;
}

pre {
	border: 1px solid #d1d1d1;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.3125;
	margin: 0 0 1.75em;
	max-width: 100%;
	overflow: auto;
	padding: 1.75em;
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}

code {
	background-color: #d1d1d1;
	padding: 0.125em 0.25em;
}

abbr,
acronym {
	border-bottom: 1px dotted #d1d1d1;
	cursor: help;
}

mark,
ins {
	background: #007acc;
	color: #fff;
	padding: 0.125em 0.25em;
	text-decoration: none;
}

big {
	font-size: 125%;
}


/**
 * 4.0 - Elements
 */

html {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

*,
*:before,
*:after {
	/* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	-webkit-box-sizing: inherit;
	-moz-box-sizing: inherit;
	box-sizing: inherit;
}

body {
	background: #1a1a1a;
	/* Fallback for when there is no custom background color defined. */
}

hr {
	background-color: #d1d1d1;
	border: 0;
	height: 1px;
	margin: 0 0 1.75em;
}

ul,
ol {
	margin: 0 0 1.75em 1.25em;
	padding: 0;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
	margin-left: 1.5em;
}

li > ul,
li > ol {
	margin-bottom: 0;
}

dl {
	margin: 0 0 1.75em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 0 1.75em;
}

img {
	height: auto;
	/* Make sure images are scaled correctly. */
	max-width: 100%;
	/* Adhere to container width. */
	vertical-align: middle;
}

del {
	opacity: 0.8;
}

table,
th,
td {
	border: 1px solid #d1d1d1;
}

table {
	border-collapse: separate;
	border-spacing: 0;
	border-width: 1px 0 0 1px;
	margin: 0 0 1.75em;
	table-layout: fixed;
	/* Prevents HTML tables from becoming too wide */
	width: 100%;
}

caption,
th,
td {
	font-weight: normal;
	text-align: left;
}

th {
	border-width: 0 1px 1px 0;
	font-weight: 700;
}

td {
	border-width: 0 1px 1px 0;
}

th,
td {
	padding: 0.4375em;
}

/* Placeholder text color -- selectors need to be separate to work. */
::-webkit-input-placeholder {
	color: #686868;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
}

:-moz-placeholder {
	color: #686868;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
}

::-moz-placeholder {
	color: #686868;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	opacity: 1;
	/* Since FF19 lowers the opacity of the placeholder by default */
}

:-ms-input-placeholder {
	color: #686868;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
}


/**
 * 5.0 - Forms
 */

input {
	line-height: normal;
}

button,
button[disabled]:hover,
button[disabled]:focus,
input[type="button"],
input[type="button"][disabled]:hover,
input[type="button"][disabled]:focus,
input[type="reset"],
input[type="reset"][disabled]:hover,
input[type="reset"][disabled]:focus,
input[type="submit"],
input[type="submit"][disabled]:hover,
input[type="submit"][disabled]:focus {
	background: #1a1a1a;
	border: 0;
	border-radius: 2px;
	color: #fff;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-weight: 700;
	letter-spacing: 0.046875em;
	line-height: 1;
	padding: 0.84375em 0.875em 0.78125em;
	text-transform: uppercase;
}

button:hover,
button:focus,
input[type="button"]:hover,
input[type="button"]:focus,
input[type="reset"]:hover,
input[type="reset"]:focus,
input[type="submit"]:hover,
input[type="submit"]:focus {
	background: #007acc;
}

button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus {
	outline: thin dotted;
	outline-offset: -4px;
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="week"],
input[type="month"],
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="number"],
textarea {
	background: #f7f7f7;
	background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0));
	border: 1px solid #d1d1d1;
	border-radius: 2px;
	color: #686868;
	padding: 0.625em 0.4375em;
	width: 100%;
}

input[type="date"]:focus,
input[type="time"]:focus,
input[type="datetime-local"]:focus,
input[type="week"]:focus,
input[type="month"]:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
textarea:focus {
	background-color: #fff;
	border-color: #007acc;
	color: #1a1a1a;
	outline: 0;
}

.post-password-form {
	margin-bottom: 1.75em;
}

.post-password-form label {
	color: #686868;
	display: block;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 13px;
	font-size: 0.8125rem;
	letter-spacing: 0.076923077em;
	line-height: 1.6153846154;
	margin-bottom: 1.75em;
	text-transform: uppercase;
}

.post-password-form input[type="password"] {
	margin-top: 0.4375em;
}

.post-password-form > :last-child {
	margin-bottom: 0;
}

.search-form {
	position: relative;
}

input[type="search"].search-field {
	border-radius: 2px 0 0 2px;
	width: -webkit-calc(100% - 42px);
	width: calc(100% - 42px);
}

.search-submit:before {
	content: "\f400";
	font-size: 24px;
	left: 2px;
	line-height: 42px;
	position: relative;
	width: 40px;
}

.search-submit {
	border-radius: 0 2px 2px 0;
	bottom: 0;
	overflow: hidden;
	padding: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 42px;
}


/**
 * 6.0 - Navigation
 */

/**
 * 6.1 - Links
 */

a {
	color: #007acc;
	text-decoration: none;
}

a:hover,
a:focus,
a:active {
	color: #686868;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

.entry-content a,
.entry-summary a,
.taxonomy-description a,
.logged-in-as a,
.comment-content a,
.pingback .comment-body > a,
.textwidget a,
.entry-footer a:hover,
.site-info a:hover {
	box-shadow: 0 1px 0 0 currentColor;
}

.entry-content a:hover,
.entry-content a:focus,
.entry-summary a:hover,
.entry-summary a:focus,
.taxonomy-description a:hover,
.taxonomy-description a:focus,
.logged-in-as a:hover,
.logged-in-as a:focus,
.comment-content a:hover,
.comment-content a:focus,
.pingback .comment-body > a:hover,
.pingback .comment-body > a:focus,
.textwidget a:hover,
.textwidget a:focus {
	box-shadow: none;
}


/**
 * 6.2 - Menus
 */

.site-header-menu {
	display: none;
	-webkit-flex: 0 1 100%;
	-ms-flex: 0 1 100%;
	flex: 0 1 100%;
	margin: 0.875em 0;
}

.site-header-menu.toggled-on,
.no-js .site-header-menu {
	display: block;
}

.main-navigation {
	font-family: Montserrat, "Helvetica Neue", sans-serif;
}

.site-footer .main-navigation {
	margin-bottom: 1.75em;
}

.main-navigation ul {
	list-style: none;
	margin: 0;
}

.main-navigation li {
	border-top: 1px solid #d1d1d1;
	position: relative;
}

.main-navigation a {
	color: #1a1a1a;
	display: block;
	line-height: 1.3125;
	outline-offset: -1px;
	padding: 0.84375em 0;
}

.main-navigation a:hover,
.main-navigation a:focus {
	color: #007acc;
}

.main-navigation .current-menu-item > a,
.main-navigation .current-menu-ancestor > a {
	font-weight: 700;
}

.main-navigation ul ul {
	display: none;
	margin-left: 0.875em;
}

.no-js .main-navigation ul ul {
	display: block;
}

.main-navigation ul .toggled-on {
	display: block;
}

.main-navigation .primary-menu {
	border-bottom: 1px solid #d1d1d1;
}

.main-navigation .menu-item-has-children > a {
	margin-right: 56px;
}

.dropdown-toggle {
	background-color: transparent;
	border: 0;
	border-radius: 0;
	color: #1a1a1a;
	content: "";
	height: 48px;
	padding: 0;
	position: absolute;
	right: 0;
	text-transform: none;
	top: 0;
	width: 48px;
}

.dropdown-toggle:after {
	border: 0 solid #d1d1d1;
	border-left-width: 1px;
	content: "\f431";
	font-size: 24px;
	left: 1px;
	position: relative;
	width: 48px;
}

.dropdown-toggle:hover,
.dropdown-toggle:focus {
	background-color: transparent;
	color: #007acc;
}

.dropdown-toggle:focus {
	outline: thin dotted;
	outline-offset: -1px;
}

.dropdown-toggle:focus:after {
	border-color: transparent;
}

.dropdown-toggle.toggled-on:after {
	content: "\f432";
}

.site-header .main-navigation + .social-navigation {
	margin-top: 1.75em;
}

.site-footer .social-navigation {
	margin-bottom: 1.75em;
}

.social-navigation ul {
	list-style: none;
	margin: 0 0 -0.4375em;
}

.social-navigation li {
	float: left;
	margin: 0 0.4375em 0.4375em 0;
}

.social-navigation a {
	border: 1px solid #d1d1d1;
	border-radius: 50%;
	color: #1a1a1a;
	display: block;
	height: 35px;
	position: relative;
	width: 35px;
}

.social-navigation a:before {
	content: "\f415";
	height: 33px;
	line-height: 33px;
	text-align: center;
	width: 33px;
}

.social-navigation a:hover:before,
.social-navigation a:focus:before {
	color: #007acc;
}

.social-navigation a[href*="codepen.io"]:before {
	content: "\f216";
}

.social-navigation a[href*="digg.com"]:before {
	content: "\f221";
}

.social-navigation a[href*="dribbble.com"]:before {
	content: "\f201";
}

.social-navigation a[href*="dropbox.com"]:before {
	content: "\f225";
}

.social-navigation a[href*="facebook.com"]:before {
	content: "\f203";
}

.social-navigation a[href*="flickr.com"]:before {
	content: "\f211";
}

.social-navigation a[href*="foursquare.com"]:before {
	content: "\f226";
}

.social-navigation a[href*="plus.google.com"]:before {
	content: "\f206";
}

.social-navigation a[href*="github.com"]:before {
	content: "\f200";
}

.social-navigation a[href*="instagram.com"]:before {
	content: "\f215";
}

.social-navigation a[href*="linkedin.com"]:before {
	content: "\f208";
}

.social-navigation a[href*="path.com"]:before {
	content: "\f219";
}

.social-navigation a[href*="pinterest.com"]:before {
	content: "\f210";
}

.social-navigation a[href*="getpocket.com"]:before {
	content: "\f224";
}

.social-navigation a[href*="polldaddy.com"]:before {
	content: "\f217";
}

.social-navigation a[href*="reddit.com"]:before {
	content: "\f222";
}

.social-navigation a[href*="skype.com"]:before {
	content: "\f220";
}

.social-navigation a[href*="stumbleupon.com"]:before {
	content: "\f223";
}

.social-navigation a[href*="tumblr.com"]:before {
	content: "\f214";
}

.social-navigation a[href*="twitter.com"]:before {
	content: "\f202";
}

.social-navigation a[href*="vimeo.com"]:before {
	content: "\f212";
}

.social-navigation a[href*="wordpress.com"]:before,
.social-navigation a[href*="wordpress.org"]:before {
	content: "\f205";
}

.social-navigation a[href*="youtube.com"]:before {
	content: "\f213";
}

.social-navigation a[href^="mailto:"]:before {
	content: "\f410";
}

.social-navigation a[href*="spotify.com"]:before {
	content: "\f515";
}

.social-navigation a[href*="twitch.tv"]:before {
	content: "\f516";
}

.social-navigation a[href$="/feed/"]:before {
	content: "\f413";
}

.post-navigation {
	border-top: 4px solid #1a1a1a;
	border-bottom: 4px solid #1a1a1a;
	clear: both;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	margin: 0 7.6923% 3.5em;
}

.post-navigation a {
	color: #1a1a1a;
	display: block;
	padding: 1.75em 0;
}

.post-navigation span {
	display: block;
}

.post-navigation .meta-nav {
	color: #686868;
	font-size: 13px;
	font-size: 0.8125rem;
	letter-spacing: 0.076923077em;
	line-height: 1.6153846154;
	margin-bottom: 0.5384615385em;
	text-transform: uppercase;
}

.post-navigation .post-title {
	display: inline;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 23px;
	font-size: 1.4375rem;
	font-weight: 700;
	line-height: 1.2173913043;
	text-rendering: optimizeLegibility;
}

.post-navigation a:hover .post-title,
.post-navigation a:focus .post-title {
	color: #007acc;
}

.post-navigation div + div {
	border-top: 4px solid #1a1a1a;
}

.pagination {
	border-top: 4px solid #1a1a1a;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 19px;
	font-size: 1.1875rem;
	margin: 0 7.6923% 2.947368421em;
	min-height: 56px;
	position: relative;
}

.pagination:before,
.pagination:after {
	background-color: #1a1a1a;
	content: "";
	height: 52px;
	position: absolute;
	top:0;
	width: 52px;
	z-index: 0;
}

.pagination:before {
	right: 0;
}

.pagination:after {
	right: 54px;
}

.pagination a:hover,
.pagination a:focus {
	color: #1a1a1a;
}

.pagination .nav-links {
	padding-right: 106px;
	position: relative;
}

.pagination .nav-links:before,
.pagination .nav-links:after {
	color: #fff;
	font-size: 32px;
	line-height: 51px;
	opacity: 0.3;
	position: absolute;
	width: 52px;
	z-index: 1;
}

.pagination .nav-links:before {
	content: "\f429";
	right: -1px;
}

.pagination .nav-links:after {
	content: "\f430";
	right: 55px;
}

/* reset screen-reader-text */
.pagination .current .screen-reader-text {
	position: static !important;
}

.pagination .page-numbers {
	display: none;
	letter-spacing: 0.013157895em;
	line-height: 1;
	margin: 0 0.7368421053em 0 -0.7368421053em;
	padding: 0.8157894737em 0.7368421053em 0.3947368421em;
	text-transform: uppercase;
}

.pagination .current {
	display: inline-block;
	font-weight: 700;
}

.pagination .prev,
.pagination .next {
	background-color: #1a1a1a;
	color: #fff;
	display: inline-block;
	height: 52px;
	margin: 0;
	overflow: hidden;
	padding: 0;
	position: absolute;
	top: 0;
	width: 52px;
	z-index: 2;
}

.pagination .prev:before,
.pagination .next:before {
	font-size: 32px;
	height: 53px;
	line-height: 52px;
	position: relative;
	width: 53px;
}

.pagination .prev:hover,
.pagination .prev:focus,
.pagination .next:hover,
.pagination .next:focus {
	background-color: #007acc;
	color: #fff;
}

.pagination .prev:focus,
.pagination .next:focus {
	outline: 0;
}

.pagination .prev {
	right: 54px;
}

.pagination .prev:before {
	content: "\f430";
	left: -1px;
	top: -1px;
}

.pagination .next {
	right: 0;
}

.pagination .next:before {
	content: "\f429";
	right: -1px;
	top: -1px;
}

.image-navigation,
.comment-navigation {
	border-top: 1px solid #d1d1d1;
	border-bottom: 1px solid #d1d1d1;
	color: #686868;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 13px;
	font-size: 0.8125rem;
	line-height: 1.6153846154;
	margin: 0 7.6923% 2.1538461538em;
	padding: 1.0769230769em 0;
}

.comment-navigation {
	margin-right: 0;
	margin-left: 0;
}

.comments-title + .comment-navigation {
	border-bottom: 0;
	margin-bottom: 0;
}

.image-navigation .nav-previous:not(:empty),
.image-navigation .nav-next:not(:empty),
.comment-navigation .nav-previous:not(:empty),
.comment-navigation .nav-next:not(:empty) {
	display: inline-block;
}

.image-navigation .nav-previous:not(:empty) + .nav-next:not(:empty):before,
.comment-navigation .nav-previous:not(:empty) + .nav-next:not(:empty):before {
	content: "\002f";
	display: inline-block;
	opacity: 0.7;
	padding: 0 0.538461538em;
}


/**
 * 7.0 - Accessibility
 */

/* Text meant only for screen readers */
.says,
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
	/* many screen reader and browser combinations announce broken words as they would appear visually */
	word-wrap: normal !important;
}

/* must have higher specificity than alternative color schemes inline styles */
.site .skip-link {
	background-color: #f1f1f1;
	box-shadow: 0 0 1px 1px rgba(0, 0, 0, 0.2);
	color: #21759b;
	display: block;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 14px;
	font-weight: 700;
	left: -9999em;
	outline: none;
	padding: 15px 23px 14px;
	text-decoration: none;
	text-transform: none;
	top: -9999em;
}

.logged-in .site .skip-link {
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.2);
	font-family: "Open Sans", sans-serif;
}

.site .skip-link:focus {
	clip: auto;
	height: auto;
	left: 6px;
	top: 7px;
	width: auto;
	z-index: 100000;
}


/**
 * 8.0 - Alignments
 */

.alignleft {
	float: left;
	margin: 0.375em 1.75em 1.75em 0;
}

.alignright {
	float: right;
	margin: 0.375em 0 1.75em 1.75em;
}

.aligncenter {
	clear: both;
	display: block;
	margin: 0 auto 1.75em;
}

blockquote.alignleft {
	margin: 0.3157894737em 1.4736842105em 1.473684211em 0;
}

blockquote.alignright {
	margin: 0.3157894737em 0 1.473684211em 1.4736842105em;
}

blockquote.aligncenter {
	margin-bottom: 1.473684211em;
}


/**
 * 9.0 - Clearings
 */

.clear:before,
.clear:after,
blockquote:before,
blockquote:after,
.entry-content:before,
.entry-content:after,
.entry-summary:before,
.entry-summary:after,
.comment-content:before,
.comment-content:after,
.site-content:before,
.site-content:after,
.site-main > article:before,
.site-main > article:after,
.primary-menu:before,
.primary-menu:after,
.social-links-menu:before,
.social-links-menu:after,
.textwidget:before,
.textwidget:after,
.content-bottom-widgets:before,
.content-bottom-widgets:after {
	content: "";
	display: table;
}

.clear:after,
blockquote:after,
.entry-content:after,
.entry-summary:after,
.comment-content:after,
.site-content:after,
.site-main > article:after,
.primary-menu:after,
.social-links-menu:after,
.textwidget:after,
.content-bottom-widgets:after {
	clear: both;
}


/**
 * 10.0 - Widgets
 */

.widget {
	border-top: 4px solid #1a1a1a;
	margin-bottom: 3.5em;
	padding-top: 1.75em;
}

.widget-area > :last-child,
.widget > :last-child {
	margin-bottom: 0;
}

.widget .widget-title {
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	letter-spacing: 0.046875em;
	line-height: 1.3125;
	margin: 0 0 1.75em;
	text-transform: uppercase;
}

.widget .widget-title:empty {
	margin-bottom: 0;
}

.widget-title a {
	color: #1a1a1a;
}

/* Calendar widget */
.widget.widget_calendar table {
	margin: 0;
}

.widget_calendar td,
.widget_calendar th {
	line-height: 2.5625;
	padding: 0;
	text-align: center;
}

.widget_calendar caption {
	font-weight: 900;
	margin-bottom: 1.75em;
}

.widget_calendar tbody a {
	background-color: #007acc;
	color: #fff;
	display: block;
	font-weight: 700;
}

.widget_calendar tbody a:hover,
.widget_calendar tbody a:focus {
	background-color: #686868;
	color: #fff;
}

/* Recent Posts widget */
.widget_recent_entries .post-date {
	color: #686868;
	display: block;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 13px;
	font-size: 0.8125rem;
	line-height: 1.615384615;
	margin-bottom: 0.538461538em;
}

.widget_recent_entries li:last-child .post-date {
	margin-bottom: 0;
}

/* RSS widget */
.widget_rss .rsswidget img {
	margin-top: -0.375em;
}

.widget_rss .rss-date,
.widget_rss cite {
	color: #686868;
	display: block;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 13px;
	font-size: 0.8125rem;
	font-style: normal;
	line-height: 1.615384615;
	margin-bottom: 0.538461538em;
}

.widget_rss .rssSummary:last-child {
	margin-bottom: 2.1538461538em;
}

.widget_rss li:last-child :last-child {
	margin-bottom: 0;
}

/* Tag Cloud widget */
.tagcloud a {
	border: 1px solid #d1d1d1;
	border-radius: 2px;
	display: inline-block;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	line-height: 1;
	margin: 0 0.1875em 0.4375em 0;
	padding: 0.5625em 0.4375em 0.5em;
}

.tagcloud a:hover,
.tagcloud a:focus {
	border-color: #007acc;
	color: #007acc;
	outline: 0;
}


/**
 * 11.0 - Content
 */

.site {
	background-color: #fff;
}

.site-inner {
	margin: 0 auto;
	max-width: 1320px;
	position: relative;
}

.site-content {
	word-wrap: break-word;
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

.site-main {
	margin-bottom: 3.5em;
    width: 100%; /* ici */
}

.site-main > :last-child {
	margin-bottom: 0;
}


/**
 * 11.1 - Header
 */

.site-header {
	padding: 2.625em 7.6923%;
}

.site-header-main {
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.site-branding {
	margin: 0.875em auto 0.875em 0;
	/* Avoid overflowing wide custom logo in small screens in Firefox and IEs */
	max-width: 100%;
	min-width: 0;
	overflow: hidden;
}

.custom-logo-link {
	display: block;
}

.custom-logo {
	max-width: 180px;
}

.site-title {
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 23px;
	font-size: 1.4375rem;
	font-weight: 700;
	line-height: 1.2173913043;
	margin: 0;
}

.site-branding .site-title a {
	color: #1a1a1a;
}

.site-branding .site-title a:hover,
.site-branding .site-title a:focus {
	color: #007acc;
}

.wp-custom-logo .site-title {
	margin-top: 0.608695652em;
}

.site-description {
	color: #686868;
	display: none;
	font-size: 13px;
	font-size: 0.8125rem;
	font-weight: 400;
	line-height: 1.0769230769;
	margin: 0.538461538em 0 0;
}

.menu-toggle {
	background-color: transparent;
	border: 1px solid #d1d1d1;
	color: #1a1a1a;
	font-size: 13px;
	font-size: 0.8125rem;
	margin: 1.076923077em 0;
	padding: 0.769230769em;
}

.no-js .menu-toggle {
	display: none;
}

.menu-toggle:hover,
.menu-toggle:focus {
	background-color: transparent;
	border-color: #007acc;
	color: #007acc;
}

.menu-toggle.toggled-on,
.menu-toggle.toggled-on:hover,
.menu-toggle.toggled-on:focus {
	background-color: #1a1a1a;
	border-color: #1a1a1a;
	color: #fff;
}

.menu-toggle:focus {
	outline: 0;
}

.menu-toggle.toggled-on:focus {
	outline: thin dotted;
}

.header-image {
	clear: both;
	margin: 0.875em 0;
}

.header-image a {
	display: block;
}

.header-image a:hover img,
.header-image a:focus img {
	opacity: 0.85;
}

/**
 * 11.2 - Posts and pages
 */

.site-main > article {
	margin-bottom: 3.5em;
	position: relative;
}

.entry-header,
.entry-summary,
.entry-content,
.entry-footer,
.page-content {
	margin-right: 7.6923%;
	margin-left: 7.6923%;
}

.entry-title {
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 28px;
	font-size: 1.75rem;
	font-weight: 700;
	line-height: 1.25;
	margin-bottom: 1em;
}

.entry-title a {
	color: #1a1a1a;
}

.entry-title a:hover,
.entry-title a:focus {
	color: #007acc;
}

.post-thumbnail {
	display: block;
	margin: 0 7.6923% 1.75em;
}

.post-thumbnail img {
	display: block;
}

.no-sidebar .post-thumbnail img {
	margin: 0 auto;
}

a.post-thumbnail:hover,
a.post-thumbnail:focus {
	opacity: 0.85;
}

.entry-content,
.entry-summary {
	border-color: #d1d1d1;
}

.entry-content h1,
.entry-summary h1,
.comment-content h1,
.textwidget h1 {
	font-size: 28px;
	font-size: 1.75rem;
	line-height: 1.25;
	margin-top: 2em;
	margin-bottom: 1em;
}

.entry-content h2,
.entry-summary h2,
.comment-content h2,
.textwidget h2 {
	font-size: 23px;
	font-size: 1.4375rem;
	line-height: 1.2173913043;
	margin-top: 2.4347826087em;
	margin-bottom: 1.2173913043em;
}

.entry-content h3,
.entry-summary h3,
.comment-content h3,
.textwidget h3 {
	font-size: 19px;
	font-size: 1.1875rem;
	line-height: 1.1052631579;
	margin-top: 2.9473684211em;
	margin-bottom: 1.4736842105em;
}

.entry-content h4,
.entry-content h5,
.entry-content h6,
.entry-summary h4,
.entry-summary h5,
.entry-summary h6,
.comment-content h4,
.comment-content h5,
.comment-content h6,
.textwidget h4,
.textwidget h5,
.textwidget h6 {
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.3125;
	margin-top: 3.5em;
	margin-bottom: 1.75em;
}

.entry-content h4,
.entry-summary h4,
.comment-content h4,
.textwidget h4 {
	letter-spacing: 0.140625em;
	text-transform: uppercase;
}

.entry-content h6,
.entry-summary h6,
.comment-content h6,
.textwidget h6 {
	font-style: italic;
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6,
.entry-summary h1,
.entry-summary h2,
.entry-summary h3,
.entry-summary h4,
.entry-summary h5,
.entry-summary h6,
.comment-content h1,
.comment-content h2,
.comment-content h3,
.comment-content h4,
.comment-content h5,
.comment-content h6,
.textwidget h1,
.textwidget h2,
.textwidget h3,
.textwidget h4,
.textwidget h5,
.textwidget h6 {
	font-weight: 900;
}

.entry-content h1:first-child,
.entry-content h2:first-child,
.entry-content h3:first-child,
.entry-content h4:first-child,
.entry-content h5:first-child,
.entry-content h6:first-child,
.entry-summary h1:first-child,
.entry-summary h2:first-child,
.entry-summary h3:first-child,
.entry-summary h4:first-child,
.entry-summary h5:first-child,
.entry-summary h6:first-child,
.comment-content h1:first-child,
.comment-content h2:first-child,
.comment-content h3:first-child,
.comment-content h4:first-child,
.comment-content h5:first-child,
.comment-content h6:first-child,
.textwidget h1:first-child,
.textwidget h2:first-child,
.textwidget h3:first-child,
.textwidget h4:first-child,
.textwidget h5:first-child,
.textwidget h6:first-child {
	margin-top: 0;
}

.post-navigation .post-title,
.entry-title,
.comments-title {
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}

body:not(.search-results) .entry-summary {
	color: #686868;
	font-size: 19px;
	font-size: 1.1875rem;
	line-height: 1.4736842105;
	margin-bottom: 1.4736842105em;
}

body:not(.search-results) .entry-header + .entry-summary {
	margin-top: -0.736842105em;
}

body:not(.search-results) .entry-summary p,
body:not(.search-results) .entry-summary address,
body:not(.search-results) .entry-summary hr,
body:not(.search-results) .entry-summary ul,
body:not(.search-results) .entry-summary ol,
body:not(.search-results) .entry-summary dl,
body:not(.search-results) .entry-summary dd,
body:not(.search-results) .entry-summary table {
	margin-bottom: 1.4736842105em;
}

body:not(.search-results) .entry-summary li > ul,
body:not(.search-results) .entry-summary li > ol {
	margin-bottom: 0;
}

body:not(.search-results) .entry-summary th,
body:not(.search-results) .entry-summary td {
	padding: 0.3684210526em;
}

body:not(.search-results) .entry-summary fieldset {
	margin-bottom: 1.4736842105em;
	padding: 0.3684210526em;
}

body:not(.search-results) .entry-summary blockquote {
	border-color: currentColor;
}

body:not(.search-results) .entry-summary blockquote > :last-child {
	margin-bottom: 0;
}

body:not(.search-results) .entry-summary .alignleft {
	margin: 0.2631578947em 1.4736842105em 1.4736842105em 0;
}

body:not(.search-results) .entry-summary .alignright {
	margin: 0.2631578947em 0 1.4736842105em 1.4736842105em;
}

body:not(.search-results) .entry-summary .aligncenter {
	margin-bottom: 1.4736842105em;
}

.entry-content > :last-child,
.entry-summary > :last-child,
body:not(.search-results) .entry-summary > :last-child,
.page-content > :last-child,
.comment-content > :last-child,
.textwidget > :last-child {
	margin-bottom: 0;
}

.more-link {
	white-space: nowrap;
}

.author-info {
	border-color: inherit;
	border-style: solid;
	border-width: 1px 0 1px 0;
	clear: both;
	padding-top: 1.75em;
	padding-bottom: 1.75em;
}

.author-avatar .avatar {
	float: left;
	height: 42px;
	margin: 0 1.75em 1.75em 0;
	width: 42px;
}

.author-description > :last-child {
	margin-bottom: 0;
}

.entry-content .author-title {
	clear: none;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 900;
	line-height: 1.75;
	margin: 0;
}

.author-bio {
	color: #686868;
	font-size: 13px;
	font-size: 0.8125rem;
	line-height: 1.6153846154;
	margin-bottom: 1.6153846154em;
	overflow: hidden;
}

.author-link {
	white-space: nowrap;
}

.entry-footer {
	color: #686868;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 13px;
	font-size: 0.8125rem;
	line-height: 1.6153846154;
	margin-top: 2.1538461538em;
}

.entry-footer:empty {
	margin: 0;
}

.entry-footer a {
	color: #686868;
}

.entry-footer a:hover,
.entry-footer a:focus {
	color: #007acc;
}

.entry-footer > span:not(:last-child):after {
	content: "\002f";
	display: inline-block;
	opacity: 0.7;
	padding: 0 0.538461538em;
}

.entry-footer .avatar {
	height: 21px;
	margin: -0.1538461538em 0.5384615385em 0 0;
	width: 21px;
}

.sticky-post {
	color: #686868;
	display: block;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 13px;
	font-size: 0.8125rem;
	letter-spacing: 0.076923077em;
	line-height: 1.6153846154;
	margin-bottom: 0.5384615385em;
	text-transform: uppercase;
}

/**
 * IE8 and earlier will drop any block with CSS3 selectors.
 * Do not combine these styles with the next block.
 */
.updated:not(.published) {
	display: none;
}

.sticky .posted-on,
.byline {
	display: none;
}

.single .byline,
.group-blog .byline {
	display: inline;
}

.page-header {
	border-top: 4px solid #1a1a1a;
	margin: 0 7.6923% 3.5em;
	padding-top: 1.75em;
}

body.error404 .page-header,
body.search-no-results .page-header {
	border-top: 0;
	padding-top: 0;
}

.page-title {
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 23px;
	font-size: 1.4375rem;
	line-height: 1.2173913043;
}

.taxonomy-description {
	color: #686868;
	font-size: 13px;
	font-size: 0.8125rem;
	line-height: 1.6153846154;
}

.taxonomy-description p {
	margin: 0.5384615385em 0 1.6153846154em;
}

.taxonomy-description > :last-child {
	margin-bottom: 0;
}

.page-links {
	clear: both;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	margin: 0 0 1.75em;
}

.page-links a,
.page-links > span {
	border: 1px solid #d1d1d1;
	border-radius: 2px;
	display: inline-block;
	font-size: 13px;
	font-size: 0.8125rem;
	height: 1.8461538462em;
	line-height: 1.6923076923em;
	margin-right: 0.3076923077em;
	text-align: center;
	width: 1.8461538462em;
}

.page-links a {
	background-color: #1a1a1a;
	border-color: #1a1a1a;
	color: #fff;
}

.page-links a:hover,
.page-links a:focus {
	background-color: #007acc;
	border-color: transparent;
	color: #fff;
}

.page-links > .page-links-title {
	border: 0;
	color: #1a1a1a;
	height: auto;
	margin: 0;
	padding-right: 0.6153846154em;
	width: auto;
}

.entry-attachment {
	margin-bottom: 1.75em;
}

.entry-caption {
	color: #686868;
	font-size: 13px;
	font-size: 0.8125rem;
	font-style: italic;
	line-height: 1.6153846154;
	padding-top: 1.0769230769em;
}

.entry-caption > :last-child {
	margin-bottom: 0;
}

.content-bottom-widgets {
	margin: 0 7.6923%;
}

.content-bottom-widgets .widget-area {
	margin-bottom: 3.5em;
}


/**
 * 11.3 - Post Formats
 */

.format-aside .entry-title,
.format-image .entry-title,
.format-video .entry-title,
.format-quote .entry-title,
.format-gallery .entry-title,
.format-status .entry-title,
.format-link .entry-title,
.format-audio .entry-title,
.format-chat .entry-title {
	font-size: 19px;
	font-size: 1.1875rem;
	line-height: 1.473684211;
	margin-bottom: 1.473684211em;
}

.blog .format-status .entry-title,
.archive .format-status .entry-title {
	display: none;
}


/**
 * 11.4 - Comments
 */

.comments-area {
	margin: 0 7.6923% 3.5em;
}

.comment-list + .comment-respond,
.comment-navigation + .comment-respond {
	padding-top: 1.75em;
}

.comments-title,
.comment-reply-title {
	border-top: 4px solid #1a1a1a;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 23px;
	font-size: 1.4375rem;
	font-weight: 700;
	line-height: 1.3125;
	padding-top: 1.217391304em;
}

.comments-title {
	margin-bottom: 1.217391304em;
}

.comment-list {
	list-style: none;
	margin: 0;
}

.comment-list article,
.comment-list .pingback,
.comment-list .trackback {
	border-top: 1px solid #d1d1d1;
	padding: 1.75em 0;
}

.comment-list .children {
	list-style: none;
	margin: 0;
}

.comment-list .children > li {
	padding-left: 0.875em;
}

.comment-author {
	color: #1a1a1a;
	margin-bottom: 0.4375em;
}

.comment-author .avatar {
	float: left;
	height: 28px;
	margin-right: 0.875em;
	position: relative;
	width: 28px;
}

.bypostauthor > article .fn:after {
	content: "\f304";
	left: 3px;
	position: relative;
	top: 5px;
}

.comment-metadata,
.pingback .edit-link {
	color: #686868;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 13px;
	font-size: 0.8125rem;
	line-height: 1.6153846154;
}

.comment-metadata {
	margin-bottom: 2.1538461538em;
}

.comment-metadata a,
.pingback .comment-edit-link {
	color: #686868;
}

.comment-metadata a:hover,
.comment-metadata a:focus,
.pingback .comment-edit-link:hover,
.pingback .comment-edit-link:focus {
	color: #007acc;
}

.comment-metadata .edit-link,
.pingback .edit-link {
	display: inline-block;
}

.comment-metadata .edit-link:before,
.pingback .edit-link:before {
	content: "\002f";
	display: inline-block;
	opacity: 0.7;
	padding: 0 0.538461538em;
}

.comment-content ul,
.comment-content ol {
	margin: 0 0 1.5em 1.25em;
}

.comment-content li > ul,
.comment-content li > ol {
	margin-bottom: 0;
}

.comment-reply-link {
	border: 1px solid #d1d1d1;
	border-radius: 2px;
	color: #007acc;
	display: inline-block;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 13px;
	font-size: 0.8125rem;
	line-height: 1;
	margin-top: 2.1538461538em;
	padding: 0.5384615385em 0.5384615385em 0.4615384615em;
}

.comment-reply-link:hover,
.comment-reply-link:focus {
	border-color: currentColor;
	color: #007acc;
	outline: 0;
}

.comment-form {
	padding-top: 1.75em;
}

.comment-form label {
	color: #686868;
	display: block;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 13px;
	font-size: 0.8125rem;
	letter-spacing: 0.076923077em;
	line-height: 1.6153846154;
	margin-bottom: 0.5384615385em;
	text-transform: uppercase;
}

.comment-list .comment-form {
	padding-bottom: 1.75em;
}

.comment-notes,
.comment-awaiting-moderation,
.logged-in-as,
.form-allowed-tags {
	color: #686868;
	font-size: 13px;
	font-size: 0.8125rem;
	line-height: 1.6153846154;
	margin-bottom: 2.1538461538em;
}

.no-comments {
	border-top: 1px solid #d1d1d1;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-weight: 700;
	margin: 0;
	padding-top: 1.75em;
}

.comment-navigation + .no-comments {
	border-top: 0;
	padding-top: 0;
}

.form-allowed-tags code {
	font-family: Inconsolata, monospace;
}

.form-submit {
	margin-bottom: 0;
}

.required {
	color: #007acc;
	font-family: Merriweather, Georgia, serif;
}

.comment-reply-title small {
	font-size: 100%;
}

.comment-reply-title small a {
	border: 0;
	float: right;
	height: 32px;
	overflow: hidden;
	width: 26px;
}

.comment-reply-title small a:hover,
.comment-reply-title small a:focus {
	color: #1a1a1a;
}

.comment-reply-title small a:before {
	content: "\f405";
	font-size: 32px;
	position: relative;
	top: -5px;
}


/**
 * 11.5 - Sidebar
 */

.sidebar {
	margin-bottom: 3.5em;
	padding: 0 7.6923%;
}


/**
 * 11.6 - Footer
 */

.site-footer {
	padding: 0 7.6923% 1.75em;
}

.site-info {
	color: #686868;
	font-size: 13px;
	font-size: 0.8125rem;
	line-height: 1.6153846154;
}

.site-info a {
	color: #686868;
}

.site-info a:hover,
.site-info a:focus {
	color: #007acc;
}

.site-footer .site-title {
	font-family: inherit;
	font-size: inherit;
	font-weight: 400;
}

.site-footer .site-title:after {
	content: "\002f";
	display: inline-block;
	font-family: Montserrat, sans-serif;
	opacity: 0.7;
	padding: 0 0.307692308em 0 0.538461538em;
}


/**
 * 12.0 - Media
 */

.site .avatar {
	border-radius: 50%;
}

.entry-content .wp-smiley,
.entry-summary .wp-smiley,
.comment-content .wp-smiley,
.textwidget .wp-smiley {
	border: none;
	margin-top: 0;
	margin-bottom: 0;
	padding: 0;
}

.entry-content a img,
.entry-summary a img,
.comment-content a img,
.textwidget a img {
	display: block;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object,
video {
	margin-bottom: 1.75em;
	max-width: 100%;
	vertical-align: middle;
}

p > embed,
p > iframe,
p > object,
p > video {
	margin-bottom: 0;
}

.entry-content .wp-audio-shortcode a,
.entry-content .wp-playlist a {
	box-shadow: none;
}

.wp-audio-shortcode,
.wp-video,
.wp-playlist.wp-audio-playlist {
	margin-top: 0;
	margin-bottom: 1.75em;
}

.wp-playlist.wp-audio-playlist {
	padding-bottom: 0;
}

.wp-playlist .wp-playlist-tracks {
	margin-top: 0;
}

.wp-playlist-item .wp-playlist-caption {
	border-bottom: 0;
	padding: 0.7142857143em 0;
}

.wp-playlist-item .wp-playlist-item-length {
	top: 0.7142857143em;
}


/**
 * 12.1 - Captions
 */

.wp-caption {
	margin-bottom: 1.75em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin: 0;
}

.wp-caption .wp-caption-text {
	color: #686868;
	font-size: 13px;
	font-size: 0.8125rem;
	font-style: italic;
	line-height: 1.6153846154;
	padding-top: 0.5384615385em;
}


/**
 * 12.2 - Galleries
 */

.gallery {
	margin: 0 -1.1666667% 1.75em;
}

.gallery-item {
	display: inline-block;
	max-width: 33.33%;
	padding: 0 1.1400652% 2.2801304%;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-1 .gallery-item {
	max-width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-icon img {
	margin: 0 auto;
}

.gallery-caption {
	color: #686868;
	display: block;
	font-size: 13px;
	font-size: 0.8125rem;
	font-style: italic;
	line-height: 1.6153846154;
	padding-top: 0.5384615385em;
}

.gallery-columns-6 .gallery-caption,
.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
	display: none;
}


/**
 * 13.0 - Multisites
 */

.widecolumn {
	margin-bottom: 3.5em;
	padding: 0 7.6923%;
}

.widecolumn .mu_register {
	width: auto;
}

.widecolumn .mu_register .mu_alert {
	background: transparent;
	border-color: #d1d1d1;
	color: inherit;
	margin-bottom: 3.5em;
	padding: 1.75em;
}

.widecolumn form,
.widecolumn .mu_register form {
	margin-top: 0;
}

.widecolumn h2 {
	font-size: 23px;
	font-size: 1.4375rem;
	font-weight: 900;
	line-height: 1.2173913043;
	margin-bottom: 1.2173913043em;
}

.widecolumn p {
	margin: 1.75em 0;
}

.widecolumn p + h2 {
	margin-top: 2.4347826087em;
}

.widecolumn label,
.widecolumn .mu_register label {
	color: #686868;
	font-family: Montserrat, "Helvetica Neue", sans-serif;
	font-size: 13px;
	font-size: 0.8125rem;
	font-weight: 400;
	letter-spacing: 0.076923077em;
	line-height: 1.6153846154;
	text-transform: uppercase;
}

.widecolumn .mu_register label {
	margin: 2.1538461538em 0.7692307692em 0.5384615385em 0;
}

.widecolumn .mu_register label strong {
	font-weight: 400;
}

.widecolumn #key,
.widecolumn .mu_register #blog_title,
.widecolumn .mu_register #user_email,
.widecolumn .mu_register #blogname,
.widecolumn .mu_register #user_name {
	font-size: 16px;
	font-size: 1rem;
	width: 100%;
}

.widecolumn .mu_register #blogname {
	margin: 0;
}

.widecolumn .mu_register #blog_title,
.widecolumn .mu_register #user_email,
.widecolumn .mu_register #user_name {
	margin: 0 0 0.375em;
}

.widecolumn #submit,
.widecolumn .mu_register input[type="submit"] {
	font-size: 16px;
	font-size: 1rem;
	margin: 0;
	width: auto;
}

.widecolumn .mu_register .prefix_address,
.widecolumn .mu_register .suffix_address {
	font-size: inherit;
}

.widecolumn .mu_register > :last-child,
.widecolumn form > :last-child {
	margin-bottom: 0;
}


/**
 * 14.0 - Media Queries
 */

/**
 * Does the same thing as <meta name="viewport" content="width=device-width">,
 * but in the future W3C standard way. -ms- prefix is required for IE10+ to
 * render responsive styling in Windows 8 "snapped" views; IE10+ does not honor
 * the meta tag. See https://core.trac.wordpress.org/ticket/25888.
 */
@-ms-viewport {
	width: device-width;
}

@viewport {
	width: device-width;
}


/**
 * 14.1 - >= 710px
 */

@media screen and (min-width: 44.375em) {
	body:not(.custom-background-image):before,
	body:not(.custom-background-image):after {
		background: inherit;
		content: "";
		display: block;
		height: 21px;
		left: 0;
		position: fixed;
		width: 100%;
		z-index: 99;
	}

	body:not(.custom-background-image):before {
		top: 0;
	}

	body:not(.custom-background-image).admin-bar:before {
		top: 46px;
	}

	body:not(.custom-background-image):after {
		bottom: 0;
	}

	.site {
		margin: 21px;
	}

	.site-main {
		margin-bottom: 5.25em;
	}

	.site-header {
		padding: 3.9375em 7.6923%;
	}

	.site-branding {
		margin-top: 1.3125em;
		margin-bottom: 1.3125em;
	}

	.custom-logo {
		max-width: 210px;
	}

	.site-title {
		font-size: 28px;
		font-size: 1.75rem;
		line-height: 1.25;
	}

	.wp-custom-logo .site-title {
		margin-top: 0.5em;
	}

	.site-description {
		display: block;
	}

	.menu-toggle {
		font-size: 16px;
		font-size: 1.0rem;
		margin: 1.3125em 0;
		padding: 0.8125em 0.875em 0.6875em;
	}

	.site-header-menu {
		margin: 1.3125em 0;
	}

	.site-header .main-navigation + .social-navigation {
		margin-top: 2.625em;
	}

	.header-image {
		margin: 1.3125em 0;
	}

	.pagination {
		margin: 0 23.0769% 4.421052632em 7.6923%
	}

	.post-navigation {
		margin-bottom: 5.25em;
	}

	.post-navigation .post-title {
		font-size: 28px;
		font-size: 1.75rem;
		line-height: 1.25;
	}

	/* restore screen-reader-text */
	.pagination .current .screen-reader-text {
		position: absolute !important;
	}

	.pagination .page-numbers {
		display: inline-block;
	}

	.site-main > article {
		margin-bottom: 5.25em;
	}

	.entry-header,
	.post-thumbnail,
	.entry-content,
	.entry-summary,
	.entry-footer,
	.comments-area,
	.image-navigation,
	.post-navigation,
	.page-header,
	.page-content,
	.content-bottom-widgets {
		margin-right: 23.0769%;
	}

	.entry-title {
		font-size: 33px;
		font-size: 2.0625rem;
		line-height: 1.2727272727;
		margin-bottom: 0.8484848485em;
	}

	.entry-content blockquote.alignleft,
	.entry-content blockquote.alignright {
		border-width: 4px 0 0 0;
		padding: 0.9473684211em 0 0;
		width: -webkit-calc(50% - 0.736842105em);
		width: calc(50% - 0.736842105em);
	}

	.entry-content blockquote:not(.alignleft):not(.alignright),
	.entry-summary blockquote,
	.comment-content blockquote {
		margin-left: -1.473684211em;
	}

	.entry-content blockquote blockquote:not(.alignleft):not(.alignright),
	.entry-summary blockquote blockquote,
	.comment-content blockquote blockquote {
		margin-left: 0;
	}

	.entry-content ul,
	.entry-summary ul,
	.comment-content ul,
	.entry-content ol,
	.entry-summary ol,
	.comment-content ol {
		margin-left: 0;
	}

	.entry-content li > ul,
	.entry-summary li > ul,
	.comment-content li > ul,
	.entry-content blockquote > ul,
	.entry-summary blockquote > ul,
	.comment-content blockquote > ul {
		margin-left: 1.25em;
	}

	.entry-content li > ol,
	.entry-summary li > ol,
	.comment-content li > ol,
	.entry-content blockquote > ol,
	.entry-summary blockquote > ol,
	.comment-content blockquote > ol {
		margin-left: 1.5em;
	}

	.comment-author {
		margin-bottom: 0;
	}

	.comment-author .avatar {
		height: 42px;
		position: relative;
		top: 0.25em;
		width: 42px;
	}

	.comment-list .children > li {
		padding-left: 1.75em;
	}

	.comment-list + .comment-respond,
	.comment-navigation + .comment-respond {
		padding-top: 3.5em;
	}

	.comments-area,
	.widget,
	.content-bottom-widgets .widget-area {
		margin-bottom: 5.25em;
	}

	.sidebar,
	.widecolumn {
		margin-bottom: 5.25em;
		padding-right: 23.0769%;
	}

	body:not(.search-results) .entry-summary li > ul,
	body:not(.search-results) .entry-summary blockquote > ul {
		margin-left: 1.157894737em;
	}

	body:not(.search-results) .entry-summary li > ol,
	body:not(.search-results) .entry-summary blockquote > ol {
		margin-left: 1.473684211em;
	}
}


/**
 * 14.2 - >= 783px
 */

@media screen and (min-width: 48.9375em) {
	body:not(.custom-background-image).admin-bar:before {
		top: 32px;
	}
}


/**
 * 14.3 - >= 910px
 */

@media screen and (min-width: 56.875em) {
	.site-header {
		padding-right: 4.5455%;
		padding-left: 4.5455%;
	}

	.site-header-main {
		-webkit-align-items: flex-start;
		-ms-flex-align: start;
		align-items: flex-start;
	}

	.wp-custom-logo .site-header-main {
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.site-header-menu {
		display: block;
		-webkit-flex: 0 1 auto;
		-ms-flex: 0 1 auto;
		flex: 0 1 auto;
	}

	.main-navigation {
		margin: 0 -0.875em;
	}

	.main-navigation .primary-menu,
	.main-navigation .primary-menu > li {
		border: 0;
	}

	.main-navigation .primary-menu > li {
		float: left;
	}

	.main-navigation a {
		outline-offset: -8px;
		padding: 0.65625em 0.875em;
		white-space: nowrap;
	}

	.main-navigation li:hover > a,
	.main-navigation li.focus > a {
		color: #007acc;
	}

	.main-navigation ul ul {
		border-bottom: 1px solid #d1d1d1;
		display: block;
		left: -999em;
		margin: 0;
		position: absolute;
		z-index: 99999;
	}

	.main-navigation ul ul ul {
		top: -1px;
	}

	.main-navigation ul ul ul:before,
	.main-navigation ul ul ul:after {
		border: 0;
	}

	.main-navigation ul ul li {
		background-color: #fff;
		border: 1px solid #d1d1d1;
		border-bottom-width: 0;
	}

	.main-navigation ul ul a {
		white-space: normal;
		width: 12.6875em;
	}

	.main-navigation ul ul:before,
	.main-navigation ul ul:after {
		border-style: solid;
		content: "";
		position: absolute;
	}

	.main-navigation ul ul:before {
		border-color: #d1d1d1 transparent;
		border-width: 0 10px 10px;
		right: 9px;
		top: -9px;
	}

	.main-navigation ul ul:after {
		border-color: #fff transparent;
		border-width: 0 8px 8px;
		right: 11px;
		top: -7px;
	}

	.main-navigation li:hover > ul,
	.main-navigation li.focus > ul {
		left: auto;
		right: 0;
	}

	.main-navigation ul ul li:hover > ul,
	.main-navigation ul ul li.focus > ul {
		left: auto;
		right: 100%;
	}

	.main-navigation .menu-item-has-children > a {
		margin: 0;
		padding-right: 2.25em;
	}

	.main-navigation .menu-item-has-children > a:after {
		content: "\f431";
		position: absolute;
		right: 0.625em;
		top: 0.8125em;
	}

	.main-navigation ul ul .menu-item-has-children > a {
		padding-right: 2.0625em;
	}

	.main-navigation ul ul .menu-item-has-children > a:after {
		right: 0.5625em;
		top: 0.875em;
		-webkit-transform: rotate(90deg);
		-moz-transform: rotate(90deg);
		-ms-transform: rotate(90deg);
		transform: rotate(90deg);
	}

	.dropdown-toggle,
	.main-navigation ul .dropdown-toggle.toggled-on,
	.menu-toggle,
	.site-header .social-navigation,
	.site-footer .main-navigation {
		display: none;
	}

	.site-content {
		padding: 0 4.5455%;
	}

	.content-area {
		float: left;
		margin-right: -100%;
		width: 70%;
	}

	.entry-header,
	.post-thumbnail,
	.entry-content,
	.entry-summary,
	.entry-footer,
	.comments-area,
	.image-navigation,
	.post-navigation,
	.pagination,
	.page-header,
	.page-content,
	.content-bottom-widgets {
		margin-right: 0;
		margin-left: 0;
	}

	.sidebar {
		float: left;
		margin-left: 75%;
		padding: 0;
		width: 25%;
	}

	.widget {
		font-size: 13px;
		font-size: 0.8125rem;
		line-height: 1.6153846154;
		margin-bottom: 3.230769231em;
		padding-top: 1.615384615em;
	}

	.widget .widget-title {
		margin-bottom: 1.3125em;
	}

	.widget p,
	.widget address,
	.widget hr,
	.widget ul,
	.widget ol,
	.widget dl,
	.widget dd,
	.widget table {
		margin-bottom: 1.6153846154em;
	}

	.widget li > ul,
	.widget li > ol {
		margin-bottom: 0;
	}

	.widget blockquote {
		font-size: 16px;
		font-size: 1rem;
		line-height: 1.3125;
		margin-bottom: 1.3125em;
		padding-left: 1.0625em;
	}

	.widget blockquote cite,
	.widget blockquote small {
		font-size: 13px;
		font-size: 0.8125rem;
		line-height: 1.6153846154;
	}

	.widget th,
	.widget td {
		padding: 0.5384615385em;
	}

	.widget pre {
		font-size: 13px;
		font-size: 0.8125rem;
		line-height: 1.6153846154;
		margin-bottom: 1.6153846154em;
		padding: 0.5384615385em;
	}

	.widget fieldset {
		margin-bottom: 1.6153846154em;
		padding: 0.5384615385em;
	}

	.widget button,
	.widget input,
	.widget select,
	.widget textarea {
		font-size: 13px;
		font-size: 0.8125rem;
		line-height: 1.6153846154;
	}

	.widget button,
	.widget input[type="button"],
	.widget input[type="reset"],
	.widget input[type="submit"] {
		line-height: 1;
		padding: 0.846153846em;
	}

	.widget input[type="date"],
	.widget input[type="time"],
	.widget input[type="datetime-local"],
	.widget input[type="week"],
	.widget input[type="month"],
	.widget input[type="text"],
	.widget input[type="email"],
	.widget input[type="url"],
	.widget input[type="password"],
	.widget input[type="search"],
	.widget input[type="tel"],
	.widget input[type="number"],
	.widget textarea {
		padding: 0.4615384615em 0.5384615385em;
	}

	.widget h1 {
		font-size: 23px;
		font-size: 1.4375rem;
		line-height: 1.2173913043;
		margin-bottom: 0.9130434783em;
	}

	.widget h2 {
		font-size: 19px;
		font-size: 1.1875rem;
		line-height: 1.1052631579;
		margin-bottom: 1.1052631579em;
	}

	.widget h3 {
		font-size: 16px;
		font-size: 1rem;
		line-height: 1.3125;
		margin-bottom: 1.3125em;
	}

	.widget h4,
	.widget h5,
	.widget h6 {
		font-size: 13px;
		font-size: 0.8125rem;
		line-height: 1.6153846154;
		margin-bottom: 0.9130434783em;
	}

	.widget .alignleft {
		margin: 0.2307692308em 1.6153846154em 1.6153846154em 0;
	}

	.widget .alignright {
		margin: 0.2307692308em 0 1.6153846154em 1.6153846154em;
	}

	.widget .aligncenter {
		margin-bottom: 1.6153846154em;
	}

	.widget_calendar td,
	.widget_calendar th {
		line-height: 2.6923076923;
		padding: 0;
	}

	.widget_rss .rssSummary:last-child {
		margin-bottom: 1.615384615em;
	}

	.widget input[type="search"].search-field {
		width: -webkit-calc(100% - 35px);
		width: calc(100% - 35px);
	}

	.widget .search-submit:before {
		font-size: 16px;
		left: 1px;
		line-height: 35px;
		width: 34px;
	}

	.widget button.search-submit {
		padding: 0;
		width: 35px;
	}

	.tagcloud a {
		margin: 0 0.2307692308em 0.5384615385em 0;
		padding: 0.5384615385em 0.4615384615em 0.4615384615em;
	}

	.textwidget h1 {
		margin-top: 1.8260869565em;
	}

	.textwidget h2 {
		margin-top: 2.2105263158em;
	}

	.textwidget h3 {
		margin-top: 2.625em;
	}

	.textwidget h4 {
		letter-spacing: 0.153846154em;
	}

	.textwidget h4,
	.textwidget h5,
	.textwidget h6 {
		margin-top: 3.2307692308em;
	}

	.content-bottom-widgets .widget-area:nth-child(1):nth-last-child(2),
	.content-bottom-widgets .widget-area:nth-child(2):nth-last-child(1) {
		float: left;
		margin-right: 7.1428571%;
		width: 46.42857145%;
	}

	.content-bottom-widgets .widget-area:nth-child(2):nth-last-child(1):last-of-type {
		margin-right: 0;
	}

	.site-footer {
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		padding: 0 4.5455% 3.5em;
	}

	.site-footer .social-navigation {
		margin: 0;
		-webkit-order: 2;
		-ms-flex-order: 2;
		order: 2;
	}

	.site-info {
		margin: 0.538461538em auto 0.538461538em 0;
		-webkit-order: 1;
		-ms-flex-order: 1;
		order: 1;
	}

	.no-sidebar .content-area {
		float: none;
		margin: 0;
		width: 100%;
	}

	.no-sidebar .entry-header,
	.no-sidebar .entry-content,
	.no-sidebar .entry-summary,
	.no-sidebar .entry-footer,
	.no-sidebar .comments-area,
	.no-sidebar .image-navigation,
	.no-sidebar .post-navigation,
	.no-sidebar .pagination,
	.no-sidebar .page-header,
	.no-sidebar .page-content,
	.no-sidebar .content-bottom-widgets {
		margin-right: 15%;
		margin-left: 15%;
	}

	.widecolumn {
		padding-right: 15%;
		padding-left: 15%;
	}
}


/**
 * 14.4 - >= 985px
 */

@media screen and (min-width: 61.5625em) {
	.site-main {
		margin-bottom: 7.0em;
	}

	.site-header {
		padding: 5.25em 4.5455%;
	}

	.site-branding,
	.site-header-menu,
	.header-image {
		margin-top: 1.75em;
		margin-bottom: 1.75em;
	}

	.custom-logo {
		max-width: 240px;
	}

	.image-navigation {
		margin-bottom: 3.230769231em;
	}

	.post-navigation {
		margin-bottom: 7.0em;
	}

	.pagination {
		margin-bottom: 5.894736842em;
	}

	.widget {
		margin-bottom: 4.307692308em;
	}

	.site-main > article {
		/*margin-bottom: 7.0em;*/
	}

	.entry-title {
		font-size: 40px;
		font-size: 2rem;
		line-height: 1.225;
		margin-bottom: 1.05em;
	}

	.format-aside .entry-title,
	.format-image .entry-title,
	.format-video .entry-title,
	.format-quote .entry-title,
	.format-gallery .entry-title,
	.format-status .entry-title,
	.format-link .entry-title,
	.format-audio .entry-title,
	.format-chat .entry-title {
		font-size: 23px;
		font-size: 1.4375em;
		line-height: 1.304347826;
		margin-bottom: 1.826086957em;
	}

	.post-thumbnail {
		margin-bottom: 2.625em;
	}

	.entry-content h1,
	.entry-summary h1,
	.comment-content h1 {
		font-size: 33px;
		font-size: 2.0625rem;
		line-height: 1.2727272727;
		margin-top: 1.696969697em;
		margin-bottom: 0.8484848485em;
	}

	.entry-content h2,
	.entry-summary h2,
	.comment-content h2 {
		font-size: 28px;
		font-size: 1.75rem;
		line-height: 1.25;
		margin-top: 2em;
		margin-bottom: 1em;
	}

	.entry-content h3,
	.entry-summary h3,
	.comment-content h3 {
		font-size: 23px;
		font-size: 1.4375rem;
		line-height: 1.2173913043;
		margin-top: 2.4347826087em;
		margin-bottom: 1.2173913043em;
	}

	.entry-content h4,
	.entry-summary h4,
	.entry-intro h4,
	.comment-content h4 {
		letter-spacing: 0.131578947em;
	}

	.entry-content h4,
	.entry-content h5,
	.entry-content h6,
	.entry-summary h4,
	.entry-summary h5,
	.entry-summary h6,
	.comment-content h4,
	.comment-content h5,
	.comment-content h6 {
		font-size: 19px;
		font-size: 1.1875rem;
		line-height: 1.1052631579;
		margin-top: 2.9473684211em;
		margin-bottom: 1.473684211em;
	}

	.author-info {
		border-bottom-width: 0;
		padding-bottom: 0;
	}

	.comment-list + .comment-respond,
	.comment-navigation + .comment-respond {
		padding-top: 5.25em;
	}

	.comments-area,
	.sidebar,
	.content-bottom-widgets .widget-area,
	.widecolumn {
		margin-bottom: 7.0em;
	}

	body:not(.search-results) .entry-summary {
		margin-bottom: 2.210526316em;
	}

	body:not(.search-results) .entry-header + .entry-summary {
		margin-top: -1.105263158em;
	}

	body:not(.search-results) article:not(.type-page) .entry-content {
		float: right;
		width: 71.42857144%;
	}

	body:not(.search-results) article:not(.type-page) .entry-content > blockquote.alignleft.below-entry-meta {
		margin-left: -40%;
		width: -webkit-calc(60% - 1.4736842105em);
		width: calc(60% - 1.4736842105em);
	}

	body:not(.search-results) article:not(.type-page) img.below-entry-meta,
	body:not(.search-results) article:not(.type-page) figure.below-entry-meta {
		clear: both;
		display: block;
		float: none;
		margin-right: 0;
		margin-left: -40%;
		max-width: 140%;
	}

	body:not(.search-results) article:not(.type-page) figure.below-entry-meta img.below-entry-meta,
	body:not(.search-results) article:not(.type-page) table figure.below-entry-meta,
	body:not(.search-results) article:not(.type-page) table img.below-entry-meta {
		margin: 0;
		max-width: 100%;
	}

	body:not(.search-results) article:not(.type-page) .entry-footer {
		float: left;
		margin-top: 0.1538461538em;
		width: 21.42857143%;
	}

	body:not(.search-results) article:not(.type-page) .entry-footer > span:not(:last-child):after {
		display: none;
	}

	.single .byline,
	.full-size-link,
	body:not(.search-results).group-blog .byline,
	body:not(.search-results) .entry-format,
	body:not(.search-results) .cat-links,
	body:not(.search-results) .tags-links,
	body:not(.search-results) article:not(.sticky) .posted-on,
	body:not(.search-results) article:not(.type-page) .comments-link,
	body:not(.search-results) article:not(.type-page) .entry-footer .edit-link {
		display: block;
		margin-bottom: 0.5384615385em;
	}

	body:not(.search-results) article:not(.type-page) .entry-footer > span:last-child {
		margin-bottom: 0;
	}

	body:not(.search-results) article:not(.type-page) .entry-footer .avatar {
		display: block;
		height: auto;
		margin: 0 0 0.5384615385em;
		width: 49px;
	}

	body.no-sidebar:not(.search-results) article:not(.type-page) .entry-content {
		float: left;
		margin-right: -100%;
		margin-left: 34.99999999%;
		width: 50.00000001%;
	}

	body.no-sidebar:not(.search-results) article:not(.type-page) .entry-footer {
		margin-right: -100%;
		margin-left: 15%;
		width: 15%;
	}
}


/**
 * 14.5 - >= 1200px
 */

@media screen and (min-width: 75em) {
	body:not(.search-results) .entry-summary {
		font-size: 23px;
		font-size: 1.4375rem;
		line-height: 1.5217391304;
		margin-bottom: 1.826086957em;
	}

	body:not(.search-results) .entry-header + .entry-summary {
		margin-top: -0.913043478em;
	}

	body:not(.search-results) .entry-summary p,
	body:not(.search-results) .entry-summary address,
	body:not(.search-results) .entry-summary hr,
	body:not(.search-results) .entry-summary ul,
	body:not(.search-results) .entry-summary ol,
	body:not(.search-results) .entry-summary dl,
	body:not(.search-results) .entry-summary dd,
	body:not(.search-results) .entry-summary table {
		margin-bottom: 1.5217391304em;
	}

	body:not(.search-results) .entry-summary li > ul,
	body:not(.search-results) .entry-summary blockquote > ul {
		margin-left: 0.956521739em;
	}

	body:not(.search-results) .entry-summary li > ol,
	body:not(.search-results) .entry-summary blockquote > ol {
		margin-left: 1.52173913em;
	}

	body:not(.search-results) .entry-summary blockquote {
		font-size: 23px;
		font-size: 1.4375rem;
		line-height: 1.5217391304;
		margin: 0 0 1.5217391304em;
		padding-left: 1.347826087em;
	}

	body:not(.search-results) .entry-summary blockquote:not(.alignleft):not(.alignright) {
		margin-left: -1.52173913em;
	}

	body:not(.search-results) .entry-summary blockquote blockquote:not(.alignleft):not(.alignright) {
		margin-left: 0;
	}

	body:not(.search-results) .entry-summary blockquote cite,
	body:not(.search-results) .entry-summary blockquote small {
		font-size: 19px;
		font-size: 1.1875rem;
		line-height: 1.8421052632;
	}

	body:not(.search-results) .entry-summary th,
	body:not(.search-results) .entry-summary td {
		padding: 0.3043478261em;
	}

	body:not(.search-results) .entry-summary pre {
		font-size: 16px;
		font-size: 1rem;
		line-height: 1.75;
		margin-bottom: 1.75em;
		padding: 1.75em;
	}

	body:not(.search-results) .entry-summary fieldset {
		margin-bottom: 1.5217391304em;
		padding: 0.3043478261em;
	}

	body:not(.search-results) .entry-summary h1 {
		margin-top: 2.121212121em;
		margin-bottom: 1.060606061em;
	}

	body:not(.search-results) .entry-summary h2 {
		margin-top: 2.5em;
		margin-bottom: 1.25em;
	}

	body:not(.search-results) .entry-summary h3 {
		margin-top: 3.043478261em;
		margin-bottom: 1.52173913em;
	}

	body:not(.search-results) .entry-summary h4,
	body:not(.search-results) .entry-summary h5,
	body:not(.search-results) .entry-summary h6 {
		margin-top: 3.684210526em;
		margin-bottom: 1.842105263em;
	}

	body:not(.search-results) .entry-summary h1:first-child,
	body:not(.search-results) .entry-summary h2:first-child,
	body:not(.search-results) .entry-summary h3:first-child,
	body:not(.search-results) .entry-summary h4:first-child,
	body:not(.search-results) .entry-summary h5:first-child,
	body:not(.search-results) .entry-summary h6:first-child {
		margin-top: 0;
	}

	body:not(.search-results) .entry-summary .alignleft {
		margin: 0.2608695652em 1.5217391304em 1.5217391304em 0;
	}

	body:not(.search-results) .entry-summary .alignright {
		margin: 0.2608695652em 0 1.5217391304em 1.5217391304em;
	}

	body:not(.search-results) .entry-summary .aligncenter {
		margin-bottom: 1.5217391304em;
	}
}


/**
 * 15.0 - Print
 */

@media print {
	form,
	button,
	input,
	select,
	textarea,
	.navigation,
	.main-navigation,
	.social-navigation,
	.sidebar,
	.content-bottom-widgets,
	.header-image,
	.page-links,
	.edit-link,
	.comment-respond,
	.comment-edit-link,
	.comment-reply-link,
	.comment-metadata .edit-link,
	.pingback .edit-link {
		display: none;
	}

	body,
	blockquote cite,
	blockquote small,
	pre,
	.entry-content h4,
	.entry-content h5,
	.entry-content h6,
	.entry-summary h4,
	.entry-summary h5,
	.entry-summary h6,
	.comment-content h4,
	.comment-content h5,
	.comment-content h6,
	.entry-content .author-title {
		font-size: 12pt;
	}

	blockquote {
		font-size: 14.25pt;
	}

	.site-title,
	.page-title,
	.comments-title,
	.entry-content h2,
	.entry-summary h2,
	.comment-content h2,
	.widecolumn h2 {
		font-size: 17.25pt;
	}

	.site-description {
		display: block;
	}

	.entry-title {
		font-size: 24.75pt;
		line-height: 1.2727272727;
		margin-bottom: 1.696969697em;
	}

	.format-aside .entry-title,
	.format-image .entry-title,
	.format-video .entry-title,
	.format-quote .entry-title,
	.format-gallery .entry-title,
	.format-status .entry-title,
	.format-link .entry-title,
	.format-audio .entry-title,
	.format-chat .entry-title {
		font-size: 17.25pt;
		line-height: 1.304347826;
		margin-bottom: 1.826086957em;
	}

	.entry-content h1,
	.entry-summary h1,
	.comment-content h1 {
		font-size: 21pt;
	}

	.entry-content h3,
	.entry-summary h3,
	.comment-content h3,
	body:not(.search-results) .entry-summary {
		font-size: 14.25pt;
	}

	.site-description,
	.author-bio,
	.entry-footer,
	.sticky-post,
	.taxonomy-description,
	.entry-caption,
	.comment-metadata,
	.comment-notes,
	.comment-awaiting-moderation,
	.site-info,
	.wp-caption .wp-caption-text,
	.gallery-caption {
		font-size: 9.75pt;
	}

	body,
	.site {
		background: none !important; /* Brute force since user agents all print differently. */
	}

	body,
	blockquote cite,
	blockquote small,
	.site-branding .site-title a,
	.entry-title a,
	.comment-author {
		color: #1a1a1a !important; /* Make sure color schemes don't affect to print */
	}

	blockquote,
	.page-header,
	.comments-title {
		border-color: #1a1a1a !important; /* Make sure color schemes don't affect to print */
	}

	blockquote,
	.site-description,
	body:not(.search-results) .entry-summary,
	body:not(.search-results) .entry-summary blockquote,
	.author-bio,
	.entry-footer,
	.entry-footer a,
	.sticky-post,
	.taxonomy-description,
	.entry-caption,
	.comment-author,
	.comment-metadata a,
	.comment-notes,
	.comment-awaiting-moderation,
	.site-info,
	.site-info a,
	.wp-caption .wp-caption-text,
	.gallery-caption {
		color: #686868 !important; /* Make sure color schemes don't affect to print */
	}

	code,
	hr {
		background-color: #d1d1d1 !important; /* Make sure color schemes don't affect to print */
	}

	pre,
	abbr,
	acronym,
	table,
	th,
	td,
	.author-info,
	.comment-list article,
	.comment-list .pingback,
	.comment-list .trackback,
	.no-comments {
		border-color: #d1d1d1 !important; /* Make sure color schemes don't affect to print */
	}

	a {
		color: #007acc !important; /* Make sure color schemes don't affect to print */
	}

	.entry-content a,
	.entry-summary a,
	.taxonomy-description a,
	.comment-content a,
	.pingback .comment-body > a {
		box-shadow: none;
		border-bottom: 1px solid #007acc !important; /* Make sure color schemes don't affect to print */
	}

	.site {
		margin: 5%;
	}

	.site-inner {
		max-width: none;
	}

	.site-header {
		padding: 0 0 1.75em;
	}

	.site-branding {
		margin-top: 0;
		margin-bottom: 1.75em;
	}

	.site-main {
		margin-bottom: 3.5em;
	}

	.entry-header,
	.entry-footer,
	.page-header,
	.page-content,
	.entry-content,
	.entry-summary,
	.post-thumbnail,
	.comments-area {
		margin-right: 0;
		margin-left: 0;
	}

	.post-thumbnail,
	.site-main > article {
		/*margin-bottom: 3.5em;*/
	}

	.entry-content blockquote.alignleft,
	.entry-content blockquote.alignright {
		border-width: 4px 0 0 0;
		padding: 0.9473684211em 0 0;
		width: -webkit-calc(50% - 0.736842105em);
		width: calc(50% - 0.736842105em);
	}

	body:not(.search-results) .entry-header + .entry-summary {
		margin-top: -1.473684211em;
	}

	.site-footer,
	.widecolumn {
		padding: 0;
	}
}
/* Titres des catégories */
.store-category-title {
    font-family: 'Helvetica Neue', Arial, sans-serif;
    color: #1a3322; /* Vert Chasse / Nature */
    border-bottom: 2px solid #dfd7ca;
    padding-bottom: 10px;
    margin: 40px 0 20px 0;
    text-transform: uppercase;
    font-size: 1.5rem;
    letter-spacing: 1px;
}

/* Conteneur de la liste */
.store-products-list {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-bottom: 30px;
}

/* Ligne de produit unique */
.product-row {
    display: flex;
    align-items: center;
    background: #ffffff;
    border: 2px solid #e6e6e6;
    border-radius: 8px;
    padding: 15px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
	box-shadow: 5px 2px #e6e6e6;
}

.product-row:hover {
    transform: translateY(-2px);
   /* box-shadow: 0 6px 15px rgba(0,0,0,0.05);*/
    border-color: #c2b49a;
	box-shadow: 5px 2px #c2b49a;
}

/* Image du produit */
.product-image {
    flex: 0 0 120px;
    max-width: 120px;
    margin-right: 20px;
	margin-bottom: 10px;
}

.product-image img {
    width: 100%;
    height: 120px;
    object-fit: cover;
    border-radius: 6px;
    background: #f9f9f9;
}

/* 1. Force Firefox à limiter la largeur du conteneur de texte */
.product-details {
    flex: 1 1 0%; /* Définit une base flex stricte pour Firefox */
    min-width: 0;   /* Indispensable pour couper le texte en Flexbox */
    padding-right: 20px;
	min-height: 110px !important;
}

/* 2. Stabilise la largeur du bloc Prix/Bouton pour qu'il ne bouge jamais */
.product-meta {
    flex: 0 0 160px; /* Ne rétrécit pas, ne grandit pas, reste à 160px */
    width: 160px;    /* Force la largeur fixe sous Firefox */
    text-align: right;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
}

/* 3. Sécurise la coupure des titres longs sur tous les navigateurs */
.product-title {
    margin: 0 0 8px 0;
    font-size: 1.2rem;
    word-break: break-word; /* Évite qu'un mot ultra-long ne casse la ligne */
    overflow: hidden;
}

.product-title a {
    color: #222;
    text-decoration: none;
    font-weight: 600;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;  
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.3;
    max-height: 2.6em;
}


.product-title a:hover {
    color: #4a6b52; /* Couleur thématique au survol */
}

.product-excerpt {
    margin: 0;
    color: #666;
    font-size: 0.9rem;
    line-height: 1.4;
}

/* Prix et Bouton */
.product-meta {
    flex: 0 0 160px;
    text-align: right;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
}

.product-price {
    font-size: 1.3rem;
    font-weight: 700;
    color: #2e5a36; /* Vert prix */
}

.product-price small {
    font-size: 0.75rem;
    color: #888;
    font-weight: normal;
    margin-left: 3px;
}

.product-btn {
    display: inline-block;
    background: #36454f; /* Gris ardoise/acier */
    color: #ffffff !important;
    text-decoration: none !important;
    padding: 8px 16px;
    font-size: 0.85rem;
    border-radius: 4px;
    font-weight: 500;
    transition: background 0.2s;
}

.product-btn:hover {
    background: #232b30;
}

/* Responsive : Adaptation pour les smartphones */
@media (max-width: 768px) {
    .product-row {
        flex-direction: column;
        text-align: center;
        align-items: center;
    }
    
    .product-image {
        margin-right: 0;
        margin-bottom: 15px;
        flex: 0 0 150px;
        max-width: 150px;
    }
    
    .product-details {
        padding-right: 0;
        margin-bottom: 15px;
    }
    
    .product-meta {
        flex: none;
        width: 100%;
        align-items: center;
        border-top: 1px dashed #eee;
        padding-top: 15px;
    }
}


/************ filter ********/
.store-filter-bar form {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    background: #f4f6f4; /* Fond vert très clair et naturel */
    padding: 15px;
    border-radius: 8px;
    border: 1px solid #dfd7ca;
    align-items: flex-end;
    margin-bottom: 25px;
}

.filter-group {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.filter-group label {
    font-size: 0.85rem;
    font-weight: 600;
    color: #1a3322;
}

.filter-group select {
    padding: 8px 12px;
    border: 1px solid #ccc;
    border-radius: 4px;
    background: #fff;
    min-width: 180px;
}

.filter-submit-btn {
    background: #4a6b52; /* Bouton Vert Chasse */
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 4px;
    cursor: pointer;
    font-weight: 500;
    transition: background 0.2s;
}

.filter-submit-btn:hover {
    background: #2e4433;
}

/* Bouton Réinitialiser les filtres */
.filter-reset-btn {
    padding: 10px 15px;
    background: #dfd7ca;
    color: #333;
    text-decoration: none;
    border-radius: 4px;
    font-size: 0.9rem;
    font-weight: 500;
    transition: background 0.2s;
}
.filter-reset-btn:hover {
    background: #ccc2b2;
}

/* Alignement titre et badges de stock */
.product-title-wrapper {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 8px;
    flex-wrap: wrap;
}

.product-title {
    margin: 0 !important; /* Annule la marge inférieure */
}

/* Styles des pastilles de stock */
.stock-badge {
    font-size: 0.75rem;
    padding: 3px 8px;
    border-radius: 20px;
    font-weight: 600;
    text-transform: uppercase;
    display: inline-block;
}

.stock-badge.in-stock {
    background-color: #e6f4ea;
    color: #137333;
}

.stock-badge.out-stock {
    background-color: #fce8e6;
    color: #c5221f;
}

/* Message aucun produit trouvé */
.no-products-found {
    padding: 30px;
    background: #fdfaf6;
    border: 1px dashed #c2b49a;
    border-radius: 6px;
    text-align: center;
    color: #666;
}

/* Conteneur principal */
.store-single-container {
    max-width: 900px;
    margin: 20px auto;
    padding: 0 20px;
    font-family: 'Helvetica Neue', Arial, sans-serif;
}

.product-breadcrumbs {
    margin-bottom: 20px;
}

.product-breadcrumbs a {
    color: #4a6b52;
    text-decoration: none;
    font-weight: 500;
}

/* Layout 2 colonnes */
.product-single-layout {
    display: flex;
    gap: 25px;
    background: #ffffff;
    border: 1px solid #e6e6e6;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.02);
}

/* Colonne Image */
.product-single-image {
    flex: 0 0 160px; /* Fixe la largeur de l'image à 320px au lieu de 45% */
    max-width: 160px;
}

/*.product-single-image img {
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 6px;
    border: 1px solid #eee;
}*/
.product-single-image img {
    max-height: 160px; /* Empêche l'image de s'étirer en hauteur */
    width: 100%;
    object-fit: contain; /* Conserve les proportions du matériel sans l'écraser */
    background: #fafafa;
	border-radius: 6px;
    border: 1px solid #eee;
}
/* Colonne Contenu */
.product-single-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/*.product-single-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 15px;
    border-bottom: 1px solid #eee;
    padding-bottom: 15px;
}

.product-single-title {
    font-size: 1.5rem;
    margin: 0;
    color: #222;
    font-weight: 700;
}*/
/* 1. Sécurise le conteneur du titre */
.product-single-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 15px;
    border-bottom: 1px solid #eee;
    padding-bottom: 15px;
    width: 100%;
    min-width: 0; /* Empêche le conteneur de s'étirer */
}

/* 2. Force le titre à revenir à la ligne ou à se couper */
.product-single-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: #222;
    margin: 0;
    flex: 1; /* Permet au titre de prendre tout l'espace disponible sans pousser le reste */
    min-width: 0; /* Indispensable pour la gestion du texte long */
    
    /* Option A : Autoriser le retour à la ligne automatique (Recommandé pour une fiche produit) */
    word-wrap: break-word;
    word-break: break-word;
    overflow-wrap: break-word;

    /* Option B : Si vous préférez TOUTEFOIS le couper à 2 lignes max comme la liste, 
       activez les lignes suivantes en enlevant les commmentaires : */
    
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    
}


/* Box de Prix */
.product-single-price-box {
    background: #fdfaf6;
    border-left: 4px solid #4a6b52;
    padding: 15px;
    border-radius: 0 6px 6px 0;
}

.product-single-price {
    font-size: 1.8rem;
    font-weight: 800;
    color: #2e5a36;
    display: block;
    line-height: 1;
}

.product-single-price-label {
    font-size: 0.8rem;
    color: #666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 5px;
    display: block;
}

/* Texte de description */
.product-single-excerpt h3 {
    font-size: 0.95rem;
    color: #1a3322;
    margin: 0 0 6px 0;
    text-transform: uppercase;
}

.product-single-excerpt p {
    color: #444;
    line-height: 1.5;
    font-size: 0.9rem;
}

/* Blocs d'actions */
.action-box {
    padding: 12px 15px;
    border-radius: 6px;
    background: #f4f6f4;
    border: 1px solid #dfd7ca;
}

.action-box.alert-box {
    background: #fdf5f5;
    border-color: #f5c6cb;
}

.action-info {
    margin: 0 0 10px 0;
    font-size: 0.9rem;
    color: #555;
}

/* Boutons */
.product-single-btn {
    display: inline-block;
    padding: 8px 18px; /* Bouton plus petit */
    font-size: 0.9rem;
    border-radius: 4px;
    font-weight: 600;
    text-decoration: none !important;
    text-align: center;
    transition: background 0.2s;
}

.btn-buy {
    background: #4a6b52;
    color: #ffffff !important;
}

.btn-buy:hover {
    background: #354d3b;
}

.btn-alert {
    background: #36454f;
    color: #ffffff !important;
}

.btn-alert:hover {
    background: #232b30;
}

/* Meta */
.product-single-meta {
    font-size: 0.85rem;
    color: #777;
    border-top: 1px solid #eee;
    padding-top: 15px;
}

.meta-label {
    font-weight: 600;
    color: #333;
}

/* Responsive */
@media (max-width: 768px) {
    .product-single-layout {
        flex-direction: column;
        padding: 15px;
    }
    .product-single-image {
        max-width: 100%;
        flex: none;
    }
    .product-single-title {
        font-size: 1.6rem;
    }
}

/* ==========================================================================
   RESET ET VERROUILLAGE DU THEME CLAIR
   ========================================================================== */
/* On force le conteneur principal et le body à ignorer le mode sombre du thème */
body.store-light-theme,
body.store-light-theme .site,
body.store-light-theme #page,
#store-page-wrapper {
    background-color: #f7f5f2 !important; /* Couleur lin / sable très claire et naturelle */
    color: #2c3e50 !important; /* Texte gris très foncé (presque noir) pour une lecture parfaite */
}

/* Assure la couleur noire par défaut pour tous les textes importants */
#store-page-wrapper p,
#store-page-wrapper li,
#store-page-wrapper h1,
#store-page-wrapper h2,
#store-page-wrapper h3 {
    color: #222222 !important;
}

/* ==========================================================================
   DESIGN DE L'EN-TÊTE (HEADER)
   ========================================================================== */
.site-header-store {
    background-color: #ffffff !important; /* Fond blanc pur pour le header */
    border-bottom: 3px solid #4a6b52; /* Ligne de séparation en vert chasse */
    position: sticky;
    top: 0;
    z-index: 9999;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04);
    font-family: 'Helvetica Neue', Arial, sans-serif;
}

.header-store-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0px 0px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

/* Identité visuelle (Branding) */
.header-store-branding a {
    text-decoration: none !important;
    display: flex;
    flex-direction: column;
}

.brand-main {
    font-size: 1.4rem;
    font-weight: 800;
    color: #1a3322 !important; /* Vert forêt profond */
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1.1;
}

.brand-sub {
    font-size: 0.95rem;
    font-weight: 600;
    color: #36454f !important; /* Gris ardoise technique */
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-top: 2px;
}

/* Menu de navigation */
.header-store-navigation ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    gap: 5px;
}

.header-store-navigation ul li a {
    color: #555555 !important;
    text-decoration: none !important;
    font-weight: 600;
    font-size: 0.95rem;
    transition: color 0.2s ease;
}

.header-store-navigation ul li a:hover,
.header-store-navigation ul li.current-menu-item a {
    color: #4a6b52 !important; /* Passe au vert chasse au survol */
}



/* Ajustement de la zone de contenu sous le header */
.store-main-body {
    padding: 30px 20px !important;
    max-width: 1200px;
    margin: 0 auto;
}

/* ==========================================================================
   RESPONSIVE (SMARTPHONES)
   ========================================================================== */
@media (max-width: 768px) {
    .header-store-container {
        flex-direction: column;
        text-align: center;
        padding: 15px;
        gap: 15px;
    }
    
    .header-store-navigation ul {
        justify-content: center;
        gap: 15px;
        flex-wrap: wrap;
    }
    
    .header-store-actions {
        width: 100%;
    }
    
    .header-action-btn {
        display: block;
        width: 100%;
        box-sizing: border-box;
    }
}

/* ==========================================================================
   REDUCTION DES ESPACES VERTICAUX (TWENTY SIXTEEN RESET)
   ========================================================================== */

/* 1. Réduit le grand espace blanc tout en haut de la page (sous le header) */
.site-main {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
}

/* 2. Écrase les marges massives appliquées par Twenty Sixteen sur la balise article */
.site-main > article.product-single-card  {
	max-height: 80vh!important;
}
.site-main > article,
.site-main .post,
.site-main .page{
    margin-top: 0 !important;
    margin-bottom: 15px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
	max-height: 8vh!important;
}

/* 3. Réduit l'espace vide entre le titre caché de la page et votre barre de filtres */
.entry-header {
    margin-bottom: 10px !important;
    padding: 0 !important;
}

/* 4. Réduit l'espace en bas de la page avant le footer */
.entry-content {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
/* ==========================================================================
   MASQUAGE DES METADONNEES PARASITES (TWENTY SIXTEEN CLEANUP)
   ========================================================================== */

/* 1. Masque les catégories de blog, l'auteur et la date injectés par le thème dans vos lignes */
.store-products-list .entry-meta,
.store-products-list .byline,
.store-products-list .cat-links,
.store-products-list .tags-links,
.store-products-list .comments-link {
    display: none !important;
}

/* 2. Masque également les métadonnées automatiques sur la fiche produit single compacte */
.product-single-card .entry-meta,
.product-single-card .byline,
.product-single-card .cat-links {
    display: none !important;
}

/* 3. Supprime les bordures et lignes horizontales grises parasites que Twenty Sixteen ajoute sous les titres */
.store-products-list article,
.product-row {
    border-bottom: none !important;
    padding-bottom: 0 !important;
}

/* Cache absolument tout ce qui n'est pas notre structure de produit personnalisée */
.product-row footer,
.product-row .entry-footer,
.product-row .post-thumbnail,
.product-row .taxonomy-description,
.product-row .entry-meta,
.product-row .post-meta {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* ==========================================================================
   CORRECTIF DU SIDEBAR TWENTY SIXTEEN (RESET DU MARGIN 75%)
   ========================================================================== */

@media (min-width: 910px) {
    /* 1. On prépare le conteneur global du thème pour accueillir les deux colonnes */
    .site-content {
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-start !important;
        justify-content: space-between !important;
        max-width: 1200px;
        margin: 0 auto !important;
        padding: 20px 20px !important;
        gap: 40px !important;
    }

    /* 2. On verrouille la zone principale de gauche (vos produits) */
    #primary.content-area {
        flex: 1 !important;
        /*max-width: calc(100% - 340px) !important; /* Laisse exactement la place pour le sidebar */
        float: none !important;
        margin: 0 !important;
        width: auto !important;
    }

    /* 3. On détruit le margin-left de 75% et on fixe la barre à droite */
    #secondary.sidebar,
    .sidebar-content-area,
    aside.sidebar {
        flex: 0 0 300px !important; /* Fixe la largeur du sidebar à 300px */
        width: 300px !important;
        margin-left: 0 !important; /* ÉCRASE LE MARGIN-LEFT DE 75% */
        float: none !important;
        margin-top: 0 !important;
        padding: 0 !important;
    }
}

/* Alignement du bloc d'actions à droite */
.header-store-actions {
    display: flex;
    align-items: center;
    gap: 20px; /* Espace entre l'espace de connexion et le bouton contact */
}

/* Style du bouton de connexion (Déconnecté) */
.user-login-btn {
    color: #36454f !important; /* Gris ardoise cohérent */
    text-decoration: none !important;
    font-weight: 600;
    font-size: 0.9rem;
    padding: 8px 12px;
    border: 1px solid #36454f;
    border-radius: 4px;
    transition: all 0.2s ease;
}

.user-login-btn:hover {
    background-color: #36454f;
    color: #ffffff !important;
}

/* Style du bloc utilisateur connecté */
.user-logged-box {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
}

.user-account-link {
    color: #4a6b52 !important; /* Vert chasse pour le compte actif */
    text-decoration: none !important;
    font-weight: 700;
    font-size: 0.95rem;
}

.user-account-link:hover {
    color: #1a3322 !important;
}

.user-logout-link {
    color: #888888 !important;
    text-decoration: none !important;
    font-size: 0.75rem;
    font-weight: 500;
}

.user-logout-link:hover {
    color: #c5221f !important; /* Rouge discret au survol pour la déconnexion */
}

/* Ajustements Responsive pour mobiles */
@media (max-width: 768px) {
    .header-store-actions {
        flex-direction: column;
        width: 100%;
        gap: 12px;
    }
    
    .header-user-auth,
    .user-logged-box {
        width: 100%;
        align-items: center;
    }
    
    .user-login-btn {
        display: block;
        width: 100%;
        box-sizing: border-box;
    }
}


/* ==========================================================================
   DESIGN SUR MESURE DE LA PAGE DE CONNEXION DE LA magasin
   ========================================================================== */

/* 1. Arrière-plan global et police */
body.login {
    background-color: #f7f5f2 !important; /* Couleur sable / lin naturel claire */
    font-family: 'Helvetica Neue', Arial, sans-serif !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
}

/* 2. Transformation du Logo en En-tête textuel chic */
body.login h1 a {
    background-image: none !important; /* Supprime le logo WordPress par défaut */
    text-indent: 0 !important; /* Fait réapparaître le texte caché */
    width: auto !important;
    height: auto !important;
    font-size: 1.5rem !important;
    font-weight: 800 !important;
    color: #1a3322 !important; /* Vert forêt profond */
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1.1;
    text-align: center;
    display: block;
    text-decoration: none !important;
    margin-bottom: 5px !important;
}

/* Ajout automatique du sous-titre stylisé */
body.login h1::after {
    content: "CHASSE, PÊCHE & LOISIRS";
    display: block;
    font-size: 0.95rem;
    font-weight: 600;
    color: #36454f; /* Gris ardoise technique */
    letter-spacing: 2px;
    margin-top: 4px;
    text-align: center;
}

/* 3. Habillage du bloc de formulaire de connexion */
.login form {
    background: #ffffff !important; /* Fond blanc pur identique à vos fiches produits */
    border: 1px solid #dfd7ca !important; /* Bordure beige lin fine */
    border-radius: 8px !important; /* Même arrondi discret de 8px */
    padding: 30px 25px !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04) !important; /* Ombre très légère */
}

/* Style des labels d'indication */
.login label {
    color: #36454f !important;
    font-weight: 600;
    font-size: 0.85rem;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* 4. Personnalisation des champs de saisie (inputs) */
.login input[type="text"], 
.login input[type="password"],
.login input[type="checkbox"] {
    border: 1px solid #cccccc !important;
    border-radius: 4px !important; /* Coins légèrement arrondis */
    padding: 10px !important;
    background-color: #fafafa !important;
    box-shadow: none !important;
    transition: all 0.2s ease;
}

/* Effet au clic (focus) sur un champ */
.login input[type="text"]:focus, 
.login input[type="password"]:focus {
    border-color: #4a6b52 !important; /* Passe au vert chasse au clic */
    background-color: #ffffff !important;
    box-shadow: 0 0 0 1px #4a6b52 !important;
}

/* 5. Le Bouton de connexion Principal (Se connecter) */
.login .button-primary {
    background: #4a6b52 !important; /* Vert Nature dominant */
    border-color: #4a6b52 !important;
    border-radius: 4px !important;
    text-shadow: none !important;
    box-shadow: none !important;
    font-weight: 600 !important;
    padding: 6px 20px !important;
    height: auto !important;
    font-size: 0.9rem !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: background-color 0.2s ease !important;
    float: none !important;
    width: 100%; /* Met le bouton sur toute la largeur pour plus de modernité */
    margin-top: 15px !important;
}

.login .button-primary:hover {
    background: #2e4433 !important; /* Vert plus sombre et intense au survol */
    border-color: #2e4433 !important;
}

/* 6. Liens du bas de page (Mot de passe oublié / Retour au site) */
.login #nav, 
.login #backtoblog {
    text-align: center !important;
    padding: 10px 0 0 0 !important;
    margin: 5px 0 0 0 !important;
}

.login #nav a, 
.login #backtoblog a {
    color: #555555 !important;
    font-size: 0.85rem !important;
    text-decoration: none !important;
    font-weight: 500;
    transition: color 0.15s ease;
}

.login #nav a:hover, 
.login #backtoblog a:hover {
    color: #4a6b52 !important; /* Rappel de la couleur d'action */
}

/* Masquage de la ligne de séparation par défaut de WordPress */
.login #backtoblog {
    border-top: none !important;
}
/* Masque les mentions de retour génériques si vous ne souhaitez garder que le formulaire */
.login #backtoblog {
    display: none !important;
}

/* Conteneur de l'espace client */
.store-account-container {
    max-width: 800px;
    margin: 0 auto;
}

.account-dashboard-box {
    background: #ffffff;
    border: 1px solid #dfd7ca;
    border-radius: 8px;
    padding: 30px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);
}


/* ==========================================================================
   FORMULAIRE DE COMPTE CLIENT (STYLE magasin)
   ========================================================================== */
.account-profile-wrapper {
    font-family: 'Helvetica Neue', Arial, sans-serif;
}

.account-section-title {
    font-size: 1.3rem;
    color: #1a3322 !important; /* Vert chasse profond */
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0 0 5px 0 !important;
}

.account-section-subtitle {
    font-size: 0.85rem;
    color: #666;
    margin-bottom: 25px;
}

/* Gestion des alertes de retour */
.store-alert {
    padding: 12px 15px;
    border-radius: 4px;
    font-size: 0.9rem;
    font-weight: 500;
    margin-bottom: 20px;
}
.store-alert.alert-error {
    background-color: #fce8e6;
    color: #c5221f;
    border: 1px solid #f5c6cb;
}
.store-alert.alert-success {
    background-color: #e6f4ea;
    color: #137333;
    border: 1px solid #c3e6cb;
}

/* Structure du formulaire */
.store-account-form {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

/* Lignes à deux champs */
.form-row {
    display: flex;
    gap: 20px;
}

.form-group {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.form-group.full-width {
    width: 100%;
}

/* Labels et Champs */
.store-account-form label {
    font-size: 0.8rem;
    font-weight: 700;
    color: #36454f; /* Gris ardoise */
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.store-account-form label .required {
    color: #c5221f;
}

.store-account-form input[type="text"],
.store-account-form input[type="email"],
.store-account-form input[type="tel"] {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #cccccc;
    border-radius: 4px;
    background-color: #fafafa;
    font-size: 0.95rem;
    box-sizing: border-box;
    transition: all 0.2s ease;
}

.store-account-form input:focus {
    border-color: #4a6b52 !important; /* Vert chasse au clic */
    background-color: #ffffff;
    outline: none;
    box-shadow: 0 0 0 1px #4a6b52;
}

/* Séparateur technique de section */
.form-section-divider {
    font-size: 0.85rem;
    font-weight: 700;
    color: #1a3322;
    border-bottom: 2px dashed #dfd7ca;
    padding-bottom: 6px;
    margin-top: 15px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.form-help-text {
    font-size: 0.8rem;
    color: #777;
    margin-top: 2px;
}

/* Zone d'action et bouton principal */
.form-actions {
    border-top: 1px solid #eee;
    padding-top: 15px;
    margin-top: 10px;
    text-align: right;
}

.account-submit-btn {
    background-color: #4a6b52 !important; /* Vert Chasse */
    color: white !important;
    border: none;
    padding: 11px 24px;
    font-size: 0.9rem;
    font-weight: 600;
    border-radius: 4px;
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: background-color 0.2s ease;
}

.account-submit-btn:hover {
    background-color: #2e4433 !important; /* Vert sombre au survol */
}

/* Adaptation pour les smartphones */
@media (max-width: 600px) {
    .form-row {
        flex-direction: column;
        gap: 18px;
    }
    .account-submit-btn {
        width: 100%;
        display: block;
    }
}

/* ==========================================================================
   PAGE DE CONTACT (STYLE NATURE / magasin)
   ========================================================================== */
/* ==========================================================================
   PAGE DE CONTACT : LAYOUT ULTRA-COMPACT À 3 COLONNES
   ========================================================================== */

/* Élargit le conteneur pour donner de l'espace aux 3 colonnes */
.store-contact-container {
    max-width: 1200px !important;
    margin: 0 auto;
}

/* Grille principale */
.contact-three-columns-grid {
    display: grid;
    grid-template-columns: 3fr 2fr; /* 3 colonnes de largeur strictement identique */
    gap: 20px; /* Espace de séparation entre les blocs */
    align-items: stretch; /* Force tous les blocs à avoir la même hauteur */
}

/* Le conteneur interne de chaque bloc */
.contact-inner-card {
    background: #ffffff !important;
    border: 1px solid #dfd7ca !important;
    border-radius: 8px !important;
    padding: 20px !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.02) !important;
    height: 100%;
    box-sizing: border-box;
}

/* Style des titres de colonnes 1 et 2 */
.column-title {
    font-size: 0.95rem !important;
    color: #1a3322 !important; /* Vert chasse */
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0 0 15px 0 !important;
    border-bottom: 1px solid #f0ece6;
    padding-bottom: 8px;
    font-weight: 700;
}

/* Style des titres de la colonne d'infos de droite */
.info-block-title {
    font-size: 0.85rem !important;
    color: #1a3322 !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0 0 5px 0 !important;
    font-weight: 700;
}

.info-block-text {
    font-size: 0.85rem !important;
    color: #444 !important;
    line-height: 1.4 !important;
    margin: 0 !important;
}

.contact-column-map{
	margin: 5px 0 5px 0 !important;
}
/* Ajustement de la hauteur de la carte pour s'aligner sur le formulaire */
.contact-column-map iframe {
    height: 340px !important; 
    width: 100%;
    display: block;
}

/* Passage en mode bloc vertical sur les tablettes et smartphones */
@media (max-width: 950px) {
    .contact-three-columns-grid {
        grid-template-columns: 1fr; /* Une seule colonne verticale */
        gap: 25px;
    }
    .contact-column-map iframe {
        height: 250px !important;
    }
}

/* ==========================================================================
   STYLE PREMIUM POUR LA COLONNE D'INFORMATIONS (DROITE)
   ========================================================================== */

/* Conteneur global du bloc droit */
.info-stack-premium {
    display: flex;
    flex-direction: column;
    gap: 24px; /* Espace équilibré entre chaque section */
}

.column-title-premium {
    font-size: 0.95rem !important;
    color: #1a3322 !important; /* Vert forêt profond */
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0 0 10px 0 !important;
    border-bottom: 2px solid #dfd7ca; /* Ligne de séparation sablée */
    padding-bottom: 10px;
    font-weight: 700;
}

/* Structure de chaque ligne d'info (Icône à gauche, texte à droite) */
.sub-info-block-premium {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    padding-bottom: 20px;
    border-bottom: 1px dashed #dfd7ca; /* Ligne pointillée fine entre les sections */
}

/* Supprime la bordure sur le dernier élément */
.sub-info-block-premium.last-block {
    border-bottom: none;
    padding-bottom: 0;
}

/* Style des bulles d'icônes */
.info-icon-wrapper {
    background-color: #f4f6f4; /* Fond vert très clair */
    border: 1px solid #dfd7ca;
    border-radius: 50%; /* Rond parfait */
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    flex-shrink: 0; /* Empêche l'icône de se déformer */
}

/* Textes et Titres internes */
.info-text-wrapper {
    flex: 1;
}

.info-block-title-premium {
    font-size: 0.9rem !important;
    color: #1a3322 !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0 0 6px 0 !important;
    font-weight: 700;
}

.info-block-text-premium {
    font-size: 0.85rem !important;
    color: #444444 !important;
    line-height: 1.5 !important;
    margin: 0 !important;
}

/* Mise en avant des labels de contact */
.contact-highlight {
    font-weight: 600;
    color: #36454f; /* Gris ardoise */
}

/* ==========================================================================
   DESIGN DES HORAIRES D'OUVERTURE
   ========================================================================== */
.hours-list-premium {
    list-style: none !important;
    margin: 10px 0 0 0 !important;
    padding: 0 !important;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.hours-list-premium li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.85rem;
    color: #444;
    padding: 4px 0;
}

/* Style pour les plages horaires */
.time-range {
    font-weight: 600;
    color: #222;
}

/* Style du jour phare (Samedi) */
.hours-list-premium li.day-highlight {
    background-color: #f4f6f4; /* Fond vert clair pour attirer l'œil */
    padding: 6px 10px;
    border-left: 3px solid #4a6b52; /* Ligne verticale verte */
    border-radius: 0 4px 4px 0;
    font-weight: 600;
    color: #1a3322;
}
.hours-list-premium li.day-highlight .time-range {
    color: #2e5a36;
}

/* Style pour les jours fermés */
.hours-list-premium li.day-closed {
    color: #888;
}

.badge-closed {
    font-size: 0.75rem;
    background-color: #fbe9e7; /* Rouge/Orange très doux */
    color: #c5221f;
    padding: 2px 8px;
    border-radius: 12px;
    font-weight: 600;
    text-transform: uppercase;
}

/* ==========================================================================
   ZONE DES BOUTONS D'ACTIONS RAPIDES (APPEL & GPS)
   ========================================================================== */

.info-quick-actions {
    display: flex;
    flex-direction: column;
    gap: 10px; /* Espace entre les deux boutons */
    width: 100%;
    margin-top: 5px;
}

/* Base commune des boutons rapides */
.quick-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 15px;
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none !important;
    border-radius: 4px;
    transition: all 0.2s ease;
    text-align: center;
    box-sizing: border-box;
}

.quick-btn .btn-icon {
    font-size: 1rem;
}

/* Bouton Appeler (Vert Nature) */
.btn-phone-call {
    background-color: #4a6b52 !important;
    color: #ffffff !important;
    border: 1px solid #4a6b52;
}

.btn-phone-call:hover {
    background-color: #2e4433 !important;
    border-color: #2e4433;
}

/* Bouton Itinéraire (Gris Ardoise) */
.btn-gps-nav {
    background-color: #36454f !important;
    color: #ffffff !important;
    border: 1px solid #36454f;
}

.btn-gps-nav:hover {
    background-color: #1c252a !important;
    border-color: #1c252a;
}

/* Ajustement mobile : mise côte à côte si l'écran est très petit */
@media (max-width: 480px) {
    .info-quick-actions {
        flex-direction: row;
    }
    .quick-btn {
        flex: 1;
        font-size: 0.75rem;
        padding: 10px 5px;
        gap: 5px;
    }
}

/********************************** front-page *****************************************/
/* ==========================================================================
   PAGE D'ACCUEIL : BLOCS DE CATÉGORIES SUPERPOSÉS
   ========================================================================== */

/* Espacement entre chaque grand bloc vertical de catégorie */
.home-category-block {
    background: #ffffff;
    border: 1px solid #dfd7ca;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 30px; /* Crée le vide vertical entre les blocs de rayons */
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.01);
}

/* En-tête de chaque bloc (Titre à gauche, Bouton à droite) */
.home-category-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid #dfd7ca;
    padding-bottom: 12px;
    margin-bottom: 20px;
    flex-wrap: wrap;
    gap: 10px;
}

.home-category-title {
    font-size: 1.2rem !important;
    color: #1a3322 !important; /* Vert chasse profond */
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0 !important;
    font-weight: 700;
}

/* Bouton "Voir tout le rayon" (Gris ardoise discret) */
.home-category-more-btn {
    font-size: 0.8rem;
    color: #36454f !important;
    text-decoration: none !important;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 6px 12px;
    border: 1px solid #36454f;
    border-radius: 4px;
    transition: all 0.2s ease;
}

.home-category-more-btn:hover {
    background-color: #36454f;
    color: #ffffff !important;
}

/* Ajustement pour l'accueil : le bouton "Voir" de la ligne est plus compact */
.home-category-block .product-btn {
    padding: 6px 14px;
    font-size: 0.8rem;
}

.home-category-block .product-meta {
    flex: 0 0 138px; /* Plus étroit pour l'accueil */
}

@media (min-width: 910px) {
    body.home .store-home-container {
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-start !important;
        justify-content: space-between !important;
        width: 100% !important;
        max-width: 1200px;
        margin: 0 auto;
        gap: 40px;
    }

    body.home #primary.content-area {
        flex: 0 0 66% !important;
        max-width: 66% !important;
        width: 66% !important;
        float: none !important;
    }

    body.home #secondary.sidebar {
        flex: 0 0 25% !important;
        max-width: 25% !important;
        width: 25% !important;
        float: none !important;
        margin-left: 0 !important;
        margin-top: 0 !important;
    }
}


/***********************************carousel home page *******************************************/
/* ==========================================================================
   CARROUSEL BANNIÈRE AUTOMATIQUE EN CSS PURE
   ========================================================================== */

/* --- CONFIGURATION GLOBALE & TYPOGRAPHIE --- */
@import url('https://googleapis.com');

.store-hero-banner-inner {
    position: relative;
    width: 100%;
    min-height: 70vh; /* S'adapte élégamment à l'écran */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px;
    box-sizing: border-box;
    overflow: hidden;
    background-image: url('https://unsplash.com'); /* Image d'ambiance tissu/mode neutre */
    background-size: cover;
    background-position: center;
    border-radius: 4px; /* Léger arrondi haut de gamme */
}

/* --- OVERLAY RAFFINÉ (Effet de voile sombre pour lisibilité) --- */
.store-hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(28, 25, 23, 0.75) 0%, rgba(44, 40, 36, 0.4) 100%);
    z-index: 1;
}

/* --- CONTENU --- */
.store-hero-content {
    position: relative;
    z-index: 2;
    max-width: 650px;
    text-align: center;
    color: #FAFAF9; /* Blanc cassé soyeux */
    padding: 20px;
}

/* --- TITRE PRINCIPAL (Style Haute Couture) --- */
.store-hero-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: 3.5rem;
    font-weight: 400;
    line-height: 1.2;
    margin-bottom: 20px;
    letter-spacing: 1px;
    animation: fadeInDown 1.2s ease-out;
}

/* --- SOUSTITRE --- */
.store-hero-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.1rem;
    font-weight: 300;
    line-height: 1.8;
    color: #E7E5E4; /* Gris chaud clair */
    letter-spacing: 0.5px;
    margin-bottom: 0;
    text-transform: uppercase;
    font-size: 0.85rem; /* Style éditorial */
    border-top: 1px solid rgba(214, 211, 209, 0.3);
    padding-top: 20px;
    display: inline-block;
    animation: fadeInUp 1.2s ease-out;
}

/* --- ANIMATIONS SUBTILES --- */
@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* --- S'ADAPTER AUX ÉCRANS MOBILES --- */
@media (max-width: 768px) {
    .store-hero-banner-inner {
        min-height: 50vh;
        padding: 20px;
    }
    .store-hero-title {
        font-size: 2.2rem;
    }
    .store-hero-subtitle {
        font-size: 0.75rem;
    }
}

/* ==========================================================================
   SOUS-MENU D'ACCUEIL STYLE CARTES INDÉPENDANTES (PREMIUM)
   ========================================================================== */

/* Conteneur global transparent (supprime l'ancienne boîte unie) */
.store-home-sub-navigation {
    background: transparent !important;
    padding: 0 !important;
    /*margin-bottom: 25px; /* Écart parfait avant la bannière fixe */
	margin-top: 25px; /* Écart parfait avant la bannière fixe */
	margin-left: 75px; /* Écart parfait avant la bannière fixe */
    width: 48%;
}

/* Grille alignant les boutons de navigation */
.home-sub-menu-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap;
    gap: 12px; /* Espace physique qui sépare chaque bouton */
}

/* Chaque li devient un bouton / item indépendant */
.home-sub-menu-list li {
    margin: 0 !important;
    padding: 0 !important;
    display: block;
}

/* Style de base de chaque Item du menu */
.home-sub-menu-list li a {
    display: inline-block;
    background-color: #ffffff !important; /* Fond blanc pur assorti à vos fiches produits */
    color: #36454f !important; /* Texte Gris Ardoise */
    text-decoration: none !important;
	font-family: 'Dalek', 'Cinzel', 'Georgia', serif;/* Remplacez par votre police */
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 10px 10px; /* Volume interne confortable du bouton */
    border: 1px solid #dfd7ca; /* Bordure fine beige sablé */
    border-radius: 6px; /* Arrondi raccord avec vos blocs de catégories */
    box-shadow: 2px 2px #dfd7ca; /* Ombre très douce et moderne */
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
    box-sizing: border-box;
}

/* ==========================================================================
   GESTION DU SURVOL (HOVER EFFECT)
   ========================================================================== */
.home-sub-menu-list li a:hover {
    transform: translateY(-2px); /* Effet d'élévation / soulèvement léger */
    box-shadow: 1px solid #dfd7ca; /* L'ombre devient plus profonde et adopte une légère lueur vert chasse */
    border-color: #4a6b52; /* La bordure s'illumine en vert */
    color: #4a6b52 !important; /* Le texte passe en vert chasse */
}

/* ==========================================================================
   GESTION DE LA PAGE ACTIVE (CURRENT PAGE)
   ========================================================================== */
.home-sub-menu-list li.current-menu-item a {
    background-color: #4a6b52 !important; /* Le bouton actif devient entièrement Vert Chasse */
    color: #ffffff !important; /* Le texte passe en blanc pur */
    border-color: #4a6b52;
    /*box-shadow: 0 4px 12px rgba(74, 107, 82, 0.2);*/
	box-shadow: 1px solid #dfd7ca !important;
}

/* Animation douce lors du clic physique sur le bouton */
.home-sub-menu-list li a:active {
    transform: translateY(0);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}

/* ==========================================================================
   ADAPTATION RESPONSIVE (MOBILES)
   ========================================================================== */
@media (max-width: 600px) {
    .home-sub-menu-list {
        justify-content: center; /* Centre les cartes sur l'écran du smartphone */
        gap: 8px;
    }
    
    .home-sub-menu-list li a {
        font-size: 0.75rem;
        padding: 8px 14px; /* Un peu plus compact sur mobile pour éviter les retours à la ligne brutaux */
    }
}


/* ==========================================================================
   ALIGNEMENT STRICT : LOGO À GAUCHE, TEXTE À DROITE
   ========================================================================== */

/* Conteneur parent global de la Zone 1 */
.header-store-branding {
    display: flex !important;
    flex-direction: row !important; /* Force l'alignement en ligne horizontal */
    align-items: center !important;  /* Centre verticalement le logo et le texte */
    justify-content: flex-start !important; /* Aligne le tout vers la gauche du header */
    gap: 15px !important; 
	width: 22%;           /* Écart de 15px entre le logo et le texte */
}

/* Bloc contenant le logo circulaire */
.store-logo-left-container {
    flex-shrink: 0; /* Empêche le logo de s'écraser */
    display: flex;
    align-items: center;
}

.store-logo-left-container img {
    height: 110px !important;       /* Hauteur fixe pour le header */
    width: 100px !important;        /* Largeur identique pour un rond parfait */
    max-width: 100px !important;
    border-radius: 50% !important; /* Force la forme circulaire */
    object-fit: contain !important;
    display: block !important;
}

/* Bloc contenant les textes à droite du logo */
.store-text-right-branding {
    display: flex !important;
    flex-direction: column !important; /* Empile le titre au-dessus du sous-titre */
}

.store-text-right-branding a {
    text-decoration: none !important;
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important; /* Aligne les textes vers la gauche */
}

.brand-main {
    font-size: 1.5rem;
    font-weight: 800;
    color: #1a3322 !important; /* Vert forêt Artémis */
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1.1;
}

.brand-sub {
    font-size: 0.8rem;
    font-weight: 600;
    color: #36454f !important; /* Gris ardoise technique */
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-top: 3px;
}

/* ==========================================================================
   ADAPTATION SMARTPHONE (RESPONSIVE)
   ========================================================================== */
@media (max-width: 768px) {
    /* Maintient l'alignement horizontal même sur mobile pour éviter un menu trop haut */
    .header-store-branding {
        flex-direction: row !important;
        justify-content: center !important; /* Centre l'ensemble [Logo + Texte] sur mobile */
        width: 100%;
    }
    .store-logo-left-container img {
        height: 45px !important;
        width: 45px !important;
        max-width: 45px !important;
    }
    .brand-main {
        font-size: 1.2rem;
    }
    .brand-sub {
        font-size: 0.7rem;
    }
}

/* Style pour le titre principal : ARTÉMIS */
.logo-artemis-titre {
    font-family: 'Cinzel', 'Trajan Pro', 'Georgia', serif;
    color: #123F2A; /* Le vert forêt profond du logo */
    font-size: 24px; /* À ajuster selon vos besoins */
    font-weight: 700; /* Style très gras */
    text-transform: uppercase;
    letter-spacing: 0.05em;
    line-height: 1;
    margin-bottom: 5px;
    text-align: center;
}

/* Style pour le sous-titre : CHASSE, PÊCHE & LOISIRS */
.logo-artemis-sub {
    font-family: 'Dalek', 'Cinzel', 'Georgia', serif;
    color: #9C7D46; /* L'or chaud du logo */
    font-size: 12px; /* À ajuster selon vos besoins */
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.12em; /* Lettres plus espacées comme sur l'image */
    text-align: center;
}

/* 1. On donne une hauteur et une référence au bloc extérieur (parent) */


/* On force le conteneur principal à occuper de l'espace et à utiliser CSS Grid */
.store-slogan {
    display: grid !important;
    align-content: center !important;  /* Aligne verticalement au centre au niveau moderne */
    justify-content: center !important; /* Aligne horizontalement */
    justify-items: center !important;
    min-height: 23vh !important;       /* Force le bloc à faire au moins la moitié de l'écran en hauteur */
    height: auto !important;
    margin: 0 auto !important;
    padding: 0px 15px 0px 15px !important
}

/* On s'assure qu'aucun sous-conteneur interne de WordPress ne vient casser le centrage */
.store-slogan > * {
    display: block !important;
    margin: 0 auto !important;
    text-align: center !important;
}

/* Force l'alignement du contenu de la carte produit vers le haut */
.search-results .products.row-div  {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important; /* Aligne le contenu en haut */
    align-items: stretch !important;
}

/* Positionne le bloc de détails (titre, prix) directement sous l'image */
.search-results .products.row-div  .product-details {
    min-height: 110px !important;
    vertical-align: top !important;
    text-align: left !important; /* Ou center selon votre design d'hier */
}


/* 1. Réduire la largeur du conteneur parent principal */
.boutique_ {
    max-width: 900px !important; /* Réduit la largeur globale (ajustez selon vos besoins) */
    margin: 0 auto !important;   /* Centre le conteneur réduit sur l'écran */
    padding: 0 20px !important;  /* Empêche les bords de coller sur tablette */
    clear: both !important;
}

/* 2. Forcer le listing interne à s'afficher sur deux colonnes strictes */
.produits_colonnes {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important; /* 2 colonnes égales */
    gap: 25px !important; /* Espace régulier entre les deux blocs de produits */
    width: 100% !important;
    margin: 20px 0 !important;
    padding: 0 !important;
    clear: both !important;
}

/* 3. Sécurité Responsive : Passage sur une colonne sur mobile */
@media (max-width: 600px) {
    .produits_colonnes {
        grid-template-columns: 1fr !important; /* Ré-empile les produits sur un seul bloc */
        gap: 20px !important;
    }
}


/* ==========================================
   STYLE & HOVER SUR LE WIDGET PROMO CPT
   ========================================== */

/* Structure de base des éléments de la liste */
#custom_cpt_promo_widget-2 .cpt-widget-item,
.widget_custom_cpt_promo_widget .cpt-widget-item {
    padding: 8px;
    border-radius: 8px;
    background-color: transparent;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1); /* Transition ultra fluide */
}

/* 1. Effet au survol sur toute la ligne du produit */
#custom_cpt_promo_widget-2 .cpt-widget-item:hover,
.widget_custom_cpt_promo_widget .cpt-widget-item:hover {
    background-color: #ffffff; /* Fond blanc propre */
    transform: translateY(-2px); /* Léger soulèvement moderne */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); /* Ombre douce de relief */
}

/* 2. Animation de la photo (Zoom léger) */
#custom_cpt_promo_widget-2 .cpt-widget-thumb img,
.widget_custom_cpt_promo_widget .cpt-widget-thumb img {
    transition: transform 0.4s ease;
}

#custom_cpt_promo_widget-2 .cpt-widget-item:hover .cpt-widget-thumb img,
.widget_custom_cpt_promo_widget .cpt-widget-item:hover .cpt-widget-thumb img {
    transform: scale(1.1); /* Zoom de 10% sur l'image */
}

/* 3. Changement de couleur du titre au survol */
#custom_cpt_promo_widget-2 .cpt-widget-title,
.widget_custom_cpt_promo_widget .cpt-widget-title {
    transition: color 0.2s ease;
}

#custom_cpt_promo_widget-2 .cpt-widget-item:hover .cpt-widget-title,
.widget_custom_cpt_promo_widget .cpt-widget-item:hover .cpt-widget-title {
    color: #e14d43 !important; /* Le titre prend la couleur rouge de la promo */
}

/* 4. Animation discrète du badge promo lors du survol */
#custom_cpt_promo_widget-2 .cpt-widget-item:hover .badge-promo-widget,
#custom_cpt_promo_widget-2 .cpt-widget-item:hover .badge-promo-floating {
    transform: scale(1.05);
    background-color: #c93b32 !important; /* Devient un chouïa plus foncé */
}

/* ==========================================
   STYLE & HOVER SUR LE WIDGET PRODUCTS/FEATURED
   ========================================== */

/* Structure de base des éléments de la liste */
#custom_cpt_products_widget-2 .cpt-widget-item,
.widget_custom_cpt_products_widget .cpt-widget-item {
    padding: 8px;
    border-radius: 8px;
    background-color: transparent;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* 1. Effet au survol sur toute la ligne du produit */
#custom_cpt_products_widget-2 .cpt-widget-item:hover,
.widget_custom_cpt_products_widget .cpt-widget-item:hover {
    background-color: #ffffff; /* Fond blanc propre */
    transform: translateY(-2px); /* Léger soulèvement moderne */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); /* Ombre douce de relief */
}

/* 2. Animation de la photo (Zoom léger) */
#custom_cpt_products_widget-2 .cpt-widget-thumb img,
.widget_custom_cpt_products_widget .cpt-widget-thumb img {
    transition: transform 0.4s ease;
}

#custom_cpt_products_widget-2 .cpt-widget-item:hover .cpt-widget-thumb img,
.widget_custom_cpt_products_widget .cpt-widget-item:hover .cpt-widget-thumb img {
    transform: scale(1.1); /* Zoom de 10% sur l'image */
}

/* 3. Changement de couleur du titre au survol (Couleur Distinctive) */
#custom_cpt_products_widget-2 .cpt-widget-title,
.widget_custom_cpt_products_widget .cpt-widget-title {
    transition: color 0.2s ease;
}

#custom_cpt_products_widget-2 .cpt-widget-item:hover .cpt-widget-title,
.widget_custom_cpt_products_widget .cpt-widget-item:hover .cpt-widget-title {
    color: #ffb100 !important; /* Couleur Or/Jaune chaleureuse pour le "Featured" */
}

/* ==========================================
   ANIMATION FADE-IN POUR LES WIDGETS CPT
   ========================================== */

/* 1. Définition de l'animation */
@keyframes widgetFadeInUp {
    from {
        opacity: 0;
        transform: translateY(15px); /* Démarre légèrement plus bas */
    }
    to {
        opacity: 1;
        transform: translateY(0); /* Reprend sa position normale */
    }
}

/* 2. Application de l'animation sur la liste des éléments des deux widgets */
#custom_cpt_promo_widget-2 .cpt-widget-item,
#custom_cpt_products_widget-2 .cpt-widget-item,
.widget_custom_cpt_promo_widget .cpt-widget-item,
.widget_custom_cpt_products_widget .cpt-widget-item {
    animation: widgetFadeInUp 0.6s cubic-bezier(0.1, 0.8, 0.25, 1) forwards;
    opacity: 0; /* Reste invisible tant que l'animation n'a pas commencé */
}

/* 3. Effet de cascade (décalage temporel) pour chaque ligne du produit */
.cpt-widget-item:nth-child(1) { animation-delay: 0.1s; }
.cpt-widget-item:nth-child(2) { animation-delay: 0.2s; }
.cpt-widget-item:nth-child(3) { animation-delay: 0.3s; }
.cpt-widget-item:nth-child(4) { animation-delay: 0.4s; }
.cpt-widget-item:nth-child(5) { animation-delay: 0.5s; }

/* ==========================================================================
   BOUTIQUE & ARCHIVES PRODUITS - CONFIGURATION STABLE
   ========================================================================== */

.cpt-shop-wrapper-principal {
    width: 100% !important;
    max-width: 1200px !important;
    margin: 40px auto !important;
    padding: 0 20px !important;
    clear: both !important;
    float: none !important;
    box-sizing: border-box !important;
}

.cpt-shop-content-inner {
    width: 100% !important;
    float: none !important;
    clear: both !important;
}

.cpt-shop-header {
    margin-bottom: 30px !important;
    border-bottom: 1px solid #e2e8f0 !important;
    padding-bottom: 20px !important;
}

.cpt-shop-title {
    font-size: 2.2rem !important;
    color: #0f172a !important;
    margin: 0 !important;
    font-weight: 800 !important;
}

.cpt-shop-description {
    color: #64748b !important;
    margin-top: 8px !important;
    font-style: italic !important;
}

/* Barre de tri */
/* ==========================================================================
   CORRECTIF : BARRE DE TRI FLUIDE ET RESPONSIVE
   ========================================================================== */

.cpt-sorting-bar {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important; /* Permet le retour à la ligne automatique si l'espace manque */
    gap: 20px !important;
    margin-bottom: 30px !important;
    background: #f8fafc !important;
    padding: 16px 20px !important; /* Léger ajout de padding pour respirer */
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

/* Le formulaire qui contient les filtres */
#magasin-sorting-form {
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important; /* Évite l'écrasement sur tablette */
    align-items: center !important;
    gap: 15px !important; /* Espace régulier entre chaque élément du formulaire */
}

/* Groupement inline pour lier chaque Label à son Select */
#magasin-sorting-form label {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #333 !important;
    white-space: nowrap !important; /* Empeche STRICTEMENT le label de se couper sur 2 lignes */
    margin: 0 !important;
}

#magasin-sorting-form select {
    padding: 8px 12px !important;
    font-size: 14px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 6px !important;
    background: #fff !important;
    cursor: pointer !important;
    min-width: 180px !important; /* Donne une largeur minimale propre aux listes */
}

/* ==========================================================================
   RESPONSIVE - ADAPTATION MOBILE
   ========================================================================== */
@media (max-width: 900px) {
    .cpt-sorting-bar {
        flex-direction: column !important;
        align-items: stretch !important; /* Aligne tout au bord gauche/droite */
        gap: 15px !important;
    }

    #magasin-sorting-form {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 12px !important;
    }

    /* Sur mobile, les sélecteurs prennent toute la largeur pour être faciles à cliquer */
    #magasin-sorting-form select {
        width: 100% !important;
    }
}
.cpt-sorting-bar .cpt-count strong {
    color: #007acc !important; /* Utilise la même couleur bleue que vos étiquettes de catégories */
    font-weight: 700 !important;
}


.cpt-sorting-label {
    font-size: 14px !important;
    font-weight: 600 !important;
    margin-right: 10px !important;
    color: #333 !important;
}

.cpt-sorting-select {
    padding: 6px 12px !important;
    font-size: 14px !important;
    border: 1px solid #ccc !important;
    border-radius: 4px !important;
    background: #fff !important;
    cursor: pointer !important;
}
/* Style pour l'affichage du prix TTC */
.cpt-product-price {
    display: flex !important;
    align-items: baseline !important;
    gap: 4px !important;
    margin-bottom: 15px !important; /* Crée un espace propre avant le bouton */
}

.cpt-price-amount {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #10b981 !important; /* Une belle couleur verte émeraude pour le prix */
}

.cpt-price-label {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #94a3b8 !important; /* Un gris discret pour la mention "TTC" */
    text-transform: uppercase !important;
}

/* Layout en grille forcée à 2 colonnes */
.magasin_ {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 30px !important;
    margin: 30px 0 !important;
    padding: 0 !important;
    width: 100% !important;
    clear: both !important;
    box-sizing: border-box !important;
}

/* Cartes produits */
.produits_colonnes {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05) !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Cadre d'image */
.cpt-img-container-inline {
    position: relative !important;
    
    /* 1. Réduction de la largeur à 90% */
    width: 90% !important;  
    
    /* 2. Hauteur compacte ajustée */
    height: 240px !important; 
    
    /* 3. Marges : 15px en haut, auto à gauche/droite pour CENTRER, 0 en bas */
    margin: 15px auto 0 auto !important; 
    
    /* 4. Esthétique : Coins légèrement arrondis pour adoucir l'image isolée */
    border-radius: 6px !important; 
    
    overflow: hidden !important;
    background: #f1f5f9 !important;
}

.cpt-img-link-bg {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

.cpt-no-img {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #94a3b8 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

/* Badges */
.cpt-badge-sale, .cpt-badge-hot {
    position: absolute !important;
    top: 10px !important;
    color: #ffffff !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    padding: 4px 8px !important;
    border-radius: 4px !important;
    line-height: 1 !important;
    z-index: 5 !important;
}

.cpt-badge-sale { left: 10px !important; background: #ef4444 !important; }
.cpt-badge-hot { right: 10px !important; background: #f59e0b !important; }

/* Conteneur des informations textuelles */
.cpt-text-container {
    padding: 16px !important;
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
}

.cpt-tag-cat {
    font-size: 11px !important;
    color: #007acc !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
    margin-bottom: 6px !important;
    display: block !important;
}

/* ==========================================================================
   CORRECTIF : ALIGNEMENT DES PRIX (HAUTEUR DE TITRE FIXE)
   ========================================================================== */

.cpt-card-title-text {
    font-size: 15px !important;
    margin: 0 0 15px 0 !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;
    
    /* 1. On impose une hauteur fixe correspondant exactement à 2 lignes de texte */
    height: 42px !important; 
    
    /* 2. On force le bloc à conserver cette taille même si le texte est court */
    display: block !important; 
    overflow: hidden !important; /* Sécurité : coupe proprement si un titre dépasse 2 lignes */
}


.cpt-card-title-text a {
    color: #1e293b !important;
    text-decoration: none !important;
    display: block !important;
}

/* Alignement du bouton en bas */
.cpt-btn-wrapper {
    margin-top: auto !important;
}
/* ==========================================================================
   BOUTON CHASSE AVEC ANIMATION DE TEXTE (3s)
   ========================================================================== */

.cpt-btn-style {
    display: block !important;
    text-align: center !important;
    /*background: #3e4a36 !important; */
	background: #4a6b52  !important; /* COULEUR DE BASE CHOISIE ICI */
    color: #ffffff !important;
    /* Taille de base : 13px */
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    line-height: 1.2 !important;
    padding: 12px 16px !important;
    font-family: 'Dalek', 'Cinzel';
    /* Animation fluide : applique les changements de font-size sur 3 secondes */
    transition: background 0.25s ease-in-out, 
                box-shadow 0.25s ease-in-out, 
                transform 0.25s ease-in-out, 
                font-size 2s ease-in-out !important; /* <--- ANIMATION 3 SECONDES */        
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08) !important;
}
/* Effet au survol de la souris */
.cpt-btn-style:hover {
    /*background: #c2592a !important; */
	background: #d97736    !important; /* COULEUR DE SURVOL CHOISIE ICI */
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(194, 89, 42, 0.25) !important;
    transform: translateY(-1px) !important;
    
    /* Augmentation de +3px (13px de base + 3px = 16px) */
    font-size: 16px !important; 
}

.cpt-btn-style:active {
    transform: translateY(1px) !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) !important;
}

/*.cpt-btn-style {
    display: block !important;
    text-align: center !important;
    background: #36454f ;/*#0f172a !important;
    color: #ffffff !important;
    padding: 10px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    line-height: 1.2 !important;
	font-family: 'Dalek', 'Cinzel';
	letter-spacing: 2px;
}***/
/* ==========================================================================
   BADGES EN COULEURS D'ORIGINE - TAILLE AJUSTÉE (12px) EN 3D
   ========================================================================== */

.cpt-badge-sale, 
.cpt-badge-hot {
    position: absolute !important;
    top: 12px !important;
    color: #ffffff !important;
    /* Taille légèrement diminuée à 12px */
    font-size: 12px !important;
    font-weight: 900 !important; 
    text-transform: uppercase !important;
    /* Marges internes réduites pour un rendu plus compact */
    padding: 6px 12px !important;
    border-radius: 5px !important;
    line-height: 1 !important;
    letter-spacing: 0.5px !important;
    /* Maintien du relief 3D discret */
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2), 
                inset 0 1px 0 rgba(255, 255, 255, 0.4) !important;
}

/* Badge Promo ! (À gauche) - Rouge Vif ajusté */
.cpt-badge-sale {
    left: 12px !important;
    background: #ef4444 !important;
    border-bottom: 3px solid #b91c1c !important; 
}

/* Badge Top (À droite) - Orange Vif ajusté */
.cpt-badge-hot {
    right: 12px !important;
    background: #f59e0b !important;
    border-bottom: 3px solid #b45309 !important; 
}

/* Tri, Pagination & Erreurs */
.cpt-pagination-box { margin: 40px 0 !important; text-align: center !important; }
.cpt-empty-msg { padding: 20px !important; background: #f8fafc !important; border: 1px dashed #cbd5e1 !important; border-radius: 8px !important; text-align: center !important; color: #64748b !important; }

/* ==========================================================================
   RESPONSIVE (SMARTPHONES)
   ========================================================================== */
@media (max-width: 768px) {
    .magasin_ {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
    .cpt-img-container-inline {
        height: 190px !important;
        margin: 12px auto 0 auto !important; /* Marges légèrement réduites sur mobile */
    }
    .cpt-sorting-bar {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 12px !important;
    }
}

/* ==========================================================================
   FICHE SINGLE PRODUIT COMPLÈTE - STRUCTURE ET STYLES VERROUILLÉS
   ========================================================================== */

.cpt-single-wrapper {
    width: 100% !important;
    max-width: 1200px !important;
    margin: 30px auto !important;
    /*padding: 0 20px !important;*/
    box-sizing: border-box !important;
    clear: both !important;
	
}

.cpt-main-layout-grid {
    display: grid !important;
    grid-template-columns: 7fr 3fr !important;
    gap: 40px !important;
    width: 100% !important;
    align-items: start !important;
}

.cpt-product-card-blank {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 30px !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05) !important;
    box-sizing: border-box !important;
}

.cpt-single-container {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 40px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.cpt-single-media {
    position: relative !important;
    width: 100% !important;
}

.cpt-single-main-img {
    width: 90% !important;
    height: 380px !important;
    margin: 0 auto !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;
    background-color: #f1f5f9 !important;
	box-shadow: 2px 2px #e2e8f0
}

.cpt-single-gallery {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 12px !important;
    margin: 15px auto 0 auto !important;
    width: 90% !important;
}

.cpt-gallery-thumb {
    height: 70px !important;
    background-size: cover !important;
    background-position: center !important;
    border-radius: 6px !important;
    border: 1px solid #cbd5e1 !important;
    cursor: pointer;
}

/* Badges 3D */
.cpt-single-badge {
    position: absolute !important;
    top: 12px !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    padding: 5px 10px !important;
    border-radius: 5px !important;
    line-height: 1 !important;
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.4) !important;
}
.cpt-badge-single-sale { left: 7% !important; background: #ef4444 !important; border-bottom: 3px solid #b91c1c !important; }
.cpt-badge-single-hot { right: 7% !important; background: #f59e0b !important; border-bottom: 3px solid #b45309 !important; }

/* Textes Métas */
.cpt-single-meta { display: flex !important; flex-direction: column !important; width: 100% !important; }
.cpt-single-cat { font-size: 12px !important; color: #4a6b52 !important; text-transform: uppercase !important; font-weight: 700 !important; margin-bottom: 8px !important; letter-spacing: 0.5px !important; }
.cpt-single-title { font-size: 2.2rem !important; color: #0f172a !important; margin: 0 0 12px 0 !important; font-weight: 800 !important; line-height: 1.2 !important; }
.cpt-single-price-box { display: flex !important; align-items: baseline !important; gap: 6px !important; margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px solid #f1f5f9 !important; }
.cpt-single-price-amount { font-size: 30px !important; font-weight: 800 !important; color: #4a6b52 !important; }
.cpt-single-price-label { font-size: 11px !important; font-weight: 700 !important; color: #94a3b8 !important; text-transform: uppercase !important; }
.cpt-single-description { font-size: 15px !important; color: #334155 !important; line-height: 1.7 !important; margin-bottom: 25px !important; margin-top: 25px !important;  }

/* Bloc de Quantité et d'Achat */
.cpt-purchase-block { display: flex !important; flex-wrap: wrap !important; 
	gap: 15px !important; align-items: center !important; 
	margin-bottom: 20px !important; /****padding: 20px 0 !important; /****/
	border-top: 1px solid #f1f5f9 !important; 
	border-bottom: 1px solid #f1f5f9 !important; }
.cpt-qty-selector { display: flex !important; align-items: center !important; border: 1px solid #cbd5e1 !important; border-radius: 6px !important; overflow: hidden !important; height: 46px !important; background: #f8fafc !important; }
.cpt-qty-btn { width: 36px !important; height: 100% !important; background: none !important; border: none !important; font-size: 16px !important; font-weight: 600 !important; color: #64748b !important; cursor: pointer; }
.cpt-qty-btn:hover { background: #e2e8f0 !important; color: #0f172a !important; }
.cpt-qty-input { width: 50px !important; height: 100% !important; border: none !important; border-left: 1px solid #cbd5e1 !important; border-right: 1px solid #cbd5e1 !important; text-align: center !important; font-size: 15px !important; font-weight: 700 !important; color: #0f172a !important; background: #ffffff !important; }
.cpt-action-buttons-group { display: flex !important; flex-direction: column !important; gap: 10px !important; flex-grow: 1 !important; }

/* Boutons Vert Kaki */
.cpt-single-btn { 
	    display: inline-block !important;
    min-height: 4vw;
    text-align: center !important;
    background: #4a6b52 !important;
    color: #ffffff !important;
    font-family: 'Cinzel', 'Trajan Pro', 'Georgia', serif;
    padding: 14px 24px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    border: none !important;
    cursor: pointer;
    transition: background 0.75s ease-in-out !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08) !important;
    line-height: 1.5 !important;
 }
.cpt-single-btn:hover { background: #d97736 !important; }
.cpt-btn-secondary { background: #f8fafc !important; 
	color: #475569 !important;     transition: background 0.75s ease-in-out !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08) !important;
	border: 1px solid #cbd5e1 !important; 
	box-shadow: none !important; }
.cpt-btn-secondary:hover { background: #3c6c9c !important; color: #ffffff !important; }
.cpt-sidebar-right-container .sidebar { float: none !important; width: 100% !important; margin: 0 !important; padding: 0 !important; border: none !important; }
/* ==========================================================================
   CORRECTIF SÉCURITÉ COMPATIBILITÉ WIDGET CUSTOM CPT PROMO
   ========================================================================== */

/* 1. On verrouille la structure de votre widget personnalisé */
.widget_custom_cpt_promo_widget,
.widget_custom_cpt_promo_widget .widget,
.widget_custom,
.widget_custom_cpt_promo_widget ul,
.widget_custom_cpt_promo_widget li {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important; /* Coupe tout ce qui dépasse */
    float: none !important;      /* Annule les anciens flottements */
}

/* 2. On force les titres longs (liens, titres de listes) à aller à la ligne */
.widget_custom_cpt_promo_widget a,
.widget_custom_cpt_promo_widget h2,
.widget_custom_cpt_promo_widget h3,
.widget_custom_cpt_promo_widget h4,
.widget_custom_cpt_promo_widget span,
.widget_custom_cpt_promo_widget div {
    /* FORCE LA COUPURE : Autorise le navigateur à couper au milieu de vos tirets bas (_) */
    word-break: break-all !important; 
    overflow-wrap: break-word !important;
    word-wrap: break-word !important;
    
    /* Autorise le retour à la ligne automatique et annule les lignes bloquées */
    white-space: normal !important; 
    display: inline-block !important; /* Permet un calcul de largeur propre pour la coupure */
    max-width: 100% !important;
}
/* ==========================================================================
   CORRECTIF SÉCURITÉ COMPATIBILITÉ WIDGET CUSTOM CPT PRODUCTS
   ========================================================================== */

/* 1. On verrouille la structure de votre widget de produits personnalisé */
.widget_custom_cpt_products_widget,
.widget_custom_cpt_products_widget .widget,
.widget_custom_cpt_products_widget ul,
.widget_custom_cpt_products_widget li {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important; /* Coupe strictement tout ce qui dépasse */
    float: none !important;
}

/* 2. On force les titres longs à aller à la ligne à l'intérieur du widget */
.widget_custom_cpt_products_widget a,
.widget_custom_cpt_products_widget h2,
.widget_custom_cpt_products_widget h3,
.widget_custom_cpt_products_widget h4,
.widget_custom_cpt_products_widget span,
.widget_custom_cpt_products_widget div {
    /* FORCE LA COUPURE CHIRURGICALE au milieu de vos longs mots avec tirets bas (_) */
    word-break: break-all !important; 
    overflow-wrap: break-word !important;
    word-wrap: break-word !important;
    
    /* Autorise le retour à la ligne automatique */
    white-space: normal !important; 
    /*display: inline-block !important; */
    max-width: 100% !important;
}

/* ==========================================================================
   STYLE GRILLE DES PRODUITS SIMILAIRES (BAS DE PAGE)
   ========================================================================== */
.cpt-related-section { margin-top: 40px !important; border-top: 1px solid #e2e8f0 !important; padding-top: 30px !important; width: 100% !important; clear: both !important; }
.cpt-related-heading { font-size: 1.6rem !important; color: #0f172a !important; font-weight: 800 !important; margin-bottom: 25px !important; }
.cpt-related-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 20px !important; width: 100% !important; }
.cpt-related-card { background: #ffffff !important; border: 1px solid #e2e8f0 !important; border-radius: 10px !important; overflow: hidden !important; display: flex !important; flex-direction: column !important; box-shadow: 0 2px 4px rgba(0,0,0,0.02) !important; }
.cpt-related-img-box { position: relative !important; width: 100% !important; height: 180px !important; background: #f1f5f9 !important; }
.cpt-related-img-link { display: block !important; width: 100% !important; height: 100% !important; background-size: cover !important; background-position: center !important; }
.cpt-related-badge { position: absolute !important; top: 8px !important; font-size: 9px !important; font-weight: 900 !important; color: #ffffff !important; padding: 4px 8px !important; border-radius: 4px !important; text-transform: uppercase !important; box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important; }
.cpt-rel-sale { left: 8px !important; background: #ef4444 !important; border-bottom: 2px solid #b91c1c !important; }
.cpt-rel-hot { right: 8px !important; background: #f59e0b !important; border-bottom: 2px solid #b45309 !important; }
.cpt-related-txt-box { padding: 12px !important; display: flex !important; flex-direction: column !important; flex-grow: 1 !important; }
.cpt-related-title { font-size: 14px !important; font-weight: 600 !important; margin: 0 0 8px 0 !important; line-height: 1.3 !important; }
.cpt-related-title a { color: #1e293b !important; text-decoration: none !important; }
.cpt-related-price { font-size: 15px !important; font-weight: 700 !important; color: #4a6b52 !important; margin-top: auto !important; }

/* Responsive Mobile et Tablettes */
@media (max-width: 950px) {
    .cpt-main-layout-grid { grid-template-columns: 1fr !important; }
    .cpt-product-card-blank { padding: 20px !important; }
    .cpt-single-container { grid-template-columns: 1fr !important; }
    .cpt-single-main-img, .cpt-single-gallery { width: 100% !important; }
    .cpt-badge-single-sale { left: 15px !important; }
    .cpt-badge-single-hot { right: 15px !important; }
    .cpt-purchase-block { flex-direction: column !important; align-items: stretch !important; }
    .cpt-qty-selector { justify-content: center !important; }
    .cpt-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 600px) {
    .cpt-related-grid { grid-template-columns: 1fr !important; }
}
/* ==========================================================================
   1. EFFET VISUEL DE ZOOM DOUX SUR LA GALERIE DU BAS
   ========================================================================== */
.cpt-related-img-box {
    overflow: hidden !important;
}

.cpt-related-img-link {
    transition: transform 0.4s ease-in-out !important;
}

.cpt-related-card:hover .cpt-related-img-link {
    transform: scale(1.08) !important;
}

.cpt-related-title a {
    transition: color 0.25s ease-in-out !important;
}

.cpt-related-card:hover .cpt-related-title a {
    color: #4a6b52 !important; /* Votre Vert Mousse */
}

/* ==========================================================================
   2. BADGE DE RUPTURE DE STOCK EN 3D (GRIS SÉCURITÉ)
   ========================================================================== */
.cpt-badge-out-of-stock {
    position: absolute !important;
    top: 12px !important;
    left: 0vw !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    padding: 5px 10px !important;
    border-radius: 5px !important;
    line-height: 1 !important;
    letter-spacing: 0.5px !important;
    z-index: 5 !important;
    background: #d97706 !important; /* Gris ardoise */
    border-bottom: 3px solid #475569 !important;
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.4) !important;
}
.cpt-badge-in-stock {
    background-color: #22c55e; /* Un beau vert moderne */
    position: absolute !important;
    top: 12px !important;
    left: 0vw !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    padding: 6px 10px !important;
    border-radius: 5px !important;
    line-height: 1.2 !important;
    letter-spacing: 1.25px !important;
    z-index: 5 !important;
    border-bottom: 3px solid #475569 !important;
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.4) !important;
}
.cpt-badge-coming{
	background-color: #265291; /* Un beau vert moderne */
    position: absolute !important;
    top: 12px !important;
    left: 0vw !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    padding: 6px 10px !important;
    border-radius: 5px !important;
    line-height: 1.2 !important;
    letter-spacing: 1.25px !important;
    z-index: 5 !important;
    border-bottom: 3px solid #475569 !important;
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.4) !important;
}
.cpt-single-media .cpt-badge-coming , .cpt-single-media .cpt-badge-in-stock  , 
.cpt-single-media .cpt-badge-out-of-stock , .cpt-single-media   , 
.cpt-single-media    {
	left: 0vw!important;
}
.cpt-badge-sale {
	margin-top: 30px;
}
.cpt-badge-hot {
	margin-top: 0px;
}
/* ==========================================================================
   3. HARMONISATION DE LA PAGINATION AUX COULEURS DE LA CHASSE
   ========================================================================== */
.cpt-pagination-box .nav-links {
    display: flex !important;
    justify-content: center !important;
    gap: 8px !important;
    margin-top: 30px !important;
}

.cpt-pagination-box .nav-links a, 
.cpt-pagination-box .nav-links .page-numbers {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 40px !important;
    height: 40px !important;
    padding: 0 6px !important;
    border-radius: 6px !important;
    border: 1px solid #cbd5e1 !important;
    background: #ffffff !important;
    color: #334155 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: all 0.2s ease-in-out !important;
    box-sizing: border-box !important;
}

/* Page courante (Active) en Vert Mousse Chasse */
.cpt-pagination-box .nav-links .page-numbers.current {
    background: #4a6b52 !important;
    color: #ffffff !important;
    border-color: #4a6b52 !important;
    box-shadow: 0 2px 4px rgba(74, 107, 82, 0.2) !important;
}

/* Pages survolées en Orange Terre Cuite */
.cpt-pagination-box .nav-links a.page-numbers:hover {
    background: #d97736 !important;
    color: #ffffff !important;
    border-color: #d97736 !important;
    box-shadow: 0 2px 4px rgba(217, 119, 54, 0.2) !important;
    transform: translateY(-1px) !important;
}

/* Container Général Inscription Artémis */
.artemis-register-container {
    display: flex;
    justify-content: center;
    padding: 60px 20px;
    background-color: #f4f6f4;
}

.artemis-register-card {
    background: #ffffff;
    padding: 40px;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    max-width: 500px;
    width: 100%;
}

.artemis-register-card h2 {
    color: #2e5a44; /* Vert forêt */
    margin-bottom: 5px;
    font-weight: 700;
}

.artemis-form label {
    font-weight: 600;
    font-size: 14px;
    color: #333;
}

.artemis-form input, .artemis-form select {
    width: 100%;
    padding: 10px 12px;
    margin-top: 5px;
    border: 1px solid #ccc;
    border-radius: 4px;
}

.artemis-form .form-row {
    display: flex;
    gap: 15px;
}

.btn-artemis-submit {
    width: 100%;
    background-color: #2e5a44;
    color: #fff;
    padding: 12px;
    border: none;
    border-radius: 4px;
    font-weight: bold;
    cursor: pointer;
    margin-top: 15px;
    transition: background 0.3s;
}

.btn-artemis-submit:hover {
    background-color: #1e3d2d;
}

.artemis-errors {
    background-color: #ffe6e6;
    color: #d93025;
    padding: 10px 15px;
    border-radius: 4px;
    margin-bottom: 20px;
}
/* Style du bloc des cases à cocher */
.form-group-checkboxes {
    margin: 20px 0;
}

.form-group-checkboxes .block-title {
    display: block;
    font-weight: 600;
    font-size: 14px;
    color: #333;
    margin-bottom: 10px;
}

.checkbox-options {
    display: flex;
    flex-direction: column;
    gap: 8px;
    background-color: #f9fdfa;
    padding: 12px 15px;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
}

.checkbox-item {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    font-size: 14px;
    color: #2e5a44;
    font-weight: 500;
}

.checkbox-item input[type="checkbox"] {
    width: 18px;
    height: 18px;
    accent-color: #2e5a44; /* Vert forêt Artémis */
    cursor: pointer;
}

/* Alignement du bloc d'actions du header */
.header-store-actions {
    display: flex;
    align-items: center;
    gap: 15px;
}

.user-guest-box {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Boutons d'authentification */
.user-auth-btn {
    display: inline-block;
    padding: 7px 14px;
    border-radius: 4px;
    font-size: 0.85rem;
    font-weight: 600;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}

/* Bouton Connexion */
.user-auth-btn.btn-login {
    color: #2e5a44;
    border: 1px solid #2e5a44;
    background-color: transparent;
}

.user-auth-btn.btn-login:hover {
    background-color: #2e5a44;
    color: #ffffff;
}

/* Bouton S'inscrire */
.user-auth-btn.btn-register {
    background-color: #2e5a44;
    color: #ffffff;
    border: 1px solid #2e5a44;
}

.user-auth-btn.btn-register:hover {
    background-color: #1e3d2d;
    border-color: #1e3d2d;
}

/* Utilisateur connecté */
.user-logged-box {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
}

.user-account-welcome {
    font-weight: 600;
    color: #2e5a44;
}

.user-logout-link {
    color: #888;
    text-decoration: none;
    font-size: 12px;
}

.user-logout-link:hover {
    color: #c0392b;
}
/* Bouton d'action à droite */
.header-action-btn {
    display: inline-block;
    background-color: #36454f !important; /* Gris ardoise */
    color: #ffffff !important;
    text-decoration: none !important;
    padding: 9px 20px;
    font-size: 0.85rem;
    font-weight: 600;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: background-color 0.2s ease;
}

.header-action-btn:hover {
    background-color: #1c252a !important; /* Devient plus sombre au survol */
}

/* Layout 3 Colonnes */
.artemis-page-layout-3col {
    display: grid;
    grid-template-columns: 260px 1fr 280px; /* Gauche / Centre / Droite */
    gap: 25px;
    max-width: 1350px;
    margin: 30px auto;
    padding: 0 15px;
    align-items: start;
}

/* Sidebar Gauche Publicités */
.artemis-sidebar-left {
    background: #ffffff;
    border-radius: 8px;
    padding: 15px;
    border: 1px solid #e0e0e0;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

.pub-sidebar-title {
    font-size: 16px;
    color: #2e5a44;
    border-bottom: 2px solid #2e5a44;
    padding-bottom: 8px;
    margin-bottom: 15px;
    text-transform: uppercase;
}

.pub-item-card {
    margin-bottom: 15px;
    border-radius: 6px;
    overflow: hidden;
}

.pub-img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 6px;
    transition: transform 0.2s ease;
}

.pub-img:hover {
    transform: scale(1.02);
}

.pub-placeholder {
    background: #f4f6f4;
    border: 1px dashed #2e5a44;
    color: #2e5a44;
    padding: 20px 10px;
    text-align: center;
    border-radius: 6px;
    font-weight: 600;
}

/* Sidebar Droite Standard */
.artemis-sidebar-right {
    background: #ffffff;
    border-radius: 8px;
    padding: 15px;
    border: 1px solid #e0e0e0;
}

/* Responsive pour Mobiles et Tablettes */
@media (max-width: 992px) {
    .artemis-page-layout-3col {
        grid-template-columns: 1fr; /* Passage sur 1 seule colonne sur petit écran */
    }
    .artemis-sidebar-left {
        order: 2;
    }
    .artemis-main-content {
        order: 1;
    }
    .artemis-sidebar-right {
        order: 3;
    }
}
/* Fixer les contraintes de largeur pour la sidebar droite */
.artemis-sidebar-right {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    overflow: hidden; /* Empêche tout contenu de dépasser du cadre blanc */
}

/* Forcer tous les éléments internes de la sidebar à respecter la largeur du cadre */
.artemis-sidebar-right * {
    box-sizing: border-box;
    max-width: 100% !important;
}

/* Correction spécifique pour les widgets WordPress courants (recherche, formulaires, images, vidéos) */
.artemis-sidebar-right input[type="text"],
.artemis-sidebar-right input[type="search"],
.artemis-sidebar-right select,
.artemis-sidebar-right textarea,
.artemis-sidebar-right img,
.artemis-sidebar-right iframe {
    width: 100% !important;
    max-width: 100% !important;
}

/* Éviter que les longs mots ou liens non coupés ne fassent déborder le texte */
.artemis-sidebar-right .widget,
.artemis-sidebar-right p,
.artemis-sidebar-right li,
.artemis-sidebar-right a {
    overflow-wrap: break-word;
    word-wrap: break-word;
    word-break: break-word;
}

/* 1. Débloquer la largeur maximale imposée par le thème Twenty Sixteen */
.site-content,
#content,
#primary,
.site-inner {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
}

/* 2. Étaler la grille à 3 colonnes sur tout l'écran */
.artemis-page-layout-3col {
    display: grid !important;
    /* Proportions des 3 colonnes : 280px à gauche | 1fr (flexible) au centre | 320px à droite */
    grid-template-columns: 280px 1fr 320px !important; 
    gap: 30px !important;
    width: 100% !important;
    max-width: 100% !important; /* Retire la limite des 1350px */
    margin: 20px 0 !important;
    padding: 0 10px !important;
    box-sizing: border-box !important;
}

/* 3. Ajuster le bloc central pour qu'il prenne tout l'espace étalé */
.artemis-main-content {
    width: 100% !important;
}

.artemis-register-card {
    max-width: 100% !important; /* Permet à la carte de s'étaler dans la colonne centrale */
}

/* 1. Supprimer les marges/paddings du conteneur parent du thème */
.site-content,
#content,
#primary,
.site-inner,
.entry-content {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

/* 2. Réduire la marge globale de la grille à 3 colonnes */
.artemis-page-layout-3col {
    display: grid !important;
    grid-template-columns: 280px 1fr 320px !important;
    gap: 15px !important; /* Espacement réduit entre les 3 blocs */
    width: 100% !important;
    max-width: 100% !important;
    margin: 10px 0 !important;
    padding: 0 10px !important; /* Seulement 10px de marge sur les bords de l'écran */
    box-sizing: border-box !important;
}

/* Container de la Carte Badge Utilisateur */
.artemis-user-badge {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background: #ffffff;
    border: 1px solid #dcdcdc;
    border-radius: 30px; /* Bords très arrondis comme les boutons du menu */
    padding: 6px 16px 6px 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.artemis-user-badge:hover {
    border-color: #2e5a44;
    box-shadow: 0 4px 12px rgba(46, 90, 68, 0.12);
}

/* Pastille Avatar avec Initiales (ex: CK) */
.user-avatar-circle {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2e5a44, #1e3d2e);
    color: #ffffff;
    font-weight: 700;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 0.5px;
}

/* Bloc d'informations texte */
.user-info-wrapper {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.user-welcome-name {
    font-size: 13px;
    font-weight: 700;
    color: #2c3e50;
    line-height: 1.2;
}

/* Liens Mon compte / Déconnexion */
.user-badge-actions {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 2px;
    font-size: 11px;
}

.btn-user-link {
    color: #2e5a44;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.2s;
}

.btn-user-link:hover {
    color: #1e3d2e;
    text-decoration: underline;
}

.btn-user-logout {
    color: #888888;
    text-decoration: none;
    transition: color 0.2s;
}

.btn-user-logout:hover {
    color: #d9534f; /* Devient rouge discret au survol */
}

.dot-sep {
    color: #ccc;
    font-size: 10px;
}
/* ==========================================================================
   Style Espace Client - Factures & Commandes
   ========================================================================== */

.cpl-invoices-wrapper {
    margin-top: 30px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, sans-serif;
}

.cpl-invoices-title {
    margin-bottom: 20px;
    color: #0f172a;
    font-size: 1.5rem;
    font-weight: 700;
}

/* Carte accordion pour chaque facture */
.cpl-invoice-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    margin-bottom: 20px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
    transition: box-shadow 0.2s ease, border-color 0.2s ease;
    overflow: hidden;
}

.cpl-invoice-card:hover {
    border-color: #cbd5e1;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

/* En-tête cliquable */
.cpl-invoice-summary {
    padding: 18px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    background-color: #f8fafc;
    user-select: none;
    list-style: none; /* Cache la flèche HTML native */
}

.cpl-invoice-summary::-webkit-details-marker {
    display: none;
}

.cpl-invoice-info {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
}

.cpl-invoice-title {
    font-size: 1.1rem;
    font-weight: 700;
    color: #1e293b;
    margin: 0;
}

.cpl-invoice-date {
    font-size: 0.9rem;
    color: #64748b;
}

/* Badges de statut */
.cpl-badge {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 50px;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.cpl-badge-payee {
    background-color: #dcfce7;
    color: #166534;
}

.cpl-badge-attente {
    background-color: #fef9c3;
    color: #854d0e;
}

.cpl-badge-default {
    background-color: #f1f5f9;
    color: #475569;
}

/* Prix total et icône */
.cpl-invoice-meta {
    display: flex;
    align-items: center;
    gap: 20px;
}

.cpl-invoice-total {
    font-size: 1.15rem;
    font-weight: 700;
    color: #0f172a;
}

.cpl-toggle-icon {
    font-size: 0.8rem;
    color: #94a3b8;
    transition: transform 0.2s ease;
}

details[open] .cpl-toggle-icon {
    transform: rotate(180deg);
}

/* Panneau de détail (produits) */
.cpl-invoice-details {
    padding: 20px 24px;
    border-top: 1px solid #f1f5f9;
    background-color: #fafafa;
}

.cpl-invoice-details h4 {
    margin: 0 0 12px 0;
    font-size: 0.95rem;
    color: #475569;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Tableau des produits */
.cpl-table {
    width: 100%;
    border-collapse: collapse;
    background: #ffffff;
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid #e2e8f0;
}

.cpl-table th {
    background-color: #f8fafc;
    color: #475569;
    font-size: 0.85rem;
    font-weight: 600;
    text-align: left;
    padding: 10px 16px;
    border-bottom: 1px solid #e2e8f0;
}

.cpl-table td {
    padding: 12px 16px;
    font-size: 0.9rem;
    color: #334155;
    border-bottom: 1px solid #f1f5f9;
}

.cpl-table tr:last-child td {
    border-bottom: none;
}

.cpl-text-right {
    text-align: right;
}

.cpl-no-products {
    margin: 0;
    color: #94a3b8;
    font-style: italic;
}

/* État vide */
.cpl-empty-state {
    text-align: center;
    padding: 40px 20px;
    background: #f8fafc;
    border-radius: 8px;
    border: 1px dashed #cbd5e1;
    color: #64748b;
}

.cpl-empty-state p {
    margin: 0;
}

/* Container global */
.permissions-container {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 20px;
    margin-top: 20px;
}

.permissions-title {
    font-size: 18px;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e2e8f0;
}

/* Grille pour afficher plusieurs permis côte à côte */
.permissions-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
}

/* Carte de permission individuelle */
.permission-card {
    background-color: #f8fafc;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    padding: 15px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.permission-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.permission-number {
    font-weight: bold;
    color: #0f172a;
    font-size: 14px;
}

/* Badges pour distinguer Chasse et Détention */
.badge-type {
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.badge-type.chasse {
    background-color: #dcfce7;
    color: #15803d;
}

.badge-type.detention {
    background-color: #e0f2fe;
    color: #0369a1;
}

.permission-body p {
    margin: 4px 0;
    font-size: 13px;
    color: #475569;
}

/* Container Armes */
.armes-container {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 20px;
    margin-top: 20px;
}

.armes-title {
    font-size: 18px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e2e8f0;
}

.armes-grid {
    display: flex; /********/
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
}

.arme-card {
    background-color: #f8fafc;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.arme-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.arme-badge {
    background-color: #f1f5f9;
    color: #334155;
    border: 1px solid #cbd5e1;
    padding: 4px 8px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
}

.arme-title-text {
    font-weight: bold;
    color: #1e293b;
    font-size: 14px;
}

.arme-body p {
    margin: 4px 0;
    font-size: 13px;
    color: #475569;
}

.arme-body code {
    background-color: #e2e8f0;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 12px;
    color: #0f172a;
}

/* Container de la Sidebar */
.sidebar-promo-widget {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05) !important;
	/*box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05)!important;*/
    font-family: inherit;
}

/* Titre "PROMOTIONS" */
.sidebar-promo-widget .widget-title {
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    color: #0f172a;
    letter-spacing: 0.05em;
    margin-top: 0;
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid #22c55e; /* Votre vert de marque appliqué discrètement */
	width: 100%;
}

/* Liste des produits */
.promo-products-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* L'item produit individuel */
.promo-product-item {
    display: flex!important;
    align-items: center;
    gap: 14px;
    padding-bottom: 16px;
    /*border-bottom: 1px dashed #e2e8f0;*/
	border-bottom: 1px dotted #22c55e; /* Votre vert de marque appliqué discrètement */
    transition: transform 0.2s ease;
	/*box-shadow: 1px 1px 3px 1px #22C500;*/
}

.promo-product-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.promo-product-item:hover {
    transform: translateX(3px);
    border-color: #22c55e; /* Focus vert */
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.15); /* Halo vert transparent */
}

/* Vignette Image */
.product-thumb {
    position: relative;
    width: 70px;
    height: 70px;
    flex-shrink: 0;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-thumb img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    border-radius: 6px;
}

/* Badge "Promo" modernisé sur l'image */
.badge-promo {
    position: absolute;
    top: -6px;
    left: -6px;
    background-color: #ef4444; /* Rouge moderne */
    color: #ffffff;
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    padding: 3px 6px;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(239, 68, 68, 0.3);
    letter-spacing: 0.05em;
}

/* Détails du produit */
.product-details {
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex-grow: 1;
}

/* Titre du produit (plus propre et lisible) */
.product-title {
    font-size: 13px;
    line-height: 1.4;
    font-weight: 600;
    color: #1e293b;
    margin: 0 0 6px 0;
    /* Coupe le texte proprement s'il est trop long */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Prix */
.product-price {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
}

.old-price {
    color: #94a3b8;
    text-decoration: line-through;
    font-size: 11px;
}

.current-price {
    color: #ef4444;
    font-weight: 700;
}
/* =========================================================================
   STYLE DU WIDGET DE RECHERCHE MODERNISÉ
   ========================================================================= */

/* Container global du Widget dans la Sidebar */
.widget_search {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    margin-bottom: 20px;
}

/* Titre du Widget "RECHERCHER" (Harmonisé avec Promotions) */
.widget_search .widget-title {
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    color: #0f172a;
    letter-spacing: 0.05em;
    margin-top: 0;
    margin-bottom: 15px;
    padding-bottom: 12px;
    border-bottom: 2px solid #22c55e; /* Même liseré vert */
}

/* Wrapper de l'input et du bouton */
.search-input-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}

/* Le champ de saisie (Input) */
.modern-search-form .search-field {
    width: 100%;
    padding: 12px 45px 12px 16px; /* Espace à droite pour ne pas chevaucher la loupe */
    font-size: 14px;
    color: #1e293b;
    background-color: #f8fafc; /* Même fond clair que vos formulaires */
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    outline: none;
    transition: all 0.2s ease-in-out;
    box-sizing: border-box;
}

/* Effet de focus très propre */
.modern-search-form .search-field:focus {
    background-color: #ffffff;
    border-color: #22c55e; /* Focus vert */
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.15); /* Halo vert transparent */
}

/* Bouton Soumettre (Positionné à l'intérieur du champ) */
.modern-search-form .search-submit {
    position: absolute;
    right: 4px;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #64748b; /* Gris neutre */
    transition: color 0.2s ease;
}

/* Survol de la loupe */
.modern-search-form .search-submit:hover {
    color: #22c55e; /* Devient verte au survol */
}

/* Icône Loupe SVG */
.modern-search-form .search-icon {
    width: 18px;
    height: 18px;
}
/* Désactiver la loupe ou l'icône par défaut générée par le thème */
.modern-search-form .search-submit::before,
.modern-search-form .search-submit::after {
    display: none !important;
    content: "" !important;
}

/* Supprimer toute image d'arrière-plan ou puce par défaut sur le bouton */
.modern-search-form .search-submit {
    background-image: none !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Masquer le texte de secours pour lecteur d'écran s'il s'affiche aussi */
.modern-search-form .search-submit .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;
    width: 1px;
    word-wrap: normal !important;
}

/* =========================================================================
   Alertes & Notifications Artémis (Centrées)
   ========================================================================= */
.artemis-alert {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 20px 24px;
    border-radius: 12px;
    margin: 0 auto 28px auto;
    max-width: 90%;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

/* Alerte de Succès & Inscription (Vert Artémis #22c55e) */
.artemis-alert-success {
    background-color: #f0fdf4;
    border: 1px solid #bbf7d0;
    color: #166534;
}

.artemis-alert-success .artemis-alert-icon {
    color: #22c55e;
    background-color: #dcfce7;
}

.artemis-alert-success .artemis-alert-content strong {
    color: #15803d;
}

/* Alerte d'Erreur */
.artemis-alert-error {
    background-color: #fef2f2;
    border: 1px solid #fecaca;
    color: #991b1b;
}

.artemis-alert-error .artemis-alert-icon {
    color: #ef4444;
    background-color: #fee2e2;
}

.artemis-alert-error .artemis-alert-content strong {
    color: #b91c1c;
}

/* Icône ronde élégante */
.artemis-alert-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    margin-bottom: 12px;
    flex-shrink: 0;
}

/* Contenu du message */
.artemis-alert-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    font-size: 14px;
    line-height: 1.5;
}

.artemis-alert-content strong {
    font-size: 16px;
    font-weight: 700;
}

.artemis-alert-content span {
    display: block;
    font-weight: 400;
}