/* ==========================================
   PAGE LUBES
   BASE.CSS
   Part A
========================================== */

/* ---------- Reset ---------- */

*,
*::before,
*::after{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{

    font-family:'Poppins',sans-serif;

    background:var(--white);

    color:#222;

    line-height:1.7;

    overflow-x:hidden;

    -webkit-font-smoothing:antialiased;

}

img{

    max-width:100%;

    display:block;

}

a{

    text-decoration:none;

    transition:var(--transition);

}

ul{

    list-style:none;

}

/* ---------- Typography ---------- */

h1,
h2,
h3,
h4,
h5,
h6{

    font-weight:700;

    color:#111;

    line-height:1.25;

}

h1{

    font-size:4rem;

}

h2{

    font-size:2.5rem;

}

h3{

    font-size:1.8rem;

}

p{

    color:#666;

    margin-bottom:1rem;

}

.tamil{

    font-family:"Noto Sans Tamil",sans-serif;

}

/* ---------- Container ---------- */

.container{

    max-width:var(--max-width);

}

/* ---------- Sections ---------- */

section{

    position:relative;

    padding:90px 0;

}

/* ---------- Utilities ---------- */

.text-warning{

    color:var(--primary)!important;

}

.bg-dark{

    background:var(--dark)!important;

}

.shadow-lg{

    box-shadow:var(--shadow)!important;

}

.rounded-xl{

    border-radius:18px;

}

/* ---------- Top Bar ---------- */

.top-bar{

    background:var(--dark);

    color:white;

    font-size:.9rem;

    padding:10px 0;

}

.top-bar i{

    color:var(--primary);

    margin-right:8px;

}

/* ---------- Navbar ---------- */

.navbar{

    background:rgba(13,17,23,.96)!important;

    backdrop-filter:blur(10px);

    transition:var(--transition);

    padding:16px 0;

}

.navbar-brand{

    display:flex;

    align-items:center;

}

.navbar-brand img{

    height:60px;

}

.navbar-brand h4{

    color:var(--primary);

    margin:0;

    letter-spacing:1px;

    font-weight:700;

}

.navbar-brand small{

    color:#ddd;

    display:block;

    margin-top:2px;

}

.navbar-nav .nav-link{

    color:white!important;

    margin-left:25px;

    font-weight:500;

    position:relative;

}

.navbar-nav .nav-link::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-6px;

    width:0;

    height:2px;

    background:var(--primary);

    transition:var(--transition);

}

.navbar-nav .nav-link:hover{

    color:var(--primary)!important;

}

.navbar-nav .nav-link:hover::after{

    width:100%;

}

/* ---------- Buttons ---------- */

.btn{

    border-radius:50px;

    padding:14px 32px;

    font-weight:600;

    transition:var(--transition);

}

.btn-warning{

    background:var(--primary);

    border:none;

    color:#111;

}

.btn-warning:hover{

    background:var(--primary-dark);

    color:white;

    transform:translateY(-3px);

}

.btn-success:hover{

    transform:translateY(-3px);

}

.btn-dark:hover{

    transform:translateY(-3px);

}

/* ==========================================
   BASE.CSS
   Part B
   Hero + Sections
========================================== */

/* ---------- Hero ---------- */

/* ==========================================
   HERO SECTION
========================================== */

.hero{

    position:relative;

    width:100%;

    height:100vh;

    overflow:hidden;

    background:#111;

}

.hero .swiper{

    width:100%;

    height:100%;

}

.hero-slide{

    position:relative;

    display:flex;

    align-items:center;

    background-size:cover;

    background-position:center center;

    background-repeat:no-repeat;

}

.hero-overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(
        90deg,
        rgba(0,0,0,.78) 0%,
        rgba(0,0,0,.55) 45%,
        rgba(0,0,0,.25) 100%
    );

}

.hero .container{

    position:relative;

    z-index:5;

}

.hero-content{

    max-width:650px;

    color:#fff;

}

.hero-tag{

    display:inline-block;

    background:rgba(255,193,7,.15);

    border:1px solid rgba(255,193,7,.45);

    color:#FFC107;

    padding:8px 18px;

    border-radius:40px;

    font-size:.9rem;

    font-weight:600;

    letter-spacing:.5px;

    margin-bottom:22px;

}

.hero-content h1{

    font-size:clamp(3rem,6vw,5.8rem);

    font-weight:800;

    line-height:1.05;

    margin-bottom:24px;

    color:#fff;

}

.hero-content p{

    font-size:1.2rem;

    line-height:1.8;

    color:rgba(255,255,255,.9);

    margin-bottom:40px;

}

.hero-buttons{

    display:flex;

    gap:20px;

    flex-wrap:wrap;

}

.hero-buttons .btn{

    padding:16px 34px;

    border-radius:50px;

    font-weight:600;

}

.hero .swiper-pagination-bullet{

    width:12px;

    height:12px;

    background:#fff;

    opacity:.6;

}

.hero .swiper-pagination-bullet-active{

    background:#FFC107;

    opacity:1;

}

.hero .swiper-button-next,

.hero .swiper-button-prev{

    color:#FFC107;

}

.hero .swiper-button-next:hover,

.hero .swiper-button-prev:hover{

    transform:scale(1.1);

    transition:.3s;

}

.hero-slide{

    display:flex;

    align-items:center;

    background-size:cover;

    background-position:center;

    background-repeat:no-repeat;

    animation:heroZoom 8s linear infinite;

}

@keyframes heroZoom{

    from{

        background-size:100%;

    }

    to{

        background-size:108%;

    }

}

.slide1{

background-image:url("../images/hero/hero1.jpg");
background-position:center 30%;


}

.slide2{

background-image:url("../images/hero/hero2.jpg");
background-position:center;


}

.slide3{

background-image:url("../images/hero/hero3.jpg");
background-position:center;


}

.slide4{

background-image:url("../images/hero/hero4.jpg");
background-position:center;

}

.slide5{

background-image:url("../images/hero/hero5.jpg");
    background-size: contain;
    background-position: center right;
    background-color: #111;

}

/* ---------- Section Headings ---------- */

.section-title{

    margin-bottom:60px;

}

.section-title h6{

    color:var(--primary);

    text-transform:uppercase;

    letter-spacing:2px;

    font-size:.9rem;

    margin-bottom:12px;

}

.section-title h2{

    margin-bottom:18px;

}

.section-title p{

    max-width:700px;

    margin:auto;

}

/* ---------- Background Helpers ---------- */

.bg-primary-dark{

    background:var(--dark);

    color:white;

}

.bg-secondary-dark{

    background:var(--dark-2);

    color:white;

}

.bg-light-gray{

    background:#F8F9FA;

}

/* ---------- Common Spacing ---------- */

.py-100{

    padding-top:100px;

    padding-bottom:100px;

}

.mt-40{

    margin-top:40px;

}

.mb-40{

    margin-bottom:40px;

}

/* ---------- Images ---------- */

.image-cover{

    width:100%;

    height:100%;

    object-fit:cover;

}

.rounded-image{

    border-radius:20px;

    overflow:hidden;

    box-shadow:var(--shadow);

}

/* ---------- Generic Content Blocks ---------- */

.content-block{

    padding:20px;

}

.content-block h3{

    margin-bottom:20px;

}

.content-block p:last-child{

    margin-bottom:0;

}

/* ---------- Divider ---------- */

.section-divider{

    width:90px;

    height:4px;

    background:var(--primary);

    margin:20px auto 0;

    border-radius:20px;

}

/* ---------- CTA Helpers ---------- */

.cta-box{

    padding:60px;

    border-radius:20px;

    background:linear-gradient(
        135deg,
        var(--dark),
        var(--dark-2));

    color:white;

}

.cta-box h2{

    color:white;

}

.cta-box p{

    color:#D1D5DB;

}

/* ==========================================
   TEXT SELECTION
========================================== */

::selection{
    background:var(--primary);
    color:#111;
}

::-moz-selection{
    background:var(--primary);
    color:#111;
}