/*
Theme Name: Brite Child
Template: brite
Author: Extend Themes
Author URI: https://extendthemes.com/
Description: Brite is a beautiful, very customizable, multipurpose theme that you can use to create amazing websites through drag and drop. It comes with a pre-designed home page, 5 header designs and over 35 ready-to-use content blocks that you can easily customize. You can also design your own custom blocks by combining more than 25 drag and drop components. Brite offers lots of customization options (video background, slideshow background, header content types, etc) to help you create a website that stands out in no time. It is also designed with responsiveness, to work on mobile devices right out of the box. Brite is the only theme you will ever need! CHECK OUT THE DEMOS: https://colibriwp.com/go/brite-demos
Tags: entertainment,food-and-drink,portfolio,one-column,two-columns,right-sidebar,grid-layout,custom-header,custom-menu,custom-logo,full-width-template,theme-options,translation-ready,featured-images,threaded-comments
Version: 1.0.44.1772111841
Updated: 2026-02-26 13:17:21

*/

/* =====================================================
   FONT GLOBAL
===================================================== */

body,
button,
input,
textarea,
select {
  font-family: 'Montserrat', sans-serif !important;
}

/* =====================================================
   PAGES CONNEXION PARTICIPANT + CREATEUR
===================================================== */

/* Fond général plus propre */
body.page-id-1702,
body.page-id-1688 {
  background: #f5f7fb !important;
}

/* Carte centrale */
#post-1702,
#post-1688 {
  max-width: 560px !important;
  margin: 60px auto !important;
  padding: 34px !important;
  background: #ffffff !important;
  border: 1px solid rgba(17, 24, 39, 0.08) !important;
  border-radius: 22px !important;
  box-shadow: 0 18px 50px rgba(17, 24, 39, 0.08) !important;
}

/* Formulaire */
#post-1702 form,
#post-1688 form {
  margin: 0 !important;
}

/* Labels */
#post-1702 label,
#post-1688 label {
  display: block !important;
  margin-bottom: 8px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #111827 !important;
}

/* Blocs */
#post-1702 .login-username,
#post-1702 .login-password,
#post-1702 .login-remember,
#post-1702 .login-submit,
#post-1688 .login-username,
#post-1688 .login-password,
#post-1688 .login-remember,
#post-1688 .login-submit {
  margin-bottom: 18px !important;
}

/* Champs */
#post-1702 input[type="text"],
#post-1702 input[type="email"],
#post-1702 input[type="password"],
#post-1688 input[type="text"],
#post-1688 input[type="email"],
#post-1688 input[type="password"] {
  width: 100% !important;
  min-height: 52px !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(17, 24, 39, 0.14) !important;
  border-radius: 14px !important;
  background: #fff !important;
  font-size: 15px !important;
  color: #111827 !important;
  box-sizing: border-box !important;
  transition: border-color .2s ease, box-shadow .2s ease !important;
}

/* Focus */
#post-1702 input[type="text"]:focus,
#post-1702 input[type="email"]:focus,
#post-1702 input[type="password"]:focus,
#post-1688 input[type="text"]:focus,
#post-1688 input[type="email"]:focus,
#post-1688 input[type="password"]:focus {
  outline: none !important;
  border-color: #111827 !important;
  box-shadow: 0 0 0 4px rgba(17, 24, 39, 0.08) !important;
}

/* Remember me */
#post-1702 .login-remember label,
#post-1688 .login-remember label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #374151 !important;
}

#post-1702 .login-remember input[type="checkbox"],
#post-1688 .login-remember input[type="checkbox"] {
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
}

/* Bouton */
#post-1702 #wp-submit,
#post-1702 .button,
#post-1702 .button-primary,
#post-1688 #wp-submit,
#post-1688 .button,
#post-1688 .button-primary {
  width: 100% !important;
  min-height: 52px !important;
  border: none !important;
  border-radius: 14px !important;
  background: #111827 !important;
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  box-shadow: none !important;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease !important;
}

#post-1702 #wp-submit:hover,
#post-1702 .button:hover,
#post-1702 .button-primary:hover,
#post-1688 #wp-submit:hover,
#post-1688 .button:hover,
#post-1688 .button-primary:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 24px rgba(17, 24, 39, 0.14) !important;
  background: #0b1220 !important;
}

/* Lien mot de passe oublié */
#post-1702 > div > p:last-child,
#post-1688 > div > p:last-child {
  margin: 4px 0 0 !important;
  text-align: center !important;
}

#post-1702 > div > p:last-child a,
#post-1688 > div > p:last-child a {
  color: #111827 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

#post-1702 > div > p:last-child a:hover,
#post-1688 > div > p:last-child a:hover {
  text-decoration: underline !important;
}

/* Responsive */
@media (max-width: 768px) {
  #post-1702,
  #post-1688 {
    margin: 30px 16px !important;
    padding: 22px !important;
  }
}

/* =====================================================
   PAGE INSCRIPTION PARTICIPANT
===================================================== */

body.page-id-1704,
body.page-slug-inscription-participant {
  background: #f5f7fb !important;
}

.kz-register {
  max-width: 1180px;
  margin: 0 auto;
  padding: 60px 20px 80px;
}

.kz-register__hero {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 40px;
}

.kz-register__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 14px;
  border-radius: 999px;
  background: #eef2ff;
  color: #3730a3;
  font-size: 13px;
  font-weight: 700;
  margin-bottom: 18px;
}

.kz-register__title {
  margin: 0 0 14px;
  font-size: 46px;
  line-height: 1.05;
  letter-spacing: -0.02em;
  color: #111827;
}

.kz-register__subtitle {
  margin: 0;
  font-size: 18px;
  line-height: 1.7;
  color: #6b7280;
}

.kz-register__grid {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 28px;
  align-items: start;
}

.kz-register__content,
.kz-register__form-col {
  min-width: 0;
}

.kz-register__card {
  background: #ffffff;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 24px;
  box-shadow: 0 18px 50px rgba(17, 24, 39, 0.06);
}

.kz-register__card--soft {
  padding: 28px;
  margin-bottom: 22px;
}

.kz-register__card--soft h2 {
  margin: 0 0 18px;
  font-size: 28px;
  line-height: 1.1;
  color: #111827;
}

.kz-register__benefits {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 14px;
}

.kz-register__benefits li {
  padding: 14px 16px;
  border-radius: 16px;
  background: #f9fafb;
  color: #374151;
  font-size: 15px;
  line-height: 1.5;
  border: 1px solid rgba(17, 24, 39, 0.05);
}

.kz-register__card--link {
  padding: 24px 28px;
  background: linear-gradient(135deg, #111827 0%, #1f2937 100%);
  color: #ffffff;
}

.kz-register__card--link h3 {
  margin: 0 0 10px;
  font-size: 24px;
  line-height: 1.15;
  color: #ffffff;
}

.kz-register__card--link p {
  margin: 0 0 18px;
  color: rgba(255, 255, 255, 0.82);
  line-height: 1.6;
}

.kz-register__alt-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  border-radius: 14px;
  background: #ffffff;
  color: #111827 !important;
  text-decoration: none !important;
  font-weight: 700;
  transition: .2s ease;
}

.kz-register__alt-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.14);
}

.kz-register__form-card {
  padding: 30px;
}

.kz-register__form-title {
  margin: 0 0 10px;
  font-size: 32px;
  line-height: 1.08;
  color: #111827;
}

.kz-register__form-text {
  margin: 0 0 22px;
  color: #6b7280;
  line-height: 1.6;
}

/* Stylage générique des formulaires dans la carte */
.kz-register__form-card form {
  margin: 0;
}

.kz-register__form-card label {
  display: block;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 700;
  color: #111827;
}

.kz-register__form-card input[type="text"],
.kz-register__form-card input[type="email"],
.kz-register__form-card input[type="password"],
.kz-register__form-card input[type="tel"],
.kz-register__form-card input[type="url"],
.kz-register__form-card input[type="number"],
.kz-register__form-card select,
.kz-register__form-card textarea {
  width: 100%;
  min-height: 52px;
  padding: 14px 16px;
  border: 1px solid rgba(17, 24, 39, 0.14);
  border-radius: 14px;
  background: #fff;
  font-size: 15px;
  color: #111827;
  box-sizing: border-box;
  transition: border-color .2s ease, box-shadow .2s ease;
}

.kz-register__form-card textarea {
  min-height: 140px;
  resize: vertical;
}

.kz-register__form-card input:focus,
.kz-register__form-card select:focus,
.kz-register__form-card textarea:focus {
  outline: none;
  border-color: #111827;
  box-shadow: 0 0 0 4px rgba(17, 24, 39, 0.08);
}

.kz-register__form-card input[type="submit"],
.kz-register__form-card button,
.kz-register__form-card .button,
.kz-register__form-card .button-primary {
  width: 100%;
  min-height: 52px;
  border: none;
  border-radius: 14px;
  background: #111827;
  color: #ffffff;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.kz-register__form-card input[type="submit"]:hover,
.kz-register__form-card button:hover,
.kz-register__form-card .button:hover,
.kz-register__form-card .button-primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(17, 24, 39, 0.14);
  background: #0b1220;
}

/* Messages */
.kz-register__form-card .message,
.kz-register__form-card .error,
.kz-register__form-card .wpforms-error-container,
.kz-register__form-card .wpcf7-response-output {
  border-radius: 14px;
}

/* Responsive */
@media (max-width: 980px) {
  .kz-register__grid {
    grid-template-columns: 1fr;
  }

  .kz-register__title {
    font-size: 38px;
  }
}

@media (max-width: 768px) {
  .kz-register {
    padding: 36px 16px 60px;
  }

  .kz-register__title {
    font-size: 32px;
  }

  .kz-register__subtitle {
    font-size: 16px;
  }

  .kz-register__card--soft,
  .kz-register__card--link,
  .kz-register__form-card {
    padding: 22px;
  }
}

/* =====================================================
   PAGE INSCRIPTION CREATEUR
===================================================== */

body.page-id-1689 {
  background: #f5f7fb !important;
}

/* Variante créateur */
.kz-register--creator .kz-register__badge--creator {
  background: #ecfeff;
  color: #155e75;
}

.kz-register--creator .kz-register__card--creator-link {
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
}

.kz-register--creator .kz-register__form-title {
  color: #0f172a;
}

/* Bouton secondaire sur bloc créateur */
.kz-register--creator .kz-register__alt-btn {
  background: #ffffff;
  color: #0f172a !important;
}

/* Légère variation visuelle des bénéfices côté créateur */
.kz-register--creator .kz-register__benefits li {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.06);
}

/* Si le formulaire créateur a des champs/labels plus longs */
.kz-register--creator .kz-register__form-card label {
  line-height: 1.4;
}

/* Responsive déjà couvert par le bloc global .kz-register */