/* ==========================
   ECHO CRAFT CREATIVE STUDIO
   ========================== */

:root{

    --bg:#111111;
    --panel:#1b1714;
    --panel2:#241d17;

    --gold:#d8b36a;
    --gold2:#b78a3b;

    --text:#f4f0e8;
    --muted:#b5ada3;

    --shadow:0 15px 40px rgba(0,0,0,.45);

}

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

html{
    scroll-behavior:smooth;
}

body{

    background:
    radial-gradient(circle at top right,#5b3d1d 0%,transparent 40%),
    radial-gradient(circle at bottom left,#342416 0%,transparent 35%),
    var(--bg);

    color:var(--text);

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

}

/* ======================
        SIDEBAR
====================== */

.sidebar{

    position:fixed;

    left:0;
    top:0;

    width:280px;
    height:100vh;

    background:
    linear-gradient(
    rgba(15,15,15,.80),
    rgba(10,10,10,.90)
    ),
    url("images/sidebar-texture.png");

    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;

    backdrop-filter:blur(20px);

    border-right:1px solid rgba(216,179,106,.18);

    box-shadow:
        inset -10px 0 25px rgba(0,0,0,.45),
        4px 0 20px rgba(0,0,0,.25);

    padding:65px 30px 45px;

    display:flex;
    flex-direction:column;
    justify-content:space-between;
}

.logo{
    text-align:center;
}

.logo img{
    width:165px;
    height:auto;
    display:block;
    margin:0 auto 12px auto;
}

.logo h2{

    font-family:'Cormorant Garamond',serif;

    font-size:2rem;

    color:var(--gold);

}

.logo span{

    display:block;

    margin-top:5px;

    color:#ddd;

    letter-spacing:3px;

    text-transform:uppercase;

    font-size:.8rem;

}

/* ======================
      NAVIGATION
====================== */

nav{

    display:flex;

    flex-direction:column;

    gap:12px;

    margin-top:40px;

}

nav a{

    color:#d8d8d8;

    text-decoration:none;

    font-size:1.12rem;

    font-weight:500;

    padding:16px 20px;

    border-radius:12px;

    transition:.35s;

    display:flex;

    align-items:center;

    gap:14px;

}

nav a:hover{

    background:rgba(216,179,106,.08);

    color:var(--gold);

}

nav .active{

    background:linear-gradient(90deg,#3d2d1d,#2a2119);

    color:var(--gold);

    border:1px solid rgba(216,179,106,.25);

}

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

.projectButton{

    border:none;

    cursor:pointer;

    padding:18px;

    border-radius:50px;

    background:linear-gradient(135deg,#d8b36a,#b78a3b);

    color:#111;

    font-size:16px;

    font-weight:700;

    transition:.35s;

    box-shadow:var(--shadow);

   display:flex;
justify-content:center;
align-items:center;
text-decoration:none;

}

.projectButton:hover{

    transform:translateY(-3px);

}

/* ======================
       MAIN
====================== */

main{

    margin-left:280px;

}
/* ======================
        HERO
====================== */

.hero{
    position:relative;
    
    min-height:560px;

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

    background:
        linear-gradient(
            90deg,
            rgba(8,8,8,.88) 0%,
            rgba(8,8,8,.78) 35%,
            rgba(8,8,8,.45) 70%,
            rgba(8,8,8,.20) 100%
        ),
        url("images/creative-studio-bg.png");

    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
}
.overlay{
    position:relative;
    z-index:2;
    max-width:850px;

    padding:120px 90px;
}

.overlay h5{

    color:var(--gold);

    letter-spacing:6px;

    text-transform:uppercase;

    font-weight:500;

    margin-bottom:12px;

}

.overlay h1{

    font-family:'Cormorant Garamond',serif;

    font-size:5.5rem;

    line-height:1;

    margin-bottom:20px;

}

.overlay p{

    font-size:1.2rem;

    color:var(--muted);

    line-height:1.8;

    margin-bottom:18px;

}

.intro{

    max-width:700px;

}

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

.heroButtons{

    display:flex;

    gap:20px;

    margin-top:45px;

}

.heroButtons button{

    padding:18px 38px;

    border-radius:50px;

    cursor:pointer;

    font-size:16px;

    font-weight:700;

    transition:.35s;

}

.heroButtons button:first-child{

    background:linear-gradient(135deg,#d8b36a,#b78a3b);

    color:#111;

    border:none;

}

.heroButtons button:first-child:hover{

    transform:translateY(-4px);

    box-shadow:0 15px 35px rgba(215,179,106,.30);

}

.heroButtons .outline{

    background:transparent;

    color:var(--gold);

    border:1px solid rgba(216,179,106,.45);

}

.heroButtons .outline:hover{

    background:rgba(216,179,106,.08);

}
.selectedWorks{

    padding:120px 70px;

    background:
        linear-gradient(
            rgba(12,12,12,.92),
            rgba(12,12,12,.92)
        ),
        url("images/project-bg.jpg");

    background-size:cover;
    background-position:right center;
    background-repeat:no-repeat;

    border-left:1px solid rgba(216,179,106,.15);
}

.selectedWorks h2{

    font-family:'Cormorant Garamond',serif;

    font-size:3rem;

    margin-bottom:50px;

    color:var(--gold);

}

.sectionSubtitle{
    margin-bottom:60px;
}

.selectedWorks h2{
    margin-bottom:35px;
}

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

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

.workCard{
    background:linear-gradient(180deg,#201914,#161311);
    border:1px solid rgba(216,179,106,.15);
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 15px 35px rgba(0,0,0,.35);
    cursor:pointer;
    transition:.35s ease;
}

.workCard:hover{
    transform:translateY(-10px);
    border-color:var(--gold);
    box-shadow:0 20px 45px rgba(214,167,75,.35);
}

.workThumb{
    position:relative;
    width:100%;
    height:260px;
    overflow:hidden;
    background:#2a2119;
}

.workThumb img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    object-position:center center;
    transition:transform .35s ease;
}

.workCard:hover .workThumb img{
    transform:scale(1.05);
}

.workThumb::after{
    content:"View Project";
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;

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

    background:rgba(0,0,0,.55);
    color:#fff;

    font-size:1.15rem;
    font-weight:600;
    letter-spacing:1px;

    opacity:0;
    transition:.35s ease;
}

.workCard:hover .workThumb::after{
    opacity:1;
}

.workInfo{
    padding:22px;
    min-height:170px;
}

.workInfo h3{
    font-family:'Cormorant Garamond',serif;
    font-size:1.6rem;
    color:var(--gold);
    margin-bottom:10px;
}

.workInfo p{
    color:var(--muted);
    line-height:1.7;
    font-size:.95rem;
}

/* ===========================
   VIDEO MODAL
=========================== */

.videoModal{
    display:none;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.92);
    z-index:9999;
    justify-content:center;
    align-items:center;
}

.videoModalContent{
    position:relative;
    width:90%;
    max-width:1100px;
}

.videoModal iframe{
    width:100%;
    aspect-ratio:16/9;
    border:none;
    border-radius:16px;
    background:#000;
}

.closeModal{
    position:absolute;
    top:-45px;
    right:0;
    color:#fff;
    font-size:42px;
    cursor:pointer;
    font-weight:300;
}

.closeModal:hover{
    color:#d6a74b;
}
/* ==================================================
   SERVICES
================================================== */

.servicesSection{

    padding:120px 70px;

    background:#111;

    border-top:1px solid rgba(216,179,106,.10);

}

.servicesSection h2{

    font-family:'Cormorant Garamond',serif;

    font-size:3rem;

    color:var(--gold);

    margin-bottom:20px;

}

.servicesSection .sectionSubtitle{

    color:var(--muted);

    font-size:1.15rem;

    margin-bottom:60px;

    max-width:700px;

    line-height:1.8;

}

.servicesGrid{

    display:grid;

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

    gap:35px;

    max-width:950px;

    margin:60px auto 0;

}

.serviceCard{

    background:linear-gradient(180deg,#201914,#161311);

    border:1px solid rgba(216,179,106,.15);

    border-radius:20px;

    padding:40px;

    transition:.35s;

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

    min-height:250px;

}

.serviceCard:hover{

    transform:translateY(-8px);

    border-color:var(--gold);

    box-shadow:0 20px 45px rgba(214,167,75,.25);

}

.serviceIcon{

    font-size:6rem;
color:var(--gold);

    margin-bottom:20px;

}

.serviceCard h3{

    color:var(--gold);

    font-size:1.45rem;

    margin-bottom:15px;

}

.serviceCard p{

    color:var(--muted);

    line-height:1.8;

}

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

.ctaSection{

    padding:120px 70px;

    background:#18130f;

    border-top:1px solid rgba(216,179,106,.10);

    text-align:center;

}

.ctaContent{

    max-width:850px;

    margin:0 auto;

}

.ctaContent h2{

    font-family:'Cormorant Garamond',serif;

    font-size:3.4rem;

    color:var(--gold);

    margin-bottom:25px;

}

.ctaContent p{

    font-size:1.15rem;

    color:var(--muted);

    line-height:1.9;

    margin-bottom:45px;

}

.ctaButton{

    display:inline-block;

    padding:20px 42px;

    border-radius:50px;

    text-decoration:none;

    font-weight:700;

    font-size:1rem;

    color:#111;

    background:linear-gradient(135deg,#d8b36a,#b78a3b);

    transition:.35s;

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

}

.ctaButton:hover{

    transform:translateY(-4px);

    box-shadow:0 20px 40px rgba(214,167,75,.30);

}

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

.contactSection{

    padding:120px 70px;

    background:#111;

    border-top:1px solid rgba(216,179,106,.10);

}

.contactSection h2{

    text-align:center;

    font-family:'Cormorant Garamond',serif;

    font-size:3rem;

    color:var(--gold);

    margin-bottom:20px;

}

.contactGrid{

    display:grid;

    grid-template-columns:1fr 1.3fr;

    gap:60px;

    margin-top:60px;

}

.contactInfo h3{

    color:var(--gold);

    margin-bottom:25px;

}

.contactInfo p{

    margin-bottom:18px;

    color:var(--muted);

    line-height:1.8;

}

.contactForm{

    display:flex;

    flex-direction:column;

    gap:20px;

}

.contactForm input,
.contactForm textarea{

    background:#1b1714;

    color:#fff;

    border:1px solid rgba(216,179,106,.18);

    border-radius:12px;

    padding:18px;

    font-size:1rem;

}

.contactForm textarea{

    resize:vertical;

}

.contactForm button{

    align-self:flex-start;

    padding:18px 36px;

    border:none;

    border-radius:50px;

    cursor:pointer;

    font-weight:700;

    background:linear-gradient(135deg,#d8b36a,#b78a3b);

    color:#111;

    transition:.35s;

}

.contactForm button:hover{

    transform:translateY(-3px);

}

/* ==========================
   PROJECT DEPOSIT
========================== */

.depositSection {
    padding: 120px 70px;
    background: #18130f;
    border-top: 1px solid rgba(216, 179, 106, 0.10);
}

.depositCard {
    max-width: 900px;
    margin: 0 auto;
    padding: 60px;
    text-align: center;

    background: linear-gradient(180deg, #201914, #161311);

    border: 1px solid rgba(216, 179, 106, 0.15);
    border-radius: 24px;

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

.depositCard h2 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 3rem;
    color: var(--gold);
    margin-bottom: 20px;
}

.depositCard p {
    max-width: 700px;
    margin: 0 auto 35px;

    color: var(--muted);
    line-height: 1.8;
}

.depositButton {
    display: inline-block;

    padding: 18px 42px;

    background: linear-gradient(135deg, #d8b36a, #b78a3b);

    color: #111;
    text-decoration: none;
    font-weight: 700;

    border-radius: 50px;

    transition: all .3s ease;
}

.depositButton:hover {
    transform: translateY(-3px);
}

.depositDivider {
    margin: 40px 0;

    color: var(--gold);

    font-weight: 700;

    letter-spacing: 3px;
}

.depositQR {
    width: 220px;
    height: auto;

    background: #ffffff;

    padding: 15px;

    border-radius: 18px;

    margin-top: 20px;
}

.formSuccess{

    display:none;

    background:#1b1714;

    border:1px solid rgba(216,179,106,.20);

    border-radius:18px;

    padding:40px;

    text-align:center;

}

.formSuccess h3{

    color:var(--gold);

    font-family:'Cormorant Garamond',serif;

    font-size:2.2rem;

    margin-bottom:15px;

}

.formSuccess p{

    color:var(--muted);

    line-height:1.8;

    margin:0;

}

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

.siteFooter{

    background:#111;

    border-top:1px solid rgba(216,179,106,.12);

    padding:70px;

}

.footerContent{

    max-width:1200px;

    margin:0 auto;

    text-align:center;

}

.footerContent img{

    width:140px;

    margin-bottom:25px;

}

.footerContent h3{

    font-family:'Cormorant Garamond',serif;

    color:var(--gold);

    font-size:2rem;

    margin-bottom:15px;

}

.footerContent p{

    color:var(--muted);

    max-width:650px;

    margin:0 auto 35px;

    line-height:1.8;

}

.footerLinks{

    display:flex;

    justify-content:center;

    gap:35px;

    margin-bottom:35px;

}

.footerLinks a{

    color:var(--muted);

    text-decoration:none;

    transition:.3s;

}

.footerLinks a:hover{

    color:var(--gold);

}

.footerSocial{

    display:flex;

    justify-content:center;

    gap:22px;

    margin-bottom:35px;

}

.footerSocial a{

    width:50px;

    height:50px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:#1b1714;

    color:var(--gold);

    border:1px solid rgba(216,179,106,.20);

    text-decoration:none;

    transition:.3s;

}

.footerSocial a:hover{

    transform:translateY(-4px);

    background:var(--gold);

    color:#111;

}

.footerSocial i{

    font-size:1.2rem;

}

.copyright{

    color:#8e857c;

    font-size:.9rem;

}

/* DESKTOP DEFAULTS */

.mobileHeader,
.mobileMenu{
    display:none;
}

/* ============================
   MOBILE LAYOUT
============================ */

@media (max-width: 768px) {
 html,
body{
    width:100%;
    overflow-x:hidden;
}

   .mobileHeader{
    display:flex;
}

main{
    width:100%;
    margin-left:0;
    overflow-x:hidden;
}

.sidebar{
    display:none;
}

  .hero{
    display:flex;
    flex-direction:column;
    width:100%;
    max-width:100%;
    min-height:auto;
    padding:50px 20px;
    overflow:hidden;
}

    .heroContent{
        text-align:center;
        order:2;
    }

    .heroImage{
        order:1;
        margin-bottom:30px;
    }

   .heroContent h1{
    font-size:2.8rem;
    line-height:1.1;
    margin-bottom:20px;
}

   .heroContent p{
    font-size:1.1rem;
    line-height:1.8;
    max-width:100%;
}

    .heroButtons{
        flex-direction:column;
        align-items:center;
        gap:18px;
    }

    .heroButtons a{
        width:100%;
        max-width:300px;
        text-align:center;
    }

    .portfolioGrid{
    grid-template-columns:1fr;
    gap:25px;
    }
    
.workCard{
    width:100%;
    max-width:100%;
}
.servicesGrid{
    display:grid;
    grid-template-columns:1fr;
    gap:20px;
}

.serviceCard{
    width:100%;
    max-width:100%;
}

.serviceIcon{
    font-size:3rem;
}

.serviceCard h3{
    font-size:2rem;
}

.serviceCard p{
    font-size:1.1rem;
    line-height:1.8;
}

.contactGrid{
    grid-template-columns:1fr;
    gap:35px;
}

.contactInfo,
.contactForm{
    width:100%;
    max-width:100%;
}

.contactForm input,
.contactForm textarea{
    width:100%;
    box-sizing:border-box;
}

.depositCard{
    width:100%;
    padding:35px 20px;
    box-sizing:border-box;
}

.depositButton{
    width:100%;
    max-width:320px;
}

.depositQR{
    width:220px;
    max-width:100%;
    height:auto;
}

.footerContent{
    text-align:center;
    padding:50px 20px;
}

.footerLinks{
    flex-direction:column;
    gap:15px;
}

.footerSocial{
    justify-content:center;
    flex-wrap:wrap;
    gap:18px;
}

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

    position:fixed;
    top:0;
    left:0;
    right:0;

    height:70px;

    padding:0 20px;

    background:#111;

    border-bottom:1px solid rgba(216,179,106,.15);

    z-index:9999;
}

.mobileHeader img{
    width:55px;
}

#menuToggle{
    background:none;
    border:none;
    color:var(--gold);
    font-size:2rem;
    cursor:pointer;
}

.mobileMenu{
    display:none;

    position:fixed;

    top:70px;
    left:0;
    right:0;

    background:#18130f;

    padding:25px;

    z-index:9998;

    border-bottom:1px solid rgba(216,179,106,.15);
}

.mobileMenu a{
    display:block;
    color:#fff;
    text-decoration:none;
    padding:15px 0;
    border-bottom:1px solid rgba(255,255,255,.08);
}

.mobileMenu .projectButton{
    width:100%;
    margin-top:20px;
}

   .mobileMenu .projectButton{
    display:flex;
    justify-content:center;
    align-items:center;
    color:#111;
    padding:18px;
    border-bottom:none;
}
   
.hero{
    padding-top:120px;
}

}

