/* Auto-generated from the original style.css during code reorganization.
   Grouped by component so each concern can be found and debugged independently. */

/* ==========================================================
DEPARTMENTS
========================================================== */

.departments{

padding:140px 0;

background:white;

}

.department-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:40px;

margin-top:70px;

}

.department-card{

background:#fff;

border-radius:28px;

overflow:hidden;

border:1px solid rgba(11,114,133,.08);

box-shadow:
0 10px 30px rgba(0,0,0,.06);

display:flex;

flex-direction:column;

height:100%;
min-height:760px;

transition:
transform .45s cubic-bezier(.22,.61,.36,1),
box-shadow .45s cubic-bezier(.22,.61,.36,1),
border-color .35s;

}

.department-card:hover{

transform:translateY(-10px);

border-color:rgba(0,194,181,.30);

box-shadow:
0 22px 50px rgba(0,0,0,.10);

}

.department-image{

height:260px;

overflow:hidden;

background:#F5F7FA;

display:flex;

align-items:center;

justify-content:center;

}

.department-image img{

width:100%;

height:100%;

object-fit:cover;

transition:.8s;

}

.department-card:hover img{

transform:scale(1.08);

filter:brightness(.95);

}

.department-content{

padding:28px;

display:flex;

flex-direction:column;

flex:1;

}

.department-content h3{

font-size:30px;

font-weight:800;

line-height:1.2;

margin-bottom:18px;

color:var(--dark);

}

.dept-description{

font-size:15px;

line-height:1.7;

color:#667785;

margin-bottom:24px;

max-width:95%;

}

.dept-tag{

display:inline-block;

padding:8px 16px;

border-radius:40px;

background:#EAFBFA;

color:var(--primary);

font-size:13px;

font-weight:700;

margin-bottom:18px;

}

.department-content p{

font-size:16px;

line-height:1.7;

color:var(--text);

margin-bottom:24px;

flex:1;

}

.dept-services{

list-style:none;

margin:8px 0 32px;

padding:0;

display:flex;

flex-direction:column;

gap:12px;

}

.dept-services li{

position:relative;

padding-left:26px;

font-size:16px;

color:var(--text);

line-height:1.6;

}

.dept-services li::before{

content:"✓";

position:absolute;

left:0;
top:2px;

width:18px;
height:18px;

border-radius:50%;

background:#EAFBFA;

color:var(--secondary);

display:flex;
align-items:center;
justify-content:center;

font-size:12px;
font-weight:700;

}

.book-department{

display:inline-flex;
align-items:center;
justify-content:center;

padding:14px 28px;

height:56px;

min-width:220px;

margin-top:auto;

align-self:flex-start;

border-radius:50px;

background:var(--secondary);

color:#fff;

font-size:16px;

font-weight:700;

text-decoration:none;

transition:
background .35s,
transform .35s,
box-shadow .35s;

}

.book-department:hover{

background:#00989b;

color:#fff;

transform:translateY(-3px);

box-shadow:0 12px 28px rgba(0,181,184,.28);

}
.book-department:hover{

background:#00989b;

color:#fff;

transform:translateY(-3px);

box-shadow:0 12px 28px rgba(0,181,184,.28);

}

.dept-badge{

display:inline-flex;

align-items:center;

padding:8px 16px;

border-radius:50px;

background:linear-gradient(
135deg,
#EAFBFA,
#DCF7F5
);

color:var(--primary);

font-size:13px;

font-weight:700;

margin-bottom:18px;

align-self:flex-start;

}

.dept-icon{

width:64px;
height:64px;

border-radius:20px;

background:linear-gradient(
135deg,
#EAFBFA,
#DCF7F5
);

display:flex;

align-items:center;

justify-content:center;

font-size:28px;

color:var(--primary);

margin-bottom:22px;

transition:.35s;

}

.department-card:hover .dept-icon{

transform:rotate(-6deg) scale(1.08);

}
