@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Noto+Sans+Devanagari:wght@400;500;600;700;800&display=swap');
:root{--ink:#0c2934;--navy:#0c2934;--green:#b7ee59;--deep-green:#28754c;--muted:#586b71;--line:#dce4e4;--wash:#f4f7f6;--white:#fff;--font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px;font-size:var(--font-size)}body{margin:0;font-family:'Manrope','Noto Sans Devanagari',sans-serif;color:var(--ink);background:var(--white);line-height:1.6}h1,h2,h3,p{margin:0}h1,h2,h3,.stats strong{font-family:Manrope,'Noto Sans Devanagari',sans-serif}button,input,select{font:inherit;color:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit;text-decoration:none}button{border:0;background:none}img{display:block;max-width:100%}svg{display:block}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #3e9bea;outline-offset:4px}button:disabled{opacity:.5}button:hover:not(:disabled),a:hover{filter:brightness(.94)}[hidden]{display:none!important}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}.skip{position:fixed;top:-100px;left:12px;padding:12px;background:var(--green);z-index:20}.skip:focus{top:12px}.demo-bar{background:#eaf1ef;border-bottom:1px solid var(--line);font-size:.75rem}.demo-bar .wrap,.utility .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:38px}.demo-bar strong{font-size:.65rem;letter-spacing:.08em;margin-right:8px}.demo-bar label{display:flex;align-items:center;gap:10px;white-space:nowrap}.demo-bar select{background:transparent;border:0;font-size:.75rem;max-width:150px}.utility{background:var(--ink);color:#e7eeee;font-size:.75rem}.utility .wrap{min-height:35px}.accessibility{display:flex;gap:6px;align-items:center}.accessibility button{color:inherit;padding:2px 8px;font-size:.75rem}.accessibility button+button{border-left:1px solid #3f555e}.accessibility button[aria-pressed=true]{background:var(--green);color:var(--ink)}.masthead{height:106px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:16px}.brand-mark{display:grid;place-content:center;width:58px;height:63px;background:var(--navy);color:white;text-align:center;font-family:Manrope;font-weight:800;font-size:1.2rem;line-height:1.25;border-top:4px solid var(--green);border-radius:2px}.brand-mark span{font-size:.55rem;letter-spacing:.17em}.brand strong{display:block;font-size:1.1rem}.brand small{color:var(--muted);font-size:.8rem}.campaign-brand{display:flex;align-items:center;gap:26px}.campaign-brand span{font-size:.65rem;font-weight:800;letter-spacing:.13em;line-height:1.55}.campaign-brand b{font-size:1rem;letter-spacing:0}.campaign-brand em{color:var(--deep-green);font-style:normal}.campaign-brand img{width:78px;height:64px;object-fit:contain}.navigation{background:var(--navy);color:white;position:sticky;top:0;z-index:8;box-shadow:0 3px 6px #00000008}.navigation .wrap{display:flex;align-items:center;justify-content:space-between}.navigation #nav-links{display:flex;gap:30px}.navigation a{display:block;padding:17px 0;font-size:.85rem;font-weight:600;position:relative;color:#e5efef;white-space:nowrap}.navigation a.active{color:var(--green)}.navigation a.active:after{content:'';position:absolute;bottom:0;height:3px;left:0;right:0;background:var(--green)}.nav-date{font-size:.65rem;letter-spacing:.12em;color:#bdcbd0}.menu-toggle{display:none}.hero{overflow:hidden;background:#f0f5f1}.hero-inner{display:grid;grid-template-columns:1.2fr 1fr;min-height:534px;gap:24px}.hero-copy{padding:50px 0 25px;align-self:center}.eyebrow{font-weight:700;font-size:.7rem;letter-spacing:.15em;display:inline-flex;align-items:center;gap:10px;line-height:1.5}.tiny-line{width:23px;height:2px;background:var(--deep-green)}h1{font-size:clamp(2.8rem,4.4vw,4.4rem);font-weight:800;line-height:1.13;letter-spacing:-.05em;margin:18px 0 22px}h1 em{font-style:normal;color:var(--deep-green)}.hero p{font-size:1rem;color:var(--muted);line-height:1.8}.hero-actions{display:flex;gap:12px;margin-top:25px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:47px;border-radius:5px;padding:12px 22px;font-size:.85rem;font-weight:700;line-height:1.5}.green{background:var(--green);color:var(--ink)}.outline{border:1px solid #aabdbb;background:transparent}.dark{background:var(--ink);color:white}.hero-bottom{margin-top:39px;display:flex;align-items:center;gap:30px}.slide-controls{display:flex;align-items:center;gap:13px}.slide-controls>button{font-size:1.4rem;width:28px;height:32px;padding:0}.slide-controls #hero-dots{display:flex;align-items:center;gap:8px}.slide-controls #hero-dots button{background:#c0cfca;width:7px;height:7px;padding:0;border-radius:50%}.slide-controls #hero-dots button[aria-pressed=true]{background:var(--deep-green);width:23px;border-radius:5px}.hero-note{font-size:.75rem;color:var(--muted)}.hero-art{position:relative;display:flex;align-items:flex-end;justify-content:center;min-width:0}.hero-ring{position:absolute;width:420px;height:420px;border-radius:50%;background:var(--green);top:55px;left:50%;transform:translateX(-50%)}.hero-ring:after{content:'';position:absolute;inset:20px;border:1px solid #759a36;border-radius:50%;opacity:.4}.hero-art>img{width:250px;height:390px;object-fit:contain;position:relative;z-index:2;margin-bottom:45px;filter:drop-shadow(0 16px 10px #213b3720);transform:translateX(-35px)}.art-label{position:absolute;top:64px;left:24px;font-family:Manrope;font-size:3.5rem;line-height:.98;font-weight:800;letter-spacing:-.06em;color:#52752f20;transform:rotate(-9deg);z-index:1}.art-label em{font-style:normal}.speech{position:absolute;right:-1px;top:170px;z-index:3;background:white;padding:19px 22px;border-radius:12px 12px 12px 0;box-shadow:0 10px 35px #193b2615;transform:rotate(3deg)}.speech span{display:block;font-size:.72rem;color:var(--deep-green);margin-bottom:5px}.speech b{font-size:1rem;line-height:1.4;display:block}.mascot-name{position:absolute;bottom:26px;font-size:.65rem;font-weight:700;letter-spacing:.18em;color:var(--muted)}.section{padding-top:64px;padding-bottom:64px}.section-top{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:30px}h2{font-size:2.15rem;letter-spacing:-.045em;line-height:1.25;font-weight:800;margin-top:9px}.section-top p{color:var(--muted);margin-top:12px;font-size:.9rem}.badge{font-size:.63rem;letter-spacing:.09em;background:var(--wash);padding:7px 11px;border:1px solid var(--line);border-radius:4px;white-space:nowrap;margin-top:26px}.section-number{font-size:.65rem;letter-spacing:.1em;color:var(--muted);margin-top:35px;white-space:nowrap}.stats{display:grid;grid-template-columns:repeat(5,1fr);padding:10px 0 30px;gap:30px}.stat{border-right:1px solid var(--line)}.stat:last-child{border:0}.stat-icon{width:22px;height:22px;color:var(--deep-green);margin-bottom:13px}.stat strong{display:block;font-size:2.35rem;font-weight:800;letter-spacing:-.05em;line-height:1.2}.stat span{display:block;color:var(--muted);font-size:.85rem;margin-top:7px}.timeline-box{padding-top:20px;border-top:1px solid var(--line)}.timeline-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;font-size:.85rem}.timeline-head strong span{font-weight:400;color:var(--muted)}.timeline-head>span{color:var(--muted);font-size:.75rem}.timeline{display:flex;gap:7px}.timeline button{flex:1;border:1px solid var(--line);background:var(--wash);border-radius:4px;min-height:42px;font-size:.85rem}.timeline button.done{background:#e6f2e3;border-color:#d6e6d0}.timeline button.selected{background:var(--ink);color:var(--green);border-color:var(--ink);font-weight:700}.feature-section{background:var(--ink);color:white;padding:48px 0 54px}.feature-section .eyebrow{color:var(--green)}.feature-section h2{font-size:1.9rem}.feature-section .badge{border-color:#45616b;background:#173b45;color:#d4e6e8}.feature-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:50px;align-items:center}.compare{aspect-ratio:16/10;position:relative;overflow:hidden;border-radius:7px;background:#dce7e0;--split:50%}.compare img{width:100%;height:100%;object-fit:cover}.compare .before-layer{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--split)) 0 0)}.compare:after{content:'';height:100%;width:2px;background:white;position:absolute;left:var(--split);top:0;pointer-events:none}.compare input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;z-index:3}.compare input:focus-visible{opacity:.15}.compare .compare-handle{position:absolute;left:var(--split);top:50%;transform:translate(-50%,-50%);width:40px;height:40px;background:white;color:var(--ink);display:grid;place-items:center;border-radius:50%;font-size:1.1rem;z-index:2;box-shadow:0 1px 10px #0002;pointer-events:none}.compare .compare-label{position:absolute;top:15px;background:#0c2934bf;color:white;font-size:.65rem;letter-spacing:.08em;padding:4px 10px;border-radius:3px;z-index:2;pointer-events:none}.compare .before-label{left:15px}.compare .after-label{right:15px}.feature-copy .tag{display:inline-flex;color:var(--green);font-size:.65rem;letter-spacing:.1em;gap:6px;border:1px solid #42616b;padding:5px 8px;border-radius:3px}.feature-copy h3{font-size:1.9rem;line-height:1.35;letter-spacing:-.03em;margin:17px 0}.feature-copy p{color:#b5c8ce;font-size:.9rem;line-height:1.8}.location-meta{display:flex;gap:10px;align-items:center;font-size:.8rem;color:#b9d0d3;margin-bottom:15px}.feature-copy .button{margin-top:25px}.day-strip{display:flex;gap:6px;overflow-x:auto;scrollbar-width:thin;padding-bottom:10px;margin-bottom:15px}.day-strip button{min-width:70px;flex:1;min-height:62px;border:1px solid var(--line);border-radius:5px;background:var(--white);font-size:.7rem;white-space:nowrap;padding:7px}.day-strip button b{display:block;font-size:.8rem}.day-strip button span{display:block;font-size:.65rem;color:var(--muted);margin-top:2px}.day-strip button[aria-selected=true]{background:var(--ink);color:white;border-color:var(--ink)}.day-strip button[aria-selected=true] span{color:var(--green)}.filters{display:flex;gap:12px;align-items:flex-end;margin-bottom:24px;flex-wrap:wrap}.filter-label{display:flex;flex-direction:column;gap:5px;font-size:.7rem;color:var(--muted)}select,input[type=search]{border:1px solid var(--line);border-radius:5px;padding:10px 34px 10px 13px;background:var(--white);color:var(--ink);font-size:.8rem;min-height:42px;max-width:100%}.filters .result-count{margin-left:auto;font-size:.75rem;color:var(--muted);padding-bottom:12px}.reset-filters{font-size:.75rem;color:var(--deep-green);padding:12px 5px;text-decoration:underline}.media-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.media-card{text-align:left;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:var(--white);padding:0;width:100%;transition:transform .2s,box-shadow .2s}.card-image{position:relative;aspect-ratio:4/3;overflow:hidden}.card-image>img{width:100%;height:100%;object-fit:cover}.card-tag{position:absolute;left:12px;top:12px;background:#fffef6eb;padding:4px 8px;border-radius:3px;font-size:.6rem;letter-spacing:.03em;color:var(--ink)}.card-body{padding:15px}.card-body h3{font-size:.85rem;line-height:1.5;font-family:Manrope;letter-spacing:-.015em;font-weight:700}.card-body p{font-size:.7rem;color:var(--muted);margin-top:8px}.card-body .card-date{margin-top:10px;padding-top:10px;border-top:1px solid var(--line);font-size:.65rem;color:var(--muted)}.video-section{background:var(--wash);padding:60px 0}.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.video-grid .card-image{aspect-ratio:16/9}.video-grid .card-body h3{font-size:1.05rem}.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--green);border-radius:50%;width:58px;height:58px;display:grid;place-items:center;color:var(--ink);font-size:1.4rem}.duration{position:absolute;bottom:13px;right:13px;background:#0c2934da;color:white;border-radius:3px;font-size:.65rem;padding:4px 7px}.ba-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.ba-card{border:1px solid var(--line);border-radius:7px;overflow:hidden}.ba-card .compare{border-radius:0;aspect-ratio:4/3}.ba-card h3{font-size:.9rem;margin-bottom:6px}.ba-card p{font-size:.72rem;color:var(--muted)}.ba-caption{padding:17px}.map-section{background:#eef3f0;padding:60px 0}.map-filter{font-size:.7rem;color:var(--muted);display:grid;gap:5px;margin-top:15px}.map-layout{display:grid;grid-template-columns:1.8fr 1fr;border:1px solid #d5dfd9;border-radius:9px;overflow:hidden;background:white}.map-canvas{position:relative;min-height:530px;background:#e4eddf}.map-canvas svg{width:100%;height:530px}.map-toolbar{position:absolute;top:18px;left:18px;display:grid;z-index:2;background:white;border-radius:5px;box-shadow:0 3px 10px #21372116;overflow:hidden}.map-toolbar button{border-bottom:1px solid var(--line);width:35px;height:35px;font-size:1.15rem}.map-legend{position:absolute;bottom:16px;left:16px;display:flex;gap:15px;font-size:.65rem;background:white;border-radius:4px;padding:9px 12px}.map-legend>span{display:flex;gap:6px;align-items:center}.map-legend i{background:#347951;width:7px;height:7px;border-radius:50%}.map-legend i.blue{background:#3c8ea5}.map-side{background:white;max-height:530px;overflow:auto}.map-side-head{padding:20px 22px;border-bottom:1px solid var(--line);position:sticky;top:0;background:white;z-index:1}.map-side-head strong{display:block;font-size:1rem}.map-side-head span{font-size:.72rem;color:var(--muted)}.location-list{padding:10px 12px}.location-list button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px;text-align:left;font-size:.8rem;border-radius:5px}.location-list button span{background:var(--wash);border-radius:3px;min-width:24px;text-align:center;color:var(--muted);font-size:.7rem}.location-list button.selected{background:#e7f3de;font-weight:700}.map-detail{padding:20px}.map-detail h3{font-size:1rem;margin-bottom:8px}.map-detail p{font-size:.8rem;color:var(--muted);margin-bottom:15px}.map-detail img{border-radius:5px;aspect-ratio:16/9;object-fit:cover;margin-bottom:12px}.map-note{margin-top:12px;font-size:.7rem;color:var(--muted)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-top:78px;padding-bottom:78px}.about-grid h2{font-size:2.6rem}.about-grid>div>p{color:var(--muted);font-size:.9rem;line-height:1.9;margin:22px 0}.about-actions{padding-top:8px}.about-actions article{display:flex;align-items:flex-start;gap:22px;border-bottom:1px solid var(--line);padding:22px 0}.about-actions article:last-child{border:0}.about-actions article>span{width:43px;height:43px;border-radius:50%;background:#eef5e9;color:var(--deep-green);display:grid;place-content:center;flex-shrink:0;font-size:.85rem;font-weight:700}.about-actions h3{font-size:1.02rem}.about-actions p{font-size:.85rem;color:var(--muted);margin-top:8px}.archive-section{background:var(--wash);padding:60px 0}.year-stamp{font-family:Manrope;font-size:3.5rem;font-weight:800;letter-spacing:-.05em;color:#ccd9d4}.archive-filters input{min-width:225px}.archive-filters{gap:12px}.archive-section #load-more{display:flex;margin:30px auto 0}.empty{padding:45px 20px;text-align:center;background:var(--wash);border:1px dashed var(--line);border-radius:6px;grid-column:1/-1}.empty strong{font-size:1rem}.empty p{color:var(--muted);font-size:.85rem;margin-top:8px}footer{background:var(--ink);color:#d8e5e8;padding-top:48px}.footer-top{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:55px;padding-bottom:42px}.footer-title{font-size:.95rem;font-weight:700;color:white;display:block;margin-bottom:12px}.footer-top p{font-size:.8rem;color:#a2b8bd;margin-bottom:15px}.footer-top a{display:block;font-size:.8rem;color:#c9dce0;margin:8px 0}.footer-tip{position:relative;background:#20424a;border-radius:7px;padding:23px 80px 23px 24px;align-self:start}.footer-tip .eyebrow{font-size:.6rem;color:var(--green)}.footer-tip strong{display:block;font-size:1rem;line-height:1.6;margin-top:8px}.footer-tip img{height:95px;object-fit:contain;position:absolute;right:10px;bottom:10px;width:65px}.footer-bottom{display:flex;justify-content:space-between;gap:25px;padding-top:20px;padding-bottom:20px;border-top:1px solid #2e4b55;font-size:.65rem;color:#a2b8bd}.footer-bottom a{white-space:nowrap;color:var(--green)}dialog{width:min(900px,calc(100% - 36px));padding:0;border:0;border-radius:10px;background:white;color:var(--ink);max-height:92vh;overflow:auto}dialog::backdrop{background:#081e29d9;backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:12px;top:12px;z-index:5;width:36px;height:36px;border-radius:50%;background:white;box-shadow:0 1px 10px #0002;font-size:1.5rem}.dialog-caption{padding:24px 30px}.dialog-caption h2{font-size:1.45rem;line-height:1.5}.dialog-caption p{font-size:.85rem;color:var(--muted);margin-top:10px}.dialog-caption>span{font-size:.75rem;color:var(--muted)}#dialog-body img{width:100%;max-height:60vh;object-fit:contain;background:#e4ede6}#dialog-body .compare{aspect-ratio:16/10;border-radius:0}#dialog-body video{width:100%;max-height:60vh;background:var(--ink)}.video-unavailable{padding:55px 35px;background:#eaf1eb;text-align:center}.video-unavailable h3{font-size:1.3rem;margin:15px 0}.video-unavailable p{max-width:560px;margin:auto;color:var(--muted);font-size:.9rem}.video-unavailable .video-icon{font-size:3rem;color:var(--deep-green)}.dialog-actions{display:flex;gap:10px;margin-top:15px}.dialog-actions button{border:1px solid var(--line);border-radius:4px;padding:6px 14px;font-size:.85rem}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:var(--ink);color:white;padding:12px 22px;border-radius:6px;font-size:.85rem;z-index:30;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}body.high-contrast{--ink:#000;--navy:#000;--muted:#292929;--line:#5e5e5e;--wash:#fff;--deep-green:#005024}body.high-contrast .hero{background:white}body.high-contrast .feature-copy p,body.high-contrast .location-meta{color:white}body.high-contrast .demo-bar{background:white}body.high-contrast .utility,body.high-contrast .feature-section,body.high-contrast footer{color:#fff;background:#000}body.high-contrast .video-section,body.high-contrast .archive-section{background:white}.location-marker{cursor:pointer}.location-marker:focus{outline:none}.location-marker:focus circle{stroke:#000;stroke-width:4}
@media(min-width:1450px){.hero-inner{min-height:565px}.hero-art>img{height:420px;width:280px}}@media(max-width:1100px){.wrap{width:calc(100% - 48px)}.navigation #nav-links{gap:22px}.nav-date{display:none}.hero-ring{width:360px;height:360px;top:85px}.speech{right:-8px;padding:14px 16px}.hero-art>img{transform:translateX(-15px)}.art-label{left:0;font-size:3rem;top:110px}.feature-grid{gap:30px}.media-grid{gap:15px}.stats{gap:22px}.about-grid{gap:55px}.section-number{font-size:.6rem}.day-strip button{min-width:63px}.archive-filters input{min-width:150px}}@media(max-width:760px){.wrap{width:calc(100% - 36px)}.demo-bar .wrap{align-items:flex-start;flex-direction:column;gap:3px;padding-top:8px;padding-bottom:8px}.demo-bar{font-size:.65rem}.demo-bar label{width:100%;justify-content:space-between}.utility .wrap>span,.accessibility>span{display:none}.utility .wrap{justify-content:flex-end}.masthead{height:89px;gap:12px}.brand-mark{width:43px;height:52px;font-size:1rem}.brand{gap:10px}.brand strong{font-size:.85rem;max-width:190px;line-height:1.5}.brand small{font-size:.65rem;line-height:1.3;display:block;max-width:170px;margin-top:4px}.campaign-brand{gap:0}.campaign-brand>span{display:none}.campaign-brand img{width:62px;height:60px}.navigation .wrap{flex-wrap:wrap;position:relative}.menu-toggle{display:block;color:white;padding:12px 0;min-height:47px;font-size:.85rem}.navigation #nav-links{display:none;flex-wrap:wrap;width:100%;gap:0;padding-bottom:10px}.navigation #nav-links.open{display:flex}.navigation a{width:50%;padding:10px}.navigation a.active:after{display:none}.nav-date{display:block;margin-left:auto;font-size:.6rem}.hero-inner{grid-template-columns:1fr;gap:0}.hero-copy{padding:35px 0 0;z-index:3}h1{font-size:3rem;margin-top:16px}.hero p{font-size:.9rem}.hero-actions{flex-wrap:wrap}.button{font-size:.78rem;padding:11px 16px}.hero-bottom{margin-top:25px;gap:20px}.hero-note{font-size:.65rem}.hero-art{height:320px;min-height:320px;justify-content:center;margin-top:0}.hero-ring{width:280px;height:280px;top:24px}.hero-art>img{width:170px;height:285px;margin-bottom:9px;transform:translateX(-27px)}.speech{right:0;top:110px;padding:11px 14px}.speech b{font-size:.8rem}.speech span{font-size:.65rem}.art-label{font-size:2.6rem;top:52px;left:24px}.mascot-name{font-size:.55rem;bottom:6px;right:15px}.section{padding-top:40px;padding-bottom:40px}.section-top{margin-bottom:22px;gap:14px;flex-wrap:wrap}.eyebrow{font-size:.6rem;letter-spacing:.12em}h2{font-size:1.8rem}.section-top p{font-size:.85rem}.badge{font-size:.55rem;margin-top:0}.section-number{display:none}.stats{grid-template-columns:repeat(3,1fr);gap:25px 13px;padding:8px 0 26px}.stat{border:0}.stat strong{font-size:1.75rem}.stat span{font-size:.72rem}.stat-icon{width:19px;height:19px;margin-bottom:7px}.timeline{overflow:auto;padding-bottom:5px}.timeline button{flex:0 0 35px;min-height:38px;font-size:.8rem}.timeline-head{align-items:flex-start;gap:18px}.timeline-head>span{font-size:.65rem;text-align:right}.feature-section{padding:35px 0}.feature-grid{grid-template-columns:1fr;gap:25px}.feature-copy h3{font-size:1.55rem}.feature-copy .button{margin-top:18px}.media-grid{grid-template-columns:repeat(2,1fr);gap:14px}.card-body{padding:11px}.card-body h3{font-size:.76rem}.card-body p{font-size:.65rem}.card-tag{font-size:.55rem;left:7px;top:7px;padding:3px 6px}.filters{gap:8px}.filter-label{flex:1;min-width:135px}.filters select{width:100%;padding:9px 8px;font-size:.7rem}.filters .result-count{padding-bottom:6px;font-size:.65rem}.reset-filters{font-size:.7rem}.video-section,.map-section,.archive-section{padding:40px 0}.video-grid{grid-template-columns:1fr;gap:20px}.ba-grid{grid-template-columns:1fr;gap:20px}.ba-card .compare{aspect-ratio:16/10}.map-layout{grid-template-columns:1fr}.map-canvas,.map-canvas svg{min-height:0;height:370px}.map-side{max-height:310px}.map-legend{font-size:.55rem;gap:12px}.map-side-head{padding:14px 18px}.map-note{font-size:.65rem}.map-filter{margin-top:0}.about-grid{grid-template-columns:1fr;gap:20px}.about-grid h2{font-size:2.2rem}.about-grid>div>p{font-size:.88rem}.about-actions article{padding:17px 0}.year-stamp{font-size:2.4rem}.archive-filters .search-label{min-width:100%}.archive-filters input{width:100%}.footer-top{grid-template-columns:1fr 1fr;gap:25px}.footer-tip{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:8px;font-size:.6rem}.dialog-caption{padding:18px}.dialog-caption h2{font-size:1.2rem}.video-unavailable{padding:45px 25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Readable controls and generous targets across screen sizes. */
.navigation a,.button,.filters select,.filters input,.location-list button{font-size:.875rem}
.filter-label,.card-body h3,.ba-caption h3{font-size:.875rem}
.demo-bar select{font-size:.8rem}.card-body p,.ba-caption p{font-size:.75rem}
.slide-controls #hero-dots button{width:24px;height:24px;background:transparent;display:grid;place-items:center;border-radius:0}
.slide-controls #hero-dots button:before{content:'';width:7px;height:7px;border-radius:50%;background:#c0cfca}
.slide-controls #hero-dots button[aria-pressed=true]{width:28px;background:transparent}
.slide-controls #hero-dots button[aria-pressed=true]:before{width:23px;border-radius:5px;background:var(--deep-green)}
.slide-controls #hero-dots{gap:0}
html[lang=hi] h1,html[lang=hi] h2,html[lang=hi] h3{letter-spacing:0;line-height:1.4}
@media(max-width:760px){.filter-label{font-size:.8125rem}.filters select,.filters input{font-size:.875rem}.card-body h3{font-size:.875rem}.navigation a{font-size:.875rem}.hero-actions .button{font-size:.8125rem}.card-body .card-date{font-size:.7rem}}

/* Client-supplied campaign artwork: preserve each image and its natural proportions. */
.masthead-surface{background-color:#ffdf36;background-image:linear-gradient(110deg,#ffda25 0%,#ffea62 42%,#fff6a4 54%,#ffe14a 72%,#ffd51e 100%)}
.client-masthead{height:auto;min-height:0;padding-top:10px;padding-bottom:10px;gap:30px}
.client-masthead .brand{gap:22px;min-width:0}
.client-masthead .department-brand{width:min(400px,62%)}
.department-main-logo{display:block;width:100%;height:auto;object-fit:contain}
.government-lockup{width:190px;height:auto;flex-shrink:0}
.department-name{max-width:270px}.department-name strong{font-size:1.02rem;line-height:1.5}
.campaign-text-logo{width:min(290px,30%);height:auto;object-fit:contain}
.client-hero{background:#edf4ee;overflow:hidden}
.client-banner-stage{max-width:1440px;margin:auto;aspect-ratio:1280/467;background:#eff6ed}
.client-banner-stage img{width:100%;height:100%;object-fit:contain;display:block}
.client-banner-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:22px;padding-bottom:22px}
.banner-caption h1{font-size:1.35rem;line-height:1.4;letter-spacing:-.025em;margin:0}
.banner-caption p{font-size:.8rem;margin-top:4px;color:var(--muted);line-height:1.6}
.banner-navigation{text-align:center;flex-shrink:0}
.banner-navigation .slide-controls{gap:8px}
.banner-navigation .slide-controls #hero-dots button{width:32px;height:44px}
.banner-navigation .slide-controls #hero-dots button[aria-pressed=true]{width:32px}
.client-banner-bottom .hero-actions{margin:0;gap:10px}
.client-banner-bottom .button{font-size:.8rem;padding:11px 15px}
.client-campaign-identity{display:flex;align-items:center;justify-content:center;gap:30px;padding:0 15px 18px;border-bottom:1px solid var(--line)}
.about-mascot{width:105px;height:160px;object-fit:contain}
.about-campaign-logo{width:220px;height:auto;max-width:55%;object-fit:contain}
.footer-government-logo{width:95px;height:auto;background:#fff;border-radius:5px;padding:8px;margin-bottom:18px}
.footer-tip img{height:100px;width:72px;object-fit:contain;right:8px;bottom:8px}
@media(max-width:760px){.client-masthead .department-brand{width:100%}}
@media(max-width:1100px){.government-lockup{width:155px}.client-masthead{gap:20px}.client-masthead .brand{gap:16px}.department-name{max-width:210px}.department-name strong{font-size:.9rem}.campaign-text-logo{width:260px;max-width:30%}.client-banner-bottom{flex-wrap:wrap}.banner-caption{flex:1}.client-banner-bottom .hero-actions{width:100%;justify-content:center}.client-campaign-identity{gap:20px}.about-campaign-logo{width:190px}}
@media(max-width:760px){.client-masthead{padding-top:12px;padding-bottom:12px;gap:12px;flex-wrap:wrap;min-height:0}.client-masthead .brand{width:100%;gap:14px;justify-content:center}.government-lockup{width:130px}.department-name{max-width:185px}.department-name strong{font-size:.85rem;line-height:1.5}.department-name small{font-size:.7rem;max-width:185px;line-height:1.5}.campaign-text-logo{width:220px;max-width:90%;margin:auto}.client-banner-bottom{padding-top:18px;padding-bottom:20px;gap:15px}.banner-caption{flex-basis:100%;text-align:center}.banner-caption h1{font-size:1.25rem}.banner-caption p{font-size:.8rem}.banner-navigation{margin:auto}.client-banner-bottom .hero-actions{gap:10px;flex-wrap:wrap}.client-banner-bottom .button{font-size:.8125rem}.client-campaign-identity{gap:30px}.about-mascot{width:105px;height:170px}.about-campaign-logo{width:190px}.footer-government-logo{width:85px}.client-hero .slide-controls #hero-dots{gap:2px}}

/* Calm motion and a clear reading hierarchy for campaign information. */
html{scroll-padding-top:var(--sticky-nav-offset,82px)}
body{font-size:1.0625rem;line-height:1.6}
html[lang=hi] body,html[lang=hi] h1,html[lang=hi] h2,html[lang=hi] h3,html[lang=hi] .stats strong,html[lang=hi] .year-stamp{font-family:'Noto Sans Devanagari','Manrope',sans-serif}
main h2,.feature-section h2,.about-grid h2{font-size:clamp(2rem,2.8vw,2.5rem);line-height:1.3;letter-spacing:-.025em}
.banner-caption h1{font-size:clamp(2rem,2.7vw,2.5rem);line-height:1.3;letter-spacing:-.025em}
.feature-copy h3{font-size:2rem;line-height:1.35}
.section-top p,.feature-copy p,.about-grid>div>p,.about-actions p,.card-body p,.video-unavailable p,.dialog-caption p,.empty p{font-size:1rem;line-height:1.6}
.banner-caption p{font-size:1rem;line-height:1.6}
.card-body h3,.video-grid .card-body h3,.ba-caption h3{font-size:1.0625rem;line-height:1.5}
.card-body .card-date,.ba-caption p,.location-meta,.stat span,.timeline-head,.timeline-head>span,.map-note{font-size:.875rem;line-height:1.6}
.button,.client-banner-bottom .button,.navigation a,.filter-label,.filters select,.filters input{font-size:1rem}
.button,.filters select,.filters input,.day-strip button,.timeline button{min-height:44px}
.button{line-height:1.6}
.footer-top p,.footer-top a{font-size:1rem;line-height:1.6}
.section,.video-section,.map-section,.archive-section,.about-grid{padding-top:80px;padding-bottom:80px}
.feature-section{padding-top:72px;padding-bottom:72px}
.section-top{margin-bottom:32px}
.navigation a{transition:color 180ms ease}
.navigation a.active,.navigation a[aria-current=location]{color:var(--green)}
a:hover,button:hover:not(:disabled){filter:none}
.button,.media-card,.ba-card,.day-strip button,.timeline button,.reset-filters,.dialog-actions button,.slide-controls>button{transition:transform 180ms ease,box-shadow 180ms ease,background-color 180ms ease}
@media(hover:hover) and (pointer:fine){
  .button:hover,.media-card:hover,.ba-card:hover,.day-strip button:hover:not(:disabled),.timeline button:hover:not(:disabled),.reset-filters:hover,.dialog-actions button:hover,.slide-controls>button:hover{transform:translateY(-3px);box-shadow:0 8px 22px rgb(12 41 52 / 10%)}
}
.client-banner-stage{position:relative}
#hero-image-previous{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:1;transition:opacity 500ms ease}
#hero-image-previous.is-fading{opacity:0}
.motion-reveal{opacity:0;transform:translateY(18px);transition:opacity 500ms ease,transform 500ms ease}
.motion-reveal.is-revealed,.motion-reveal:focus-within{opacity:1;transform:none}
@media(max-width:760px){
  main h2,.feature-section h2,.about-grid h2{font-size:clamp(1.5rem,6.7vw,1.75rem)}
  .banner-caption h1,.feature-copy h3{font-size:1.625rem}
  .section,.video-section,.map-section,.archive-section,.about-grid,.feature-section{padding-top:48px;padding-bottom:48px}
  .section-top{margin-bottom:24px}
  .media-grid{gap:16px}
  .client-banner-bottom .hero-actions{gap:12px}
}
@media(prefers-reduced-motion:reduce){
  .motion-reveal{opacity:1!important;transform:none!important}
  #hero-image-previous{transition:none!important}
  .button:hover,.media-card:hover,.ba-card:hover,.day-strip button:hover,.timeline button:hover,.reset-filters:hover,.dialog-actions button:hover,.slide-controls>button:hover{transform:none!important}
}

/* A compact yellow identity band and a clear, sticky campaign menu. */
.masthead-surface{background-image:linear-gradient(118deg,transparent 58%,rgb(255 255 255 / 22%) 58%,rgb(255 255 255 / 8%) 78%,transparent 78%),linear-gradient(105deg,#ffdc30,#fff18e 54%,#ffdd32);border-bottom:1px solid rgb(12 41 52 / 8%)}
.masthead-campaign{display:flex;flex-direction:column;align-items:flex-end;gap:8px;padding-left:28px;border-left:1px solid rgb(12 41 52 / 16%);flex-shrink:0}
.masthead-campaign-label{font-size:.625rem;font-weight:800;letter-spacing:.17em;color:#345d3a;line-height:1.5}
.masthead-campaign .campaign-text-logo{width:290px;max-width:100%}
.navigation{background:linear-gradient(100deg,#0c2934,#143b40);border-bottom:1px solid rgb(255 255 255 / 9%);box-shadow:0 5px 18px rgb(12 41 52 / 12%)}
.navigation .wrap{min-height:68px;gap:20px;padding-top:9px;padding-bottom:9px}
.navigation #nav-links{gap:5px;flex-wrap:wrap;order:1}
.navigation a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:9px 13px;border:1px solid transparent;border-radius:9px;font-size:.9375rem;font-weight:700;line-height:1.5;color:#dce9e8;transition:color 180ms ease,background-color 180ms ease,border-color 180ms ease}
.navigation a.active,.navigation a[aria-current=location]{background:var(--green);color:var(--navy);border-color:var(--green);box-shadow:0 3px 9px rgb(0 0 0 / 9%)}
.navigation a.active:after{display:none}
.navigation a:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.navigation .nav-date{display:flex;align-items:center;gap:9px;flex-shrink:0;order:2;margin:0;padding:10px 12px;border:1px solid rgb(218 237 227 / 19%);border-radius:9px;background:rgb(255 255 255 / 4%);color:#d0e3dc;font-size:.625rem;letter-spacing:.065em;line-height:1.5;white-space:nowrap}
.nav-date svg{width:17px;height:17px;flex-shrink:0;color:var(--green)}
@media(hover:hover) and (pointer:fine){.navigation a:hover:not(.active){color:white;background:rgb(255 255 255 / 8%);border-color:rgb(255 255 255 / 10%)}}
body.high-contrast .navigation{background:#000}
@media(max-width:1100px){.navigation .wrap{gap:12px}.navigation #nav-links{gap:4px}.navigation a{font-size:.875rem;padding:9px 10px}.navigation .nav-date{display:none}.masthead-campaign{padding-left:20px}.masthead-campaign .campaign-text-logo{width:250px}}
@media(max-width:760px){
  .masthead-campaign{width:100%;align-items:center;border-left:0;padding:12px 0 0;border-top:1px solid rgb(12 41 52 / 12%);gap:6px}
  .masthead-campaign-label{font-size:.5625rem}.masthead-campaign .campaign-text-logo{width:230px;margin:0}
  .navigation .wrap{min-height:62px;gap:10px;padding-top:8px;padding-bottom:8px}
  .navigation .menu-toggle{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid rgb(255 255 255 / 18%);border-radius:9px;line-height:1.5;font-size:.875rem;font-weight:700}
  .menu-toggle svg{width:18px;height:18px}.menu-toggle[aria-expanded=true]{background:rgb(183 238 89 / 12%);color:var(--green);border-color:rgb(183 238 89 / 35%)}
  .navigation .nav-date{display:flex;margin-left:auto;padding:8px 9px;font-size:.5625rem;gap:6px}.nav-date svg{width:15px;height:15px}
  .navigation #nav-links{display:none;order:3;padding:10px 0 4px;border-top:1px solid rgb(255 255 255 / 10%);margin-top:2px}
  .navigation #nav-links.open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:100%}
  .navigation a{width:100%;justify-content:flex-start;padding:11px 13px;font-size:.875rem;white-space:normal}
}

/* Keep the artwork prominent; banner selection sits directly on the image. */
.client-hero{background:#fff;border-bottom:1px solid #e4ece7}
.banner-navigation{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);z-index:2;width:max-content;max-width:min(360px,calc(100% - 24px));padding:0;margin:0;isolation:isolate}
.banner-navigation .slide-controls{max-width:100%;gap:0}
.client-hero .slide-controls #hero-dots{max-width:100%;gap:0;overflow-x:auto;scrollbar-width:none}
.banner-navigation .slide-controls #hero-dots button,.banner-navigation .slide-controls #hero-dots button[aria-pressed=true]{width:44px;height:44px;flex:0 0 44px;background:transparent;position:relative;border-radius:8px}
.banner-navigation #hero-dots button:before{width:8px;height:8px;border-radius:50%;background:rgb(255 255 255 / 90%);border:1px solid rgb(12 41 52 / 25%);box-shadow:0 1px 2px rgb(0 0 0 / 20%);transition:background-color 180ms ease}
.banner-navigation #hero-dots button[aria-pressed=true]:before{width:8px;background:var(--green);border-radius:50%}
.banner-navigation #hero-dots button:focus-visible{outline:2px solid var(--green);outline-offset:-4px}
.client-banner-bottom{padding-top:24px;padding-bottom:24px;gap:24px;flex-wrap:nowrap}
.banner-caption{display:flex;align-items:center;gap:14px;min-width:0;flex:1;text-align:left}
.banner-campaign-mark{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;border-radius:13px;background:#edf6e8;color:var(--deep-green);border:1px solid #ddebd8}
.banner-campaign-mark svg{width:26px;height:26px}
.banner-caption h1{font-size:clamp(1.5rem,2.2vw,1.875rem);line-height:1.3;letter-spacing:-.035em}
.banner-caption p{font-size:.9375rem;line-height:1.6;margin-top:5px;color:#62766b}
.client-banner-bottom .hero-actions{width:auto;flex-shrink:0;gap:8px;justify-content:flex-end}
.client-banner-bottom .button{gap:10px;min-height:46px;border-radius:9px;padding:12px 16px;font-size:.875rem;line-height:1.5;white-space:nowrap}
.client-banner-bottom .button svg{width:18px;height:18px;flex-shrink:0}
.campaign-primary{background:var(--navy);color:white;box-shadow:0 3px 8px rgb(12 41 52 / 8%)}
.campaign-primary svg{color:var(--green)}
.campaign-secondary{color:var(--deep-green);background:transparent}
@media(hover:hover) and (pointer:fine){.campaign-secondary:hover{background:#f0f7ec}}
body.high-contrast .client-hero{background:white;border-color:black}
body.high-contrast .banner-caption p{color:black}
@media(max-width:950px){.client-banner-bottom{flex-wrap:wrap;gap:18px}.banner-caption{flex-basis:100%}.client-banner-bottom .hero-actions{justify-content:flex-start}}
@media(max-width:760px){.banner-navigation{bottom:2px}.client-banner-bottom{padding-top:20px;padding-bottom:20px;gap:16px}.banner-caption{gap:11px;text-align:left}.banner-campaign-mark{width:42px;height:42px;flex-basis:42px;border-radius:11px}.banner-campaign-mark svg{width:23px;height:23px}.banner-caption h1{font-size:1.5rem}.banner-caption p{font-size:.875rem}.client-banner-bottom .hero-actions{display:grid;grid-template-columns:1fr;width:100%;gap:8px}.client-banner-bottom .button{width:100%;justify-content:space-between;font-size:.875rem;white-space:normal}.campaign-secondary{border:1px solid #dbe7dc}}

/* Enlarge the mobile artwork to fill the banner, centered on the campaign. */
#hero-image-backdrop{display:none}
@media(max-width:760px){
  .client-masthead{padding-top:8px;padding-bottom:8px;gap:6px}
  .client-masthead .department-brand{max-width:320px;margin:auto}
  .masthead-campaign{padding-top:6px;gap:0}
  .masthead-campaign-label{display:none}
  .masthead-campaign .campaign-text-logo{width:170px}
  .client-banner-stage{aspect-ratio:auto;height:clamp(220px,58vw,320px);overflow:hidden;isolation:isolate;background:#d9efdf}
  .client-banner-stage #hero-image,.client-banner-stage #hero-image-previous{object-fit:cover;object-position:center}
  .client-banner-stage #hero-image{position:relative;z-index:1}
  .client-banner-stage #hero-image-previous{z-index:2}
  .banner-navigation{bottom:5px;z-index:3}
}

/* Leader artwork in the shared page container, with a gently scrolling row. */
.inauguration-section{padding:56px 0 64px;background:#fff;border-bottom:1px solid var(--line)}
.inauguration-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}
.inauguration-heading .eyebrow{color:var(--deep-green)}
.inauguration-heading h2{margin-top:8px;max-width:820px}
.inauguration-heading p{margin-top:12px;color:var(--muted);font-size:1rem;line-height:1.6}
.inauguration-date{display:flex;align-items:center;gap:10px;flex-shrink:0;padding:10px 14px;border:1px solid #d9e7da;border-radius:10px;background:#f3f8f1;color:var(--deep-green);font-size:.875rem;font-weight:600}
.inauguration-date svg{width:20px;height:20px}
.inauguration-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.inauguration-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #dce6df;border-radius:14px;background:white;box-shadow:0 4px 15px #102f3910;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.inauguration-image-link{display:block}
.inauguration-image-link img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:#edf3ee}
.inauguration-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px 14px}
.inauguration-controls button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #d9e7da;border-radius:10px;background:#f3f8f1;color:var(--deep-green);font-size:28px;cursor:pointer}
.inauguration-controls button:disabled{opacity:.35;cursor:default}
.inauguration-controls button:focus-visible,.inauguration-card a:focus-visible{outline:2px solid var(--deep-green);outline-offset:2px}
.inauguration-image-count{color:var(--deep-green);font-size:.875rem;font-weight:700;font-variant-numeric:tabular-nums}
.inauguration-card-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 16px;flex:1}
.inauguration-card-caption h3{font-size:1rem;line-height:1.5;font-weight:700;overflow-wrap:anywhere}
.inauguration-card-open{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:9px;background:#edf5e8;color:var(--deep-green)}
.inauguration-card-open svg{width:18px;height:18px}
.inauguration-card:focus-visible{outline:2px solid var(--deep-green);outline-offset:4px}
.inauguration-empty{padding:30px 24px;background:#f6f9f5;border:1px dashed #cddcc7;border-radius:13px;color:var(--muted);text-align:center;font-size:1rem}
body.high-contrast .inauguration-card,body.high-contrast .inauguration-empty,body.high-contrast .inauguration-date{border-color:black}
@media(hover:hover) and (pointer:fine){.inauguration-card:hover{transform:translateY(-3px);border-color:#bed4b8;box-shadow:0 10px 24px #102f391a}}
@media(max-width:1000px){.inauguration-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inauguration-heading{align-items:flex-start;flex-wrap:wrap}.inauguration-date{padding:8px 12px}}
@media(max-width:600px){.inauguration-section{padding:36px 0 40px}.inauguration-heading{margin-bottom:22px;gap:16px}.inauguration-grid{grid-template-columns:1fr;gap:18px}.inauguration-heading p{font-size:1rem}.inauguration-empty{padding:26px 18px}}

.leader-quotes-section{padding:56px 0 64px;background:#f3f7f2;border-bottom:1px solid #e2ebe0}
.leader-quotes-section>.wrap{padding:0}
.leader-quotes-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}
.leader-quotes-heading .eyebrow{color:var(--deep-green)}
.leader-quotes-heading h2{margin-top:8px}
.leader-quotes-mark{display:grid;place-items:center;width:56px;height:56px;flex-shrink:0;border-radius:14px;background:#e6f1dd;color:var(--deep-green)}
.leader-quotes-mark svg{width:28px;height:28px}
.leader-quotes-grid{--quote-columns:min(4,var(--quote-count,4));display:flex;position:relative;gap:18px;align-items:flex-start;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;scroll-behavior:auto;padding:4px 0 12px;touch-action:pan-x pan-y}
.leader-quotes-grid::-webkit-scrollbar{display:none}
.leader-quotes-grid:focus-visible{outline:2px solid var(--deep-green);outline-offset:4px;border-radius:13px}
.leader-quote-card{display:block;flex:0 0 calc((100% - (var(--quote-columns) - 1)*18px)/var(--quote-columns));min-width:0;background:white;border:1px solid #dce7d9;border-radius:13px;overflow:hidden;box-shadow:0 3px 10px rgb(12 41 52 / 3%);transition:transform 180ms ease,box-shadow 180ms ease}
.leader-quote-card img{display:block;width:100%;height:auto;background:white}
.leader-quote-card h3{padding:15px 17px;border-top:1px solid #edf2ea;font-size:1rem;font-weight:800;line-height:1.6;overflow-wrap:anywhere}
.leader-quotes-empty{padding:32px 24px;background:#fff;border:1px dashed #cddcc7;border-radius:13px;color:var(--muted);text-align:center;font-size:1rem}
body.high-contrast .leader-quotes-section{background:white}
body.high-contrast .leader-quote-card,body.high-contrast .leader-quotes-empty{border-color:black}
@media(hover:hover) and (pointer:fine){.leader-quote-card:hover{transform:translateY(-3px);box-shadow:0 9px 24px rgb(12 41 52 / 9%)}}
@media(max-width:1000px){.leader-quotes-grid{--quote-columns:min(2,var(--quote-count,4))}}
@media(max-width:600px){.leader-quotes-section{padding:36px 0 40px}.leader-quotes-heading{margin-bottom:22px;gap:12px}.leader-quotes-mark{width:44px;height:44px;border-radius:11px}.leader-quotes-mark svg{width:23px;height:23px}.leader-quotes-grid{--quote-columns:1;gap:18px}.leader-quote-card h3{padding:14px 16px}.leader-quotes-empty{padding:26px 18px}}
@media(prefers-reduced-motion:reduce){.leader-quote-card:hover{transform:none}}

/* Campaign overview: cumulative figures and an interactive daily journey. */
.progress-section{padding:64px 0;background:linear-gradient(180deg,#fff,#f5f8f6);border-bottom:1px solid #e4ebe5}
#progress .progress-heading{align-items:center;gap:24px;margin-bottom:28px}
#progress .progress-heading .eyebrow{color:var(--deep-green)}
#progress .progress-heading h2{margin-top:10px}
#progress .progress-heading p{margin-top:10px;font-size:1rem;line-height:1.6;max-width:620px;color:var(--muted)}
#progress .progress-demo-badge{border-radius:999px;background:#f0f5ee;border-color:#dce8d7;color:#3a6147;white-space:normal;text-align:center;padding:9px 14px;font-size:.68rem;line-height:1.5;flex-shrink:0}
#progress .progress-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;padding:0;margin:0 0 24px;border:0}
#progress .progress-metric{padding:21px;border:1px solid #dfe7e1;border-radius:16px;background:#fff;min-width:0;box-shadow:0 3px 14px rgb(12 41 52 / 3%);transition:transform 180ms ease,box-shadow 180ms ease}
.progress-metric-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.progress-metric-icon{width:38px;height:38px;display:grid;place-items:center;background:#edf4e9;color:var(--deep-green);border-radius:11px;flex-shrink:0}
.progress-metric-icon svg{width:22px;height:22px}
#progress .progress-metric-note{font-size:.67rem;color:#728178;line-height:1.5;text-align:right;max-width:95px}
#progress .progress-metric strong{display:block;font-size:clamp(28px,2.7vw,38px);line-height:1.15;letter-spacing:-.04em;margin:19px 0 8px;font-weight:800;overflow-wrap:anywhere}
#progress .progress-metric-label{display:block;font-size:.875rem;line-height:1.5;color:var(--muted)}
#progress .progress-metric.is-primary{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 5px 18px rgb(12 41 52 / 9%)}
#progress .is-primary .progress-metric-icon{background:#23453d;color:var(--green)}
#progress .is-primary .progress-metric-note,#progress .is-primary .progress-metric-label{color:#d4e3df}
.progress-detail-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:22px}
.progress-journey,.progress-snapshot{padding:26px;border:1px solid #dfe7e1;background:white;border-radius:18px;min-width:0;box-shadow:0 3px 14px rgb(12 41 52 / 3%)}
.progress-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}
.progress-panel-heading .eyebrow,.progress-snapshot .eyebrow{font-size:.65rem;color:var(--deep-green)}
.progress-panel-heading h3{margin-top:6px;font-size:1.05rem;font-weight:800;line-height:1.5;letter-spacing:-.015em}
.progress-duration{font-size:.7rem;color:var(--muted);white-space:nowrap;border:1px solid #e3e9e4;border-radius:7px;padding:6px 9px;background:#f8faf7}
.progress-track-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:11px;font-size:.85rem;line-height:1.6}
.progress-track-heading strong{font-weight:800}
.progress-track-heading strong span{font-weight:500;color:var(--muted)}
#progress-percent{font-size:.95rem;font-weight:800;color:var(--deep-green)}
.progress-meter{height:9px;background:#eaf0e7;overflow:hidden;border-radius:999px}
.progress-meter>span{display:block;height:100%;width:0;background:linear-gradient(90deg,#28754c,#96cd45);border-radius:inherit;transition:width 450ms ease}
.progress-track-meta{display:flex;justify-content:space-between;gap:12px;margin-top:9px;margin-bottom:20px;font-size:.7rem;color:var(--muted);line-height:1.5}
#progress .progress-day-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;padding:0;overflow:visible}
#progress .progress-day-grid button{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;width:auto;min-width:0;min-height:64px;padding:10px 9px;background:#f7f9f7;border:1px solid #e5ebe3;border-radius:9px;color:var(--muted);text-align:left;line-height:1.3;font-size:.75rem}
.progress-day-number{font-weight:800}
.progress-day-date{font-size:.63rem;white-space:nowrap}
#progress .progress-day-grid button.done{background:#edf5e6;border-color:#dceacf;color:#296746}
#progress .progress-day-grid button.selected{background:var(--navy);border-color:var(--navy);color:white;box-shadow:0 4px 9px rgb(12 41 52 / 10%)}
#progress .progress-day-grid button.selected .progress-day-number{color:var(--green)}
#progress .progress-day-grid button:disabled{opacity:.65;cursor:default}
.progress-day-grid button i{width:4px;height:4px;border-radius:50%;position:absolute;top:8px;right:7px;background:currentColor;opacity:.5}
.progress-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:18px;font-size:.68rem;color:var(--muted);line-height:1.5}
.progress-legend>span{display:inline-flex;align-items:center;gap:6px}
.progress-legend i{width:7px;height:7px;border-radius:50%;background:#c8d1c6}
.progress-legend i.available{background:#7ca85e}.progress-legend i.selected{background:var(--navy)}
.progress-snapshot{display:flex;flex-direction:column;background:linear-gradient(145deg,#fff,#f6faef)}
.progress-snapshot h3{margin-top:8px;font-size:1.6rem;line-height:1.4;font-weight:800;letter-spacing:-.025em}
.progress-snapshot h3 span{font-size:1rem;font-weight:600;color:var(--deep-green);letter-spacing:0}
.progress-snapshot p{font-size:.85rem;line-height:1.6;color:var(--muted);margin-top:9px}
.progress-day-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:23px 0 18px}
.progress-day-totals>div{min-width:0}
.progress-day-totals>div+div{border-left:1px solid #e0e8d9;padding-left:18px}
.progress-day-totals svg{width:22px;height:22px;color:var(--deep-green);margin-bottom:7px}
.progress-day-totals strong{display:block;font-size:1.8rem;font-weight:800;line-height:1.2}
.progress-day-totals span{display:block;font-size:.75rem;color:var(--muted);line-height:1.5;margin-top:5px}
.progress-zone-summary{display:flex;align-items:center;gap:8px;color:var(--deep-green);font-size:.75rem;line-height:1.5}
.progress-zone-summary svg{width:17px;height:17px;flex-shrink:0}
.progress-snapshot-actions{display:flex;flex-direction:column;gap:7px;margin-top:auto;padding-top:20px}
.progress-snapshot-actions .button{gap:14px;justify-content:space-between;padding:11px 15px;border-radius:9px;min-height:46px;font-size:.8rem}
.progress-snapshot-actions svg{width:19px;height:19px;flex-shrink:0}
.progress-video-link{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--deep-green);font-weight:700;font-size:.75rem;padding:8px;min-height:44px;border-radius:8px}
@media(hover:hover) and (pointer:fine){#progress .progress-metric:hover{transform:translateY(-3px);box-shadow:0 9px 22px rgb(12 41 52 / 8%)}}
@media(max-width:1100px){#progress .progress-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}#progress .progress-metric.is-primary{grid-column:span 2}.progress-detail-grid{grid-template-columns:1fr 1fr}.progress-panel-heading{align-items:flex-start;flex-direction:column;gap:10px}#progress .progress-day-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:820px){.progress-detail-grid{grid-template-columns:1fr}.progress-panel-heading{flex-direction:row;align-items:center}#progress .progress-day-grid{grid-template-columns:repeat(8,minmax(0,1fr))}.progress-snapshot-actions{flex-direction:row;align-items:center;gap:12px}.progress-snapshot-actions .button{flex:1}.progress-snapshot-actions .progress-video-link{flex:1}}
@media(max-width:600px){.progress-section{padding:40px 0}#progress .progress-heading{align-items:flex-start;gap:13px;margin-bottom:22px}#progress .progress-heading p{font-size:.9rem}#progress .progress-demo-badge{font-size:.6rem;max-width:140px}#progress .progress-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}#progress .progress-metric{padding:16px}#progress .progress-metric strong{font-size:30px;margin:13px 0 5px}.progress-metric-icon{width:32px;height:32px;border-radius:9px}.progress-metric-icon svg{width:19px;height:19px}#progress .progress-metric-note{font-size:.6rem}#progress .progress-metric-label{font-size:.8rem}.progress-detail-grid{gap:18px}.progress-journey,.progress-snapshot{padding:20px;border-radius:15px}.progress-panel-heading{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:18px}.progress-panel-heading h3{font-size:1rem}.progress-track-heading{font-size:.75rem}#progress .progress-day-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}#progress .progress-day-grid button{min-height:64px;padding:9px 8px}.progress-track-meta{font-size:.65rem}.progress-legend{font-size:.65rem;gap:12px}.progress-snapshot h3{font-size:1.45rem}.progress-snapshot-actions{gap:7px}.progress-snapshot-actions .button{font-size:.73rem;padding:10px 12px}.progress-video-link{font-size:.7rem}.progress-day-totals{margin-top:18px}}
body.high-contrast .progress-section,body.high-contrast .progress-snapshot{background:white}
body.high-contrast .progress-metric,body.high-contrast .progress-journey,body.high-contrast .progress-snapshot,body.high-contrast .progress-day-grid button{border-color:black}
body.high-contrast .progress-metric-note,body.high-contrast .progress-metric-label,body.high-contrast .progress-track-meta,body.high-contrast .progress-snapshot p{color:inherit}
@media(prefers-reduced-motion:reduce){#progress .progress-metric:hover{transform:none}.progress-meter>span{transition:none}}

/* Campaign header and direct Anthom download */
.client-masthead{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(170px,.65fr);gap:24px;align-items:center}
.client-masthead .department-brand{width:100%;max-width:400px}
.client-masthead .masthead-campaign{align-items:center;text-align:center;border:0;padding:0;min-width:0;width:100%}
.client-masthead .masthead-campaign .campaign-text-logo{width:310px;max-width:100%;margin:0}
.anthom-download{justify-self:end;position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;gap:12px;padding:9px 20px 9px 9px;background:linear-gradient(135deg,#103b40,#126b4d);color:#fff;border:2px solid #ef4444;border-radius:18px;text-decoration:none;font-size:.875rem;font-weight:800;box-shadow:0 8px 22px #103b4033;animation:anthom-glow 2.4s ease-in-out infinite;transform-origin:center;transition:transform .2s ease,background .2s ease}
.anthom-download::before{content:"";position:absolute;z-index:-1;inset:-70% -40%;background:linear-gradient(110deg,transparent 40%,#ffffff30 50%,transparent 60%);transform:translateX(-80%);animation:anthom-shine 4.5s ease-in-out infinite;pointer-events:none}
.anthom-icon{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#ddff89,#b7ee59);box-shadow:inset 0 1px 0 #ffffffb3;color:#103b40}
.anthom-button-label{position:relative;white-space:nowrap}
.anthom-download .anthom-icon svg{color:inherit;width:22px;height:22px}
.anthom-icon-arrow{animation:anthom-arrow 2.4s ease-in-out infinite}
@keyframes anthom-shine{0%,35%{transform:translateX(-80%)}65%,100%{transform:translateX(80%)}}
@keyframes anthom-arrow{0%,65%,100%{transform:translateY(0)}35%{transform:translateY(2px)}}
.anthom-download svg{width:21px;height:21px;color:#b7ee59}
.anthom-download:hover{background:linear-gradient(135deg,#164d48,#17845a);animation-play-state:paused}
.anthom-download:focus-visible{outline:3px solid #28754c;outline-offset:4px}
.anthom-download[aria-disabled=true]{cursor:default}
@keyframes anthom-glow{0%,100%{transform:scale(1);border-color:#dc2626;box-shadow:0 8px 22px #103b4033,0 0 0 0 #ef444400;filter:brightness(1)}50%{transform:scale(1.045);border-color:#ff5555;box-shadow:0 10px 26px #103b4040,0 0 0 5px #ef444426,0 0 18px #ef444435;filter:brightness(1.08)}}
@media(max-width:760px){.client-masthead{grid-template-columns:minmax(0,1fr) auto;gap:10px}.client-masthead .department-brand{grid-column:1/-1;max-width:320px;justify-self:center}.client-masthead .masthead-campaign .campaign-text-logo{width:220px}.anthom-download{padding:10px 12px;gap:6px;font-size:.75rem}.anthom-download svg{width:18px;height:18px}}
@media(max-width:420px){.client-masthead{gap:8px}.client-masthead .masthead-campaign-label{display:none}.client-masthead .masthead-campaign .campaign-text-logo{width:190px}.anthom-download{padding:10px 8px;font-size:.6875rem;gap:4px}}
@media(max-width:760px){.anthom-download{padding:6px 11px 6px 6px;border-radius:14px;gap:7px}.anthom-icon{width:30px;height:30px;border-radius:9px}.anthom-download .anthom-icon svg{width:19px;height:19px}}
@media(max-width:420px){.anthom-download{padding:5px 7px 5px 5px;gap:5px}.anthom-icon{width:26px;height:26px}}
@media(prefers-reduced-motion:reduce){.anthom-download,.anthom-download::before,.anthom-icon-arrow{animation:none}.anthom-download{transition:none}.anthom-download:hover{transform:none}}

.anthom-sound-toggle{position:fixed;right:20px;bottom:20px;z-index:100;display:flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid #ffffff60;border-radius:50px;background:#103b40;color:#fff;font:700 13px Manrope,sans-serif;box-shadow:0 5px 20px #102f3930;cursor:pointer}.anthom-sound-toggle[hidden]{display:none}.anthom-sound-toggle>span:first-child{color:#b7ee59;font-size:20px}.anthom-sound-toggle:focus-visible{outline:3px solid #b7ee59;outline-offset:3px}.anthom-sound-toggle.is-playing{background:#176147}@media(max-width:600px){.anthom-sound-toggle{right:12px;bottom:12px;padding:8px 12px}}

/* Inauguration: modern zone gallery */
.inauguration-section{position:relative;background:linear-gradient(180deg,#f4f8f5 0%,#fff 100%);padding:64px 0 68px}
.inauguration-heading{align-items:flex-end;gap:32px;margin-bottom:32px}
.inauguration-heading .eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:.7rem;letter-spacing:.17em}
.inauguration-heading .eyebrow::before{content:"";width:22px;height:3px;border-radius:8px;background:#7bb03f}
.inauguration-heading h2{font-size:clamp(1.65rem,3vw,2.5rem);line-height:1.2;letter-spacing:-.035em;max-width:760px;margin-top:13px}
.inauguration-heading p{max-width:620px;font-size:.9375rem;margin-top:13px}
.inauguration-date{border-radius:50px;background:#fff;border:1px solid #dce7dd;box-shadow:0 4px 14px #102f3906;padding:11px 17px;font-size:.8125rem}
.inauguration-grid{gap:22px}
.inauguration-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr;border-radius:20px;border:1px solid #e0e9e3;box-shadow:0 5px 18px #102f3908;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;animation:inauguration-card-enter .55s ease both}
.inauguration-card:nth-child(4n+2){animation-delay:.07s}.inauguration-card:nth-child(4n+3){animation-delay:.14s}.inauguration-card:nth-child(4n+4){animation-delay:.21s}
.inauguration-image-link{grid-column:1;grid-row:1;position:relative;overflow:hidden;background:#e9f0eb}
.inauguration-image-link::after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0a293466);pointer-events:none}
.inauguration-image-link img{aspect-ratio:4/3;object-fit:cover;background:#e9f0eb;transition:transform .55s ease}
.inauguration-controls{grid-column:1;grid-row:1;align-self:end;position:relative;z-index:2;padding:12px;gap:10px;pointer-events:none}
.inauguration-controls button{pointer-events:auto;width:34px;height:34px;border-radius:50%;border:1px solid #ffffff70;background:#ffffffee;color:#173d36;box-shadow:0 2px 8px #102f3925;transition:background .2s ease,transform .2s ease;font-size:26px;line-height:1}
.inauguration-controls button:hover:not(:disabled){background:#b7ee59;transform:scale(1.08)}
.inauguration-controls button:disabled{opacity:.4}
.inauguration-image-count{padding:5px 12px;border-radius:50px;background:#0d3039b8;border:1px solid #ffffff35;color:#fff;font-size:.75rem;line-height:1.6;backdrop-filter:blur(8px)}
.inauguration-card-caption{grid-column:1;grid-row:2;position:relative;padding:18px;gap:12px;min-height:82px;background:#fff;align-items:center}
.inauguration-card-caption h3{font-size:.9375rem;line-height:1.4;letter-spacing:-.015em}
.inauguration-card-caption>a{flex-shrink:0;text-decoration:none}
.inauguration-card-open{width:35px;height:35px;border-radius:50%;background:#eef6e9;border:1px solid #e0ecd9;transition:background .2s ease,transform .2s ease}
.inauguration-card-caption>a:hover .inauguration-card-open{background:#b7ee59;transform:rotate(5deg)}
@keyframes inauguration-card-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover) and (pointer:fine){.inauguration-card:hover{transform:translateY(-4px);box-shadow:0 14px 32px #102f3916;border-color:#bfd5c3}.inauguration-card:hover .inauguration-image-link img{transform:scale(1.035)}}
@media(max-width:1000px){.inauguration-grid{gap:20px}.inauguration-heading{align-items:flex-start}.inauguration-heading h2{max-width:620px}}
@media(max-width:600px){.inauguration-section{padding:38px 0 42px}.inauguration-heading{gap:16px;margin-bottom:24px}.inauguration-heading h2{font-size:1.65rem}.inauguration-date{padding:8px 12px;font-size:.75rem}.inauguration-card-caption{min-height:76px;padding:16px}.inauguration-image-link img{aspect-ratio:3/2}}
@media(prefers-reduced-motion:reduce){.inauguration-card,.inauguration-image-link img,.inauguration-controls button,.inauguration-card-open{animation:none;transition:none}.inauguration-card:hover,.inauguration-card:hover .inauguration-image-link img{transform:none}}

.zone-gallery-dialog{padding:0;border:1px solid #ffffff30;border-radius:22px;background:#102f39;color:#fff;width:min(1000px,94vw);max-width:94vw;max-height:92dvh;overflow:auto;box-shadow:0 24px 90px #0005}.zone-gallery-dialog[open]{display:block;animation:zone-gallery-in .25s ease both}.zone-gallery-dialog::backdrop{background:#071c29d9;backdrop-filter:blur(7px)}.zone-gallery-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px}.zone-gallery-label{font-size:10px;letter-spacing:.16em;color:#b7ee59;font-weight:800}.zone-gallery-header h2{font-size:20px;margin:5px 0 0;color:#fff;line-height:1.3}.zone-gallery-header button,.zone-gallery-stage button{display:grid;place-items:center;border:1px solid #ffffff40;border-radius:50%;width:40px;height:40px;background:#ffffff15;color:#fff;cursor:pointer;font-size:28px}.zone-gallery-stage{position:relative;display:grid;place-items:center;min-height:180px;background:#071e28}.zone-gallery-stage img{display:block;width:100%;height:min(65dvh,650px);object-fit:contain;touch-action:pan-y pinch-zoom}.zone-gallery-stage button{position:absolute;top:50%;transform:translateY(-50%);background:#102f39d9;width:44px;height:44px}.zone-gallery-stage button:disabled{opacity:.35;cursor:default}#zone-gallery-prev{left:14px}#zone-gallery-next{right:14px}.zone-gallery-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 22px;color:#c0d3d5;font-size:12px}#zone-gallery-count{color:#b7ee59;font-weight:800;font-size:14px}#zone-gallery-status{position:absolute;bottom:20px;padding:12px;background:#102f39;border-radius:8px;font-size:13px}.zone-gallery-dialog button:focus-visible{outline:3px solid #b7ee59;outline-offset:3px}.zone-gallery-dialog button:hover:not(:disabled){background:#28754c}.zone-gallery-dialog.is-closing{animation:zone-gallery-out .18s ease both}@keyframes zone-gallery-in{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}@keyframes zone-gallery-out{to{opacity:0;transform:translateY(12px) scale(.98)}}@media(max-width:600px){.zone-gallery-dialog{border-radius:16px}.zone-gallery-header{padding:14px}.zone-gallery-header h2{font-size:17px}.zone-gallery-stage img{height:60dvh}.zone-gallery-footer{padding:14px}.zone-gallery-stage button{width:38px;height:38px}#zone-gallery-prev{left:8px}#zone-gallery-next{right:8px}}@media(prefers-reduced-motion:reduce){.zone-gallery-dialog[open],.zone-gallery-dialog.is-closing{animation:none}.zone-gallery-dialog::backdrop{backdrop-filter:none}}

#progress .progress-metrics{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:18px}#progress .progress-metric{display:flex;flex-direction:column;min-height:180px;padding:22px}#progress .progress-metric-top{min-height:40px}#progress .progress-metric strong{margin:20px 0 10px;font-size:clamp(28px,3vw,40px)}#progress .progress-metric-label{margin-top:auto}#progress .progress-heading{align-items:center;gap:24px}#progress .progress-detail-grid{grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);align-items:stretch}.progress-journey,.progress-snapshot{min-width:0}.progress-panel-heading{align-items:flex-start}.progress-panel-heading h3{font-size:1rem;line-height:1.5}.progress-snapshot{display:flex;flex-direction:column}.progress-data-note{margin-top:auto;padding-top:22px;border-top:1px solid #e1e9e3;color:var(--muted);font-size:.75rem;line-height:1.6}.progress-day-totals>div{min-width:0}.progress-day-totals strong{font-variant-numeric:tabular-nums}#progress .progress-day-grid button{min-height:66px}#progress .progress-demo-badge{white-space:nowrap;flex-shrink:0}@media(max-width:1050px){#progress .progress-detail-grid{grid-template-columns:1fr}#progress .progress-day-grid{grid-template-columns:repeat(8,minmax(0,1fr))}}@media(max-width:760px){#progress .progress-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#progress .progress-metric{min-height:164px;padding:18px}#progress .progress-day-grid{grid-template-columns:repeat(4,minmax(0,1fr))}#progress .progress-heading{align-items:flex-start;flex-direction:column;gap:14px}#progress .progress-demo-badge{max-width:none}}

/* Actual zone photos: daily highlight */
.feature-section{background:linear-gradient(135deg,#0c2934,#153e43);padding:60px 0;color:#fff}.feature-section .section-top{align-items:center;margin-bottom:28px}.feature-section h2{font-size:clamp(26px,3vw,38px);line-height:1.25}.feature-section #feature{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:40px}.zone-feature-visual{min-width:0}.zone-feature-main{display:block;position:relative;width:100%;padding:0;border-radius:20px;overflow:hidden;background:#071f27;border:1px solid #ffffff25;box-shadow:0 14px 40px #0002}.zone-feature-main img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .45s ease}.zone-feature-image-badge{position:absolute;bottom:16px;left:16px;padding:6px 12px;border-radius:50px;background:#0c2934db;border:1px solid #ffffff30;font-size:12px;font-weight:800;color:#fff}.zone-feature-expand{position:absolute;bottom:14px;right:14px;background:#b7ee59;color:#0c2934;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:23px}.zone-feature-thumbnails{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.zone-feature-thumbnails button{border:2px solid transparent;border-radius:12px;padding:3px;background:#ffffff08;overflow:hidden;transition:border-color .2s ease}.zone-feature-thumbnails button.is-selected{border-color:#b7ee59}.zone-feature-thumbnails img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:7px}.zone-feature-copy{padding:8px 0;min-width:0}.zone-feature-tag{font-size:11px;letter-spacing:.15em;font-weight:800;color:#b7ee59}.zone-feature-copy h3{font-size:clamp(24px,2.6vw,34px);line-height:1.3;color:#fff;margin:13px 0 16px}.zone-feature-copy>p{color:#c0d5d7;font-size:15px;line-height:1.8;max-width:460px}.zone-feature-meta{display:flex;gap:24px;margin:22px 0;color:#c0d5d7;font-size:12px}.zone-feature-meta span{display:flex;align-items:baseline;gap:7px}.zone-feature-meta strong{font-size:24px;color:#fff}.zone-feature-cta{display:inline-flex;align-items:center;gap:25px;font-size:14px;padding:12px 20px;border-radius:12px}.zone-feature-switch{margin-top:28px;border-top:1px solid #ffffff20;padding-top:18px}.zone-feature-switch>span{font-size:12px;color:#a6c4c7}.zone-feature-switch>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.zone-feature-switch button{font-size:11px;color:#d1e1e2;border:1px solid #ffffff25;padding:6px 10px;border-radius:50px;transition:background .2s ease,color .2s ease}.zone-feature-switch button.is-active{color:#0c2934;background:#b7ee59;border-color:#b7ee59}.zone-feature-empty{grid-column:1/-1;padding:48px 24px;border:1px dashed #ffffff40;border-radius:20px;color:#c0d5d7;text-align:center}@media(hover:hover) and (pointer:fine){.zone-feature-main:hover img{transform:scale(1.025)}.zone-feature-switch button:hover{background:#ffffff15}.zone-feature-switch button.is-active:hover{background:#b7ee59}}@media(max-width:820px){.feature-section #feature{grid-template-columns:1fr;gap:24px}.zone-feature-copy>p{max-width:none}.zone-feature-main img{max-height:480px}.zone-feature-copy{padding:0}.zone-feature-switch{margin-top:22px}}@media(max-width:600px){.feature-section{padding:40px 0}.feature-section .section-top{align-items:flex-start;gap:14px;flex-direction:column}.zone-feature-thumbnails{gap:7px}.zone-feature-meta{gap:18px}.zone-feature-switch button{padding:7px 10px}.zone-feature-copy h3{font-size:26px}}@media(prefers-reduced-motion:reduce){.zone-feature-main img,.zone-feature-thumbnails button,.zone-feature-switch button{transition:none}.zone-feature-main:hover img{transform:none}}

.zone-feature-photo-frame{position:relative}.zone-feature-nav{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:42px;height:42px;padding:0;border-radius:50%;border:1px solid #ffffff80;background:#ffffffed;color:#102f39;box-shadow:0 4px 14px #0003;font-size:30px;line-height:1;z-index:2;transition:background .2s ease}.zone-feature-nav.is-prev{left:14px}.zone-feature-nav.is-next{right:14px}.zone-feature-nav:hover:not(:disabled){background:#b7ee59}.zone-feature-nav:disabled{opacity:.35}.zone-feature-nav:focus-visible{outline:3px solid #b7ee59;outline-offset:3px}@media(max-width:600px){.zone-feature-nav{width:36px;height:36px;font-size:27px}.zone-feature-nav.is-prev{left:9px}.zone-feature-nav.is-next{right:9px}}

/* Compact zone highlight */
#daily-highlight{padding:42px 0 46px}#daily-highlight .section-top{margin-bottom:22px}#daily-highlight #feature{gap:30px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}#daily-highlight .zone-feature-main img{height:auto;aspect-ratio:16/9;max-height:340px;object-fit:cover}#daily-highlight .zone-feature-thumbnails{margin-top:10px;gap:8px}#daily-highlight .zone-feature-thumbnails img{aspect-ratio:2.2/1;max-height:74px}#daily-highlight .zone-feature-copy{padding:0}#daily-highlight .zone-feature-copy h3{margin:9px 0 11px;font-size:clamp(24px,2.3vw,30px)}#daily-highlight .zone-feature-copy>p{font-size:14px;line-height:1.65}#daily-highlight .zone-feature-meta{margin:14px 0;gap:20px}#daily-highlight .zone-feature-meta strong{font-size:22px}#daily-highlight .zone-feature-cta{padding:10px 16px;font-size:13px}#daily-highlight .zone-feature-switch{margin-top:18px;padding-top:12px}#daily-highlight .zone-feature-switch>div{margin-top:8px;gap:6px}#daily-highlight .zone-feature-switch button{padding:5px 9px;font-size:10px}@media(max-width:820px){#daily-highlight #feature{grid-template-columns:1fr;gap:20px}#daily-highlight .zone-feature-main img{max-height:340px}}@media(max-width:600px){#daily-highlight{padding:30px 0 34px}#daily-highlight .section-top{margin-bottom:18px;gap:10px}#daily-highlight .zone-feature-main img{aspect-ratio:3/2;max-height:270px}#daily-highlight .zone-feature-thumbnails img{max-height:58px}#daily-highlight .zone-feature-copy h3{font-size:24px}#daily-highlight .zone-feature-switch button{padding:6px 9px;font-size:11px}}

body.anthom-welcome-open{overflow:hidden}.anthom-welcome{position:fixed;width:min(450px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:90dvh;overflow:auto;padding:28px 32px 24px;border:1px solid #dce8dc;border-radius:24px;background:linear-gradient(155deg,#fff,#f3f9ef);color:#102f39;text-align:center;box-shadow:0 24px 80px #0004}.anthom-welcome[open]{animation:anthom-welcome-in .3s ease both}.anthom-welcome::backdrop{background:#071e29cf;backdrop-filter:blur(6px)}.anthom-welcome-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:36px;height:36px;border:1px solid #dce5dc;border-radius:50%;background:#fff;color:#102f39;font-size:25px}.anthom-welcome-art{display:grid;place-items:center;margin:0 auto 14px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,#e7f6d9,transparent 70%)}.anthom-welcome-art img{width:150px;height:150px;object-fit:contain}.anthom-welcome-eyebrow{color:#28754c;font-size:10px;letter-spacing:.15em;font-weight:800}.anthom-welcome h2{font-size:26px;line-height:1.25;letter-spacing:-.025em;margin:10px 0 12px}.anthom-welcome p{color:#637971;font-size:13px;line-height:1.6;min-height:42px}.anthom-welcome-play{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;margin-top:18px;padding:13px 18px;background:#102f39;color:#fff;border-radius:12px;font-weight:800;font-size:14px;box-shadow:0 6px 18px #102f3920}.anthom-welcome-play>span:first-child{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#b7ee59;color:#102f39;font-size:12px}.anthom-welcome-continue{margin-top:15px;padding:8px;color:#28754c;font-size:12px;font-weight:700}.anthom-welcome-continue span{margin-left:6px}.anthom-welcome.is-closing{animation:anthom-welcome-out .18s ease both}@keyframes anthom-welcome-in{from{opacity:0;transform:translateY(15px) scale(.96)}to{opacity:1;transform:none}}@keyframes anthom-welcome-out{to{opacity:0;transform:translateY(10px) scale(.97)}}@media(max-width:600px){.anthom-welcome{padding:24px;border-radius:20px}.anthom-welcome h2{font-size:23px}.anthom-welcome-art{width:135px;height:135px}.anthom-welcome-art img{width:130px;height:130px}}@media(prefers-reduced-motion:reduce){.anthom-welcome[open],.anthom-welcome.is-closing{animation:none}.anthom-welcome::backdrop{backdrop-filter:none}}

.anthom-story-progress{display:none}.anthom-welcome.is-video{width:min(440px,calc(100vw - 28px));padding:14px 16px 18px;background:#0c2934;border-color:#ffffff25;color:#fff}.anthom-welcome.is-video h2{font-size:20px;color:#fff;margin:8px 0}.anthom-welcome.is-video .anthom-welcome-art{width:100%;height:auto;border-radius:14px;background:#051c24;overflow:hidden;margin:10px auto 14px}.anthom-welcome-art video{display:block;width:100%;height:min(46dvh,420px);object-fit:contain;background:#051c24}.anthom-welcome.is-video .anthom-welcome-eyebrow{color:#b7ee59}.anthom-welcome.is-video p{color:#b8d1d2;font-size:12px;min-height:0}.anthom-welcome.is-video .anthom-welcome-play{margin-top:12px;background:#b7ee59;color:#0c2934;padding:11px}.anthom-welcome.is-video .anthom-welcome-play>span:first-child{background:#0c2934;color:#b7ee59}.anthom-welcome.is-video .anthom-welcome-close{z-index:2;width:32px;height:32px;top:16px;right:20px;background:#102f39e6;color:#fff;border-color:#ffffff60}.anthom-welcome.is-video .anthom-welcome-continue{color:#b8d1d2;margin-top:7px}.anthom-welcome.is-video .anthom-story-progress{display:block;height:3px;border-radius:8px;background:#ffffff30;overflow:hidden;margin:2px 42px 12px 2px}.anthom-story-progress span{display:block;height:100%;width:0;background:#b7ee59}.anthom-story-sound{font-size:12px;margin-top:8px;padding:5px 12px;color:#b7ee59;border:1px solid #ffffff30;border-radius:30px}.anthom-welcome.is-video .anthom-welcome-art video{max-height:46dvh}@media(max-width:600px){.anthom-welcome.is-video h2{font-size:18px}.anthom-welcome.is-video{padding:12px 14px 14px}.anthom-welcome-art video{height:42dvh}}

/* Uploaded campaign photos: stable previews and readable activity metadata. */
.uploaded-photo-card .card-image{aspect-ratio:3/2;overflow:hidden}
.uploaded-photo-card .card-image img{width:100%;height:100%;object-fit:cover}
.uploaded-photo-card .card-body h3{font-size:1rem;line-height:1.5;overflow-wrap:anywhere}
.uploaded-photo-card .card-tag{max-width:85%;white-space:normal}
.photo-load-more{grid-column:1/-1;text-align:center;margin-top:1rem}
.zone-gallery-caption{padding:0 1.5rem;margin:.75rem 0;color:var(--muted);font-size:.9rem;line-height:1.6;max-height:5rem;overflow:auto;overflow-wrap:anywhere}
#photo-filters .search-label{flex:1;min-width:180px}
#photo-grid .empty-state{grid-column:1/-1;padding:2rem;border:1px solid var(--line);border-radius:14px;background:var(--wash);text-align:center}
#photo-grid .empty-state .button{margin-top:1rem}
#photo-filters .filter-label{flex:1 1 220px;min-width:0}
#photo-filters select,#photo-filters input{width:100%;min-width:0;border:1px solid var(--line);border-radius:7px;background:var(--white);padding:12px 14px;font:inherit}
@media(max-width:600px){.uploaded-photo-card .card-body h3{font-size:.8rem}#photo-filters .filter-label{flex-basis:100%}}

#map .map-legend .blue{background:#82958d}.map-photo-preview{display:block;width:100%;padding:0;border-radius:12px;overflow:hidden;margin:14px 0}.map-photo-preview img{width:100%;aspect-ratio:3/2;object-fit:cover}.map-real-locations{padding-left:18px;font-size:.8rem;color:var(--muted);margin:12px 0;overflow-wrap:anywhere}.map-empty{padding:16px;font-size:.85rem;color:var(--muted)}.location-marker:focus-visible{outline:none}.location-marker:focus-visible circle{stroke:#3e9bea;stroke-width:5px}
