/* Équivalents des réglages du thème Houzez dont dépend la préproduction. Le thème, sous licence commerciale,
   n'est pas repris : ces règles ont été écrites par MJ Data à partir de la comparaison des styles calculés
   sur la préprod et en local. Fichier écrit à la main : il est hors de assets/css/preprod, que l'import régénère. */

/* Texte de base : Bootstrap met 16 px, le thème 15 px. La taille doit l'emporter sur Bootstrap ; l'interlignage,
   lui, reste à la merci de petra-pages.css (body{line-height:1.65}), comme sur la préprod. */
html body{font-size:15px}
body{font-family:'Montserrat',sans-serif;font-weight:400;line-height:26px;text-transform:none;text-align:left}
a{text-decoration:none}
b,strong,label{font-weight:700}
time{color:#636363}
input[type=email],input[type=tel],input[type=password]{text-align:left}
/* Fond gris très clair derrière le contenu (visible autour des pages légales, sur fond blanc). */
.main-wrap{background-color:#f8f8f8}

/* En-tête et menu. Police des titres choisie dans les options du thème (le panneau mobile en hérite). */
.header-main-wrap{position:relative;z-index:4}
.header-transparent-wrap{width:100%;position:absolute}
.header-v4 a{color:#004274}
.main-nav{font-family:'Cormorant Garamond';font-weight:600;font-size:15px;text-transform:none}
.header-main-wrap .main-nav .nav-item{position:relative;z-index:2}
/* Le thème remet à zéro la marge intérieure verticale des liens du menu (et l'emporte sur petra-header.css). */
.nav-link{padding:0}
.main-nav:not(.houzez-nav-menu-main) .nav-link{padding-top:0;padding-bottom:0}
@media (min-width:1200px){.main-nav:not(.houzez-nav-menu-main) .nav-link{padding-left:15px!important;padding-right:15px!important}}
/* Largeurs du conteneur fixées par le thème (Bootstrap : 720, 960, 1140 puis 1320 px). */
@media (min-width:768px){.container{max-width:750px}}
@media (min-width:992px){.container{max-width:970px}}
@media (min-width:1200px){.container{max-width:1310px}}

/* Pied de page (couleurs et marges réglées dans le thème) */
.footer-wrap{font-family:'Montserrat';font-size:14px;line-height:1.65}
.footer-top-wrap{padding:100px 0 70px;background-color:#15251b;color:#e8e3d6}
@media (max-width:767.98px){.footer-top-wrap{padding:50px 30px 30px}}
.footer-wrap .footer-widget{padding:0!important}
.widget-wrap{border-radius:4px}
.footer-wrap .footer-widget li{padding-top:8px}
.footer-wrap .widget ul{margin:0;padding:0;list-style:none}
.footer-wrap .widget ul li a{position:relative;display:flex;align-items:center;padding-top:0;padding-bottom:0}
.footer-wrap a{text-decoration:none}

/* Boutons */
.btn{line-height:40px;font-family:'Montserrat';white-space:nowrap}

/* Gabarit « page simple » (pages légales, plan du site) : titre, colonne de contenu sur fond blanc. */
.page-title-wrap{padding:30px 0}
.page-title h1{margin:0;font-size:30px}
.page-content-wrap{padding:40px;background-color:#fff}
.page-content-wrap .alignleft{float:left;margin:5px 20px 20px 0}
.page-content-wrap .alignright{float:right;margin:5px 0 20px 20px}
.page-content-wrap .aligncenter{margin:5px auto 20px}
.article-page-wrap{margin-bottom:40px}
@media (min-width:992px){
  .bt-content-wrap{width:70%;max-width:70%;flex:0 0 70%;margin-bottom:30px}
  /* Colonne latérale (vide sur ces pages) : sans cette largeur, elle passe sous le contenu et allonge la page. */
  .bt-sidebar-wrap{width:30%;max-width:30%;flex:0 0 30%}
}
/* Ce que le module de colonne collante du thème pose en JavaScript (au-delà de 768 px). */
@media (min-width:768px){.houzez_sticky{position:relative}.theiaStickySidebar{padding-bottom:1px}}
/* Sur la préprod, le titre reste à 24 px même sous 768 px (la règle à 20 px du thème y est écrasée). */
@media (max-width:991.98px){.page-title h1{font-size:24px}}
@media (max-width:767.98px){.page-title-wrap{padding:15px 0}}

/* Formulaires du thème (page « Mon Espace ») : cases à cocher dessinées, icônes des champs.
   Les icônes du thème venaient de sa police (non reprise) : elles sont redessinées en SVG. */
.form-tools{margin:20px 0}
.form-tools .control,.login-form-wrap .form-group,.register-form-wrap .form-group{margin-bottom:0}
.control{display:block;position:relative;padding-left:30px;cursor:pointer;color:#a1a7a8;font-weight:500}
.form-tools .control{color:#636363}
.control.control--checkbox{display:flex;flex-flow:column}
.control input{position:absolute;z-index:-1;opacity:0}
.control__indicator{position:absolute;top:3px;left:0;height:20px;width:20px;background:#fff;border:1px solid #dce0e0;border-radius:2px}
.control__indicator::after{content:"";position:absolute;display:none}
.control input:checked~.control__indicator{background-color:#15251b;border-color:#15251b}
.control input:checked~.control__indicator::after{display:block}
.control input:focus-visible~.control__indicator{outline:2px solid #bda378;outline-offset:2px}
.control--checkbox .control__indicator::after{left:6px;top:2px;width:6px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.login-form-wrap .form-group-field::after,.register-form-wrap .form-group-field::after{content:"";position:absolute;left:15px;top:8px;width:15px;height:24.75px;background-color:#636363;pointer-events:none;
  -webkit-mask:var(--icone) center/15px 15px no-repeat;mask:var(--icone) center/15px 15px no-repeat}
.username-field{--icone:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round'%3E%3Ccircle cx='12' cy='7.5' r='4.5'/%3E%3Cpath d='M3.5 22c0-4.7 3.8-8 8.5-8s8.5 3.3 8.5 8'/%3E%3C/svg%3E")}
.password-field{--icone:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M8 9.5V7a4 4 0 0 1 8 0v2.5'/%3E%3Ccircle cx='12' cy='15.5' r='6.5'/%3E%3Ccircle cx='12' cy='14.5' r='1.3'/%3E%3Cpath d='M12 15.8v2.4'/%3E%3C/svg%3E")}
.email-field{--icone:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linejoin='round'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='1.5'/%3E%3Cpath d='M3 6l9 7 9-7'/%3E%3C/svg%3E")}
.phone-field{--icone:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linejoin='round'%3E%3Cpath d='M5.5 3h3.2l1.8 4.8-2.3 1.5a11.5 11.5 0 0 0 6.5 6.5l1.5-2.3L21 15.3v3.2a2 2 0 0 1-2.2 2A17 17 0 0 1 3.5 5.2 2 2 0 0 1 5.5 3z'/%3E%3C/svg%3E")}
.form-control{height:42px;line-height:42px;font-size:15px}
.form-tools a{font-weight:500;font-size:14px}
.login-form-wrap{border-radius:4px;background-color:#fff}
.blog-wrap .page-title{margin-top:10px}

/* Tableau de bord du thème (page « Mon espace ») : barre latérale, barre du haut, contenu.
   Les règles générales sont limitées au tableau de bord par :where(), qui ne change pas leur priorité. */
:where(.houzez-dashboard-body) ul{margin:0;padding:0;list-style:none}
:where(.houzez-dashboard-body) img{border-style:none;display:inline-block;max-width:100%;height:auto}
:where(.houzez-dashboard-body) h6{margin:0;padding:0}
h1,h2,h3,h4,h5,h6,.item-title,.page-title-mobile{font-family:'Cormorant Garamond';font-weight:600;text-transform:none}
:where(.houzez-dashboard-body) .dropdown-divider{margin:15px 0 0}
.dashboard-sidebar{background-color:#000;border-right:1px solid #e5e7eb;position:fixed;left:0;top:0;height:100%;width:240px;overflow-y:auto;transition:.3s cubic-bezier(.4,0,.2,1)}
.sidebar-logo{position:sticky;top:0;background-color:#002b4b;z-index:10}
.sidebar-logo .logo{display:flex;align-items:center;color:#fff;font-size:24px;font-family:Pacifico,serif;font-weight:400;border-bottom:1px solid #374151;height:64px;padding:0 24px;margin-right:0}
.sidebar-logo .logo img{position:relative;top:-3px}
.crose-btn{display:flex;align-items:center;position:absolute;top:10px;right:12px;z-index:100}
.dashboard-right{margin-left:240px;transition:.3s cubic-bezier(.4,0,.2,1)}
.dashboard-right>.header{background-color:#fff;padding:4px 24px;box-shadow:0 1px 2px 0 rgba(0,0,0,.05);display:flex;align-items:center;justify-content:space-between;position:sticky;z-index:1;top:0}
.header-left ul{display:flex;align-items:center;gap:32px}
.menu-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:16px}
.user-dropdown{border:none;display:flex;align-items:center;gap:12px;background-color:transparent;padding:8px 12px;font-size:14px;font-weight:500;line-height:1;border-radius:4px}
.user-dropdown .user-img{width:40px;border-radius:50%}
:where(.houzez-dashboard-body) .dropdown-menu{box-shadow:0 2px 4px rgba(0,0,0,.1);padding:0;border:1px solid #dce0e0;border-radius:4px;text-align:left;font-family:'Cormorant Garamond';font-size:15px;font-weight:600;text-transform:none}
.dropdown-item{text-align:left}
.dashboard-content{padding:24px}
@media (max-width:1199px){
  .dashboard-sidebar{z-index:10;transform:translateX(-100%)}
  .dashboard-right{margin:0}
  .dashboard-right>.header{padding:0 16px}
  .header-left ul{gap:16px}
}
@media (max-width:767px){.user-dropdown span:not(.user-img){display:none}}
