
body{
    margin:0;
    font-family:Arial, sans-serif;
}

/* --- TOP BAR --- */
.top-bar{
    background:#111;
    padding:12px;
    color:white;
}
.top-bar-inner{
    max-width:1100px;
    margin:0 auto;
    display:flex;
    align-items:center;
    gap:12px;
}
.site-name{
    color:white;
    text-decoration:none;
    font-size:20px;
    font-weight:bold;
}
.site-tagline{
    font-size:14px;
    color:#ddd;
}

/* --- SLIDESHOW --- */
.hero-slideshow{
    background:#000;
}
.slideshow-container{
    position:relative;
    width:100%;
    max-height:85vh;
    overflow:hidden;
    background:#000;
}
.slide img{
    width:100%;
    height:auto;
    object-fit:cover;
    display:block;
}
.nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    background:rgba(0,0,0,0.5);
    color:white;
    border:none;
    padding:10px 16px;
    font-size:24px;
    cursor:pointer;
}
.prev{left:10px;}
.next{right:10px;}

.dot-container{
    text-align:center;
    margin-top:10px;
    padding-bottom:10px;
}
.dot{
    width:12px;
    height:12px;
    display:inline-block;
    border-radius:50%;
    background:#bbb;
    margin:4px;
    cursor:pointer;
}
.active-dot{ background:#333; }

/* --- ARTICLE CENTERING --- */
.article-container{
    max-width:900px;
    margin:40px auto;
    padding:25px;
    background:#fff;
    box-shadow:0 0 15px rgba(0,0,0,0.08);
    border-radius:8px;
}
.article-container img{
    max-width:100%;
    height:auto;
}
.page{
    width:100%;
}
.content-card{
    font-size:16px;
    line-height:1.7;
}
.lead{
    font-size:17px;
}

/* --- LIST STYLES --- */
.check-list{
    padding-left:20px;
}
.check-list li{
    margin-bottom:4px;
}
.number-list{
    padding-left:20px;
}
.number-list li{
    margin-bottom:4px;
}

/* --- FOOTER --- */
.site-footer{
    background:#111;
    color:#e8f5e9;
    padding:20px 0;
    margin-top:40px;
}
.footer-inner{
    max-width:1100px;
    margin:0 auto;
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:20px;
    font-size:14px;
}
.footer-sub{
    margin-top:4px;
    color:#cfd8dc;
}
.footer-nav a{
    color:#e8f5e9;
    text-decoration:none;
    margin-left:15px;
    font-size:14px;
}
.footer-nav a:hover{
    text-decoration:underline;
}

/* mobile */
@media(max-width:768px){
    .article-container{
        margin:20px 12px;
        padding:18px;
    }
    .top-bar-inner,
    .footer-inner{
        padding:0 12px;
    }
    .footer-inner{
        flex-direction:column;
        align-items:flex-start;
    }
}
