/*==================================================
Google Fonts
==================================================*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&family=Playfair+Display:wght@600;700;800&display=swap');

/*==================================================
RESET
==================================================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Poppins',sans-serif;
    background:#fff8f1;
    color:#222;
    overflow-x:hidden;
}

img{
    max-width:100%;
    display:block;
}

a{
    text-decoration:none;
}

ul{
    list-style:none;
}

.container{
    max-width:1280px;
}

/*==================================================
COLORS
==================================================*/

:root{

--primary:#9d2608;

--secondary:#f7b731;

--text:#242424;

--light:#fff;

--bg:#fff8ef;

--border:#f3e0cc;

--shadow:0 15px 45px rgba(0,0,0,.08);

}

/*==================================================
HEADER
==================================================*/

.main-header{

position:absolute;

top:0;

left:0;

width:100%;

z-index:999;

padding:12px 0 0 0;

}

.navbar{

padding:0;

}

.logo{

display:flex;

align-items:center;

gap:12px;

}

.logo img{
    width: 80px;
    border-radius: 50px;
}

.logo h5{

font-size:20px;

font-weight:700;

margin:0;

font-family:'Playfair Display',serif;

color:#2d1b10;

}

.logo span{

font-size:14px;

color:#666;

display:block;

}

.navbar-nav{

gap:18px;

}

.nav-link{

font-size:15px;

font-weight:500;

color:#222;

position:relative;

transition:.35s;

}

.nav-link:hover{

color:var(--primary);

}

.nav-link.active{

color:var(--primary);

}

.nav-link::after{

content:"";

position:absolute;

left:0;

bottom:-8px;

width:0;

height:2px;

background:var(--secondary);

transition:.4s;

}

.nav-link:hover::after,

.nav-link.active::after{

width:100%;

}

/*==================================================
BUTTON
==================================================*/

.book-btn{

padding:14px 28px;

background:linear-gradient(135deg,#b72e09,#7f1705);

color:#fff;

border-radius:40px;

font-weight:600;

display:inline-flex;

align-items:center;

gap:8px;

transition:.4s;

box-shadow:0 15px 35px rgba(183,46,9,.3);

}

.book-btn:hover{

transform:translateY(-4px);

color:#fff;

}

/*==================================================
HERO
==================================================*/

.hero{

padding-top:170px;

padding-bottom:130px;

background:linear-gradient(to right,#fffaf4,#fff5e9);

position:relative;

overflow:hidden;

}

.hero::before{

content:"";

position:absolute;

left:-220px;

top:-150px;

width:500px;

height:500px;

background:radial-gradient(circle,#f6dfbf 0%,transparent 70%);

opacity:.4;

}

.hero-content{

animation:fadeLeft 1.2s;

}

.mini-title{

font-size:14px;

font-weight:600;

letter-spacing:2px;

text-transform:uppercase;

color:#b66a05;

margin-bottom:20px;

}

.hero h1{

font-size:66px;

font-family:'Playfair Display',serif;

font-weight:800;

line-height:1.1;

margin-bottom:30px;

color:#1d1d1d;

}

.hero h1 span{

color:var(--primary);

}

.hero p{

font-size:17px;

line-height:1.9;

max-width:520px;

color:#555;

margin-bottom:40px;

}

/*==================================================
BUTTON GROUP
==================================================*/

.hero-btn{

display:flex;

gap:18px;

flex-wrap:wrap;

}

.primary-btn{

background:linear-gradient(135deg,#b72e09,#8d1d05);

padding:16px 34px;

color:#fff;

border-radius:40px;

font-weight:600;

transition:.4s;

}

.primary-btn:hover{

transform:translateY(-5px);

color:#fff;

}

.outline-btn{

padding:15px 34px;

border:2px solid #cfa64d;

border-radius:40px;

color:#9d2608;

font-weight:600;

transition:.4s;

}

.outline-btn:hover{

background:#9d2608;

color:#fff;

}

/*==================================================
IMAGE
==================================================*/

.hero-image{

position:relative;

animation:fadeRight 1.4s;

}

.hero-image img{

width:100%;

border-radius:40px;

/* box-shadow:0 35px 60px rgba(0,0,0,.15); */

transition:.6s;

}

.hero-image:hover img{

transform:scale(1.03);

}

.curve-shape{

/* position:absolute; */

left:-35px;

top:0;

width:80px;

height:100%;

background:#fffaf4;

border-radius:0 80px 80px 0;

z-index:2;

}

.dots{

position:absolute;

left:-70px;

top:70px;

width:140px;

height:140px;

background-image:radial-gradient(#efc56d 2px,transparent 2px);

background-size:18px 18px;

opacity:.5;

}

/*==================================================
COUNTER
==================================================*/

.counter-box{

margin-top:35px;

position:relative;

z-index:20;

display:grid;

grid-template-columns:repeat(4,1fr);

background:#fff;

border-radius:18px;

overflow:hidden;

box-shadow:var(--shadow);

}

.counter-card{

padding:30px;

text-align:center;

border-right:1px solid #eee;

transition:.4s;

}

.counter-card:last-child{

border-right:none;

}

.counter-card i{

font-size:26px;

color:#b72e09;

margin-bottom:12px;

}

.counter-card h3{

font-size:32px;

font-weight:700;

margin-bottom:8px;

}

.counter-card p{

font-size:15px;

color:#777;

}

.counter-card:hover{

transform:translateY(-10px);

background:#fff8f3;

}

/*==================================================
ANIMATIONS
==================================================*/

@keyframes fadeLeft{

from{

opacity:0;

transform:translateX(-80px);

}

to{

opacity:1;

transform:none;

}

}

@keyframes fadeRight{

from{

opacity:0;

transform:translateX(80px);

}

to{

opacity:1;

transform:none;

}

}

/*==============================
REMEDIES SECTION
==============================*/

.remedies-section{
    position:relative;
    padding:100px 0;
    background:#fffaf5;
    overflow:hidden;
}

/* Background Glow */

.remedies-section::before{
    content:"";
    position:absolute;
    width:500px;
    height:500px;
    top:-220px;
    left:-220px;
    background:radial-gradient(circle,#ffe8c5 0%,transparent 70%);
    opacity:.7;
}

.remedies-section::after{
    content:"";
    position:absolute;
    width:450px;
    height:450px;
    bottom:-220px;
    right:-220px;
    background:radial-gradient(circle,#fff2de 0%,transparent 70%);
}

/*==============================
TITLE
==============================*/

.section-title{
    text-align:center;
    margin-bottom:60px;
    position:relative;
    z-index:2;
}

.sub-title{

    /* display:inline-flex; */
    align-items:center;
    gap:10px;

    color:#d68d13;

    font-size:15px;

    font-weight:600;

    margin-bottom:18px;
}

.sub-title img{

    width:18px;

}

.section-title h2{

    font-size:46px;

    font-family:'Playfair Display',serif;

    color:#5d1d07;

    font-weight:700;

    margin-bottom:18px;

}

.section-title p{

    max-width:650px;

    margin:auto;

    color:#666;

    line-height:1.8;

}

/*==============================
LAYOUT
==============================*/

.remedies-wrapper{

    display:grid;

    grid-template-columns:3fr 1fr;

    gap:35px;

    position:relative;

    z-index:2;

}

/*==============================
GRID
==============================*/

.remedies-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:28px;

}

/*==============================
CARD
==============================*/

.remedy-card{

    background:#fff;

    border-radius:22px;

    overflow:hidden;

    border:1px solid #f5e7d7;

    transition:.45s;

    box-shadow:0 15px 40px rgba(0,0,0,.05);

    position:relative;

}

.remedy-card:hover{

    transform:translateY(-12px);

    box-shadow:0 30px 60px rgba(0,0,0,.12);

}

.card-image{

    overflow:hidden;

}

.card-image img{

    width:100%;

    height:170px;

    object-fit:cover;

    transition:.6s;

}

.remedy-card:hover img{

    transform:scale(1.08);

}

.card-body{

    padding:22px;

}

.card-body h4{

    font-size:21px;

    margin-bottom:12px;

    color:#74230a;

    font-weight:700;

}

.card-body p{

    color:#666;

    line-height:1.8;

    font-size:15px;

    margin-bottom:18px;

}

.card-body a{

    color:#b52a09;

    font-weight:600;

    transition:.3s;

}

.card-body a:hover{

    letter-spacing:1px;

}

/*==============================
RIGHT COLUMN
==============================*/

.right-side{

    display:flex;

    flex-direction:column;

    gap:25px;

}

.feature-box{

    background:#fff;

    border-radius:18px;

    padding:22px;

    display:flex;

    gap:18px;

    align-items:flex-start;

    border:1px solid #f1e5d8;

    transition:.4s;

}

.feature-box:hover{

    transform:translateX(8px);

    box-shadow:0 15px 35px rgba(0,0,0,.08);

}

.feature-box .icon{
    width:55px;
    height:43px;
    border-radius:50%;
    background:#fff5e7;
    display:flex;
    align-items:center;
    justify-content:center;
}

.feature-box .icon img{

    width:28px;

}

.feature-box h5{

    font-size:19px;

    color:#6e1f08;

    margin-bottom:8px;

}

.feature-box p{

    color:#777;

    font-size:14px;

    line-height:1.7;

}

/*==============================
TRISHUL CARD
==============================*/

.trishul-card{

    margin-top:10px;

    background:linear-gradient(180deg,#8e1d06,#5e1304);

    border-radius:22px;

    overflow:hidden;

    display:flex;

    align-items:center;

    justify-content:center;

    min-height:350px;

    position:relative;

}

.trishul-card img{

    /* width:70%; */

    transition:.5s;

}

.trishul-card:hover img{

    transform:scale(1.08);

}

/*==============================
ANIMATION
==============================*/

.remedy-card{

    animation:fadeUp .8s ease both;

}

.feature-box{

    animation:fadeLeft .8s ease both;

}

@keyframes fadeUp{

    from{

        opacity:0;
        transform:translateY(50px);

    }

    to{

        opacity:1;
        transform:none;

    }

}

@keyframes fadeLeft{

    from{

        opacity:0;
        transform:translateX(40px);

    }

    to{

        opacity:1;
        transform:none;

    }

}
/*==================================================
ABOUT PANDIT SECTION
==================================================*/

.about-pandit-section{
    position:relative;
    padding:110px 0;
    background:#feedd6;
    overflow:hidden;
}

/* Background Texture */

.about-pandit-section::before{

    content:"";

    position:absolute;

    inset:0;

    /* background:url("./images/bell.png"); */

    opacity:.03;

    pointer-events:none;

}

/*==================================
Temple Background
==================================*/

.temple-bg{

    position:absolute;

    left:0;

    top:0;

    width:280px;

    opacity:.12;

    z-index:1;

}

.temple-bg img{

    width:100%;

}

/*==================================
Hanging Bells
==================================*/

.bells{

    position:absolute;

    left:40px;

    top:0;

    z-index:3;

}

.bells img{

    width:110px;

}

/*==================================
OM Badge
==================================*/

.om-icon{

    position:absolute;

    right:80px;

    top:40px;

    width:72px;

    height:72px;

    background:#f2b546;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    box-shadow:0 15px 40px rgba(242,181,70,.35);

    animation:omFloat 3s ease-in-out infinite;

    z-index:5;

}

.om-icon img{

    width:38px;

}

/*==================================
Content
==================================*/

.about-content{

    position:relative;

    z-index:5;

}

.section-subtitle{

    display:inline-flex;

    align-items:center;

    gap:10px;

    color:#c27b12;

    font-size:15px;

    font-weight:600;

    margin-bottom:18px;

}

.section-subtitle i{

    color:#f3b128;

}

.about-content h2{

    font-family:'Playfair Display',serif;

    font-size:52px;

    line-height:1.15;

    color:#5f1d07;

    margin-bottom:18px;

    font-weight:700;

}

.about-content h2 span{

    display:block;

}

.divider{

    margin-bottom:22px;

}

.divider img{

    width:120px;

}

.about-content p{

    font-size:16px;

    line-height:1.9;

    color:#555;

    margin-bottom:35px;

    max-width:520px;

}

/*==================================
Button
==================================*/

.pandit-btn{

    display:inline-flex;

    align-items:center;

    gap:12px;

    padding:15px 32px;

    background:linear-gradient(135deg,#a01d08,#6b1404);

    color:#fff;

    border-radius:50px;

    font-weight:600;

    transition:.4s;

    box-shadow:0 15px 35px rgba(160,29,8,.28);

}

.pandit-btn:hover{

    color:#fff;

    transform:translateY(-5px);

    box-shadow:0 25px 50px rgba(160,29,8,.4);

}

/*==================================
Image Wrapper
==================================*/

.pandit-image-wrapper{

    position:relative;

    display:flex;

    justify-content:center;

    align-items:center;

}

/*==================================
Golden Shape
==================================*/

.image-shape{

    position:relative;

    width:100%;

    max-width:720px;

    border-radius:80px;

    overflow:hidden;

    border:5px solid #d89b2c;

    box-shadow:0 35px 70px rgba(0,0,0,.15);

}

.image-shape img{

    width:100%;

    display:block;

    transition:.6s;

}

.image-shape:hover img{

    transform:scale(1.08);

}

/*==================================
Decorative Circles
==================================*/

.shape-circle{

    position:absolute;

    border-radius:50%;

    background:rgba(255,204,90,.18);

    animation:floatCircle 5s infinite ease-in-out;

}

.shape-circle.one{

    width:90px;

    height:90px;

    left:-25px;

    top:80px;

}

.shape-circle.two{

    width:60px;

    height:60px;

    right:-15px;

    bottom:90px;

}

/*==================================
Heading Underline
==================================*/

.about-content h2::after{

    content:"";

    display:block;

    width:70px;

    height:4px;

    margin-top:18px;

    border-radius:20px;

    background:linear-gradient(90deg,#f1b542,#8b2106);

}

/*==================================
Animations
==================================*/

@keyframes omFloat{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-10px);

    }

    100%{

        transform:translateY(0);

    }

}

@keyframes floatCircle{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-18px);

    }

    100%{

        transform:translateY(0);

    }

}

/*==================================
Scroll Reveal
==================================*/

.about-content,
.pandit-image-wrapper{

    opacity:1;

    transform:translateY(0);

    transition:.8s;

}

.about-content.show,
.pandit-image-wrapper.show{

    opacity:1;

    transform:translateY(0);

}

.about-content.show,
.pandit-image-wrapper.show{

    opacity:1;

    transform:translateY(0);

}

.pandit-btn{
    position: relative;
    overflow: hidden;
}

.ripple{
    position:absolute;
    width:20px;
    height:20px;
    background:rgba(255,255,255,.4);
    border-radius:50%;
    transform:translate(-50%, -50%) scale(0);
    animation:rippleEffect .6s linear;
    pointer-events:none;
}

@keyframes rippleEffect{

    to{
        transform:translate(-50%, -50%) scale(15);
        opacity:0;
    }

}

/*==================================================
KALSARP GALLERY SECTION
==================================================*/

.kp-gallery-section{
    position:relative;
    padding:90px 0;
    background:linear-gradient(135deg,#4d0b08,#6a120d,#4d0b08);
    overflow:hidden;
}

/* Background Pattern */

.kp-gallery-section::before{

    content:"";

    position:absolute;

    inset:0;

    background:url("../images/pattern.png") repeat;

    opacity:.05;

}

/*==============================
Corner Decoration
==============================*/

.kp-gallery-left{

    position:absolute;

    top:0;
    left:0;
    width:180px;
    opacity:.18;
    pointer-events:none;

}

.kp-gallery-right{

    position:absolute;

    top:0;
    right:0;
    width:180px;
    opacity:.18;
    pointer-events:none;

}

/*==============================
Heading
==============================*/

.kp-gallery-heading{

    text-align:center;

    margin-bottom:50px;

    position:relative;

    z-index:2;

}

.kp-subtitle{

    color:#f3b13d;

    display:inline-flex;

    align-items:center;

    gap:8px;

    font-size:15px;

    font-weight:600;

    margin-bottom:10px;

}

.kp-subtitle i{

    color:#ffc857;

}

.kp-gallery-heading h2{

    color:#fff;

    font-size:46px;

    font-family:'Playfair Display',serif;

    font-weight:700;

    margin:0;

}

/*==============================
Gallery Grid
==============================*/

.kp-gallery-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:18px;

    position:relative;

    z-index:2;

}

/*==============================
Gallery Card
==============================*/

.kp-gallery-item{

    position:relative;

    overflow:hidden;

    border-radius:16px;

    border:2px solid #d69a2d;

    background:#fff;

    cursor:pointer;

    transition:.4s;

    box-shadow:0 12px 25px rgba(0,0,0,.25);

}

.kp-gallery-item:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 45px rgba(0,0,0,.45);

}

.kp-gallery-item{
    position: relative;
    overflow: hidden;
    border-radius: 18px;
    background: #fff;
    min-height: 220px;
}

.kp-gallery-item img{
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
    opacity: 1 !important;
    visibility: visible !important;
    transition: transform .5s ease;
}

.kp-gallery-item:hover img{
    transform: scale(1.08);
}

.kp-gallery-item:hover img{

    transform:scale(1.12);

}

/*==============================
Overlay
==============================*/

.kp-overlay{

    position:absolute;

    inset:0;

    display:flex;

    justify-content:center;

    align-items:center;

    background:rgba(90,18,10,.55);

    opacity:0;
color:#fff;
    transition:.4s;

}

.kp-gallery-item:hover .kp-overlay{

    opacity:1;

}

.kp-overlay i{

    width:58px;

    height:58px;

    background:#f2b545;

    color:#5b1408;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:20px;

    transform:scale(.5);

    transition:.35s;

}

.kp-gallery-item:hover .kp-overlay i{

    transform:scale(1);

}

/*==============================
Button
==============================*/

.kp-gallery-btn{

    margin-top:45px;

    text-align:center;

}

.kp-btn{

    display:inline-flex;

    align-items:center;

    gap:12px;

    padding:15px 40px;

    border-radius:50px;

    background:linear-gradient(135deg,#f3b13d,#d78d19);

    color:#5d1509;

    font-weight:700;

    transition:.35s;

    box-shadow:0 15px 35px rgba(243,177,61,.35);

}

.kp-btn:hover{

    color:#5d1509;

    transform:translateY(-5px);

    box-shadow:0 25px 45px rgba(243,177,61,.45);

}

/*==============================
Hover Shine
==============================*/

.kp-gallery-item::before{

    content:"";

    position:absolute;

    top:0;

    left:-120%;

    width:60%;

    height:100%;

    background:linear-gradient(

        90deg,

        transparent,

        rgba(255,255,255,.45),

        transparent

    );

    transform:skewX(-25deg);

    transition:.9s;

    z-index:2;

}

.kp-gallery-item:hover::before{

    left:150%;

}

/*==============================
Reveal Animation
==============================*/

.kp-gallery-item{

    /* opacity:0; */

    transform:translateY(10px);

    transition:all .7s ease;

}

.kp-gallery-item.show{

    opacity:1;

    transform:translateY(0);

}

/*==============================
Button Animation
==============================*/

.kp-btn{

    position:relative;

    overflow:hidden;

}

.kp-btn::before{

    content:"";

    position:absolute;

    width:0;

    height:100%;

    left:0;

    top:0;

    background:rgba(255,255,255,.18);

    transition:.45s;

}

.kp-btn:hover::before{

    width:100%;

}

/*==============================
Ripple Effect
==============================*/

.kp-btn{

    position:relative;

    overflow:hidden;

}

.kp-ripple{

    position:absolute;

    width:20px;

    height:20px;

    background:rgba(255,255,255,.45);

    border-radius:50%;

    transform:translate(-50%, -50%) scale(0);

    animation:kpRipple .6s linear;

    pointer-events:none;

}

@keyframes kpRipple{

    to{

        transform:translate(-50%, -50%) scale(18);

        opacity:0;

    }

}

/*==============================
Image Fade
==============================*/

.kp-gallery-item img{

    opacity:1;

    transition:opacity .6s ease;

}

.kp-gallery-item img.loaded{

    opacity:1;

}

.faq-section{
    background:#fff8f3;
    position:relative;
    overflow:hidden;
}

.faq-bg{
    position:absolute;
    right:0;
    bottom:0;
    opacity:.12;
}

.faq-bg img{
    width:300px;
}

.custom-accordion .accordion-item{
    border:none;
    border-radius:12px;
    margin-bottom:15px;
    overflow:hidden;
    box-shadow:0 5px 15px rgba(0,0,0,.08);
}

.custom-accordion .accordion-button{
    background:#fff;
    box-shadow:none;
    display:flex;
    align-items:flex-start;
    gap:15px;
    padding:18px 20px;
}

.custom-accordion .accordion-button:not(.collapsed){
    background:#fff;
    color:#000;
}

.custom-accordion .accordion-button::after{
    background-image:none;
    content:"\f105";
    font-family:"Font Awesome 6 Free";
    font-weight:900;
    transition:.3s;
}

.custom-accordion .accordion-button:not(.collapsed)::after{
    transform:rotate(90deg);
}

.faq-icon{
    width:50px;
    height:50px;
    background:#fff5e8;
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    flex-shrink:0;
}

.faq-icon img{
    width:40px;
}

.accordion-button h6{
    font-weight:700;
    margin-bottom:5px;
    color:#5b3511;
}

.accordion-button p{
    margin:0;
    color:#666;
    font-size:14px;
}

.accordion-body{
    padding:20px 80px;
    color:#666;
}

@media(max-width:768px){

.accordion-body{
    padding:15px 20px;
}

.faq-bg{
    display:none;
}

.accordion-button h6{
    font-size:16px;
}

.accordion-button p{
    font-size:13px;
}

}

.guru-section{

background:#fff8f2;
position:relative;
overflow:hidden;
}

.guru-section::before{

content:"";
position:absolute;
left:0;
top:0;
width:100%;
height:100%;

background:
radial-gradient(circle at left,#f5dcc6 0%,transparent 55%);

opacity:.6;
}

.guru-image{

position:relative;
display:inline-block;
border-radius:18px;
overflow:hidden;
transition:.4s;
}

.guru-image img{
border-radius:18px;
/* border:3px solid #c78824; */
transition:.5s;
}

.guru-image:hover{

transform:translateY(-8px);
}

.guru-image:hover img{

transform:scale(1.05);
}

.guru-content{

position:relative;
z-index:2;
}

.guru-content h2{

font-size:38px;
font-weight:700;
color:#4b2410;
font-family:Georgia, serif;
margin-bottom:8px;
}

.guru-content h4{

font-size:24px;
font-weight:600;
color:#b14d14;
margin-bottom:18px;
}

.divider{

display:flex;
align-items:center;
margin-bottom:20px;
}

.divider span{

height:2px;
width:70px;
background:#d4a04f;
}

.divider img{

width:32px;
margin:0 12px;
}

.guru-content p{

font-size:16px;
line-height:1.8;
color:#555;
margin-bottom:12px;
}

@media(max-width:992px){

.guru-content{
text-align:center;
}

.divider{
justify-content:center;
}

.guru-content h2{
font-size:30px;
}

.guru-content h4{
font-size:20px;
}

}

@media(max-width:576px){

.guru-content h2{
font-size:24px;
}

.guru-content h4{
font-size:18px;
}

.guru-content p{
font-size:14px;
line-height:1.7;
}

.divider span{
width:45px;
}

.divider img{
width:24px;
}

}


/*==================================================
CONTACT SECTION
==================================================*/

.contact-section{
    position: relative;
    padding: 100px 0;
    background: linear-gradient(135deg,#4b0d0d,#6e1212,#4b0d0d);
    overflow: hidden;
}

/* Background Pattern */

.contact-section::before{
    content: "";
    position: absolute;
    inset: 0;
    background: url("../images/pattern.png") repeat;
    opacity: .05;
}

/* Decorative Shapes */

.contact-shape{
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    z-index: 0;
}

.shape-1{
    width: 320px;
    height: 320px;
    background: rgba(255,184,61,.15);
    top: -120px;
    left: -120px;
}

.shape-2{
    width: 280px;
    height: 280px;
    background: rgba(255,184,61,.12);
    bottom: -100px;
    right: -100px;
}

/* Container */

.contact-section .container{
    position: relative;
    z-index: 2;
}

/*=========================
Heading
=========================*/

.section-title{
    margin-bottom: 50px;
}

.sub-title{
    /* display: inline-flex; */
    align-items: center;
    gap: 8px;
    color: #f8c04d;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 15px;
}

.sub-title i{
    font-size: 18px;
}

.section-title h2{
    font-size: 48px;
    color: #fff;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 20px;
}

.section-title h2 span{
    color: #f8c04d;
}

.section-title p{
    color: rgba(255,255,255,.75);
    font-size: 16px;
    max-width: 650px;
    margin: auto;
    line-height: 1.8;
}

/*=========================
Contact Info Card
=========================*/

.contact-info{
    background: rgba(255,255,255,.06);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 25px;
    padding: 40px;
}

.info-box{
    display: flex;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 30px;
}

.info-box:last-child{
    margin-bottom: 0;
}

.info-box .icon{
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: linear-gradient(135deg,#ffca62,#d99620);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #5b1207;
    font-size: 22px;
    flex-shrink: 0;
    transition: .4s;
}

.info-box:hover .icon{
    transform: rotate(360deg);
}

.info-box h5{
    color: #fff;
    margin-bottom: 8px;
    font-size: 20px;
}

.info-box p,
.info-box a{
    color: rgba(255,255,255,.75);
    text-decoration: none;
    line-height: 1.8;
    transition: .3s;
}

.info-box a:hover{
    color: #ffc54a;
}

/*=========================
Social Icons
=========================*/

.social-icons{
    display: flex;
    gap: 12px;
    margin-top: 35px;
}

.social-icons a{
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background: rgba(255,255,255,.08);
    color: #ffc54a;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: .35s;
}

.social-icons a:hover{
    background: #ffc54a;
    color: #5b1207;
    transform: translateY(-5px);
}

/*=========================
Contact Form
=========================*/

.contact-form{
    background: #fff;
    border-radius: 25px;
    padding: 45px;
    box-shadow: 0 25px 60px rgba(0,0,0,.25);
}

.contact-form .form-control{
    height: 58px;
    border-radius: 12px;
    border: 1px solid #ddd;
    padding: 0 18px;
    box-shadow: none;
    transition: .3s;
}

.contact-form textarea.form-control{
    height: 160px;
    padding-top: 15px;
    resize: none;
}

.contact-form .form-control:focus{
    border-color: #d89a2c;
    box-shadow: 0 0 0 4px rgba(216,154,44,.15);
}

/*=========================
Button
=========================*/

.contact-btn{
    border: none;
    padding: 15px 38px;
    border-radius: 50px;
    background: linear-gradient(135deg,#8a1708,#5d1006);
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    transition: .35s;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    overflow: hidden;
    position: relative;
}

.contact-btn:hover{
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(138,23,8,.35);
}

.contact-btn::before{
    content: "";
    position: absolute;
    width: 0;
    height: 100%;
    left: 0;
    top: 0;
    background: rgba(255,255,255,.15);
    transition: .4s;
}

.contact-btn:hover::before{
    width: 100%;
}

/*=========================
Reveal Animation
=========================*/

.contact-info,
.contact-form{
     opacity: 1 !important;
    transform: translateY(0) !important;
}

.contact-info.show,
.contact-form.show{
    opacity: 1;
    transform: translateY(0);
}

/*=========================
Floating Animation
=========================*/

@keyframes floating{

    0%{
        transform: translateY(0);
    }

    50%{
        transform: translateY(-10px);
    }

    100%{
        transform: translateY(0);
    }

}

.contact-shape{
    animation: floating 5s ease-in-out infinite;
}

/* MAIN FOOTER */
.unique-footer{
    position: relative;
    color: #fff;
    padding: 90px 20px 20px;
    overflow: hidden;

    /* 🔥 BACKGROUND IMAGE */
    background: url("https://images.unsplash.com/photo-1521737604893-d14cc237f11d") no-repeat center/cover;
}

/* DARK OVERLAY */
.footer-overlay{
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.75);
    z-index: 1;
}

/* WAVE TOP */
.footer-wave{
    position: absolute;
    top: -60px;
    left: 0;
    width: 200%;
    height: 120px;
    background: url("https://svgshare.com/i/12kA.svg");
    background-size: cover;
    opacity: 0.25;
    animation: waveMove 10s linear infinite;
    z-index: 2;
}

@keyframes waveMove{
    0%{ transform: translateX(0); }
    100%{ transform: translateX(-50%); }
}

/* CONTAINER */
.footer-container{
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 30px;
}

/* GLASS BOX */
.footer-box{
    background: rgba(255,255,255,0.06);
    backdrop-filter: blur(10px);
    padding: 25px;
    border-radius: 18px;

    transform: translateY(40px);
    opacity: 0;
    animation: fadeUp 1s forwards;
}

.footer-box:nth-child(1){ animation-delay: 0.2s; }
.footer-box:nth-child(2){ animation-delay: 0.4s; }
.footer-box:nth-child(3){ animation-delay: 0.6s; }
.footer-box:nth-child(4){ animation-delay: 0.8s; }

@keyframes fadeUp{
    to{
        transform: translateY(0);
        opacity: 1;
    }
}

/* TITLE */
.footer-box h3{
    color: #f8c04d;
    margin-bottom: 12px;
}

/* LINKS */
.footer-box ul{
    list-style: none;
    padding: 0;
}

.footer-box ul li{
    margin-bottom: 8px;
}

.footer-box ul li a{
    color: rgba(255,255,255,0.7);
    text-decoration: none;
    transition: 0.3s;
}

.footer-box ul li a:hover{
    color: #f8c04d;
    padding-left: 6px;
}

/* SOCIAL */
.social{
    display: flex;
    gap: 10px;
}

.social a{
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.1);
    color: #f8c04d;
    transition: 0.4s;
    position: relative;
    overflow: hidden;
}

.social a::before{
    content: "";
    position: absolute;
    width: 0;
    height: 100%;
    background: #f8c04d;
    left: 0;
    top: 0;
    transition: 0.4s;
}

.social a:hover::before{
    width: 100%;
}

.social a:hover{
    color: #000;
    transform: translateY(-6px);
}

/* BOTTOM */
.footer-bottom{
    position: relative;
    z-index: 3;
    text-align: center;
    margin-top: 50px;
    padding-top: 15px;
    border-top: 1px solid rgba(255,255,255,0.2);
    color: rgba(255,255,255,0.7);
}

/* RESPONSIVE */
@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;
    }
}

.whatsapp-float{
    position: fixed;
    bottom: 25px;
    right: 25px;
    width: 60px;
    height: 60px;
    background: #25D366;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    text-decoration: none;
    box-shadow: 0 10px 25px rgba(0,0,0,0.25);
    z-index: 9999;
    animation: pulse 1.8s infinite;
    transition: 0.3s;
}

/* Hover effect */
.whatsapp-float:hover{
    transform: scale(1.1) rotate(5deg);
    background: #20ba5a;
}

/* Pulse animation */
@keyframes pulse{
    0%{
        box-shadow: 0 0 0 0 rgba(37,211,102,0.6);
    }
    70%{
        box-shadow: 0 0 0 20px rgba(37,211,102,0);
    }
    100%{
        box-shadow: 0 0 0 0 rgba(37,211,102,0);
    }
}

/* Tooltip */
.tooltip{
    position: absolute;
    right: 75px;
    background: #111;
    color: #fff;
    padding: 6px 10px;
    border-radius: 6px;
    font-size: 12px;
    opacity: 0;
    transform: translateX(10px);
    transition: 0.3s;
    white-space: nowrap;
}

.whatsapp-float:hover .tooltip{
    opacity: 1;
    transform: translateX(0);
}

/* Mobile adjustment */
@media(max-width: 600px){
    .whatsapp-float{
        width: 55px;
        height: 55px;
        font-size: 24px;
        bottom: 18px;
        right: 18px;
    }
}

/*=========================
FOOTER
=========================*/

.vm-footer{

    position:relative;

    background:url("images/footer-bg.jpg") center center/cover no-repeat;

    padding:90px 0 25px;

    overflow:hidden;

}
.footer-logo{      
    /* width:150px; */
    margin-bottom:20px;
    display:flex;
    justify-content:center;
    align-items: center;
}    
.footer-logo img{
       width: 100px;
    border-radius: 50px;
}   
/* Overlay */

.vm-footer-overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(rgba(60,0,0,.88),
    rgba(95,10,10,.94));

}

/* Floating circles */

.vm-footer-pattern span{

    position:absolute;

    width:180px;

    height:180px;

    border-radius:50%;

    background:rgba(255,255,255,.04);

    animation:float 12s infinite linear;

}

.vm-footer-pattern span:nth-child(1){

    top:10%;

    left:5%;

}

.vm-footer-pattern span:nth-child(2){

    right:5%;

    top:15%;

}

.vm-footer-pattern span:nth-child(3){

    bottom:10%;

    left:30%;

}

.vm-footer-pattern span:nth-child(4){

    bottom:5%;

    right:25%;

}

@keyframes float{

0%{

transform:translateY(0) rotate(0);

}

50%{

transform:translateY(-35px) rotate(180deg);

}

100%{

transform:translateY(0) rotate(360deg);

}

}

/* Container */

.vm-footer .container{

    position:relative;

    z-index:2;

    /* max-width:1200px; */

    margin:auto;

    padding:0 20px;

}

/* Grid */

.vm-footer-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:40px;

}

.vm-footer-box{

    color:#fff;

}

.vm-footer-box h2{

    font-size:32px;

    color:#ffd27d;

    margin-bottom:18px;

}

.vm-footer-box h3{

    color:#ffd27d;

    margin-bottom:20px;

    position:relative;

}

.vm-footer-box h3::after{

    content:"";

    width:55px;

    height:3px;

    background:#ffd27d;

    position:absolute;

    left:0;

    bottom:-8px;

}

.vm-footer-box p{

    line-height:1.8;

    color:#ddd;

}

/* Links */

.vm-footer-box ul{
padding-left: 10px;
    list-style:none;
}

.vm-footer-box ul li{

    margin:15px 0;

    color:#ddd;

}

.vm-footer-box ul li a{

    color:#ddd;

    text-decoration:none;

    transition:.4s;

}

.vm-footer-box ul li a:hover{

    color:#ffd27d;

    padding-left:8px;

}

/* Social */

.vm-social{

    display:flex;

    gap:15px;

    margin-top:25px;

}

.vm-social a{

    width:45px;

    height:45px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(255,255,255,.1);

    color:#fff;

    transition:.4s;

}

.vm-social a:hover{

    background:#ffd27d;

    color:#5e0505;

    transform:translateY(-8px);

}

/* Form */

.vm-footer-box form{

    display:flex;

    flex-direction:column;

    gap:15px;

}

.vm-footer-box input{

    height:50px;

    border:none;

    padding:0 18px;

    border-radius:40px;

    outline:none;

}

.vm-footer-box button{

    height:50px;

    border:none;

    border-radius:40px;

    background:#ffd27d;

    font-weight:bold;

    cursor:pointer;

    transition:.4s;

}

.vm-footer-box button:hover{

    background:#fff;

    transform:translateY(-4px);

}

/* Bottom */

.vm-footer-bottom{

    text-align:center;

    margin-top:60px;

    padding-top:30px;

    border-top:1px solid rgba(255,255,255,.15);

    color:#ddd;

}