/* Styles de Décoration page */

.styles-de-decoration-main {
  width: 100%;
  min-width: 0;
  overflow-x: hidden;
}

/* En-tête de page */
.styles-hero {
  padding-block: var(--space-48);
  background-color: var(--color-encre-nuit);
}

.styles-hero__content {
  width: 100%;
  max-width: 720px;
  margin-inline: 0;
  padding-inline: var(--container-margin-mobile);
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
  min-width: 0;
}

.styles-hero__title {
  font-family: var(--font-heading);
  font-size: var(--text-h1-size);
  line-height: var(--text-h1-line-height);
  letter-spacing: var(--text-h1-letter-spacing);
  font-weight: var(--text-h1-weight);
  color: var(--color-ivoire);
  margin-block-end: 0;
  text-wrap: balance;
  overflow-wrap: break-word;
  min-width: 0;
}

.styles-hero__subtitle {
  font-size: var(--text-body-size);
  line-height: var(--text-body-line-height);
  letter-spacing: var(--text-body-letter-spacing);
  font-weight: var(--text-body-weight);
  color: var(--color-ivoire);
  margin-block-end: 0;
  min-width: 0;
}

.styles-hero__meta {
  font-size: var(--text-small-size);
  line-height: var(--text-small-line-height);
  letter-spacing: var(--text-small-letter-spacing);
  color: var(--color-brume);
  margin-block-end: 0;
  min-width: 0;
}

/* Introduction */
.styles-intro {
  padding-block: var(--space-48);
  background-color: var(--color-encre-nuit);
}

.styles-intro__content {
  width: 100%;
  max-width: 720px;
  margin-inline: 0;
  padding-inline: var(--container-margin-mobile);
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
  min-width: 0;
}

.styles-intro__content h2 {
  margin-block-end: 0;
  min-width: 0;
}

.styles-intro__content h3 {
  margin-block-end: 0;
  min-width: 0;
}

.styles-intro__content p {
  margin-block-end: 0;
  min-width: 0;
}

.styles-intro__content ul {
  margin-block-end: 0;
  padding-inline-start: var(--space-24);
  min-width: 0;
}

.styles-intro__content li {
  margin-block-end: var(--space-4);
  min-width: 0;
}

.styles-intro__content li:last-child {
  margin-block-end: 0;
}

/* Encadré d'astuce */
.styles-tip {
  background-color: var(--tip-box-bg);
  border-inline-start: var(--tip-box-border-left);
  padding: var(--tip-box-padding);
  border-radius: var(--tip-box-radius);
  margin-block-end: 0;
  min-width: 0;
}

.styles-tip p {
  margin-block-end: 0;
  min-width: 0;
}

/* Cartes de style */
.styles-style-card {
  padding-block: var(--space-48);
  background-color: var(--color-encre-nuit);
}

.styles-style-card__container {
  width: 100%;
  max-width: 1200px;
  margin-inline: auto;
  padding-inline: var(--container-margin-mobile);
  background-color: var(--surface-card-bg);
  border: var(--surface-card-border);
  border-radius: var(--surface-card-radius);
  padding: var(--space-24);
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
  min-width: 0;
}

.styles-style-card__text {
  width: 100%;
  max-width: 720px;
  margin-inline: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
  min-width: 0;
}

.styles-style-card__text h2 {
  margin-block-end: 0;
  min-width: 0;
}

.styles-style-card__text h3 {
  margin-block-end: 0;
  min-width: 0;
}

.styles-style-card__text p {
  margin-block-end: 0;
  min-width: 0;
}

.styles-style-card__text ul {
  margin-block-end: 0;
  padding-inline-start: var(--space-24);
  min-width: 0;
}

.styles-style-card__text li {
  margin-block-end: var(--space-4);
  min-width: 0;
}

.styles-style-card__text li:last-child {
  margin-block-end: 0;
}

/* Conseils pour combiner les styles */
.styles-combining {
  padding-block: var(--space-48);
  background-color: var(--color-encre-nuit);
}

.styles-combining__content {
  width: 100%;
  max-width: 720px;
  margin-inline: auto;
  padding-inline: var(--container-margin-mobile);
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
  min-width: 0;
}

.styles-combining__content h2 {
  margin-block-end: 0;
  min-width: 0;
}

.styles-combining__content h3 {
  margin-block-end: 0;
  min-width: 0;
}

.styles-combining__content p {
  margin-block-end: 0;
  min-width: 0;
}

.styles-combining__content ol,
.styles-combining__content ul {
  margin-block-end: 0;
  padding-inline-start: var(--space-24);
  min-width: 0;
}

.styles-combining__content li {
  margin-block-end: var(--space-4);
  min-width: 0;
}

.styles-combining__content li:last-child {
  margin-block-end: 0;
}

/* Progression et récompenses */
.styles-progression {
  padding-block: var(--space-48);
  background-color: var(--color-encre-nuit);
}

.styles-progression__card {
  width: 100%;
  max-width: 1200px;
  margin-inline: auto;
  padding-inline: var(--container-margin-mobile);
  background-color: var(--surface-card-bg);
  border: var(--surface-card-border);
  border-radius: var(--surface-card-radius);
  padding: var(--space-24);
  display: flex;
  flex-direction: column;
  gap: var(--space-24);
  min-width: 0;
}

.styles-progression__text {
  width: 100%;
  max-width: 720px;
  margin-inline: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
  min-width: 0;
}

.styles-progression__text h2 {
  margin-block-end: 0;
  min-width: 0;
}

.styles-progression__text p {
  margin-block-end: 0;
  min-width: 0;
}

.styles-progression__table-wrapper {
  width: 100%;
  min-width: 0;
  overflow-x: auto;
}

.styles-progression__table {
  width: 100%;
  border-collapse: collapse;
  margin-block-end: 0;
  min-width: 0;
}

.styles-progression__table caption {
  text-align: start;
  margin-block-end: var(--space-8);
}

.styles-progression__table th,
.styles-progression__table td {
  padding: var(--space-12) var(--space-16);
  text-align: start;
  border-block-end: 1px solid var(--color-ardoise);
  min-width: 0;
}

.styles-progression__table th {
  font-weight: 600;
  color: var(--color-ivoire);
  background-color: var(--color-encre-profonde);
}

.styles-progression__table td {
  color: var(--color-brume);
}

/* Appel à l'action final */
.styles-cta {
  padding-block: var(--space-64);
  background-color: var(--color-encre-nuit);
}

.styles-cta__container {
  width: 100%;
  max-width: 720px;
  margin-inline: auto;
  padding-inline: var(--container-margin-mobile);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-24);
  text-align: center;
  min-width: 0;
}

.styles-cta__container h2 {
  margin-block-end: 0;
  min-width: 0;
}

.styles-cta__container p {
  margin-block-end: 0;
  min-width: 0;
}

.styles-cta__button {
  min-width: 0;
  flex-shrink: 0;
}

/* Responsive */
@media (min-width: 768px) {
  .styles-hero__content,
  .styles-intro__content,
  .styles-combining__content,
  .styles-cta__container {
    padding-inline: var(--container-margin-desktop);
  }

  .styles-style-card__container,
  .styles-progression__card {
    padding-inline: var(--container-margin-desktop);
  }

  .styles-style-card__container {
    padding: var(--space-32);
  }

  .styles-progression__card {
    padding: var(--space-32);
  }
}

@media (min-width: 1024px) {
  .styles-hero {
    padding-block: var(--space-64);
  }

  .styles-intro,
  .styles-style-card,
  .styles-combining,
  .styles-progression {
    padding-block: var(--space-64);
  }

  .styles-cta {
    padding-block: var(--space-96);
  }
}

@media (max-width: 767px) {
  .styles-hero__title {
    font-size: calc(var(--text-h1-size) * 0.8);
  }

  .styles-style-card__container {
    padding: var(--space-16);
  }

  .styles-progression__card {
    padding: var(--space-16);
  }

  .styles-cta__button {
    width: 100%;
  }

  .styles-progression__table th,
  .styles-progression__table td {
    padding: var(--space-8) var(--space-12);
  }
}

@media (prefers-reduced-motion: reduce) {
  .styles-de-decoration-main *,
  .styles-de-decoration-main *::before,
  .styles-de-decoration-main *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
