:root{
    --primary:#2ecc71; /* light green */
    --secondary:#16a085; /* darker green */
}
*{box-sizing:border-box;margin:0;padding:0}
body{
    font-family:'Segoe UI',Tahoma,sans-serif;
    background:linear-gradient(135deg,#e8f5e9 0%,#c8e6c9 100%);
    min-height:100vh;
    display:flex;
    flex-direction:column;
}
header{
    background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);
    color:#fff;
    text-align:center;
    padding:35px 20px;
    box-shadow:0 4px 10px rgba(0,0,0,.1);
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    position:relative;
}

.logo-container{
    position:absolute;
    top:20px;
    left:20px;
}

header .logo{
    width:180px;
    height:auto;
}

.header-center{
    flex:1;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:15px;
}

.header-images{
    display:flex;
    gap:10px;
    justify-content:center;
}

.header-img{
    width:120px;
    height:120px;
    object-fit:contain;
    opacity:0.9;
    transition:opacity 0.3s ease;
    animation: dance 3s ease-in-out infinite;
}

.header-img:nth-child(2){
    animation-delay: 0.5s;
}

.header-img:nth-child(3){
    animation-delay: 1s;
}

.header-img:nth-child(4){
    animation-delay: 1.5s;
}

.header-img:nth-child(5){
    animation-delay: 2s;
}

.header-img:nth-child(6){
    animation-delay: 2.5s;
}

.header-img:hover{
    opacity:1;
    animation-play-state: paused;
}

@keyframes dance {
    0%, 100% {
        transform: translateY(0) rotate(0deg);
    }
    25% {
        transform: translateY(-8px) rotate(2deg);
    }
    50% {
        transform: translateY(-4px) rotate(-1deg);
    }
    75% {
        transform: translateY(-12px) rotate(1deg);
    }
}

header .header-text{
    text-align:center;
}
header .header-text h1{
    margin-bottom:6px;
    font-weight:300;
    letter-spacing:1px;
    font-size:2.4em;
    color:#fff !important;
}
header .header-text h2{
    color:#fff !important;
}
/* navigation bar */
nav{
    background:var(--secondary);
    text-align:center;
    padding:10px 0;
    box-shadow:0 2px 6px rgba(0,0,0,.08);
    position:relative;
}
/* nav structure tweaks */
.nav-toggle{
    display:none;
    background:none;
    border:none;
    color:#fff;
    font-size:1.8rem;
    cursor:pointer;
    position:absolute;
    right:15px;
    top:6px;
}
.nav-links{
    /* visible by default on larger screens */
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:center;
    gap:20px; /* space between links */
    width:100%;
    background:var(--secondary);
    padding:0;
}
nav a{
    color:#fff;
    margin:0 15px;
    text-decoration:none;
    font-weight:600;
    transition:opacity .2s;
}
nav a:hover{opacity:.8}

/* Mobile-only Breadcrumb Navigation */
.breadcrumb-container {
    display: none; /* Hidden by default on desktop */
}

.breadcrumb {
    display: flex;
    align-items: center;
    font-size: 0.9rem;
    color: #6c757d;
    justify-content: center;
    padding: 8px 0;
}

.breadcrumb a {
    color: #fff;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.2s ease;
}

.breadcrumb a:hover {
    color: rgba(255,255,255,0.8);
    text-decoration: underline;
}

.breadcrumb .separator {
    margin: 0 8px;
    color: rgba(255,255,255,0.7);
    font-weight: bold;
}

.breadcrumb .current {
    color: rgba(255,255,255,0.9);
    font-weight: 600;
}
main{
    flex:1;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:40px 20px;
}
.cards{
    display:flex;
    flex-wrap:wrap;
    gap:30px;
    max-width:1100px;
    justify-content:center;
}
.card{
    background:#fff;
    width:260px;
    border-radius:14px;
    padding:35px 25px;
    text-align:center;
    text-decoration:none;
    color:var(--secondary);
    font-weight:600;
    font-size:1.2rem;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:transform .25s ease,box-shadow .25s ease;
}
.card:hover{
    transform:translateY(-8px);
    box-shadow:0 15px 35px rgba(0,0,0,.15);
}
footer{
    text-align:center;
    padding:15px 10px;
    font-size:.9em;
    color:#2e7d32;
    margin-top:auto;
}

/* ================= Responsive Header ================= */
@media(max-width: 768px){
    header{
        flex-direction:column;
        padding:25px 15px;
        gap:15px;
        align-items:center;
        text-align:center;
    }
    
    .logo-container{
        position:static;
        margin-bottom:10px;
        display:flex;
        justify-content:center;
    }
    
    header .logo{
        width:135px;
    }
    
    .header-center{
        gap:10px;
        width:100%;
        display:flex;
        flex-direction:column;
        align-items:center;
    }
    
    .header-images{
        gap:8px;
        display:flex;
        justify-content:center;
        flex-wrap:wrap;
    }
    
    .header-img{
        width:75px;
        height:75px;
    }
    
    header .header-text{
        margin:0;
        text-align:center;
    }
    header .header-text h1{
        font-size:1.8em;
    }
    header .header-text h2{
        font-size:1rem;
    }
    
    /* Improved mobile navigation */
    .nav-toggle{
        display:block;
        padding:8px 12px;
        border-radius:6px;
        transition:background-color 0.2s ease;
    }
    .nav-toggle:hover{
        background-color:rgba(255,255,255,0.1);
    }
    
    .nav-links{
        display:none;
        flex-direction:column;
        position:absolute;
        top:100%;
        left:0;
        right:0;
        background:var(--secondary);
        padding:0;
        z-index:999;
        box-shadow:0 4px 12px rgba(0,0,0,0.15);
        border-top:1px solid rgba(255,255,255,0.1);
        opacity:0;
        transform:translateY(-10px);
        transition:opacity 0.2s ease, transform 0.2s ease;
    }
    
    #main-nav.open .nav-links{
        display:flex;
    }
    
    .nav-links a{
        margin:0;
        padding:16px 20px;
        border-bottom:1px solid rgba(255,255,255,0.1);
        text-align:left;
        font-size:1.1rem;
        transition:background-color 0.2s ease;
    }
    
    .nav-links a:last-child{
        border-bottom:none;
    }
    
    .nav-links a:hover{
        background-color:rgba(255,255,255,0.1);
        opacity:1;
    }
    
    /* Mobile breadcrumb - show only on mobile */
    .breadcrumb-container.mobile-only {
        display: block;
        border-top: 1px solid rgba(255,255,255,0.2);
        padding: 8px 15px;
    }
    
    .breadcrumb {
        font-size: 0.8rem;
    }
    
    .breadcrumb .separator {
        margin: 0 6px;
    }
}

@media(max-width:480px){
    header .logo{width:105px;}
    header .header-text h1{font-size:1.5em;}
    header .header-text h2{font-size:.9rem;}
    .header-img{
        width:60px;
        height:60px;
    }
} 