*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4ede4;color:#1b1714;font-family:DM Sans,system-ui,sans-serif}.topbar{position:fixed;z-index:50;top:14px;left:14px;right:14px;height:68px;padding:0 14px;display:flex;align-items:center;gap:12px;background:rgba(255,250,245,.9);backdrop-filter:blur(22px);border:1px solid #ded1c5;border-radius:20px;box-shadow:0 20px 70px rgba(0,0,0,.3)}.brand{flex:0 0 138px;width:138px;height:46px;display:flex;align-items:center;overflow:hidden}.brand img{width:125px;height:42px;object-fit:contain;object-position:left center}.topbar nav{display:flex;align-items:center;justify-content:center;gap:2px;flex:1;min-width:0;overflow:auto;scrollbar-width:none}.topbar nav::-webkit-scrollbar{display:none}.topbar nav a{color:#5f5750;text-decoration:none;font-size:11px;padding:9px 8px;border-radius:10px;white-space:nowrap}.topbar nav a:hover{background:rgba(240,74,59,.1);color:#fff}.actions{display:flex;gap:7px}.actions button{width:36px;height:36px;border:1px solid rgba(65,45,30,.12);background:#fffaf6;color:#1b1714;border-radius:10px;cursor:pointer}.actions button:hover{border-color:#f04a3b;color:#f04a3b}#menuBtn{display:none}main{padding-top:0}.hero{min-height:780px;padding:180px 7vw 100px;display:flex;align-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 78% 28%,rgba(240,74,59,.12),transparent 30%),linear-gradient(90deg,rgba(244,237,228,.98),rgba(244,237,228,.82) 48%,rgba(244,237,228,.28)),url('assets/odisha-heritage-profile-reference.jpg') center/cover}.hero:after{content:"";position:absolute;inset:auto 0 0;height:220px;background:linear-gradient(transparent,#f4ede4);pointer-events:none}.hero-content{position:relative;z-index:2;max-width:820px}.eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#e7a08a}.hero h1{font:800 clamp(58px,8vw,120px)/.92 Playfair Display,serif;margin:18px 0 24px}.hero h1 span{color:#f04a3b}.hero p{max-width:690px;color:#5f5750;font-size:18px;line-height:1.8}.actions-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border-radius:12px;text-decoration:none;font-weight:700;font-size:13px}.btn.primary{background:#f04a3b;color:#fff;box-shadow:0 12px 40px rgba(240,74,59,.2)}.btn.secondary{border:1px solid rgba(255,255,255,.14);color:#fff;background:rgba(255,255,255,.04)}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#e4d6ca;border-block:1px solid #e4d6ca}.stat{background:#f7efe7;padding:28px 24px}.stat b{display:block;font:700 35px Playfair Display;color:#f04a3b}.stat span{color:#756c64;font-size:12px}.section{padding:90px 6vw}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:32px}.section-head h2{font:700 clamp(34px,4vw,60px)/1 Playfair Display;margin:8px 0}.section-head p{max-width:520px;color:#756c64;line-height:1.7}.map-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.map-panel,.panel{border:1px solid #ded1c5;background:#fffaf6;border-radius:24px;padding:24px}.map-image{height:620px;border-radius:18px;background:url('assets/photos/odisha-map.webp') center/contain no-repeat;position:relative;background-color:#0e0d0c}.map-hotspot{position:absolute;transform:translate(-50%,-50%);padding:6px 8px;border:1px solid rgba(240,74,59,.5);background:rgba(17,16,15,.85);color:#f6eee6;border-radius:8px;font-size:9px;cursor:pointer;transition:.2s}.map-hotspot:hover{background:#f04a3b;transform:translate(-50%,-50%) scale(1.08)}.district-stack{display:grid;gap:8px;max-height:620px;overflow:auto}.district-card{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid rgba(65,45,30,.09);background:#fffaf6;border-radius:14px;text-decoration:none;color:#fff}.district-card:hover{border-color:#f04a3b;transform:translateX(3px)}.district-num{color:#f04a3b;font-size:11px;width:24px}.district-card strong{font-size:14px}.district-card small{display:block;color:#7f7770;margin-top:3px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{border:1px solid #e1d5ca;background:#fffaf6;border-radius:20px;overflow:hidden;text-decoration:none;color:#fff;display:block;transition:.25s}.card:hover{transform:translateY(-5px);border-color:rgba(240,74,59,.5);box-shadow:0 20px 60px rgba(0,0,0,.25)}.card-img{height:230px;background-size:contain;background-position:center;background-repeat:no-repeat;background-color:#211c18}.card-body{padding:20px}.tag{display:inline-block;font-size:9px;letter-spacing:.16em;color:#e7a08a;border:1px solid rgba(231,160,138,.18);border-radius:999px;padding:6px 8px}.card h3{font:700 25px Playfair Display;margin:14px 0 8px}.card p{color:#756c64;line-height:1.6;font-size:13px}.detail{padding:150px 6vw 90px;max-width:1400px;margin:auto}.detail-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center;margin-bottom:55px}.detail-hero h1{font:800 clamp(52px,7vw,96px)/.94 Playfair Display;margin:14px 0}.detail-hero p{color:#655d55;line-height:1.8;font-size:16px}.hero-img{height:520px;border-radius:28px;background-size:contain;background-position:center;background-repeat:no-repeat;background-color:#211c18;border:1px solid rgba(65,45,30,.12)}.detail-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 35px}.tab{padding:10px 14px;border:1px solid rgba(65,45,30,.12);border-radius:999px;color:#b9b0a8;text-decoration:none;font-size:12px}.tab:hover{border-color:#f04a3b;color:#fff}.searchbar{display:flex;gap:10px;margin-bottom:25px}.searchbar input,.search-card input{width:100%;padding:16px 18px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:#181613;color:#fff;outline:none}.searchbar input:focus,.search-card input:focus{border-color:#f04a3b}.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:25px 0}.fact{padding:18px;border-radius:16px;background:#fffaf6;border:1px solid #e1d5ca}.fact b{display:block;color:#f04a3b;margin-bottom:6px}.fact span{font-size:12px;color:#756c64}.prose{color:#5f5750;line-height:1.9;max-width:900px}.related{margin-top:55px}.news-card{display:grid;grid-template-columns:240px 1fr;gap:20px;padding:16px;border:1px solid #e1d5ca;border-radius:18px;background:#fffaf6;margin-bottom:12px}.news-thumb{border-radius:14px;background-size:contain;background-position:center;background-repeat:no-repeat;background-color:#211c18;min-height:150px}.news-card h3{margin:8px 0;font:700 25px Playfair Display}.news-card p{color:#918981;line-height:1.6}.news-card a{color:#f04a3b;text-decoration:none;font-size:12px}.modal{position:fixed;inset:0;background:rgba(0,0,0,.75);backdrop-filter:blur(10px);z-index:100;display:none;padding:100px 20px}.modal.open{display:block}.search-card{max-width:850px;margin:auto;background:#181613;border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:20px;position:relative}.search-card #closeSearch{position:absolute;right:18px;top:14px;background:none;border:0;color:#aaa;font-size:28px;cursor:pointer}.search-card input{padding-right:55px}.search-result{display:block;padding:14px;border-bottom:1px solid rgba(65,45,30,.09);text-decoration:none;color:#fff}.search-result:hover{background:#211b18}.empty{padding:80px 20px;text-align:center;color:#777;border:1px dashed rgba(255,255,255,.12);border-radius:20px}footer{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding:70px 6vw;background:#eadfd5;border-top:1px solid #24201d;color:#6d635b}footer .footer-logo{width:170px;height:55px;object-fit:contain;object-position:left center}footer p{max-width:250px;line-height:1.7}footer h4{color:#fff;margin-top:0}footer a{display:block;color:#756c64;text-decoration:none;margin:9px 0;font-size:13px}footer a:hover{color:#f04a3b}.light{background:#f4ede4;color:#171311}.light .topbar,.light .map-panel,.light .panel,.light .card,.light .district-card,.light .fact,.light .news-card{background:#fff;color:#171311;border-color:#ded3c8}.light .topbar nav a,.light .district-card,.light .card{color:#171311}.light .hero p,.light .section-head p,.light .card p,.light .detail-hero p,.light .prose{color:#685f58}.light footer{background:#e8ded4}.light .stat{background:#f1e7dd}.light .searchbar input,.light .search-card input{background:#fff;color:#171311;border-color:#d9cec3}.light .modal{background:rgba(50,40,30,.45)}@media(max-width:1100px){.topbar nav{display:none}.topbar .actions{margin-left:auto}#menuBtn{display:block}.topbar.open nav{display:flex;position:absolute;top:76px;left:0;right:0;background:#fffaf6;border:1px solid rgba(65,45,30,.12);padding:12px;border-radius:18px;flex-wrap:wrap}.hero{min-height:680px}.grid{grid-template-columns:repeat(2,1fr)}.map-grid,.detail-hero{grid-template-columns:1fr}.map-image{height:500px}.facts{grid-template-columns:repeat(2,1fr)}footer{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.topbar{left:8px;right:8px;height:62px}.brand{flex-basis:118px;width:118px}.brand img{width:108px;height:36px}.hero{padding:140px 22px 90px;min-height:650px}.hero h1{font-size:58px}.section,.detail{padding:60px 20px}.section-head{display:block}.grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.map-image{height:430px}.map-hotspot{font-size:7px;padding:4px 5px}.news-card{grid-template-columns:1fr}.news-thumb{min-height:190px}.facts{grid-template-columns:1fr 1fr}footer{grid-template-columns:1fr}.actions button{width:34px;height:34px}}

.support-line{margin-top:24px;color:#756c64!important;font-size:12px}.support-line b{color:#fff;display:inline-block;margin-bottom:5px}
.card-img,.hero-img,.news-thumb{image-rendering:auto}

.nav-actions{display:flex;gap:7px;align-items:center;flex:0 0 auto}.icon-btn{width:36px;height:36px;border:1px solid rgba(65,45,30,.12);background:#fffaf6;color:#1b1714;border-radius:10px;cursor:pointer;font-size:17px}.icon-btn:hover{border-color:#f04a3b;color:#f04a3b}.mobile-only{display:none}.topbar.open .nav-actions{position:relative;z-index:3}.modal .search-card{color:#fff}.modal .search-card #closeSearch{position:absolute;right:18px;top:12px;background:none;border:0;color:#aaa;font-size:28px;cursor:pointer}.modal .search-card #closeSearch:hover{color:#f04a3b}.support-line span{color:#777}.light .icon-btn{background:#fff;color:#171311;border-color:#ded3c8}.light .modal .search-card{background:#fff;color:#171311}.light .modal .search-card #closeSearch{color:#555}@media(max-width:1100px){.mobile-only{display:block}.topbar nav{display:none}.topbar.open nav{display:flex}}

:root{--red:#e33d2e;--paper:#fffaf6;--ink:#1b1714;--muted:#6d635b;--line:#ded1c5}
.topbar{border-color:#ddcec1;box-shadow:0 18px 60px rgba(90,55,35,.12)}
.card{box-shadow:0 10px 35px rgba(88,56,35,.06)}
.card:hover{box-shadow:0 18px 55px rgba(88,56,35,.12)}
.card-img,.hero-img,.entry-image,.news-thumb{background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important}
.card-img{height:250px;background-color:#eee1d5}
.hero-img{background-color:#eee1d5}
.detail-tabs .tab.active{background:#e33d2e;color:#fff;border-color:#e33d2e}
.open-link{color:#e33d2e;font-size:11px;font-weight:700}
.district-columns{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:30px 0 20px}
.layer-note{color:#6d635b}
.section-inner{margin-top:55px}
.entry-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:35px;align-items:start}
.entry-side{position:sticky;top:100px}
.entry-image{height:430px;border-radius:24px;background-color:#eee1d5;border:1px solid #ded1c5;margin-bottom:14px}
.full{width:100%}
.filter-row{display:grid;grid-template-columns:1fr 240px;gap:12px;align-items:center}
.filter-row select{padding:15px 16px;border-radius:14px;border:1px solid #d7c8bc;background:#fffaf6;color:#1b1714}
.layer-count{font-size:12px;color:#6d635b;margin:12px 0 25px}
.layer-count b{color:#e33d2e}
.prose h2,.prose h3{color:#2a211c}
.prose li{margin:7px 0}
.district-atlas-wrap{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr);gap:28px;align-items:center;margin-bottom:30px}
.district-atlas{border:1px solid #ded1c5;background:#fffaf6;border-radius:26px;padding:12px;box-shadow:0 18px 55px rgba(88,56,35,.08)}
.district-atlas img{display:block;width:100%;height:auto;border-radius:20px}
@media(max-width:900px){.district-atlas-wrap{grid-template-columns:1fr}.entry-layout{grid-template-columns:1fr}.entry-side{position:static}.filter-row{grid-template-columns:1fr}.district-columns{align-items:flex-start;flex-direction:column}}

/* V7 reliability */
.search-card{max-width:900px;margin:auto;background:#fffaf6;border:1px solid #ded1c5;border-radius:24px;padding:22px;position:relative;box-shadow:0 30px 100px rgba(70,45,30,.22)}
.search-card input{width:100%;padding:17px 52px 17px 18px;border-radius:14px;border:1px solid #d9cbbf;background:#fff;color:#1b1714;outline:none;font-size:15px}
.modal .modal-close{position:absolute;right:18px;top:12px;background:none;border:0;color:#6d635b;font-size:28px;cursor:pointer;z-index:2}
.search-result{display:block;padding:14px;border-bottom:1px solid #eadfd6;text-decoration:none;color:#1b1714}
.search-result:hover{background:#f5e9df}

/* V8 — text-first glass archive. Photography is isolated to Gallery. */
body{background:#f4ede4;color:#1b1714}
.hero-clean{background:radial-gradient(circle at 80% 25%,rgba(227,61,46,.10),transparent 28%),linear-gradient(135deg,#f8f1ea,#efe2d7)!important;min-height:650px!important}
.hero-clean .hero-content{max-width:900px}
.glass-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.district-glass-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.glass-card{position:relative;display:flex;align-items:center;gap:18px;min-height:155px;padding:22px;border:1px solid rgba(255,255,255,.72);border-radius:24px;text-decoration:none;color:#1b1714;background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(255,249,243,.48));box-shadow:0 16px 50px rgba(83,51,32,.08),inset 0 1px 0 rgba(255,255,255,.85);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.glass-card:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(120deg,rgba(227,61,46,.08),transparent 40%,rgba(255,255,255,.16));pointer-events:none}
.glass-card:hover{transform:translateY(-4px);border-color:rgba(227,61,46,.36);box-shadow:0 24px 70px rgba(83,51,32,.13)}
.card-index{flex:0 0 46px;width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:rgba(227,61,46,.09);color:#d73628;font-weight:800;font-size:11px;letter-spacing:.08em}
.glass-card-main{min-width:0;position:relative;z-index:1}
.glass-card h3{font:700 24px/1.1 Playfair Display;margin:10px 0 7px;color:#1b1714}
.glass-card p{margin:0;color:#6d635b;line-height:1.55;font-size:13px}
.glass-card small{display:block;margin-top:10px;color:#8a7d72;font-size:10px;letter-spacing:.04em}
.card-arrow{margin-left:auto;position:relative;z-index:1;color:#d73628;font-size:20px;flex:0 0 auto}
.glass-panel{border:1px solid rgba(255,255,255,.72);background:linear-gradient(135deg,rgba(255,255,255,.75),rgba(255,249,243,.5));border-radius:26px;padding:30px;box-shadow:0 18px 60px rgba(83,51,32,.08);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.glass-panel h2{font:700 42px/1.05 Playfair Display;margin:10px 0;color:#1b1714}.glass-panel p{color:#6d635b;line-height:1.75;max-width:800px}
.glass-stats{background:transparent;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.glass-stats .stat{border:1px solid rgba(255,255,255,.72);background:rgba(255,255,255,.58);border-radius:20px;padding:20px;box-shadow:0 10px 35px rgba(83,51,32,.06)}
.compact-stats{padding-top:0}.glass-stats .stat b{color:#d73628;font-size:30px}.glass-stats .stat span{color:#6d635b}
.glass-hero{display:grid;grid-template-columns:1fr 220px;gap:30px;align-items:center;margin-bottom:38px;padding:48px;border-radius:30px;border:1px solid rgba(255,255,255,.78);background:linear-gradient(135deg,rgba(255,255,255,.7),rgba(255,247,239,.42));box-shadow:0 18px 65px rgba(83,51,32,.08);backdrop-filter:blur(18px)}
.glass-hero h1{font:800 clamp(48px,6vw,84px)/.96 Playfair Display;margin:12px 0;color:#1b1714}.glass-hero p{font-size:16px;line-height:1.75;color:#6d635b;max-width:820px}
.hero-mark{width:180px;height:180px;border-radius:50%;display:grid;place-items:center;font:800 54px Playfair Display;color:#d73628;border:1px solid rgba(227,61,46,.25);background:radial-gradient(circle,rgba(227,61,46,.08),rgba(255,255,255,.35));box-shadow:inset 0 0 0 12px rgba(227,61,46,.035),0 20px 60px rgba(83,51,32,.08)}
.detail-tabs{gap:8px}.tab{color:#6d635b;background:rgba(255,255,255,.45);border-color:#d9cbc0}.tab:hover{color:#d73628;border-color:#d73628}.tab.active{background:#d73628!important;color:#fff!important;border-color:#d73628!important}
.district-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:28px}.district-facts b{display:block;color:#d73628;font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px}.district-facts span{display:block;color:#6d635b;line-height:1.55;font-size:12px}
.layer-header{display:flex;justify-content:space-between;gap:25px;align-items:end;margin:35px 0 20px}.layer-header h2{font:700 42px Playfair Display;margin:8px 0}.layer-header p{color:#6d635b;line-height:1.65;max-width:760px}
.district-atlas-text{margin-bottom:20px;padding:22px;border-left:3px solid #d73628;background:rgba(255,255,255,.35);border-radius:0 18px 18px 0}.atlas-title{font-weight:800;color:#d73628}.district-atlas-text p{color:#6d635b;margin:7px 0 0}
.entry-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:32px}.entry-layout-text{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:30px;align-items:start}.entry-actions{position:sticky;top:100px}.wide-link{display:flex;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid #e4d8ce;color:#3e332c;text-decoration:none;font-size:13px}.wide-link:hover{color:#d73628}.prose{color:#5f5750;line-height:1.9}.prose h2,.prose h3{color:#241d18}.prose h3{margin-top:28px}.prose li{margin:7px 0}.section-inner{margin-top:40px}.quick-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.quick-links a{padding:10px 13px;border:1px solid #ded1c5;border-radius:999px;color:#5f5750;text-decoration:none;background:rgba(255,255,255,.45);font-size:12px}.quick-links a:hover{color:#d73628;border-color:#d73628}
.filter-row{display:grid;grid-template-columns:1fr 240px;gap:12px;align-items:center}.filter-row select,.searchbar input{width:100%;box-sizing:border-box;padding:15px 16px;border-radius:14px;border:1px solid #d7c8bc;background:rgba(255,255,255,.65);color:#1b1714;outline:none}.searchbar{margin-bottom:18px}.searchbar input:focus,.filter-row select:focus{border-color:#d73628;box-shadow:0 0 0 3px rgba(227,61,46,.08)}
.detail-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:15px;margin-top:14px;padding:12px 14px;border:1px solid #d9c9bc;border-radius:12px;background:rgba(255,255,255,.5);color:#3e332c;text-decoration:none;font-size:12px;font-weight:700}.detail-btn:hover{border-color:#d73628;color:#d73628}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-item{overflow:hidden;border-radius:24px;border:1px solid #ded1c5;background:#fffaf6;box-shadow:0 15px 45px rgba(83,51,32,.08)}.gallery-photo{height:280px;background-position:center;background-size:cover;background-repeat:no-repeat}.gallery-item>div:last-child{padding:18px}.gallery-item h3{font:700 25px Playfair Display;margin:10px 0 5px}.gallery-item p{color:#6d635b;font-size:12px}.photo-heritage{background-image:url('assets/photos/jagannath-cc0.jpg')}.photo-architecture{background-image:url('assets/photos/konark.webp')}.photo-temple{background-image:url('assets/photos/mukteshwar.jpg')}.photo-wildlife{background-image:url('assets/photos/chilika.webp')}.photo-nature{background-image:url('assets/photos/chilika.webp')}.photo-waterfall{background-image:url('assets/photos/barehipani.jpg')}.photo-festival{background-image:url('assets/photos/rath.jpg')}.photo-food{background-image:url('assets/photos/pakhala-cc.jpg')}.photo-culture{background-image:url('assets/photos/pattachitra.jpg')}.photo-dance{background-image:url('assets/photos/odissi.jpg')}.photo-transport{background-image:url('assets/photos/railway.jpg')}.photo-airport{background-image:url('assets/photos/airport.jpg')}.photo-minerals{background-image:url('assets/photos/mine.svg')}
/* Hide old card imagery everywhere outside Gallery */.card-img,.hero-img,.entry-image,.news-thumb{display:none!important}.card{background:none!important;border:0!important;box-shadow:none!important}.card:hover{box-shadow:none!important}.card-body{padding:0}.feature-card{background:none!important}
.news-list{display:grid;gap:14px}.news-card{margin:0}.news-card .news-thumb{display:none!important}.news-card h3{font:700 28px Playfair Display;color:#1b1714}.news-card p{color:#6d635b}.empty{padding:70px 25px;text-align:center;border:1px dashed #cdbeb2;border-radius:24px;color:#6d635b;background:rgba(255,255,255,.35)}
footer{background:#e9ddd3!important;border-top:1px solid #d8c9bd!important;color:#5f5750!important}footer h4{color:#2b221c!important}footer a{color:#6d635b!important}footer a:hover{color:#d73628!important}.support-line b{color:#2b221c!important}
@media(max-width:1000px){.glass-grid,.district-glass-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.glass-hero{grid-template-columns:1fr}.hero-mark{display:none}.district-facts,.entry-facts{grid-template-columns:repeat(2,1fr)}.entry-layout-text{grid-template-columns:1fr}.entry-actions{position:static}.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.glass-grid,.district-glass-grid,.gallery-grid{grid-template-columns:1fr}.glass-card{min-height:135px}.glass-hero{padding:30px 22px}.glass-hero h1{font-size:52px}.layer-header{display:block}.district-facts,.entry-facts,.glass-stats{grid-template-columns:1fr 1fr}.filter-row{grid-template-columns:1fr}.gallery-photo{height:230px}}

/* V9 visual direction */
body{background:#f4ede4;color:#1b1714}
.hero-clean{position:relative;overflow:hidden;background-image:linear-gradient(90deg,rgba(244,237,228,.96) 0%,rgba(244,237,228,.86) 44%,rgba(244,237,228,.30) 100%),url('assets/odisha-heritage-hero-bg.jpg')!important;background-size:cover!important;background-position:center!important;min-height:720px!important}
.hero-clean:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 85% 20%,rgba(227,61,46,.16),transparent 25%),linear-gradient(120deg,transparent 40%,rgba(255,255,255,.12) 40.5%,transparent 41%,transparent 70%,rgba(227,61,46,.08) 70.5%,transparent 71%)}
.hero-clean .hero-content{position:relative;z-index:2}
.map-section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:30px;align-items:center}
.map-copy h2{font:800 clamp(42px,5vw,70px)/.98 Playfair Display;margin:10px 0 16px;color:#1b1714}.map-copy>p{color:#6d635b;line-height:1.8;max-width:650px}.map-legend{display:grid;gap:12px;margin:25px 0}.map-legend>div{display:grid;grid-template-columns:14px 1fr;column-gap:10px;align-items:start}.map-legend .dot{grid-row:1 / span 2;width:12px;height:12px;border-radius:50%;margin-top:5px}.map-legend b{font-size:12px;text-transform:uppercase;letter-spacing:.08em}.map-legend span{font-size:11px;color:#74685f;line-height:1.55}.dot.coast{background:#3a8fd8}.dot.forest{background:#4c9a58}.dot.mineral{background:#d7833f}
.map-card{border:1px solid rgba(255,255,255,.85);border-radius:30px;background:rgba(255,250,246,.72);padding:14px;box-shadow:0 25px 90px rgba(83,51,32,.12);backdrop-filter:blur(16px)}.map-card img{display:block;width:100%;height:auto;border-radius:22px;background:#e8ded5}.map-index{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px}.map-index a{padding:8px 9px;border-radius:10px;background:rgba(255,255,255,.6);border:1px solid #e1d5ca;text-decoration:none;color:#5d5148;font-size:10px}.map-index a:hover{border-color:#d73628;color:#d73628}
.glass-hero{position:relative;overflow:hidden}.glass-hero:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--hero-abstract,radial-gradient(circle at 80% 20%,rgba(227,61,46,.12),transparent 30%));opacity:.8}.glass-hero>*{position:relative;z-index:2}.hero-theme-heritage{--hero-abstract:radial-gradient(circle at 85% 20%,rgba(227,61,46,.14),transparent 30%),linear-gradient(130deg,transparent 50%,rgba(227,61,46,.08) 50.5%,transparent 51%)}.hero-theme-nature{--hero-abstract:radial-gradient(circle at 85% 15%,rgba(67,139,85,.17),transparent 30%),repeating-linear-gradient(120deg,transparent 0 55px,rgba(67,139,85,.055) 56px 58px)}.hero-theme-temple{--hero-abstract:radial-gradient(circle at 80% 18%,rgba(176,111,70,.16),transparent 32%),linear-gradient(150deg,transparent 45%,rgba(176,111,70,.06) 45.5%,transparent 46%)}.hero-theme-food{--hero-abstract:radial-gradient(circle at 82% 25%,rgba(214,135,63,.16),transparent 30%),radial-gradient(circle at 65% 80%,rgba(227,61,46,.06),transparent 26%)}.hero-theme-mineral{--hero-abstract:linear-gradient(135deg,rgba(91,76,69,.08),transparent 40%),repeating-linear-gradient(155deg,transparent 0 70px,rgba(110,83,64,.07) 71px 74px)}.hero-theme-news{--hero-abstract:radial-gradient(circle at 86% 18%,rgba(227,61,46,.20),transparent 28%),linear-gradient(110deg,transparent 60%,rgba(227,61,46,.07) 60.5%,transparent 61%)}
.travel-guide{margin:34px 0;padding:28px;border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.7),rgba(255,248,240,.42));border:1px solid rgba(255,255,255,.8);box-shadow:0 18px 55px rgba(83,51,32,.07)}.travel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.travel-grid>div{padding:16px;border:1px solid #ded1c5;border-radius:16px;background:rgba(255,255,255,.46)}.travel-grid b{display:block;text-transform:uppercase;font-size:9px;letter-spacing:.1em;color:#d73628;margin-bottom:6px}.travel-grid span{font-size:12px;color:#5f5750;line-height:1.55}
.travel-mini{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:14px 0}.travel-mini>div{padding:12px 14px;border-radius:12px;background:#f7eee6;border:1px solid #e1d4c9}.travel-mini b{display:block;font-size:10px;text-transform:capitalize;color:#8a5d45;margin-bottom:4px}.travel-mini span{font-size:12px;color:#5f5750}
.news-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}.news-main{min-width:0}.news-intro{margin-bottom:16px}.news-intro h2{font:800 42px Playfair Display;margin:8px 0}.news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.news-card{min-width:0}.news-card h3{font:700 28px/1.12 Playfair Display;color:#1b1714;margin:14px 0 9px}.news-card p{color:#6d635b;line-height:1.65}.news-meta{display:flex;justify-content:space-between;gap:10px;align-items:center}.news-meta small{color:#8a7d72}.news-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding-top:15px;border-top:1px solid #e3d8cf;font-size:11px;color:#7a6e64}.news-footer .detail-btn{margin:0}.follow-card{position:sticky;top:100px;padding:28px;border-radius:26px;background:linear-gradient(145deg,#d93629,#b51f18);color:#fff;box-shadow:0 24px 70px rgba(181,31,24,.24);overflow:hidden}.follow-card:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-90px;top:-100px;border:1px solid rgba(255,255,255,.25);box-shadow:0 0 0 24px rgba(255,255,255,.04),0 0 0 48px rgba(255,255,255,.03)}.follow-card>*{position:relative;z-index:1}.follow-kicker{font-size:10px;letter-spacing:.16em;font-weight:800;opacity:.82}.follow-card h2{font:800 40px/1 Playfair Display;margin:14px 0}.follow-card p{line-height:1.7;color:rgba(255,255,255,.86);font-size:13px}.follow-btn{display:inline-flex;margin-top:14px;padding:13px 15px;border-radius:13px;background:#fff;color:#b51f18;text-decoration:none;font-weight:800;font-size:12px}.follow-btn:hover{background:#fff4ef}
@media(max-width:950px){.map-section,.news-layout{grid-template-columns:1fr}.follow-card{position:static}.news-grid{grid-template-columns:1fr}.travel-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.map-index{grid-template-columns:repeat(2,1fr)}.travel-grid,.travel-mini{grid-template-columns:1fr}.hero-clean{min-height:650px!important}.news-intro h2{font-size:34px}}
/* V9 home hero atlas */
.hero-split{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);gap:38px;align-items:center;padding-right:5vw}
.hero-split .hero-content{max-width:780px}
.hero-note{display:flex;gap:10px;align-items:center;margin-top:24px;font-size:11px;color:#6d635b}.hero-note b{color:#d73628;text-transform:uppercase;letter-spacing:.1em}.hero-note span{padding-left:10px;border-left:1px solid #d9cbbf}
.home-map-card{position:relative;padding:20px;border:1px solid rgba(255,255,255,.86);border-radius:30px;background:linear-gradient(145deg,rgba(255,255,255,.76),rgba(255,247,240,.5));box-shadow:0 30px 100px rgba(83,51,32,.15);backdrop-filter:blur(20px);overflow:hidden}.home-map-card:before{content:"";position:absolute;inset:-40% 35% 45% -30%;background:radial-gradient(circle,rgba(227,61,46,.12),transparent 65%);pointer-events:none}.map-card-top{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:start;gap:15px}.map-card-top h3{font:800 30px/1 Playfair Display;margin:8px 0;color:#1b1714}.map-pill{font-size:9px;font-weight:800;letter-spacing:.12em;color:#d73628;background:rgba(227,61,46,.08);border:1px solid rgba(227,61,46,.16);padding:8px 10px;border-radius:999px}.map-visual{position:relative;margin:12px 0 15px;border-radius:22px;overflow:hidden;background:#e9dfd6;border:1px solid #dfd2c7}.map-visual img{display:block;width:100%;height:340px;object-fit:cover;object-position:center}.map-glow{position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,rgba(255,255,255,.06),transparent 50%,rgba(227,61,46,.08))}.map-signals{position:relative;z-index:2;display:grid;gap:9px}.map-signals>div{display:grid;grid-template-columns:12px 1fr;gap:9px;align-items:start}.map-signals .dot{width:10px;height:10px;border-radius:50%;margin-top:4px}.map-signals span{font-size:10px;line-height:1.5;color:#6d635b}.map-signals b{display:block;color:#332923;font-size:9px;text-transform:uppercase;letter-spacing:.1em}.map-open{position:relative;z-index:2;display:block;margin-top:15px;padding-top:13px;border-top:1px solid #e2d6cc;color:#d73628;text-decoration:none;font-size:11px;font-weight:800}.map-open:hover{text-decoration:underline}
@media(max-width:1050px){.hero-split{grid-template-columns:1fr;padding-right:4vw}.home-map-card{max-width:760px}.map-visual img{height:300px}}
@media(max-width:650px){.hero-split{gap:22px}.map-visual img{height:230px}.hero-note{display:block}.hero-note span{display:block;border-left:0;padding:8px 0 0}}

/* V10 — glass card readability */
.card,
.district-card,
.fact,
.panel,
.feature-card,
.news-card,
.search-result,
.detail-tabs .tab,
.filter-row select {
  background: rgba(255,250,246,.78) !important;
  border: 1px solid rgba(75,48,30,.18) !important;
  box-shadow:
    0 14px 40px rgba(60,35,20,.13),
    0 2px 8px rgba(60,35,20,.08),
    inset 0 1px 0 rgba(255,255,255,.78) !important;
  backdrop-filter: blur(18px) saturate(115%);
  -webkit-backdrop-filter: blur(18px) saturate(115%);
  color: #1b1714 !important;
}
.card p,
.district-card small,
.fact span,
.news-card p,
.search-result div,
.layer-note,
.section-head p,
.prose p,
.prose li {
  color: #51473f !important;
}
.card h3,
.district-card strong,
.fact b,
.news-card h3,
.search-result b,
.prose h2,
.prose h3 {
  color: #17120f !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.35);
}
.card:hover,
.district-card:hover,
.search-result:hover {
  background: rgba(255,250,246,.92) !important;
  border-color: rgba(227,61,46,.35) !important;
  box-shadow:
    0 20px 55px rgba(60,35,20,.18),
    0 4px 12px rgba(60,35,20,.10) !important;
}

/* V10 — dark mode: all UI becomes readable and brand-compatible */
body.darkmode {
  background: #11100f !important;
  color: #f6eee7 !important;
}
body.darkmode .topbar {
  background: rgba(25,22,20,.90) !important;
  border-color: rgba(255,240,228,.14) !important;
  box-shadow: 0 18px 60px rgba(0,0,0,.38) !important;
}
body.darkmode .topbar nav a,
body.darkmode .brand,
body.darkmode .brand-wordmark,
body.darkmode .eyebrow,
body.darkmode .section-head h2,
body.darkmode h1,
body.darkmode h2,
body.darkmode h3,
body.darkmode h4,
body.darkmode p,
body.darkmode span,
body.darkmode small,
body.darkmode label {
  color: #f6eee7 !important;
}
body.darkmode .card,
body.darkmode .district-card,
body.darkmode .fact,
body.darkmode .panel,
body.darkmode .feature-card,
body.darkmode .news-card,
body.darkmode .search-result,
body.darkmode .detail-tabs .tab,
body.darkmode .filter-row select {
  background: rgba(28,25,23,.88) !important;
  border-color: rgba(255,239,225,.16) !important;
  box-shadow:
    0 18px 50px rgba(0,0,0,.40),
    0 3px 10px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
  color: #f6eee7 !important;
}
body.darkmode .card p,
body.darkmode .district-card small,
body.darkmode .fact span,
body.darkmode .news-card p,
body.darkmode .search-result div,
body.darkmode .layer-note,
body.darkmode .section-head p,
body.darkmode .prose p,
body.darkmode .prose li {
  color: #d4c7bd !important;
}
body.darkmode .card h3,
body.darkmode .district-card strong,
body.darkmode .fact b,
body.darkmode .news-card h3,
body.darkmode .search-result b,
body.darkmode .prose h2,
body.darkmode .prose h3 {
  color: #fff7f0 !important;
  text-shadow: 0 1px 5px rgba(0,0,0,.35);
}
body.darkmode .card:hover,
body.darkmode .district-card:hover,
body.darkmode .search-result:hover {
  background: rgba(39,34,31,.96) !important;
  border-color: rgba(240,74,59,.48) !important;
}
body.darkmode .btn.secondary {
  background: rgba(34,30,27,.88) !important;
  border-color: rgba(255,239,225,.18) !important;
  color: #fff7f0 !important;
}
body.darkmode input,
body.darkmode select {
  background: rgba(25,22,20,.94) !important;
  color: #fff7f0 !important;
  border-color: rgba(255,239,225,.18) !important;
}
body.darkmode .search-result {
  color: #fff7f0 !important;
}
body.darkmode .brand-logo-final {
  filter: brightness(0) invert(1) drop-shadow(0 2px 8px rgba(255,255,255,.12)) !important;
}
body.darkmode .hero:before,
body.darkmode .hero:after {
  opacity: .55;
}

/* Search overlay must always sit above content */
#searchModal {
  z-index: 9999 !important;
}
#searchModal.open {
  display: flex !important;
}
.search-result {
  cursor: pointer;
  transition: .18s ease;
}

/* V11 — unified Odisha Heritage brand mark */
.brand-logo-final, .side-brand-logo, .page-brand-logo {
  content: url("assets/odisha-heritage-logo-original-upload.png") !important;
  object-fit: contain !important;
}

/* V11 — abstract Odisha Heritage visual language */
body{
  background:
    radial-gradient(circle at 8% 12%, rgba(227,61,46,.10) 0 1px, transparent 2px),
    radial-gradient(circle at 85% 30%, rgba(145,90,55,.10) 0 1px, transparent 2px),
    linear-gradient(115deg, transparent 0 48%, rgba(227,61,46,.035) 48.2% 48.5%, transparent 48.7% 100%),
    #f4ede4 !important;
}
body::before{
  content:"";
  position:fixed; inset:0; pointer-events:none; z-index:-1;
  opacity:.8;
  background:
    linear-gradient(22deg, transparent 0 72%, rgba(100,65,45,.045) 72.2% 72.5%, transparent 72.7%),
    linear-gradient(157deg, transparent 0 34%, rgba(227,61,46,.035) 34.2% 34.5%, transparent 34.7%),
    repeating-linear-gradient(90deg, transparent 0 95px, rgba(90,60,40,.018) 96px 97px);
}
.detail{
  position:relative;
}
.detail::before{
  content:"";
  position:absolute;
  width:420px;height:420px;right:-150px;top:80px;
  border:1px solid rgba(227,61,46,.10);
  border-radius:50%;
  box-shadow:0 0 0 28px rgba(227,61,46,.025),0 0 0 56px rgba(227,61,46,.018);
  pointer-events:none;
}
.visitor-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0 28px
}
.visitor-grid>div{
  padding:18px;border-radius:18px;background:rgba(255,250,246,.72);
  border:1px solid rgba(75,48,30,.16);
  box-shadow:0 10px 28px rgba(60,35,20,.08), inset 0 1px 0 rgba(255,255,255,.7);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)
}
.visitor-grid b{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#e33d2e;margin-bottom:7px}
.visitor-grid span{display:block;color:#403730;font-size:13px;line-height:1.5}
.inline-nav{color:#e33d2e!important;font-weight:800;text-decoration:none}
@media(max-width:900px){.visitor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.visitor-grid{grid-template-columns:1fr}}
/* Dark mode must win over the V10 card rules */
html.darkmode, body.darkmode{
  background:#11100f !important;color:#f6eee7 !important;
}
html.darkmode::before, body.darkmode::before{opacity:.25}
body.darkmode .visitor-grid>div{
  background:rgba(29,25,23,.9)!important;
  border-color:rgba(255,239,225,.14)!important;
  box-shadow:0 18px 50px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.05)!important
}
body.darkmode .visitor-grid span{color:#d9ccc1!important}
body.darkmode .detail::before{border-color:rgba(240,74,59,.18)}
body.darkmode .brand-logo-final, body.darkmode .side-brand-logo, body.darkmode .page-brand-logo{
  filter:brightness(0) invert(1) drop-shadow(0 2px 8px rgba(255,255,255,.12))!important
}

/* V12 — final research-first information styling */
.visitor-grid>div{min-height:78px}
.visitor-grid b{text-transform:capitalize}
.research-badge{
  display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;
  background:rgba(227,61,46,.08);border:1px solid rgba(227,61,46,.18);color:#b92f22;font-size:10px;font-weight:800
}
body.darkmode .research-badge{background:rgba(240,74,59,.12);border-color:rgba(240,74,59,.3);color:#ff9c90}

/* V13 — clean borderless Odisha district map */
.district-atlas-wrap{overflow:visible!important}
.district-atlas{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
  overflow:visible!important;
}
.district-atlas img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:620px!important;
  object-fit:contain!important;
  object-position:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
.hero .odisha-map,
.hero .hero-map,
.hero-map img{
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  object-fit:contain!important;
  object-position:center!important;
  overflow:visible!important;
}

/* V14 — unified Odisha Heritage logo */
.brand-logo-final,.brand-logo,.side-brand-logo,.page-brand-logo,.od-mark,.od-logo {
  background-image:url("assets/odisha-heritage-logo-original-upload.png") !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:contain !important;
  color:transparent !important;
  font-size:0 !important;
  text-indent:-9999px !important;
  overflow:hidden !important;
}

/* Any remaining compact OD-only visual is replaced by the brand logo via the selectors above. */

/* V14 — search overlay opens at full size immediately, no tiny intermediate bar */
#searchModal{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100vh!important;
  min-width:100vw!important;
  min-height:100vh!important;
  display:none!important;
  align-items:flex-start!important;
  justify-content:center!important;
  padding:7vh 24px 24px!important;
  box-sizing:border-box!important;
  z-index:99999!important;
  background:rgba(25,19,16,.42)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}
#searchModal.open{display:flex!important}
#searchModal .search-modal,
#searchModal .modal,
#searchModal .search-panel,
#searchModal > div{
  width:min(920px,92vw)!important;
  max-width:920px!important;
  max-height:82vh!important;
  margin:0 auto!important;
  box-sizing:border-box!important;
  border-radius:26px!important;
}
#searchInput{
  width:100%!important;
  min-height:58px!important;
  box-sizing:border-box!important;
  font-size:18px!important;
  padding:16px 20px!important;
  border-radius:16px!important;
  outline:none!important;
}
#searchInput:focus{
  box-shadow:0 0 0 3px rgba(227,61,46,.16),0 16px 50px rgba(50,30,20,.16)!important;
}
#searchResults{
  max-height:58vh!important;
  overflow:auto!important;
  margin-top:12px!important;
}
.search-result{
  display:block!important;
  width:100%!important;
  box-sizing:border-box!important;
  padding:16px 18px!important;
  margin:7px 0!important;
  border-radius:14px!important;
}
/* Prevent any transition from animating the modal from a tiny state */
#searchModal,#searchModal *{
  transition:none!important;
}

/* V14 — dark mode full contrast */
html.darkmode body, body.darkmode{
  background:#0d0c0b!important;
  color:#f8efe8!important;
}
html.darkmode .topbar, body.darkmode .topbar{
  background:rgba(18,16,15,.96)!important;
  color:#fff7f0!important;
}
html.darkmode .topbar a,
html.darkmode .topbar button,
body.darkmode .topbar a,
body.darkmode .topbar button{
  color:#fff7f0!important;
}
html.darkmode .card,
html.darkmode .district-card,
html.darkmode .fact,
html.darkmode .panel,
html.darkmode .feature-card,
html.darkmode .news-card,
html.darkmode .search-result,
html.darkmode .visitor-grid>div,
body.darkmode .card,
body.darkmode .district-card,
body.darkmode .fact,
body.darkmode .panel,
body.darkmode .feature-card,
body.darkmode .news-card,
body.darkmode .search-result,
body.darkmode .visitor-grid>div{
  background:rgba(30,27,25,.96)!important;
  color:#fff7f0!important;
  border-color:rgba(255,239,225,.18)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.06)!important;
}
html.darkmode h1,html.darkmode h2,html.darkmode h3,html.darkmode h4,
html.darkmode p,html.darkmode span,html.darkmode small,html.darkmode li,
html.darkmode label,html.darkmode strong,
body.darkmode h1,body.darkmode h2,body.darkmode h3,body.darkmode h4,
body.darkmode p,body.darkmode span,body.darkmode small,body.darkmode li,
body.darkmode label,body.darkmode strong{
  color:#fff7f0!important;
}
html.darkmode .card p,html.darkmode .district-card small,html.darkmode .fact span,
html.darkmode .news-card p,html.darkmode .search-result div,html.darkmode .layer-note,
html.darkmode .section-head p,html.darkmode .prose p,html.darkmode .prose li,
body.darkmode .card p,body.darkmode .district-card small,body.darkmode .fact span,
body.darkmode .news-card p,body.darkmode .search-result div,body.darkmode .layer-note,
body.darkmode .section-head p,body.darkmode .prose p,body.darkmode .prose li{
  color:#d9cdc4!important;
}
html.darkmode .tag,body.darkmode .tag{color:#ff9f92!important}
html.darkmode .btn.secondary,body.darkmode .btn.secondary{
  color:#fff7f0!important;background:#211d1a!important;border-color:rgba(255,239,225,.2)!important;
}
html.darkmode input,html.darkmode select,body.darkmode input,body.darkmode select{
  background:#1b1816!important;color:#fff7f0!important;border-color:rgba(255,239,225,.2)!important;
}
html.darkmode .detail-tabs .tab,body.darkmode .detail-tabs .tab{
  color:#f8efe8!important;background:#211d1a!important;
}
html.darkmode .detail-tabs .tab.active,body.darkmode .detail-tabs .tab.active{
  background:#e33d2e!important;color:#fff!important;
}

/* V14 — preserve original Odisha Heritage logo colors in dark mode */
html.darkmode .brand-logo-final,
html.darkmode .brand-logo,
html.darkmode .side-brand-logo,
html.darkmode .page-brand-logo,
body.darkmode .brand-logo-final,
body.darkmode .brand-logo,
body.darkmode .side-brand-logo,
body.darkmode .page-brand-logo{
  filter:none!important;
  mix-blend-mode:normal!important;
  opacity:1!important;
}

/* V14 — deeper abstract line language */
body::before{
  opacity:.95!important;
  background:
    radial-gradient(circle at 12% 18%,rgba(227,61,46,.08) 0 1px,transparent 2px),
    radial-gradient(circle at 82% 70%,rgba(90,60,40,.08) 0 1px,transparent 2px),
    linear-gradient(18deg,transparent 0 30%,rgba(115,75,50,.055) 30.15% 30.35%,transparent 30.5% 100%),
    linear-gradient(155deg,transparent 0 63%,rgba(227,61,46,.045) 63.15% 63.35%,transparent 63.5% 100%),
    repeating-linear-gradient(110deg,transparent 0 130px,rgba(80,55,40,.025) 131px 132px,transparent 133px 260px)!important;
}
.detail::after{
  content:"";
  position:absolute;
  width:620px;height:620px;
  right:-260px;top:120px;
  border:1px solid rgba(227,61,46,.09);
  border-radius:50%;
  box-shadow:0 0 0 32px rgba(227,61,46,.025),0 0 0 68px rgba(227,61,46,.018);
  pointer-events:none;
  z-index:-1;
}
html.darkmode body::before,body.darkmode::before{opacity:.45!important}

/* V15 — exact user-supplied logos, mode-specific */
.brand-logo-final,
.brand-logo,
.side-brand-logo,
.page-brand-logo{
  content:url("assets/odisha-heritage-logo-dark.png") !important;
  filter:none!important;
  mix-blend-mode:normal!important;
  object-fit:contain!important;
  background:none!important;
  color:transparent!important;
}
html.darkmode .brand-logo-final,
html.darkmode .brand-logo,
html.darkmode .side-brand-logo,
html.darkmode .page-brand-logo,
body.darkmode .brand-logo-final,
body.darkmode .brand-logo,
body.darkmode .side-brand-logo,
body.darkmode .page-brand-logo{
  content:url("assets/odisha-heritage-logo-light.png") !important;
  filter:none!important;
  mix-blend-mode:normal!important;
}
.brand-hero-logo{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  width:190px!important;
  height:120px!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.brand-hero-logo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  display:block!important;
}
html.darkmode .brand-hero-logo img,
body.darkmode .brand-hero-logo img{
  content:url("assets/odisha-heritage-logo-light.png") !important;
}

/* Remove any legacy OD-generated hero/card visuals */
.hero-mark{font-size:0!important;color:transparent!important}
.card-index{font-size:11px!important}

/* V15 — truly borderless homepage map, no card shell */
.home-map-clean{
  position:relative!important;
  width:100%!important;
  min-height:520px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.home-map-clean::before,.home-map-clean::after{display:none!important}
.home-map-clean img{
  display:block!important;
  width:100%!important;
  max-width:720px!important;
  height:auto!important;
  max-height:600px!important;
  object-fit:contain!important;
  object-position:center!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding:0!important;
  margin:0!important;
}
@media(max-width:1050px){
  .home-map-clean{min-height:430px!important}
  .home-map-clean img{max-width:650px!important;max-height:500px!important}
}
@media(max-width:650px){
  .home-map-clean{min-height:330px!important}
  .home-map-clean img{max-width:100%;max-height:390px!important}
}

/* V15 — search close button centered on the search field, not the border */
#searchModal .search-card{
  position:relative!important;
}
#searchModal .search-card #closeSearch{
  right:18px!important;
  top:49px!important;
  transform:translateY(-50%)!important;
  width:38px!important;
  height:38px!important;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:0!important;
  border-radius:50%!important;
  line-height:1!important;
  z-index:20!important;
  background:transparent!important;
}
#searchModal .search-card #closeSearch:hover{
  background:rgba(227,61,46,.09)!important;
  color:#e33d2e!important;
}
html.darkmode #searchModal .search-card #closeSearch,
body.darkmode #searchModal .search-card #closeSearch{
  color:#fff7f0!important;
}
html.darkmode #searchModal .search-card #closeSearch:hover,
body.darkmode #searchModal .search-card #closeSearch:hover{
  background:rgba(240,74,59,.16)!important;
  color:#ff9f92!important;
}

/* V15 — smaller abstract Odisha Heritage watermark, never cropped */
.detail::after{
  width:360px!important;
  height:360px!important;
  right:-90px!important;
  top:150px!important;
  opacity:.6!important;
}

/* V16 — map outline restored, no card/frame */
.district-atlas-wrap,
.district-atlas,
.hero-map,
.hero .odisha-map{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding:0!important;
  overflow:visible!important;
}
.district-atlas img,
.hero-map img,
.hero .odisha-map img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:680px!important;
  object-fit:contain!important;
  object-position:center!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
/* Remove oversized background watermark rather than letting it crop. */
.watermark,
.hero-watermark,
.page-watermark,
.background-watermark{
  display:none!important;
}

/* V17 — exact supplied reference map; no card/frame */
.home-map-clean{
  border:0!important; outline:0!important; background:transparent!important;
  box-shadow:none!important; padding:0!important; border-radius:0!important;
  overflow:visible!important;
}
.home-map-clean::before,.home-map-clean::after{display:none!important}
.home-map-clean img{
  display:block!important; width:100%!important; height:auto!important;
  max-width:760px!important; max-height:680px!important;
  object-fit:contain!important; object-position:center!important;
  border:0!important; outline:0!important; border-radius:0!important;
  box-shadow:none!important; background:transparent!important;
}

/* V17 — search and day/night icons */
.icon-btn{
  color:#111!important; -webkit-text-fill-color:#111!important;
  background:#fffaf6!important; border-color:rgba(35,25,20,.18)!important;
  opacity:1!important; visibility:visible!important;
}
.icon-btn:hover{
  color:#111!important; -webkit-text-fill-color:#111!important;
  border-color:#e33d2e!important;
}
html.darkmode .icon-btn,body.darkmode .icon-btn{
  color:#fff!important; -webkit-text-fill-color:#fff!important;
  background:#1b1816!important; border-color:rgba(255,255,255,.22)!important;
}
html.darkmode .icon-btn:hover,body.darkmode .icon-btn:hover{
  color:#fff!important; -webkit-text-fill-color:#fff!important;
  border-color:#e33d2e!important;
}
#searchBtn,#themeBtn{
  display:inline-flex!important; align-items:center!important;
  justify-content:center!important; line-height:1!important;
  text-align:center!important; opacity:1!important; visibility:visible!important;
}
#searchBtn{font-size:19px!important}
#themeBtn{font-size:17px!important}

/* V18 FINAL — remove oversized Odisha Heritage background watermark completely */
.watermark,
.hero-watermark,
.page-watermark,
.background-watermark,
.odisha-watermark,
.heritage-watermark,
.bg-watermark,
.watermark-logo,
.hero::before,
.hero::after,
.detail::before,
.detail::after{
  background-image:none!important;
}
.watermark,
.hero-watermark,
.page-watermark,
.background-watermark,
.odisha-watermark,
.heritage-watermark,
.bg-watermark,
.watermark-logo{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  content:none!important;
}

/* V19 — supplied Full-HD Odisha map blended into the homepage theme */
.home-map-clean,
.district-atlas,
.district-atlas-wrap,
.hero-map,
.hero .odisha-map{
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
  border-radius:0!important;
  overflow:visible!important;
}
.home-map-clean img,
.district-atlas img,
.hero-map img,
.hero .odisha-map img{
  display:block!important;
  width:100%!important;
  max-width:860px!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
  mix-blend-mode:multiply!important;
  opacity:.96!important;
  filter:saturate(.92) contrast(.98)!important;
  -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 6%,#000 94%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0%,#000 6%,#000 94%,transparent 100%);
}
body.darkmode .home-map-clean img,
html.darkmode .home-map-clean img,
body.darkmode .district-atlas img,
html.darkmode .district-atlas img,
body.darkmode .hero-map img,
html.darkmode .hero-map img{
  mix-blend-mode:screen!important;
  opacity:.78!important;
  filter:saturate(.72) brightness(.82) contrast(1.02)!important;
}

/* Heritage/culture copy should read like editorial branding, not a UI gimmick. */
.hero .eyebrow,
.hero .kicker,
.hero .hero-kicker{
  color:#b52f25!important;
  letter-spacing:.12em!important;
}
.hero .dead-card-copy,
.hero .no-dead-cards,
.no-dead-cards{
  font-size:clamp(14px,1.4vw,20px)!important;
  line-height:1.4!important;
  font-weight:700!important;
  color:#b52f25!important;
}

/* If the phrase is rendered in a generic hero heading, keep the replacement elegant. */

/* V19 — no oversized background watermark */
.watermark,.hero-watermark,.page-watermark,.background-watermark,
.odisha-watermark,.heritage-watermark,.bg-watermark,.watermark-logo{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
}

/* V20 — screenshot-driven hero/map polish */

/* Hero: never let the map image crop or create a pasted rectangular block. */
.hero{
  isolation:isolate!important;
  overflow:visible!important;
}
.hero .hero-inner,
.hero .hero-content,
.hero .hero-map,
.home-map-clean{
  overflow:visible!important;
}
.home-map-clean{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  width:100%!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.home-map-clean img{
  width:min(100%,680px)!important;
  max-width:680px!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
  margin:auto!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  background:transparent!important;
  /* fade the outer image canvas so it disappears into the hero */
  -webkit-mask-image:
    radial-gradient(ellipse 78% 78% at 50% 48%,#000 56%,rgba(0,0,0,.88) 67%,rgba(0,0,0,.35) 82%,transparent 100%)!important;
  mask-image:
    radial-gradient(ellipse 78% 78% at 50% 48%,#000 56%,rgba(0,0,0,.88) 67%,rgba(0,0,0,.35) 82%,transparent 100%)!important;
  mix-blend-mode:multiply!important;
  opacity:.82!important;
  filter:saturate(.78) contrast(.94)!important;
}
html.darkmode .home-map-clean img,
body.darkmode .home-map-clean img{
  mix-blend-mode:normal!important;
  opacity:.72!important;
  filter:saturate(.68) brightness(.58) contrast(1.08)!important;
  -webkit-mask-image:
    radial-gradient(ellipse 78% 78% at 50% 48%,#000 55%,rgba(0,0,0,.78) 68%,rgba(0,0,0,.3) 83%,transparent 100%)!important;
  mask-image:
    radial-gradient(ellipse 78% 78% at 50% 48%,#000 55%,rgba(0,0,0,.78) 68%,rgba(0,0,0,.3) 83%,transparent 100%)!important;
}

/* Never render the giant brand watermark behind hero content. */
.watermark,.hero-watermark,.page-watermark,.background-watermark,
.odisha-watermark,.heritage-watermark,.bg-watermark,.watermark-logo{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  background-image:none!important;
}

/* Cards: readable glass in light mode, not washed-out white. */
.glass-card,
.glass-grid .card,
.glass-grid article,
.glass-grid a,
.feature-card,
.district-card{
  background:rgba(255,250,245,.94)!important;
  color:#211915!important;
  border:1px solid rgba(104,73,55,.12)!important;
  box-shadow:0 14px 34px rgba(86,58,43,.10),inset 0 1px 0 rgba(255,255,255,.72)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}
.glass-card *,
.glass-grid .card *,
.glass-grid article *,
.glass-grid a *,
.feature-card *,
.district-card *{
  color:inherit!important;
}
.glass-card p,.glass-grid .card p,.glass-grid article p,.glass-grid a p,
.feature-card p,.district-card p{
  color:#6e5b50!important;
}

/* Dark mode: hero + cards must actually switch, not leave a light wash. */
html.darkmode .hero,
body.darkmode .hero,
html.darkmode .hero-inner,
body.darkmode .hero-inner{
  background:linear-gradient(135deg,#151210 0%,#1b1714 55%,#211a17 100%)!important;
  color:#fff8f1!important;
}
html.darkmode .glass-card,
body.darkmode .glass-card,
html.darkmode .glass-grid .card,
body.darkmode .glass-grid .card,
html.darkmode .glass-grid article,
body.darkmode .glass-grid article,
html.darkmode .glass-grid a,
body.darkmode .glass-grid a,
html.darkmode .feature-card,
body.darkmode .feature-card,
html.darkmode .district-card,
body.darkmode .district-card{
  background:rgba(31,27,24,.94)!important;
  color:#fff8f1!important;
  border-color:rgba(255,237,223,.16)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.05)!important;
}
html.darkmode .glass-card p,body.darkmode .glass-card p,
html.darkmode .glass-grid .card p,body.darkmode .glass-grid .card p,
html.darkmode .glass-grid article p,body.darkmode .glass-grid article p,
html.darkmode .glass-grid a p,body.darkmode .glass-grid a p,
html.darkmode .feature-card p,body.darkmode .feature-card p,
html.darkmode .district-card p,body.darkmode .district-card p{
  color:#d9ccc2!important;
}
html.darkmode .hero h1,body.darkmode .hero h1,
html.darkmode .hero h2,body.darkmode .hero h2,
html.darkmode .hero p,body.darkmode .hero p,
html.darkmode .hero .eyebrow,body.darkmode .hero .eyebrow,
html.darkmode .hero .kicker,body.darkmode .hero .kicker{
  color:#fff8f1!important;
}
html.darkmode .hero h1 span,body.darkmode .hero h1 span{
  color:#ff6a58!important;
}

/* Ensure the archive section heading isn't obscured by decorative layers. */
.section-head{
  position:relative!important;
  z-index:3!important;
}
.section-head h2{
  position:relative!important;
  z-index:4!important;
  text-shadow:none!important;
}

/* V20 — readable text in every theme */
body{color:#251c18!important}
p,small,li,label{line-height:1.55}
html.darkmode body,body.darkmode{color:#fff8f1!important}
html.darkmode p,html.darkmode small,html.darkmode li,html.darkmode label,
body.darkmode p,body.darkmode small,body.darkmode li,body.darkmode label{
  color:#ddd0c6!important;
}

/* =========================================================
   V21 FINAL — supplied transparent map + clean hero + theme contrast
   ========================================================= */

/* Remove the old hero image because it contains the oversized watermark. */
.hero-clean{
  background-image:
    radial-gradient(circle at 86% 20%,rgba(240,74,59,.13),transparent 24%),
    radial-gradient(circle at 18% 82%,rgba(188,137,99,.10),transparent 30%),
    linear-gradient(135deg,#faf4ed 0%,#f3e7dc 52%,#ead9cd 100%) !important;
  background-color:#f3e7dc!important;
  background-size:auto!important;
}
.hero-clean:after{
  background:
    radial-gradient(circle at 74% 24%,rgba(255,255,255,.55),transparent 25%),
    linear-gradient(120deg,transparent 42%,rgba(255,255,255,.28) 42.3%,transparent 43%,
                              transparent 70%,rgba(227,61,46,.055) 70.3%,transparent 71%)!important;
  opacity:1!important;
}
body.darkmode .hero-clean,
html.darkmode .hero-clean{
  background-image:
    radial-gradient(circle at 84% 20%,rgba(227,61,46,.17),transparent 26%),
    radial-gradient(circle at 18% 80%,rgba(139,103,80,.12),transparent 32%),
    linear-gradient(135deg,#12100f 0%,#1b1715 52%,#211a17 100%) !important;
  background-color:#151210!important;
}
body.darkmode .hero-clean:after,
html.darkmode .hero-clean:after{
  background:
    radial-gradient(circle at 76% 22%,rgba(255,255,255,.045),transparent 26%),
    linear-gradient(120deg,transparent 42%,rgba(255,255,255,.035) 42.3%,transparent 43%,
                              transparent 70%,rgba(227,61,46,.08) 70.3%,transparent 71%)!important;
}

/* Direct transparent PNG map: no card, mask, crop, or blend filter. */
.home-map-clean{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  isolation:isolate!important;
}
.home-map-clean img{
  display:block!important;
  width:min(100%,760px)!important;
  max-width:760px!important;
  height:auto!important;
  max-height:none!important;
  margin:0 auto!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  mix-blend-mode:normal!important;
  opacity:1!important;
  filter:none!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
}
body.darkmode .home-map-clean img,
html.darkmode .home-map-clean img{
  mix-blend-mode:normal!important;
  opacity:.94!important;
  filter:saturate(.88) brightness(.82) contrast(1.06)!important;
}

/* Discover Places button: readable in light mode and dark mode. */
.btn.secondary{
  color:#2b211c!important;
  background:rgba(255,250,246,.86)!important;
  border:1px solid rgba(85,55,38,.26)!important;
  box-shadow:0 10px 28px rgba(72,45,30,.10),inset 0 1px 0 rgba(255,255,255,.78)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
}
.btn.secondary:hover{
  color:#d73628!important;
  background:rgba(255,246,240,.97)!important;
  border-color:rgba(215,54,40,.40)!important;
}
body.darkmode .btn.secondary,
html.darkmode .btn.secondary{
  color:#fff7f0!important;
  background:rgba(35,30,27,.94)!important;
  border-color:rgba(255,239,225,.25)!important;
  box-shadow:0 12px 32px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.06)!important;
}
body.darkmode .btn.secondary:hover,
html.darkmode .btn.secondary:hover{
  color:#ff9f92!important;
  background:rgba(46,38,34,.98)!important;
  border-color:rgba(240,74,59,.55)!important;
}

/* Dark mode: force the hero itself dark so text never disappears. */
body.darkmode,
html.darkmode body{
  background:#0f0d0c!important;
  color:#fff7f0!important;
}
body.darkmode .hero h1,
body.darkmode .hero p,
body.darkmode .hero .hero-note,
body.darkmode .hero .hero-note span,
html.darkmode .hero h1,
html.darkmode .hero p,
html.darkmode .hero .hero-note,
html.darkmode .hero .hero-note span{
  color:#fff7f0!important;
}
body.darkmode .hero h1 span,
html.darkmode .hero h1 span{
  color:#ff6a58!important;
}
body.darkmode .hero .eyebrow,
html.darkmode .hero .eyebrow{
  color:#ff9b8e!important;
}
body.darkmode .stats,
html.darkmode .stats{
  background:#332a25!important;
  border-color:#332a25!important;
}
body.darkmode .stat,
html.darkmode .stat{
  background:#1c1816!important;
}
body.darkmode .stat span,
html.darkmode .stat span{
  color:#d8cbc1!important;
}

/* Archive cards: strong enough contrast in both themes. */
.glass-card{
  background:rgba(255,249,243,.91)!important;
  color:#201713!important;
  border-color:rgba(84,57,42,.15)!important;
  box-shadow:0 14px 38px rgba(72,45,30,.12),inset 0 1px 0 rgba(255,255,255,.72)!important;
}
.glass-card h3{color:#201713!important}
.glass-card p{color:#62564e!important}
body.darkmode .glass-card,
html.darkmode .glass-card{
  background:rgba(31,27,24,.95)!important;
  color:#fff7f0!important;
  border-color:rgba(255,239,225,.16)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.05)!important;
}
body.darkmode .glass-card h3,
html.darkmode .glass-card h3{color:#fff7f0!important}
body.darkmode .glass-card p,
html.darkmode .glass-card p{color:#d8cbc1!important}

/* Never render a giant background brand watermark. */
.watermark,.hero-watermark,.page-watermark,.background-watermark,
.odisha-watermark,.heritage-watermark,.bg-watermark,.watermark-logo{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  background-image:none!important;
}

/* =========================================================
   V22 — Dark mode: News Broadcast + complete footer
   ========================================================= */

/* News Broadcast section */
body.darkmode .news-broadcast,
html.darkmode .news-broadcast,
body.darkmode .news-section,
html.darkmode .news-section,
body.darkmode .broadcast-card,
html.darkmode .broadcast-card{
  background:#1b1715!important;
  color:#fff7f0!important;
  border-color:rgba(255,239,225,.14)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.38)!important;
}
body.darkmode .news-broadcast *,
html.darkmode .news-broadcast *,
body.darkmode .news-section *,
html.darkmode .news-section *,
body.darkmode .broadcast-card *,
html.darkmode .broadcast-card *{
  color:inherit!important;
}
body.darkmode .news-broadcast p,
html.darkmode .news-broadcast p,
body.darkmode .news-section p,
html.darkmode .news-section p,
body.darkmode .broadcast-card p,
html.darkmode .broadcast-card p{
  color:#d9ccc2!important;
}
body.darkmode .news-broadcast .eyebrow,
html.darkmode .news-broadcast .eyebrow,
body.darkmode .news-section .eyebrow,
html.darkmode .news-section .eyebrow{
  color:#ff9587!important;
}
body.darkmode .news-broadcast a,
html.darkmode .news-broadcast a,
body.darkmode .news-section a,
html.darkmode .news-section a{
  color:#ff8d7d!important;
}

/* Footer — darken the entire footer surface, not just individual text. */
body.darkmode footer,
html.darkmode footer,
body.darkmode .site-footer,
html.darkmode .site-footer,
body.darkmode .footer,
html.darkmode .footer{
  background:#151210!important;
  color:#fff7f0!important;
  border-top-color:rgba(255,239,225,.10)!important;
}
body.darkmode footer *,
html.darkmode footer *,
body.darkmode .site-footer *,
html.darkmode .site-footer *,
body.darkmode .footer *{
  color:inherit!important;
}
body.darkmode footer p,
html.darkmode footer p,
body.darkmode footer li,
html.darkmode footer li,
body.darkmode footer small,
html.darkmode footer small,
body.darkmode .site-footer p,
html.darkmode .site-footer p,
body.darkmode .site-footer li,
html.darkmode .site-footer li,
body.darkmode .site-footer small,
html.darkmode .site-footer small,
body.darkmode .footer p,
html.darkmode .footer p,
body.darkmode .footer li,
html.darkmode .footer li,
body.darkmode .footer small,
html.darkmode .footer small{
  color:#cfc2b8!important;
}
body.darkmode footer h1,
html.darkmode footer h1,
body.darkmode footer h2,
html.darkmode footer h2,
body.darkmode footer h3,
html.darkmode footer h3,
body.darkmode footer h4,
html.darkmode footer h4,
body.darkmode .site-footer h1,
html.darkmode .site-footer h1,
body.darkmode .site-footer h2,
html.darkmode .site-footer h2,
body.darkmode .site-footer h3,
html.darkmode .site-footer h3,
body.darkmode .site-footer h4,
html.darkmode .site-footer h4,
body.darkmode .footer h1,
html.darkmode .footer h1,
body.darkmode .footer h2,
html.darkmode .footer h2,
body.darkmode .footer h3,
html.darkmode .footer h3,
body.darkmode .footer h4,
html.darkmode .footer h4{
  color:#fff7f0!important;
}
body.darkmode footer a,
html.darkmode footer a,
body.darkmode .site-footer a,
html.darkmode .site-footer a,
body.darkmode .footer a{
  color:#d9ccc2!important;
}
body.darkmode footer a:hover,
html.darkmode footer a:hover,
body.darkmode .site-footer a:hover,
html.darkmode .site-footer a:hover,
body.darkmode .footer a:hover{
  color:#ff8d7d!important;
}

/* Footer logo stays visible in dark mode. */
body.darkmode footer img,
html.darkmode footer img,
body.darkmode .site-footer img,
html.darkmode .site-footer img,
body.darkmode .footer img{
  opacity:1!important;
}

/* Catch the common footer classes used by this build. */
body.darkmode .footer-brand,
html.darkmode .footer-brand,
body.darkmode .footer-nav,
html.darkmode .footer-nav,
body.darkmode .footer-column,
html.darkmode .footer-column,
body.darkmode .footer-bottom,
html.darkmode .footer-bottom,
body.darkmode .footer-copy,
html.darkmode .footer-copy,
body.darkmode .copyright,
html.darkmode .copyright{
  color:#d9ccc2!important;
}

/* =========================================================
   V23 — News Broadcast card readability
   Screenshot-driven fix: dark mode text was washed out.
   ========================================================= */
body.darkmode .news-broadcast,
html.darkmode .news-broadcast,
body.darkmode .news-section,
html.darkmode .news-section,
body.darkmode .broadcast-card,
html.darkmode .broadcast-card,
body.darkmode .news-card,
html.darkmode .news-card{
  background:#25201d!important;
  color:#fff8f1!important;
  border:1px solid rgba(255,239,225,.22)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.06)!important;
}
body.darkmode .news-broadcast *,
html.darkmode .news-broadcast *,
body.darkmode .news-section *,
html.darkmode .news-section *,
body.darkmode .broadcast-card *,
html.darkmode .broadcast-card *,
body.darkmode .news-card *,
html.darkmode .news-card *{
  color:#fff8f1!important;
  opacity:1!important;
  text-shadow:none!important;
}
body.darkmode .news-broadcast p,
html.darkmode .news-broadcast p,
body.darkmode .news-section p,
html.darkmode .news-section p,
body.darkmode .broadcast-card p,
html.darkmode .broadcast-card p,
body.darkmode .news-card p,
html.darkmode .news-card p{
  color:#dcd0c6!important;
}
body.darkmode .news-broadcast .eyebrow,
html.darkmode .news-broadcast .eyebrow,
body.darkmode .news-section .eyebrow,
html.darkmode .news-section .eyebrow,
body.darkmode .broadcast-card .eyebrow,
html.darkmode .broadcast-card .eyebrow,
body.darkmode .news-card .eyebrow,
html.darkmode .news-card .eyebrow{
  color:#ff9587!important;
}
body.darkmode .news-broadcast h1,
html.darkmode .news-broadcast h1,
body.darkmode .news-broadcast h2,
html.darkmode .news-broadcast h2,
body.darkmode .news-broadcast h3,
html.darkmode .news-broadcast h3,
body.darkmode .news-section h1,
html.darkmode .news-section h1,
body.darkmode .news-section h2,
html.darkmode .news-section h2,
body.darkmode .news-section h3,
html.darkmode .news-section h3{
  color:#fff8f1!important;
}
body.darkmode .news-broadcast a,
html.darkmode .news-broadcast a,
body.darkmode .news-section a,
html.darkmode .news-section a,
body.darkmode .broadcast-card a,
html.darkmode .broadcast-card a,
body.darkmode .news-card a,
html.darkmode .news-card a{
  color:#fff8f1!important;
}
body.darkmode .news-broadcast .btn,
html.darkmode .news-broadcast .btn,
body.darkmode .news-section .btn,
html.darkmode .news-section .btn{
  color:#fff!important;
  background:#e43f2f!important;
  border-color:#e43f2f!important;
}

/* V24 — target the real News Broadcast glass panel */
body.darkmode .news-broadcast .glass-panel,
html.darkmode .news-broadcast .glass-panel{
  background:#211c19!important;
  color:#fff8f1!important;
  border:1px solid rgba(255,239,225,.20)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.06)!important;
}
body.darkmode .news-broadcast .glass-panel .eyebrow,
html.darkmode .news-broadcast .glass-panel .eyebrow{
  color:#ff9587!important;
}
body.darkmode .news-broadcast .glass-panel h2,
html.darkmode .news-broadcast .glass-panel h2{
  color:#fff8f1!important;
}
body.darkmode .news-broadcast .glass-panel p,
html.darkmode .news-broadcast .glass-panel p{
  color:#dcd0c6!important;
}
body.darkmode .news-broadcast .glass-panel .btn,
html.darkmode .news-broadcast .glass-panel .btn{
  color:#fff!important;
  background:#e43f2f!important;
  border-color:#e43f2f!important;
  opacity:1!important;
}

/* =========================================================
   V25 — FINAL DARK MODE READABILITY PASS
   Gallery + subfolder/detail cards + content panels
   ========================================================= */

/* Gallery / visual archive cards */
body.darkmode .visual-card,
html.darkmode .visual-card,
body.darkmode .gallery-card,
html.darkmode .gallery-card,
body.darkmode .archive-card,
html.darkmode .archive-card,
body.darkmode .visual-archive-card,
html.darkmode .visual-archive-card{
  background:#241e1b!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.18)!important;
  box-shadow:0 16px 38px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.045)!important;
}
body.darkmode .visual-card *,
html.darkmode .visual-card *,
body.darkmode .gallery-card *,
html.darkmode .gallery-card *,
body.darkmode .archive-card *,
html.darkmode .archive-card *,
body.darkmode .visual-archive-card *,
html.darkmode .visual-archive-card *{
  opacity:1!important;
  text-shadow:none!important;
}
body.darkmode .visual-card h1,
html.darkmode .visual-card h1,
body.darkmode .visual-card h2,
html.darkmode .visual-card h2,
body.darkmode .visual-card h3,
html.darkmode .visual-card h3,
body.darkmode .visual-card h4,
html.darkmode .visual-card h4,
body.darkmode .gallery-card h1,
html.darkmode .gallery-card h1,
body.darkmode .gallery-card h2,
html.darkmode .gallery-card h2,
body.darkmode .gallery-card h3,
html.darkmode .gallery-card h3,
body.darkmode .gallery-card h4,
html.darkmode .gallery-card h4,
body.darkmode .archive-card h1,
html.darkmode .archive-card h1,
body.darkmode .archive-card h2,
html.darkmode .archive-card h2,
body.darkmode .archive-card h3,
html.darkmode .archive-card h3,
body.darkmode .archive-card h4,
html.darkmode .archive-card h4{
  color:#fff8f1!important;
}
body.darkmode .visual-card p,
html.darkmode .visual-card p,
body.darkmode .gallery-card p,
html.darkmode .gallery-card p,
body.darkmode .archive-card p,
html.darkmode .archive-card p,
body.darkmode .visual-card small,
html.darkmode .visual-card small,
body.darkmode .gallery-card small,
html.darkmode .gallery-card small,
body.darkmode .archive-card small,
html.darkmode .archive-card small{
  color:#d9ccc2!important;
}
body.darkmode .visual-card .eyebrow,
html.darkmode .visual-card .eyebrow,
body.darkmode .gallery-card .eyebrow,
html.darkmode .gallery-card .eyebrow,
body.darkmode .archive-card .eyebrow,
html.darkmode .archive-card .eyebrow{
  color:#ff9587!important;
}

/* Generic subfolder/detail cards and panels */
body.darkmode .glass-panel,
html.darkmode .glass-panel,
body.darkmode .glass-card,
html.darkmode .glass-card,
body.darkmode .detail-card,
html.darkmode .detail-card,
body.darkmode .detail-panel,
html.darkmode .detail-panel,
body.darkmode .content-card,
html.darkmode .content-card,
body.darkmode .info-card,
html.darkmode .info-card,
body.darkmode .record-card,
html.darkmode .record-card,
body.darkmode .story-card,
html.darkmode .story-card,
body.darkmode .place-card,
html.darkmode .place-card,
body.darkmode .district-card,
html.darkmode .district-card,
body.darkmode .category-card,
html.darkmode .category-card{
  background:#211c19!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.16)!important;
  box-shadow:0 16px 40px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.045)!important;
}
body.darkmode .glass-panel *,
html.darkmode .glass-panel *,
body.darkmode .glass-card *,
html.darkmode .glass-card *,
body.darkmode .detail-card *,
html.darkmode .detail-card *,
body.darkmode .detail-panel *,
html.darkmode .detail-panel *,
body.darkmode .content-card *,
html.darkmode .content-card *,
body.darkmode .info-card *,
html.darkmode .info-card *,
body.darkmode .record-card *,
html.darkmode .record-card *,
body.darkmode .story-card *,
html.darkmode .story-card *,
body.darkmode .place-card *,
html.darkmode .place-card *,
body.darkmode .district-card *,
html.darkmode .district-card *,
body.darkmode .category-card *,
html.darkmode .category-card *{
  opacity:1!important;
}
body.darkmode .glass-panel h1,
html.darkmode .glass-panel h1,
body.darkmode .glass-panel h2,
html.darkmode .glass-panel h2,
body.darkmode .glass-panel h3,
html.darkmode .glass-panel h3,
body.darkmode .glass-card h1,
html.darkmode .glass-card h1,
body.darkmode .glass-card h2,
html.darkmode .glass-card h2,
body.darkmode .glass-card h3,
html.darkmode .glass-card h3,
body.darkmode .detail-card h1,
html.darkmode .detail-card h1,
body.darkmode .detail-card h2,
html.darkmode .detail-card h2,
body.darkmode .detail-card h3,
html.darkmode .detail-card h3,
body.darkmode .detail-panel h1,
html.darkmode .detail-panel h1,
body.darkmode .detail-panel h2,
html.darkmode .detail-panel h2,
body.darkmode .detail-panel h3,
html.darkmode .detail-panel h3,
body.darkmode .content-card h1,
html.darkmode .content-card h1,
body.darkmode .content-card h2,
html.darkmode .content-card h2,
body.darkmode .content-card h3,
html.darkmode .content-card h3{
  color:#fff8f1!important;
}
body.darkmode .glass-panel p,
html.darkmode .glass-panel p,
body.darkmode .glass-card p,
html.darkmode .glass-card p,
body.darkmode .detail-card p,
html.darkmode .detail-card p,
body.darkmode .detail-panel p,
html.darkmode .detail-panel p,
body.darkmode .content-card p,
html.darkmode .content-card p,
body.darkmode .info-card p,
html.darkmode .info-card p{
  color:#d9ccc2!important;
}

/* Common muted labels/metadata that were becoming invisible */
body.darkmode .meta,
html.darkmode .meta,
body.darkmode .muted,
html.darkmode .muted,
body.darkmode .subtitle,
html.darkmode .subtitle,
body.darkmode .card-meta,
html.darkmode .card-meta,
body.darkmode .card-subtitle,
html.darkmode .card-subtitle{
  color:#cfc1b7!important;
}

/* Buttons/links inside dark subpages */
body.darkmode .glass-card a,
html.darkmode .glass-card a,
body.darkmode .glass-panel a,
html.darkmode .glass-panel a,
body.darkmode .detail-card a,
html.darkmode .detail-card a,
body.darkmode .detail-panel a,
html.darkmode .detail-panel a,
body.darkmode .content-card a,
html.darkmode .content-card a{
  color:#ff9a8d!important;
}
body.darkmode .glass-card .btn,
html.darkmode .glass-card .btn,
body.darkmode .glass-panel .btn,
html.darkmode .glass-panel .btn,
body.darkmode .detail-card .btn,
html.darkmode .detail-card .btn,
body.darkmode .detail-panel .btn,
html.darkmode .detail-panel .btn{
  opacity:1!important;
}

/* Gallery image captions and labels */
body.darkmode figure figcaption,
html.darkmode figure figcaption,
body.darkmode .gallery figcaption,
html.darkmode .gallery figcaption,
body.darkmode .gallery .caption,
html.darkmode .gallery .caption{
  color:#d9ccc2!important;
}

/* Preserve the image itself; do not dim gallery photographs. */
body.darkmode .visual-card img,
html.darkmode .visual-card img,
body.darkmode .gallery-card img,
html.darkmode .gallery-card img,
body.darkmode .archive-card img,
html.darkmode .archive-card img{
  opacity:1!important;
  filter:none!important;
}

/* V25.1 — exact selectors from the current app */
body.darkmode .gallery-grid .gallery-item,
html.darkmode .gallery-grid .gallery-item{
  background:#241e1b!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.18)!important;
  box-shadow:0 16px 38px rgba(0,0,0,.44),inset 0 1px 0 rgba(255,255,255,.045)!important;
}
body.darkmode .gallery-grid .gallery-item h1,
html.darkmode .gallery-grid .gallery-item h1,
body.darkmode .gallery-grid .gallery-item h2,
html.darkmode .gallery-grid .gallery-item h2,
body.darkmode .gallery-grid .gallery-item h3,
html.darkmode .gallery-grid .gallery-item h3,
body.darkmode .gallery-grid .gallery-item h4,
html.darkmode .gallery-grid .gallery-item h4,
body.darkmode .gallery-grid .gallery-item strong,
html.darkmode .gallery-grid .gallery-item strong{
  color:#fff8f1!important;
}
body.darkmode .gallery-grid .gallery-item p,
html.darkmode .gallery-grid .gallery-item p,
body.darkmode .gallery-grid .gallery-item small,
html.darkmode .gallery-grid .gallery-item small,
body.darkmode .gallery-grid .gallery-item .eyebrow,
html.darkmode .gallery-grid .gallery-item .eyebrow{
  color:#d9ccc2!important;
}
body.darkmode .gallery-grid .gallery-item .eyebrow,
html.darkmode .gallery-grid .gallery-item .eyebrow{
  color:#ff9587!important;
}
body.darkmode .detail,
html.darkmode .detail{
  color:#fff8f1!important;
}
body.darkmode .detail h1,
html.darkmode .detail h1,
body.darkmode .detail h2,
html.darkmode .detail h2,
body.darkmode .detail h3,
html.darkmode .detail h3,
body.darkmode .detail h4,
html.darkmode .detail h4{
  color:#fff8f1!important;
}
body.darkmode .detail p,
html.darkmode .detail p,
body.darkmode .detail li,
html.darkmode .detail li{
  color:#d9ccc2!important;
}
body.darkmode .detail-tabs,
html.darkmode .detail-tabs{
  background:#211c19!important;
  border-color:rgba(255,239,225,.16)!important;
}
body.darkmode .detail-tabs *,
html.darkmode .detail-tabs *{
  color:#eee1d8!important;
}
body.darkmode .detail-tabs .active,
html.darkmode .detail-tabs .active{
  color:#ff9a8d!important;
  border-color:#e43f2f!important;
}

/* V25 FINAL TOUCH — exact card labels and gallery text */
body.darkmode .tag,
html.darkmode .tag{
  color:#ff9b8d!important;
  background:rgba(228,63,47,.12)!important;
  border-color:rgba(255,149,135,.22)!important;
}
body.darkmode .gallery-item .tag,
html.darkmode .gallery-item .tag{
  color:#ff9b8d!important;
}
body.darkmode .gallery-item h3,
html.darkmode .gallery-item h3{
  color:#fff8f1!important;
  opacity:1!important;
}
body.darkmode .gallery-item p,
html.darkmode .gallery-item p{
  color:#d9ccc2!important;
  opacity:1!important;
}
body.darkmode .gallery-photo,
html.darkmode .gallery-photo{
  opacity:1!important;
  filter:none!important;
}

/* =========================================================
   V26 — dark-mode subpage/detail shell + Gallery Chilika
   ========================================================= */

/* Page background and detail shell */
body.darkmode .page,
html.darkmode .page,
body.darkmode .page-shell,
html.darkmode .page-shell,
body.darkmode main,
html.darkmode main{
  background-color:#0f0d0c!important;
  color:#fff8f1!important;
}
body.darkmode .page-shell::before,
html.darkmode .page-shell::before,
body.darkmode .page-shell::after,
html.darkmode .page-shell::after{
  opacity:.35!important;
}

/* Detail hero / first white-looking panel after opening a district */
body.darkmode .glass-hero,
html.darkmode .glass-hero,
body.darkmode .detail-hero,
html.darkmode .detail-hero,
body.darkmode .hero-panel,
html.darkmode .hero-panel{
  background:#1b1715!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.16)!important;
  box-shadow:0 18px 46px rgba(0,0,0,.44),inset 0 1px 0 rgba(255,255,255,.045)!important;
}
body.darkmode .glass-hero *,
html.darkmode .glass-hero *,
body.darkmode .detail-hero *,
html.darkmode .detail-hero *,
body.darkmode .hero-panel *,
html.darkmode .hero-panel *{
  color:inherit!important;
  opacity:1!important;
}
body.darkmode .glass-hero p,
html.darkmode .glass-hero p,
body.darkmode .detail-hero p,
html.darkmode .detail-hero p,
body.darkmode .hero-panel p,
html.darkmode .hero-panel p{
  color:#d9ccc2!important;
}
body.darkmode .glass-hero .eyebrow,
html.darkmode .glass-hero .eyebrow,
body.darkmode .detail-hero .eyebrow,
html.darkmode .detail-hero .eyebrow,
body.darkmode .hero-panel .eyebrow,
html.darkmode .hero-panel .eyebrow{
  color:#ff9587!important;
}

/* Prevent white flash/surface on detail content containers */
body.darkmode .section-inner,
html.darkmode .section-inner,
body.darkmode .layer-header,
html.darkmode .layer-header,
body.darkmode .district-facts,
html.darkmode .district-facts,
body.darkmode .empty,
html.darkmode .empty{
  color:#fff8f1!important;
}
body.darkmode .empty,
html.darkmode .empty{
  background:#1b1715!important;
  border-color:rgba(255,239,225,.15)!important;
}

/* Gallery: dedicated Chilika image is already in the asset bundle. */
body.darkmode .gallery-grid .gallery-photo,
html.darkmode .gallery-grid .gallery-photo{
  opacity:1!important;
  filter:none!important;
}

/* Tap/focus/active states should not turn content white in dark mode. */
body.darkmode a:active,
html.darkmode a:active,
body.darkmode button:active,
html.darkmode button:active{
  background-color:inherit;
}
body.darkmode .glass-card:focus,
html.darkmode .glass-card:focus,
body.darkmode .glass-card:focus-visible,
html.darkmode .glass-card:focus-visible{
  background:#211c19!important;
  color:#fff8f1!important;
  outline:2px solid rgba(255,122,105,.55)!important;
  outline-offset:2px;
}

/* =========================================================
   V27 — GLOBAL DARK MODE SURFACE NORMALIZER
   Applies to every route/subpage/subfolder, not only known cards.
   ========================================================= */

/* Universal page/background surfaces */
body.darkmode,
html.darkmode,
html.darkmode body,
html.darkmode #app,
body.darkmode main,
html.darkmode main,
body.darkmode section,
html.darkmode section,
body.darkmode article,
html.darkmode article{
  color:#fff8f1!important;
}

/* Catch common white/light surfaces anywhere in the application. */
body.darkmode .page,
html.darkmode .page,
body.darkmode .page-shell,
html.darkmode .page-shell,
body.darkmode .page-content,
html.darkmode .page-content,
body.darkmode .content,
html.darkmode .content,
body.darkmode .content-wrap,
html.darkmode .content-wrap,
body.darkmode .panel,
html.darkmode .panel,
body.darkmode .card,
html.darkmode .card,
body.darkmode .container-card,
html.darkmode .container-card,
body.darkmode .surface,
html.darkmode .surface,
body.darkmode .modal,
html.darkmode .modal,
body.darkmode .dialog,
html.darkmode .dialog,
body.darkmode .overlay-card,
html.darkmode .overlay-card{
  background:#171311!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.14)!important;
  box-shadow:0 16px 42px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.035)!important;
}

/* Generic light-background utilities commonly responsible for the white cards. */
body.darkmode .bg-white,
html.darkmode .bg-white,
body.darkmode .bg-light,
html.darkmode .bg-light,
body.darkmode .white,
html.darkmode .white,
body.darkmode .light-bg,
html.darkmode .light-bg,
body.darkmode .light-panel,
html.darkmode .light-panel,
body.darkmode .paper,
html.darkmode .paper{
  background:#171311!important;
  color:#fff8f1!important;
}

/* All text inside generic dark surfaces */
body.darkmode .page *,
html.darkmode .page *,
body.darkmode .page-shell *,
html.darkmode .page-shell *,
body.darkmode .page-content *,
html.darkmode .page-content *,
body.darkmode .content *,
html.darkmode .content *,
body.darkmode .panel *,
html.darkmode .panel *,
body.darkmode .card *,
html.darkmode .card *,
body.darkmode .modal *,
html.darkmode .modal *,
body.darkmode .dialog *,
html.darkmode .dialog *{
  border-color:rgba(255,239,225,.14);
}
body.darkmode .page h1,
html.darkmode .page h1,
body.darkmode .page h2,
html.darkmode .page h2,
body.darkmode .page h3,
html.darkmode .page h3,
body.darkmode .page h4,
html.darkmode .page h4,
body.darkmode .page strong,
html.darkmode .page strong,
body.darkmode .page b,
html.darkmode .page b,
body.darkmode .page-content h1,
html.darkmode .page-content h1,
body.darkmode .page-content h2,
html.darkmode .page-content h2,
body.darkmode .page-content h3,
html.darkmode .page-content h3,
body.darkmode .page-content h4,
html.darkmode .page-content h4,
body.darkmode .content h1,
html.darkmode .content h1,
body.darkmode .content h2,
html.darkmode .content h2,
body.darkmode .content h3,
html.darkmode .content h3,
body.darkmode .content h4,
html.darkmode .content h4{
  color:#fff8f1!important;
}
body.darkmode .page p,
html.darkmode .page p,
body.darkmode .page li,
html.darkmode .page li,
body.darkmode .page-content p,
html.darkmode .page-content p,
body.darkmode .page-content li,
html.darkmode .page-content li,
body.darkmode .content p,
html.darkmode .content p,
body.darkmode .content li,
html.darkmode .content li{
  color:#d9ccc2!important;
}

/* Inputs, selects, textareas, search and form controls */
body.darkmode input,
html.darkmode input,
body.darkmode textarea,
html.darkmode textarea,
body.darkmode select,
html.darkmode select,
body.darkmode option,
html.darkmode option{
  background:#171311!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.20)!important;
}
body.darkmode input::placeholder,
html.darkmode input::placeholder,
body.darkmode textarea::placeholder,
html.darkmode textarea::placeholder{
  color:#a99a90!important;
}

/* Tables and list surfaces */
body.darkmode table,
html.darkmode table,
body.darkmode thead,
html.darkmode thead,
body.darkmode tbody,
html.darkmode tbody,
body.darkmode tr,
html.darkmode tr,
body.darkmode td,
html.darkmode td,
body.darkmode th,
html.darkmode th{
  background:#171311!important;
  color:#eee1d8!important;
  border-color:rgba(255,239,225,.13)!important;
}

/* Generic white borders/outlines become subtle dark-theme borders. */
body.darkmode *{
  scrollbar-color:#4a3931 #110f0e;
}
body.darkmode .border,
html.darkmode .border,
body.darkmode .border-light,
html.darkmode .border-light,
body.darkmode .outline,
html.darkmode .outline{
  border-color:rgba(255,239,225,.14)!important;
}

/* Common overlay/hover states must never flash to white. */
body.darkmode .hover-white:hover,
html.darkmode .hover-white:hover,
body.darkmode .card:hover,
html.darkmode .card:hover,
body.darkmode .panel:hover,
html.darkmode .panel:hover,
body.darkmode .glass-card:hover,
html.darkmode .glass-card:hover{
  background:#211c19!important;
  color:#fff8f1!important;
}

/* Preserve photos and transparent logos: only surfaces/text are normalized. */
body.darkmode img,
html.darkmode img{
  border-color:transparent;
}

/* Footer/news/detail exceptions remain compatible with this global palette. */
body.darkmode footer,
html.darkmode footer{
  background:#151210!important;
  color:#fff8f1!important;
}

/* =========================================================
   V28 FINAL — CONSISTENT DARK MODE ACROSS EVERY SUBPAGE
   No light/white content surfaces remain when dark mode is on.
   ========================================================= */

/* Navigation/header */
body.darkmode .topbar,
html.darkmode .topbar{
  background:rgba(20,16,14,.94)!important;
  border-color:rgba(255,239,225,.14)!important;
}
body.darkmode .topbar nav a,
html.darkmode .topbar nav a{
  color:#ddd0c7!important;
}
body.darkmode .actions button,
html.darkmode .actions button,
body.darkmode .icon-btn,
html.darkmode .icon-btn{
  background:#171311!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.18)!important;
}

/* Every major detail-page surface */
body.darkmode .district-facts,
html.darkmode .district-facts,
body.darkmode .travel-guide,
html.darkmode .travel-guide,
body.darkmode .entry-facts,
html.darkmode .entry-facts,
body.darkmode .entry-layout-text,
html.darkmode .entry-layout-text,
body.darkmode .entry-actions,
html.darkmode .entry-actions,
body.darkmode .layer-header,
html.darkmode .layer-header,
body.darkmode .travel-grid,
html.darkmode .travel-grid,
body.darkmode .travel-mini,
html.darkmode .travel-mini,
body.darkmode .facts,
html.darkmode .facts,
body.darkmode .fact,
html.darkmode .fact,
body.darkmode .news-card,
html.darkmode .news-card,
body.darkmode .gallery-item,
html.darkmode .gallery-item{
  background:#1a1614!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.14)!important;
  box-shadow:0 14px 42px rgba(0,0,0,.34)!important;
}

/* Nested travel/fact cells — these were the white blocks in the screenshots */
body.darkmode .travel-grid > div,
html.darkmode .travel-grid > div,
body.darkmode .travel-mini > div,
html.darkmode .travel-mini > div,
body.darkmode .entry-facts .fact,
html.darkmode .entry-facts .fact,
body.darkmode .facts .fact,
html.darkmode .facts .fact{
  background:#211c19!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.13)!important;
}
body.darkmode .travel-grid span,
html.darkmode .travel-grid span,
body.darkmode .travel-mini span,
html.darkmode .travel-mini span,
body.darkmode .fact span,
html.darkmode .fact span{
  color:#d9ccc2!important;
}

/* District category navigation */
body.darkmode .detail-tabs .tab,
html.darkmode .detail-tabs .tab,
body.darkmode .quick-links a,
html.darkmode .quick-links a,
body.darkmode .detail-btn,
html.darkmode .detail-btn{
  background:#211c19!important;
  color:#e9dcd3!important;
  border-color:rgba(255,239,225,.16)!important;
}
body.darkmode .detail-tabs .tab:hover,
html.darkmode .detail-tabs .tab:hover,
body.darkmode .quick-links a:hover,
html.darkmode .quick-links a:hover,
body.darkmode .detail-btn:hover,
html.darkmode .detail-btn:hover{
  background:#2a211d!important;
  color:#fff8f1!important;
}

/* Prose and headings */
body.darkmode .prose,
html.darkmode .prose{
  color:#d9ccc2!important;
}
body.darkmode .prose h2,
html.darkmode .prose h2,
body.darkmode .prose h3,
html.darkmode .prose h3,
body.darkmode .prose strong,
html.darkmode .prose strong{
  color:#fff8f1!important;
}
body.darkmode .prose a,
html.darkmode .prose a{
  color:#ff9587!important;
}

/* Category pages / filters */
body.darkmode .filter-row,
html.darkmode .filter-row,
body.darkmode .searchbar,
html.darkmode .searchbar{
  color:#fff8f1!important;
}
body.darkmode .filter-row select,
html.darkmode .filter-row select,
body.darkmode .searchbar input,
html.darkmode .searchbar input{
  background:#171311!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.18)!important;
}

/* Glass components: preserve the glass look, but make the glass dark */
body.darkmode .glass-card,
html.darkmode .glass-card{
  background:linear-gradient(135deg,rgba(42,31,27,.94),rgba(25,20,18,.92))!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.15)!important;
  box-shadow:0 16px 48px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.035)!important;
}
body.darkmode .glass-panel,
html.darkmode .glass-panel{
  background:linear-gradient(135deg,rgba(34,27,24,.96),rgba(24,20,18,.94))!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.15)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.42)!important;
}
body.darkmode .glass-stats .stat,
html.darkmode .glass-stats .stat{
  background:rgba(36,28,25,.92)!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.14)!important;
}
body.darkmode .glass-card h3,
html.darkmode .glass-card h3,
body.darkmode .glass-panel h3,
html.darkmode .glass-panel h3{
  color:#fff8f1!important;
}
body.darkmode .glass-card p,
html.darkmode .glass-card p,
body.darkmode .glass-panel p,
html.darkmode .glass-panel p{
  color:#d9ccc2!important;
}

/* Remove the light overlay baked into the glass pseudo-element in dark mode */
body.darkmode .glass-card:before,
html.darkmode .glass-card:before{
  background:linear-gradient(120deg,rgba(227,61,46,.08),transparent 45%,rgba(0,0,0,.18))!important;
}

/* Atlas/map wrapper */
body.darkmode .district-atlas,
html.darkmode .district-atlas,
body.darkmode .district-atlas-text,
html.darkmode .district-atlas-text{
  background:#1a1614!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.14)!important;
}
body.darkmode .district-atlas-text p,
html.darkmode .district-atlas-text p{
  color:#d9ccc2!important;
}

/* Search modal — fully dark on every route */
body.darkmode .modal,
html.darkmode .modal{
  background:rgba(5,4,4,.82)!important;
}
body.darkmode .modal .search-card,
html.darkmode .modal .search-card{
  background:#1a1614!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.16)!important;
}
body.darkmode .modal .search-card input,
html.darkmode .modal .search-card input{
  background:#11100f!important;
  color:#fff8f1!important;
  border-color:rgba(255,239,225,.18)!important;
}
body.darkmode .modal .search-card #closeSearch,
html.darkmode .modal .search-card #closeSearch{
  color:#fff8f1!important;
}

/* News + gallery */
body.darkmode .news-card h3,
html.darkmode .news-card h3,
body.darkmode .gallery-item h3,
html.darkmode .gallery-item h3{
  color:#fff8f1!important;
}
body.darkmode .news-card p,
html.darkmode .news-card p,
body.darkmode .gallery-item p,
html.darkmode .gallery-item p{
  color:#d9ccc2!important;
}

/* Footer */
body.darkmode footer,
html.darkmode footer{
  background:#151210!important;
  color:#ddd0c7!important;
  border-color:rgba(255,239,225,.10)!important;
}
body.darkmode footer h3,
html.darkmode footer h3,
body.darkmode footer strong,
html.darkmode footer strong{
  color:#fff8f1!important;
}
body.darkmode footer a,
html.darkmode footer a{
  color:#d9ccc2!important;
}

/* Last-resort protection for inline/light surfaces inside the detail content.
   This deliberately targets only non-image elements so photos are untouched. */
body.darkmode .detail [style*="background:#fff"],
html.darkmode .detail [style*="background:#fff"],
body.darkmode .detail [style*="background: #fff"],
html.darkmode .detail [style*="background: #fff"],
body.darkmode .detail [style*="background:white"],
html.darkmode .detail [style*="background:white"],
body.darkmode .detail [style*="background: white"],
html.darkmode .detail [style*="background: white"]{
  background:#1a1614!important;
  color:#fff8f1!important;
}

/* Prevent browser tap/focus highlighting from creating a pale block */
body.darkmode a:focus-visible,
html.darkmode a:focus-visible,
body.darkmode button:focus-visible,
html.darkmode button:focus-visible{
  outline:2px solid rgba(255,115,98,.72)!important;
  outline-offset:3px;
  background-color:transparent!important;
}


/* =========================================================
   V29 GALLERY — real visual references
   ========================================================= */
.gallery-photo.photo-wildlife{
  background-image:
    url("https://commons.wikimedia.org/wiki/Special:FilePath/SIMILIPAL%20FOREST%20RANGE.jpg"),
    url("assets/photos/barehipani.jpg")!important;
  background-size:cover!important;
  background-position:center!important;
}
.gallery-photo.photo-festival{
  background-image:
    url("https://commons.wikimedia.org/wiki/Special:FilePath/Ratha%20Yatra%20in%20puri%2002.jpg"),
    url("assets/photos/rath.jpg")!important;
  background-size:cover!important;
  background-position:center!important;
}
.gallery-photo.photo-minerals{
  background-image:
    url("https://commons.wikimedia.org/wiki/Special:FilePath/One%20of%20the%20iron%20ore%20mines%20in%20Keonjhar%20district.jpg"),
    url("assets/photos/mine.svg")!important;
  background-size:cover!important;
  background-position:center!important;
}



/* =========================================================
   V31 FINAL — Railway gallery: Bhubaneswar Railway Station
   ========================================================= */
.gallery-photo.photo-transport{
  background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Bhubaneswar%20railway%20station.jpg"), url("assets/photos/railway-station-fallback.svg") !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  background-color:#201914 !important;
}
