/*
Theme Name: Bhuvaneswari Kshethram
Description: Responsive, mobile-friendly theme for Thazhava Vadakkummurikizhakku Sree Bhuvaneswari Devi Kshethram. Works with booking plugins (Vazhipadu Booking).
Version: 1.0
Text Domain: bhuvaneswari
*/
:root{--maroon:#3a0d24;--green:#0d2b00;--gold:#e8b84a;--cream:#fff8ea;--ink:#2b1a14;--red:#b3261e;--max:1100px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Noto Sans Malayalam","Manjari",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:17px;line-height:1.75;color:var(--ink);background:var(--cream)}
img{max-width:100%;height:auto}
a{color:var(--red)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 16px}
.top-strip{background:var(--maroon);height:8px}
.site-header{background:var(--green);position:sticky;top:0;z-index:50;box-shadow:0 2px 8px rgba(0,0,0,.3)}
.header-in{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px}
.brand{color:var(--gold);font-weight:700;text-decoration:none;font-size:1.05rem;line-height:1.3;display:flex;align-items:center;gap:10px}
.brand img{max-height:44px;width:auto}
.menu-toggle{display:none;background:none;border:2px solid var(--gold);color:var(--gold);font-size:1.4rem;line-height:1;padding:6px 12px;border-radius:6px;cursor:pointer}
.main-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px}
.main-nav a{display:block;padding:18px 14px;color:var(--gold);text-decoration:none;font-weight:700;font-size:.95rem}
.main-nav a:hover,.main-nav .current-menu-item>a{background:rgba(255,255,255,.1);color:#fff}
.hero{background:linear-gradient(rgba(58,13,36,.55),rgba(13,43,0,.65)),var(--maroon) center/cover no-repeat;color:#fff;text-align:center;padding:64px 16px}
.hero h1{margin:0 0 10px;font-size:clamp(1.6rem,5vw,2.8rem);color:var(--gold);line-height:1.3}
.hero p{max-width:760px;margin:0 auto 22px;font-size:1.05rem}
.btn{display:inline-block;background:var(--gold);color:var(--maroon);padding:12px 26px;border-radius:30px;font-weight:700;text-decoration:none}
.btn:hover{background:#fff}
.content{padding:36px 0 56px}
.card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 10px rgba(0,0,0,.08);margin-bottom:24px}
h1,h2,h3{color:var(--maroon);line-height:1.35}
.entry-content img,.entry-content iframe,.entry-content table{max-width:100%}
.entry-content table{display:block;overflow-x:auto}
.entry-content input,.entry-content select,.entry-content textarea{max-width:100%;font-size:16px}
.entry-content button,.entry-content input[type=submit]{background:var(--maroon);color:#fff;border:0;padding:10px 22px;border-radius:6px;cursor:pointer;font-size:1rem}
.entry-content .gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.entry-content .gallery-item{width:auto!important;float:none!important;margin:0!important}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.site-footer{background:var(--maroon);color:#f3dede;text-align:center;padding:28px 16px;font-size:.92rem}
.site-footer a{color:var(--gold)}
@media(max-width:820px){
 body{font-size:16px}
 .menu-toggle{display:block}
 .main-nav{display:none;width:100%}
 .main-nav.open{display:block}
 .header-in{flex-wrap:wrap;padding:6px 16px}
 .main-nav ul{flex-direction:column;gap:0;border-top:1px solid rgba(255,255,255,.15)}
 .main-nav a{padding:14px 6px;border-bottom:1px solid rgba(255,255,255,.1)}
 .hero{padding:44px 16px}
 .card{padding:18px}
}

.committee{width:100%;border-collapse:collapse;display:table!important;background:#fff}
.committee th{background:var(--maroon);color:var(--gold);text-align:left}
.committee th,.committee td{padding:10px 12px;border-bottom:1px solid #e6d9c4}
.committee tr:nth-child(even) td{background:#fbf3e3}
.committee td:first-child,.committee th:first-child{width:48px;text-align:center}
blockquote{margin:0 0 1em;padding:12px 18px;border-left:4px solid var(--gold);background:#fbf3e3}

.ad-banner{padding:0 0 32px;text-align:center}
.ad-banner img{display:block;margin:0 auto;width:100%;max-width:850px;height:auto;aspect-ratio:850/100;object-fit:contain;border-radius:6px}
.ad-code{max-width:850px;margin:0 auto;overflow:hidden}
.ad-label{display:block;margin-top:4px;font-size:.7rem;color:#8a7a66;letter-spacing:.05em;text-transform:uppercase}
/* keep desktop menu on one line */
.brand{max-width:300px;font-size:.95rem}
.main-nav a{padding:18px 10px;font-size:.9rem}
/* ad banner: full width, 100px high */
.ad-banner{padding:0;margin-top:8px}
.ad-banner .wrap{max-width:none;padding:0}
.ad-banner a{display:block}
.ad-banner img{width:100%;max-width:none;height:100px;aspect-ratio:auto;object-fit:cover;border-radius:0}
.ad-code{max-width:none;height:100px;overflow:hidden}
.ad-label{margin:0;padding:3px 0;background:var(--maroon);color:#d9c9b5}

.upa-strip{display:block;text-decoration:none;color:var(--ink);background:#fff;border-left:5px solid var(--gold);border-radius:8px;padding:12px 18px;box-shadow:0 1px 6px rgba(0,0,0,.08)}
.upa-strip h3{margin:0 0 2px;font-size:1rem;color:var(--maroon)}
.upa-strip p{margin:0;font-size:.9rem;line-height:1.6}
.upa-strip:hover{background:#fbf3e3}
.upa-strip span{color:var(--red);font-weight:700}
/* logged-in admin bar: keep sticky header below it */
.admin-bar .site-header{top:32px}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:600px){.admin-bar .site-header{top:0}}
/* header: fits 7+ menu items on one line; hamburger below 1000px */
.site-header .wrap{max-width:1400px}
.brand{max-width:230px;font-size:.85rem}
.main-nav a{padding:18px 9px;font-size:.85rem;white-space:nowrap}
@media(min-width:1001px){.main-nav ul{flex-wrap:nowrap}.main-nav{margin-left:auto}}
@media(max-width:1000px){
 .menu-toggle{display:block}
 .main-nav{display:none;width:100%}
 .main-nav.open{display:block}
 .header-in{flex-wrap:wrap;padding:6px 16px}
 .main-nav ul{flex-direction:column;gap:0;border-top:1px solid rgba(255,255,255,.15)}
 .main-nav a{padding:14px 6px;border-bottom:1px solid rgba(255,255,255,.1);white-space:normal}
}
