

:root{
  --dls-maroon:#7a1f2b;
  --dls-saffron:#d68c2b;
  --dls-cream:#faf6ee;
  --dls-text:#2c2926;
  --dls-text-secondary:#6b6560;
  --dls-border:#e4ddcf;
  --dls-card:#ffffff;
}

*{box-sizing:border-box;}

body{
  margin:0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  color:var(--dls-text);
  background:var(--dls-cream);
  line-height:1.6;
}

a{color:var(--dls-maroon); text-decoration:none;}
a:hover{text-decoration:underline;}
img{max-width:100%; display:block;}

.container{max-width:1140px; margin:0 auto; padding:0 20px;}

/* Header */
.site-header{
  background:var(--dls-card);
  border-bottom:1px solid var(--dls-border);
}
.site-header-inner{
  display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:12px; padding:16px 0;
}
.site-branding{line-height:1.3;}
.site-title{font-size:20px; font-weight:700; margin:0; color:var(--dls-maroon);}
.site-title a{color:var(--dls-maroon);}
.site-tagline{font-size:12px; color:var(--dls-text-secondary); letter-spacing:.03em;}

.main-navigation ul{list-style:none; display:flex; gap:22px; margin:0; padding:0; flex-wrap:wrap;}
.main-navigation li{position:relative;}
.main-navigation a{font-size:14px; font-weight:600; color:var(--dls-text);}
.main-navigation a:hover{color:var(--dls-maroon); text-decoration:none;}
.main-navigation ul ul{
  display:none; position:absolute; top:100%; left:0; background:var(--dls-card);
  border:1px solid var(--dls-border); min-width:220px; padding:8px 0; flex-direction:column; z-index:20;
}
.main-navigation li:hover > ul{display:flex;}
.main-navigation ul ul li{padding:0;}
.main-navigation ul ul a{display:block; padding:8px 16px; font-weight:400; font-size:13px;}
.main-navigation ul ul ul{top:0; left:100%;}

/* Slider */
.dls-slider{position:relative; overflow:hidden; background:#000;}
.dls-slide{display:none; position:relative;}
.dls-slide.is-active{display:block;}
.dls-slide img{width:100%; height:380px; object-fit:contain; background:#1d1a17;}
.dls-slide-caption{
  position:absolute; left:0; bottom:0; right:0; padding:24px;
  background:linear-gradient(transparent, rgba(0,0,0,.65));
  color:#fff; font-size:18px; font-weight:600;
}
.dls-slider-placeholder{
  height:200px; display:flex; align-items:center; justify-content:center;
  background:var(--dls-border); color:var(--dls-text-secondary); font-size:14px;
}

/* Content layout */
.content-layout{display:grid; grid-template-columns:2fr 1fr; gap:32px; padding:32px 0;}
@media (max-width:780px){.content-layout{grid-template-columns:1fr;}}

.section-title{font-size:18px; font-weight:700; margin:0 0 16px; color:var(--dls-maroon);}

/* News tiles - 1 column x N rows */
.news-tile-list{display:flex; flex-direction:column; gap:12px;}
.news-tile{
  display:flex; gap:14px; background:var(--dls-card); border:1px solid var(--dls-border);
  border-radius:8px; padding:12px; align-items:center;
}
.news-tile-thumb{width:110px; height:78px; flex-shrink:0; border-radius:6px; overflow:hidden; background:var(--dls-border);}
.news-tile-thumb img{width:100%; height:100%; object-fit:cover;}
.news-tile-body h3{font-size:15px; margin:0 0 4px;}
.news-tile-body h3 a{color:var(--dls-text);}
.news-tile-meta{font-size:12px; color:var(--dls-text-secondary); margin-bottom:4px;}
.news-tile-excerpt{font-size:13px; color:var(--dls-text-secondary); margin:0;}

/* Sidebar */
.sidebar{display:flex; flex-direction:column; gap:20px;}
.widget{background:var(--dls-card); border:1px solid var(--dls-border); border-radius:8px; padding:16px;}
.widget-title{font-size:14px; font-weight:700; margin:0 0 12px; color:var(--dls-maroon);}
.event-item{padding:8px 0; border-bottom:1px solid var(--dls-border); font-size:13px;}
.event-item:last-child{border-bottom:none;}
.event-date{color:var(--dls-saffron); font-weight:700; display:block; font-size:12px;}

.calendar-block + .calendar-block{margin-top:16px;}
.calendar-block h4{font-size:12px; text-transform:uppercase; letter-spacing:.04em; color:var(--dls-text-secondary); margin:0 0 8px;}
table#wp-calendar{width:100%; font-size:12px; border-collapse:collapse;}
table#wp-calendar caption{font-weight:700; padding-bottom:6px;}
table#wp-calendar th, table#wp-calendar td{text-align:center; padding:4px; border:1px solid var(--dls-border);}
table#wp-calendar #today{background:var(--dls-saffron); color:#fff; font-weight:700;}
.hindu-calendar-embed{font-size:12px; color:var(--dls-text-secondary);}

/* Gallery grids */
.gallery-grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(220px,1fr)); gap:16px; padding:32px 0;}
.gallery-tile{background:var(--dls-card); border:1px solid var(--dls-border); border-radius:8px; overflow:hidden;}
.gallery-tile-media{aspect-ratio:4/3; background:var(--dls-border); overflow:hidden;}
.gallery-tile-media img{width:100%; height:100%; object-fit:cover;}
.gallery-tile-media iframe{width:100%; height:100%; border:0;}
.gallery-tile-title{padding:10px 12px; font-size:13px; font-weight:600;}

/* Branch list */
.branch-list{list-style:none; margin:0; padding:0; display:grid; gap:16px; grid-template-columns:repeat(auto-fill, minmax(260px,1fr));}
.branch-list li{background:var(--dls-card); border:1px solid var(--dls-border); border-radius:8px; padding:16px;}
.branch-list h3{margin:0 0 6px; font-size:15px; color:var(--dls-maroon);}
.branch-list p{margin:0; font-size:13px; color:var(--dls-text-secondary);}

/* Generic page content */
.page-content{padding:32px 0;}
.page-content h1{color:var(--dls-maroon); font-size:26px;}

/* Footer */
.site-footer{background:var(--dls-maroon); color:#f6e9dc; padding:28px 0; margin-top:24px; font-size:13px;}
.site-footer a{color:#fff;}

/* Header logo */
.site-logo{height:64px; width:auto; max-width:100%;}
.site-branding .custom-logo{height:64px; width:auto;}

/* Block content: image + text rows (Prayers, Activities, etc.) */
.wp-block-media-text{display:grid; grid-template-columns:50% 1fr; align-items:center; gap:0 20px; margin:0 0 18px; background:var(--dls-card); border:1px solid var(--dls-border); border-radius:8px; padding:12px;}
.wp-block-media-text__media{margin:0;}
.wp-block-media-text__media img{width:100%; height:auto; border-radius:6px; display:block;}
.wp-block-media-text__content h3{margin:0 0 4px; font-size:16px; color:var(--dls-maroon);}
.wp-block-media-text__content p{margin:0; color:var(--dls-text-secondary);}
@media (max-width:600px){.wp-block-media-text{grid-template-columns:1fr !important;}}

/* Branch cards */
.branch-details p{margin:0 0 8px; font-size:13px; color:var(--dls-text-secondary);}
.branch-details strong{color:var(--dls-text);}
.branch-details a{word-break:break-all;}

/* Forms */
.dls-form p{margin:0 0 14px;}
.dls-form label{display:block; font-size:13px; font-weight:600; margin-bottom:4px;}
.dls-form input[type=text], .dls-form input[type=email], .dls-form textarea{width:100%; padding:9px 10px; border:1px solid var(--dls-border); border-radius:6px; font:inherit; background:#fff;}
.dls-btn{background:var(--dls-maroon); color:#fff; border:0; border-radius:6px; padding:10px 22px; font-size:14px; font-weight:600; cursor:pointer;}
.dls-btn:hover{background:#5f1722;}
.dls-hp{position:absolute; left:-9999px; height:0; overflow:hidden;}
.dls-form-msg{padding:10px 14px; border-radius:6px; font-size:14px;}
.dls-form-ok{background:#e7f3e8; color:#245c2b;}
.dls-form-err{background:#fbeaea; color:#8a1f1f;}
.dls-form-wrap{max-width:640px;}

/* Footer */
.site-footer p{margin:0 0 8px;}
.site-footer-copy{opacity:.8; font-size:12px; margin-top:12px !important;}
.page-content iframe{max-width:100%;}
.page-content .donate-box{background:var(--dls-card); border:1px solid var(--dls-border); border-radius:8px; padding:14px 18px; margin:0 0 14px;}

.main-navigation a{display:block}
.main-navigation>ul>li>a{padding:6px 0}
.news-tile{text-decoration:none}
.dls-form-wrap{margin-top:12px}
.note{font-size:13px;color:var(--dls-text-secondary)}
