.tw-bg-black{
  background: #92c841; border: none; cursor: pointer;
}

/* extras optionnels */ .tw-container{max-width:1100px;margin:0 auto;}

/* ProAccount: prominent banners for form feedback */
#pro-form-msg { outline: none; }
.pro-banner{ display:flex; align-items:flex-start; gap:.75rem; padding:1rem; border-width:2px; border-radius:.75rem; font-weight:600; margin-top:1rem; }
.pro-banner--ok{ background:#ecfdf5; border-color:#10b981; color:#065f46; }
.pro-banner--error{ background:#fef2f2; border-color:#ef4444; color:#7f1d1d; }
.pro-banner__icon{ flex:0 0 auto; font-size:1.25rem; line-height:1.25rem; }
.pro-banner__text{ flex:1 1 auto; }
.pro-shadow{ box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1); }
.pro-focus{ box-shadow:0 0 0 4px rgba(59,130,246,.35); }
@keyframes pro-shake {
  10%, 90% { transform: translateX(-1px); }
  20%, 80% { transform: translateX(2px); }
  30%, 50%, 70% { transform: translateX(-4px); }
  40%, 60% { transform: translateX(4px); }
}
.pro-shake { animation: pro-shake .45s ease-in-out; }



/* === ProAccount v6 layout tweaks === */

/* 2 per line on desktop */
#pro-form .pro-form-grid{
  display:flex; flex-wrap:wrap; gap:16px;
}
#pro-form .pro-form-grid .form-group{ width:100%; }
@media (min-width: 992px){
  #pro-form .pro-form-grid .form-group{ width:calc(50% - 8px); }
  /* Force full width for groups explicitly marked or for long fields */
  #pro-form .pro-form-grid .form-group.pro-full{ width:100%; }
}

/* Left-align labels */
#pro-form label{ text-align:left !important; display:block; }

/* Webinars: 3 per row grid */
.pro-webinars{ display:grid; grid-template-columns: 1fr; gap:16px; }
@media (min-width: 768px){
  .pro-webinars{ grid-template-columns: repeat(3, 1fr); }
}

/* "Voir tout" spacing */
.pro-webinars-seeall{ margin-top: 20px; display:inline-block; }



/* v7: Ensure two columns in the pro form on desktop even without Tailwind */
#formulaire .pro-form-grid{ display:flex; flex-wrap:wrap; gap:16px; }
#formulaire .pro-form-grid > div{ width:100%; }
@media (min-width:992px){
  #formulaire .pro-form-grid > div{ width:calc(50% - 8px); }
  #formulaire .pro-form-grid > div.md\:tw-col-span-2{ width:100%; }
}
#formulaire label{ text-align:left !important; }


#module-proaccount-landing #content, #module-proaccount-documents #content{
  padding: 0!important;
  box-shadow: none!important;
  border:none!important;
}
#module-proaccount-landing #wrapper > .container, #module-proaccount-documents #wrapper > .container {
  width: 100%;
  max-width: none;
}
#module-proaccount-landing .breadcrumb_container, #module-proaccount-documents .breadcrumb_container{
  display: none;
}
#module-proaccount-landing .page-header, #module-proaccount-documents .page-header{
  display: none;
}
#module-proaccount-landing h1, #module-proaccount-landing h2, #module-proaccount-landing h3, #module-proaccount-landing p{
  color: #333;
}

/* documents page */

:root {
  --doc-bg: #f6f3ef;
  --card-bg: #efe9e3;
  --text: #2f2a25;
  --muted: #6f655d;
  --border: #d6ccc2;
  --button-border: #b8ada2;
  --button-bg: #f8f5f2;
}

.documents-section {
  padding: 48px 0 72px;
  background: #fff;
}

.documents-header {
  max-width: 760px;
  margin: 0 auto 36px;
  text-align: center;
}

.documents-header h1 {
  margin: 0 0 12px;
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.1;
  color: var(--text);
  font-weight: 600;
}

.documents-header p {
  margin: 0;
  color: var(--muted);
  font-size: 1rem;
  line-height: 1.6;
}

.documents-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
}

.document-card {
  display: flex;
  flex-direction: column;
  background: var(--card-bg);
  border: 1px solid var(--border);
  min-height: 100%;
}

.document-card__cover {
  display: block;
  aspect-ratio: 0.73;
  background: #ddd;
  overflow: hidden;
}

.document-card__cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .3s ease;
}

.document-card:hover .document-card__cover img {
  transform: scale(1.02);
}

.document-card__body {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 28px 24px 24px;
  flex: 1;
  text-align: center;
}

.document-card__title {
  margin: 0;
  font-size: 1.85rem;
  line-height: 1.2;
  color: var(--text);
  font-weight: 500;
}

.document-card__meta {
  margin: 0;
  color: var(--muted);
  font-size: 0.95rem;
}

.document-card__actions {
  margin-top: auto;
  padding-top: 8px;
}

.document-card__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 24px;
  border-radius: 999px;
  border: 1px solid var(--button-border);
  background: var(--button-bg);
  color: var(--text);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .03em;
  font-size: .82rem;
  font-weight: 600;
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.document-card__button:hover {
  background: #fff;
  border-color: #9f9388;
  transform: translateY(-1px);
}

@media (max-width: 991px) {
  .documents-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .documents-section {
    padding: 32px 0 48px;
  }

  .documents-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .document-card__body {
    padding: 22px 18px 20px;
  }

  .document-card__title {
    font-size: 1.45rem;
  }
}

