/* ===================================================
   HOGZMANN WEBSITE
   Main Stylesheet
   Version 1.0
=================================================== */

:root{

    --primary:#6DAA2C;
    --primary-dark:#5A8D22;

    --gold:#DDB11F;

    --dark:#1E1E1E;

    --gray:#666;

    --light:#F7F8FA;

    --white:#FFFFFF;

    --shadow:0 15px 35px rgba(0,0,0,.08);

    --shadow-lg:0 30px 60px rgba(0,0,0,.15);

    --radius:18px;

    --transition:.35s ease;

}


*{

    margin:0;

    padding:0;

    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

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

    background:var(--light);

    color:var(--dark);

    overflow-x:hidden;

}

img{

    max-width:100%;

    display:block;

}

a{

    text-decoration:none;

    color:inherit;

}

ul{

    list-style:none;

}

.container{

    width:min(1200px,92%);

    margin:auto;

}

section{

    padding:90px 0;

}


/* ================= Loader ================= */

.loader{

    position:fixed;

    inset:0;

    background:white;

    display:flex;

    align-items:center;

    justify-content:center;

    z-index:9999;

}

.loader img{

    width:130px;

    animation:float 2s infinite ease-in-out;

}

/* ================= Header ================= */

.header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;

    backdrop-filter: blur(18px);

    /* Slightly darker than the current header */
    background: rgba(245, 245, 245, 0.94);

    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.header .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 80px;
}

.logo img {
    height: 68px;
    width: auto;
    display: block;
}

.navbar ul {
    display: flex;
    gap: 38px;
}

.navbar a {
    font-weight: 500;
    transition: .3s;
}

.navbar a:hover {
    color: var(--primary);
}

.btn-nav {
    background: var(--primary);
    color: white;
    padding: 12px 28px;
    border-radius: 40px;
    transition: var(--transition);
}

.btn-nav:hover {
    background: var(--primary-dark);
}


/* ================= Hero ================= */

.hero{

    padding-top:170px;

    min-height:100vh;

    display:flex;

    align-items:center;

    background:

    radial-gradient(circle at top right,#e9ffd5,transparent 35%),

    linear-gradient(180deg,#ffffff,#f5f6f8);

}

.hero-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    align-items:center;

    gap:70px;

}

.badge{

    display:inline-block;

    background:#EAF7DE;

    color:var(--primary);

    padding:10px 22px;

    border-radius:40px;

    margin-bottom:22px;

    font-weight:600;

}

.hero h1{

    font-size:64px;

    line-height:1.05;

    margin-bottom:24px;

}

.hero h1 span{

    color:var(--primary);

}

.hero p{

    font-size:18px;

    color:#555;

    line-height:1.8;

    margin-bottom:35px;

}

.hero-buttons{

    display:flex;

    gap:18px;

    margin-bottom:55px;

}

.btn-primary{

    padding:16px 38px;

    background:var(--primary);

    color:white;

    border-radius:45px;

    transition:var(--transition);

    box-shadow:0 15px 35px rgba(109,170,44,.35);

}

.btn-primary:hover{

    transform:translateY(-5px);

}

.btn-secondary{

    padding:16px 38px;

    border-radius:45px;

    border:2px solid var(--primary);

    color:var(--primary);

    transition:var(--transition);

}

.btn-secondary:hover{

    background:var(--primary);

    color:white;

}

.hero-stats{

    display:flex;

    gap:45px;

}

.hero-stats h3{

    font-size:28px;

    color:var(--primary);

}

.hero-stats span{

    color:#777;

    font-size:14px;

}

.hero-right{

    position:relative;

}

.hero-clock{

    width:95%;

    animation:float 4s ease-in-out infinite;

    position:relative;

    z-index:2;

}

.rgb-glow{

    position:absolute;

    width:500px;

    height:500px;

    background:radial-gradient(circle,

    rgba(109,170,44,.25),

    rgba(255,180,0,.10),

    transparent 70%);

    filter:blur(40px);

    top:50%;

    left:50%;

    transform:translate(-50%,-50%);

}


/* ================= Section Title ================= */

.section-title{

    text-align:center;

    margin-bottom:70px;

}

.section-title span{

    color:var(--primary);

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:2px;

}

.section-title h2{

    font-size:46px;

    margin-top:15px;

}

.section-title p{

    color:#777;

    margin-top:20px;

    font-size:18px;

}

/* ==========================================
   FEATURES
========================================== */

.features{
    background:#fff;
}

.feature-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.feature-card{

    background:#fff;

    border-radius:22px;

    padding:40px 30px;

    text-align:center;

    box-shadow:var(--shadow);

    transition:.35s;

    border:1px solid #eee;

}

.feature-card:hover{

    transform:translateY(-12px);

    box-shadow:var(--shadow-lg);

}

.feature-card .icon{

    width:80px;

    height:80px;

    margin:auto;

    margin-bottom:25px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:40px;

    border-radius:50%;

    background:#eef8e4;

}

.feature-card h3{

    margin-bottom:15px;

    font-size:24px;

}

.feature-card p{

    color:#666;

    line-height:1.8;

}



/* ==========================================
   SPECIFICATIONS
========================================== */

.specifications{

    background:#f9fafb;

}

.spec-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.spec-card{

    background:white;

    padding:35px;

    border-radius:18px;

    box-shadow:var(--shadow);

    transition:.3s;

    text-align:center;

}

.spec-card:hover{

    transform:translateY(-10px);

}

.spec-card h4{

    color:var(--primary);

    margin-bottom:12px;

    font-size:22px;

}

.spec-card p{

    color:#666;

    font-size:18px;

}



/* ==========================================
   GALLERY
========================================== */

.gallery{

    background:white;

}

.gallery-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:25px;

}

.gallery-item{

    overflow:hidden;

    border-radius:22px;

    box-shadow:var(--shadow);

}

.gallery-item img{

    width:100%;

    transition:.45s;

}

.gallery-item:hover img{

    transform:scale(1.08);

}



/* ==========================================
   SETUP GUIDE
========================================== */

.setup{

    background:#f7f8fa;

}

.setup-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:35px;

}

.setup-card{

    background:white;

    padding:25px;

    border-radius:20px;

    box-shadow:var(--shadow);

    transition:.3s;

}

.setup-card:hover{

    transform:translateY(-8px);

}

.setup-card img{

    border-radius:15px;

    margin-bottom:25px;

}

.setup-card h3{

    margin-bottom:15px;

}

.setup-card p{

    color:#666;

    line-height:1.8;

}



/* ==========================================
   ABOUT
========================================== */

.about{

    background:white;

}

.about-grid{

    display:grid;

    grid-template-columns:400px 1fr;

    gap:80px;

    align-items:center;

}

.about-logo{

    width:100%;

    max-width:300px;

}

.about span{

    color:var(--primary);

    font-weight:700;

    letter-spacing:2px;

}

.about h2{

    font-size:48px;

    margin:20px 0;

}

.about p{

    color:#666;

    line-height:1.9;

    margin-bottom:18px;

}



/* ==========================================
   CONTACT
========================================== */

.contact{

    background:#f9fafb;

}

.contact-wrapper{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.contact-card{

    background:white;

    padding:40px;

    border-radius:18px;

    text-align:center;

    box-shadow:var(--shadow);

}

.contact-card h3{

    margin-bottom:18px;

    color:var(--primary);

}

.contact-card p{

    color:#666;

}



/* ==========================================
   CTA
========================================== */

.cta{

    background:linear-gradient(135deg,#6DAA2C,#93c748);

    text-align:center;

    color:white;

}

.cta h2{

    font-size:48px;

    margin-bottom:20px;

}

.cta p{

    width:700px;

    max-width:100%;

    margin:auto;

    margin-bottom:35px;

    line-height:1.8;

}

.cta .btn-primary{

    background:white;

    color:var(--primary);

}



/* ==========================================
   FOOTER
========================================== */

footer{

    background:#151515;

    color:white;

    padding-top:70px;

}

.footer-grid{

    display:grid;

    grid-template-columns:2fr 1fr 1fr 1fr;

    gap:45px;

}

.footer-logo{

    width:180px;

    margin-bottom:20px;

}

.footer-grid h4{

    margin-bottom:20px;

}

.footer-grid ul li{

    margin-bottom:14px;

}

.footer-grid a{

    color:#ddd;

    transition:.3s;

}

.footer-grid a:hover{

    color:#6DAA2C;

}

.footer-grid p{

    color:#bbb;

    line-height:1.8;

}

.copyright{

    text-align:center;

    margin-top:60px;

    padding:25px;

    border-top:1px solid rgba(255,255,255,.08);

    color:#999;

}



/* ==========================================
   SCROLL BUTTON
========================================== */

#scrollTop{

    position:fixed;

    right:30px;

    bottom:30px;

    width:55px;

    height:55px;

    border:none;

    border-radius:50%;

    background:#6DAA2C;

    color:white;

    font-size:22px;

    cursor:pointer;

    display:none;

    box-shadow:0 15px 35px rgba(0,0,0,.2);

    transition:.3s;

    z-index:999;

}

#scrollTop:hover{

    transform:translateY(-6px);

}


/* Self-hosted guide video — Setup section */
.guide-video-section { max-width: 920px; margin: 0 auto 54px; text-align: center; }
.guide-video-heading { margin-bottom: 24px; }
.guide-video-eyebrow { display: block; color: #80b947; font-size: 12px; font-weight: 700; letter-spacing: .16em; margin-bottom: 10px; }
.guide-video-heading h3 { font-size: clamp(24px, 3vw, 34px); margin: 0 0 12px; }
.guide-video-heading p { max-width: 650px; margin: 0 auto; line-height: 1.7; opacity: .78; }
.guide-video-frame { aspect-ratio: 16 / 9; background: #090d0b; overflow: hidden; border-radius: 18px; border: 1px solid rgba(128,185,71,.25); box-shadow: 0 22px 65px rgba(0,0,0,.22); }
.guide-video-frame video { display: block; width: 100%; height: 100%; object-fit: contain; }
.guide-video-caption { font-size: 13px; opacity: .65; margin-top: 14px; }
@media (max-width: 600px) { .guide-video-section { margin-bottom: 36px; } .guide-video-frame { border-radius: 12px; } .guide-video-heading { margin-bottom: 18px; } }
