/* Campaign-specific mobile composition. Wider layouts are progressive enhancements. */
body{background:#fff;font-family:'Segoe UI',Arial,sans-serif}h1,h2,h3{letter-spacing:-.015em}h2{line-height:1.02}.button{border-radius:4px}.eyebrow{letter-spacing:.12em;font-size:.75rem}.poster-hero{min-height:0;background:#270e13;isolation:isolate;overflow:hidden}.poster-hero .hero-content{padding-top:30px;padding-bottom:0;z-index:2;text-align:center}.poster-hero .eyebrow{justify-content:center;font-size:.6875rem;gap:12px;margin-bottom:27px}.campaign-lockup{position:relative;isolation:isolate;margin:auto;max-width:1000px}.campaign-lockup h1{font-style:italic;font-size:clamp(3rem,10vw,4.8rem);max-width:none;line-height:.91;margin:0;position:relative;color:#fff8ed}.campaign-lockup h1>span{display:block;font-size:.6em;white-space:nowrap;letter-spacing:-.018em}.campaign-lockup h1 em{display:block;color:#fff8ed;font-size:1.63em;letter-spacing:-.015em;margin-top:7px}.b-motif{display:block;position:absolute;width:36%;aspect-ratio:670/530;overflow:hidden;right:1%;top:-26%;z-index:-1;transform:rotate(-9deg);opacity:.95}.b-motif img{position:absolute;max-width:none;width:305.52%;left:-13.43%;top:-71.7%;height:auto}.poster-hero .hero-content>p{font-size:.8125rem;margin:19px auto 0;color:#f0d9de;max-width:100%;line-height:1.5}.hero-art{position:relative;margin-top:-10px;z-index:0}.hero-art:before{content:'';position:absolute;inset:0;background:linear-gradient(#270e13 0%,transparent 33%,transparent 82%,#270e13);pointer-events:none}.hero-art img{width:100%;height:auto;object-fit:contain}.hero-bottom{position:relative;z-index:3;margin-top:-10px;padding-bottom:30px}.activity-rail{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #ffffff38;border-bottom:1px solid #ffffff38;margin-bottom:22px}.activity-rail span{text-align:center;font:800 .95rem Barlow;letter-spacing:.13em;padding:12px 4px;border-right:1px solid #ffffff25}.activity-rail span:last-child{border:0;color:#FDB913}.hero-actions{display:flex;flex-direction:column;align-items:center;gap:17px}.poster-hero .hero-meta{font-size:.625rem;margin:0;letter-spacing:.08em}.hero-actions .button{width:100%;justify-content:center}.event-card{isolation:isolate;overflow:hidden;border-radius:8px}.event-card>.tile-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.6}.event-card:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none}.circuit-card>.tile-photo{object-position:58% center}.circuit-card:after{background:linear-gradient(90deg,#231f20ed 2%,#231f20b0 45%,#231f2010),linear-gradient(0deg,#231f20 2%,#231f20ee 34%,transparent 70%)}.community-card{background:#fff;color:#231f20}.community-card>.tile-photo{object-position:62% center}.community-card:after{background:linear-gradient(90deg,#fffffff0 0%,#ffffffa8 48%,#ffffff30),linear-gradient(0deg,#fff 0%,#ffffffed 33%,transparent 85%)}.event-card h3{padding-block:15px;margin-bottom:22px;line-height:.95}.event-card .tag{backdrop-filter:blur(6px)}.community-card .tag{background:#ffffffb8}.circuit-card .tag{background:#231f206e}.card-arrow{top:22px}.circuit-photo{position:relative;margin:30px 0 0;background:#151315;height:360px;overflow:hidden;border-radius:8px}.circuit-photo img{height:100%;width:100%;object-fit:cover;object-position:60% center}.circuit-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#1010149e,transparent 75%),linear-gradient(0deg,#101014ad,transparent 60%)}.circuit-photo figcaption{position:absolute;bottom:24px;left:24px;color:white;z-index:1;max-width:55%}.circuit-photo figcaption span{display:block;font-size:.625rem;letter-spacing:.12em;margin-bottom:12px}.circuit-photo figcaption strong{font:800 2.6rem/.95 Barlow}.community-image{height:430px;border-radius:8px}.community-image img{object-position:43% center}.community-image:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(#0005,transparent 40%,transparent 75%,#0005)}.community-image .distance{z-index:1;top:24px;left:24px;font-family:Barlow;line-height:.95;text-shadow:0 2px 25px #0004}.distance small{display:block;font:800 1.1rem Barlow;letter-spacing:.1em}.distance b{display:block;font:800 3.8rem/.95 Barlow}.image-caption{z-index:2;font-size:.6875rem;border-radius:3px}.kit-section{background:#fff;border-block:1px solid #eae6e8}.kit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.kit-grid>div{border:1px solid #eee8ea;border-radius:8px;padding:20px 10px;text-align:center;background:#fff}.kit-grid>div:last-child{grid-column:1/-1}.kit-icon{display:block;margin:0 auto 12px;width:110px;height:110px;background-image:url('assets/kit-icons.webp');background-repeat:no-repeat;background-size:500% auto;background-position-y:center}.kit-icon-1{background-position-x:0%}.kit-icon-2{background-position-x:25%}.kit-icon-3{background-position-x:50%}.kit-icon-4{background-position-x:75%}.kit-icon-5{background-position-x:100%}.kit-grid h4{margin:0;font-size:.9375rem}.doctor{border-radius:8px;overflow:hidden}.doctor .doctor-body{padding:20px}.doctor h4{font-weight:650}.doctor p{font-size:.875rem}.filters button{border-radius:4px;min-height:44px}.health-benefit{background:#fff;border:1px solid #e4dce0;border-left:4px solid #962067;border-radius:5px;padding:25px;gap:18px}.sponsor .button{line-height:1.5}.form-grid{grid-template-columns:1fr}.form-grid input,select,textarea{font-size:1rem!important}.choices label{min-height:44px}.form-grid label{font-size:.875rem}.final-cta h2{font-style:italic;line-height:.98}.mobile-cta{border-top:1px solid #ede7e9}.mobile-cta button{border-radius:4px;min-height:48px}.cause-section{background:linear-gradient(115deg,#7c1552,#962067 70%)}
@media(min-width:701px){.poster-hero .hero-content{padding-top:48px}.campaign-lockup h1{font-size:clamp(5rem,9.5vw,9rem)}.campaign-lockup h1 em{font-size:1.5em}.campaign-lockup h1>span{font-size:.68em}.poster-hero .hero-content>p{font-size:1rem;margin-top:20px}.poster-hero .eyebrow{font-size:.75rem;margin-bottom:35px}.b-motif{width:31%;top:-26%;right:7%}.hero-art{max-width:1500px;width:100%;margin:-60px auto 0}.hero-art img{max-height:710px;object-fit:cover;object-position:center bottom}.hero-bottom{margin-top:-50px;padding-bottom:34px}.activity-rail span{font-size:1.1rem;padding:14px}.hero-actions{flex-direction:row;justify-content:space-between}.hero-actions .button{width:auto;min-width:235px}.poster-hero .hero-meta{font-size:.8125rem}.circuit-photo{height:490px}.circuit-photo figcaption{left:40px;bottom:35px}.circuit-photo figcaption strong{font-size:4.5rem}.circuit-photo figcaption span{font-size:.75rem}.community-image{height:570px}.distance small{font-size:1.4rem}.distance b{font-size:5.5rem}.kit-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.kit-grid>div{padding:24px 10px}.kit-grid>div:last-child{grid-column:auto}.kit-icon{width:clamp(100px,10vw,150px);height:140px}.form-grid{grid-template-columns:1fr 1fr}.health-benefit{padding:35px;gap:35px}}
@media(min-width:1100px){.poster-hero .hero-content{padding-top:52px}.hero-art{margin-top:-115px}.hero-bottom{margin-top:-60px}.campaign-lockup h1{font-size:8.4rem}.hero-art img{height:695px}.circuit-photo{height:550px}.circuit-photo figcaption strong{font-size:6rem}.event-card h3{font-size:4.7rem}.event-card>.tile-photo{height:100%}.sponsor{grid-template-columns:1fr 1.1fr 1.1fr}.sponsor .button{grid-column:auto}}
.kit-icon{background-size:contain;background-position:center}.kit-icon-1{background-image:url('assets/kit-1.webp')}.kit-icon-2{background-image:url('assets/kit-2.webp')}.kit-icon-3{background-image:url('assets/kit-3.webp')}.kit-icon-4{background-image:url('assets/kit-4.webp')}.kit-icon-5{background-image:url('assets/kit-5.webp')}
.sankalpa-image{margin:28px 0 0;overflow:hidden;border-radius:8px;background:#211d16}.sankalpa-image img{display:block;width:100%;height:auto;object-fit:contain}.cause-story h2{font-size:clamp(2.6rem,8vw,3.5rem);line-height:1.04}.cause-layout{align-items:center}

/* Keep the community location and registration actions in separate rows so
   they never collide at desktop or intermediate responsive widths. */
.community-copy > .text-link { display: block; width: fit-content; max-width: 100%; margin-top: 22px; }
.community-copy > .text-link + .button { display: flex; width: fit-content; max-width: 100%; margin-top: 16px; }
@media(max-width:700px){.community-copy > .text-link + .button{width:100%;}}
@media(min-width:701px){.cause-layout{grid-template-columns:1.2fr 1fr;gap:48px}.cause-story h2{font-size:clamp(2.6rem,3.8vw,3.6rem)}.sankalpa-image{margin-top:32px}}
@media(prefers-reduced-motion:reduce){.hero-actions .button:hover{transform:none}}

/* Supplied campaign lockup: retain the complete artwork at every viewport. */
.campaign-lockup .campaign-artwork{width:min(100%,680px);margin:0 auto;line-height:0;font-size:inherit}.campaign-artwork img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}

/* Feedback: complete supplied kit artwork and explicit readable section colors. */
.kit-grid img.kit-icon{background:none;width:160px;height:160px;max-width:100%;object-fit:contain}
.section.wrap,.kit-section,.experts,.sponsor,footer.wrap{color:#231f20}
.section.wrap h2,.kit-section h2,.kit-grid h4,.experts h2,.health-benefit h3,.sponsor h3,.faq-layout h2,.doctor h4{color:#231f20}
.timeline>div{color:#231f20}.timeline .this-year{color:#c2131b}
.sponsor p,.faq-layout summary,.doctor a,.experts>.wrap>.text-link,.section.wrap>.text-link{color:#231f20}
.filters button{color:#231f20;background:#fff;border-color:#958a90;font-weight:600}
.filters button:hover{background:#eee8ec}
.filters button.active{color:#fff;background:#231f20;border-color:#231f20}
.filters button:focus-visible{outline:3px solid #962067;outline-offset:3px}
.doctor .unit{color:#861858}.doctor p,.health-benefit small,footer small{color:#595157}
.event-card .micro,.cause-copy .micro{opacity:1}
.station b{color:#bcb5b9}
.cause-copy .sankalpa-more{margin-top:8px;color:#7c1552;background:#fff;min-height:48px}
.cause-copy .sankalpa-more:hover{background:#f4e8ef}
.cause-copy .sankalpa-more:focus-visible{outline:3px solid #FDB913;outline-offset:4px}
#info-content h3{font:700 1.05rem/1.5 'Segoe UI',Arial,sans-serif;margin:24px 0 8px}
#info-content a{color:#861858;text-decoration:underline;overflow-wrap:anywhere}
@media(max-width:700px){.kit-grid img.kit-icon{width:140px;height:140px}.cause-copy .sankalpa-more{width:100%;justify-content:center}.eyebrow,.cause-label{font-size:.75rem}.event-facts span,.event-card .micro{font-size:.8125rem}}

/* Slide 5: matching white event cards with dark, legible text. */
.event-card.circuit-card,.event-card.community-card{background:#fff;color:#231f20;border:1px solid #e9e3de}
.event-card.circuit-card:after,.event-card.community-card:after{background:linear-gradient(90deg,#fffffff5 0%,#ffffffd9 48%,#ffffffb3),linear-gradient(0deg,#fff 0%,#fffffff5 38%,transparent 85%)}
.event-card .tag{background:#ffffffdb;border-color:#b8afb4;color:#231f20}
.event-card .event-facts{border-color:#d8d1d5}
.event-card .capacity,.event-card .card-arrow{color:#b0131c}
.doctor-controls{flex-wrap:wrap}.doctor-auto-toggle{border:1px solid #958a90;border-radius:4px;background:#fff;color:#231f20;padding:10px 14px;min-height:44px;font-size:.8125rem;margin-left:auto}.doctor-auto-toggle:hover{background:#eee8ec}
@media(max-width:700px){.doctor-controls .filters{width:100%}.doctor-auto-toggle{margin-left:0}}

/* Optional Electronic City registration payment */
.price-row>div{flex-wrap:wrap;gap:8px 12px}.price-row .fee-condition{font-size:15px;font-weight:700;white-space:nowrap}.hero-meta{line-height:1.7}#payment-choice{border:1px solid #ddd;padding:18px;margin-bottom:24px}#payment-choice legend{font-weight:700}#pay-later-prompt{max-width:540px}#pay-later-prompt p{margin:24px 0}#pay-later-prompt .button{margin-top:12px}
