.societe-home-page{
min-height:100vh;
display:flex;
flex-direction:column;
background:
radial-gradient(circleattopleft,rgba(46,134,171,0.14),transparent24%),
radial-gradient(circleattopright,rgba(224,168,0,0.12),transparent22%),
linear-gradient(180deg,#f3f9ff0%,#ffffff24%,#f8fcf9100%);
color:#18324b;
}

.societe-home-pageheader,
.societe-home-pagefooter{
flex:00auto;
}

.societe-home-main{
flex:10auto;
width:100%;
padding:2.25rem04rem;
}

.societe-home-shell{
width:min(1180px,calc(100%-3rem));
margin:0auto;
display:grid;
gap:2rem;
}

.societe-hero,
.societe-section{
background:rgba(255,255,255,0.92);
border:1pxsolidrgba(24,50,75,0.08);
border-radius:30px;
box-shadow:024px60pxrgba(16,24,40,0.08);
backdrop-filter:blur(12px);
}

.societe-hero{
position:relative;
overflow:hidden;
padding:clamp(2rem,4vw,3.2rem);
}

.societe-hero::before{
content:"";
position:absolute;
inset:0;
background:
radial-gradient(circleat18%22%,rgba(39,174,96,0.12),transparent24%),
radial-gradient(circleat82%16%,rgba(46,134,171,0.14),transparent26%),
linear-gradient(135deg,rgba(255,255,255,0.6),rgba(244,250,255,0.92));
pointer-events:none;
}

.societe-hero>*{
position:relative;
z-index:1;
}

.societe-kicker,
.societe-section-kicker,
.societe-card-kicker{
margin:0;
font-size:0.8rem;
font-weight:800;
letter-spacing:0.12em;
text-transform:uppercase;
}

.societe-kicker,
.societe-section-kicker{
color:#1c8aa4;
}

.societe-heroh1,
.societe-section-headingh2{
margin:0;
color:#0d3f5d;
letter-spacing:-0.04em;
line-height:1.02;
}

.societe-heroh1{
max-width:760px;
font-size:clamp(2.2rem,5vw,4rem);
}

.societe-intro,
.societe-section-copy,
.societe-card-contentp{
margin:0;
color:#5d7086;
line-height:1.75;
}

.societe-intro{
max-width:760px;
font-size:1.05rem;
}

.societe-hero{
display:grid;
gap:0.9rem;
}

.societe-section{
padding:clamp(1.4rem,3vw,2rem);
display:grid;
gap:1.5rem;
}

.societe-section-heading{
display:grid;
gap:0.45rem;
max-width:760px;
}

.societe-section-headingh2{
font-size:clamp(1.8rem,3vw,2.6rem);
}

.societe-grid{
display:grid;
grid-template-columns:repeat(2,minmax(0,1fr));
gap:1.35rem;
}

.societe-card{
position:relative;
min-height:360px;
border-radius:28px;
overflow:hidden;
text-decoration:none;
color:#ffffff;
background-color:#0f2230;
background-size:cover;
background-position:center;
box-shadow:020px42pxrgba(16,24,40,0.16);
transition:transform0.24sease,box-shadow0.24sease;
}

.societe-card:hover{
transform:translateY(-6px);
box-shadow:030px58pxrgba(16,24,40,0.22);
}

.societe-card-overlay{
position:absolute;
inset:0;
background:
linear-gradient(180deg,rgba(5,20,31,0.16)0%,rgba(5,20,31,0.34)40%,rgba(5,20,31,0.86)100%);
}

.societe-card-content{
position:absolute;
inset:auto000;
z-index:1;
padding:1.5rem;
display:grid;
gap:0.7rem;
}

.societe-card-contenth3{
margin:0;
font-size:clamp(1.7rem,2.4vw,2.35rem);
line-height:1.04;
letter-spacing:-0.03em;
}

.societe-card-kicker{
color:#90e0ef;
}

.societe-card-contentp{
color:rgba(255,255,255,0.86);
max-width:34rem;
}

.societe-card-link{
display:inline-flex;
align-items:center;
width:fit-content;
margin-top:0.15rem;
padding:0.78rem1rem;
border-radius:999px;
background:rgba(255,255,255,0.16);
border:1pxsolidrgba(255,255,255,0.2);
color:#ffffff;
font-weight:700;
backdrop-filter:blur(10px);
}

@media(max-width:900px){
.societe-grid{
grid-template-columns:1fr;
}

.societe-card{
min-height:320px;
}
}

@media(max-width:700px){
.societe-home-main{
padding:1.35rem03rem;
}

.societe-home-shell{
width:min(100%,calc(100%-1.25rem));
gap:1.2rem;
}

.societe-hero,
.societe-section{
border-radius:24px;
}

.societe-card{
min-height:280px;
border-radius:24px;
}

.societe-card-content{
padding:1.15rem;
}
}
