*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial, Helvetica, sans-serif;
}

body{
background:#0077b6;
color:#333;
line-height:1.6;
}

/* HEADER */

.header{
display:flex;
justify-content:space-between;
align-items:center;
padding:15px 40px;
background:#0077b6;
color:white;
position:sticky;
top:0;
z-index:1000;
box-shadow:0 3px 10px rgba(0,0,0,0.2);
gap:15px;
}

.logo{
font-size:20px;
font-weight:bold;
}

.nav{
display:flex;
gap:20px;
}

.nav a{
color:white;
text-decoration:none;
font-size:16px;
}

.menu-toggle{
display:none;
font-size:24px;
cursor:pointer;
}

/* HERO */

.hero{
padding:80px 20px;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
text-align:center;
color:white;
background:
linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.5)),
url("clinic.jpg") center/cover;
}

.hero h1{
font-size:42px;
}

.hero button{
/*margin-top:20px;*/
padding:12px 25px;
background:#00b4d8;
border:none;
color:white;
border-radius:5px;
font-size:16px;
cursor:pointer;
}

/* SECTIONS */

section{
padding:60px 5%;
}

h2{
text-align:center;
margin-bottom:30px;
}

/* SERVICES */

.services{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:20px;
}

.service-card{
background:white;
padding:20px;
border-radius:8px;
box-shadow:0 4px 12px rgba(0,0,0,0.1);
text-align:center;
}

/* FACILITIES */

.facilities{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:20px;
}

.facility{
background:white;
padding:20px;
border-radius:8px;
text-align:center;
}

/* COUNTERS */

.counters{
display:flex;
justify-content:space-around;
background:#0077b6;
color:white;
padding:40px;
}

.counter{
text-align:center;
}

.counter h2{
font-size:40px;
}

/* APPOINTMENT */

form{
max-width:450px;
margin:auto;
display:flex;
flex-direction:column;
gap:12px;
background:white;
padding:25px;
border-radius:10px;
box-shadow:0 6px 20px rgba(0,0,0,0.15);
}

form input,
form textarea,
form select{
padding:10px;
border-radius:6px;
border:1px solid #ccc;
font-size:14px;
}

form button{
padding:12px;
background:#0077b6;
color:white;
border:none;
border-radius:6px;
font-size:16px;
cursor:pointer;
}

form button:hover{
background:#005f8a;
}

/* CONTACT */

.contact{
text-align:center;
}

/* FLOATING SOCIAL */

.whatsapp{
position:fixed;
bottom:20px;
right:20px;
background:#25D366;
color:white;
padding:14px;
border-radius:50%;
font-size:24px;
}

.instagram{
position:fixed;
bottom:80px;
right:20px;
background:#E1306C;
color:white;
padding:14px;
border-radius:50%;
font-size:24px;
}

/* MOBILE */

@media(max-width:900px){

.services{
grid-template-columns:repeat(2,1fr);
}

.facilities{
grid-template-columns:repeat(2,1fr);
}

.counters{
flex-direction:column;
gap:20px;
}

}

/* SMALL MOBILE */

@media(max-width:600px){

.nav{
display:none;
flex-direction:column;
background:#0077b6;
position:absolute;
top:60px;
right:0;
width:200px;
padding:20px;
}

.nav.active{
display:flex;
}

.menu-toggle{
display:block;
}

.services{
grid-template-columns:1fr;
}

.facilities{
grid-template-columns:1fr;
}

.hero h1{
font-size:28px;
}

}

a {
    color: white;
}

input:disabled{
background:#eee;
cursor:not-allowed;
}

span {
    color: white;
    font-weight: bold;
    padding-left: 20px;
}

section#appointment {
    padding-top: 200px;
}

.patientCard{
background:white;
color:#333;
padding:12px;
margin:10px;
border-radius:8px;
box-shadow:0 3px 8px rgba(0,0,0,0.15);
font-weight:normal;
}

#todayDashboard{
padding:30px;
background:white;
margin:30px auto;
max-width:700px;
border-radius:10px;
box-shadow:0 5px 15px rgba(0,0,0,0.1);
}

.todayCard{
background:white;
padding:10px;
margin:6px 0;
border-left:5px solid #2196F3;
box-shadow:0 2px 6px rgba(0,0,0,0.1);
}

#patientSearch{
padding:8px 10px;
border-radius:6px;
border:none;
width:220px;
}

.header button{
padding:8px 12px;
border:none;
border-radius:6px;
background:#00b4d8;
color:white;
cursor:pointer;
font-weight:bold;
}

.header button:hover{
background:#0096c7;
}

.todayCard{
background:#e8f6ff;
padding:12px;
margin:10px 0;
border-left:6px solid #0077b6;
border-radius:6px;
font-weight:bold;
}

h2{
font-size:28px;
margin-bottom:20px;
color:black;
}

nav a{
font-weight:bold;
margin-left:10px;
}

nav a:hover{
text-decoration:underline;
}

.historyCard{

background:white;
padding:12px;
margin:10px;
border-left:5px solid #0077b6;
border-radius:6px;
box-shadow:0 2px 6px rgba(0,0,0,0.15);

}

.formCard button{
padding:12px;
background:white;
color:black;
border:none;
border-radius:6px;
font-size:16px;
cursor:pointer;
}

.formCard button:hover{
background:#005f8a;
}

.formCard input {
    padding: 8px 10px;
    border-radius: 6px;
    border: none;
    width: 220px;
}

.formCard textarea {
    padding: 8px 10px;
    border-radius: 6px;
    border: none;
    width: 220px;
}

.formCard select {
    padding: 8px 10px;
    border-radius: 6px;
    border: none;
    width: 220px;
}

.xrayImg{
width:120px;
height:120px;
object-fit:cover;
margin:8px;
border-radius:8px;
box-shadow:0 2px 6px rgba(0,0,0,0.2);
cursor:pointer;
}

.xrayImg:hover{
transform:scale(1.1);
}

@media(max-width:768px){

.header{
flex-direction:column;
align-items:stretch;
gap:10px;
padding:15px;
}

/* Title center */
.header h1{
text-align:center;
font-size:20px;
}

h1{
font-size:1em;
}
/* Search box full width */
#patientSearch{
width:100%;
}

/* Buttons full width */
.header button{
width:100%;
}

/* Nav full width */
nav{
display:flex;
justify-content:center;
}

nav a{
display:block;
padding:8px;
background:#00b4d8;
border-radius:6px;
margin-top:5px;
}

}