/* ================= GLOBAL ================= */
body {
    margin: 0;
    font-family: 'Noto Serif Kannada', serif;
    background: url("images/back.jpg") no-repeat center center fixed;
    background-size: cover;
    color: #3e2a14;
}

.section p{
    text-align:justify;
}

/* ================= NAVBAR ================= */
.navbar {
    background: #ffffff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 40px;
    border-bottom: 2px solid #e0c9a6;
    position: sticky;
    top: 0;
    z-index: 100;
}

/* ===== LOGO IMAGE FIX ===== */
.logo {
    display: flex;
    align-items: center;
    max-height: 60px;
}

.logo img {
    height: 92px;
    max-height: 94px;
    width: auto;
    object-fit: contain;
}

/* ================= MENU ================= */
.navbar ul {
    list-style: none;
    display: flex;
    gap: 28px;
    margin: 0;
    padding: 0;
}

.navbar ul li a {
    text-decoration: none;
    color: #333;
    font-size: 17px;
}

.navbar ul li a:hover {
    color: #6b3f1d;
}

/* ================= LANGUAGE ================= */
.lang-select {
    padding: 6px 10px;
    font-size: 18px;
}

/* ================= TITLE ================= */
.title-bar {
    background: #6b3f1d;
    padding: 14px 0;
}

.main-title {
    text-align: center;
    font-size: 34px;
    color: #f5e6c8;
    font-weight: bold;
}

/* ================= TAGLINE ================= */
.tagline-wrapper {
    background: #f5e6c8;
    overflow: hidden;
    padding: 6px 0;
}

.tagline-track {
    display: flex;
    width: max-content;
    animation: scrollTagline 22s linear infinite;
}

.tagline-track span {
    color: #6b3f1d;
    padding-right: 80px;
    font-size: 18px;
}

@keyframes scrollTagline {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

/* ================= HERO ================= */
.hero {
    height: 70vh;
    display: flex;
    justify-content: center;
    align-items: center;
}

.hero-card {
    background: rgba(255, 248, 230, 0.95);
    padding: 40px;
    border-radius: 14px;
    text-align: center;
    max-width: 700px;
}

/* ================= SECTION ================= */
.section {
    background: rgba(255, 248, 230, 0.92);
    margin: 80px auto;
    padding: 40px;
    width: 85%;
    border-radius: 14px;
    box-shadow: 0 8px 30px rgba(0,0,0,0.25);
}

.section h2 {
    margin-top: 0;
    font-size: 28px;
}

/* ================= CONTACT ================= */

.contact-box {
    padding: 20px 0;
    max-width: 1200px;
    margin: auto;
}

.contact-row {
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 18px;
    margin-bottom: 22px;
}

.contact-row a {
    color: #6a3dbf;
    text-decoration: none;
}

.contact-row a:hover {
    color: #4b2c91;
}

#contact::before {
    content: "";
    position: absolute;
    left: 0;
    top: 20%;
    height: 60%;
    width: 6px;
    background: linear-gradient(to bottom, #c29a5b, #8b5e34);
    border-radius: 4px;
}

/* ================= CALL BUTTON ================= */

.call-float {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 52px;
    height: 52px;
    background: #ffffff;
    color: #000000;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    text-decoration: none;
    box-shadow: 0 6px 18px rgba(0,0,0,0.25);
    z-index: 9999;
}

/* ================= FINAL GALLERY FIX ================= */

#gallery .gallery{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:36px;
}

#gallery .gallery-item{
    height:460px;
    border:2px solid #d8c29a;
    border-radius:22px;
    background:#e0c9a6;
    padding:15px;
    box-sizing:border-box;
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
}

/* IMAGE (UPDATED FOR UNIFORM SPACE) */
#gallery .gallery-item img{
    max-width:90%;
    max-height:90%;
    object-fit:contain;
    display:block;
}

/* CAPTION */
#gallery .caption{
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    background:rgba(0,0,0,0.65);
    color:#fff;
    text-align:center;
    padding:12px;
    font-size:18px;
    opacity:0;
    transform:translateY(20px);
    transition:0.3s;
}

#gallery .gallery-item:hover .caption{
    opacity:1;
    transform:translateY(0);
}

/* MOBILE */
@media(max-width:900px){
#gallery .gallery{
grid-template-columns:1fr;
}

#gallery .gallery-item{
height:380px;
}
}

/* ================= HERO ANIMATION ================= */

.hero-card {
    animation: heroFade 1.2s ease forwards;
}

@keyframes heroFade {
    from {
        opacity: 0;
        transform: translateY(40px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* ===== Scroll Reveal Effect ===== */

.section{
    opacity:0;
    transform:translateY(60px);
    transition:all 0.8s ease;
}

.section.show{
    opacity:1;
    transform:translateY(0);
}
/* ================= CONTACT ================= */

.contact-box {
    padding: 20px 0;
    max-width: 1200px;
    margin: auto;

    /* ADD THIS */
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 60px;
}

.contact-row {
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 18px;
    margin-bottom: 22px;
}

.contact-row a {
    color: #6a3dbf;
    text-decoration: none;
}

.contact-row a:hover {
    color: #4b2c91;
}

#contact::before {
    content: "";
    position: absolute;
    left: 0;
    top: 20%;
    height: 60%;
    width: 6px;
    background: linear-gradient(to bottom, #c29a5b, #8b5e34);
    border-radius: 4px;
}

/* NEW: keep address spanning full width if needed */
.contact-address {
    grid-column: span 2;
    align-items: flex-start;
}

/* MOBILE VIEW */
@media (max-width:768px){

/* FIX GAP */
html, body {
    margin: 0;
    padding: 0;
    width: 100%;
    overflow-x: hidden;
}

.navbar {
    width: 100%;
}

.title-bar {
    width: 100%;
}

.section {
    width: 100%;
    margin: 40px 0;
}


.contact-box{
grid-template-columns: 1fr;
}

.contact-address{
grid-column: span 1;
}

}
.social-icon{
font-size:28px;
text-decoration:none;
margin-left:10px;
}

.fa-facebook{
color:#1877F2;
}

.social-icon:hover{
transform:scale(1.1);
}
.social-icon i{
font-size:26px;
margin-right:15px;
}

.fa-whatsapp{
color:#25D366;
}

.fa-envelope{
color:#D44638;
}

.fa-instagram{
color:#E1306C;
}

.fa-facebook{
color:#1877F2;
}
.contact-name,
.contact-phone{
grid-column: span 2;
}

.call-float{
position:fixed;
bottom:20px;
right:20px;

width:55px;
height:55px;

background:#ffffff;
color:#000;

border-radius:50%;

display:flex;
align-items:center;
justify-content:center;

font-size:24px;
text-decoration:none;

box-shadow:0 0 0 rgba(0,0,0,0.7);

animation:shakePhone 1.2s infinite, pulseShadow 1.8s infinite;

z-index:9999;
}

/* phone icon */
.call-float i{
color:#000;
}

/* shaking effect */
@keyframes shakePhone{
0%{transform:rotate(0deg);}
20%{transform:rotate(-12deg);}
40%{transform:rotate(12deg);}
60%{transform:rotate(-10deg);}
80%{transform:rotate(10deg);}
100%{transform:rotate(0deg);}
}

/* black shadow pulse */
@keyframes pulseShadow{
0%{
box-shadow:0 0 0 0 rgba(0,0,0,0.6);
}
70%{
box-shadow:0 0 0 15px rgba(0,0,0,0);
}
100%{
box-shadow:0 0 0 0 rgba(0,0,0,0);
}
}
/* ================= MOBILE RESPONSIVE ================= */

@media (max-width:768px){

/* NAVBAR */
.navbar{
flex-direction:column;
align-items:flex-start;
padding:12px 20px;
}

.logo img{
height:60px;
}

.navbar ul{
flex-direction:column;
gap:12px;
margin-top:10px;
width:100%;
}

.navbar ul li{
width:100%;
}

/* TITLE */
.main-title{
font-size:24px;
padding:0 10px;
}

/* TAGLINE */
.tagline-track span{
font-size:14px;
padding-right:40px;
}

/* HERO SECTION */
.hero{
height:auto;
padding:40px 20px;
}

.hero-card{
padding:25px;
max-width:100%;
}

/* SECTIONS */
.section{
width:92%;
margin:50px auto;
padding:25px;
}

.section h2{
font-size:22px;
}

/* CONTACT SECTION */
.contact-row{
font-size:16px;
flex-wrap:wrap;
}

/* GALLERY */
#gallery .gallery{
grid-template-columns:1fr;
gap:20px;
}

#gallery .gallery-item{
height:320px;
}

/* IMAGE FIX */
#gallery .gallery-item img{
max-width:100%;
max-height:100%;
}

/* SOCIAL ICONS */
.social-icon i{
font-size:22px;
}

/* CALL BUTTON */
.call-float{
width:50px;
height:50px;
font-size:20px;
bottom:18px;
right:18px;
}

}
/* MOBILE CONTACT FIX */

@media (max-width:768px){

.contact-box{
grid-template-columns:1fr;
}

.contact-name,
.contact-phone,
.contact-address{
grid-column:span 1;
}

.contact-row{
flex-direction:row;
align-items:flex-start;
gap:10px;
}

}
.contact-row{
display:flex;
align-items:flex-start;
gap:10px;
flex-wrap:nowrap;   /* prevents label breaking */
}

.contact-row strong{
min-width:90px;     /* keeps Name/Phone/Address aligned */
}
@media (max-width:768px){

.navbar{
flex-direction:row;      /* keep items in one line */
align-items:center;
justify-content:space-between;
padding:10px 15px;
}

/* menu in one row */
.navbar ul{
flex-direction:row;
gap:12px;
}

/* menu text smaller so it fits */
.navbar ul li a{
font-size:14px;
}

/* language dropdown */
.lang-select{
font-size:14px;
}
}
.logo{
display:flex;
align-items:center;
margin-right:25px;   /* space between logo and Home */
}
.navbar ul{
list-style:none;
display:flex;
gap:35px;        /* space between Home About Sculptures Contact */
margin:0;
padding:0;
}
.navbar{
display:flex;
align-items:center;
justify-content:space-between;
}
/* existing last code */

.logo img{
height:80px;
max-height:80px;
width:auto;
}



@media (max-width:768px){
    .navbar ul{
    flex-direction:row;
    gap:8px;
    align-items:center;
    margin-left:-10px;   /* moves menu slightly left */
}

.lang-select{
    font-size:12px;
    padding:4px 6px;
}

.navbar{
flex-direction:row;
align-items:center;
justify-content:space-between;
padding:8px 12px;
}

/* smaller logo */
.logo img{
height:60px;
}

/* menu in single line */
.navbar ul{
flex-direction:row;
gap:10px;
flex-wrap:nowrap;
align-items:center;
}

/* smaller menu text */
.navbar ul li a{
font-size:13px;
white-space:nowrap;   /* keeps About Us in one line */
}

/* language dropdown */
.lang-select{
font-size:13px;
padding:4px 6px;
}

}
.navbar ul li a{
white-space:nowrap;
}
/* Gallery hover zoom */

#gallery .gallery-item img{
    transition: transform 0.4s ease;
}

#gallery .gallery-item:hover img{
    transform: scale(1.08);
}