﻿        *, :after, :before {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            text-rendering: optimizeLegibility;
        }

        html, body {
            --sb-track-color: #1b1b1b;
            --sb-thumb-color: #cb3c6d;
            --sb-size: 15px;
            scrollbar-color: var(--sb-thumb-color) var(--sb-track-color) !important;
            scrollbar-width: thin;
        }

        ::-webkit-scrollbar { width: var(--sb-size); }
        ::-webkit-scrollbar-thumb { background: var(--sb-thumb-color); border-radius: 4px; }
        ::-webkit-scrollbar-track { background: var(--sb-track-color); border-radius: 4px; }

        body {
            font-family: Poppins, sans-serif;
            font-size: 1rem;
            font-weight: 400;
            line-height: 1.5;
            background-color: #0c0c0c;
            color: #fff;
            min-height: 100vh;
            position: relative;
            display: flex;
            flex-direction: column;
        }

        body::before {
            content: '';
            display: block;
            position: fixed;
            top: 0;
            left: 0;
            width: 100vw;
            height: 100vh;
            background-image: url('../../images/site/fond.webp');
            background-size: cover;
            background-repeat: no-repeat;
            background-position: 50%;
            opacity: 0.6;
            z-index: -1;
        }


        .staff-section {
            flex: 1 0 auto;
            padding: 100px 1rem 3rem;
        }

        .staff-container {
            max-width: 1280px;
            margin: 0 auto;
            padding: 0 1rem;
        }

        @media (min-width: 768px) {
            .staff-container { padding: 0 2rem; }
        }

        .staff-header {
            max-width: 36rem;
            margin: 0 auto;
            text-align: center;
        }

        .staff-header h1 {
            font-size: 1.875rem;
            font-weight: 600;
            color: #cb3c6d;
            margin-bottom: 0.75rem;
        }

        @media (min-width: 640px) {
            .staff-header h1 { font-size: 2.25rem; }
        }

        .staff-header p {
            margin-top: 0.75rem;
            color: #c9c9c9;
            font-weight: 300;
            font-size: 0.95rem;
            line-height: 1.7;
        }

        .team-grid {
            margin-top: 3rem;
            display: grid;
            grid-template-columns: repeat(1, minmax(0, 1fr));
            gap: 2rem;
            list-style: none;
            padding: 0;
        }

        @media (min-width: 640px) {
            .team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        }

        @media (min-width: 1024px) {
            .team-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        }

        .team-member {
            display: flex;
            gap: 1rem;
            align-items: center;
        }

        .team-avatar {
            flex: none;
            width: 6rem;
            height: 6rem;
        }

        .team-avatar img {
            width: 100%;
            height: 100%;
            border-radius: 9999px;
            object-fit: cover;
            background-color: #1a1a1a;
        }

        .team-info {
            display: flex;
            flex-direction: column;
            height: 103px;
            min-width: 0;
        }

        .team-info h4 {
            font-weight: 600;
            font-size: 1.125rem;
            color: #fff;
            line-height: 1.3;
        }

        .team-info .role {
            color: #cb3c6d;
            font-size: 0.875rem;
            font-weight: 400;
            line-height: 1.35;
            margin-top: 0.2rem;
        }

        .team-socials {
            margin-top: auto;
            display: flex;
            gap: 1rem;
            align-items: center;
        }

        .team-socials a {
            display: inline-flex;
            transition: transform 0.2s;
        }

        .team-socials a:hover {
            transform: scale(1.5);
        }

        .team-socials svg {
            width: 1.25rem;
            height: 1.25rem;
        }

        .team-socials .insta-icon {
            width: 1.5rem;
            height: 1.5rem;
            margin: -2px;
        }


        .footer {
            flex-shrink: 0;
            padding: 20px;
            text-align: center;
            font-size: 11px;
            color: #666;
        }

        .footer a {
            color: #888;
            text-decoration: none;
            margin: 0 5px;
        }

        .footer a:hover { color: #fff; }
        .footer a.active { color: #fff; }
        .footer span { color: #444; }

        @media (max-width: 768px) {
            .nav-links { display: none; }
        }


