/*!
Theme Name: Vault Child
Theme URI: https://uicore.co
Description: Multi-Purpose Elementor WordPress Theme
Author: UiCore
Author URI: https://uicore.co
Template: vault
Version: 1.0.0
Text Domain: vault
*/

 /* Add your custom style here */

.trp-language-item-name {
	font-family: Inter !important;
	font-weight: 500  !important;
	font-size: 14px !important;
}

.trp-shortcode-switcher {
	margin-top: 8px;
}

.customPageTitle .breadcrumb i::before {
      transform: rotate(270deg);
    display: inline-block;
    padding-right: 3px !important;
	opacity: 0.5  !important;
}

.customPageTitle .breadcrumb .inactive {
	opacity: 0.5  !important;
	color: black !important;
}

.single-produit .uicore-page-title {
	display: none;
}

.footerTopPart a, .footerBottomPart a {
	color: #8FC3F5 !important;
}

.footerTopPart .WhatsappBtn a {
	color: white !important;
}

.uicore-navbar .uicore-cta-wrapper a {
	padding: 18px 30px !important;
}

.iconBoxHome .elementor-icon-box-icon {
	background-color: #ffffff1c;
    border-radius: 10px;
    padding: 12px;
	align-self: baseline;
}


.product-tags {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    margin-bottom: 1.5rem;
}

.ptag {
    font-size: .72rem;
    font-weight: 600;
    color: #475467;
    background: #f9fafb;
    padding: .32rem .75rem;
    border: 1px solid #eaecf0;
    border-radius: 999px;
    transition: all .15s;
    cursor: pointer;
}

.uicore-page-title h1.uicore-title {
	font-size: 26px;
}
.uicore-page-title .uicore p {
	font-size: 14px;
}

.tf-hero-meta{
  display:flex;
  gap:2.5rem;
  flex-wrap:wrap;
}
.tf-hero-meta-item strong{
  display:block;
  font-family:'Manrope',sans-serif;
  font-size:1.5rem;
  font-weight:800;
  color: #8FC3F5;
  letter-spacing:-.04em;
  line-height:1;
}
.tf-hero-meta-item span{
  display:block;
  font-family:'Manrope',sans-serif;
  font-size:.76rem;
  color:rgba(255,255,255,.4);
  font-weight:400;
  margin-top:.3rem;
}

@media(max-width:480px){
  .tf-hero-meta{gap:1.25rem 2rem;}
  .tf-hero-meta-item{flex:0 0 40%;}
}



.categoryCard::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.75) 0%,
    rgba(0, 0, 0, 0.45) 45%,
    rgba(0, 0, 0, 0.0) 100%
  );
  pointer-events: none;
}

.categoryCard > * {
  position: relative;
  z-index: 2;
}

:root{
  --navy:#003C71;
  --navy-dark:#00284d;
  --navy-pale:#eef4fa;
  --traflux-dark:#86990a;
  --ink:#101828;
  --ink-mid:#475467;
  --ink-light:#98a2b3;
  --cloud:#f9fafb;
  --line:#eaecf0;
  --line-dark:#d0d5dd;
}

.contact-form-wrap{
  font-family:'Manrope',sans-serif;
  background:var(--cloud);
  border-radius:20px;
  padding:3rem 3rem 0.5rem 3rem;
}
.contact-form-wrap h3{
  font-size:1.3rem;font-weight:800;color:var(--ink);
  letter-spacing:-.04em;margin:0 0 .4rem;
}
.contact-form-wrap > p{
  font-size:.86rem;color:var(--ink-mid);font-weight:300;margin:0 0 1.75rem;
}

/* Layout 2 colonnes */
.cf7-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.cf7-grid .cf7-half{margin:0 0 1.1rem;}
.wpcf7-form p{margin:0 0 1.1rem;}

/* Labels */
.wpcf7-form label{
  display:block;font-size:14px;font-weight:600;color:var(--ink);
  letter-spacing:-.01em;
}
.wpcf7-form label .req{color:var(--traflux-dark);}

/* Champs */
.wpcf7-form .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-acceptance){
  font-family:'Manrope',sans-serif;
  font-size:.88rem;color:var(--ink);background:#fff;
  border:1px solid var(--line-dark);border-radius:10px;
  padding:.75rem .9rem;width:100%;margin-top:.45rem;
  transition:border-color .2s,box-shadow .2s;box-sizing:border-box;
}
.wpcf7-form .wpcf7-form-control::placeholder{color:var(--ink-light);font-weight:300;}
.wpcf7-form .wpcf7-form-control:focus{
  outline:none;border-color:var(--navy);
  box-shadow:0 0 0 3px rgba(0,60,113,.1);
}
.wpcf7-form textarea{resize:vertical;min-height:120px;line-height:1.6;}

/* Select custom arrow */
.wpcf7-form select.wpcf7-form-control{
  cursor:pointer;appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2398a2b3' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right .9rem center;background-size:14px;
  padding-right:2.4rem;
}

/* Consentement */
.cf7-consent{font-size:.76rem;color:var(--ink-mid);font-weight:300;line-height:1.55;}
.cf7-consent .wpcf7-list-item{margin:0;display:flex;align-items:flex-start;gap:.6rem;}
.cf7-consent input[type=checkbox]{
  margin-top:.18rem;width:16px;height:16px;accent-color:var(--navy);
  flex-shrink:0;cursor:pointer;
}
.cf7-consent a{color:var(--navy);font-weight:600;border-bottom:1px solid var(--navy-pale);}

/* Bouton */
.wpcf7-form .wpcf7-submit{
  width:100%;font-family:'Manrope',sans-serif;
  font-size:.92rem;font-weight:700;color:#fff;background:var(--navy);
  border:none;border-radius:10px;padding:.95rem 1.5rem;cursor:pointer;
  letter-spacing:-.02em;transition:background .2s,transform .15s;
}
.wpcf7-form .wpcf7-submit:hover{background:var(--navy-dark);transform:translateY(-1px);}
.cf7-note{font-size:.74rem;color:var(--ink-light);text-align:center;font-weight:300;}

/* Messages de validation CF7 */
.wpcf7-form .wpcf7-not-valid-tip{
  font-size:.74rem;color:#d92d20;margin-top:.35rem;font-weight:500;
}
.wpcf7-form .wpcf7-not-valid{border-color:#f04438 !important;}
.wpcf7 .wpcf7-response-output{
  border-radius:10px;font-size:.84rem;padding:.8rem 1rem;margin:1.25rem 0 0;
}

/* Spinner de chargement */
.wpcf7-spinner{margin-left:.5rem;}

@media(max-width:560px){
  .cf7-grid{grid-template-columns:1fr;gap:0;}
  .contact-form-wrap{padding:1.75rem;}
}

.contact-hours{
  font-family:'Manrope',sans-serif;
  padding:1.25rem 1.4rem;
  background:var(--cloud);
  border-radius:14px;
}
.contact-hours-title{
  display:flex;
  align-items:center;
  gap:.5rem;
  font-size:14px;
  font-weight:700;
  color:var(--ink);
  margin-bottom:.75rem;
  letter-spacing:-.01em;
}
.contact-hours-title svg{
  width:15px;
  height:15px;
  color:var(--navy);
}
.contact-hours-row{
  display:flex;
  justify-content:space-between;
  font-size:14px;
  color:var(--ink-mid);
  font-weight:300;
  padding:.25rem 0;
}
.contact-hours-row strong{
  font-weight:600;
  color:var(--ink);
}

.narrowWidthRow {
	margin: auto !important;
}

.uicore-navigation-wrapper .uicore-menu-container ul .menu-item.hiddenMobileMenuItem {
    display: block  !important;
}

.uicore-navigation-wrapper .uicore-menu-container ul .menu-item.hiddenDesktopMenuItem, .uicore-navbar:not(.uicore-left-menu) li.menu-item.hiddenDesktopMenuItem {
    display: none  !important;
}


@media (max-width: 1025px) {
    .uicore-navigation-wrapper .uicore-menu-container ul .menu-item.hiddenMobileMenuItem {
        display: none  !important;
    }

    .uicore-navigation-wrapper .uicore-menu-container ul .menu-item.hiddenDesktopMenuItem {
        display: block  !important;
    }
} 