*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

body{
background:#f8f8f8;
color:#222;
line-height:1.6;
}

nav ul{
display:flex;
gap:20px;
list-style:none;
}

nav a{
text-decoration:none;
color:#333;
font-weight:500;
}

#langToggle{
background:#ff6f00;
color:white;
border:none;
padding:10px 15px;
border-radius:6px;
cursor:pointer;
}

.hero{
height:85vh;
background:
linear-gradient(
rgba(0,0,0,.55),
rgba(0,0,0,.55)
),
url('../images/temple1.png');

background-size:cover;
background-position:center;
display:flex;
justify-content:center;
align-items:center;
text-align:center;
color:white;
}

.hero h2{
    font-size:3.5rem;
    font-weight:700;
    color:#ffffff;

    text-shadow:
    -2px -2px 0 #ffffff,
     2px -2px 0 #ffffff,
    -2px  2px 0 #ffffff,
     2px  2px 0 #ffffff,
     0px  0px 15px rgba(255,255,255,0.7),
     3px  3px 10px rgba(0,0,0,0.8);

    letter-spacing:2px;
}

.hero p{
margin-top:15px;
font-size:1.2rem;
}

.btn{
display:inline-block;
margin-top:25px;
background:#ff6f00;
color:white;
padding:12px 30px;
text-decoration:none;
border-radius:8px;
}

section{
padding:50px 6%;
}

section h2{
text-align:center;
margin-bottom:30px;
}

.card{
background:white;
padding:25px;
border-radius:15px;
box-shadow:0 5px 15px rgba(0,0,0,.1);
}

.gallery{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:15px;
}

.gallery img{
width:100%;
height:300px;
object-fit:cover;
border-radius:12px;
cursor:pointer;
transition:.3s;
}

.gallery img:hover{
transform:scale(1.03);
}

.map-container iframe{
width:100%;
height:450px;
border:0;
border-radius:15px;
}

footer{
background:linear-gradient(135deg,#111,#1a1a1a);
color:white;
text-align:center;
padding:25px 15px;
}

.footer-logo{
height:60px;
width:auto;
margin-bottom:12px;
}

footer h3{
font-size:24px;
font-weight:600;
color:#ff9933;
margin-bottom:10px;
}

footer p{
font-size:14px;
color:#ddd;
line-height:1.7;
margin:5px 0;
}

.footer-divider{
width:120px;
height:2px;
background:#ff9933;
margin:15px auto;
border-radius:10px;
}

footer p:last-child{
font-size:13px;
color:#999;
margin-top:10px;
}

@media(max-width:768px){

footer{
padding:20px 10px;
}

.footer-logo{
height:50px;
}

footer h3{
font-size:20px;
}

footer p{
font-size:13px;
}

}

.footer-logo{
height:60px;
width:auto;
margin-bottom:12px;
filter:drop-shadow(0 0 8px rgba(255,153,51,.4));
}

.mahadev-footer{
font-size:18px;
font-weight:600;
color:#ff9933;
letter-spacing:1px;
}

.footer-domain{
font-size:13px;
color:#aaa;
margin-top:10px;
}

.hidden{
display:none;
}

@media(max-width:768px){

header{
flex-direction:column;
gap:15px;
}

nav ul{
flex-wrap:wrap;
justify-content:center;
}

.hero h2{
font-size:2rem;
}
}
.logo{
    display:flex;
    align-items:center;
}

.logo img{
    height:80px;
    width:auto;
}

@media(max-width:768px){

.logo img{
    height:55px;
}

}

.footer-logo{
height:120px;
margin-bottom:20px;
}

.status-box{
display:flex;
gap:15px;
justify-content:center;
margin-top:25px;
flex-wrap:wrap;
}

.status{
background:rgba(255,255,255,.15);
backdrop-filter:blur(8px);
padding:10px 18px;
border-radius:10px;
font-weight:600;
}

.quote-section{
    padding:40px 6%;
}

.quote-box{
    max-width:1000px;
    margin:auto;
    text-align:center;
    background:white;
    padding:35px;
    border-radius:20px;
    box-shadow:0 8px 25px rgba(0,0,0,.08);
}

.quote-icon{
    font-size:50px;
    margin-bottom:15px;
}

.quote-en{
    font-size:28px;
    color:#8B0000;
    font-style:italic;
}

.quote-bn{
    font-size:22px;
}

.quote-sign{
    margin-top:15px;
    font-weight:600;
    color:#c45c00;
}
.blessings-list{
    margin-top:20px;
    margin-left:20px;
    line-height:2;
    font-size:18px;
}

.blessings-list li{
    margin-bottom:10px;
}

.mahadev-ending{
    text-align:center;
    font-size:28px;
    font-weight:700;
    color:#c45c00;
    margin-top:40px;
}

.story{
    max-width:1000px;
    margin:0 auto;
    background:white;
    padding:35px;
    border-radius:20px;
    box-shadow:0 8px 25px rgba(0,0,0,.08);
    line-height:1.8;
}

.story h2{
    text-align:center;
    color:#c45c00;
    margin-bottom:20px;
}

.story h3{
    color:#8B0000;
    margin:20px 0 10px;
}

.story p{
    font-size:17px;
    margin-bottom:15px;
    text-align:justify;
}

.story blockquote{
    background:#fff5e8;
    border-left:5px solid #c45c00;
    padding:20px;
    margin:20px 0;
    border-radius:10px;
    font-style:italic;
}

@media(max-width:768px){

.story{
padding:25px;
}

.story p{
font-size:16px;
}

}
.blessings-list{
    margin-left:25px;
    line-height:2;
}

#mantras{
padding:50px 6%;
background:#faf7f2;
}

#mantras h2{
    text-align:center;
    margin-bottom:50px;
    color:#c45c00;
    font-size:38px;
}

.mantra-container{
   max-width:1200px;
   margin:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:30px;
}

.mantra-card{
    background:white;
    padding:25px;
    border-radius:20px;
    text-align:center;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
    transition:.3s;
}

.mantra-card:hover{
    transform:translateY(-8px);
}

.mantra-icon{
    font-size:50px;
    margin-bottom:15px;
}

.mantra-card h3{
    color:#8B0000;
    margin-bottom:20px;
}

.sanskrit{
    background:#fff4e8;
    padding:20px;
    border-radius:15px;
    margin-bottom:20px;
    font-size:24px;
    line-height:1.8;
    color:#5a2d0c;
    font-weight:600;
}

.mantra-card p{
    line-height:1.8;
    color:#555;
    font-size:16px;
}

@media(max-width:768px){

#mantras h2{
    font-size:30px;
}

.sanskrit{
    font-size:20px;
}

}

.mantra-quote{
    text-align:center;
    font-size:22px;
    font-style:italic;
    color:#8B0000;
    margin-bottom:40px;
}

#visit{
padding:50px 6%;
background:#fafafa;
}

#visit h2{
    text-align:center;
    font-size:38px;
    color:#c45c00;
    margin-bottom:50px;
}

.visitor-container{
    max-width:auto;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:30px;
}

.visitor-card{
    background:white;
    padding:25px;
    border-radius:20px;
    text-align:center;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
    transition:.3s;
}

.visitor-card:hover{
    transform:translateY(-8px);
}

.visitor-icon{
    font-size:50px;
    margin-bottom:15px;
}

.visitor-card h3{
    color:#8B0000;
    margin-bottom:15px;
}

.visitor-card p{
    line-height:1.8;
    color:#555;
}

.visit-list{
    text-align:left;
    line-height:2;
    margin-top:15px;
    padding-left:20px;
}

.visit-list li{
    margin-bottom:10px;
}

@media(max-width:768px){

#visit h2{
    font-size:30px;
}

.visitor-card{
    padding:25px;
}

}

.visitor-quote{
    text-align:center;
    font-size:22px;
    color:#8B0000;
    margin-bottom:40px;
    font-style:italic;
}

header{
position:sticky;
top:0;
z-index:1000;
background:rgba(255,255,255,.96);
backdrop-filter:blur(10px);
box-shadow:0 2px 15px rgba(0,0,0,.08);
padding:10px 6%;
}

.header-container{
max-width:1200px;
margin:auto;
display:flex;
justify-content:space-between;
align-items:center;
}

.logo{
display:flex;
align-items:center;
gap:12px;
}

.logo img{
height:60px;
width:auto;
}

.logo-text h1{
font-size:24px;
color:#8B0000;
margin:0;
}

.logo-text span{
font-size:12px;
color:#c45c00;
}

nav ul{
display:flex;
gap:20px;
list-style:none;
}

nav a{
text-decoration:none;
color:#333;
font-weight:600;
}

nav a:hover{
color:#c45c00;
}

.menu-toggle{
display:none;
}

@media(max-width:768px){

.header-container{
flex-wrap:wrap;
}

.logo img{
height:50px;
}

.logo-text h1{
font-size:18px;
}

.logo-text span{
display:none;
}

.menu-toggle{
display:block;
font-size:28px;
background:none;
border:none;
cursor:pointer;
}

nav{
display:none;
width:100%;
margin-top:10px;
}

nav.active{
display:block;
}

nav ul{
flex-direction:column;
text-align:center;
gap:10px;
padding:10px 0;
}

#langToggle{
margin-top:10px;
}

.hero{
min-height:70vh;
}

.hero h2{
font-size:2.4rem;
}

.quote-en{
font-size:22px;
}

.quote-bn{
font-size:18px;
}

}

html{
scroll-behavior:smooth;
}

section h2{
color:#8B0000;
font-size:36px;
margin-bottom:25px;
}

.card,
.mantra-card,
.visitor-card,
.story,
.quote-box{
transition:.3s;
}

.card:hover,
.mantra-card:hover,
.visitor-card:hover,
.story:hover{
transform:translateY(-3px);
}
.top-bar{
    background:#8B0000;
    color:white;
    text-align:center;
    padding:8px;
    font-size:14px;
}
.lightbox{
    display:none;
    position:fixed;
    z-index:9999;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,.95);
    justify-content:center;
    align-items:center;
    padding:20px;
}

.lightbox img{
    max-width:95%;
    max-height:90%;
    border-radius:12px;
}

.close-lightbox{
    position:absolute;
    top:20px;
    right:35px;
    color:white;
    font-size:40px;
    cursor:pointer;
    font-weight:bold;
}
#backToTop{
    position:fixed;
    bottom:25px;
    right:25px;

    width:55px;
    height:55px;

    border:none;
    border-radius:50%;

    background:#c45c00;
    color:white;

    font-size:24px;

    cursor:pointer;

    display:none;

    z-index:999;

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

    transition:.3s;
}

#backToTop:hover{
    transform:translateY(-5px);
}

@media(max-width:768px){

#backToTop{
    width:50px;
    height:50px;
    font-size:20px;
}

}

#dailyQuote{
    padding:60px 6%;
    background:linear-gradient(135deg,#fff8f0,#fffdf8);
}

.quote-card{
    max-width:900px;
    margin:auto;
    padding:50px 40px;

    background:white;

    border-radius:25px;

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

    text-align:center;

    position:relative;

    overflow:hidden;
}

.quote-card::before{
    content:"🕉️";
    position:absolute;
    top:15px;
    left:25px;
    font-size:40px;
    opacity:.15;
}

.quote-card::after{
    content:"🔱";
    position:absolute;
    bottom:15px;
    right:25px;
    font-size:40px;
    opacity:.15;
}

#quoteTextEn,
#quoteTextBn{
    font-size:30px;
    line-height:1.8;
    color:#8B0000;
    font-style:italic;
    font-weight:600;
}

.quote-author{
    margin-top:25px;
    color:#c45c00;
    font-weight:700;
    font-size:18px;
    letter-spacing:1px;
}

@media(max-width:768px){

#quoteTextEn,
#quoteTextBn{
    font-size:22px;
    line-height:1.7;
}

.quote-card{
    padding:35px 25px;
}

}

#festivals{
background:#faf7f2;
padding:80px 10%;
}

#festivals h2{
text-align:center;
font-size:38px;
color:#c45c00;
margin-bottom:15px;
}

.festival-subtitle{
text-align:center;
max-width:800px;
margin:0 auto 40px auto;
color:#666;
font-size:17px;
}

.festival-container{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:25px;
}

.festival-card{
background:white;
padding:30px;
border-radius:20px;
text-align:center;
box-shadow:0 10px 30px rgba(0,0,0,.08);
transition:.3s;
}

.festival-card:hover{
transform:translateY(-8px);
}

.festival-icon{
font-size:50px;
margin-bottom:15px;
}

.festival-card h3{
color:#8B0000;
margin-bottom:15px;
font-size:22px;
}

.festival-card p{
color:#555;
line-height:1.8;
}

.festival-quote{
text-align:center;
margin-top:50px;
font-size:22px;
font-style:italic;
color:#c45c00;
font-weight:600;
}

@media(max-width:768px){

#festivals{
padding:60px 20px;
}

#festivals h2{
font-size:30px;
}

.festival-card{
padding:25px;
}

.festival-quote{
font-size:18px;
}

}

#temple-bell{
padding:80px 10%;
background:linear-gradient(135deg,#fff8f0,#fff);
}

.bell-container{
max-width:1200px;
margin:auto;
text-align:center;
background:white;
padding:50px 30px;
border-radius:20px;
box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.bell-icon{
font-size:70px;
margin-bottom:20px;
animation:swing 3s infinite;
}

@keyframes swing{
0%{transform:rotate(0deg);}
25%{transform:rotate(12deg);}
50%{transform:rotate(0deg);}
75%{transform:rotate(-12deg);}
100%{transform:rotate(0deg);}
}

.bell-container h2{
color:#8B0000;
margin-bottom:15px;
}

.bell-container p{
color:#555;
line-height:1.8;
margin-bottom:20px;
}

#bellBtn{
background:#c45c00;
color:white;
border:none;
padding:15px 30px;
font-size:18px;
font-weight:600;
border-radius:12px;
cursor:pointer;
transition:.3s;
}

#bellBtn:hover{
transform:translateY(-3px);
background:#a94d00;
}

#blessingMessage{
margin-top:25px;
font-size:20px;
font-weight:600;
color:#8B0000;
}

@media(max-width:768px){

.bell-icon{
font-size:55px;
}

#bellBtn{
width:100%;
font-size:16px;
}

#blessingMessage{
font-size:17px;
}

}
