Refactor feature shortcodes for improved layout and styling

- Updated the feature shortcode in both `feature.html` files to change the list item class from `items-center` to `items-start` for better alignment.
- Adjusted the SVG icon class to include `flex-shrink-0 mt-1` and set minimum width and height for consistent sizing.
- Enhanced the CSS source map for `custom.css` to improve debugging and maintainability.
This commit is contained in:
Boris Waaub
2026-02-09 12:15:51 +01:00
parent 8c77a325f6
commit 9073e8b506
8 changed files with 325 additions and 388 deletions

View File

@@ -18,6 +18,8 @@ $chill-light-blue: #a0dcff;
.badge-suivi-accompagnements { --badge-color: #EDC74B; }
.badge-suivi-decisions { --badge-color: #a0dcff; }
.badge-suivi-usagers{ --badge-color: #333333; }
.badge-rendez-vous{ --badge-color: #0d242e; }
/// Other custom colors
$bg-dark-blue: #0d242e;
$bg-light-blue: #a0dcff;

View File

@@ -80,7 +80,7 @@ testimonials:
"titleBtn": "Statistiques",
"description": "CHILL vous permet dexporter des statistiques précises sur lensemble de vos entités.",
"badge": "Statistiques",
"badgeColor": "rapports-statistiques ",
"badgeColor": "rapports-statistiques",
"image": "/images/feature-2.svg",
"buttonText": "En savoir plus",
"buttonLink": "/features/suivi-accompagnements/",
@@ -100,16 +100,27 @@ testimonials:
"imagePosition": "right"
},
{
"title": "Rapports & RGPD",
"titleBtn": "Rapports & RGPD",
"title": "Droits d'accès",
"titleBtn": "Droits d'accès",
"description": "Générez des rapports statistiques, organisez vos documents et assurez la conformité RGPD pour la sécurité et la confidentialité des données.",
"badge": "Rapports & RGPD",
"badge": "Droits d'accès",
"badgeColor": "rapport-rgpd",
"image": "/images/feature-3.svg",
"buttonText": "En savoir plus",
"buttonLink": "/features/rapports-rgpd/",
"features": "Rapports statistiques,Génération de documents,Organisation documentaire,Conformité RGPD",
"imagePosition": "left"
},
{
"title": "Rendez-vous",
"titleBtn": "Rendez-vous",
"description": "Planifiez, organisez et suivez efficacement tous vos rendez-vous, que ce soit pour vous-même ou pour vos collègues. Profitez d'outils de synchronisation, de rappels et d'intégration à venir avec Google Agenda.",
"badge": "Rendez-vous",
"badgeColor": "rendez-vous",
"image": "/images/feature-3.svg",
"buttonText": "En savoir plus",
"buttonLink": "/features/rendez-vous/",
"features": "Ajoutez un rendez-vous directement dans votre propre agenda,Planifiez un rendez-vous sur une plage créée au préalable par un autre membre de léquipe,Synchronisation avec agendas électroniques,Possibilité de rappels,Un rendez-vous peut être converti en échange si besoin."
}
]
}
@@ -117,7 +128,7 @@ testimonials:
{{< testimonials
title="Ils nous font confiance"
descriptions="Flexible et évolutif, CHILL accompagne aussi bien les petites associations que les grandes structures. Son développement participatif, mené avec des travailleurs sociaux de secteurs variés, garantit un outil fidèle aux réalités du terrain.||Découvrez leurs témoignages"
descriptions="Flexible et évolutif, CHILL accompagne aussi bien les petites associations que les grandes structures. Son développement participatif, mené avec des travailleurs sociaux de secteurs variés, garantit un outil fidèle aux réalités du terrain.,,Découvrez leurs témoignages"
animate="true"
background-color="#f1f5f9"
>}}

View File

@@ -1,9 +1,9 @@
---
title: "Rapports & RGPD"
title: "Droits daccès"
description: "Générez des rapports statistiques, organisez vos documents et assurez la conformité RGPD pour la sécurité et la confidentialité des données."
weight: 6
layout: "single"
badge: "Rapports & RGPD"
badge: "Droits daccès"
badgeColor: "rapport-rgpd"
demo:
description: "Assurez la conformité RGPD et organisez vos rapports et documents."

View File

@@ -0,0 +1,27 @@
---
title: "Rendez-vous"
description: "Planifiez, organisez et suivez efficacement tous vos rendez-vous, que ce soit pour vous-même ou pour vos collègues, avec des outils de synchronisation et de rappel avancés."
weight: 7
layout: "single"
badge: "Rendez-vous"
badgeColor: "rendez-vous"
demo:
description: "Découvrez comment gérer et structurée vos rendez-vous."
image: "/images/feature-2.svg"
---
## Présentation
La fonctionnalité Rendez-vous de Chill vous permet de gérer simplement la prise de rendez-vous, la coordination entre collègues et la synchronisation avec des outils externes. Que ce soit pour fixer un rendez-vous dans votre propre agenda ou dans une plage de disponibilité dun collègue, tout est pensé pour faciliter votre organisation quotidienne. Des rappels automatiques et la possibilité de synchroniser avec Google Agenda (connecteur à venir) rendent la gestion des rendez-vous encore plus fluide.
## Planification dune rencontre
- **Dans mon agenda** : Ajoutez un rendez-vous directement dans votre propre agenda.
- **Dans une plage de disponibilité dun collègue** : Planifiez un rendez-vous sur une plage créée au préalable par un autre membre de léquipe.
- **Synchronisation avec agendas électroniques** : (connecteur avec Google Agenda à développer)
- **Possibilité de rappels** : Notifications par SMS, etc.
- **Transformation en échange** : Un rendez-vous peut être converti en échange si besoin.

View File

@@ -1,366 +1,296 @@
.badge-generation-document {
--badge-color: #D50B51;
}
--badge-color: #D50B51; }
.badge-rapport-rgpd {
--badge-color: #43B09B;
}
--badge-color: #43B09B; }
.badge-rapports-statistiques {
--badge-color: #C9B99E;
}
--badge-color: #C9B99E; }
.badge-suivi-accompagnements {
--badge-color: #EDC74B;
}
--badge-color: #EDC74B; }
.badge-suivi-decisions {
--badge-color: #a0dcff;
}
--badge-color: #a0dcff; }
.badge-suivi-usagers {
--badge-color: #333333;
}
--badge-color: #333333; }
.badge-rendez-vous {
--badge-color: #0d242e; }
@font-face {
font-family: "Lato", Arial;
font-family: 'Lato', Arial;
src: url("assets/fonts/Lato/Lato-Regular.ttf") format("truetype");
font-display: optional;
font-weight: normal;
font-style: normal;
}
font-style: normal; }
body {
font-family: "Lato", sans-serif;
}
body .highlight {
padding: 0.25rem;
}
body .highlight-1 {
background-color: #43B09B;
}
body .highlight-2 {
background-color: #D50B51;
}
body .highlight-3 {
background-color: #EDC74B;
}
font-family: 'Lato', sans-serif; }
body .highlight {
padding: .25rem; }
body .highlight-1 {
background-color: #43B09B; }
body .highlight-2 {
background-color: #D50B51; }
body .highlight-3 {
background-color: #EDC74B; }
header.header {
background-color: #0d242e;
}
background-color: #0d242e; }
footer.footer {
background-color: #43B09B;
}
background-color: #43B09B; }
.chill-pres {
padding-top: 0rem;
}
padding-top: 0rem; }
.navbar .btn-primary {
background-color: #f46839;
border: 1px solid #f46839;
color: white;
}
.navbar .btn-primary:hover {
background-color: #E27A3E;
border: 1px solid #E27A3E;
}
color: white; }
.navbar .btn-primary:hover {
background-color: #E27A3E;
border: 1px solid #E27A3E; }
.navbar .lang-select {
color: white;
}
color: white; }
section.hero {
background-color: #0d242e;
}
section.hero h1 {
color: #43B09B;
}
background-color: #0d242e; }
section.hero h1 {
color: #43B09B; }
section.section-1 {
background-color: white;
padding-top: 10rem;
}
section.section-1 li {
font-weight: 600;
}
section.section-2 .container {
color: #0d242e;
text-align: center;
margin-top: 4rem;
}
section.section-2 .container h2 {
line-height: 3.5rem;
}
padding-top: 10rem; }
section.section-1 li {
font-weight: 600; }
section.section-2 {
background: rgb(233, 227, 216);
background: linear-gradient(180deg, rgb(233, 227, 216) 0%, rgb(239, 239, 239) 100%);
}
background: #e9e3d8;
background: linear-gradient(180deg, #e9e3d8 0%, #efefef 100%); }
section.section-2 .container {
color: #0d242e;
text-align: center;
margin-top: 4rem; }
section.section-2 .container h2 {
line-height: 3.5rem; }
section.section-3 {
background: rgb(239, 239, 239);
background: linear-gradient(180deg, rgb(239, 239, 239) 0%, rgb(255, 255, 255) 100%);
}
section.section-3 h2 {
position: relative;
z-index: 1;
}
section.section-3 h2:before {
content: "";
position: absolute;
width: 70px;
height: 70px;
left: -10%;
top: -30%;
margin-left: -35px;
background-color: #f46839;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 50px;
}
background: #efefef;
background: linear-gradient(180deg, #efefef 0%, white 100%); }
section.section-3 h2 {
position: relative;
z-index: 1; }
section.section-3 h2:before {
content: '';
position: absolute;
width: 70px;
height: 70px;
left: -10%;
top: -30%;
margin-left: -35px;
background-color: #f46839;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 50px; }
section.section-4 {
position: relative;
background-color: white;
}
section.section-4 .row {
padding-bottom: 5rem;
}
section.section-4 h4 {
font-weight: bold;
height: 175px;
color: #0d242e;
border: 1px dashed #0d242e;
border-radius: 15px;
padding: 3rem;
}
section.section-4 .btn-primary {
position: absolute;
top: 52%;
left: 28%;
}
background-color: white; }
section.section-4 .row {
padding-bottom: 5rem; }
section.section-4 h4 {
font-weight: bold;
height: 175px;
color: #0d242e;
border: 1px dashed #0d242e;
border-radius: 15px;
padding: 3rem; }
section.section-4 .btn-primary {
position: absolute;
top: 52%;
left: 28%; }
section.section-5 {
background-color: rgba(67, 176, 155, 0.5);
}
background-color: rgba(67, 176, 155, 0.5); }
section.section-6 {
background-color: #0d242e !important;
background-repeat: repeat;
background-position: top center;
background-image: url("/images/bg/pattern-1.png");
}
background-image: url("/images/bg/pattern-1.png"); }
section.section-7 h2 {
position: relative;
z-index: 1;
}
section.section-7 h2:before {
content: "";
position: absolute;
width: 70px;
height: 70px;
left: -15%;
top: -30%;
margin-left: -35px;
background-color: #fcc958;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 0;
}
z-index: 1; }
section.section-7 h2:before {
content: '';
position: absolute;
width: 70px;
height: 70px;
left: -15%;
top: -30%;
margin-left: -35px;
background-color: #fcc958;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 0; }
section h2.title {
color: #0d242e;
}
color: #0d242e; }
section.big-text h2, section.big-text p, section.li-block h2, section.li-block p {
width: fit-content;
margin-left: auto;
margin-right: auto;
}
margin-right: auto; }
section.big-text .container .row > div:last-child {
width: 80%;
margin-left: 10%;
}
margin-left: 10%; }
section.li-block .container .row > div:last-child {
width: 100%;
}
width: 100%; }
section.li-block .container .row > div ul {
display: flex;
}
section.li-block .container .row > div ul li i:first-child {
display: none;
}
section.li-block .container .row > div ul li {
flex: 1 0 0;
margin: 0.5em 2rem 0.5em 2rem;
padding: 2em 1em 1em 1em;
text-align: center;
border-radius: 20px;
}
display: flex; }
section.li-block .container .row > div ul li {
flex: 1 0 0;
margin: 0.5em 2rem 0.5em 2rem;
padding: 2em 1em 1em 1em;
text-align: center;
border-radius: 20px; }
section.li-block .container .row > div ul li i:first-child {
display: none; }
section.li-block.section-1 ul li {
font-weight: 500;
font-size: large;
position: relative;
}
section.li-block.section-1 ul li:nth-child(1) {
position: relative;
z-index: 1;
}
section.li-block.section-1 ul li:nth-child(1):before {
content: "";
position: absolute;
width: 100px;
height: 100px;
left: 44%;
top: -60%;
margin-left: -35px;
background-color: #56c4aa;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 0;
}
section.li-block.section-1 ul li:nth-child(2) {
position: relative;
z-index: 1;
}
section.li-block.section-1 ul li:nth-child(2):before {
content: "";
position: absolute;
width: 100px;
height: 100px;
left: 44%;
top: -60%;
margin-left: -35px;
background-color: #f0384d;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 50px;
}
section.li-block.section-1 ul li:nth-child(3) {
position: relative;
z-index: 1;
}
section.li-block.section-1 ul li:nth-child(3):before {
content: "";
position: absolute;
width: 100px;
height: 100px;
left: 44%;
top: -60%;
margin-left: -35px;
background-color: #E27A3E;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 0;
}
section.li-block.section-1 ul li:nth-child(4) {
position: relative;
z-index: 1;
}
section.li-block.section-1 ul li:nth-child(4):before {
content: "";
position: absolute;
width: 100px;
height: 100px;
left: 44%;
top: -60%;
margin-left: -35px;
background-color: #fcc958;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 50px;
}
position: relative; }
section.li-block.section-1 ul li:nth-child(1) {
position: relative;
z-index: 1; }
section.li-block.section-1 ul li:nth-child(1):before {
content: '';
position: absolute;
width: 100px;
height: 100px;
left: 44%;
top: -60%;
margin-left: -35px;
background-color: #56c4aa;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 0; }
section.li-block.section-1 ul li:nth-child(2) {
position: relative;
z-index: 1; }
section.li-block.section-1 ul li:nth-child(2):before {
content: '';
position: absolute;
width: 100px;
height: 100px;
left: 44%;
top: -60%;
margin-left: -35px;
background-color: #f0384d;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 50px; }
section.li-block.section-1 ul li:nth-child(3) {
position: relative;
z-index: 1; }
section.li-block.section-1 ul li:nth-child(3):before {
content: '';
position: absolute;
width: 100px;
height: 100px;
left: 44%;
top: -60%;
margin-left: -35px;
background-color: #E27A3E;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 0; }
section.li-block.section-1 ul li:nth-child(4) {
position: relative;
z-index: 1; }
section.li-block.section-1 ul li:nth-child(4):before {
content: '';
position: absolute;
width: 100px;
height: 100px;
left: 44%;
top: -60%;
margin-left: -35px;
background-color: #fcc958;
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
z-index: 0;
border-radius: 50px; }
section.li-block.section-5 .container .row p {
margin-bottom: 5rem;
}
margin-bottom: 5rem; }
section.li-block.section-5 .container .row ul li {
border-radius: 1em;
background: rgba(255, 255, 255, 0.2);
backdrop-filter: blur(20px);
width: 400px;
height: 180px;
padding: 0.85rem;
padding: .85rem;
position: relative;
z-index: 0;
overflow: hidden;
transition: 0.6s ease-in;
}
section.li-block.section-5 .container .row ul li::before {
content: "";
position: absolute;
z-index: -1;
top: -15px;
right: -15px;
height: 220px;
width: 25px;
border-radius: 32px;
transform: scale(1);
transform-origin: 50% 50%;
transition: transform 0.25s ease-out;
}
section.li-block.section-5 .container .row ul li:nth-child(1)::before {
background-color: rgba(240, 56, 77, 0.85);
}
section.li-block.section-5 .container .row ul li:nth-child(2)::before {
background-color: rgba(232, 148, 99, 0.85);
}
section.li-block.section-5 .container .row ul li:nth-child(3)::before {
background-color: rgba(67, 178, 157, 0.85);
}
section.li-block.section-5 .container .row ul li:nth-child(4)::before {
background-color: rgb(241, 210, 117);
}
section.li-block.section-5 .container .row ul li:hover::before {
transition-delay: 0.2s;
transform: scale(40);
}
section.li-block.section-5 .container .row ul li:hover {
color: #ffffff;
}
section.li-block.section-5 .container .row ul li:hover h5 {
color: #EBEBEB;
}
section.li-block.section-5 .container .row ul li h5 {
color: #0d242e;
font-weight: bold;
}
transition: 0.6s ease-in; }
section.li-block.section-5 .container .row ul li::before {
content: "";
position: absolute;
z-index: -1;
top: -15px;
right: -15px;
height: 220px;
width: 25px;
border-radius: 32px;
transform: scale(1);
transform-origin: 50% 50%;
transition: transform 0.25s ease-out; }
section.li-block.section-5 .container .row ul li:nth-child(1)::before {
background-color: rgba(240, 56, 77, 0.85); }
section.li-block.section-5 .container .row ul li:nth-child(2)::before {
background-color: rgba(232, 148, 99, 0.85); }
section.li-block.section-5 .container .row ul li:nth-child(3)::before {
background-color: rgba(67, 178, 157, 0.85); }
section.li-block.section-5 .container .row ul li:nth-child(4)::before {
background-color: #f1d275; }
section.li-block.section-5 .container .row ul li:hover::before {
transition-delay: 0.2s;
transform: scale(40); }
section.li-block.section-5 .container .row ul li:hover {
color: #ffffff; }
section.li-block.section-5 .container .row ul li:hover h5 {
color: #EBEBEB; }
section.li-block.section-5 .container .row ul li h5 {
color: #0d242e;
font-weight: bold; }
section.li-block a.btn-chill {
background-color: #fc3636;
}
background-color: #fc3636; }
.download {
margin-right: auto;
margin-left: auto;
display: block;
}
.download a {
text-decoration: none;
padding: 0.5rem;
}
display: block; }
.download a {
text-decoration: none;
padding: .5rem; }
section.dark p {
color: white;
font-weight: bolder;
}
font-weight: bolder; }
.hop {
color: red;
}
color: red; }
.content-subtitle {
text-transform: uppercase;
padding-left: 2rem;
}
padding-left: 2rem; }
.bord-1 {
border-left: 4px solid #E27A3E;
}
border-left: 4px solid #E27A3E; }
.bord-2 {
border-left: 4px solid #C9B99E;
}
border-left: 4px solid #C9B99E; }
.bord-3 {
border-left: 4px solid #EDC74B;
}
border-left: 4px solid #EDC74B; }
.bord-4 {
border-left: 4px solid #43B09B;
}
border-left: 4px solid #43B09B; }
.chapo {
font-size: large;
@@ -369,144 +299,105 @@ section.dark p {
padding-bottom: 2rem;
font-style: italic;
position: relative;
margin-bottom: 5rem;
}
.chapo::after {
content: "";
position: absolute;
left: 0;
right: 0;
top: 100%;
margin: 10px auto;
width: 15%;
height: 6px;
background: #DE4849;
}
margin-bottom: 5rem; }
.chapo::after {
content: '';
position: absolute;
left: 0;
right: 0;
top: 100%;
margin: 10px auto;
width: 15%;
height: 6px;
background: #DE4849; }
figure.image {
display: flex;
flex-direction: column;
}
figure.image.left {
float: left;
margin-right: 1.5em;
}
figure.image.right {
float: right;
margin-left: 1.5em;
}
figure.image.center {
display: flex;
justify-content: center;
align-items: center;
}
figure.image img {
margin-bottom: 0;
}
flex-direction: column; }
figure.image.left {
float: left;
margin-right: 1.5em; }
figure.image.right {
float: right;
margin-left: 1.5em; }
figure.image.center {
display: flex;
justify-content: center;
align-items: center; }
figure.image img {
margin-bottom: 0; }
.text-brochure {
text-align: center;
}
text-align: center; }
@media screen and (max-width: 1279px) {
section.li-block.section-5 .container .row ul {
flex-wrap: wrap;
}
flex-wrap: wrap; }
section.li-block.section-5 .container .row ul li {
flex: 30%;
}
}
flex: 30%; } }
@media screen and (max-width: 1023px) {
section.section-4 h4 {
height: 224px;
}
height: 224px; }
section.section-4 .btn-primary {
top: 56%;
}
top: 56%; }
section.li-block.section-5 .container .row ul {
flex-wrap: wrap;
}
flex-wrap: wrap; }
section.li-block.section-5 .container .row ul li {
flex: 50%;
}
}
flex: 50%; } }
@media screen and (max-width: 767px) {
section.hero {
height: 110vh;
}
height: 110vh; }
section.section-3 h2:before {
top: -70%;
left: 5%;
z-index: -1;
}
z-index: -1; }
section.section-4 h4 {
height: 280px;
}
height: 280px; }
section.section-4 .btn-primary {
top: 64%;
}
top: 64%; }
section.li-block .container .row > div ul {
flex-direction: column;
}
section.li-block .container .row > div ul li {
margin-bottom: 4rem;
}
flex-direction: column; }
section.li-block .container .row > div ul li {
margin-bottom: 4rem; }
section.li-block.section-1 ul li:nth-child(1) {
top: -66%;
}
top: -66%; }
section.li-block.section-1 ul li:nth-child(2) {
top: -66%;
}
top: -66%; }
section.li-block.section-1 ul li:nth-child(3):before {
top: -85%;
}
top: -85%; }
section.li-block.section-1 ul li:nth-child(4):before {
top: -85%;
}
top: -85%; }
section.li-block.section-5 .container .row ul {
flex-wrap: wrap;
}
flex-wrap: wrap; }
section.li-block.section-5 .container .row ul li {
flex: 50%;
}
}
flex: 50%; } }
@media screen and (max-width: 513px) {
section.hero {
height: 120vh;
}
height: 120vh; }
section.section-4 h4 {
font-size: 1.1rem;
}
font-size: 1.1rem; }
section.section-4 .btn-primary {
top: 64%;
}
top: 64%; }
section.section-5 .container .row ul li {
width: 350px;
}
}
width: 350px; } }
@media screen and (max-width: 470px) {
section.section-4 h4 {
height: 280px;
}
height: 280px; }
section.section-4 .btn-primary {
top: 64%;
}
top: 64%; }
section.li-block.section-1 ul li:nth-child(3):before {
top: -70%;
}
top: -70%; }
section.li-block.section-1 ul li:nth-child(4):before {
top: -70%;
}
top: -70%; }
section.li-block.section-5 .container .row ul {
flex-wrap: wrap;
}
flex-wrap: wrap; }
section.li-block.section-5 .container .row ul li {
width: 350px;
}
}
width: 350px; } }
@media screen and (max-width: 420px) {
section.li-block.section-5 .container .row ul li {
width: 300px;
}
}
width: 300px; } }
/*# sourceMappingURL=custom.css.map */

File diff suppressed because one or more lines are too long

View File

@@ -38,8 +38,8 @@
<p class="text-lg text-gray-600">{{ $description }}</p>
<ul class="space-y-4">
{{ range $features }}
<li class="flex items-center space-x-3">
<svg class="badge-icon w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
<li class="flex items-start space-x-3">
<svg class="badge-icon w-5 h-5 flex-shrink-0 mt-1" fill="currentColor" viewBox="0 0 20 20" style="min-width:1.25rem; min-height:1.25rem;">
<path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clip-rule="evenodd"/>
</svg>
<span>{{ . | default "" }}</span>

View File

@@ -32,11 +32,11 @@
<p class="text-lg text-gray-600">{{ $description }}</p>
<ul class="space-y-4">
{{ range $features }}
<li class="flex items-center space-x-3">
<svg class="badge-icon w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
<li class="flex items-start space-x-3">
<svg class="badge-icon w-5 h-5 flex-shrink-0 mt-1" fill="currentColor" viewBox="0 0 20 20" style="min-width:1.25rem; min-height:1.25rem;">
<path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clip-rule="evenodd"/>
</svg>
<span>{{ . | default "" }}</span>
<span>{{ . | default "" }}</span>
</li>
{{ end }}
</ul>