/*==================================================
GOOGLE FONT
==================================================*/

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700;800&family=Poppins:wght@300;400;500;600;700&display=swap');

/*==================================================
ROOT VARIABLES
==================================================*/

:root{

    --primary:#08111F;
    --secondary:#111C2D;
    --dark:#050B16;

    --gold:#D4AF37;
    --gold-light:#E8C76A;
    --gold-dark:#A47E1B;

    --white:#ffffff;
    --text:#C9D3DD;
    --muted:#8A97A8;

    --border:rgba(212,175,55,.18);

    --shadow:0 20px 60px rgba(0,0,0,.30);

    --radius:18px;

    --transition:.4s ease;

}

/*==================================================
RESET
==================================================*/

*{

    margin:0;
    padding:0;
    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:'Poppins',sans-serif;

    background:var(--primary);

    color:var(--text);

    overflow-x:hidden;

    line-height:1.8;

}

img{

    width:100%;
    display:block;

}

a{

    text-decoration:none;

}

ul{

    list-style:none;

}

button{

    cursor:pointer;

    border:none;

    outline:none;

}

section{

    padding:120px 0;

    position:relative;

}

/*==================================================
CONTAINER
==================================================*/

.container{

    width:90%;

    max-width:1280px;

    margin:auto;

}

/*==================================================
HEADINGS
==================================================*/

h1,
h2,
h3,
h4{

    color:var(--white);

    font-family:'Playfair Display',serif;

    font-weight:700;

}

h1{

    font-size:68px;

    line-height:1.15;

}

h2{

    font-size:46px;

}

h3{

    font-size:28px;

}

p{

    color:var(--text);

}

/*==================================================
SECTION TITLE
==================================================*/

.section-heading{

    text-align:center;

    margin-bottom:70px;

}

.section-subtitle{

    color:var(--gold);

    text-transform:uppercase;

    letter-spacing:4px;

    font-size:14px;

    font-weight:600;

}

.gold-line{

    width:90px;

    height:3px;

    margin:25px auto;

    background:linear-gradient(
        to right,
        transparent,
        var(--gold),
        transparent
    );

}

/*==================================================
BUTTONS
==================================================*/

.btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    background:linear-gradient(
        135deg,
        var(--gold-light),
        var(--gold)
    );

    color:#111;

    padding:16px 38px;

    border-radius:50px;

    font-weight:600;

    transition:var(--transition);

}

.btn:hover{

    transform:translateY(-5px);

    box-shadow:0 15px 35px rgba(212,175,55,.35);

}

.btn-outline{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:16px 38px;

    border-radius:50px;

    border:1px solid var(--gold);

    color:var(--gold);

    transition:var(--transition);

}

.btn-outline:hover{

    background:var(--gold);

    color:#111;

}

/*==================================================
HEADER
==================================================*/

.header{

    position:fixed;

    width:100%;

    top:0;

    left:0;

    z-index:999;

    transition:.4s;

    padding:20px 0;

}

.header.active{

    background:rgba(8,17,31,.92);

    backdrop-filter:blur(18px);

    box-shadow:0 15px 40px rgba(0,0,0,.35);

}

/*==================================================
NAVIGATION
==================================================*/

nav{

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.logo{

    display:flex;

    align-items:center;

    gap:16px;

}

.logo-icon{

    width:58px;

    height:58px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:rgba(212,175,55,.12);

    border:1px solid var(--border);

    color:var(--gold);

    font-size:22px;

}

.logo h3{

    font-size:24px;

    color:var(--white);

}

.logo span{

    color:var(--gold);

    font-size:13px;

    letter-spacing:1px;

}

nav ul{

    display:flex;

    gap:42px;

}

nav ul li a{

    color:var(--white);

    position:relative;

    transition:.35s;

    font-weight:500;

}

nav ul li a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-8px;

    width:0;

    height:2px;

    background:var(--gold);

    transition:.35s;

}

nav ul li a:hover{

    color:var(--gold);

}

nav ul li a:hover::after{

    width:100%;

}

.btn-nav{

    background:var(--gold);

    color:#111;

    padding:14px 28px;

    border-radius:50px;

    font-weight:600;

    transition:var(--transition);

}

.btn-nav:hover{

    transform:translateY(-3px);

    background:var(--gold-light);

}

/*==================================================
MOBILE MENU
==================================================*/

.menu-btn{

    display:none;

    color:var(--gold);

    font-size:28px;

    cursor:pointer;

}

/*==================================================
BACKGROUND DECORATION
==================================================*/

body::before{

    content:"";

    position:fixed;

    width:500px;

    height:500px;

    background:radial-gradient(
        rgba(212,175,55,.08),
        transparent 70%
    );

    top:-250px;

    right:-250px;

    z-index:-1;

}

body::after{

    content:"";

    position:fixed;

    width:400px;

    height:400px;

    background:radial-gradient(
        rgba(212,175,55,.05),
        transparent 70%
    );

    bottom:-180px;

    left:-180px;

    z-index:-1;

}

/*==================================================
HERO SECTION
==================================================*/

.hero{

    min-height:100vh;

    display:flex;

    align-items:center;

    position:relative;

    overflow:hidden;

    background:
    radial-gradient(circle at top right,
    rgba(212,175,55,.12),
    transparent 35%),

    radial-gradient(circle at bottom left,
    rgba(212,175,55,.08),
    transparent 30%),

    linear-gradient(
        135deg,
        #08111F 0%,
        #0D1727 40%,
        #08111F 100%
    );

}

.hero-overlay{

    position:absolute;

    inset:0;

    background:
    linear-gradient(
        rgba(8,17,31,.25),
        rgba(8,17,31,.65)
    );

}

.hero-grid{

    position:relative;

    z-index:2;

    display:grid;

    grid-template-columns:1fr 520px;

    align-items:center;

    gap:80px;

}

/*=====================================
LEFT CONTENT
======================================*/

.hero-left{

    max-width:650px;

}

.hero-badge{

    display:inline-block;

    padding:12px 24px;

    border-radius:50px;

    color:var(--gold);

    border:1px solid rgba(212,175,55,.25);

    background:rgba(212,175,55,.08);

    margin-bottom:30px;

    letter-spacing:2px;

    font-size:14px;

    font-weight:600;

}

.hero h1{

    font-size:74px;

    margin-bottom:15px;

    line-height:1.1;

}

.hero h2{

    color:var(--gold);

    font-size:32px;

    margin-bottom:30px;

}

.hero p{

    max-width:620px;

    margin-bottom:40px;

    font-size:17px;

    color:var(--text);

}

.hero-buttons{

    display:flex;

    gap:20px;

    flex-wrap:wrap;

    margin-bottom:50px;

}

/*=====================================
FEATURE LIST
======================================*/

.hero-features{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:20px;

}

.hero-features div{

    display:flex;

    align-items:center;

    gap:12px;

    color:var(--white);

}

.hero-features i{

    color:var(--gold);

}

/*=====================================
RIGHT IMAGE
======================================*/

.hero-right{

    position:relative;

}

.image-box{

    width:100%;

    border-radius:30px;

    overflow:hidden;

    border:2px solid rgba(212,175,55,.20);

    box-shadow:0 35px 70px rgba(0,0,0,.45);

    position:relative;

}

.image-box img{

    width:100%;

    height:700px;

    object-fit:cover;

}

/*=====================================
FLOATING CARDS
======================================*/

.floating-card{

    position:absolute;

    background:rgba(17,28,45,.92);

    backdrop-filter:blur(18px);

    border:1px solid rgba(212,175,55,.18);

    border-radius:20px;

    padding:22px;

    box-shadow:var(--shadow);

    animation:float 4s ease-in-out infinite;

}

.floating-card h3{

    font-size:34px;

    color:var(--gold);

    margin-bottom:6px;

}

.floating-card p{

    color:var(--text);

    font-size:14px;

}

.card1{

    top:50px;

    left:-60px;

}

.card2{

    right:-50px;

    top:260px;

}

.card3{

    bottom:50px;

    left:-40px;

}

/*=====================================
GOLD DECORATION
======================================*/

.gold-circle{

    position:absolute;

    border-radius:50%;

    background:radial-gradient(

        rgba(212,175,55,.22),

        transparent 70%

    );

    filter:blur(40px);

}

.gold-circle.one{

    width:350px;

    height:350px;

    top:-100px;

    right:-80px;

}

.gold-circle.two{

    width:250px;

    height:250px;

    bottom:-60px;

    left:-60px;

}

/*=====================================
SCROLL DOWN
======================================*/

.scroll-down{

    position:absolute;

    bottom:35px;

    left:50%;

    transform:translateX(-50%);

    display:flex;

    flex-direction:column;

    align-items:center;

    gap:10px;

    color:var(--gold);

    font-size:13px;

    letter-spacing:2px;

    animation:bounce 2s infinite;

}

.scroll-down i{

    font-size:20px;

}

/*==================================================
STATISTICS
==================================================*/

.statistics{

    margin-top:-80px;

    position:relative;

    z-index:5;

}

.stats-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.stat-card{

    background:rgba(17,28,45,.95);

    border:1px solid rgba(212,175,55,.18);

    border-radius:20px;

    padding:40px 25px;

    text-align:center;

    transition:.4s;

    backdrop-filter:blur(15px);

}

.stat-card:hover{

    transform:translateY(-12px);

    border-color:var(--gold);

    box-shadow:0 20px 50px rgba(212,175,55,.18);

}

.stat-card i{

    font-size:34px;

    color:var(--gold);

    margin-bottom:20px;

}

.stat-card h2{

    font-size:46px;

    color:var(--gold);

    margin-bottom:8px;

}

.stat-card p{

    color:var(--text);

}

/*==================================================
ANIMATIONS
==================================================*/

@keyframes float{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-15px);

    }

    100%{

        transform:translateY(0);

    }

}

@keyframes bounce{

    0%{

        transform:translate(-50%,0);

    }

    50%{

        transform:translate(-50%,10px);

    }

    100%{

        transform:translate(-50%,0);

    }

}

/*==================================================
ABOUT SECTION
==================================================*/

.about{

    background:var(--secondary);

    position:relative;

    overflow:hidden;

}

.about::before{

    content:"";

    position:absolute;

    width:320px;

    height:320px;

    right:-120px;

    top:-120px;

    border-radius:50%;

    background:radial-gradient(
        rgba(212,175,55,.10),
        transparent 70%
    );

}

.about-grid{

    display:grid;

    grid-template-columns:480px 1fr;

    gap:80px;

    align-items:center;

}

.about-image{

    position:relative;

}

.image-frame{

    border-radius:24px;

    overflow:hidden;

    border:2px solid rgba(212,175,55,.25);

    box-shadow:0 30px 60px rgba(0,0,0,.35);

}

.image-frame img{

    width:100%;

    height:650px;

    object-fit:cover;

}

.experience-badge{

    position:absolute;

    right:-30px;

    bottom:40px;

    width:180px;

    text-align:center;

    background:rgba(17,28,45,.95);

    border:1px solid rgba(212,175,55,.25);

    border-radius:20px;

    padding:25px;

    backdrop-filter:blur(20px);

    box-shadow:var(--shadow);

}

.experience-badge h3{

    color:var(--gold);

    font-size:42px;

    margin-bottom:8px;

}

.experience-badge span{

    color:var(--text);

    font-size:14px;

}

.about-content h3{

    margin-bottom:25px;

    font-size:38px;

    line-height:1.3;

}

.about-content p{

    margin-bottom:20px;

    color:var(--text);

}

/*==================================================
ABOUT HIGHLIGHTS
==================================================*/

.about-highlights{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:18px;

    margin:40px 0;

}

.highlight{

    display:flex;

    align-items:center;

    gap:12px;

    padding:18px 20px;

    border-radius:14px;

    background:rgba(255,255,255,.03);

    border:1px solid rgba(212,175,55,.12);

    transition:.35s;

}

.highlight:hover{

    transform:translateX(8px);

    border-color:var(--gold);

    background:rgba(212,175,55,.06);

}

.highlight i{

    color:var(--gold);

    font-size:18px;

}

.highlight{

    color:var(--white);

    font-weight:500;

}

/*==================================================
EXPERTISE SECTION
==================================================*/

.expertise{

    background:var(--primary);

    position:relative;

}

.expertise::after{

    content:"";

    position:absolute;

    width:350px;

    height:350px;

    left:-180px;

    bottom:-180px;

    border-radius:50%;

    background:radial-gradient(
        rgba(212,175,55,.08),
        transparent 70%
    );

}

.expertise-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

}

.expertise-card{

    position:relative;

    background:rgba(17,28,45,.92);

    border:1px solid rgba(212,175,55,.15);

    border-radius:22px;

    padding:45px 35px;

    transition:.4s;

    overflow:hidden;

    backdrop-filter:blur(18px);

}

.expertise-card::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:0;

    height:4px;

    background:linear-gradient(
        90deg,
        var(--gold-light),
        var(--gold)
    );

    transition:.4s;

}

.expertise-card:hover::before{

    width:100%;

}

.expertise-card:hover{

    transform:translateY(-12px);

    border-color:var(--gold);

    box-shadow:0 25px 60px rgba(212,175,55,.18);

}

.expertise-card .icon{

    width:70px;

    height:70px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:rgba(212,175,55,.10);

    color:var(--gold);

    font-size:28px;

    margin-bottom:25px;

    transition:.35s;

}

.expertise-card:hover .icon{

    transform:rotate(10deg) scale(1.08);

}

.expertise-card h3{

    margin-bottom:18px;

    font-size:28px;

}

.expertise-card p{

    color:var(--text);

    line-height:1.8;

}

/*==================================================
SECTION DECORATION
==================================================*/

.section{

    position:relative;

}

.section::after{

    content:"";

    position:absolute;

    left:50%;

    bottom:40px;

    transform:translateX(-50%);

    width:80px;

    height:2px;

    background:rgba(212,175,55,.15);

}

/*==================================================
EXPERIENCE SECTION
==================================================*/

.experience{

    background:var(--secondary);

    position:relative;

}

.timeline{

    position:relative;

    max-width:950px;

    margin:60px auto 0;

}

.timeline::before{

    content:"";

    position:absolute;

    left:140px;

    top:0;

    width:2px;

    height:100%;

    background:linear-gradient(
        var(--gold),
        rgba(212,175,55,.15)
    );

}

.timeline-item{

    display:grid;

    grid-template-columns:160px 1fr;

    gap:40px;

    margin-bottom:60px;

    position:relative;

}

.timeline-year{

    color:var(--gold);

    font-size:18px;

    font-weight:600;

    text-align:right;

    padding-top:18px;

}

.timeline-card{

    position:relative;

    background:rgba(17,28,45,.92);

    border:1px solid rgba(212,175,55,.18);

    border-radius:20px;

    padding:35px;

    transition:.4s;

}

.timeline-card::before{

    content:"";

    position:absolute;

    left:-32px;

    top:28px;

    width:16px;

    height:16px;

    border-radius:50%;

    background:var(--gold);

    box-shadow:0 0 20px rgba(212,175,55,.6);

}

.timeline-card:hover{

    transform:translateX(10px);

    border-color:var(--gold);

    box-shadow:0 20px 50px rgba(212,175,55,.15);

}

.timeline-card h3{

    margin-bottom:8px;

}

.timeline-card h4{

    color:var(--gold);

    font-family:'Poppins',sans-serif;

    font-size:16px;

    margin-bottom:15px;

    font-weight:500;

}

.timeline-card p{

    color:var(--text);

}

/*==================================================
PROJECTS
==================================================*/

.projects{

    background:var(--primary);

}

.projects-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

}

.project-card{

    overflow:hidden;

    border-radius:22px;

    background:rgba(17,28,45,.94);

    border:1px solid rgba(212,175,55,.18);

    transition:.4s;

}

.project-card:hover{

    transform:translateY(-12px);

    box-shadow:0 25px 60px rgba(212,175,55,.18);

}

.project-image{

    position:relative;

    overflow:hidden;

}

.project-image img{

    width:100%;

    height:280px;

    object-fit:cover;

    transition:.6s;

}

.project-card:hover img{

    transform:scale(1.08);

}

.project-overlay{

    position:absolute;

    inset:0;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(8,17,31,.75);

    opacity:0;

    transition:.4s;

}

.project-card:hover .project-overlay{

    opacity:1;

}

.project-overlay a{

    padding:14px 28px;

    border-radius:40px;

    background:var(--gold);

    color:#111;

    font-weight:600;

}

.project-content{

    padding:30px;

}

.project-content span{

    color:var(--gold);

    font-size:14px;

    letter-spacing:2px;

    text-transform:uppercase;

}

.project-content h3{

    margin:15px 0;

    font-size:28px;

}

.project-content p{

    color:var(--text);

}

/*==================================================
CALL TO ACTION
==================================================*/

.cta{

    padding:120px 0;

    background:

    linear-gradient(

        rgba(8,17,31,.88),

        rgba(8,17,31,.88)

    ),

    url("../images/cta-bg.jpg") center/cover;

    text-align:center;

}

.cta-content{

    max-width:850px;

    margin:auto;

}

.cta span{

    display:inline-block;

    color:var(--gold);

    text-transform:uppercase;

    letter-spacing:3px;

    margin-bottom:20px;

}

.cta h2{

    font-size:54px;

    margin-bottom:25px;

}

.cta p{

    max-width:700px;

    margin:0 auto 40px;

    color:var(--text);

    font-size:18px;

}

/*==================================================
PROJECT BADGE
==================================================*/

.project-card::after{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:4px;

    background:linear-gradient(
        to right,
        transparent,
        var(--gold),
        transparent
    );

    opacity:0;

    transition:.4s;

}

.project-card:hover::after{

    opacity:1;

}

/*==================================================
ENGINEERING PROCESS
==================================================*/

.process{

    background:var(--secondary);

    position:relative;

    overflow:hidden;

}

.process::before{

    content:"";

    position:absolute;

    width:450px;

    height:450px;

    top:-220px;

    right:-180px;

    border-radius:50%;

    background:radial-gradient(
        rgba(212,175,55,.08),
        transparent 70%
    );

}

.process-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

    margin-top:60px;

}

.process-card{

    position:relative;

    padding:45px 30px;

    border-radius:22px;

    text-align:center;

    background:rgba(255,255,255,.03);

    border:1px solid rgba(212,175,55,.15);

    backdrop-filter:blur(16px);

    transition:.4s ease;

    overflow:hidden;

}

.process-card::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:4px;

    background:linear-gradient(
        90deg,
        var(--gold-light),
        var(--gold)
    );

    transform:scaleX(0);

    transform-origin:left;

    transition:.4s;

}

.process-card:hover::before{

    transform:scaleX(1);

}

.process-card:hover{

    transform:translateY(-12px);

    border-color:var(--gold);

    box-shadow:0 25px 60px rgba(212,175,55,.18);

}

.process-number{

    width:80px;

    height:80px;

    margin:0 auto 30px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:28px;

    font-weight:700;

    color:var(--gold);

    border:2px solid rgba(212,175,55,.25);

    background:rgba(212,175,55,.08);

    transition:.35s;

}

.process-card:hover .process-number{

    background:var(--gold);

    color:#111;

    transform:rotate(360deg);

}

.process-card h3{

    margin-bottom:18px;

    font-size:26px;

}

.process-card p{

    color:var(--text);

    font-size:15px;

    line-height:1.8;

}

/*=========================================
CONNECTOR LINE
=========================================*/

.process-grid{

    position:relative;

}

.process-grid::before{

    content:"";

    position:absolute;

    left:8%;

    right:8%;

    top:40px;

    height:2px;

    background:linear-gradient(
        to right,
        rgba(212,175,55,.15),
        var(--gold),
        rgba(212,175,55,.15)
    );

    z-index:0;

}

.process-card{

    z-index:2;

}

/*=========================================
GOLD GLOW
=========================================*/

.process-card::after{

    content:"";

    position:absolute;

    width:180px;

    height:180px;

    border-radius:50%;

    background:radial-gradient(
        rgba(212,175,55,.10),
        transparent 70%
    );

    right:-80px;

    bottom:-80px;

    opacity:0;

    transition:.4s;

}

.process-card:hover::after{

    opacity:1;

}

/*=========================================
PROCESS ICON (Optional)
=========================================*/

.process-card i{

    font-size:40px;

    color:var(--gold);

    margin-bottom:20px;

}

/*=========================================
SMOOTH EFFECT
=========================================*/

.process-card,
.process-number{

    transition:all .4s ease;

}

/*==================================================
CERTIFICATIONS
==================================================*/

.certifications{

    background:var(--primary);

    position:relative;

    overflow:hidden;

}

.certifications::before{

    content:"";

    position:absolute;

    width:450px;

    height:450px;

    left:-180px;

    top:-180px;

    border-radius:50%;

    background:radial-gradient(
        rgba(212,175,55,.08),
        transparent 70%
    );

}

.cert-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

    margin-top:60px;

}

/*======================================
CERTIFICATE CARD
=======================================*/

.cert-card{

    position:relative;

    padding:45px 30px;

    border-radius:22px;

    text-align:center;

    background:rgba(255,255,255,.03);

    border:1px solid rgba(212,175,55,.15);

    backdrop-filter:blur(15px);

    overflow:hidden;

    transition:.4s ease;

}

.cert-card:hover{

    transform:translateY(-12px);

    border-color:var(--gold);

    box-shadow:0 25px 60px rgba(212,175,55,.18);

}

/*======================================
TOP GOLD BAR
=======================================*/

.cert-card::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:4px;

    background:linear-gradient(
        90deg,
        var(--gold-light),
        var(--gold)
    );

    transform:scaleX(0);

    transform-origin:left;

    transition:.4s;

}

.cert-card:hover::before{

    transform:scaleX(1);

}

/*======================================
ICON
=======================================*/

.cert-card i{

    width:90px;

    height:90px;

    margin:auto auto 25px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:rgba(212,175,55,.08);

    border:2px solid rgba(212,175,55,.18);

    color:var(--gold);

    font-size:36px;

    transition:.4s;

}

.cert-card:hover i{

    background:var(--gold);

    color:#111;

    transform:rotateY(180deg);

}

/*======================================
TEXT
=======================================*/

.cert-card h3{

    margin-bottom:15px;

    font-size:24px;

}

.cert-card p{

    color:var(--text);

    font-size:15px;

    line-height:1.8;

}

/*======================================
BACKGROUND GLOW
=======================================*/

.cert-card::after{

    content:"";

    position:absolute;

    width:220px;

    height:220px;

    border-radius:50%;

    background:radial-gradient(

        rgba(212,175,55,.10),

        transparent 70%

    );

    right:-110px;

    bottom:-110px;

    opacity:0;

    transition:.4s;

}

.cert-card:hover::after{

    opacity:1;

}

/*======================================
SUBTLE SHINE EFFECT
=======================================*/

.cert-card span{

    display:inline-block;

    margin-top:15px;

    color:var(--gold);

    font-size:13px;

    letter-spacing:2px;

    text-transform:uppercase;

    font-weight:600;

}

/*======================================
HOVER ANIMATION
=======================================*/

.cert-card,
.cert-card i{

    transition:all .4s ease;

}

/*==================================================
TESTIMONIALS
==================================================*/

.testimonials{

    background:var(--secondary);

    position:relative;

    overflow:hidden;

}

.testimonials::before{

    content:"";

    position:absolute;

    width:500px;

    height:500px;

    right:-220px;

    bottom:-220px;

    border-radius:50%;

    background:radial-gradient(
        rgba(212,175,55,.08),
        transparent 70%
    );

}

.testimonial-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

    margin-top:60px;

}

/*=========================================
CARD
=========================================*/

.testimonial-card{

    position:relative;

    background:rgba(255,255,255,.03);

    border:1px solid rgba(212,175,55,.15);

    border-radius:22px;

    padding:40px 35px;

    backdrop-filter:blur(15px);

    transition:.4s ease;

    overflow:hidden;

}

.testimonial-card:hover{

    transform:translateY(-10px);

    border-color:var(--gold);

    box-shadow:0 25px 60px rgba(212,175,55,.18);

}

/*=========================================
QUOTE ICON
=========================================*/

.testimonial-card::before{

    content:"\201C";

    position:absolute;

    top:20px;

    right:25px;

    font-size:90px;

    line-height:1;

    color:rgba(212,175,55,.10);

    font-family:Georgia, serif;

}

/*=========================================
STAR RATING
=========================================*/

.stars{

    color:var(--gold);

    font-size:18px;

    letter-spacing:3px;

    margin-bottom:20px;

}

/*=========================================
TEXT
=========================================*/

.testimonial-card p{

    color:var(--text);

    line-height:1.9;

    margin-bottom:30px;

    font-style:italic;

}

/*=========================================
AUTHOR
=========================================*/

.testimonial-card h4{

    color:var(--white);

    font-size:20px;

    margin-bottom:6px;

    font-family:'Poppins',sans-serif;

}

.testimonial-card small{

    color:var(--gold);

    letter-spacing:1px;

}

/*=========================================
OPTIONAL CLIENT AVATAR
(Add <div class="client-avatar"><img ...></div>)
=========================================*/

.client-avatar{

    width:70px;

    height:70px;

    border-radius:50%;

    overflow:hidden;

    margin-bottom:20px;

    border:2px solid rgba(212,175,55,.25);

}

.client-avatar img{

    width:100%;

    height:100%;

    object-fit:cover;

}

/*=========================================
GLOW EFFECT
=========================================*/

.testimonial-card::after{

    content:"";

    position:absolute;

    width:220px;

    height:220px;

    border-radius:50%;

    background:radial-gradient(
        rgba(212,175,55,.10),
        transparent 70%
    );

    left:-110px;

    top:-110px;

    opacity:0;

    transition:.4s;

}

.testimonial-card:hover::after{

    opacity:1;

}

/*=========================================
TOP GOLD BORDER ANIMATION
=========================================*/

.testimonial-card .gold-border{

    position:absolute;

    top:0;

    left:0;

    width:0;

    height:3px;

    background:linear-gradient(
        90deg,
        var(--gold-light),
        var(--gold)
    );

    transition:.4s;

}

.testimonial-card:hover .gold-border{

    width:100%;

}

/*=========================================
HOVER TRANSITION
=========================================*/

.testimonial-card{

    transition:all .4s ease;

}

/*==================================================
CONTACT SECTION
==================================================*/

.contact{

    background:var(--primary);

    position:relative;

    overflow:hidden;

}

.contact::before{

    content:"";

    position:absolute;

    width:500px;

    height:500px;

    left:-220px;

    bottom:-220px;

    border-radius:50%;

    background:radial-gradient(

        rgba(212,175,55,.08),

        transparent 70%

    );

}

/*=====================================
GRID
======================================*/

.contact-grid{

    display:grid;

    grid-template-columns:380px 1fr;

    gap:60px;

    align-items:start;

    margin-top:60px;

}

/*=====================================
CONTACT INFO
======================================*/

.contact-info{

    display:flex;

    flex-direction:column;

    gap:25px;

}

.info-box{

    display:flex;

    align-items:center;

    gap:20px;

    padding:28px;

    background:rgba(255,255,255,.03);

    border:1px solid rgba(212,175,55,.15);

    border-radius:20px;

    backdrop-filter:blur(15px);

    transition:.4s;

}

.info-box:hover{

    transform:translateX(10px);

    border-color:var(--gold);

    box-shadow:0 15px 40px rgba(212,175,55,.15);

}

.info-box i{

    width:65px;

    height:65px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:rgba(212,175,55,.08);

    color:var(--gold);

    font-size:24px;

    border:1px solid rgba(212,175,55,.18);

}

.info-box h3{

    font-size:20px;

    margin-bottom:6px;

}

.info-box p{

    color:var(--text);

    font-size:15px;

}

/*=====================================
CONTACT FORM
======================================*/

.contact-form{

    background:rgba(255,255,255,.03);

    border:1px solid rgba(212,175,55,.15);

    border-radius:25px;

    padding:45px;

    backdrop-filter:blur(18px);

}

.contact-form input,

.contact-form textarea{

    width:100%;

    background:rgba(255,255,255,.04);

    border:1px solid rgba(212,175,55,.15);

    color:var(--white);

    padding:18px 22px;

    border-radius:14px;

    margin-bottom:22px;

    font-size:15px;

    outline:none;

    transition:.35s;

    font-family:'Poppins',sans-serif;

}

.contact-form textarea{

    resize:none;

    min-height:180px;

}

.contact-form input::placeholder,

.contact-form textarea::placeholder{

    color:var(--muted);

}

/*=====================================
INPUT FOCUS
======================================*/

.contact-form input:focus,

.contact-form textarea:focus{

    border-color:var(--gold);

    box-shadow:

    0 0 0 4px rgba(212,175,55,.08);

}

/*=====================================
BUTTON
======================================*/

.contact-form .btn{

    width:100%;

    border:none;

    cursor:pointer;

    font-size:16px;

}

/*=====================================
FORM HOVER
======================================*/

.contact-form:hover{

    border-color:var(--gold);

}

/*=====================================
BACKGROUND GLOW
======================================*/

.contact-form::after{

    content:"";

    position:absolute;

    width:240px;

    height:240px;

    border-radius:50%;

    background:radial-gradient(

        rgba(212,175,55,.08),

        transparent 70%

    );

    right:-120px;

    top:-120px;

    pointer-events:none;

}

.contact-form{

    position:relative;

    overflow:hidden;

}

/*=====================================
CONTACT ANIMATION
======================================*/

.info-box,

.contact-form{

    transition:all .4s ease;

}

/*==================================================
FOOTER
==================================================*/

footer{

    background:#050B16;

    border-top:1px solid rgba(212,175,55,.12);

    padding:80px 0 30px;

}

.footer-content{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:40px;

    flex-wrap:wrap;

    margin-bottom:40px;

}

.footer-logo h2{

    font-size:32px;

    margin-bottom:10px;

}

.footer-logo p{

    color:var(--gold);

    letter-spacing:2px;

    text-transform:uppercase;

    font-size:13px;

}

.footer-social{

    display:flex;

    gap:18px;

}

.footer-social a{

    width:52px;

    height:52px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:rgba(255,255,255,.03);

    border:1px solid rgba(212,175,55,.15);

    color:var(--gold);

    font-size:20px;

    transition:.35s;

}

.footer-social a:hover{

    background:var(--gold);

    color:#111;

    transform:translateY(-6px);

}

.footer-bottom{

    text-align:center;

    padding-top:30px;

    border-top:1px solid rgba(255,255,255,.08);

}

.footer-bottom p{

    color:var(--muted);

    font-size:14px;

}

/*==================================================
SCROLL TO TOP
==================================================*/

.scroll-top{

    position:fixed;

    right:30px;

    bottom:30px;

    width:55px;

    height:55px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:var(--gold);

    color:#111;

    font-size:20px;

    box-shadow:0 15px 35px rgba(212,175,55,.35);

    transition:.35s;

    z-index:999;

}

.scroll-top:hover{

    transform:translateY(-8px);

    background:var(--gold-light);

}

/*==================================================
SCROLLBAR
==================================================*/

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#08111F;

}

::-webkit-scrollbar-thumb{

    background:var(--gold);

    border-radius:30px;

}

::-webkit-scrollbar-thumb:hover{

    background:var(--gold-light);

}

/*==================================================
ANIMATIONS
==================================================*/

.fade-up{

    opacity:0;

    transform:translateY(40px);

    transition:all .8s ease;

}

.fade-up.show{

    opacity:1;

    transform:translateY(0);

}

@keyframes floatImage{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-15px);

    }

    100%{

        transform:translateY(0);

    }

}

.image-box{

    animation:floatImage 6s ease-in-out infinite;

}

/*==================================================
TABLET
==================================================*/

@media (max-width:992px){

.hero-grid{

grid-template-columns:1fr;

text-align:center;

}

.hero-left{

margin:auto;

}

.hero-buttons{

justify-content:center;

}

.hero-features{

grid-template-columns:1fr;

}

.about-grid{

grid-template-columns:1fr;

}

.stats-grid{

grid-template-columns:repeat(2,1fr);

}

.expertise-grid{

grid-template-columns:repeat(2,1fr);

}

.projects-grid{

grid-template-columns:1fr 1fr;

}

.process-grid{

grid-template-columns:repeat(2,1fr);

}

.cert-grid{

grid-template-columns:repeat(2,1fr);

}

.testimonial-grid{

grid-template-columns:1fr;

}

.contact-grid{

grid-template-columns:1fr;

}

.timeline::before{

display:none;

}

.timeline-item{

flex-direction:column;

gap:15px;

}

.timeline-year{

text-align:left;

}

}

/*==================================================
MOBILE
==================================================*/

@media (max-width:768px){

section{

padding:90px 0;

}

h1{

font-size:46px;

}

h2{

font-size:34px;

}

.hero h2{

font-size:22px;

}

.hero p{

font-size:15px;

}

.stats-grid,

.expertise-grid,

.projects-grid,

.process-grid,

.cert-grid{

grid-template-columns:1fr;

}

.footer-content{

flex-direction:column;

text-align:center;

}

nav ul{

display:none;

}

.menu-btn{

display:block;

}

.contact-form{

padding:30px;

}

.image-frame img,

.image-box img{

height:450px;

}

}

/*==================================================
SMALL MOBILE
==================================================*/

@media (max-width:576px){

.container{

width:92%;

}

.hero{

padding-top:120px;

}

.hero-buttons{

flex-direction:column;

}

.btn,

.btn-outline{

width:100%;

}

.hero h1{

font-size:38px;

}

.hero h2{

font-size:20px;

}

.section-heading{

margin-bottom:50px;

}

.footer-logo h2{

font-size:24px;

}

.scroll-top{

width:48px;

height:48px;

right:20px;

bottom:20px;

}

}

/*=========================================
RESPONSIVE - RESPONSIBILITIES SECTION
=========================================*/

/* Large Tablets */

@media (max-width:992px){

    .responsibilities-grid{

        grid-template-columns:repeat(2,1fr);

        gap:25px;

    }

    .responsibility-card{

        padding:35px 28px;

    }

}

/* Tablets */

@media (max-width:768px){

    .responsibilities{

        padding:90px 0;

    }

    .responsibilities-grid{

        grid-template-columns:1fr;

        gap:25px;

    }

    .responsibility-card{

        padding:30px;

    }

    .responsibility-card .icon{

        width:65px;

        height:65px;

        font-size:26px;

        margin-bottom:20px;

    }

    .responsibility-card h3{

        font-size:24px;

    }

    .responsibility-card p{

        font-size:15px;

        line-height:1.8;

    }

}

/* Mobile Phones */

@media (max-width:576px){

    .responsibilities{

        padding:70px 0;

    }

    .responsibility-card{

        padding:25px;

        border-radius:16px;

    }

    .responsibility-card .icon{

        width:60px;

        height:60px;

        font-size:24px;

        margin-bottom:18px;

    }

    .responsibility-card h3{

        font-size:22px;

        margin-bottom:12px;

    }

    .responsibility-card p{

        font-size:14px;

        line-height:1.7;

    }

}

/*==================================================
UTILITY CLASSES
==================================================*/

.text-center{

text-align:center;

}

.mt-30{

margin-top:30px;

}

.mt-50{

margin-top:50px;

}

.mb-30{

margin-bottom:30px;

}

.gold{

color:var(--gold);

}

.white{

color:var(--white);

}

/*==================================================
END OF FILE
==================================================*/