@charset "UTF-8";
body { background-color: #f5f9f7; color: #333; line-height: 1.6; }

.container { max-width: 1200px; width: 80%; margin: 2rem auto; padding: 0 1.5rem; }
.container .cta-wrapper { text-align: right; margin: 0.5rem 0; }
.container .cta-wrapper a { text-transform: uppercase; }
.container .service-header { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin-bottom: 2rem; gap: 1rem; }
.container .service-header .service-icon-wrapper { width: 100px; height: 100px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; border-radius: 50%; background-color: var(--primary-color); }
.container .service-header .service-icon-wrapper img { width: 50px; height: 50px; -webkit-filter: invert(100%); filter: invert(100%); }
.container .service-header .service-title h1 { font-size: 1.2rem; }
.container .service-header .service-title .service-category { background-color: var(--secondary-color); padding: 0.2rem 0.5rem; color: var(--pure-white); border-radius: 0.2rem; font-size: 0.8rem; }
.container .service-header .service-title h1, .container .service-header .service-title .service-category { text-transform: uppercase; }
.container .service-content { background-color: var(--pure-white); -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05); box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05); padding: 2.5rem; margin-bottom: 3rem; }
.container .service-content .service-summary { padding: 1rem 0; margin-bottom: 1.5rem; border-bottom: 1px solid lightgray; }
.container .service-content .service-description { padding: 1rem 0; margin-bottom: 1.5rem; /* Stylisation basique des listes */ /* Espacement entre les blocs */ /* Style simple pour les listes à puces */ /* Style simple pour les listes numérotées */ }
.container .service-content .service-description h2 { font-size: 1rem; margin-bottom: 1rem; text-transform: uppercase; }
.container .service-content .service-description p { margin-bottom: 1rem; line-height: 1.5; white-space: pre-wrap; word-wrap: break-word; }
.container .service-content .service-description p a { color: var(--secondary-color); text-decoration: none; }
.container .service-content .service-description ul, .container .service-content .service-description ol { margin-bottom: 1rem; padding-left: 2rem; }
.container .service-content .service-description li { margin-bottom: 0.5rem; }
.container .service-content .service-description ul li:last-child, .container .service-content .service-description ol li:last-child { margin-bottom: 0; }
.container .service-content .service-description ul { list-style-type: disc; }
.container .service-content .service-description ol { list-style-type: decimal; }
.container .service-content .linked-docs-section h2 { margin-bottom: 1rem; text-transform: uppercase; font-size: 1rem; }
.container .service-content .linked-docs-section .linked-doc-item { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin-bottom: 15px; padding: 12px 15px; background-color: var(--light-cream); text-decoration: none; border-radius: 6px; border-left: 4px solid var(--secondary-color); -webkit-transition: -webkit-transform 0.2s, -webkit-box-shadow 0.2s; transition: -webkit-transform 0.2s, -webkit-box-shadow 0.2s; transition: transform 0.2s, box-shadow 0.2s; transition: transform 0.2s, box-shadow 0.2s, -webkit-transform 0.2s, -webkit-box-shadow 0.2s; }
.container .service-content .linked-docs-section .linked-doc-item:hover { -webkit-transform: translateY(-2px); transform: translateY(-2px); -webkit-box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); }
.container .service-content .linked-docs-section .linked-doc-item .linked-doc-icon svg { fill: var(--primary-color); position: relative; top: 4px; margin-right: 5px; }
.container .service-content .linked-docs-section .linked-doc-item .linked-doc-name { color: var(--primary-color); }
.container .service-content .linked-docs-section .linked-doc-item .linked-doc-meta { color: #7f8c8d; font-size: 14px; margin-left: 10px; }
.container .related-events { background-color: var(--pure-white); -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05); box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05); padding: 2.5rem; margin-bottom: 3rem; }
.container .related-events h2 { font-size: 1rem; margin-bottom: 1rem; text-transform: uppercase; }

.grid-container { display: grid; grid-template-columns: repeat(3, minmax(300px, 1fr)); gap: 10px; /* Espacement réduit entre les cartes */ max-width: 1200px; margin: 2.5rem auto; }

@media screen and (max-width: 1100px) { .grid-container { grid-template-columns: repeat(2, minmax(300px, 1fr)); gap: 10px; }
  .related-events .grid-container .event-card { border: 1px solid gray; } }
@media screen and (max-width: 700px) { .grid-container { grid-template-columns: 1fr; } }
@media screen and (max-width: 768px) { .container { width: 98%; }
  .container .service-content { padding: 1rem; } }
@media screen and (max-width: 500px) { .contact-btn { width: 100%; }
  .container { width: 100%; padding: 0 0.5rem; }
  .container .service-header { padding: 0 1rem; }
  .container .service-header .service-icon-wrapper { width: 80px; height: 80px; -ms-flex-negative: 0; flex-shrink: 0; }
  .container .service-header .service-icon-wrapper img { width: 50px; height: 50px; }
  .container .service-header .service-title h1 { font-size: 1rem; }
  .container .related-events .grid-container { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
  .container .related-events .grid-container .event-card { border: none; } }
