.elementor-99 .elementor-element.elementor-element-a8e0d20{--display:flex;--min-height:700px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.5;--margin-top:-33px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:150px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-99 .elementor-element.elementor-element-a8e0d20:not(.elementor-motion-effects-element-type-background), .elementor-99 .elementor-element.elementor-element-a8e0d20 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-f4bf80f );}.elementor-99 .elementor-element.elementor-element-a8e0d20::before, .elementor-99 .elementor-element.elementor-element-a8e0d20 > .elementor-background-video-container::before, .elementor-99 .elementor-element.elementor-element-a8e0d20 > .e-con-inner > .elementor-background-video-container::before, .elementor-99 .elementor-element.elementor-element-a8e0d20 > .elementor-background-slideshow::before, .elementor-99 .elementor-element.elementor-element-a8e0d20 > .e-con-inner > .elementor-background-slideshow::before, .elementor-99 .elementor-element.elementor-element-a8e0d20 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, var( --e-global-color-primary ) 0%, var( --e-global-color-f4bf80f ) 100%);}.elementor-99 .elementor-element.elementor-element-2c7a63e{--display:flex;--min-height:0px;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:-149px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-99 .elementor-element.elementor-element-2c7a63e{--content-width:1222px;}}/* Start custom CSS *//* =========================================================
   TENNIS BOX — CSS FINAL CONSOLIDÉ
   Page Mon Compte — Elementor Réglages de page > CSS
   ========================================================= */

/* ── 1. Pleine largeur du shortcode Mon Compte uniquement ── */
body.woocommerce-account .elementor-widget-shortcode {
  margin-left: calc(-50vw + 50%) !important;
  margin-right: calc(-50vw + 50%) !important;
  width: 100vw !important;
  max-width: 100vw !important;
}

/* On laisse les containers Elementor vivre normalement */
body.woocommerce-account .elementor-section .elementor-container {
  max-width: 100% !important;
}

/* IMPORTANT : on ne touche plus globalement à .e-con, .e-con-inner,
   .elementor-column, .elementor-col-100, .elementor-widget-wrap */

/* ── 2. Hero banner — aligné sur le hero checkout ── */
.tb-hero-banner {
  position: relative !important;
  height: 700px !important;
  background-color: #CB5223 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  margin: 0 !important;
  overflow: hidden !important;
  width: 100vw !important;
  max-width: 100vw !important;
  padding: 0 40px !important;
  box-sizing: border-box !important;
}

.tb-hero-banner::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: linear-gradient(180deg, rgba(255,255,255,0.5) 0%, rgba(203,82,35,0.5) 100%) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

.tb-hero-banner > * {
  position: relative !important;
  z-index: 2 !important;
}

.tb-hero-title {
  font-family: "Open Sans", sans-serif !important;
  font-size: 80px !important;
  font-weight: 700 !important;
  color: #004B76 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  margin: 0 0 16px !important;
  line-height: 1.1 !important;
  border: none !important;
  border-bottom: none !important;
  display: block !important;
  padding: 0 !important;
  background: none !important;
  width: 100% !important;
  text-align: center !important;
}

.tb-hero-subtitle {
  font-family: "Open Sans", sans-serif !important;
  font-size: 50px !important;
  font-weight: 400 !important;
  color: #ffffff !important;
  margin: 0 0 40px !important;
  line-height: 1.2 !important;
  width: 100% !important;
  text-align: center !important;
  max-width: 1000px !important;
}

/* ── 3. Stats hero — alignées sur les pills checkout ── */
.tb-hero-stats {
  display: flex !important;
  justify-content: center !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
  width: 100% !important;
  margin-top: 0 !important;
}

.tb-hero-stat {
  background: #004B76 !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  border-radius: 12px !important;
  padding: 18px 40px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 6px !important;
  min-width: 160px !important;
  text-align: center !important;
}

.tb-hero-stat-num {
  color: #ffffff !important;
  font-family: "Open Sans", sans-serif !important;
  font-size: 36px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  display: block !important;
}

.tb-hero-stat-label {
  color: rgba(255,255,255,0.6) !important;
  font-family: "Open Sans", sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  margin-top: 0 !important;
  display: block !important;
}

/* ── 4. Card principale ── */
.tb-account-card {
  border-radius: 0 !important;
  margin: 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: #F8EBE1 !important;
  padding: 0 !important;
  padding-bottom: 60px !important;
}

/* ── 5. Grille tuiles ── */
.tb-tiles-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 30px !important;
  padding: 50px 60px !important;
  background: #F8EBE1 !important;
  max-width: 1500px !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
}

/* ── 6. Tuiles ── */
.tb-tile {
  background: #ffffff !important;
  border-radius: 20px !important;
  padding: 16px 18px 22px !important;
  border: none !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.08) !important;
  transition: transform .3s ease, box-shadow .3s ease !important;
  text-decoration: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  position: relative !important;
  overflow: hidden !important;
}
.tb-tile::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 10px !important;
  background: linear-gradient(90deg, #CB5223, #e06a3a) !important;
  border-radius: 20px 20px 0 0 !important;
}
.tb-tile:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 20px 50px rgba(0,0,0,.14) !important;
  text-decoration: none !important;
}
.tb-tile-img {
  width: 450px !important;
  height: 140px !important;
  object-fit: contain !important;
  margin-bottom: 28px !important;
  margin-top: 10px !important;
}
.tb-tile-title {
  font-family: "Open Sans", sans-serif !important;
  font-size: 25px !important;
  font-weight: 700 !important;
  color: #CB5223 !important;
  margin-bottom: 10px !important;
}
.tb-tile-desc {
  font-family: "Open Sans", sans-serif !important;
  font-size: 22px !important;
  color: #6D7885 !important;
  line-height: 1.5 !important;
}
.tb-tile-badge {
  position: absolute !important;
  top: 14px !important; right: 14px !important;
  background: #CB5223 !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  border-radius: 50px !important;
  padding: 3px 9px !important;
}

/* ── 7. Section commandes dashboard ── */
.tb-orders-section {
  padding: 40px 60px 50px !important;
  max-width: 1500px !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
  background: #F8EBE1 !important;
}
.tb-section-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin-bottom: 36px !important;
}
.tb-section-title {
  font-family: "Merriweather", serif !important;
  font-size: 30px !important;
  font-weight: 900 !important;
  color: #004B76 !important;
  margin-bottom: 20px !important;
}
.tb-section-link {
  font-size: 30px !important;
  font-weight: 700 !important;
  color: #CB5223 !important;
  text-decoration: none !important;
  background: rgba(203,82,35,.1) !important;
  padding: 6px 18px !important;
  border-radius: 50px !important;
  transition: all .2s !important;
  margin-bottom: 20px !important;
  display: inline-block !important;
}
.tb-section-link:hover { background: #CB5223 !important; color: #fff !important; }

/* Tableau commandes */
.tb-orders-table {
  width: 100% !important;
  border-collapse: collapse !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.08) !important;
}
.tb-orders-table thead tr { background: #004B76 !important; }
.tb-orders-table thead th {
  color: #fff !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .8px !important;
  padding: 20px 24px !important;
  text-align: left !important;
}
.tb-orders-table tbody tr {
  background: #fff !important;
  border-bottom: 1px solid #f0ece6 !important;
  transition: background .2s !important;
}
.tb-orders-table tbody tr:hover { background: #fdf6f1 !important; }
.tb-orders-table tbody tr:last-child { border-bottom: none !important; }
.tb-orders-table tbody td {
  padding: 20px 24px !important;
  font-size: 16px !important;
  color: #18324A !important;
  vertical-align: middle !important;
}
.tb-td-muted { color: #6D7885 !important; }
.tb-extra-items { color: #6D7885 !important; font-size: 14px !important; }
.tb-status-chip {
  background: #F8EBE1 !important;
  color: #CB5223 !important;
  border-radius: 50px !important;
  padding: 6px 16px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}
.tb-status-completed { background: #e8f5ee !important; color: #15A259 !important; }
.tb-status-processing { background: #e8f0f8 !important; color: #004B76 !important; }
.tb-dl-btn {
  background: #004B76 !important;
  color: #fff !important;
  border-radius: 10px !important;
  padding: 10px 18px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition: background .2s !important;
  display: inline-block !important;
}
.tb-dl-btn:hover { background: #CB5223 !important; color: #fff !important; }
.tb-empty-orders {
  text-align: center !important;
  padding: 40px 20px !important;
  background: #fff !important;
  border-radius: 16px !important;
}
.tb-empty-icon { font-size: 60px !important; margin-bottom: 20px !important; }
.tb-empty-orders p { color: #6D7885 !important; font-size: 16px !important; margin-bottom: 36px !important; }

/* ── 8. Bandeau déconnexion dashboard ── */
.tb-logout-band {
  background: linear-gradient(135deg, #CB5223 0%, #a83f18 100%) !important;
  padding: 36px 60px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;
}
.tb-logout-band-left {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
}
.tb-logout-band-icon {
  width: 60px !important; height: 60px !important;
  background: rgba(255,255,255,.15) !important;
  border-radius: 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 30px !important;
  flex-shrink: 0 !important;
}
.tb-logout-band-text strong {
  display: block !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin-bottom: 10px !important;
}
.tb-logout-band-text span { font-size: 22px !important; color: rgba(255,255,255,.75) !important; }
.tb-logout-btn {
  background: rgba(255,255,255,.15) !important;
  border: 2px solid rgba(255,255,255,.4) !important;
  color: #fff !important;
  border-radius: 50px !important;
  padding: 16px 40px !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition: all .2s !important;
  display: inline-block !important;
}
.tb-logout-btn:hover { background: #fff !important; color: #CB5223 !important; border-color: #fff !important; }

/* ── 9. Formulaire non connecté ── */
.tb-form-tabs {
  display: flex !important;
  gap: 0 !important;
  justify-content: center !important;
  padding: 40px 60px 0 !important;
  max-width: 900px !important;
  margin: 0 auto !important;
}
.tb-form-tab {
  flex: 1 !important;
  padding: 18px 32px !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  font-family: "Open Sans", sans-serif !important;
  background: rgba(0,75,118,.08) !important;
  color: #004B76 !important;
  border: none !important;
  cursor: pointer !important;
  transition: all .2s !important;
  border-bottom: 3px solid transparent !important;
}
.tb-form-tab:first-child { border-radius: 16px 0 0 16px !important; }
.tb-form-tab:last-child { border-radius: 0 16px 16px 0 !important; }
.tb-form-tab.tb-active { background: #fff !important; color: #CB5223 !important; border-bottom: 3px solid #CB5223 !important; }
.tb-form-tab:hover:not(.tb-active) { background: rgba(203,82,35,.08) !important; color: #CB5223 !important; }
.tb-form-section { display: none !important; }
.tb-form-section.tb-active { display: block !important; }
.tb-form-body {
  max-width: 900px !important;
  margin: 20px auto 60px !important;
  padding: 0 60px 50px !important;
  background: #fff !important;
  border-radius: 20px !important;
  box-shadow: 0 12px 40px rgba(0,0,0,.08) !important;
}
.tb-form-greeting {
  font-family: "Merriweather", serif !important;
  font-size: 28px !important;
  font-weight: 900 !important;
  color: #004B76 !important;
  padding-top: 36px !important;
  margin-bottom: 8px !important;
}
.tb-form-subtitle { font-size: 17px !important; color: #6D7885 !important; margin-bottom: 30px !important; }
.tb-form-body .woocommerce-form__label,
.tb-form-body label { font-size: 15px !important; font-weight: 600 !important; color: #004B76 !important; margin-bottom: 6px !important; }
.tb-form-body input[type=text],
.tb-form-body input[type=email],
.tb-form-body input[type=password] {
  border: 2px solid #e8e0d8 !important;
  border-radius: 12px !important;
  padding: 12px 16px !important;
  font-size: 15px !important;
  width: 100% !important;
  transition: border-color .2s !important;
}
.tb-form-body input[type=text]:focus,
.tb-form-body input[type=email]:focus,
.tb-form-body input[type=password]:focus { border-color: #CB5223 !important; outline: none !important; }
.tb-form-body .woocommerce-Button,
.tb-form-body button[type="submit"],
.tb-form-body input[type="submit"] {
  background: #004B76 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 14px 40px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: background .2s !important;
  width: 100% !important;
  margin-top: 10px !important;
}
.tb-form-body .woocommerce-Button:hover,
.tb-form-body button[type="submit"]:hover,
.tb-form-body input[type="submit"]:hover { background: #CB5223 !important; }
.tb-form-body .lost_password a { color: #CB5223 !important; font-size: 14px !important; }
p.ast-woo-form-actions { text-align: center !important; color: #004B76 !important; font-size: 15px !important; }
p.ast-woo-form-actions a { color: #B92121 !important; font-weight: 700 !important; text-decoration: underline !important; }

/* ── 10. Fix hauteur min conteneur ── */
.elementor-element { min-height: unset !important; }
.e-con { min-height: unset !important; }

/* ── 11. Endpoint content + fil d'Ariane ── */
.tb-endpoint-content {
  padding: 0 60px 60px !important;
  background: #F8EBE1 !important;
}
.tb-breadcrumb {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 20px 0 30px !important;
  font-size: 22px !important;
  font-family: "Open Sans", sans-serif !important;
}
.tb-breadcrumb-home { color: #CB5223 !important; font-weight: 700 !important; text-decoration: none !important; }
.tb-breadcrumb-home:hover { color: #004B76 !important; }
.tb-breadcrumb-sep { color: #6D7885 !important; font-size: 26px !important; }
.tb-breadcrumb-img { display: none !important; }
.tb-breadcrumb-current { color: #004B76 !important; font-weight: 700 !important; }

/* ── 12. Bandeau déconnexion endpoints ── */
.tb-endpoint-logout {
  background: linear-gradient(135deg, #CB5223 0%, #a83f18 100%) !important;
  padding: 36px 60px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;
  margin-top: 0 !important;
}
.tb-endpoint-logout-left { display: flex !important; align-items: center !important; gap: 20px !important; }
.tb-endpoint-logout-icon {
  width: 60px !important; height: 60px !important;
  background: rgba(255,255,255,.15) !important;
  border-radius: 16px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  font-size: 30px !important; flex-shrink: 0 !important;
}
.tb-endpoint-logout-text strong { display: block !important; font-size: 24px !important; font-weight: 700 !important; color: #fff !important; margin-bottom: 6px !important; }
.tb-endpoint-logout-text span { font-size: 16px !important; color: rgba(255,255,255,.75) !important; }
.tb-endpoint-logout-btn {
  background: rgba(255,255,255,.15) !important;
  border: 2px solid rgba(255,255,255,.4) !important;
  color: #fff !important;
  border-radius: 50px !important;
  padding: 16px 40px !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition: all .2s !important;
  display: inline-block !important;
}
.tb-endpoint-logout-btn:hover { background: #fff !important; color: #CB5223 !important; border-color: #fff !important; }

/* ── 13. État vide stylisé ── */
.tb-empty-downloads {
  text-align: center !important;
  padding: 60px 40px !important;
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.08) !important;
}
.tb-empty-downloads img { width: 120px !important; height: 120px !important; object-fit: contain !important; margin-bottom: 24px !important; }
.tb-empty-downloads h3 { font-family: "Merriweather", serif !important; font-size: 24px !important; font-weight: 700 !important; color: #004B76 !important; margin-bottom: 12px !important; }
.tb-empty-downloads p { font-size: 16px !important; color: #6D7885 !important; margin-bottom: 30px !important; }
.tb-empty-downloads a {
  background: #CB5223 !important; color: #fff !important;
  padding: 14px 36px !important; border-radius: 50px !important;
  font-size: 16px !important; font-weight: 700 !important;
  text-decoration: none !important; display: inline-block !important;
  transition: background .2s !important;
}
.tb-empty-downloads a:hover { background: #004B76 !important; }

/* ── 14. Page détail commande — variante 3 ── */
.tb-order-info {
  background: #F8EBE1 !important;
  border-radius: 10px !important;
  padding: 12px 16px !important;
  margin-bottom: 20px !important;
  font-size: 14px !important;
  color: #004B76 !important;
}
.tb-order-section {
  background: #fff !important;
  border-radius: 16px !important;
  border: 0.5px solid rgba(0,0,0,.08) !important;
  padding: 20px 24px !important;
  margin-bottom: 20px !important;
}
.tb-order-section-title {
  font-family: "Merriweather", serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #004B76 !important;
  padding-bottom: 10px !important;
  border-bottom: 2px solid #CB5223 !important;
  margin-bottom: 16px !important;
  margin-top: 0 !important;
}
.tb-order-table {
  width: 100% !important;
  border-collapse: collapse !important;
}
.tb-order-table thead th {
  background: #F8EBE1 !important;
  color: #004B76 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  padding: 10px 14px !important;
  border: none !important;
  text-align: left !important;
}
.tb-order-table tbody td {
  padding: 12px 14px !important;
  font-size: 14px !important;
  color: #004B76 !important;
  border-bottom: 0.5px solid rgba(0,0,0,.06) !important;
}
.tb-order-table tbody tr:last-child td { border-bottom: none !important; }
.tb-order-table tfoot th,
.tb-order-table tfoot td {
  padding: 10px 14px !important;
  font-size: 14px !important;
  color: #004B76 !important;
  border-top: 0.5px solid rgba(0,0,0,.06) !important;
}
.tb-order-table tfoot tr.tb-order-total th,
.tb-order-table tfoot tr.tb-order-total td {
  background: #F8EBE1 !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  border-radius: 6px !important;
}
.tb-order-dl-btn {
  background: #CB5223 !important;
  color: #fff !important;
  padding: 6px 14px !important;
  border-radius: 20px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background .2s !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 220px !important;
}
.tb-order-dl-btn:hover { background: #004B76 !important; color: #fff !important; }
.tb-order-again-btn {
  display: inline-block !important;
  margin-top: 16px !important;
  background: #004B76 !important;
  color: #fff !important;
  padding: 10px 24px !important;
  border-radius: 50px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: background .2s !important;
}
.tb-order-again-btn:hover { background: #CB5223 !important; color: #fff !important; }
.tb-order-address {
  font-style: normal !important;
  font-size: 14px !important;
  color: #004B76 !important;
  line-height: 1.8 !important;
}

/* ── 15. Dashboard WooCommerce V4 (pages internes) ── */
:root {
  --tb-blue: #004B76; --tb-blue-2: #3079A3; --tb-red: #B92121;
  --tb-orange: #CB5223; --tb-text: #18324A; --tb-muted: #6D7885;
  --tb-line: rgba(0,0,0,.08); --tb-shadow: 0 14px 40px rgba(14,30,37,.08);
  --tb-radius-xl: 30px;
}
body.woocommerce-account .woocommerce-MyAccount-navigation { display: none !important; }
body.woocommerce-account .woocommerce-MyAccount-content {
  float: none !important; width: 100% !important;
  background: linear-gradient(180deg,#ffffff 0%, #fffdfb 100%);
  border: 1px solid var(--tb-line); border-radius: var(--tb-radius-xl);
  padding: 42px; box-shadow: var(--tb-shadow); color: var(--tb-text);
  position: relative; overflow: hidden;
  font-family: "Open Sans", sans-serif; font-size: 17px; line-height: 1.65;
}
body.woocommerce-account .woocommerce-MyAccount-content::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 6px;
  background: linear-gradient(90deg, var(--tb-blue) 0%, var(--tb-blue-2) 45%, var(--tb-red) 100%);
}
body.woocommerce-account .woocommerce-MyAccount-content h2 { font-family: "Merriweather", serif; color: var(--tb-blue); font-weight: 700; font-size: 40px; margin: 0 0 22px 0; }
body.woocommerce-account .woocommerce-MyAccount-content h3,
body.woocommerce-account .woocommerce-MyAccount-content legend { font-family: "Merriweather", serif; color: var(--tb-blue); font-weight: 700; font-size: 28px; margin: 0 0 22px 0; }
body.woocommerce-account .button,
body.woocommerce-account button.button,
body.woocommerce-account .woocommerce-Button,
body.woocommerce-account a.button {
  padding: 15px 24px !important; border: none !important; border-radius: 18px !important;
  background: linear-gradient(180deg, var(--tb-blue) 0%, #003a5b 100%) !important;
  color: #fff !important; font-family: "Open Sans", sans-serif !important;
  font-size: 16px !important; font-weight: 700 !important;
}
body.woocommerce-account .button:hover,
body.woocommerce-account button.button:hover,
body.woocommerce-account .woocommerce-Button:hover,
body.woocommerce-account a.button:hover { background: linear-gradient(180deg, var(--tb-red) 0%, #8f1717 100%) !important; }
body.woocommerce-account input[type="text"],
body.woocommerce-account input[type="email"],
body.woocommerce-account input[type="password"],
body.woocommerce-account textarea,
body.woocommerce-account select {
  width: 100%; min-height: 56px; padding: 14px 16px !important;
  border: 1px solid var(--tb-orange) !important; border-radius: 18px !important;
  background: #fff !important; color: var(--tb-text) !important; font-size: 16px !important;
}
body.woocommerce-account input:focus,
body.woocommerce-account textarea:focus { outline: none !important; border-color: var(--tb-orange) !important; box-shadow: 0 0 0 4px rgba(203,82,35,.10) !important; }
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-message { border: none !important; border-left: 5px solid var(--tb-blue) !important; border-radius: 18px !important; padding: 18px 20px !important; background: linear-gradient(180deg,#f6fbfe 0%, #eef6fb 100%) !important; }
body.woocommerce-account .woocommerce-error { border-left-color: var(--tb-red) !important; background: linear-gradient(180deg,#fff6f6 0%, #fdeeee 100%) !important; }

/* Formulaire Mon Profil */
body.woocommerce-account .woocommerce-EditAccountForm { position: relative; display: block !important; padding-top: 34px !important; }
body.woocommerce-account .woocommerce-EditAccountForm::before { content: ""; position: absolute; top: 24px; left: 28px; right: 28px; height: 430px; background: rgba(244,216,194,.32); border: 1px solid rgba(0,0,0,.05); border-radius: 24px; z-index: 0; pointer-events: none; }
body.woocommerce-account .woocommerce-EditAccountForm::after { content: "Gestion des informations personnelles"; position: absolute; top: 48px; left: 48px; z-index: 2; font-family: "Merriweather", serif; font-size: 24px; font-weight: 700; color: #004B76; pointer-events: none; }
body.woocommerce-account .woocommerce-EditAccountForm > * { position: relative; z-index: 1; }
body.woocommerce-account .woocommerce-EditAccountForm p.form-row-first { width: calc(50% - 56px) !important; float: left !important; margin-top: 98px !important; margin-left: 42px !important; margin-right: 14px !important; }
body.woocommerce-account .woocommerce-EditAccountForm p.form-row-last { width: calc(50% - 56px) !important; float: right !important; margin-top: 98px !important; margin-left: 14px !important; margin-right: 42px !important; }
body.woocommerce-account .woocommerce-EditAccountForm p.form-row-wide { width: auto !important; clear: both !important; float: none !important; margin-left: 42px !important; margin-right: 42px !important; }
body.woocommerce-account .woocommerce-EditAccountForm fieldset { clear: both !important; background: rgba(244,216,194,.32) !important; border: 1px solid rgba(0,0,0,.05) !important; border-radius: 24px !important; margin: 26px 28px 28px 28px !important; padding: 26px 14px 16px 14px !important; }
body.woocommerce-account .woocommerce-EditAccountForm fieldset legend { display: block !important; width: 100% !important; border: 0 !important; margin: 0 0 18px 0 !important; padding: 80px 0 0 20px !important; font-family: "Merriweather", serif !important; font-size: 24px !important; font-weight: 700 !important; color: #004B76 !important; }
body.woocommerce-account .woocommerce-EditAccountForm fieldset input[type="password"] { height: 68px !important; min-height: 68px !important; padding: 0 58px 0 18px !important; line-height: 68px !important; border-radius: 18px !important; }
body.woocommerce-account .woocommerce-EditAccountForm button { background: linear-gradient(180deg,#004B76 0%, #003a5b 100%); border-radius: 16px; padding: 16px 28px; font-size: 16px; font-weight: 700; margin-top: 6px !important; }
body.woocommerce-account .woocommerce-EditAccountForm button:hover { background: linear-gradient(180deg,#B92121 0%, #8f1717 100%); }
body.woocommerce-account .woocommerce-EditAccountForm fieldset::after { content: ""; display: block; clear: both; }

/* ── 16. Responsive ── */
@media (max-width: 1024px) {
  .tb-tiles-grid { grid-template-columns: repeat(2, 1fr) !important; padding: 36px 30px !important; }
  .tb-orders-section { padding-left: 30px !important; padding-right: 30px !important; }
  .tb-endpoint-content { padding: 0 30px 40px !important; }
  .tb-logout-band, .tb-endpoint-logout { padding: 30px !important; }
}
@media (max-width: 767px) {
  .tb-hero-banner { padding: 50px 20px 70px !important; }
  .tb-hero-title { font-size: 26px !important; }
  .tb-tiles-grid { grid-template-columns: 1fr 1fr !important; padding: 20px 16px !important; }
  .tb-form-body { padding-left: 16px !important; padding-right: 16px !important; }
  .tb-endpoint-content { padding: 0 16px 30px !important; }
  .tb-logout-band, .tb-endpoint-logout { padding: 20px 16px !important; flex-direction: column !important; }
  body.woocommerce-account .woocommerce-MyAccount-content { padding: 20px; border-radius: 18px; }
  body.woocommerce-account .woocommerce-EditAccountForm p.form-row-first,
  body.woocommerce-account .woocommerce-EditAccountForm p.form-row-last,
  body.woocommerce-account .woocommerce-EditAccountForm p.form-row-wide { width: auto !important; float: none !important; margin-left: 30px !important; margin-right: 30px !important; }
}

/* ── Corrections page détail commande ── */
/* Fermer le tableau téléchargements en bas */
.tb-order-table tbody tr:last-child td {
  border-bottom: 0.5px solid rgba(0,0,0,.06) !important;
}
.tb-order-section {
  padding-bottom: 24px !important;
}

/* Aligner sous-total et total sous la colonne Produit */
.tb-order-table tfoot th {
  text-align: left !important;
  padding-left: 14px !important;
}
.tb-order-table tfoot td {
  text-align: right !important;
}

/* ── Fix tableau téléchargements et couleurs ── */
.tb-order-table {
  border: 0.5px solid rgba(0,75,118,.15) !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}
.tb-order-table thead th,
.tb-order-table tbody td,
.tb-order-table tfoot th,
.tb-order-table tfoot td {
  color: #004B76 !important;
  border-left: 0.5px solid rgba(0,75,118,.08) !important;
}
.tb-order-table thead th:first-child,
.tb-order-table tbody td:first-child,
.tb-order-table tfoot th:first-child,
.tb-order-table tfoot td:first-child {
  border-left: none !important;
}
.tb-order-table tbody tr:last-child td {
  border-bottom: 0.5px solid rgba(0,75,118,.08) !important;
}
.tb-order-address,
.tb-order-address * {
  color: #004B76 !important;
}
.tb-order-info,
.tb-order-info * {
  color: #004B76 !important;
}

/* ── Page Mon profil — style variante 3 ── */
.tb-endpoint-content .woocommerce-MyAccount-content {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.tb-endpoint-content .woocommerce-MyAccount-content::before {
  display: none !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm {
  padding-top: 0 !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
  background: #fff !important;
  border: 0.5px solid rgba(0,0,0,.08) !important;
  border-radius: 16px !important;
  z-index: 0 !important;
  height: auto !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm::after {
  content: "Gestion des informations personnelles" !important;
  font-family: "Merriweather", serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #004B76 !important;
  top: 20px !important;
  left: 24px !important;
  padding-bottom: 10px !important;
  border-bottom: 2px solid #CB5223 !important;
  width: calc(100% - 48px) !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm p.form-row-first {
  margin-top: 60px !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm fieldset {
  background: #fff !important;
  border: 0.5px solid rgba(0,0,0,.08) !important;
  border-radius: 16px !important;
  margin: 20px 0 0 0 !important;
  padding: 20px 24px 20px !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm fieldset legend {
  font-family: "Merriweather", serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #004B76 !important;
  padding: 0 0 10px 0 !important;
  border-bottom: 2px solid #CB5223 !important;
  margin-bottom: 20px !important;
  width: 100% !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm label {
  color: #004B76 !important;
  font-weight: 600 !important;
  font-size: 14px !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm input[type="text"],
.tb-endpoint-content .woocommerce-EditAccountForm input[type="email"],
.tb-endpoint-content .woocommerce-EditAccountForm input[type="password"] {
  border: 1px solid #CB5223 !important;
  border-radius: 10px !important;
  color: #004B76 !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm button {
  background: #004B76 !important;
  border-radius: 50px !important;
  padding: 12px 30px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #fff !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm button:hover {
  background: #CB5223 !important;
}

/* ── Fix fond blanc section infos personnelles ── */
.tb-endpoint-content .woocommerce-EditAccountForm {
  background: #fff !important;
  border: 0.5px solid rgba(0,0,0,.08) !important;
  border-radius: 16px !important;
  padding: 20px 24px 24px !important;
  position: relative !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm::before {
  display: none !important;
}

/* ── Fix section changement mot de passe ── */
.tb-endpoint-content .woocommerce-EditAccountForm fieldset {
  background: #fff !important;
  border: 0.5px solid rgba(0,0,0,.08) !important;
  border-radius: 16px !important;
  margin: 20px 0 0 0 !important;
  padding: 20px 24px !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm fieldset legend {
  background: #fff !important;
  font-family: "Merriweather", serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #004B76 !important;
  padding: 0 0 10px 0 !important;
  border-bottom: 2px solid #CB5223 !important;
  margin-bottom: 20px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* ── Fix complet page Mon profil ── */
.tb-endpoint-content .woocommerce-EditAccountForm {
  background: #fff !important;
  border: 0.5px solid rgba(0,0,0,.08) !important;
  border-radius: 16px !important;
  padding: 20px 24px 24px !important;
  margin: 0 !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm::before,
.tb-endpoint-content .woocommerce-EditAccountForm::after {
  display: none !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm .tb-profil-title {
  font-family: "Merriweather", serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #004B76 !important;
  padding-bottom: 10px !important;
  border-bottom: 2px solid #CB5223 !important;
  margin-bottom: 20px !important;
  display: block !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm fieldset {
  background: #fff !important;
  border: 0.5px solid rgba(0,0,0,.08) !important;
  border-radius: 16px !important;
  margin: 20px 0 0 0 !important;
  padding: 20px 24px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  float: none !important;
  clear: both !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm fieldset legend {
  font-family: "Merriweather", serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #004B76 !important;
  padding: 0 0 10px 0 !important;
  border-bottom: 2px solid #CB5223 !important;
  margin-bottom: 20px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  background: transparent !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm p.form-row-first,
.tb-endpoint-content .woocommerce-EditAccountForm p.form-row-last {
  width: calc(50% - 12px) !important;
  margin-top: 16px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm p.form-row-first {
  float: left !important;
  margin-right: 12px !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm p.form-row-last {
  float: right !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm p.form-row-wide {
  width: 100% !important;
  float: none !important;
  clear: both !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm button {
  margin-top: 20px !important;
  clear: both !important;
  display: inline-block !important;
}

/* ── Fix final Mon profil ── */
.tb-endpoint-content .woocommerce-EditAccountForm::after {
  display: block !important;
  content: "Gestion des informations personnelles" !important;
  position: absolute !important;
  top: 20px !important;
  left: 24px !important;
  right: 24px !important;
  font-family: "Merriweather", serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #004B76 !important;
  padding-bottom: 10px !important;
  border-bottom: 2px solid #CB5223 !important;
  z-index: 2 !important;
  pointer-events: none !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm p.form-row-first {
  margin-top: 70px !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm fieldset {
  background: #fff !important;
  border: 0.5px solid rgba(0,0,0,.08) !important;
  border-radius: 16px !important;
  margin: 20px 0 0 0 !important;
  padding: 20px 24px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.tb-endpoint-content .woocommerce-EditAccountForm fieldset legend {
  font-family: "Merriweather", serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #004B76 !important;
  padding: 0 0 10px 0 !important;
  border-bottom: 2px solid #CB5223 !important;
  margin-bottom: 20px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  background: transparent !important;
}
body.woocommerce-account .tb-endpoint-content .woocommerce-EditAccountForm fieldset {
  background: #fff !important;
  border: 0.5px solid rgba(0,0,0,.08) !important;
  border-radius: 16px !important;
  margin: 20px 0 0 0 !important;
  padding: 20px 24px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
body.woocommerce-account .tb-endpoint-content .woocommerce-EditAccountForm fieldset legend {
  font-family: "Merriweather", serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #004B76 !important;
  padding: 0 0 10px 0 !important;
  border-bottom: 2px solid #CB5223 !important;
  margin-bottom: 20px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  background: transparent !important;
}
/* ── Fix contour et espaces Mon profil ── */
body.woocommerce-account .tb-endpoint-content .woocommerce-EditAccountForm fieldset {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.woocommerce-account .tb-endpoint-content .woocommerce-EditAccountForm fieldset legend {
  margin-top: 20px !important;
}
/* ── Espaces Mon profil ── */
body.woocommerce-account .tb-endpoint-content .woocommerce-EditAccountForm p.form-row-first {
  margin-top: 20px !important;
}
body.woocommerce-account .tb-endpoint-content .woocommerce-EditAccountForm fieldset {
  margin-top: 40px !important;
}
/* ── Fix alignement Prénom / Nom ── */
body.woocommerce-account .tb-endpoint-content .woocommerce-EditAccountForm p.form-row-first,
body.woocommerce-account .tb-endpoint-content .woocommerce-EditAccountForm p.form-row-last {
  margin-top: 0 !important;
  vertical-align: top !important;
}
/* ── Espace entre titre et champs Prénom/Nom ── */
body.woocommerce-account .tb-endpoint-content .woocommerce-EditAccountForm p.form-row-first,
body.woocommerce-account .tb-endpoint-content .woocommerce-EditAccountForm p.form-row-last {
  margin-top: 40px !important;
}
/* ── Espace au dessus des onglets connexion ── */
.tb-form-tabs {
  padding-top: 80px !important;
}
/* ── Espace sous le greeting formulaire ── */
.tb-form-greeting {
  margin-bottom: 30px !important;
}
@media (max-width: 767px) {
  .tb-hero-banner {
    height: 460px !important;
    padding: 0 20px !important;
  }

  .tb-hero-title {
    font-size: 34px !important;
  }

  .tb-hero-subtitle {
    font-size: 22px !important;
    margin-bottom: 24px !important;
  }

  .tb-hero-stat {
    padding: 14px 18px !important;
    min-width: 120px !important;
  }

  .tb-hero-stat-num {
    font-size: 24px !important;
  }

  .tb-hero-stat-label {
    font-size: 11px !important;
  }
}/* End custom CSS */