/* =========================================
   1. GENERAL WEBSITE STYLE & FONTS
   ========================================= */
body {
    font-family: 'Open Sans', sans-serif; 
    margin: 0;
    padding: 0;
    background-color: #f4fbfc; 
    color: #333333;
    line-height: 1.6;
}

h1, h2, h3, button {
    font-family: 'Poppins', sans-serif;
}

/* =========================================
   2. THE HERO SECTION (Top Banner)
   ========================================= */
.hero-section {
    background-color: #e0f2f1; 
    text-align: center;
    padding: 60px 20px;
    border-bottom: 5px solid #00897b;
}

.hero-section h1 {
    color: #004d40; 
    font-size: 38px;
    margin-bottom: 10px;
}

/* =========================================
   3. THE BUTTON STYLE
   ========================================= */
button {
    background-color: #00897b;
    color: white;
    border: none;
    padding: 15px 35px;
    font-size: 18px;
    border-radius: 8px; 
    cursor: pointer;
    font-weight: bold;
    margin-top: 20px;
}

button:hover {
    background-color: #004d40; 
}

/* =========================================
   4. THE CONTENT BOXES
   ========================================= */
.about-section, .doctors-section, .services-section, .contact-section {
    background-color: white;
    margin: 30px auto; 
    padding: 40px;
    max-width: 800px; 
    border-radius: 12px;
    box-shadow: 0px 4px 10px rgba(0,0,0,0.1); 
    transition: transform 0.3s ease, box-shadow 0.3s ease; 
}

/* =========================================
   5. HEADINGS INSIDE THE BOXES
   ========================================= */
h2 {
    color: #00695c;
    text-align: center;
    border-bottom: 2px solid #e0f2f1;
    padding-bottom: 10px;
    margin-bottom: 20px;
}

h3 {
    color: #004d40;
}

/* =========================================
   6. IMAGE STYLES
   ========================================= */
img {
    max-width: 100%; 
    height: auto;    
    border-radius: 10px; 
    display: block;
    margin: 20px auto; 
    box-shadow: 0px 2px 5px rgba(0,0,0,0.2);
    animation: floatAnimation 4s ease-in-out infinite; 
}

/* =========================================
   7. THE BULLETED LIST (Services)
   ========================================= */
ul {
    font-size: 17px;
    padding-left: 20px;
}

li {
    margin-bottom: 10px; 
}

/* =========================================
   8. ANIMATIONS & MAGIC EFFECTS
   ========================================= */
.about-section:hover, .doctors-section:hover, .services-section:hover, .contact-section:hover {
    transform: translateY(-10px); 
    box-shadow: 0px 15px 30px rgba(0,0,0,0.15); 
}

@keyframes floatAnimation {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-12px); } 
    100% { transform: translateY(0px); }  
}

@keyframes fadeIn {
    from { 
        opacity: 0; 
        transform: translateY(40px); 
    }
    to { 
        opacity: 1; 
        transform: translateY(0); 
    }
}

.hero-section { animation: fadeIn 1s ease-out forwards; }
.about-section { animation: fadeIn 1s ease-out 0.3s forwards; opacity: 0; }
.doctors-section { animation: fadeIn 1s ease-out 0.6s forwards; opacity: 0; }
.services-section { animation: fadeIn 1s ease-out 0.9s forwards; opacity: 0; }
.contact-section { animation: fadeIn 1s ease-out 1.2s forwards; opacity: 0; }

/* =========================================
   9. MOBILE FRIENDLY (The Responsive Magic!)
   ========================================= */
@media (max-width: 768px) {
    /* We made the padding much larger here so the header feels tall and prominent */
    .hero-section {
        padding: 80px 15px; 
        min-height: 35vh; /* This forces the header to take up at least 35% of the screen height */
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    /* Bumping up the font size for the main title */
    .hero-section h1 {
        font-size: 34px; 
        line-height: 1.2;
    }

    .about-section, .doctors-section, .services-section, .contact-section {
        padding: 25px; 
        margin: 15px; 
    }

    button {
        width: 100%; 
        padding: 18px; /* Makes the button a little taller and easier to tap */
    }
}