/* SECTION PRESENTATION */

.presentation-main{

padding:90px 0 60px 0;

background:
linear-gradient(180deg,#ffffff,#f8f7ff);

}

.presentation-grid{

display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:center;

}

/* BLOC TEXTE */

.presentation-text{

background:white;

padding:40px;

border-radius:18px;

border:2px solid rgba(122,69,196,0.12);

box-shadow:
0 20px 50px rgba(0,0,0,0.08),
0 5px 15px rgba(122,69,196,0.08);

position:relative;

}

/* petite ligne dÃ©corative */

.presentation-text::before{

content:"";

position:absolute;

top:-10px;
left:40px;

width:70px;
height:4px;

background:linear-gradient(90deg,var(--violet),var(--vert));

border-radius:4px;

}

.presentation-text p{

margin-bottom:18px;

line-height:1.8;

color:#555;

font-size:16px;

}

/* IMAGE */

.presentation-image img{

width:100%;

border-radius:16px;

box-shadow:
0 25px 60px rgba(0,0,0,0.15);

transition:transform .35s ease;

}

.presentation-image img:hover{

transform:scale(1.02);

}



/* TEAM */

.team{

background:
linear-gradient(180deg,#ffffff 0%,#f5f1ff 100%);

padding:100px 0;

}

.team-shell{
padding:46px;
border-radius:32px;
background:
linear-gradient(180deg,rgba(255,255,255,0.98),rgba(247,243,255,0.96));
border:1px solid rgba(122,69,196,0.14);
box-shadow:
0 30px 80px rgba(0,0,0,0.08),
0 12px 32px rgba(122,69,196,0.10);
position:relative;
overflow:hidden;
}

.team-shell::before{
content:"";
position:absolute;
top:-140px;
right:-120px;
width:360px;
height:360px;
background:radial-gradient(circle,rgba(122,69,196,0.14),transparent 70%);
pointer-events:none;
}

.team-shell::after{
content:"";
position:absolute;
bottom:-120px;
left:-120px;
width:280px;
height:280px;
background:radial-gradient(circle,rgba(167,190,47,0.12),transparent 72%);
pointer-events:none;
}

.team-header{
margin-bottom:42px;
text-align:center;
position:relative;
z-index:1;
}

.team h2{

text-align:center;
margin-bottom:16px;
font-size:32px;

}

.team-intro{
max-width:760px;
margin:0 auto 42px;
text-align:center;
color:#666;
line-height:1.7;
}

.team-grid{
display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));
gap:24px;
position:relative;
z-index:1;
align-items:stretch;
}

.team-card{
background:linear-gradient(180deg,#ffffff,#fbf9ff);
padding:28px 24px 24px;
border-radius:24px;
border:1px solid rgba(122,69,196,0.12);
box-shadow:0 20px 40px rgba(26,20,46,0.08);
text-align:left;
transition:transform .25s ease, box-shadow .25s ease;
position:relative;
overflow:hidden;
display:flex;
flex-direction:column;
gap:10px;
min-height:220px;
width:100%;
}

.team-card:hover{
transform:translateY(-8px);
box-shadow:0 28px 56px rgba(26,20,46,0.12);
}

.team-card::before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:6px;
background:linear-gradient(90deg,var(--violet),#b390f0);
}

.team-card.accent{
background:linear-gradient(180deg,#ffffff,#f7fbef);
border-color:rgba(163,214,76,0.28);
}

.team-card.accent::before{
background:linear-gradient(90deg,var(--vert),#d1ea92);
}

.team-card-top{
display:flex;
align-items:center;
justify-content:space-between;
gap:14px;
margin-bottom:8px;
}

.team-avatar{
width:52px;
height:52px;
border-radius:16px;
display:inline-flex;
align-items:center;
justify-content:center;
background:linear-gradient(135deg,rgba(122,69,196,0.14),rgba(122,69,196,0.06));
color:var(--violet);
font-size:15px;
font-weight:700;
letter-spacing:.06em;
flex-shrink:0;
box-shadow:inset 0 0 0 1px rgba(122,69,196,0.08);
}

.team-card.accent .team-avatar{
background:linear-gradient(135deg,rgba(163,214,76,0.26),rgba(163,214,76,0.10));
color:#5f7b27;
}

.team-role{
display:inline-flex;
padding:7px 12px;
border-radius:999px;
background:rgba(122,69,196,0.10);
color:var(--violet);
font-size:12px;
font-weight:700;
letter-spacing:.06em;
text-transform:uppercase;
}

.team-card.accent .team-role{
background:rgba(163,214,76,0.18);
color:#5f7b27;
}

.team-card h3{
margin-bottom:4px;
color:var(--texte);
font-size:23px;
}

.team-card p{
color:#5e5e6b;
line-height:1.7;
font-size:15px;
margin-top:auto;
padding:14px 15px;
border-radius:16px;
background:rgba(122,69,196,0.05);
border:1px solid rgba(122,69,196,0.07);
min-height:88px;
display:flex;
align-items:flex-start;
}

.team-card.accent p{
background:rgba(167,190,47,0.10);
border-color:rgba(167,190,47,0.16);
}



/* CARS */

.cars{

padding:100px 0;
background:linear-gradient(180deg,#ffffff 0%,#f6f3ff 100%);
text-align:center;

}

.cars h2{
margin-bottom:60px;
}

.cars-grid{

display:grid;
grid-template-columns:repeat(2,minmax(0,360px));
gap:40px;
justify-content:center;
justify-items:center;
align-items:stretch;

}

.car-card{

background:linear-gradient(180deg,#ffffff 0%,#fcfbff 100%);
padding:20px 20px 24px;
width:min(100%,380px);
border-radius:28px;
border:1px solid rgba(122,69,196,0.12);
box-shadow:
0 24px 60px rgba(19,18,33,0.08),
0 10px 24px rgba(122,69,196,0.08);
transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
position:relative;
overflow:hidden;

}

.car-card:hover{

transform:translateY(-8px);
box-shadow:
0 32px 80px rgba(19,18,33,0.12),
0 14px 32px rgba(122,69,196,0.12);
border-color:rgba(122,69,196,0.22);

}

.car-card::before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:6px;
background:linear-gradient(90deg,var(--violet),var(--vert));
}

.car-card img{

display:block;
width:100%;
max-width:none;
height:240px;

object-fit:cover;
object-position:center;

border-radius:18px;
border:1px solid rgba(122,69,196,0.08);
box-shadow:0 18px 36px rgba(24,20,43,0.10);
image-rendering:auto;
backface-visibility:hidden;

margin:0 auto 20px;

}

.car-card h3{
margin-bottom:12px;
font-size:18px;
color:#1f2233;
}

.car-card p{
margin:0;
color:#5d6072;
line-height:1.7;
font-size:15px;
max-width:290px;
margin-inline:auto;

}



/* HORAIRES */

.contact-hours{

background:linear-gradient(180deg,#ffffff,#f8f9fd);

padding:40px;

border-radius:16px;

box-shadow:0 20px 50px rgba(0,0,0,0.06);

border-top:4px solid var(--violet);


}

.contact-hours{

max-width:760px;
margin:auto;

}

.contact-hours h2{

margin-bottom:12px;
color:var(--violet);

}

.contact-hours p{
color:#666;
line-height:1.6;
}

.hours-groups{
display:grid;
grid-template-columns:1fr;
gap:18px;
margin-top:24px;
}

.hours-group{
background:white;
border:1px solid rgba(122,69,196,0.10);
border-radius:18px;
padding:22px 22px 18px;
box-shadow:0 12px 28px rgba(0,0,0,0.04);
}

.hours-group-reception{
border-top:4px solid var(--violet);
}

.hours-group-driving{
border-top:4px solid var(--vert);
}

.hours-label{
margin:0 0 12px;
font-size:12px;
font-weight:700;
letter-spacing:.08em;
text-transform:uppercase;
color:#7a7a88;
}

.hours-list{

list-style:none;
margin:0;
padding:0;

}

.hours-list li{

padding:13px 0;
border-bottom:1px solid #eee;
display:grid;
grid-template-columns:minmax(150px,180px) minmax(0,1fr);
gap:18px;
align-items:center;

}

.hours-day{
font-weight:600;
color:var(--texte);
text-align:left;
}

.hours-time{
font-weight:600;
color:#555;
text-align:right;
}

.hours-time.closed{
color:#b05786;


}


/* RESPONSIVE */

@media(max-width:900px){

.presentation-grid{
grid-template-columns:1fr;
}

.team-shell{
padding:30px 22px;
}

.team-grid{
grid-template-columns:repeat(2,minmax(0,1fr));
}

.cars-grid{
grid-template-columns:1fr;
}

}

@media(max-width:600px){

.team-shell{
padding:24px 16px;
border-radius:22px;
}

.team-header{
margin-bottom:28px;
}

.team-grid{
grid-template-columns:1fr;
}

.team-card{
padding:24px 18px;
min-height:0;
}

.team-card h3{
font-size:20px;
}

.team-avatar{
width:46px;
height:46px;
border-radius:14px;
font-size:13px;
}

.team-role{
font-size:11px;
}

.team-card p{
min-height:0;
}

.hours-list li{
grid-template-columns:1fr;
gap:6px;
}

.hours-time{
text-align:left;
}

}
