main {
    padding: 40px 20px 60px;
    .container-instructeur {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
        gap: 30px;
        max-width: 1200px;
        margin: 0 auto;
        .instructeur {
            display: flex;
            flex-direction: column;
            background: #fff;
            border-radius: 12px;
            overflow: hidden;
            box-shadow: 0 4px 14px rgba(0, 0, 0, 0.1);
            transition: transform 0.2s ease, box-shadow 0.2s ease;
            &:hover {
                transform: translateY(-4px);
                box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
            }
            .instructeur-photo {
                position: relative;
                width: 100%;
                aspect-ratio: 4 / 5;
                background: rgba(0, 0, 0, 0.04);
                img {
                    width: 100%;
                    height: 500px;
                    object-fit: contain;
                    display: block;
                }
                .badge-titre {
                    position: absolute;
                    bottom: 10px;
                    left: 50%;
                    transform: translate(-50%);
                    background: var(--dc);
                    color: var(--lc);
                    font-family: var(--flf);
                    font-size: 15px;
                    font-weight: 600;
                    text-transform: uppercase;
                    letter-spacing: 0.04em;
                    padding: 8px 16px;
                    border-radius: 50px;
                    width: 50%;
                    text-align: center;
                }
            }
            .instructeur-content {
                padding: 18px 20px 20px;
                display: flex;
                flex-direction: column;
                gap: 14px;
                flex: 1;
                .name {
                    font-family: var(--fgt);
                    text-transform: uppercase;
                    color: var(--mc);
                    font-weight: 600;
                    font-size: 22px;
                    border-bottom: 2px solid var(--mc);
                    padding-bottom: 8px;
                    text-align: center;
                }
                .box-qualifications {
                    .title {
                        color: var(--mc);
                        text-transform: uppercase;
                        font-weight: 500;
                        font-size: 15px;
                        margin-bottom: 8px;
                    }
                    .qualifs-list {
                        display: flex;
                        flex-wrap: wrap;
                        gap: 6px;
                        .qualification {
                            display: inline-flex;
                            align-items: center;
                            gap: 6px;
                            background: rgba(0, 0, 0, 0.04);
                            border: 1px solid rgba(0, 0, 0, 0.08);
                            color: var(--dc);
                            font-family: var(--flf);
                            font-size: 13px;
                            text-transform: capitalize;
                            padding: 4px 10px;
                            border-radius: 20px;
                            img {
                                width: 14px;
                                height: 14px;
                            }
                        }
                    }
                }
                .box-dojos {
                    margin-top: auto;
                    display: flex;
                    align-items: center;
                    justify-content: space-evenly;
                    flex-wrap: wrap;
                    gap: 8px;
                    a {
                        font-family: var(--flf);
                        font-size: 14px;
                        padding: 6px 14px;
                        text-align: center;
                        color: var(--lc);
                        background: var(--mc);
                        border-radius: 20px;
                        text-decoration: none;
                        outline: 1px solid transparent;
                        transition: 0.2s;
                        &:hover {
                            outline: 1px solid var(--mc);
                            background: var(--lc);
                            color: var(--mc);
                        }
                    }
                }
            }
        }
    }
}

@media (max-width: 768px) {
    main {
        padding: 30px 16px 40px;
        .container-instructeur {
            grid-template-columns: 1fr;
            gap: 24px;
            .instructeur .instructeur-content {
                .name {
                    font-size: 19px;
                }
            }
        }
    }
}