/* =========================================================
   PREMIUM EXECUTIVE WEBSITE CSS
========================================================= */

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

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Poppins',sans-serif;
    background:#050505;
    color:#ffffff;
    overflow-x:hidden;
    line-height:1.7;
}

/* =========================================================
   SCROLLBAR
========================================================= */

::-webkit-scrollbar{
    width:10px;
}

::-webkit-scrollbar-track{
    background:#0a0a0a;
}

::-webkit-scrollbar-thumb{
    background:#d4af37;
    border-radius:20px;
}

/* =========================================================
   GLOBAL
========================================================= */

img{
    max-width:100%;
    display:block;
}

a{
    text-decoration:none;
}

section{
    position:relative;
}

.container{
    width:100%;
    max-width:1400px;
    margin:auto;
    padding:0 20px;
}

/* =========================================================
   GOLD GLOW
========================================================= */

.gold-glow{
    position:absolute;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(212,175,55,0.08);
    filter:blur(120px);
    z-index:-1;
}

/* =========================================================
   NAVBAR
========================================================= */

.navbar{
    width:100%;
    padding:22px 7%;

    display:flex;
    justify-content:space-between;
    align-items:center;

    position:fixed;
    top:0;
    left:0;
    z-index:999;

    background:rgba(0,0,0,0.72);

    backdrop-filter:blur(14px);

    border-bottom:
    1px solid rgba(255,255,255,0.05);

    transition:0.4s;
}

.navbar:hover{
    background:rgba(0,0,0,0.92);
}

.logo a{
    color:#d4af37;

    font-size:30px;
    font-weight:800;

    letter-spacing:1px;

    text-shadow:
    0 0 18px rgba(212,175,55,0.35);
}

.nav-links{
    display:flex;
    align-items:center;
    gap:32px;
}

.nav-links a{
    color:#ffffff;
    font-size:15px;
    font-weight:500;
    position:relative;
    transition:0.4s;
}

.nav-links a:hover{
    color:#d4af37;
}

.nav-links a::after{
    content:'';

    position:absolute;

    left:0;
    bottom:-7px;

    width:0%;
    height:2px;

    background:#d4af37;

    transition:0.4s;
}

.nav-links a:hover::after{
    width:100%;
}

.menu-toggle{
    display:none;
    width:46px;
    height:46px;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:6px;
    background:rgba(212,175,55,0.08);
    border:1px solid rgba(212,175,55,0.38);
    border-radius:12px;
    cursor:pointer;
}

.menu-toggle span{
    width:22px;
    height:2px;
    background:#d4af37;
    border-radius:20px;
    transition:0.3s;
}

.navbar.menu-open .menu-toggle span:nth-child(1){
    transform:translateY(8px) rotate(45deg);
}

.navbar.menu-open .menu-toggle span:nth-child(2){
    opacity:0;
}

.navbar.menu-open .menu-toggle span:nth-child(3){
    transform:translateY(-8px) rotate(-45deg);
}

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

.hero{
    width:100%;
    min-height:100vh;

    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:70px;

    padding:
    170px
    7%
    100px;

    position:relative;
    overflow:hidden;

    background:
    linear-gradient(
        to right,
        rgba(0,0,0,0.95),
        rgba(0,0,0,0.68)
    ),
    url('hero-bg.jpg');

    background-size:cover;
    background-position:center;
}

.hero::before{
    content:'';

    position:absolute;

    width:650px;
    height:650px;

    background:
    radial-gradient(
        rgba(212,175,55,0.12),
        transparent
    );

    top:-250px;
    right:-100px;

    filter:blur(70px);
}

.hero-content{
    flex:1;
    animation:fadeUp 1s ease;
}

.hero-content span{
    color:#d4af37;

    letter-spacing:4px;

    font-size:14px;
    font-weight:600;
}

.hero-content h1{
    font-size:72px;
    line-height:1.12;

    margin:25px 0;

    font-weight:800;

    text-shadow:
    0 0 25px rgba(255,255,255,0.08);
}

.hero-content p{
    font-size:18px;
    color:#d0d0d0;

    max-width:720px;

    margin-bottom:30px;
}

.hero-buttons{
    display:flex;
    gap:20px;
    flex-wrap:wrap;
}

/* =========================================================
   HERO IMAGE
========================================================= */

.hero-image{
    flex:1;

    display:flex;
    justify-content:center;

    position:relative;

    animation:floatImage 5s ease-in-out infinite;
}

.hero-image::before{
    content:'';

    position:absolute;

    width:460px;
    height:460px;

    border-radius:50%;

    background:
    radial-gradient(
        rgba(212,175,55,0.18),
        transparent
    );

    filter:blur(70px);

    z-index:-1;
}

.hero-image img{
    width:100%;
    max-width:470px;

    border-radius:35px;

    border:
    4px solid rgba(212,175,55,0.22);

    box-shadow:
    0 0 60px rgba(212,175,55,0.18),
    0 25px 50px rgba(0,0,0,0.5);

    transition:0.5s;
}

.hero-image img:hover{
    transform:scale(1.03);
}

/* =========================================================
   BUTTONS
========================================================= */

.btn{
    display:inline-block;

    padding:16px 36px;

    border-radius:50px;

    font-weight:600;
    font-size:15px;

    transition:0.4s;

    position:relative;
    overflow:hidden;
}

.btn::before{
    content:'';

    position:absolute;

    top:0;
    left:-100%;

    width:100%;
    height:100%;

    background:
    linear-gradient(
        120deg,
        transparent,
        rgba(255,255,255,0.25),
        transparent
    );

    transition:0.6s;
}

.btn:hover::before{
    left:100%;
}

.btn-gold{
    background:#d4af37;
    color:#000000;

    box-shadow:
    0 10px 25px rgba(212,175,55,0.25);
}

.btn-gold:hover{
    transform:translateY(-6px);
}

.btn-outline{
    border:2px solid #d4af37;
    color:#d4af37;
}

.btn-outline:hover{
    background:#d4af37;
    color:#000000;
}

/* =========================================================
   SECTION TITLE
========================================================= */

.section-title{
    text-align:center;
    margin-bottom:70px;
}

.section-title h2{
    font-size:56px;
    font-weight:800;

    position:relative;
    display:inline-block;
}

.section-title h2::after{
    content:'';

    position:absolute;

    width:70%;
    height:4px;

    background:#d4af37;

    left:15%;
    bottom:-12px;

    border-radius:20px;
}

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

.about{
    width:100%;

    padding:120px 7%;

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

    gap:90px;

    align-items:center;
}

.about img{
    border-radius:35px;

    box-shadow:
    0 25px 60px rgba(0,0,0,0.45);

    transition:0.5s;
}

.about img:hover{
    transform:scale(1.02);
}

.about-content h2{
    font-size:58px;
    margin-bottom:25px;
}

.about-content p{
    color:#d0d0d0;
    margin-bottom:22px;
    font-size:17px;
}

/* =========================================================
   STATS
========================================================= */

.stats{
    width:100%;

    padding:100px 7%;

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(240px,1fr));

    gap:30px;

    background:#0b0b0b;
}

.stat-box{
    background:
    linear-gradient(
        145deg,
        #141414,
        #0b0b0b
    );

    padding:55px 35px;

    border-radius:28px;

    text-align:center;

    border:
    1px solid rgba(255,255,255,0.05);

    transition:0.5s;

    position:relative;

    overflow:hidden;
}

.stat-box:hover{
    transform:translateY(-12px);

    border-color:#d4af37;

    box-shadow:
    0 20px 45px rgba(0,0,0,0.45);
}

.stat-box h2{
    color:#d4af37;
    font-size:54px;
    margin-bottom:10px;
}

.stat-box p{
    color:#d0d0d0;
}

/* =========================================================
   CARDS
========================================================= */

.highlights{
    width:100%;
    padding:120px 7%;
}

.cards{
    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(320px,1fr));

    gap:35px;
}

.card{
    background:
    linear-gradient(
        145deg,
        #141414,
        #0c0c0c
    );

    padding:45px;

    border-radius:30px;

    border:
    1px solid rgba(255,255,255,0.05);

    transition:0.5s;

    position:relative;

    overflow:hidden;
}

.card:hover{
    transform:translateY(-12px);

    border-color:#d4af37;

    box-shadow:
    0 25px 50px rgba(0,0,0,0.45);
}

.card h3{
    color:#d4af37;
    margin-bottom:18px;
    font-size:25px;
}

.card p{
    color:#d0d0d0;
}

/* =========================================================
   TIMELINE
========================================================= */

.timeline-section{
    width:100%;
    padding:120px 7%;
    background:#090909;
}

.timeline{
    display:grid;
    gap:30px;
}

.timeline-box{
    background:#121212;

    padding:40px;

    border-left:5px solid #d4af37;

    border-radius:0 25px 25px 0;

    transition:0.4s;
}

.timeline-box:hover{
    transform:translateX(10px);
    background:#171717;
}

.timeline-box h3{
    color:#d4af37;
    margin-bottom:15px;
}

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

.contact-form-box{
    background:
    linear-gradient(
        145deg,
        #131313,
        #0b0b0b
    );

    padding:50px;

    border-radius:35px;

    border:
    1px solid rgba(255,255,255,0.05);

    box-shadow:
    0 25px 60px rgba(0,0,0,0.45);
}

.contact-form-box h2{
    font-size:42px;
    margin-bottom:15px;
}

.contact-form-box p{
    color:#cfcfcf;
    margin-bottom:30px;
}

.form-group{
    margin-bottom:20px;
}

.form-group input,
.form-group select,
.form-group textarea{
    width:100%;

    padding:16px 18px;

    background:#0d0d0d;

    border:
    1px solid rgba(255,255,255,0.08);

    border-radius:15px;

    color:#ffffff;

    font-size:15px;

    outline:none;

    transition:0.4s;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{
    border-color:#d4af37;

    box-shadow:
    0 0 15px rgba(212,175,55,0.15);
}

textarea{
    resize:none;
}

.contact-info{
    display:grid;
    gap:25px;
}

.info-box{
    background:#111111;

    padding:28px;

    border-radius:22px;

    border:
    1px solid rgba(255,255,255,0.05);

    transition:0.4s;
}

.info-box:hover{
    transform:translateY(-6px);

    border-color:#d4af37;
}

.info-box h3{
    color:#d4af37;
    margin-bottom:10px;
}

/* =========================================================
   QUOTE SECTION
========================================================= */

.quote-section{
    width:100%;
    padding:130px 7%;

    text-align:center;

    background:
    linear-gradient(
        rgba(0,0,0,0.88),
        rgba(0,0,0,0.88)
    ),
    url('quote-bg.jpg');

    background-size:cover;
    background-position:center;
}

.quote-content{
    max-width:1000px;
    margin:auto;
}

.quote-content h2{
    font-size:42px;
    line-height:1.5;
    font-weight:600;
}

.quote-content p{
    margin-top:25px;
    color:#d4af37;
    font-size:20px;
}

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

.cta-section{
    width:100%;
    padding:120px 7%;

    text-align:center;

    background:
    linear-gradient(
        rgba(0,0,0,0.84),
        rgba(0,0,0,0.84)
    ),
    url('cta-bg.jpg');

    background-size:cover;
    background-position:center;
}

.cta-content{
    max-width:900px;
    margin:auto;
}

.cta-content h2{
    font-size:58px;
    margin-bottom:25px;
}

.cta-content p{
    color:#d0d0d0;
    margin-bottom:35px;
    font-size:18px;
}

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

footer{
    padding:45px 7%;
    text-align:center;

    background:#000000;

    border-top:
    1px solid rgba(255,255,255,0.05);
}

footer p{
    color:#999999;
}

/* =========================================================
   ANIMATIONS
========================================================= */

@keyframes fadeUp{

    from{
        opacity:0;
        transform:translateY(40px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

@keyframes floatImage{

    0%{
        transform:translateY(0px);
    }

    50%{
        transform:translateY(-15px);
    }

    100%{
        transform:translateY(0px);
    }

}

/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:1200px){

    .hero-content h1{
        font-size:58px;
    }

    .about-content h2,
    .section-title h2,
    .cta-content h2{
        font-size:48px;
    }

}

@media(max-width:992px){

    .hero{
        flex-direction:column;
        text-align:center;
    }

    .hero-buttons{
        justify-content:center;
    }

    .about{
        grid-template-columns:1fr;
    }

    .about-content{
        text-align:center;
    }

    .hero-content h1{
        font-size:50px;
    }

}

@media(max-width:768px){

    .navbar{
        padding:16px 6%;
        flex-direction:row;
        flex-wrap:wrap;
        gap:0;
    }

    .logo a{
        font-size:22px;
    }

    .menu-toggle{
        display:flex;
    }

    .nav-links{
        width:100%;
        max-height:0;
        overflow:hidden;
        flex-direction:column;
        align-items:stretch;
        gap:0;
        margin-top:0;
        transition:max-height 0.35s ease, margin-top 0.35s ease;
    }

    .navbar.menu-open .nav-links{
        max-height:520px;
        margin-top:16px;
    }

    .nav-links a{
        width:100%;
        padding:14px 0;
        text-align:center;
        border-top:1px solid rgba(255,255,255,0.08);
    }

    .nav-links a::after{
        display:none;
    }

    .hero{
        padding-top:130px;
    }

    .hero-content h1{
        font-size:42px;
    }

    .about-content h2,
    .section-title h2,
    .cta-content h2,
    .contact-form-box h2{
        font-size:38px;
    }

    .quote-content h2{
        font-size:32px;
    }

}

@media(max-width:576px){

    .hero-content h1{
        font-size:34px;
    }

    .hero-content p{
        font-size:15px;
    }

    .hero-buttons{
        flex-direction:column;
    }

    .btn{
        width:100%;
        text-align:center;
    }

    .card,
    .timeline-box,
    .stat-box,
    .contact-form-box{
        padding:30px;
    }

    .about-content h2,
    .section-title h2,
    .cta-content h2,
    .contact-form-box h2{
        font-size:30px;
    }

    .quote-content h2{
        font-size:26px;
    }

}


/* =========================================================
   SEO + UX ENHANCEMENTS
========================================================= */

body{
    text-rendering:optimizeLegibility;
}

.hero-content h1{
    background:linear-gradient(to right,#ffffff,#d4af37);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.card,
.stat-box,
.timeline-box{
    backdrop-filter:blur(8px);
}

.whatsapp-float{
    position:fixed;
    right:25px;
    bottom:25px;
    width:62px;
    height:62px;
    border-radius:50%;
    background:#25D366;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:30px;
    z-index:99999;
    box-shadow:0 12px 25px rgba(0,0,0,0.3);
    transition:0.4s;
}

.whatsapp-float:hover{
    transform:translateY(-6px) scale(1.05);
}

.footer-premium{
    background:#0b0b0b;
    padding:70px 7%;
    border-top:1px solid rgba(255,255,255,0.08);
    text-align:center;
}

.footer-premium h3{
    color:#d4af37;
    font-size:28px;
    margin-bottom:15px;
}

.footer-premium p{
    color:#d0d0d0;
    max-width:850px;
    margin:auto;
}

.footer-bottom{
    margin-top:35px;
    color:#8d8d8d;
    font-size:14px;
}

@media(max-width:768px){

    .hero-content h1{
        font-size:46px;
    }

    .section-title h2{
        font-size:38px;
    }

    .about-content h2{
        font-size:40px;
    }

    .navbar{
        padding:18px 5%;
    }

}
