.hero-veto{
    background:linear-gradient(135deg,#14235e,#203b96);
    color:white;
    padding:20px 20px;
    text-align:center;
}

.hero-veto i{
    display:inline-block;
    line-height:1;
    font-size:50px;
    color:#f9b234;
    margin-bottom:20px;
}

.hero-veto h1{
    font-size:3rem;
    margin-top:0;      /* on annule le margin par défaut du navigateur */
    margin-bottom:20px;
}

.hero-content-veto{
    max-width:900px;
    margin:auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
}

.hero-content p{
    font-size:1.2rem;
    line-height:1.8;
}

.cert-link {
    color: #fff;
    font-weight: 700;
    text-decoration: none !important;
    display: inline-block;
}

.hero-content-veto .cert-link i {
    font-size: 0.9rem !important;
    line-height: 1 !important;
    margin-right: 6px;
    margin-bottom: 0;
}

.cert-link:hover {
    color: #ffe066; /* jaune doux au survol, à ajuster selon la charte graphique */
}

.veto-container{
    max-width:1200px;
    margin:70px auto;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:50px;
    align-items:center;
    padding:20px;
}

.veto-photo{
    display:flex;
    flex-direction:column;
    gap:20px;
}

.photo-clinique{
    width:100%;
    height:350px;
    object-fit:cover;
}

.equipe{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:15px;
}

.equipe img{
    width:100%;
    height:220px;
    object-fit:cover;
    border-radius:20px;
    box-shadow:0 15px 35px rgba(0,0,0,.15);
}

.veto-photo img{
    width:100%;
    border-radius:20px;
    box-shadow:0 15px 35px rgba(0,0,0,.15);
}

.veto-info h2{
    color:#14235e;
    margin-bottom:20px;
    font-size:2rem;
}

.veto-info p{
    line-height:1.8;
}

.veto-photo figure,
.equipe figure{
    margin:0;
}

.equipe figcaption,
.veto-photo > figure > figcaption{
    margin-top:8px;
    text-align:center;
    font-size:0.9rem;
    font-weight:600;
    color:#14235e;
}

.services{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:15px;
    margin-top:35px;
}

.service{
    background:white;
    border-radius:12px;
    padding:18px;
    box-shadow:0 5px 15px rgba(0,0,0,.08);
    transition:.3s;
}

.service:hover{
    transform:translateY(-5px);
}

.service i{
    color:#f9b234;
    margin-right:10px;
}

.contact-veto{
    background:#f8f8f8;
    padding:70px 20px;
    text-align:center;
}

.contact-card{
    max-width:500px;
    margin:auto;
    background:white;
    padding:35px;
    border-radius:15px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.contact-card p{
    margin:20px 0;
    font-size:1.1rem;
}

.contact-card i{
    color:#f9b234;
    width:30px;
}
.association{
    padding:80px 20px;
}

.association-box{
    max-width:900px;
    margin:auto;
    text-align:center;
}

.association-box i{
    font-size:60px;
    color:#14235e;
}

.association-box h2{
    margin:20px 0;
    color:#14235e;
}

.association-box p{
    line-height:1.8;
}

.engagements-communs{
    padding:80px 20px;
    background:white;
}

.engagements-box{
    max-width:1200px;
    margin:auto;
}

.engagements-box h2{
    text-align:center;
    color:#14235e;
    font-size:2.2rem;
    margin-bottom:20px;

}

.engagements-box h2 i{
    color:#f9b234;
    margin-right:10px;
}

.engagements-communs .intro{
    text-align:center;
    max-width:850px;
    margin:0 auto 50px;
    line-height:1.8;
    color:#555;
    font-size:1.1rem;
}

.engagements-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:25px;
}

.engagement-card{
    background:#f8f9fc;
    border-radius:18px;
    padding:30px 25px;
    text-align:center;
    box-shadow:0 8px 20px rgba(0,0,0,.06);
    transition:transform .3s ease, box-shadow .3s ease;
}

.engagement-card:hover{
    transform:translateY(-8px);
    box-shadow:0 15px 30px rgba(0,0,0,.12);
}

.engagement-card i{
    font-size:42px;
    color:#f9b234;
    margin-bottom:18px;
}

.engagement-card h3{
    color:#14235e;
    margin-bottom:15px;
    font-size:1.3rem;
}

.engagement-card p{
    line-height:1.7;
    color:#555;
    font-size:0.98rem;
}

@media(max-width:768px){

.veto-container{
grid-template-columns:1fr;

}

.services{
grid-template-columns:1fr;

}

.equipe{
    grid-template-columns:1fr;
}

.hero-veto h1{
font-size:2.2rem;
}

.hero-veto{
padding:15px 15px;
}

.engagements-box h2{
    font-size:1.8rem;
}

.engagement-card{
    padding:25px 20px;
}

}