/*!
Theme Name: WP Bootstrap Starter
Theme URI: https://them.es/starter
Author: Tommy
Author URI: https://prescilliajosse.fr/
Description: Reflexologie
Version: 3.6.1
Requires at least: 5.0
Tested up to: 6.8
Requires PHP: 7.2
License: GPL version 2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0
Tags: custom-background, custom-colors, featured-images, flexible-header, microformats, post-formats, rtl-language-support, theme-options, translation-ready, accessibility-ready
Text Domain: wp-bootstrap-starter
*/

/* Don't overwrite this file. Compile "/assets/main.scss" to "/build/main.css" */

/* From http://codex.wordpress.org/CSS */

.alignnone {
	margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
	display: block;
	margin: 5px auto 5px auto;
}

.alignright {
	float: right;
	margin: 5px 0 20px 20px;
}

.alignleft {
	float: left;
	margin: 5px 20px 20px 0;
}

a img.alignright {
	float: right;
	margin: 5px 0 20px 20px;
}

a img.alignnone {
	margin: 5px 20px 20px 0;
}

a img.alignleft {
	float: left;
	margin: 5px 20px 20px 0;
}

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

.wp-caption {
	max-width: 96%; /* Image does not overflow the content area */
	padding: 5px 3px 10px;
	text-align: center;
}
.wp-caption.alignnone {
	margin: 5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin: 5px 20px 20px 0;
}
.wp-caption.alignright {
	margin: 5px 0 20px 20px;
}
.wp-caption img {
	border: 0 none;
	height: auto;
	margin: 0;
	max-width: 98.5%;
	padding: 0;
	width: auto;
}
.wp-caption p.wp-caption-text {
	font-size: 11px;
	line-height: 17px;
	margin: 0;
	padding: 0 4px 5px;
}

.gallery-item {
	display: inline-block;
	text-align: left;
	vertical-align: top;
	width: 50%;
}

.gallery-item a,
.gallery-item a:hover,
.gallery-item a:focus {
	-webkit-box-shadow: none;
	box-shadow: none;
	background: none;
	display: inline-block;
	max-width: 100%;
}

.gallery-item a img {
	display: block;
	-webkit-transition: -webkit-filter 0.2s ease-in;
	transition: -webkit-filter 0.2s ease-in;
	transition: filter 0.2s ease-in;
	transition: filter 0.2s ease-in, -webkit-filter 0.2s ease-in;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.gallery-item a:hover img,
.gallery-item a:focus img {
	-webkit-filter: opacity(60%);
	filter: opacity(60%);
}

.gallery-caption {
	display: block;
	text-align: left;
	padding: 0 10px 0 0;
	margin-bottom: 0;
}

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

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

.gallery-columns-3 .gallery-item {
	max-width: 33%;
}

.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-columns-6 .gallery-caption,
.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
	display: none;
}

.bypostauthor {
	font-weight: bold;
}

/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}


/*
Theme: WP Bootstrap Starter – CSS corrigé pour Bootstrap 5
*/

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
body { margin: 0; -webkit-font-smoothing: auto; }
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;}
a:active,a:hover{outline:0;}
dfn{font-style:italic;}
mark{background:#ff0;color:#000;}
small{font-size:80%;}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}
sup{top:-.5em;} sub{bottom:-.25em;}
img{border:0; height:auto; max-width:100%;}
svg:not(:root){overflow:hidden;}
figure{margin:1em 2.5rem;}
hr{box-sizing:content-box;height:0;}
button{overflow:visible;}
button,select{text-transform:none;}
button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer;}
button[disabled],html input[disabled]{cursor:default;}
button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0;}
input{line-height:normal;}
input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0;}
input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto;}
input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none;}
fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:.35em .625em .75em;}
legend{border:0;padding:0;}
textarea{overflow:auto;}
optgroup{font-weight:bold;}
table{border-collapse:collapse;border-spacing:0;}
td,th{padding:0;}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
h1,h2,h3,h4,h5,h6{font-family:'Quicksand',sans-serif!important;clear:both;color:#333333;margin:10px 0;}
h1{font-size:2.5rem;line-height:3rem;font-weight:800;}
h2{font-size:1.4rem;line-height:1.8rem;font-weight:600;}
h3{font-size:1.2rem;line-height:1.6rem;}
h4{font-size:0.9rem;line-height:1.4rem;}
h5{font-size:.7rem;line-height:0.9rem;}
p{font-family:'Quicksand',sans-serif!important;margin-bottom:.5em;color:#333333!important;}
h1.entry-title{font-size:1.31rem;border-bottom:1px solid #ee7279;}
h2.entry-title{border-bottom:1px solid #ee7279;}
h3.widget-title{font-size:1.2rem;}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
body{background:#fafafa;}
figure{margin:1em 0;}
table{margin:0 0 1.5em;width:100%;}

/*--------------------------------------------------------------
# Navigation (header)
--------------------------------------------------------------*/
header#masthead{margin-bottom:0;background-color:transparent;}
/* BS5: .navbar-brand EST le lien */
.navbar-brand{
  font-size:1.1rem; text-decoration:none; color:inherit; font-weight:700;
}
#page-sub-header{position:relative;padding-top:5rem;padding-bottom:0;text-align:center;font-size:1.25rem;background-size:cover!important;}
body:not(.theme-preset-active) #page-sub-header h1{line-height:1.6;font-size:4rem;color:#183F7C;margin:0 0 1rem;border:0;padding:0;}
#page-sub-header p{margin-bottom:0;line-height:1.4;font-size:1.25rem;font-weight:300;}
body:not(.theme-preset-active) #page-sub-header p{color:#183F7C;}
a.page-scroller{color:#333;font-size:2.6rem;display:inline-block;margin-top:2rem;}

@media (min-width:768px){
  body:not(.theme-preset-active) #page-sub-header h1{font-size:3.75rem;}
  body:not(.theme-preset-active) #page-sub-header{font-size:1.25rem;}
}
@media (min-width:992px){#page-sub-header p{max-width:43rem;margin:0 auto;}}

/* Menus (BS5) */
#masthead nav{padding-left:0;padding-right:0;}
/* Couleur liens nav */
.nav-link{
  font-family:'Quicksand',sans-serif!important;color:#333333!important;font-weight:900!important;
  font-size:.9em!important;margin:0 .5em;transition:.35s;text-transform:uppercase;
}
.nav-link:hover{color:#41d6c0!important;transition:.35s;transform:scale(1.05);}

.navbar{background-color:#ffffff!important;}
.navbar-white .nav-link{color:#333333!important;}
.navbar-white .nav-link:hover{color:#41d6c0!important;}

.navbar-dark .navbar-toggler{color:#ffffff!important;border-color:transparent!important;opacity:1!important;}
.navbar-white .navbar-toggler{color:#ee7279!important;border-color:transparent!important;opacity:1!important;}
.navbar-light .navbar-toggler-icon{
  z-index:7!important;
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(2,2,2, 0.9)' stroke-width='3' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E")!important;
}

/* Dropdowns */
.dropdown-menu{background-color:#ffffff!important;border-radius:8px!important;border:0;min-width:240px;}
.dropdown-item{
  background-color:#ffffff!important;font-family:'Quicksand',sans-serif!important;line-height:1.3em!important;
  color:#333333!important;font-weight:900!important;font-size:.9em!important;text-transform:uppercase!important;margin-top:15px!important; transition:.35s;
}
.dropdown-item:hover{color:#41d6c0!important;transition:.35s;}
/* BS5: état ouvert = .show */
.dropdown .show>.dropdown-menu{display:block; display: block; border-color: #ee7279; box-shadow: none;}
.dropdown-menu .dropdown-toggle::after{
  border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid;
  vertical-align:.255em;content:""}

.dropdown-divider{border-top-color:#333333!important;opacity:0.2;}

@media (max-width:991.98px){
  .navbar-collapse{background-color:#fff!important; /* height:100vh!important; si effet panneau plein écran */}
  .dropdown-item{font-size:1.5em!important;margin-top:15px;}
  .nav-link{font-size:1.5em!important;line-height:2.5em;margin:15px;}
}

/* Retirés: .navbar-toggle .icon-bar (BS3) / .nav > li (BS3) */

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
.screen-reader-text{clip:rect(1px,1px,1px,1px);position:absolute!important;height:1px;width:1px;overflow:hidden;word-wrap:normal!important;}
.screen-reader-text:focus{
  background-color:#f1f1f1;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);
  clip:auto!important;color:#21759b;display:block;font-size:.875rem;font-weight:700;height:auto;left:.313rem;line-height:normal;
  padding:.938rem 1.438rem .875rem;text-decoration:none;top:.313rem;width:auto;z-index:100000;
}
#content[tabindex="-1"]:focus{outline:0;}

/*--------------------------------------------------------------
# Alignments (compat)
--------------------------------------------------------------*/
.text-left{ text-align:start; }   /* BS5 équivalent */
.text-right{ text-align:end; }
.alignleft{display:inline;float:left;margin-right:1.5em;}
.alignright{display:inline;float:right;margin-left:1.5em;}
.aligncenter{clear:both;display:block;margin-left:auto;margin-right:auto;}
a img.alignright{float:right;margin:.313rem 0 1.25rem 1.25rem;}
a img.alignnone{margin:.313rem 1.25rem 1.25rem 0;}
a img.alignleft{float:left;margin:.313rem 1.25rem 1.25rem 0;}
a img.aligncenter{display:block;margin-left:auto;margin-right:auto;}
.wp-caption.alignnone{margin:.313rem 1.25rem 1.25rem 0;}
.wp-caption.alignleft{margin:.313rem 1.25rem 1.25rem 0;}
.wp-caption.alignright{margin:.313rem 0 1.25rem 1.25rem;}

/*--------------------------------------------------------------
# Widgets / Misc
--------------------------------------------------------------*/
.widget{margin:0 0 1.5em;font-size:.875rem;}
.widget select{max-width:100%;}
.widget_search .search-form input[type="submit"]{display:none;}
.half-rule{width:6rem;margin:2.5rem 0;}
.widget_categories .nav-link{display:inline-block;}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
#content.site-content{padding-bottom:3.75rem;padding-top:4.125rem;}
.sticky .entry-title::before{content:'\f08d';font-family:"Font Awesome\\ 5 Free";font-size:1.563rem;left:-2.5rem;position:absolute;top:.375rem;font-weight:900;}
.sticky .entry-title{position:relative;}
.single .byline,.group-blog .byline{display:inline;}
.page-content,.entry-content,.entry-summary{margin:1.5em 0 0;}
.page-links{clear:both;margin:0 0 1.5em;}
.page-template-blank-page .entry-content,.blank-page-with-container .entry-content{margin-top:0;}
.post.hentry{margin-bottom:4rem;}
.posted-on,.byline,.comments-link{color:#9a9a9a;}
.entry-title>a{color:inherit;}

/* Comments */
.comment-content a{word-wrap:break-word;}
.bypostauthor{display:block;}
.comment-body .pull-left{padding-right:.625rem;}
.comment-list .comment{display:block;}
.comment-list{padding-left:0;}
.comments-title{font-size:1.125rem;}
.comment-list .pingback{border-top:1px solid rgba(0,0,0,.125);padding:.563rem 0;}
.comment-list .pingback:first-child{border:none;}
/* BS5: .card-block → .card-body */
.comment-content.card-body{padding:20px;}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
.infinite-scroll .posts-navigation,.infinite-scroll.neverending .site-footer{display:none;}
.infinity-end.neverending .site-footer{display:block;}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,.entry-content .wp-smiley,.comment-content .wp-smiley{border:none;margin-bottom:0;margin-top:0;padding:0;}
embed,iframe,object{max-width:100%;}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption{background:#f1f1f1;border:1px solid #f0f0f0;max-width:96%;padding:.313rem .313rem 0;text-align:center;}
.wp-caption img[class*="wp-image-"]{border:0 none;height:auto;margin:0;max-width:100%;padding:0;width:auto;}
.wp-caption .wp-caption-text{font-size:.688rem;line-height:1.063rem;margin:0;padding:.625rem;}
.wp-caption-text{text-align:center;}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery{margin-bottom:1.5em;}
.gallery-item{display:inline-block;text-align:center;vertical-align:top;width:100%;}
.gallery-item .gallery-columns-2{max-width:50%;}
.gallery-item .gallery-columns-3{max-width:33.33333%;}
.gallery-item .gallery-columns-4{max-width:25%;}
.gallery-item .gallery-columns-5{max-width:20%;}
.gallery-item .gallery-columns-6{max-width:16.66667%;}
.gallery-item .gallery-columns-7{max-width:14.28571%;}
.gallery-item .gallery-columns-8{max-width:12.5%;}
.gallery-item .gallery-columns-9{max-width:11.11111%;}
.gallery-caption{display:block;}

/*--------------------------------------------------------------
# WooCommerce (léger)
--------------------------------------------------------------*/
.woocommerce-cart-form .shop_table .coupon .input-text{width:8.313rem!important;}
.variations_form .variations .value>select{margin-bottom:.625rem;}
.woocommerce-MyAccount-content .col-1,.woocommerce-MyAccount-content .col-2{max-width:100%;}

/*--------------------------------------------------------------
# Page Builders
--------------------------------------------------------------*/
.elementor-page article .entry-footer{display:none;}
.elementor-page.page-template-fullwidth #content.site-content{padding-bottom:0;padding-top:0;}
.elementor-page .entry-content{margin-top:0;}
.vc_desktop article .entry-footer{display:none;}
.vc_desktop #content.site-content{padding-bottom:0;padding-top:0;}
.vc_desktop .entry-content{margin-top:0;}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
footer#colophon{font-size:85%;}
body:not(.theme-preset-active) footer#colophon{
  color:#183F7C;background-color:#ffffff;box-shadow:-10px -10px 20px 0 rgb(24 63 121 / 5%);
}
.navbar-dark .site-info{color:#fff;}
.copyright{font-size:.875rem;margin-bottom:0;text-align:center;}
.copyright a,footer#colophon a{color:inherit;}
body{margin-bottom:70px!important;}

@media (max-width:767.98px){
  #masthead .navbar-nav>li>a{padding-bottom:.938rem;padding-top:.938rem;}
}

/*--------------------------------------------------------------
# Media Queries – typographie & helpers
--------------------------------------------------------------*/
@media (max-width:1280px){ html{font-size:95%;} }
@media (max-width:1199.98px){
  .navbar-dark .dropdown-item{color:#fff;}
  .navbar-nav .dropdown-menu{background:#fff;box-shadow:none;border:none;min-width:240px;}
}
@media (max-width:1024px){ html{font-size:90%;} }
@media (max-width:960px){
  html{font-size:85%;}
  body{margin-bottom:160px!important;}
}
@media (max-width:768px){ html{font-size:80%;} }
@media (max-width:480px){ html{font-size:75%;} }

/*--------------------------------------------------------------
# Custom Header / Brand
--------------------------------------------------------------*/
.logo-header-100{max-width:100px!important;}
.logo-header-200{max-width:200px!important;transition:.35s;margin:10px;}
.logo-header-200:hover{filter:brightness(1.15);transition:.35s;}

.navbar-trans,.navbar-trans .nav-link{background:transparent!important;color:#ffffff!important;}
.navbar-trans .imagenoire{display:none!important;}
.navbar-white{color:#006EB7!important;box-shadow:15px 15px 20px 0 rgb(24 63 121 / 5%);}
.navbar-white .imagenoire{display:inline!important;}
.navbar-white .imageblanche{display:none!important;}

/*--------------------------------------------------------------
# Boutons (custom)
--------------------------------------------------------------*/
.btn.btn-default{ /* custom, OK */
  font-family:"Quicksand",sans-serif;min-width:120px!important;background-color:#ee7279!important;color:#fff!important;border:0!important;border-radius:200px !important;
  font-size:1rem!important;font-weight:700!important;text-decoration:none;margin-bottom:0!important;padding:10px!important;transition:.35s;box-shadow:5px 5px 5px 0 rgb(24 63 121 / 5%);
}
.btn.btn-default:hover{background-color:#c35158!important;transition:.35s;box-shadow:0 0 10px 0 rgb(24 63 121 / 10%);}

.btn-prj-primary{
  font-family:"Quicksand",sans-serif;min-width:200px!important;background-color:#ee7279!important;color:#fff!important;border:0!important;border-radius:200px !important;
  font-size:1rem!important;font-weight:700!important;text-decoration:none;margin-bottom:0!important;padding:10px!important;transition:.35s;box-shadow:5px 5px 5px 0 rgb(24 63 121 / 5%);
}
.btn-prj-primary:hover{background-color:#c35158!important;transition:.35s;box-shadow:0 0 10px 0 rgb(24 63 121 / 10%);}

.btn-prj-secondary{
  font-family:"Quicksand",sans-serif;min-width:200px!important;background-color:#41d6c0!important;color:#fff!important;border-radius:200px !important;
  font-size:1rem!important;font-weight:700!important;text-decoration:none;margin-bottom:0!important;padding:10px!important;transition:.35s;box-shadow:5px 5px 5px 0 rgb(24 63 121 / 5%);
}
.btn-prj-secondary:hover{background-color:#429298!important;color:#fff!important;transition:.35s;box-shadow:0 0 10px 0 rgb(24 63 121 / 10%);}

/*--------------------------------------------------------------
# Ninja Forms
--------------------------------------------------------------*/
.nf-form-content .label-above .nf-field-label,
.nf-form-content label{color:#333333!important;font-family:"Quicksand",sans-serif;font-weight:700!important;}
.nf-form-content input:not([type=button]){font-family:"Quicksand",sans-serif;color:#183F79!important;font-weight:700!important;}
.nf-form-fields-required{display:none!important;font-family:"Quicksand",sans-serif;font-weight:700!important;}
.nf-form-content input[type=button]{
  background-color:#006EB7!important;font-family:"Quicksand",sans-serif;color:#fff!important;border:0!important;border-radius:60px!important;
  font-size:1rem!important;font-weight:700!important;text-decoration:none;margin-bottom:0!important;transition:.35s;min-width:200px!important;
}
.nf-form-content input[type=button]:hover{background-color:#333333!important;transition:.35s;}

/*--------------------------------------------------------------
# Custom Utils
--------------------------------------------------------------*/

.rounded-xxl{border-radius:40px!important;}
.rounded-xl{border-radius:30px!important;}
.rounded-l{border-radius:20px!important;}
.rounded-m{border-radius:15px!important;}
.rounded-s{border-radius:5px!important;}
.white-color{color:#ffffff!important;}
.grey-color{color:#bababa!important;}
.dark-grey-color{color:#333333!important;}
.green-color{color:#41d6c0!important;}
.underligner{text-decoration:underline!important;}
.frame-asset-radius{box-shadow:5px 5px 10px 0 rgb(24 63 121 / 5%);border-radius:15px!important;}
.justify-text{text-align:justify!important;}
.extra-bd{font-weight:800!important;} .bd{font-weight:600!important;} .rgl{font-weight:500!important;} .lt{font-weight:300!important;}

.mt-25-negativ{margin-top:-25px!important;}
.mt-35-negativ{margin-top:-35px!important;}
.m-5{margin:5px!important;} .m-10{margin:10px!important;} .m-15{margin:15px!important;}
.ml-15{margin-left:15px;} .ml-25{margin-left:25px;} .mr-15{margin-right:15px;}
.mt-25{margin-top:25px!important;} .mt-50{margin-top:50px;} .mt-75{margin-top:75px;}
.mt-100{margin-top:100px!important;} .mt-125{margin-top:125px;} .mt-150{margin-top:150px;}
.mt-200{margin-top:200px!important;}
.mt-10{margin-top:10px!important;}.mt-15{margin-top:15px!important;}.mt-20{margin-top:20px!important;}
.mb-25{margin-bottom:25px;} .mb-50{margin-bottom:50px!important;} .mb-75{margin-bottom:75px;}
.mb-100{margin-bottom:100px;} .mb-150{margin-bottom:150px !important;} .mb-200{margin-bottom:200px;}
.pt-25{padding-top:25px;} .pt-50{padding-top:50px;} .pt-75{padding-top:75px;} .pt-100{padding-top:100px;}
.pb-25{padding-bottom:25px;} .pb-50{padding-bottom:50px;} .pb-75{padding-bottom:75px;} .pb-100{padding-bottom:100px;}
.p-10{padding:10px;} .p-15{padding:15px;} .p-20{padding:20px;} .p-25{padding:25px;}

.mx-w-300{min-width:300px!important;}
.max-w-400{max-width:400px!important;} .max-w-300{max-width:300px!important;} .max-w-250{max-width:250px!important;}
.max-w-200{max-width:200px!important;} .max-w-100{max-width:100px!important;} .max-w-50{max-width:50px!important;}
.row-height-300{height:300px!important;}
.inline-text{display:inline-block;}
.w-50-logo-footer{width:30px!important;}
.footer-align-left{text-align:left;} .footer-align-right{text-align:right;}
.footer-position-full{position:absolute;width:100%;}

/* IMPORTANT: on NE modifie PAS .col-12 globalement (ça cassait la grille) */

/* Mobile tweaks */
@media (max-width:768px){
  h1{font-size:2rem;} h2{font-size:1.5rem;}
  .max-w-200.max-125-mobile{max-width:125px!important;}
  .mt-100.no-mt-mobile{margin-top:15px!important;}
  .kill-mt-mobile{margin-top:0!important;}
}
@media (max-width:992px){
  .mt-150{margin-top:50px!important;}
  .mt-100{margin-top:50px!important;}
  .mb-100{margin-bottom:50px!important;}
  .mt-125{margin-top:25px!important;}
  .p-25{padding:10px;}
  .mt-50.no-mt-tablet{margin-top:0;}
  .mb-50.no-mb-tablet{margin-bottom:0;}
  .no-ml-tablet{margin-left:auto!important;}
  .flex-992{flex-direction:column;}
  .footer-align-left,.footer-align-right{text-align:center;}
  .center-shortcode-form{width:100%!important;}
  .center-tablet{text-align:center!important;}
  /* NE PAS forcer .row margin auto -> ça cassait la grille, supprimé */
}

.entry-content{min-height:80vh!important;}
.site-content{min-height:82vh!important;}

.font-white-forced{color:#fff;}
.uppercaser{text-transform:uppercase!important;}
.text-virgin{text-transform:none!important;text-decoration:none!important;}

.brightness-1:hover{filter:brightness(.75);transition:.35s;}

.prj-card{
  color:#333333;background-color:#ffffff!important;width:100%!important;height:100%!important;border-radius:15px!important;
  transition:.35s; border: solid 1.6px #f1f1f1;
}
.prj-card:hover{filter:brightness(.99);transition:.35s;border: solid 1.6px #41d6c0;}


.prj-card-green{
  color:#333333;background-color:#abefe2!important;width:100%!important;height:100%!important;border-radius:32px!important;
  transition:.35s !important; max-width: 860px !important;
}
.prj-card-green:hover{filter:brightness(1.02);transition:.35s !important;
}

.prj-team-card{
  color:#333333;background-color:#ffffff!important; width:100%!important;height:100%!important; max-width:250px!important; max-height:450px!important;border-radius:15px!important;transition:.35s;
  border: solid 1.6px #f1f1f1;
}
.prj-team-card:hover{filter:brightness(1.02);transition:.35s;border: solid 1.6px #ee7279;}

.blue-color-1{color:#41d6c0!important;}
.blue-color-2{color:#41d6c0!important;}
.picture-team-card{width:150px!important;height:150px!important;border-radius:15px 15px 0 0!important;}
.font-contact-sm{font-size:.9em!important;}
.no-decoration{text-decoration:none!important;}
.asterisk{font-size:.85rem!important;font-style:italic!important;font-weight:600!important;}
.bloc-text-460{max-width:460px!important;margin:auto!important;}
.bloc-text-640{max-width:640px!important;margin:auto!important;}
.bloc-text-780{max-width:780px!important;margin:auto!important;}
.line-height-25{line-height:25px!important;}
.bright-img:hover{filter:brightness(1.75);transition:.35s;}
.max-height-300 { max-height:300px !important; }
.height-300 { height:300px !important; }
.italic-forced { font-style:italic !important; }
.bg-color-green { background-color:#41d6c0 !important; }
.width-90 { max-width: 90%!important; }
.max-width-160 { max-width: 160px!important; }


/* Spacing util */
.py-6{padding-top:4.5rem;padding-bottom:4.5rem;}

/* Fond doux du hero */
.hero-bg{
  background: radial-gradient(1200px 1200px at 75% 40%, rgba(152, 239, 226, 0.1), transparent 60%),
              linear-gradient(180deg, #E3F9F6 0%, #FFFFFF 100%);
	}

/* Cercle image hero */
.hero-circle{
  width: min(320px, 65vw);
  aspect-ratio: 1/1.2;
  border-radius: 10%;
  overflow: hidden;
  background: #fff;
  box-shadow: 15px 15px 30px rgba(65,214,192,.08);
}

.profil-circle{
  width: min(400px, 65vw);
  aspect-ratio: 1/1;
  border-radius: 100%;
  overflow: hidden;
  background: #fff;
  box-shadow: 15px 15px 30px rgba(65,214,192,.08);
}

/* Petites cartes-badges */
.badge-card{
  background:#fff;border-radius:12px;padding:.6rem .8rem;
  font-size:.9rem; line-height:1.1rem;
}


/* Puces icônes colorées */
.icon-dot{
  width:38px;height:38px;border-radius:10px;
  display:inline-flex;align-items:center;justify-content:center;
}
.icon-dot::before{content:"";width:14px;height:14px;border-radius:6px;background:currentColor;opacity:.9}

/* Couleurs complémentaires */
.text-violet{color:#6f42c1}.bg-violet-subtle{background:rgba(111,66,193,.12)}
.text-pink{color:#d63384}.bg-pink-subtle{background:rgba(214,51,132,.12)}

  .reflex-row .reflex-card{
    position: relative;
    display: block;
    overflow: hidden;
    height: clamp(220px, 28vw, 300px); /* responsive height */
    border-radius: 18px;
    box-shadow: 0 6px 18px rgba(0,0,0,.08);
    transition: transform .25s ease, box-shadow .25s ease;
  }
  .reflex-row .reflex-card:hover{
    transform: translateY(-2px);
    box-shadow: 0 14px 30px rgba(0,0,0,.14);
  }
  .reflex-row .reflex-card img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.02);
    transition: transform .5s ease, filter .5s ease;
    will-change: transform;
  }
  .reflex-row .reflex-card:hover img{
    transform: scale(1.08);
  }
  /* gradient overlay */
  .reflex-row .overlay{
    position:absolute; inset:0;
    background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.55) 100%);
    opacity: 0;
    transition: opacity .35s ease;
  }
  .reflex-row .reflex-card:hover .overlay{ opacity: 1; }

  /* title badge bottom-left */
  .reflex-row .label{
    position:absolute; left: 1.25rem; bottom: 1rem;
    margin: 0;
    color: #fff;
    font-weight: 700;
    font-size: 1.125rem;
    line-height: 1.2;
    text-shadow: 0 2px 8px rgba(0,0,0,.45);
  }


  /* small helper text */
  .reflex-caption{ color:#6c757d; } /* Bootstrap gray-600 */

  .section-pad{padding:4rem 0}
  @media (min-width:992px){.section-pad{padding:5.5rem 0}}
  .soft-card{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:1rem;box-shadow:0 10px 30px rgba(0,0,0,.06)}
  .soft-card-lg{border-radius:1.25rem;box-shadow:0 20px 50px rgba(0,0,0,.10)}
  .ratio-21x9{--bs-aspect-ratio:42.857%}   /* 21:9 visuels panoramiques */
  .muted{color:#6c757d}
  .badge-dot{display:inline-block;width:.5rem;height:.5rem;border-radius:50%;background:currentColor;vertical-align:middle;margin-right:.375rem}
  .cta-dark{background:#0b0b17;color:#e9e9f3}
  .cta-dark .btn-outline-light{border-color:#cfd2ff;color:#e9e9f3}
  .cta-dark .btn-outline-light:hover{background:#e9e9f3;color:#0b0b17}


  /* banner cover 200px */
.banner-wrapper {
  max-height: 200px;           /* hauteur maximale */
  overflow: hidden;            /* cache ce qui dépasse */
}
.banner-wrapper img {
  max-height: 200px;           /* hauteur maximale */
  width: 100%;
  height: 100%;
  object-fit: cover;           /* recadre l'image sans la déformer */
  display: block;
}
  @media (max-width:992px){.banner-wrapper img{max-height: 140px;} } /* hauteur maximale tablet */
  @media (max-width:768px){.banner-wrapper img{max-height: 120px;} } /* hauteur maximale mobile */

/* ——— Cartes services avec overlay ——— */
.svc-card{
  position:relative;
  display:block;
  width:100%;
  aspect-ratio: 2 / 3;                   /* ratio d’image sympa ; ajuste si besoin */
  border-radius:1rem;
  overflow:hidden;
  box-shadow: 0 20px 40px rgba(16,24,40,.08);
  text-decoration:none;
  background:#f8f9fa;
  transition:transform .6s ease;
}
.svc-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1); 
  transition:transform .6s ease;
  display:block;
}
.svc-card .overlay{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:.35rem;
  padding:1rem 1.1rem;
  color:#fff;
  background:
    linear-gradient(to top, rgba(0,0,0,.62) 0%, rgba(0,0,0,.18) 45%, rgba(0,0,0,0) 70%);
}
.svc-card .title{
  font-weight:700;
  font-size:1.1rem;
  line-height:1.2;
  text-shadow:0 1px 2px rgba(0,0,0,.35);
}
.svc-card .desc{
  font-size:.95rem;
  line-height:1.35;
  opacity:0;
  transform:translateY(6px);
  max-height:0;
  overflow:hidden;
  color : #F9F9F9 !important;
  transition:opacity .35s ease, transform .35s ease, max-height .35s ease;
}

/* Hover/focus : zoom de l’image et apparition de la description */
.svc-card:hover img,
.svc-card:focus img{ transform:scale(1.06); }
.svc-card:hover .desc,
.svc-card:focus .desc{
  opacity:1;
  transform:none;
  max-height:120px; /* assez pour 2–3 lignes */
}

/* Accessibilité focus clavier */
.svc-card:focus-visible{
  outline:3px solid var(--bs-primary);
  outline-offset:4px;
  border-radius:1rem;
}

/* Réduit les animations si l’utilisateur préfère moins d’effets */
@media (prefers-reduced-motion: reduce){
  .svc-card img,
  .svc-card .desc{ transition:none; }
}

/* Petits écrans : un peu plus de ratio pour éviter le crop violent */
@media (max-width: 575.98px){
  .svc-card{ aspect-ratio: 16 / 11; }
}

/* ——— Feature cards ——— */
.feature-card{
  background:#fff;
  border-color:rgba(16,24,40,.12);
  box-shadow:0 18px 40px rgba(16,24,40,.06);
  transition:border-color .25s ease, box-shadow .25s ease;
  min-height: 380px;               /* assure une belle hauteur pour que l'image remplisse bien */
}
.feature-card:hover{
  border-color:var(--bs-primary);
  box-shadow:0 22px 48px rgba(16,24,40,.10);
}

/* Séparateur fin sous le sous-titre */
.feature-sep{
  height:2px;
  width:60px;
  border:0;
  background:linear-gradient(90deg, var(--bs-primary), rgba(0,0,0,0));
  opacity:.8;
}

/* Fallback si le thème n’a pas .object-fit-cover de Bootstrap */
.object-fit-cover{ object-fit:cover; }

/* Petits écrans : on garde une bonne hauteur même quand c’est empilé */
@media (max-width: 991.98px){
  .feature-card{ min-height: 420px; }
}

/* ============== PRJ – PATCH GRILLE & AJOUTS BOOTSTRAP 5 ============== */
/* 1) Anti-conflits: s'assure que les colonnes gardent bien leur padding Bootstrap */
[class^="col-"], [class*=" col-"] {
  padding-right: calc(var(--bs-gutter-x, 1.5rem) * .5);
  padding-left:  calc(var(--bs-gutter-x, 1.5rem) * .5);
}

/* 2) Anti-conflits: s'assure que .row a bien ses marges négatives Bootstrap */
.row {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  margin-right: calc(-.5 * var(--bs-gutter-x));
  margin-left:  calc(-.5 * var(--bs-gutter-x));
}

/* 3) Quand on nest des .container dans Gutenberg/shortcodes, évite les .row centrées à la main */
.row[class*="justify-content-"] > [class^="col-"],
.row[class*="justify-content-"] > [class*=" col-"] {
  /* rien de spécial, juste clarification — pas de margin:auto ici */
}

/* 4) Bouton tertiaire manquant (vu dans ton HTML) */
.btn-prj-tertiary{
  font-family:"Quicksand",sans-serif;
  min-width:200px!important;
  background-color:#ffffff!important;
  color:#41d6c0!important;
  border:2px solid #41d6c0!important;
  border-radius:200px !important;
  font-size:1rem!important;
  font-weight:700!important;
  text-decoration:none;
  padding:10px!important;
  box-shadow: 2px 2px 6px rgba(0,0,0,.04);
  transition:.25s ease;
}
.btn-prj-tertiary:hover{
  background-color:#41d6c0!important;
  color:#ffffff!important;
}

/* 5) Cartes “services overlay” : texte centré sous l’image si besoin */
.svc-card + .label { text-align:center; }

/* 6) Petites utilitaires manquantes/fix */
.text-secondary { color: #6c757d !important; }   /* assure cohérence */
.lead { font-size:1.25rem; font-weight:400; }
.display-6 { font-size: clamp(1.7rem, 2vw + 1rem, 2.5rem); }


/* === DEBUT HEADER FOR WP BOOTSTRAP STARTER === */

/* Taille du header (tu peux ajuster) */
:root { --header-h: 80px; }              /* desktop */
@media (max-width: 991.98px){ :root { --header-h: 68px; } } /* mobile/tablette */

/* On force la nav tout en haut, largeur pleine */
header > nav#header {
  position: fixed !important;            /* on force: reste collé quoi qu'il arrive */
  top: 0; left: 0; right: 0;
  z-index: 1050;
  background: #fff !important;
  height: var(--header-h);
  max-height: 200px;                     /* cap demandé */
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
}

/* Évite que le contenu passe sous le header */
body { padding-top: var(--header-h); }

/* Réduit le “garnissage” de la barre pour respecter la hauteur */
header > nav#header.navbar {
  padding-top: .4rem !important;
  padding-bottom: .4rem !important;
}

/* Logo : max 140px */
#header .navbar-brand img {
  max-width: 180px !important;
  height: auto !important;
}

/* MENU À DROITE (même si WP met me-auto dans le HTML) */
#navbar.collapse,
#navbar.navbar-collapse {
  justify-content: flex-end !important;
}
#navbar .navbar-nav {
  margin-left: auto !important;   /* aligne à droite */
  margin-right: 0 !important;
  align-items: center;
}

/* LIENS : propres, sans effets fantaisie */
#header .navbar-nav .nav-link {
  color: #222 !important;
  font-weight: 600;
  font-size: .95rem;
  padding: .5rem 1rem;
  text-decoration: none !important;
  transition-duration: 300ms !important;  
}

/* Supprime tout soulignement animé précédent */
#header .navbar-nav .nav-link::after { content: none !important; }

/* Hover très sobre (ou désactive complètement si tu veux) */
#header .navbar-nav .nav-link:hover,
#header .navbar-nav .nav-link:focus {
  color: #41d6c0 !important;
  transition-duration: 300ms !important;
  background: transparent !important;
}

/* État actif sobre */
#header .current-menu-item > .nav-link {
  color: #222 !important;
  font-weight: 700;
}

/* Burger propre (pas de bord) */
#header .navbar-toggler {
  border: 0 !important;
  box-shadow: none !important;
}

/* Dropdown simple */
#header .dropdown-menu {
  border: 0;
  border-radius: .5rem;
  box-shadow: 0 10px 24px rgba(0,0,0,.08);
}
#header .dropdown-item {
  color: #222 !important;
  transition-duration: 300ms !important;
}
#header .dropdown-item:hover {
  color: #ee7279 !important;
  transition-duration: 300ms !important;
}

/* MOBILE : menu déroulé lisible */
@media (max-width: 991.98px) {
  header > nav#header .navbar-collapse {
    background: #fff !important;
    padding: .5rem 0 1rem;
    border-radius: 0 0 1rem 1rem;
  }
  #header .navbar-nav .nav-link {
    padding: .75rem 1rem;
    font-size: 1rem;
  }
}


/* === FIN HEADER FOR WP BOOTSTRAP STARTER === */



/* MOBILE/TABLET : Display NONE */
@media (max-width: 991.98px) {
.hide-tablet{
	display: none !important;
}
}

#main {
    margin-top: 0rem !important;
    }