/* Bihar Mandir Yatra v5 — Phase 2: Homepage Sacred Discovery */
body.bmy-v5p2{--v5p2-paper:#fffdf8;--v5p2-cream:#fbf5e9;--v5p2-deep:#4c0b18;--v5p2-maroon:#8e1930;--v5p2-kumkum:#a52038;--v5p2-gold:#d8a84e;--v5p2-sand:#edd7b5;--v5p2-ink:#2b211b;--v5p2-muted:#78675c;--v5p2-line:#eadcc7;--v5p2-shadow:0 18px 48px rgba(69,37,18,.11)}
body.bmy-v5p2 .v5-sacred-discovery,body.bmy-v5p2 .v5-faith-discovery{background:linear-gradient(180deg,#fffdf9,#faf4e9);padding:54px 0}
body.bmy-v5p2 .v5-bihar-discovery{padding:58px 0;background:radial-gradient(circle at 12% 0,rgba(232,178,85,.13),transparent 32%),linear-gradient(145deg,#5e0f20 0%,#7f182d 54%,#4b0a16 100%);color:#fff8ed;position:relative;overflow:hidden}
body.bmy-v5p2 .v5-bihar-discovery::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,#000,transparent 75%)}
.v5-section-heading{display:flex;flex-direction:column;gap:16px;margin-bottom:28px;position:relative;z-index:2}
.v5-section-heading>div{max-width:720px}.v5-kicker{display:inline-block;margin-bottom:7px;color:#b96b2e;text-transform:uppercase;letter-spacing:1.5px;font-size:10px;font-weight:900}
body.bmy-v5p2 .v5-section-heading h2{margin:0;color:var(--v5p2-maroon);font-family:var(--v5-serif);font-size:clamp(32px,8vw,47px);line-height:1.03;letter-spacing:-.7px}
.v5-section-heading p{margin:9px 0 0;color:var(--v5p2-muted);font-size:14px;line-height:1.65;max-width:670px}
.v5-text-link{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;color:var(--v5p2-maroon);font-size:12px;font-weight:900;padding:9px 0;border-bottom:1px solid rgba(142,25,48,.25)}
.v5-section-heading-light .v5-kicker{color:#efc56d}.v5-section-heading-light h2{color:#fff8ed!important}.v5-section-heading-light p{color:#ead7ce}.v5-section-heading-light .v5-text-link{color:#ffe09a;border-color:rgba(255,224,154,.3)}

/* Featured sacred places — editorial imagery, not dashboard cards */
.v5-place-editorial-grid{display:grid;grid-template-columns:1fr;gap:14px}
.v5-place-story{position:relative;min-height:318px;overflow:hidden;border-radius:20px;color:#fff;isolation:isolate;box-shadow:0 16px 36px rgba(60,31,17,.12);background:#3d241a;transition:transform .2s ease,box-shadow .2s ease}
.v5-place-story:focus-visible{outline:3px solid #efbd56;outline-offset:3px}.v5-place-story:hover{transform:translateY(-3px);box-shadow:0 22px 50px rgba(60,31,17,.18)}
.v5-place-media{position:absolute;inset:0}.v5-place-media img{width:100%;height:100%;object-fit:cover;object-position:center bottom;transform:scale(1.08);filter:saturate(1.18) contrast(1.05);transition:transform .55s ease}
.v5-place-story:hover .v5-place-media img{transform:scale(1.12)}
.v5-place-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(34,16,12,.03) 0%,rgba(40,15,13,.08) 38%,rgba(40,11,15,.88) 100%);z-index:1}
.v5-place-meta{position:absolute;left:14px;right:14px;top:14px;display:flex;gap:7px;justify-content:space-between;z-index:3}.v5-place-meta span{display:inline-flex;align-items:center;min-height:27px;padding:5px 9px;border-radius:999px;background:rgba(255,250,240,.92);backdrop-filter:blur(8px);color:#6d432d;font-size:9px;font-weight:900;box-shadow:0 4px 16px rgba(34,18,11,.07)}
.v5-place-copy{position:absolute;left:18px;right:18px;bottom:17px;z-index:3}.v5-place-number{display:block;color:#f1c971;font-size:10px;font-weight:900;letter-spacing:1px;margin-bottom:4px}
body.bmy-v5p2 .v5-place-copy h3{margin:0;color:#fff;font-family:var(--v5-serif);font-size:25px;line-height:1.05}.v5-place-copy p{margin:7px 0 0;color:#f2e7df;font-size:12px;line-height:1.45;max-width:560px}.v5-place-cta{display:inline-block;margin-top:10px;color:#ffe09a;font-size:10px;font-weight:900}

/* Bihar district discovery */
.v5-district-experience{display:grid;grid-template-columns:1fr;gap:15px;position:relative;z-index:2}
.v5-district-map-card,.v5-district-preview{border:1px solid rgba(255,231,185,.15);background:rgba(255,250,241,.07);backdrop-filter:blur(14px);border-radius:22px;box-shadow:0 18px 44px rgba(33,7,13,.18)}
.v5-district-map-card{padding:15px}.v5-map-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.v5-map-topline span{font-size:10px;font-weight:900;color:#ffe0a0;text-transform:uppercase;letter-spacing:1px}.v5-map-topline small{font-size:9px;color:#dfc9bd}
.v5-bihar-map{position:relative;min-height:300px;display:grid;place-items:center;padding:12px 4px}.v5-bihar-map svg{width:min(100%,520px);height:auto;filter:drop-shadow(0 20px 28px rgba(34,8,13,.15))}
.v5-map-pin{position:absolute;transform:translate(-50%,-50%);border:0;background:transparent;color:#fff;padding:0;font-family:inherit;z-index:3}.v5-map-pin i{display:block;width:14px;height:14px;margin:auto;border-radius:50%;background:#f1c76f;border:3px solid #fff7e7;box-shadow:0 0 0 5px rgba(241,199,111,.17),0 5px 16px rgba(52,11,15,.35);transition:.2s}.v5-map-pin span{display:block;margin-top:5px;padding:4px 7px;border-radius:999px;background:rgba(73,11,22,.88);color:#fff7e9;font-size:8px;font-weight:900;white-space:nowrap;border:1px solid rgba(255,221,153,.18)}.v5-map-pin.active i,.v5-map-pin:hover i{background:#ffdf89;transform:scale(1.25);box-shadow:0 0 0 7px rgba(255,223,137,.18),0 5px 20px rgba(52,11,15,.45)}.v5-map-pin.active span{background:#fff6e7;color:#741426}
.v5-district-chiprow{display:flex;gap:7px;overflow:auto;padding:7px 0 1px;scrollbar-width:none}.v5-district-chiprow::-webkit-scrollbar{display:none}.v5-district-chiprow button{flex:0 0 auto;border:1px solid rgba(255,228,177,.16);background:rgba(255,250,240,.07);color:#f4ded2;border-radius:999px;padding:8px 11px;font-size:9px;font-weight:900}.v5-district-chiprow button.active{background:#f3c66b;color:#5d1020;border-color:#f3c66b}
.v5-district-preview{padding:22px 19px;display:flex;flex-direction:column;justify-content:center}.v5-preview-label{color:#efc66a;font-size:9px;text-transform:uppercase;letter-spacing:1.2px;font-weight:900}.v5-preview-count{display:flex;align-items:end;gap:8px;margin-top:11px}.v5-preview-count strong{font-family:var(--v5-serif);font-size:57px;line-height:.8;color:#fff6e7}.v5-preview-count span{font-size:10px;color:#e2cfc5;font-weight:800;padding-bottom:4px}.v5-district-preview h3{font-family:var(--v5-serif);font-size:31px;margin:14px 0 3px;color:#fff}.v5-district-preview>p{font-size:12px;line-height:1.55;color:#ead8cf;margin:0}.v5-preview-places{display:grid;gap:7px;margin:16px 0}.v5-preview-places a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 11px;border:1px solid rgba(255,231,187,.14);border-radius:11px;background:rgba(255,255,255,.055);color:#fff7e9;font-size:11px;font-weight:850}.v5-preview-places a b{color:#efc66a}.v5-preview-cta{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border-radius:11px;background:linear-gradient(135deg,#f0c369,#d69a37);color:#5b1020;font-size:11px;font-weight:950}.v5-preview-note{display:block;margin-top:10px;color:#c9b7ad;font-size:8.5px;line-height:1.4}

/* Faith discovery */
.v5-faith-visual-grid{display:grid;grid-template-columns:1fr;gap:13px}.v5-faith-visual{position:relative;min-height:286px;border-radius:20px;overflow:hidden;color:white;isolation:isolate;box-shadow:0 16px 38px rgba(56,30,17,.13)}.v5-faith-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center bottom;transform:scale(1.08);filter:saturate(1.15) contrast(1.04)}.v5-faith-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(50,16,17,.04),rgba(50,16,17,.20) 40%,rgba(61,10,22,.88) 100%)}.v5-faith-symbol{position:absolute;top:14px;left:14px;z-index:2;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:rgba(255,250,240,.92);color:#8d1c30;box-shadow:0 7px 18px rgba(42,17,10,.14)}.v5-faith-symbol svg{width:22px;height:22px;stroke-width:1.6}.v5-faith-copy{position:absolute;left:17px;right:17px;bottom:17px;z-index:2}.v5-faith-copy>span{font-size:9px;font-weight:900;color:#f4c96f;text-transform:uppercase;letter-spacing:1px}.v5-faith-copy h3{margin:3px 0 0!important;color:#fff!important;font-size:25px!important}.v5-faith-copy p{margin:5px 0 0;color:#f1e3dd;font-size:11px;line-height:1.4}.v5-faith-copy b{display:block;margin-top:9px;color:#ffe09a;font-size:9.5px}
.v5-faith-secondary-row{display:grid;grid-template-columns:1fr;gap:8px;margin-top:13px}.v5-faith-secondary-row a{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;padding:11px;border:1px solid #eadbc4;background:#fffdf9;border-radius:13px;box-shadow:0 8px 20px rgba(61,35,20,.045)}.v5-mini-symbol{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#fff1d7;color:#a35c21;font-size:18px}.v5-faith-secondary-row b{display:block;color:#5b2e25;font-size:11px}.v5-faith-secondary-row small{display:block;color:#887166;margin-top:2px;font-size:8.5px}.v5-faith-secondary-row em{font-style:normal;color:#a52038;font-size:17px}

/* Section breathing room against untouched Phase 1 / later sections */
body.bmy-v5p2 .quick-wrap{margin-bottom:0}.v5-sacred-discovery+.v5-bihar-discovery{margin-top:0}.v5-bihar-discovery+.v5-faith-discovery{margin-top:0}
body.bmy-v5p2 .lower-section{padding-top:0}

@media (min-width:620px){
 .v5-place-editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v5-place-story-featured{grid-column:1/-1;min-height:390px}.v5-place-story{min-height:330px}
 .v5-faith-visual-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v5-faith-secondary-row{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:900px){
 body.bmy-v5p2 .v5-sacred-discovery,body.bmy-v5p2 .v5-faith-discovery{padding:72px 0}.v5-section-heading{flex-direction:row;justify-content:space-between;align-items:flex-end;margin-bottom:34px}.v5-section-heading p{font-size:14px}
 .v5-place-editorial-grid{grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:260px}.v5-place-story{min-height:0}.v5-place-story-featured{grid-column:span 3;grid-row:span 2}.v5-place-story:nth-child(2),.v5-place-story:nth-child(3){grid-column:span 3}.v5-place-story:nth-child(n+4){grid-column:span 2}.v5-place-story-featured .v5-place-copy h3{font-size:37px!important}.v5-place-story-featured .v5-place-copy p{font-size:13px;max-width:500px}.v5-place-story:not(.v5-place-story-featured) .v5-place-copy p{display:none}
 body.bmy-v5p2 .v5-bihar-discovery{padding:76px 0}.v5-district-experience{grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:18px}.v5-district-map-card{padding:20px}.v5-bihar-map{min-height:410px}.v5-district-preview{padding:30px 26px}.v5-district-preview h3{font-size:39px}.v5-preview-count strong{font-size:70px}
 .v5-faith-visual-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.v5-faith-visual{min-height:340px}.v5-faith-secondary-row{grid-template-columns:repeat(4,minmax(0,1fr))}.v5-faith-secondary-row a{grid-template-columns:38px 1fr auto;padding:12px}
}
@media (min-width:1250px){
 .v5-place-editorial-grid{grid-auto-rows:285px;gap:16px}.v5-place-story-featured .v5-place-copy{left:28px;right:28px;bottom:25px}.v5-place-copy h3{font-size:27px!important}.v5-place-meta{left:18px;right:18px;top:18px}.v5-faith-visual{min-height:365px}
}
@media (max-width:619px){
 body.bmy-v5p2 .v5-sacred-discovery,body.bmy-v5p2 .v5-faith-discovery{padding:46px 0}.v5-section-heading{margin-bottom:22px}.v5-section-heading h2{font-size:34px!important}.v5-place-editorial-grid{display:flex;overflow-x:auto;gap:12px;margin-right:-3vw;padding-right:3vw;scroll-snap-type:x mandatory;scrollbar-width:none}.v5-place-editorial-grid::-webkit-scrollbar{display:none}.v5-place-story{flex:0 0 82vw;max-width:365px;min-height:350px;scroll-snap-align:start}.v5-place-story-featured{min-height:382px}.v5-place-copy p{font-size:11.5px}
 body.bmy-v5p2 .v5-bihar-discovery{padding:50px 0}.v5-bihar-map{min-height:270px}.v5-map-pin span{font-size:7.5px}.v5-district-preview{padding:21px 17px}
 .v5-faith-visual-grid{display:flex;overflow-x:auto;margin-right:-3vw;padding-right:3vw;scroll-snap-type:x mandatory;scrollbar-width:none}.v5-faith-visual-grid::-webkit-scrollbar{display:none}.v5-faith-visual{flex:0 0 78vw;max-width:340px;scroll-snap-align:start;min-height:310px}
}
@media (prefers-reduced-motion:no-preference){.v5-place-story,.v5-faith-visual,.v5-district-map-card,.v5-district-preview{animation:v5p2reveal .5s ease both;animation-timeline:view();animation-range:entry 0% cover 18%}@keyframes v5p2reveal{from{opacity:.35;transform:translateY(12px)}to{opacity:1;transform:none}}}
/* Hide legacy baked-in location badges inside the prototype faith images without altering the source files. */
.v5-faith-visual::before{content:"";position:absolute;left:0;top:0;width:54%;height:25%;z-index:1;background:linear-gradient(135deg,rgba(63,9,20,.92) 0%,rgba(82,16,25,.62) 38%,rgba(82,16,25,0) 78%);backdrop-filter:blur(7px);pointer-events:none}
.v5-faith-visual:nth-child(2)::before{background:linear-gradient(135deg,rgba(75,11,24,.91),rgba(97,23,30,.58) 42%,transparent 80%)}
.v5-faith-visual:nth-child(3)::before{background:linear-gradient(135deg,rgba(57,22,17,.86),rgba(86,33,20,.52) 45%,transparent 82%)}
.v5-faith-visual:nth-child(4)::before{background:linear-gradient(135deg,rgba(74,12,27,.91),rgba(91,29,35,.55) 45%,transparent 82%)}
/* Cinematic top vignette masks old image labels while preserving authentic source imagery. */
.v5-place-story::before{content:"";position:absolute;left:0;right:0;top:0;height:24%;z-index:2;background:linear-gradient(180deg,rgba(48,12,18,.70),rgba(48,12,18,.18) 58%,transparent);backdrop-filter:blur(5px);pointer-events:none}
.v5-faith-visual::before{left:0;right:0;top:0;width:100%;height:29%;background:linear-gradient(180deg,rgba(57,8,20,.88),rgba(57,8,20,.36) 55%,transparent);backdrop-filter:blur(8px)}
/* Final label-mask: opaque devotional vignette under live HTML metadata. */
.v5-place-story::before{left:0;right:auto;top:0;width:52%;height:92px;background:linear-gradient(135deg,rgba(57,9,20,.98) 0%,rgba(73,15,25,.90) 56%,rgba(73,15,25,0) 100%);backdrop-filter:none}
.v5-faith-visual::before{left:0;right:auto;top:0;width:58%;height:94px;background:linear-gradient(135deg,rgba(57,8,20,.98) 0%,rgba(74,16,26,.90) 58%,rgba(74,16,26,0) 100%);backdrop-filter:none}
/* Source images contain old baked badges. A solid cinematic header veil fully removes them from view. */
.v5-place-story::before{left:0;right:0;top:0;width:100%;height:29%;background:linear-gradient(180deg,#5b1020 0%,#681225 54%,rgba(104,18,37,.78) 72%,rgba(104,18,37,0) 100%)}
.v5-faith-visual::before{left:0;right:0;top:0;width:100%;height:30%;background:linear-gradient(180deg,#57101f 0%,#681426 55%,rgba(104,20,38,.78) 72%,rgba(104,20,38,0) 100%)}
/* Crop the old top badge area out of the viewport; HTML metadata remains live and translatable. */
.v5-place-media img{position:absolute;left:0;right:0;bottom:0;width:100%;height:120%;object-fit:cover;object-position:center center;transform:none!important}
.v5-faith-visual>img{position:absolute;left:0;right:0;bottom:0;width:100%;height:120%;object-fit:cover;object-position:center center;transform:none!important}
.v5-place-story::before{height:18%;background:linear-gradient(180deg,rgba(57,9,20,.76),rgba(57,9,20,0))}
.v5-faith-visual::before{height:18%;background:linear-gradient(180deg,rgba(57,8,20,.80),rgba(57,8,20,0))}
/* Final source crop removes the prototype label strip from the image itself. */
.v5-place-media img,.v5-faith-visual>img{height:150%;bottom:0}
.v5-faith-visual>img{top:auto!important;bottom:0!important;height:150%!important}
