/* RESET */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:Arial, Helvetica, sans-serif;
    background:#f5f5f5;
    overflow-x:hidden;
}

/* FONT SCALE */

html{
    font-size:16px;
    transition:0.3s;
}

html.font-large{
    font-size:20px;
}

html.font-small{
    font-size:14px;
}

/* CONTAINER */

.container{
    width:100%;
    max-width:1400px;
    margin:0 auto;
    padding:0 20px;
}

/* HEADER */

.site-header{
    width:100%;
    background:#111;
    position:relative;
    z-index:9999;
}

/* TOP BAR */

.top-bar{
    background:#0b0b0b;
    padding:12px 0;
    border-bottom:1px solid rgba(255,255,255,0.1);
}

.top-bar-content{
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.contact-info{
    display:flex;
    gap:30px;
}

.contact-info a{
    color:#fff;
    text-decoration:none;
    font-size:0.95rem;
}

.accessibility-bar{
    display:flex;
    align-items:center;
    gap:10px;
}

.accessibility-bar span{
    color:#fff;
    font-size:0.8rem;
    font-weight:bold;
}

.accessibility-bar button{
    width:34px;
    height:34px;
    border:none;
    background:#222;
    color:#fff;
    cursor:pointer;
}

.accessibility-bar a{
    color:#fff;
    text-decoration:none;
    margin-left:10px;
}

/* NAVIGATION */

.main-navigation{
    background:#151515;
    padding:20px 0;
    border-bottom:4px solid #c40000;
    position:relative;
}

.nav-content{
    display:flex;
    justify-content:space-between;
    align-items:center;
}

/* LOGO */

.logo img{
    width:170px;
    display:block;
}

/* MENU */

.main-menu ul{
    display:flex;
    align-items:center;
    gap:40px;
    list-style:none;
}

.main-menu ul li a{
    color:#fff;
    text-decoration:none;
    font-size:0.95rem;
    font-weight:bold;
    position:relative;
    padding-bottom:8px;
}

.main-menu ul li a:hover{
    color:#ffcc00;
}

.main-menu ul li a.active{
    color:#ffcc00;
}

.main-menu ul li a::after{
    content:'';
    position:absolute;
    left:0;
    bottom:0;
    width:0%;
    height:2px;
    background:#c40000;
    transition:0.3s;
}

.main-menu ul li a:hover::after,
.main-menu ul li a.active::after{
    width:100%;
}

/* MOBILE BUTTON */

.mobile-menu-btn{
    display:none;
    width:50px;
    height:50px;
    border:none;
    background:#c40000;
    color:#fff;
    font-size:28px;
    cursor:pointer;
}

/* ACCESSIBILITY */

body.dyslexia-font{
    font-family:Verdana, sans-serif;
    line-height:1.8;
    letter-spacing:1px;
}

body.high-contrast{
    background:#000 !important;
    color:#fff !important;
}

body.high-contrast *{
    background:#000 !important;
    color:#fff !important;
    border-color:#fff !important;
}

/* MOBILE */

@media(max-width:900px){

    .mobile-menu-btn{
        display:block;
    }

    .main-menu{
        display:none;
        position:absolute;
        top:100%;
        left:0;
        width:100%;
        background:#111;
        padding:30px 20px;
    }

    .main-menu.active{
        display:block;
    }

    .main-menu ul{
        flex-direction:column;
        align-items:flex-start;
        gap:25px;
    }

    .top-bar-content{
        flex-direction:column;
        gap:20px;
    }

}

@media(max-width:768px){

    .contact-info{
        flex-direction:column;
        gap:10px;
    }

    .accessibility-bar{
        flex-wrap:wrap;
        justify-content:center;
    }

}
/* =========================
   HERO SECTION
========================= */

.hero-section{
    width:100%;
    min-height:750px;
    background:url('/images/hero.jpg') center center/cover no-repeat;
    position:relative;
    display:flex;
    align-items:center;
}

.hero-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,0.65);
}

.hero-content{
    position:relative;
    z-index:2;
}

.hero-text{
    max-width:750px;
    color:#fff;
}

.hero-subtitle{
    display:inline-block;
    background:#c40000;
    padding:12px 24px;
    font-size:0.9rem;
    font-weight:bold;
    letter-spacing:2px;
    margin-bottom:25px;
}

.hero-text h1{
    font-size:5rem;
    line-height:1.1;
    margin-bottom:30px;
    font-weight:900;
}

.hero-text p{
    font-size:1.3rem;
    line-height:1.9;
    margin-bottom:40px;
    color:#ddd;
}

/* HERO BUTTONS */

.hero-buttons{
    display:flex;
    gap:20px;
}

.btn-primary,
.btn-secondary{
    display:inline-block;
    padding:18px 35px;
    text-decoration:none;
    font-size:1rem;
    font-weight:bold;
    transition:0.3s;
}

.btn-primary{
    background:#c40000;
    color:#fff;
}

.btn-primary:hover{
    background:#ff0000;
}

.btn-secondary{
    border:2px solid #fff;
    color:#fff;
}

.btn-secondary:hover{
    background:#fff;
    color:#111;
}

/* =========================
   NEWS SECTION
========================= */

.latest-news{
    padding:100px 0;
    background:#f7f7f7;
}

.section-title{
    text-align:center;
    margin-bottom:70px;
}

.section-title span{
    color:#c40000;
    font-size:1rem;
    font-weight:bold;
    letter-spacing:2px;
}

.section-title h2{
    font-size:3rem;
    margin-top:15px;
    color:#111;
}

/* NEWS GRID */

.news-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:40px;
}

/* NEWS CARD */

.news-card{
    background:#fff;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
    transition:0.3s;
    overflow:hidden;
}

.news-card:hover{
    transform:translateY(-10px);
}

.news-image{
    width:100%;
    height:250px;
    overflow:hidden;
}

.news-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:0.4s;
}

.news-card:hover .news-image img{
    transform:scale(1.05);
}

.news-content{
    padding:35px;
}

.news-date{
    display:block;
    color:#c40000;
    font-size:0.85rem;
    font-weight:bold;
    margin-bottom:15px;
}

.news-content h3{
    font-size:1.8rem;
    margin-bottom:20px;
    color:#111;
}

.news-content p{
    line-height:1.8;
    color:#555;
    margin-bottom:25px;
}

.news-content a{
    text-decoration:none;
    color:#111;
    font-weight:bold;
    transition:0.3s;
}

.news-content a:hover{
    color:#c40000;
}

/* =========================
   ABOUT HOME
========================= */

.about-home{
    padding:100px 0;
    background:#fff;
}

.about-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:center;
}

.about-text span{
    color:#c40000;
    font-size:1rem;
    font-weight:bold;
    letter-spacing:2px;
}

.about-text h2{
    font-size:3.5rem;
    margin:20px 0 30px;
    color:#111;
}

.about-text p{
    font-size:1.1rem;
    line-height:1.9;
    color:#555;
    margin-bottom:40px;
}

.about-image img{
    width:100%;
    border-radius:12px;
    display:block;
}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:1200px){

    .hero-text h1{
        font-size:4rem;
    }

    .news-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

@media(max-width:992px){

    .about-grid{
        grid-template-columns:1fr;
    }

}

@media(max-width:768px){

    .hero-section{
        min-height:650px;
        padding:80px 0;
    }

    .hero-text h1{
        font-size:3rem;
    }

    .hero-text p{
        font-size:1rem;
    }

    .hero-buttons{
        flex-direction:column;
    }

    .news-grid{
        grid-template-columns:1fr;
    }

    .section-title h2{
        font-size:2.2rem;
    }

    .about-text h2{
        font-size:2.5rem;
    }

}
/* =========================
   FOOTER
========================= */

.site-footer{
    background:#0f0f0f;
    color:#fff;
    padding-top:90px;
    margin-top:100px;
    position:relative;
}

/* TOP BORDER */

.site-footer::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    background:#c40000;
}

/* FOOTER GRID */

.footer-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:60px;
}

/* FOOTER BOX */

.footer-box h3{
    font-size:1.5rem;
    margin-bottom:30px;
    color:#ffcc00;
    position:relative;
}

.footer-box h3::after{
    content:'';
    width:50px;
    height:2px;
    background:#c40000;
    position:absolute;
    left:0;
    bottom:-12px;
}

.footer-box p{
    color:#cfcfcf;
    line-height:1.9;
    margin-bottom:15px;
    font-size:1rem;
}

/* FOOTER LOGO */

.footer-logo{
    width:150px;
    margin-bottom:25px;
    display:block;
}

/* FOOTER LINKS */

.footer-box ul{
    list-style:none;
}

.footer-box ul li{
    margin-bottom:15px;
}

.footer-box ul li a{
    color:#cfcfcf;
    text-decoration:none;
    transition:0.3s;
    position:relative;
}

.footer-box ul li a:hover{
    color:#ffcc00;
    padding-left:8px;
}

/* SOCIAL LINKS */

.social-links{
    display:flex;
    flex-direction:column;
    gap:15px;
}

.social-links a{
    color:#fff;
    text-decoration:none;
    transition:0.3s;
    font-size:1rem;
}

.social-links a:hover{
    color:#ffcc00;
    transform:translateX(5px);
}

/* FOOTER BOTTOM */

.footer-bottom{
    margin-top:70px;
    border-top:1px solid rgba(255,255,255,0.08);
    padding:25px 0;
}

.footer-bottom p{
    text-align:center;
    color:#999;
    font-size:0.9rem;
}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:1100px){

    .footer-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

@media(max-width:768px){

    .footer-grid{
        grid-template-columns:1fr;
        gap:50px;
    }

    .site-footer{
        padding-top:70px;
    }

    .footer-box{
        text-align:center;
    }

    .footer-box h3::after{
        left:50%;
        transform:translateX(-50%);
    }

    .footer-logo{
        margin:0 auto 25px;
    }

    .social-links{
        align-items:center;
    }

}
/* =========================
   SINGLE NEWS
========================= */

.single-news{
    padding:100px 0;
    background:#fff;
}

/* HEADER */

.single-news-header{
    max-width:900px;
    margin:0 auto 50px;
    text-align:center;
}

.news-single-date{
    display:inline-block;
    background:#c40000;
    color:#fff;
    padding:10px 20px;
    font-size:0.9rem;
    font-weight:bold;
    margin-bottom:25px;
}

.single-news-header h1{
    font-size:4rem;
    line-height:1.2;
    color:#111;
}

/* IMAGE */

.single-news-image{
    margin-bottom:60px;
}

.single-news-image img{
    width:100%;
    max-height:650px;
    object-fit:cover;
    border-radius:12px;
    display:block;
}

/* CONTENT */

.single-news-content{
    max-width:900px;
    margin:0 auto;
}

.single-news-content p{
    font-size:1.15rem;
    line-height:2;
    color:#444;
    margin-bottom:30px;
}

/* BACK BUTTON */

.single-news-back{
    margin-top:60px;
    text-align:center;
}

/* RESPONSIVE */

@media(max-width:768px){

    .single-news{
        padding:70px 0;
    }

    .single-news-header h1{
        font-size:2.5rem;
    }

    .single-news-content p{
        font-size:1rem;
    }

}
/* =========================
   PAGE HERO
========================= */

.page-hero{
    width:100%;
    min-height:400px;
    background:url('/images/hero.jpg') center center/cover no-repeat;
    position:relative;
    display:flex;
    align-items:center;
}

.page-hero-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,0.7);
}

.page-hero-content{
    position:relative;
    z-index:2;
    color:#fff;
    max-width:700px;
}

.page-hero-content span{
    display:inline-block;
    background:#c40000;
    padding:10px 20px;
    margin-bottom:25px;
    font-size:0.9rem;
    font-weight:bold;
    letter-spacing:2px;
}

.page-hero-content h1{
    font-size:4.5rem;
    margin-bottom:25px;
    line-height:1.1;
}

.page-hero-content p{
    font-size:1.2rem;
    line-height:1.9;
    color:#ddd;
}

/* =========================
   NEWS PAGE
========================= */

.news-page{
    padding:100px 0;
    background:#f7f7f7;
}

/* RESPONSIVE */

@media(max-width:768px){

    .page-hero{
        min-height:300px;
    }

    .page-hero-content h1{
        font-size:3rem;
    }

    .page-hero-content p{
        font-size:1rem;
    }

}
.about-page{
    padding:100px 0;
    background:#fff;
}

.about-page-content{
    max-width:1000px;
    margin:0 auto;
    background:#fff;
}

.about-page-content h2{
    font-size:3rem;
    color:#111;
    margin-bottom:10px;
    text-align:center;
}

.about-page-content h3{
    font-size:1.8rem;
    color:#c40000;
    margin-bottom:50px;
    text-align:center;
}

.about-page-content p{
    font-size:1.1rem;
    line-height:2;
    color:#444;
    margin-bottom:28px;
}

@media(max-width:768px){

    .about-page{
        padding:70px 0;
    }

    .about-page-content h2{
        font-size:2.2rem;
    }

    .about-page-content h3{
        font-size:1.4rem;
    }

    .about-page-content p{
        font-size:1rem;
    }

}
/* =========================
   VEHICLES PAGE
========================= */

.vehicles-page{
    padding:100px 0;
    background:#f7f7f7;
}

/* GRID */

.vehicles-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:40px;
}

/* CARD */

.vehicle-card{
    background:#fff;
    overflow:hidden;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
    transition:0.3s;
}

.vehicle-card:hover{
    transform:translateY(-10px);
}

/* IMAGE */

.vehicle-image{
    width:100%;
    height:280px;
    overflow:hidden;
}

.vehicle-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:0.4s;
}

.vehicle-card:hover .vehicle-image img{
    transform:scale(1.05);
}

/* CONTENT */

.vehicle-content{
    padding:35px;
}

.vehicle-content h2{
    font-size:1.8rem;
    margin-bottom:15px;
    color:#111;
}

.vehicle-content p{
    color:#555;
    font-size:1rem;
    line-height:1.8;
}

/* RESPONSIVE */

@media(max-width:1200px){

    .vehicles-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

@media(max-width:768px){

    .vehicles-page{
        padding:70px 0;
    }

    .vehicles-grid{
        grid-template-columns:1fr;
    }

}
/* =========================
   SERVICE PAGE
========================= */

.service-page{
    padding:100px 0;
    background:#fff;
}

.service-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:center;
}

/* CONTENT */

.section-small-title{
    color:#c40000;
    font-size:1rem;
    font-weight:bold;
    letter-spacing:2px;
    display:block;
    margin-bottom:20px;
}

.service-content h2{
    font-size:3.5rem;
    line-height:1.2;
    margin-bottom:30px;
    color:#111;
}

.service-content p{
    font-size:1.1rem;
    line-height:1.9;
    color:#555;
    margin-bottom:40px;
}

/* INFO */

.service-info{
    display:flex;
    flex-direction:column;
    gap:25px;
}

.service-info-item{
    padding:20px;
    background:#f7f7f7;
    border-left:4px solid #c40000;
}

.service-info-item strong{
    display:block;
    margin-bottom:10px;
    color:#111;
    font-size:1rem;
}

.service-info-item span{
    color:#555;
    line-height:1.7;
}

/* IMAGE */

.service-image img{
    width:100%;
    border-radius:12px;
    display:block;
}

/* =========================
   AUTHORIZED SECTION
========================= */

.authorized-section{
    padding:100px 0;
    background:#f7f7f7;
}

.authorized-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
}

/* CARD */

.authorized-card{
    background:#fff;
    padding:35px 25px;
    text-align:center;
    font-size:1.1rem;
    font-weight:bold;
    color:#111;
    box-shadow:0 10px 25px rgba(0,0,0,0.08);
    transition:0.3s;
}

.authorized-card:hover{
    transform:translateY(-8px);
    background:#c40000;
    color:#fff;
}

/* RESPONSIVE */

@media(max-width:1200px){

    .authorized-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

@media(max-width:992px){

    .service-grid{
        grid-template-columns:1fr;
    }

}

@media(max-width:768px){

    .service-page,
    .authorized-section{
        padding:70px 0;
    }

    .service-content h2{
        font-size:2.5rem;
    }

    .authorized-grid{
        grid-template-columns:1fr;
    }

}
/* =========================
   GALLERY PAGE
========================= */

.gallery-page{
    padding:100px 0;
    background:#f7f7f7;
}

/* GRID */

.gallery-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

/* ITEM */

.gallery-item{
    position:relative;
    overflow:hidden;
    border-radius:10px;
    cursor:pointer;
}

.gallery-item img{
    width:100%;
    height:320px;
    object-fit:cover;
    display:block;
    transition:0.4s;
}

.gallery-item:hover img{
    transform:scale(1.08);
}

/* OVERLAY */

.gallery-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,0.55);
    display:flex;
    align-items:flex-end;
    padding:30px;
    opacity:0;
    transition:0.3s;
}

.gallery-item:hover .gallery-overlay{
    opacity:1;
}

.gallery-overlay h3{
    color:#fff;
    font-size:1.4rem;
}

/* EMPTY */

.gallery-empty{
    background:#fff;
    padding:120px 40px;
    text-align:center;
    border-radius:12px;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
}

.gallery-empty-icon{
    font-size:5rem;
    margin-bottom:30px;
}

.gallery-empty h2{
    font-size:2.5rem;
    margin-bottom:20px;
    color:#111;
}

.gallery-empty p{
    font-size:1.1rem;
    color:#666;
}

/* RESPONSIVE */

@media(max-width:1200px){

    .gallery-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

@media(max-width:768px){

    .gallery-page{
        padding:70px 0;
    }

    .gallery-grid{
        grid-template-columns:1fr;
    }

    .gallery-empty{
        padding:80px 30px;
    }

    .gallery-empty h2{
        font-size:2rem;
    }

}
/* =========================
   DOCUMENTS PAGE
========================= */

.documents-page{
    padding:100px 0;
    background:#f7f7f7;
}

.documents-section{
    margin-bottom:100px;
}

/* DOCUMENT GRID */

.documents-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:35px;
}

/* DOCUMENT CARD */

.document-card{
    background:#fff;
    padding:50px 35px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
    transition:0.3s;
}

.document-card:hover{
    transform:translateY(-10px);
}

.document-icon{
    font-size:4rem;
    margin-bottom:25px;
}

.document-card h3{
    font-size:1.5rem;
    margin-bottom:15px;
    color:#111;
}

.document-card p{
    color:#666;
    margin-bottom:30px;
}

/* BUTTON */

.document-card a{
    display:inline-block;
    padding:14px 28px;
    background:#c40000;
    color:#fff;
    text-decoration:none;
    font-weight:bold;
    transition:0.3s;
}

.document-card a:hover{
    background:#ff0000;
}

/* REGULATIONS */

.regulations-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:35px;
}

/* CARD */

.regulation-card{
    background:#fff;
    padding:45px 35px;
    text-decoration:none;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
    transition:0.3s;
    color:#111;
}

.regulation-card:hover{
    transform:translateY(-10px);
    background:#c40000;
    color:#fff;
}

.regulation-icon{
    font-size:3rem;
    margin-bottom:25px;
}

.regulation-card h3{
    font-size:1.4rem;
    margin-bottom:20px;
    line-height:1.5;
}

.regulation-card span{
    font-weight:bold;
    letter-spacing:1px;
}

/* RESPONSIVE */

@media(max-width:1200px){

    .documents-grid,
    .regulations-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

@media(max-width:768px){

    .documents-page{
        padding:70px 0;
    }

    .documents-grid,
    .regulations-grid{
        grid-template-columns:1fr;
    }

}
/* =========================
   CONTACT PAGE
========================= */

.contact-page{
    padding:100px 0;
    background:#f7f7f7;
}

/* GRID */

.contact-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:stretch;
}

/* LEFT */

.contact-info-box{
    background:#fff;
    padding:50px;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
}

.contact-info-box h2{
    font-size:3rem;
    margin:20px 0 30px;
    color:#111;
}

.contact-info-box p{
    font-size:1.05rem;
    line-height:1.9;
    color:#555;
    margin-bottom:40px;
}

/* ITEMS */

.contact-items{
    display:flex;
    flex-direction:column;
    gap:25px;
}

.contact-item{
    display:flex;
    gap:20px;
    align-items:flex-start;
    padding-bottom:25px;
    border-bottom:1px solid #eee;
}

/* ICON */

.contact-icon{
    width:55px;
    height:55px;
    min-width:55px;
    background:#c40000;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.4rem;
}

/* TEXT */

.contact-text strong{
    display:block;
    margin-bottom:8px;
    color:#111;
    font-size:1rem;
}

.contact-text span{
    color:#555;
    line-height:1.7;
}

.contact-text a{
    color:#c40000;
    text-decoration:none;
    font-weight:bold;
}

/* MAP */

.contact-map{
    min-height:700px;
    overflow:hidden;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
}

/* RESPONSIVE */

@media(max-width:992px){

    .contact-grid{
        grid-template-columns:1fr;
    }

    .contact-map{
        min-height:500px;
    }

}

@media(max-width:768px){

    .contact-page{
        padding:70px 0;
    }

    .contact-info-box{
        padding:35px;
    }

    .contact-info-box h2{
        font-size:2.3rem;
    }

    .contact-item{
        flex-direction:column;
    }

}
/* =========================
   WELCOME SECTION
========================= */

.welcome-section{
    padding:100px 0;
    background:#fff;
}

.welcome-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:center;
}

/* CONTENT */

.welcome-content h2{
    font-size:3.5rem;
    line-height:1.2;
    margin:20px 0 30px;
    color:#111;
}

.welcome-content p{
    font-size:1.1rem;
    line-height:1.9;
    color:#555;
    margin-bottom:40px;
}

/* MANAGEMENT */

.management-box{
    background:#f7f7f7;
    padding:40px;
    border-left:5px solid #c40000;
}

.management-box h3{
    font-size:1.8rem;
    margin-bottom:30px;
    color:#111;
}

.management-item{
    margin-bottom:20px;
}

.management-item strong{
    display:block;
    margin-bottom:8px;
    color:#111;
}

.management-item span{
    color:#555;
    line-height:1.7;
}

/* IMAGES */

.welcome-images{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:25px;
}

.welcome-images img{
    width:100%;
    height:500px;
    object-fit:cover;
    border-radius:12px;
}

.welcome-images img:last-child{
    margin-top:60px;
}

/* =========================
   HOME SERVICES
========================= */

.home-services{
    padding:100px 0;
    background:#f7f7f7;
}

.services-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:40px;
}

/* CARD */

.service-card-home{
    background:#fff;
    padding:50px;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
    transition:0.3s;
}

.service-card-home:hover{
    transform:translateY(-10px);
}

.service-icon{
    font-size:4rem;
    margin-bottom:25px;
}

.service-card-home h3{
    font-size:2rem;
    margin-bottom:25px;
    color:#111;
}

.service-card-home p{
    color:#555;
    line-height:1.9;
    margin-bottom:30px;
}

/* SMALL INFO */

.service-info-small{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.service-info-small span{
    font-weight:bold;
    color:#c40000;
}

/* RESPONSIVE */

@media(max-width:992px){

    .welcome-grid{
        grid-template-columns:1fr;
    }

    .services-grid{
        grid-template-columns:1fr;
    }

}

@media(max-width:768px){

    .welcome-section,
    .home-services{
        padding:70px 0;
    }

    .welcome-content h2{
        font-size:2.5rem;
    }

    .welcome-images{
        grid-template-columns:1fr;
    }

    .welcome-images img{
        height:350px;
    }

    .welcome-images img:last-child{
        margin-top:0;
    }

    .service-card-home{
        padding:35px;
    }

}
.service-icon{
    width:120px;
    height:120px;
    margin-bottom:25px;
    border-radius:50%;
    overflow:hidden;
    border:3px solid #c40000;
    box-shadow:0 8px 20px rgba(196,0,0,0.20);
}

.service-icon img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
/* =========================
   NEWS GALLERY
========================= */

.news-gallery{
    margin-top:80px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:25px;
}

.news-gallery img{
    width:100%;
    height:260px;
    object-fit:cover;
    border-radius:10px;
    transition:0.3s;
    cursor:pointer;
}

.news-gallery img:hover{
    transform:scale(1.03);
}

/* FACEBOOK LINK */

.facebook-news-link{
    margin-top:60px;
    text-align:center;
}

.facebook-news-link a{
    display:inline-block;
    padding:18px 35px;
    background:#1877f2;
    color:#fff;
    text-decoration:none;
    font-weight:bold;
    transition:0.3s;
}

.facebook-news-link a:hover{
    background:#0d65d9;
}

/* LIST */

.news-list{
    margin:35px 0;
    padding-left:25px;
}

.news-list li{
    margin-bottom:15px;
    line-height:1.8;
    color:#444;
    font-size:1.05rem;
}

/* RESPONSIVE */

@media(max-width:992px){

    .news-gallery{
        grid-template-columns:repeat(2,1fr);
    }

}

@media(max-width:768px){

    .news-gallery{
        grid-template-columns:1fr;
    }

}
/* =========================
   PUBLIC POSTS
========================= */

.public-posts-page,
.home-public-posts{
    padding:100px 0;
    background:#f7f7f7;
}

.public-posts-list{
    display:flex;
    flex-direction:column;
    gap:25px;
}

.public-post-card{
    background:#fff;
    display:grid;
    grid-template-columns:180px 1fr 180px;
    gap:30px;
    align-items:center;
    padding:35px;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
    border-left:5px solid #c40000;
}

.public-post-date{
    font-size:1.1rem;
    font-weight:bold;
    color:#c40000;
}

.public-post-content span{
    display:inline-block;
    margin-bottom:10px;
    font-size:0.85rem;
    font-weight:bold;
    color:#c40000;
    text-transform:uppercase;
}

.public-post-content h2{
    font-size:1.8rem;
    color:#111;
    margin-bottom:12px;
}

.public-post-content p{
    color:#555;
    line-height:1.7;
}

.public-post-button a{
    display:inline-block;
    background:#c40000;
    color:#fff;
    padding:14px 22px;
    text-decoration:none;
    font-weight:bold;
    transition:0.3s;
}

.public-post-button a:hover{
    background:#ff0000;
}

@media(max-width:900px){

    .public-post-card{
        grid-template-columns:1fr;
    }

}
/* =========================
   JAVNE OBJAVE
========================= */

.public-posts-page,
.home-public-posts{
    padding:100px 0;
    background:#f7f7f7;
}

.public-posts-list{
    display:flex;
    flex-direction:column;
    gap:25px;
}

.public-post-card{
    background:#fff;
    display:grid;
    grid-template-columns:180px 1fr 180px;
    gap:30px;
    align-items:center;
    padding:35px;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
    border-left:5px solid #c40000;
}

.public-post-date{
    font-size:1.1rem;
    font-weight:bold;
    color:#c40000;
}

.public-post-content span{
    display:inline-block;
    margin-bottom:10px;
    font-size:0.85rem;
    font-weight:bold;
    color:#c40000;
    text-transform:uppercase;
}

.public-post-content h2{
    font-size:1.8rem;
    color:#111;
    margin-bottom:12px;
}

.public-post-content p{
    color:#555;
    line-height:1.7;
}

.public-post-button a{
    display:inline-block;
    background:#c40000;
    color:#fff;
    padding:14px 22px;
    text-decoration:none;
    font-weight:bold;
}

.public-post-button a:hover{
    background:#ff0000;
}

@media(max-width:900px){

    .public-post-card{
        grid-template-columns:1fr;
    }

}
.download-list{
    display:flex;
    flex-direction:column;
    gap:18px;
    margin:35px 0 50px;
}

.download-list a{
    display:flex;
    align-items:center;
    gap:18px;
    padding:20px 25px;
    background:#f7f7f7;
    border-left:5px solid #c40000;
    color:#111;
    text-decoration:none;
    font-weight:bold;
}

.download-list a strong{
    background:#c40000;
    color:#fff;
    padding:8px 12px;
}
.download-info{
    padding:22px 25px;
    background:#f7f7f7;
    border-left:5px solid #c40000;
}

.download-info strong{
    display:block;
    margin-bottom:10px;
    color:#111;
}

.download-info span{
    color:#555;
    line-height:1.8;
}
/* =========================
   BACK TO TOP
========================= */

#backToTop{
    position:fixed;
    right:30px;
    bottom:30px;
    width:55px;
    height:55px;
    border:none;
    background:#c40000;
    color:#fff;
    font-size:1.5rem;
    cursor:pointer;
    z-index:9999;
    display:none;
    transition:0.3s;
    box-shadow:0 10px 25px rgba(0,0,0,0.2);
}

#backToTop:hover{
    background:#ff0000;
    transform:translateY(-5px);
}
.cookie-banner{
    position:fixed;
    left:30px;
    right:30px;
    bottom:30px;
    background:#111;
    color:#fff;
    padding:25px;
    z-index:99999;
    display:none;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    box-shadow:0 10px 30px rgba(0,0,0,0.3);
}

.cookie-banner p{
    margin:0;
    line-height:1.6;
}

.cookie-banner a{
    color:#ffcc00;
    margin-right:20px;
    text-decoration:none;
    font-weight:bold;
}

.cookie-banner button{
    background:#c40000;
    color:#fff;
    border:none;
    padding:12px 24px;
    cursor:pointer;
    font-weight:bold;
}

@media(max-width:768px){
    .cookie-banner{
        flex-direction:column;
        align-items:flex-start;
        left:15px;
        right:15px;
        bottom:15px;
    }
}
/* =========================
   LEGAL PAGES
========================= */

.legal-page{
    padding:100px 0;
    background:#fff;
}

.legal-content{
    max-width:1000px;
    margin:0 auto;
}

.legal-content h2{
    font-size:3rem;
    margin-bottom:35px;
    color:#111;
}

.legal-content h3{
    font-size:1.8rem;
    margin:50px 0 20px;
    color:#c40000;
}

.legal-content p{
    color:#444;
    line-height:2;
    font-size:1.05rem;
    margin-bottom:20px;
}

.legal-list{
    padding-left:25px;
    margin:20px 0;
}

.legal-list li{
    margin-bottom:15px;
    line-height:1.8;
    color:#444;
}

@media(max-width:768px){

    .legal-page{
        padding:70px 0;
    }

    .legal-content h2{
        font-size:2.3rem;
    }

    .legal-content h3{
        font-size:1.5rem;
    }

}
.footer-grid-5{
    grid-template-columns:repeat(5,1fr);
}

.footer-privacy-links{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.footer-privacy-links a{
    color:#ccc;
    text-decoration:none;
}

.footer-privacy-links a:hover{
    color:#ffcc00;
}

@media(max-width:1100px){
    .footer-grid-5{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:768px){
    .footer-grid-5{
        grid-template-columns:1fr;
    }
}
.footer-privacy{
    margin-top:35px;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,0.1);
}

.footer-privacy h4{
    color:#fff;
    margin-bottom:15px;
    font-size:1rem;
}

.footer-privacy-links{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.footer-privacy-links a{
    color:#ccc;
    text-decoration:none;
    transition:0.3s;
}

.footer-privacy-links a:hover{
    color:#ffcc00;
}