/* Styles spécifiques pour la page About */
/* Feature: 013-about-page */

/* Background colors */
.bg-\[#ecf0f1\] {
  background-color: #ecf0f1;
}

.bg-\[#34495e\] {
  background-color: #34495e;
}

.bg-\[#d33757\] {
  background-color: #d33757;
}

/* Text colors */
.text-\[#d33757\] {
  color: #d33757;
}

.text-\[#34495e\] {
  color: #34495e;
}

/* Max widths */
.max-w-\[960px\] {
  max-width: 960px;
}

.max-w-\[760px\] {
  max-width: 760px;
}

.max-w-\[310px\] {
  max-width: 310px;
}

/* Widths */
.w-\[760px\] {
  width: 760px;
}

.w-\[310px\] {
  width: 310px;
}

/* Heights */
.h-\[160px\] {
  height: 160px;
}

/* Margins */
.mb-\[50px\] {
  margin-bottom: 50px;
}

.mb-\[30px\] {
  margin-bottom: 30px;
}

/* Padding */
.pt-\[30px\] {
  padding-top: 30px;
}

.pb-\[30px\] {
  padding-bottom: 30px;
}

.px-\[30px\] {
  padding-left: 30px;
  padding-right: 30px;
}

/* Hero intro: padding uniquement sur mobile, pas sur desktop */
@media screen and (min-width: 768px) {
  .max-w-960.px-\[30px\] {
    padding-left: 0;
    padding-right: 0;
  }
}

/* Border radius */
.rounded-\[20px\] {
  border-radius: 20px;
}

.rounded-b-\[20px\] {
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 20px;
}

/* Borders */
.border-\[3px\] {
  border-width: 3px;
}

.border-\[#d33757\] {
  border-color: #d33757;
}

.border-transparent {
  border-color: transparent;
}

/* Background images (wave) */
.bg-\[url\('https:\/\/cdn\.prod\.website-files\.com\/5fdf566139e49a8d70f83d5b\/6218dd4999edc04a7908700e_wave\.svg'\)\] {
  background-image: url('https://cdn.prod.website-files.com/5fdf566139e49a8d70f83d5b/6218dd4999edc04a7908700e_wave.svg');
}

/* Grid layout for Formations and Lifestyle sections */
.grid {
  display: grid;
}

.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.gap-5 {
  gap: 1.25rem;
}

/* Tablet: 2 columns */
@media screen and (min-width: 768px) {
  .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Desktop: 3 columns */
@media screen and (min-width: 1024px) {
  .lg\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Formations section: align items to stretch (same height) */
.grid.items-stretch {
  align-items: stretch;
}

/* Flex utilities for formation cards */
.flex-grow {
  flex-grow: 1;
}

.h-full {
  height: 100%;
}

/* Focus visible for accessibility (WCAG 2.2 AA) */
a:focus-visible,
button:focus-visible {
  outline: 2px solid #e03a5c;
  outline-offset: 2px;
}

/* Focus styles for formation card buttons */
a.focus\:outline-2:focus {
  outline-width: 2px;
}

a.focus\:outline-primary:focus {
  outline-color: #e03a5c;
}

a.focus\:outline-offset-2:focus {
  outline-offset: 2px;
}

/* Responsive: hide on mobile */
@media screen and (max-width: 767px) {
  .md\:w-\[100px\] {
    width: 100px;
  }
  
  .md\:h-\[100px\] {
    height: 100px;
  }
}

