/*
Theme Name: Zyganium
Theme URI: https://zyganium.net
Description: Theme sur mesure Zyganium. Direction visuelle : Zyganium Nuit Doree. Fait par Novamira.
Author: Zyganium
Template: hello-elementor
Version: 0.11.1
Text Domain: zyganium
*/

/* ==========================================================================
   Discipline typographique appliquée aussi aux pages Elementor,
   pour que le site n'ait qu'une seule voix.
   ========================================================================== */

body{
  background-color:#08080A;
  color:#F2EEE6;
  font-family:"Archivo","Helvetica Neue",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}

a{color:#FCD376;}
a:hover{color:#D8A93F;}
::selection{background:#D8A93F;color:#08080A;}

/* Titres : chasse étendue, casse naturelle, taille mesurée. */
.elementor-widget-heading .elementor-heading-title{
  font-family:"Archivo","Helvetica Neue",Arial,sans-serif;
  font-stretch:110%;
  font-weight:600;
  text-transform:none;
  letter-spacing:-.022em;
  line-height:1.08;
  text-wrap:balance;
  color:#F2EEE6;
}
.elementor-widget-heading h1.elementor-heading-title{font-size:clamp(1.9rem,4.2vw,3.6rem);}
.elementor-widget-heading h2.elementor-heading-title{font-size:clamp(1.5rem,3vw,2.5rem);}
.elementor-widget-heading h3.elementor-heading-title{font-size:clamp(1.15rem,1.9vw,1.5rem);letter-spacing:-.015em;line-height:1.15;}

/* L'étiquette : monospace, très espacée, dorée. Jamais en capitales géantes. */
.elementor-widget-heading h6.elementor-heading-title{
  font-family:"JetBrains Mono",SFMono-Regular,Consolas,monospace;
  font-size:.66rem;
  font-weight:400;
  letter-spacing:.22em;
  line-height:1.4;
  text-transform:uppercase;
  color:#D8A93F;
}

/* Texte courant : gris chaud, mesure limitée, jamais pleine largeur. */
.elementor-widget-text-editor{
  color:#8E8880;
  font-size:clamp(.95rem,.4vw + .85rem,1.05rem);
  line-height:1.6;
  max-width:62ch;
}
.elementor-widget-text-editor strong{color:#F2EEE6;font-weight:500;}

/* Le premier bloc de texte après un H1 est un chapô, pas du corps de texte. */
.elementor-widget-heading + .elementor-widget-text-editor{
  font-size:clamp(1.05rem,1vw + .85rem,1.35rem);
  line-height:1.45;
  letter-spacing:-.01em;
  max-width:40ch;
}

/* Listes à puces : filet fin plutôt qu'icône, et respiration. */
.elementor-icon-list-item{border-bottom:1px solid rgba(242,238,230,.08);padding-block:.55rem;}
.elementor-icon-list-item:last-child{border-bottom:0;}
.elementor-icon-list-text{color:#8E8880;font-size:.92rem;}
.elementor-icon-list-icon svg,.elementor-icon-list-icon i{color:#8A5C25;}

/* Boutons : capitales monospace, flèche, inversion au survol. */
.elementor-button{
  font-family:"JetBrains Mono",SFMono-Regular,Consolas,monospace;
  font-size:.72rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  padding:1.15em 1.9em;
  border:1px solid #D8A93F;
  border-radius:2px;
  transition:background .35s cubic-bezier(.22,.61,.36,1),color .35s cubic-bezier(.22,.61,.36,1),border-color .35s cubic-bezier(.22,.61,.36,1);
}
.elementor-button:hover{background:transparent!important;color:#FCD376!important;border-color:#FCD376;}

/* Tableau de tarifs : lisible, sans bordures lourdes. */
.elementor-widget-text-editor table{width:100%;border-collapse:collapse;max-width:none;}
.elementor-widget-text-editor th{
  font-family:"JetBrains Mono",SFMono-Regular,Consolas,monospace;
  font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:#D8A93F;
  border-bottom:1px solid rgba(242,238,230,.2);padding:.9rem 1rem;text-align:left;
}
.elementor-widget-text-editor td{
  border-bottom:1px solid rgba(242,238,230,.08);padding:.9rem 1rem;color:#F2EEE6;
  font-variant-numeric:tabular-nums;
}
.elementor-widget-text-editor tbody tr:hover td{background:rgba(242,238,230,.03);}

/* Le bloc de texte des tableaux doit pouvoir respirer sur toute la largeur. */
.elementor-widget-text-editor:has(table){max-width:none;}

/* ==========================================================================
   En-tête et pied de page : la barre grise du template kit n'a plus lieu d'être.
   ========================================================================== */
.ehf-header,#masthead,.site-header,
.elementor-location-header{
  background-color:#08080A!important;
  border-bottom:1px solid rgba(242,238,230,.10);
}
.ehf-footer,.site-footer,.elementor-location-footer{
  background-color:#08080A!important;
  border-top:1px solid rgba(242,238,230,.10);
}

/* Navigation : monospace espacée, l'or seulement au survol et sur la page active. */
.ehf-header .elementor-nav-menu a,
#masthead .elementor-nav-menu a,
.site-header .elementor-nav-menu a{
  font-family:"JetBrains Mono",SFMono-Regular,Consolas,monospace;
  font-size:.7rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#8E8880;
  transition:color .3s cubic-bezier(.22,.61,.36,1);
}
.ehf-header .elementor-nav-menu a:hover,
#masthead .elementor-nav-menu a:hover,
.site-header .elementor-nav-menu a:hover,
.elementor-nav-menu .current-menu-item > a,
.elementor-nav-menu .current_page_item > a{color:#FCD376;}

/* Le dernier élément du menu devient un bouton. */
.elementor-nav-menu > li.menu-cta > a{
  border:1px solid #D8A93F;
  color:#D8A93F!important;
  padding:.7em 1.2em!important;
  border-radius:2px;
  transition:background .3s cubic-bezier(.22,.61,.36,1),color .3s cubic-bezier(.22,.61,.36,1);
}
.elementor-nav-menu > li.menu-cta > a:hover{background:#D8A93F;color:#08080A!important;}

/* Sous-menu : fond nuit, pas la carte blanche par défaut. */
.elementor-nav-menu--dropdown,
.elementor-nav-menu__container.elementor-nav-menu--dropdown{
  background-color:#101012!important;
  border:1px solid rgba(242,238,230,.10);
}

/* ==========================================================================
   Pied de page. Le kit Elementor cible `.elementor-kit-2176 h2`, plus
   specifique qu'une simple classe : on prefixe donc tout par .zyg-foot.
   ========================================================================== */

.zyg-foot{
  background:#08080A;
  padding:clamp(3.5rem,7vw,6.5rem) clamp(1.25rem,5vw,3rem) 0;
  color:#8E8880;
  font-family:"Archivo","Helvetica Neue",Arial,sans-serif;
}
.zyg-foot .zyg-foot__in{
  max-width:1280px;margin:0 auto;
  display:grid;gap:clamp(2.5rem,4vw,4rem);
  grid-template-columns:1.7fr 1fr 1fr 1.2fr;
  align-items:start;
}
@media (max-width:1024px){.zyg-foot .zyg-foot__in{grid-template-columns:1fr 1fr;}}
@media (max-width:640px){.zyg-foot .zyg-foot__in{grid-template-columns:1fr;gap:2.5rem;}}

.zyg-foot .zyg-foot__brand{max-width:34ch;}
.zyg-foot a.zyg-foot__mark{
  display:inline-block;
  font-family:"Archivo","Helvetica Neue",Arial,sans-serif;
  font-weight:700;font-stretch:125%;
  font-size:clamp(1.5rem,2.2vw,2rem);
  letter-spacing:-.015em;line-height:1;
  text-transform:uppercase;
  color:#F2EEE6;
  text-decoration:none;
}
.zyg-foot a.zyg-foot__mark:hover{color:#FCD376;}
.zyg-foot .zyg-foot__pitch{
  margin:1.2rem 0 1.7rem;
  font-size:.92rem;line-height:1.65;color:#8E8880;
  font-family:"Archivo","Helvetica Neue",Arial,sans-serif;
  text-wrap:pretty;
}

.zyg-foot .zyg-foot__title{
  font-family:"JetBrains Mono",SFMono-Regular,Consolas,monospace;
  font-size:.62rem;font-weight:400;
  letter-spacing:.22em;text-transform:uppercase;
  line-height:1.4;
  color:#D8A93F;
  margin:0 0 1.4rem;
  padding:0;
}

.zyg-foot ul{list-style:none;margin:0;padding:0;}
.zyg-foot li{margin:0 0 .65rem;padding:0;border:0;}
.zyg-foot li::before{content:none;}
.zyg-foot a{
  color:#8E8880;
  text-decoration:none;
  font-family:"Archivo","Helvetica Neue",Arial,sans-serif;
  font-size:.92rem;
  line-height:1.5;
  transition:color .3s cubic-bezier(.22,.61,.36,1);
}
.zyg-foot a:hover{color:#F2EEE6;}

.zyg-foot .zyg-foot__social{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;}
.zyg-foot .zyg-foot__social li{margin:0;}
.zyg-foot .zyg-foot__social a{
  font-family:"JetBrains Mono",SFMono-Regular,Consolas,monospace;
  font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;
  display:inline-block;padding-bottom:.3rem;
  border-bottom:1px solid rgba(242,238,230,.14);
}
.zyg-foot .zyg-foot__social a:hover{border-bottom-color:#D8A93F;color:#FCD376;}

.zyg-foot .zyg-foot__adr{
  font-style:normal;
  margin:1.3rem 0 1.6rem;
  font-size:.9rem;line-height:1.7;color:#8E8880;
  font-family:"Archivo","Helvetica Neue",Arial,sans-serif;
}
.zyg-foot a.zyg-foot__wa{
  display:inline-block;
  font-family:"JetBrains Mono",SFMono-Regular,Consolas,monospace;
  font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;
  color:#D8A93F;
  border:1px solid rgba(216,169,63,.45);
  border-radius:2px;
  padding:.9em 1.35em;
  transition:background .3s cubic-bezier(.22,.61,.36,1),color .3s cubic-bezier(.22,.61,.36,1),border-color .3s cubic-bezier(.22,.61,.36,1);
}
.zyg-foot a.zyg-foot__wa:hover{background:#D8A93F;color:#08080A;border-color:#D8A93F;}

.zyg-foot .zyg-foot__bar{
  max-width:1280px;margin:clamp(3rem,5vw,4.5rem) auto 0;
  border-top:1px solid rgba(242,238,230,.10);
  padding:1.7rem 0 2.2rem;
  display:flex;flex-wrap:wrap;gap:.9rem 2rem;
  align-items:center;justify-content:space-between;
}
.zyg-foot .zyg-foot__bar p{
  margin:0;
  font-family:"JetBrains Mono",SFMono-Regular,Consolas,monospace;
  font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:#5A554E;
}
.zyg-foot .zyg-foot__legal{display:flex;flex-wrap:wrap;gap:.6rem 1.8rem;}
.zyg-foot .zyg-foot__legal li{margin:0;}
.zyg-foot .zyg-foot__legal a{
  font-family:"JetBrains Mono",SFMono-Regular,Consolas,monospace;
  font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:#5A554E;
}
.zyg-foot .zyg-foot__legal a:hover{color:#D8A93F;}

/* Le gabarit HFE enveloppe le pied de page : on neutralise ses contraintes. */
footer#colophon{background:#08080A;border-top:1px solid rgba(242,238,230,.12);}
.footer-width-fixer .elementor-section.elementor-section-boxed > .elementor-container{max-width:none;}

/* Le menu du kit est en position fixe sans fond : on lui donne une vraie
   barre, sinon les liens flottent sur les images au défilement. */
.ehf-header .elementor-fixed{
  background:rgba(8,8,10,.74)!important;
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px);
  border:1px solid rgba(242,238,230,.08);
  border-radius:2px;
}

/* Logo : posé sur la barre fixe, à gauche. Le noir du fichier est déjà transparent. */
.ehf-header .zyg-hlogo{position:fixed!important;top:8px;left:24px;z-index:3;margin:0!important;}
.ehf-header .zyg-hlogo img{display:block;height:auto;}
@media (max-width:1024px){.ehf-header .zyg-hlogo{top:12px;left:16px;}}
@media (min-width:1025px) and (max-width:1380px){
  .ehf-header .elementor-element-1c7617c4 > .elementor-widget-container{padding-left:200px!important;}
  .ehf-header .elementor-element-1c7617c4 a.hfe-menu-item{padding-left:13px!important;padding-right:13px!important;font-size:15px!important;}
  .ehf-header .zyg-hlogo img{width:165px!important;}
}

/* ==========================================================================
   Formulaires WPForms (page Contact) : noir et or, comme le reste.
   ========================================================================== */

.wpforms-image-choices img{display:none!important;}

.wpforms-container .wpforms-field-label,
.wpforms-container .wpforms-field-label-inline,
.wpforms-container .wpforms-field-description{
  color:#8E8880!important;
  font-family:"Archivo","Helvetica Neue",Arial,sans-serif!important;
}
.wpforms-container input[type=text],
.wpforms-container input[type=email],
.wpforms-container input[type=tel],
.wpforms-container input[type=number],
.wpforms-container select,
.wpforms-container textarea{
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid rgba(242,238,230,.2)!important;
  border-radius:0!important;
  color:#F2EEE6!important;
  font-family:"Archivo","Helvetica Neue",Arial,sans-serif!important;
  box-shadow:none!important;
}
.wpforms-container input:focus,
.wpforms-container textarea:focus{
  border-bottom-color:#D8A93F!important;
  outline:0!important;
}
.wpforms-container input::placeholder,
.wpforms-container textarea::placeholder{color:#5A554E!important;}

.wpforms-container button[type=submit],
.wpforms-container .wpforms-submit{
  font-family:"JetBrains Mono",SFMono-Regular,Consolas,monospace!important;
  font-size:.72rem!important;letter-spacing:.16em!important;text-transform:uppercase!important;
  background:#D8A93F!important;color:#08080A!important;
  border:1px solid #D8A93F!important;border-radius:2px!important;
  padding:1.15em 1.9em!important;
  box-shadow:0 0 26px rgba(216,169,63,.28)!important;
  transition:background .35s,color .35s,box-shadow .35s!important;
}
.wpforms-container button[type=submit]:hover,
.wpforms-container .wpforms-submit:hover{
  background:transparent!important;color:#FCD376!important;
  box-shadow:0 0 44px rgba(216,169,63,.4)!important;
}
