/*====================================================

JOGANI EVENT
Luxury Event Planner
Black & Gold Theme

====================================================*/

*{
margin:0;
padding:0;
box-sizing:border-box;
scroll-behavior:smooth;
}

html{
overflow-x:hidden;
}

body{

font-family:'Poppins',sans-serif;

background:#050505;

color:#fff;

overflow-x:hidden;

line-height:1.7;

}

/*=========================
Variables
==========================*/

:root{

--gold:#D4AF37;

--dark:#050505;

--black:#111111;

--white:#ffffff;

--gray:#cfcfcf;

--border:rgba(255,255,255,.08);

--transition:.4s;

}

/*=========================
Scrollbar
==========================*/

::-webkit-scrollbar{

width:10px;

}

::-webkit-scrollbar-track{

background:#000;

}

::-webkit-scrollbar-thumb{

background:var(--gold);

border-radius:30px;

}

/*=========================
Container
==========================*/

.container{

width:90%;

max-width:1300px;

margin:auto;

}

/*=========================
Section
==========================*/

section{

padding:100px 0;

position:relative;

}

/*=========================
Heading
==========================*/

.section-title{

text-align:center;

margin-bottom:60px;

}

.section-title h5{

color:var(--gold);

letter-spacing:3px;

font-size:16px;

margin-bottom:10px;

text-transform:uppercase;

}

.section-title h2{

font-size:42px;

font-family:'Cinzel',serif;

margin-bottom:15px;

}

.section-title p{

color:#c9c9c9;

max-width:650px;

margin:auto;

}

/*=========================
Loader
==========================*/

.loader{

position:fixed;

top:0;

left:0;

width:100%;

height:100vh;

background:#000;

display:flex;

justify-content:center;

align-items:center;

z-index:999999;

}

.loader h1{

font-size:70px;

font-family:'Cinzel',serif;

color:var(--gold);

letter-spacing:6px;

}

/*=========================
Navbar
==========================*/

header{

position:fixed;

width:100%;

top:0;

left:0;

z-index:9999;

transition:.4s;

}

.navbar{

display:flex;

justify-content:space-between;

align-items:center;

padding:18px 5%;

backdrop-filter:blur(18px);

background:rgba(0,0,0,.25);

border-bottom:1px solid rgba(255,255,255,.08);

}

.logo{

display:flex;

align-items:center;

gap:2px;

}

.logo img{

width:55px;

}

.logo span{

font-size:28px;

font-family:'Cinzel',serif;

color:#fff;

}

.nav-links{

display:flex;

list-style:none;

gap:35px;

}

.nav-links a{

color:#fff;

text-decoration:none;

font-size:16px;

transition:.4s;

position:relative;

}

.nav-links a:hover{

color:var(--gold);

}

.nav-links a::after{

content:"";

position:absolute;

left:0;

bottom:-8px;

width:0;

height:2px;

background:var(--gold);

transition:.4s;

}

.nav-links a:hover::after{

width:100%;

}

/*=========================
Book Button
==========================*/
.why-highlight{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:25px;
max-width:1200px;
margin:0 auto 60px;
}

.highlight-item{
background:rgba(255,255,255,.05);
backdrop-filter:blur(18px);
border:1px solid rgba(212,175,55,.25);
border-radius:20px;
padding:30px 20px;
text-align:center;
transition:.5s;
position:relative;
overflow:hidden;
}

.highlight-item::before{
content:"";
position:absolute;
top:-100%;
left:-100%;
width:220%;
height:220%;
background:linear-gradient(
45deg,
transparent,
rgba(212,175,55,.15),
transparent
);
transform:rotate(25deg);
transition:.8s;
}

.highlight-item:hover::before{
top:100%;
left:100%;
}

.highlight-item:hover{
transform:translateY(-12px) scale(1.03);
border-color:#D4AF37;
box-shadow:0 20px 45px rgba(212,175,55,.2);
}

.highlight-item i{
font-size:50px;
color:#D4AF37;
margin-bottom:18px;
animation:floatIcon 3s ease-in-out infinite;
}

.highlight-item h4{
font-size:22px;
font-family:'Cinzel',serif;
margin-bottom:12px;
}

.highlight-item p{
color:#d9d9d9;
line-height:1.8;
}

@keyframes floatIcon{
0%,100%{transform:translateY(0);}
50%{transform:translateY(-10px);}
}

@media(max-width:992px){
.why-highlight{
grid-template-columns:repeat(2,1fr);
}
}

@media(max-width:600px){

.why-highlight{

grid-template-columns:repeat(2,1fr);

gap:15px;

}

.highlight-item{

padding:20px 15px;

}

.highlight-item h4{

font-size:18px;

}

.highlight-item p{

font-size:13px;

}

.highlight-item i{

font-size:35px;

}

}
.book-btn a{

display:inline-block;

padding:14px 34px;

background:var(--gold);

color:#000;

text-decoration:none;

font-weight:700;

border-radius:50px;

transition:.4s;

}

.book-btn a:hover{

transform:translateY(-5px);

box-shadow:0 15px 40px rgba(212,175,55,.4);

}

/*=========================
Menu Button
==========================*/

.menu-btn{

display:none;

font-size:28px;

cursor:pointer;

color:#fff;

}

/*=========================
Mobile Menu
==========================*/

.mobile-menu{

position:fixed;

top:0;

right:-100%;

width:300px;

height:100vh;

background:#111;

padding:100px 30px;

transition:.5s;

display:flex;

flex-direction:column;

gap:20px;

z-index:99999;

}

.mobile-menu.active{

right:0;

}

.mobile-menu a{

text-decoration:none;

color:#fff;

font-size:18px;

padding:15px;

border-bottom:1px solid rgba(255,255,255,.08);

}

.mobile-book{

background:var(--gold);

color:#000!important;

text-align:center;

border-radius:40px;

margin-top:20px;

}

/*=========================
Hero
==========================*/

.hero{

position:relative;

height:100vh;

display:flex;

align-items:center;

justify-content:center;

overflow:hidden;

}

.hero video{

position:absolute;

top:0;

left:0;

width:100%;

height:100%;

object-fit:cover;

}

.overlay{

position:absolute;

width:100%;

height:100%;

background:linear-gradient(

to right,

rgba(0,0,0,.85),

rgba(0,0,0,.35)

);

}

.hero-content{

position:relative;

z-index:2;

text-align:center;

max-width:900px;

padding:20px;

}

.hero-content h3{

color:var(--gold);

letter-spacing:5px;

font-size:20px;

margin-bottom:20px;

}

.hero-content h1{

font-size:75px;

font-family:'Cinzel',serif;

line-height:1.2;

margin-bottom:20px;

}

.hero-content span{

color:var(--gold);

}

.hero-content p{

font-size:20px;

color:#ddd;

margin-bottom:40px;

}

/*=========================
Buttons
==========================*/

.hero-buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.btn{

display:inline-block;

padding:16px 42px;

border-radius:50px;

font-weight:700;

text-decoration:none;

transition:.4s;

}

.gold{

background:var(--gold);

color:#000;

}

.gold:hover{

transform:translateY(-6px);

box-shadow:0 20px 50px rgba(212,175,55,.35);

}

.transparent{

border:2px solid #fff;

color:#fff;

}

.transparent:hover{

background:#fff;

color:#000;

}

/*=========================
Scroll Down
==========================*/

.scroll-down{

position:absolute;

bottom:40px;

left:50%;

transform:translateX(-50%);

}

.scroll-down span{

display:block;

width:28px;

height:50px;

border:2px solid #fff;

border-radius:30px;

position:relative;

}

.scroll-down span::before{

content:"";

position:absolute;

left:50%;

top:10px;

transform:translateX(-50%);

width:6px;

height:10px;

background:#fff;

border-radius:10px;

animation:scroll 2s infinite;

}

@keyframes scroll{

0%{

opacity:0;

transform:translate(-50%,0);

}

50%{

opacity:1;

}

100%{

opacity:0;

transform:translate(-50%,18px);

}

}

/*=========================
Floating Buttons
==========================*/

.whatsapp,

.call-btn{

position:fixed;

right:25px;

width:60px;

height:60px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

font-size:24px;

color:#fff;

z-index:999;

text-decoration:none;

transition:.4s;

}
@media(max-width:600px){

.whatsapp,
.call-btn{

width:50px;
height:50px;

font-size:20px;

right:15px;

}

}
.whatsapp{

bottom:95px;

background:#25D366;

}

.call-btn{

bottom:20px;

background:var(--gold);

color:#000;

}

.whatsapp:hover,

.call-btn:hover{

transform:scale(1.1);

}
/*=========================
About Section
==========================*/

.about{

background:#080808;

}

.about .container{

display:grid;

grid-template-columns:1fr 1fr;

align-items:center;

gap:80px;

}

.about-left{

position:relative;

}

.about-left img{

width:100%;

border-radius:20px;

display:block;

border:2px solid rgba(212,175,55,.25);

transition:.5s;

}

.about-left img:hover{

transform:scale(1.03);

}

.about-right h5{

color:var(--gold);

letter-spacing:3px;

font-size:16px;

margin-bottom:15px;

}

.about-right h2{

font-size:46px;

font-family:'Cinzel',serif;

margin-bottom:25px;

line-height:1.3;

}

.about-right p{

font-size:17px;

color:#cfcfcf;

margin-bottom:35px;

line-height:1.9;

}

.about-btn{

margin-top:15px;

}
@media(max-width:768px){

.about .container{

grid-template-columns:1fr;

gap:40px;

}

}

/*=========================
Counter Section
==========================*/

.counter-section{

background:#050505;

}

.counter-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

}
@media(max-width:768px){

.counter-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:480px){

.counter-grid{

grid-template-columns:1fr;

}

}
.counter-box{

background:#111;

border:1px solid var(--border);

border-radius:18px;

padding:40px 25px;

text-align:center;

transition:.4s;

position:relative;

overflow:hidden;

}

.counter-box::before{

content:"";

position:absolute;

left:-100%;

top:0;

width:100%;

height:100%;

background:linear-gradient(

90deg,

transparent,

rgba(212,175,55,.08),

transparent

);

transition:.7s;

}

.counter-box:hover::before{

left:100%;

}

.counter-box:hover{

transform:translateY(-12px);

border-color:var(--gold);

box-shadow:0 20px 50px rgba(212,175,55,.12);

}

.counter-box h2{

font-size:55px;

font-family:'Cinzel',serif;

color:var(--gold);

margin-bottom:10px;

}

.counter-box p{

color:#ddd;

font-size:17px;

}

/*=========================
Why Choose
==========================*/

.why-us{

background:#090909;
padding-bottom:20px;
}


.why-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:20px;

}
@media(max-width:992px){

.why-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:600px){

.why-grid{

grid-template-columns:1fr;

}

}

.why-card{

background:#111;

padding:40px 25px;

border-radius:18px;

text-align:center;

border:1px solid var(--border);

transition:.4s;

}

.why-card:hover{

transform:translateY(-12px);

border-color:var(--gold);

box-shadow:0 15px 40px rgba(212,175,55,.18);

}

.why-card i{

font-size:45px;

color:var(--gold);

margin-bottom:25px;

}

.why-card h3{

font-size:24px;

margin-bottom:15px;

font-family:'Cinzel',serif;

}

.why-card p{

font-size:16px;

color:#cfcfcf;

line-height:1.8;

}
.why-us{
    background:#090909;
    padding:70px 0 40px;
}

.section-title{
    margin-bottom:30px;
}

.why-highlight{
    margin:30px auto 0;
}

/*=========================
Services
==========================*/

.services{

background:#050505;

}

.services-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:35px;

}
@media(max-width:992px){

.services-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:600px){

.services-grid{

grid-template-columns:1fr;

}

}

.service-card{

background:#111;

padding:45px 30px;

border-radius:18px;

text-align:center;

border:1px solid rgba(255,255,255,.08);

transition:.45s;

cursor:pointer;

position:relative;

overflow:hidden;

}

.service-card::before{

content:"";

position:absolute;

left:0;

top:0;

width:100%;

height:4px;

background:var(--gold);

transform:scaleX(0);

transition:.4s;

}

.service-card:hover::before{

transform:scaleX(1);

}

.service-card:hover{

transform:translateY(-15px);

box-shadow:0 20px 55px rgba(212,175,55,.15);

border-color:var(--gold);

}

.service-card i{

font-size:55px;

color:var(--gold);

margin-bottom:25px;

transition:.4s;

}

.service-card:hover i{

transform:rotateY(360deg);

}

.service-card h3{

font-size:26px;

margin-bottom:18px;

font-family:'Cinzel',serif;

}

.service-card p{

color:#d6d6d6;

line-height:1.9;

}

/*=========================
Bride Groom Entry
==========================*/

.machines{

background:#090909;

}

.machine-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}
@media(max-width:992px){

.machine-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:600px){

.machine-grid{

grid-template-columns:1fr;

}

}

.machine-card{
    background:#111;
    padding:30px 20px;
    border-radius:18px;
    text-align:center;
    border:1px solid rgba(255,255,255,.08);
    transition:.4s;
    cursor:pointer;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    min-height:220px;
}

.machine-card:hover{

background:linear-gradient(

135deg,

#1b1b1b,

#0b0b0b

);

transform:translateY(-12px);

border-color:var(--gold);

box-shadow:0 20px 45px rgba(212,175,55,.15);

}

.machine-card h3{
    font-size:24px;
    line-height:1.4;
    word-break:break-word;
}
/*=========================
Common Hover Effect
==========================*/

.service-card,

.machine-card,

.counter-box,

.why-card{

will-change:transform;

}

.service-card:hover,

.machine-card:hover,

.counter-box:hover,

.why-card:hover{

transition:all .4s ease;

}

/*=========================
Image Border Glow
==========================*/

.about-left img,

.service-card,

.machine-card{

box-shadow:

0 0 0 rgba(212,175,55,0);

}

.about-left img:hover,

.service-card:hover,

.machine-card:hover{

box-shadow:

0 0 35px rgba(212,175,55,.12);

}
/*=========================================
Gallery
=========================================*/

.gallery{

background:#050505;

}

.gallery-filter{

display:flex;

justify-content:center;

align-items:center;

gap:15px;

flex-wrap:wrap;

margin-bottom:50px;

}

.gallery-filter button{

padding:14px 30px;

border:none;

outline:none;

background:#111;

color:#fff;

border:1px solid rgba(255,255,255,.08);

cursor:pointer;

border-radius:40px;

transition:.4s;

font-size:15px;

}@media (max-width:768px){

.gallery-filter{

    display:flex;

    flex-wrap:nowrap;

    align-items:center;

    justify-content:flex-start;

    gap:8px;

    overflow-x:auto;

    overflow-y:hidden;

    padding:0 5px 10px;

    -webkit-overflow-scrolling:touch;

    scrollbar-width:none;

}

.gallery-filter::-webkit-scrollbar{

    display:none;

}

.gallery-filter .filter-btn{

    flex:0 0 auto;

    width:auto;

    min-width:auto;

    padding:8px 16px;

    font-size:11px;

    white-space:nowrap;

    border-radius:30px;

}

}
.gallery-filter button.active,

.gallery-filter button:hover{

background:var(--gold);

color:#000;

}

.gallery-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:25px;

}
@media(max-width:992px){

.gallery-grid{

grid-template-columns:repeat(2,1fr);

}

}
@media(max-width:600px){

.gallery-grid{

grid-template-columns:repeat(2,1fr);

gap:12px;

}

.gallery-item img{

height:170px;

object-fit:cover;

}

}

.gallery-item{

position:relative;

overflow:hidden;

border-radius:18px;

cursor:pointer;

}

.gallery-item img{

width:100%;

height:320px;

object-fit:cover;

display:block;

transition:.6s;

}

.gallery-item:hover img{

transform:scale(1.12);

}

.gallery-overlay{

position:absolute;

top:0;

left:0;

width:100%;

height:100%;

background:rgba(0,0,0,.65);

display:flex;

justify-content:center;

align-items:center;

opacity:0;

transition:.5s;

}

.gallery-item:hover .gallery-overlay{

opacity:1;

}

.gallery-overlay i{

width:70px;

height:70px;

background:var(--gold);

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

color:#000;

font-size:28px;

}

/*=========================================
Video Gallery
=========================================*/

.video-gallery{

background:#090909;

}

.video-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

gap:35px;

justify-items:center;

align-items:center;

}

.video-card{

position:relative;

overflow:hidden;

border-radius:20px;

border:2px solid rgba(212,175,55,.35);

aspect-ratio:9/16;

max-width:420px;

margin:auto;

background:#000;

}

.video-card:hover{

transform:translateY(-10px);

border-color:var(--gold);

box-shadow:0 20px 40px rgba(212,175,55,.15);

}

.video-card video{

width:100%;

height:100%;

display:block;

object-fit:cover;

object-position:center;

}

/*=========================================
Reviews
=========================================*/

.reviews{

background:#050505;

}

.review-card{

background:#111;

padding:40px;

border-radius:20px;

text-align:center;

border:1px solid rgba(255,255,255,.08);

transition:.4s;

}

.review-card:hover{

transform:translateY(-10px);

border-color:var(--gold);

}

.review-card h3{

margin:20px 0 10px;

font-size:24px;

font-family:'Cinzel',serif;

}

.review-card p{

color:#d5d5d5;

line-height:1.9;

}

.review-card{

font-size:18px;

color:#FFD700;

}

/*=========================================
Instagram
=========================================*/

.instagram{

background:#090909;

}

.insta-grid{

display:grid;

grid-template-columns:repeat(6,1fr);

gap:15px;

}
@media(max-width:992px){

.insta-grid{

grid-template-columns:repeat(3,1fr);

}

}

@media(max-width:600px){

.insta-grid{

grid-template-columns:repeat(2,1fr);

}

}

.insta-grid img{

width:100%;

height:220px;

object-fit:cover;

border-radius:15px;

transition:.5s;

cursor:pointer;

}

.insta-grid img:hover{

transform:scale(1.08);

}

/*=========================================
FAQ
=========================================*/

.faq{

background:#050505;

}

.faq-container{

max-width:900px;

margin:auto;

}

.faq-item{

background:#111;

margin-bottom:20px;

padding:25px 30px;

border-radius:15px;

border:1px solid rgba(255,255,255,.08);

transition:.4s;

}

.faq-item:hover{

border-color:var(--gold);

}

.faq-item h3{

font-size:22px;

margin-bottom:12px;

font-family:'Cinzel',serif;

cursor:pointer;

}

.faq-item p{

color:#cfcfcf;

line-height:1.8;

}

/*=========================================
Lightbox
=========================================*/

#lightbox{

position:fixed;

left:0;

top:0;

width:100%;

height:100vh;

background:rgba(0,0,0,.95);

display:none;

justify-content:center;

align-items:center;

z-index:999999;

}

#lightbox img{

max-width:90%;

max-height:90%;

border-radius:12px;

}

#closeLightbox{

position:absolute;

right:40px;

top:25px;

font-size:50px;

cursor:pointer;

color:#fff;

transition:.3s;

}

#closeLightbox:hover{

color:var(--gold);

}

/*=========================================
Swiper
=========================================*/

.swiper{

padding-bottom:60px;

}

.swiper-pagination-bullet{

background:#fff;

}

.swiper-pagination-bullet-active{

background:var(--gold);

}

/*=========================================
Hover Animation
=========================================*/

.gallery-item,

.video-card,

.review-card,

.insta-grid img{

will-change:transform;

}

.gallery-item:hover,

.video-card:hover,

.review-card:hover,

.insta-grid img:hover{

transition:all .4s ease;

}

/*=========================================
Glass Effect
=========================================*/

.review-card,

.faq-item{

-webkit-backdrop-filter:blur(15px);
backdrop-filter:blur(15px);

}
/*=========================================
Contact Section
=========================================*/

.contact{

background:#090909;

}

.contact-wrapper{

display:grid;

grid-template-columns:1fr 1fr;

gap:60px;

align-items:start;

}
@media(max-width:768px){

.contact-wrapper{

grid-template-columns:1fr;

gap:35px;

}

.contact-form{

padding:25px;

}

}

.contact-info{

display:flex;

flex-direction:column;

gap:25px;

}

.info-box{

display:flex;

align-items:center;

gap:20px;

background:#111;

padding:25px;

border-radius:18px;

border:1px solid rgba(255,255,255,.08);

transition:.4s;

}

.info-box:hover{

transform:translateY(-8px);

border-color:var(--gold);

box-shadow:0 20px 45px rgba(212,175,55,.12);

}

.info-box i{

width:65px;

height:65px;

background:var(--gold);

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

font-size:24px;

color:#000;

}

.info-box h3{

font-size:22px;

margin-bottom:6px;

font-family:'Cinzel',serif;

}

.info-box p{

color:#d4d4d4;

}

.contact-form{

background:#111;

padding:40px;

border-radius:20px;

border:1px solid rgba(255,255,255,.08);

}

.contact-form form{

display:flex;

flex-direction:column;

gap:20px;

}

.contact-form input,

.contact-form select,

.contact-form textarea{

width:100%;

padding:18px;

background:#050505;

border:1px solid rgba(255,255,255,.08);

color:#fff;

border-radius:12px;

outline:none;

font-size:16px;

transition:.3s;

}

.contact-form input:focus,

.contact-form textarea:focus,

.contact-form select:focus{

border-color:var(--gold);

box-shadow:0 0 15px rgba(212,175,55,.15);

}

.contact-form textarea{

resize:none;

min-height:180px;

}

/*=========================================
Google Map
=========================================*/

.map{

padding:0;

}

.map iframe{

width:100%;

height:450px;

border:none;

filter:grayscale(100%) invert(92%);

}

/*=========================================
Footer
=========================================*/

footer{

background:#000;

padding:80px 0 20px;

border-top:1px solid rgba(255,255,255,.08);

}

.footer-container{

width:90%;

max-width:1300px;

margin:auto;

display:grid;

grid-template-columns:2fr 1fr 1fr 1fr;

gap:40px;

}
@media(max-width:992px){

.footer-container{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:600px){

.footer-container{

grid-template-columns:1fr;

text-align:center;

}

.social{

justify-content:center;

}

}
.footer-col h2{

font-family:'Cinzel',serif;

font-size:34px;

color:var(--gold);

margin-bottom:20px;

}

.footer-col h3{

margin-bottom:20px;

font-size:24px;

font-family:'Cinzel',serif;

}

.footer-col p{

color:#bfbfbf;

line-height:1.9;

}

.footer-col ul{

list-style:none;

}

.footer-col ul li{

margin-bottom:15px;

}

.footer-col ul li a{

text-decoration:none;

color:#ddd;

transition:.3s;

}

.footer-col ul li a:hover{

color:var(--gold);

padding-left:8px;

}

.social{

display:flex;

gap:15px;

}

.social a{

width:50px;

height:50px;

border-radius:50%;

background:#111;

display:flex;

justify-content:center;

align-items:center;

color:#fff;

text-decoration:none;

font-size:20px;

transition:.4s;

}

.social a:hover{

background:var(--gold);

color:#000;

transform:translateY(-6px);

}

.copyright{

margin-top:60px;

padding-top:20px;

text-align:center;

border-top:1px solid rgba(255,255,255,.08);

color:#bfbfbf;

}

/*=========================================
Back To Top
=========================================*/

#topBtn{

position:fixed;

right:25px;

bottom:25px;

width:55px;

height:55px;

border:none;

border-radius:50%;

background:var(--gold);

color:#000;

font-size:22px;

cursor:pointer;

display:none;

justify-content:center;

align-items:center;

z-index:9999;

transition:.4s;

box-shadow:0 10px 30px rgba(212,175,55,.25);

}

#topBtn:hover{

transform:translateY(-6px);

}

/*=========================================
Buttons Hover
=========================================*/

.btn{

position:relative;

overflow:hidden;

}

.btn::before{

content:"";

position:absolute;

left:-120%;

top:0;

width:100%;

height:100%;

background:rgba(255,255,255,.18);

transform:skewX(-25deg);

transition:.6s;

}

.btn:hover::before{

left:130%;

}

/*=========================================
Selection
=========================================*/

::selection{

background:var(--gold);

color:#000;

}

/*=========================================
Image Hover
=========================================*/

img{

max-width:100%;

display:block;

}

img:hover{

transition:.5s;

}

/*=========================================
Animation
=========================================*/

@keyframes float{

0%{

transform:translateY(0px);

}

50%{

transform:translateY(-12px);

}

100%{

transform:translateY(0px);

}

}

.whatsapp{

animation:float 2.5s infinite;

}

.call-btn{

animation:float 3s infinite;

}

/*=========================================
Shadow Utility
=========================================*/

.shadow{

box-shadow:0 20px 60px rgba(212,175,55,.12);

}

/*=========================================
Glass Utility
=========================================*/

.glass{

background:rgba(255,255,255,.05);

backdrop-filter:blur(18px);

border:1px solid rgba(255,255,255,.08);

}

/*=========================================
Transition Utility
=========================================*/

.transition{

transition:.4s ease;

}

/* Ripple */

.btn{

position:relative;

overflow:hidden;

}

.ripple{

position:absolute;

border-radius:50%;

background:rgba(255,255,255,.35);

transform:scale(0);

animation:ripple .6s linear;

pointer-events:none;

}

@keyframes ripple{

to{

transform:scale(4);

opacity:0;

}

}

/* Mouse Glow */

.mouse-glow{

position:fixed;

width:250px;

height:250px;

background:radial-gradient(circle,
rgba(212,175,55,.18),
transparent 70%);

pointer-events:none;

transform:translate(-50%,-50%);

z-index:1;

transition:.05s linear;

}

/* Smooth Image */
img{
max-width:100%;
display:block;
opacity:1;
transition:.6s;
}


/* Better Card */

.service-card,
.machine-card,
.why-card{

transition:.35s;

transform-style:preserve-3d;

}
/*====================================
Premium Floating Particles
====================================*/

.particles{

position:fixed;

top:0;

left:0;

width:100%;

height:100%;

overflow:hidden;

pointer-events:none;

z-index:0;

}

.particle{

position:absolute;

bottom:-20px;

background:#D4AF37;

border-radius:50%;

opacity:.25;

animation:particleMove linear infinite;

filter:blur(.5px);

}

@keyframes particleMove{

0%{

transform:translateY(0) scale(1);

opacity:0;

}

15%{

opacity:.6;

}

100%{

transform:translateY(-120vh) scale(0);

opacity:0;

}

}
/*======================================
Luxury Shine
======================================*/

.btn{

position:relative;

overflow:hidden;

}

.btn::before{

content:"";

position:absolute;

top:0;

left:-120%;

width:70%;

height:100%;

background:

linear-gradient(

90deg,

transparent,

rgba(255,255,255,.5),

transparent

);

transform:skewX(-25deg);

transition:.7s;

}

.btn.shine::before{

left:160%;

}


/*======================================
Progress %
======================================*/

.progress-text{

position:fixed;

right:20px;

bottom:90px;

color:#D4AF37;

font-size:13px;

font-weight:bold;

z-index:999;

}


/*======================================
Gold Glow
======================================*/

.gold-glow{

transition:.5s;

}


/*======================================
Floating Icon
======================================*/

.floating-icon{

display:inline-block;

will-change:transform;

}
/*=====================================
Three.js Canvas
=====================================*/

#threeCanvas{

position:fixed;

top:0;

left:0;

width:100%;

height:100%;

z-index:-2;

pointer-events:none;

}

/* Hero Overlay */


.hero-content{

position:relative;

z-index:5;

}
/*=========================================
Luxury Glow Overlay
=========================================*/

body::before{

content:"";

position:fixed;

top:0;

left:0;

width:100%;

height:100%;

background:

radial-gradient(

circle at center,

rgba(212,175,55,.05),

transparent 65%

);

pointer-events:none;

z-index:-1;

}
@media(max-width:768px){

.hero{
    min-height:100vh;
    padding:100px 20px 60px;
}

.hero-content{
    max-width:100%;
}

.hero-content h1{
    font-size:42px;
    line-height:1.3;
}

.hero-content h3{
    font-size:16px;
    letter-spacing:2px;
}

.hero-content p{
    font-size:16px;
}

}
/*=========================================
Smooth Canvas Blend
=========================================*/

#threeCanvas{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
z-index:-2;
pointer-events:none;
mix-blend-mode:screen;
opacity:.9;
}
/*=====================================
Luxury Blur Overlay
=====================================*/

body::after{

content:"";

position:fixed;

top:0;

left:0;

width:100%;

height:100%;

background:

radial-gradient(

circle,

transparent 40%,

rgba(0,0,0,.18)

);

backdrop-filter:blur(2px);

pointer-events:none;

z-index:-1;

}

/*=====================================
Performance
=====================================*/

canvas{

will-change:transform;

}
.gold-dust{

position:fixed;

width:180px;

height:180px;

border-radius:50%;

pointer-events:none;

transform:translate(-50%,-50%);

background:radial-gradient(circle,
rgba(212,175,55,.25),
transparent 70%);

filter:blur(25px);

z-index:2;

transition:.08s linear;

}
body::before{

animation:aurora 14s linear infinite;

}

@keyframes aurora{

0%{

transform:translateX(-10px);

}

50%{

transform:translateX(15px);


}

100%{

transform:translateX(-10px);

}

}
.fps{

position:fixed;

top:20px;

right:20px;

padding:8px 12px;

background:#111;

color:#d4af37;

font-size:13px;

border-radius:8px;

z-index:9999;

font-family:monospace;

}
/* Remove extra gap after Why Choose Us */
.why-us{
    padding:70px 0 0 !important;
    margin-bottom:0 !important;
}

.why-highlight{
    margin-bottom:0 !important;
}

.services{
    margin-top:0 !important;
    padding-top:50px !important;
}
@media(max-width:768px){

.container{

width:94%;

}

section{

padding:70px 0;

}

img{

max-width:100%;
height:auto;

}

}
/*==============================
Developer Credit
==============================*/

.developer-credit{
    margin-top:18px;
    text-align:center;
    font-size:16px;
    color:#bdbdbd;
    letter-spacing:.8px;
    font-weight:500;
}

.developer-credit a{

    display:inline-block;

    margin-left:6px;

    text-decoration:none;

    font-weight:700;

    font-size:20px;

    font-family:'Cinzel',serif;

    color:#D4AF37;

    text-transform:uppercase;

    letter-spacing:2px;

    position:relative;

    transition:.4s;

    animation:goldGlow 2.5s infinite alternate;

}

.developer-credit a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-5px;

    width:100%;

    height:2px;

    background:#D4AF37;

    transform:scaleX(0);

    transition:.4s;

}

.developer-credit a:hover{

    color:#fff;

    transform:translateY(-3px) scale(1.05);

}

.developer-credit a:hover::after{

    transform:scaleX(1);

}

@keyframes goldGlow{

0%{

text-shadow:
0 0 5px rgba(212,175,55,.3);

}

50%{

text-shadow:
0 0 15px rgba(212,175,55,.9),
0 0 35px rgba(212,175,55,.5);

}

100%{

text-shadow:
0 0 5px rgba(212,175,55,.3);

}

}

@media(max-width:768px){

.developer-credit{

font-size:11px;

}

.developer-credit a{

font-size:15px;

letter-spacing:1px;

}

}
/* MOBILE - 3 CARD IN ONE ROW */
@media only screen and (max-width:768px){

.machine-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
    align-items:stretch;
}

.machine-card{
    width:100% !important;
    min-width:0 !important;
    min-height:120px !important;
    padding:10px 4px !important;
    overflow:hidden;
}

.machine-card h3{
    font-size:10px !important;
    line-height:1.25 !important;
    word-break:break-word;
    overflow-wrap:anywhere;
    white-space:normal;
}

.machine-card{
    font-size:26px !important;
}

}
/* ===== Mobile Services Fix ===== */
@media only screen and (max-width:768px){

.services .container{
    width:100% !important;
    padding:0 10px !important;
    box-sizing:border-box;
}

.services-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
    width:100% !important;
}

.service-card{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    padding:18px 8px !important;
    box-sizing:border-box !important;
}

.service-card i{
    font-size:34px !important;
}

.service-card h3{
    font-size:13px !important;
    line-height:1.35 !important;
    word-break:break-word;
}

.service-card p{
    font-size:11px !important;
    line-height:1.5 !important;
}
}
/*=========================================
End CSS
=========================================*/