/* PM Surya Ghar: one absolute calendar milestone on every device. */
.countdown-teaser{display:inline-flex;align-items:center;gap:12px;max-width:100%;margin-top:23px;padding:10px 13px;border:1px solid #c7ee9a32;border-radius:9px;background:#c7ee9a07;font-size:12px;line-height:1.5}
.countdown-teaser>span:first-child{display:flex;flex-direction:column;gap:1px;min-width:0}
.countdown-teaser strong{font-size:12px;letter-spacing:.6px;font-weight:550;color:var(--lime)}
.countdown-teaser small{font-size:12px;color:var(--muted)}
.countdown-teaser>.arrow-icon{font-size:22px;color:var(--lime);margin-left:8px;flex-shrink:0}
.countdown-teaser:hover{border-color:var(--lime);background:#c7ee9a12}
.solar-clock{--clock-x:72%;--clock-y:20%;--calendar-progress:0;--clock-type:clamp(46px,5.6vw,76px);position:relative;isolation:isolate;overflow:hidden;margin-bottom:38px;padding:30px;border:1px solid #c7ee9a40;border-radius:20px;background:radial-gradient(ellipse at var(--clock-x) var(--clock-y),#c7ee9a10,transparent 48%),linear-gradient(125deg,#192219e8,#0c140fe8 65%);box-shadow:0 22px 70px #0003;scroll-margin-top:30px}
.solar-clock:before{content:'';position:absolute;z-index:-1;inset:0;opacity:.2;background-image:linear-gradient(#b4ce9a10 1px,transparent 1px),linear-gradient(90deg,#b4ce9a10 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(90deg,transparent,#000);pointer-events:none}
.solar-clock:after{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--orange),var(--lime),transparent);opacity:.7;pointer-events:none}
.clock-topline{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin-bottom:30px}
.clock-kicker{font-size:12px;letter-spacing:1.5px;color:var(--lime)}
.clock-live{display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid #c7ee9a25;border-radius:30px;color:var(--muted);font-size:12px}
.clock-live-dot{width:5px;height:5px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px #c7ee9a0c}
.clock-ready .clock-live-dot{animation:clock-beacon 2.5s ease-in-out infinite}
.clock-body{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(0,1.8fr);gap:30px;align-items:center}
.clock-intro h3{font-size:clamp(29px,3vw,43px);font-weight:550;line-height:1.05;letter-spacing:-2px;margin:0 0 15px}
.clock-intro h3 em{color:var(--orange);font-style:normal}
.clock-intro>p{max-width:250px;color:var(--muted);font-size:14px;line-height:1.6;margin:0}
.clock-orbit{position:relative;display:grid;place-items:center;width:146px;height:146px;margin:24px 0 0}
.clock-orbit svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.clock-orbit-ticks{stroke:#c7ee9a40;stroke-width:1;stroke-dasharray:1 7;fill:none;transform-origin:88px 88px;animation:clock-orbit 90s linear infinite}
.clock-orbit-track{stroke:#c7ee9a13;stroke-width:2;fill:none}
.clock-orbit-progress{stroke:var(--lime);stroke-width:2;fill:none;stroke-linecap:round;stroke-dasharray:var(--calendar-progress) 100;transform:rotate(-90deg);transform-origin:88px 88px;transition:stroke-dasharray 1s;filter:drop-shadow(0 0 5px #c7ee9a60)}
.clock-orbit-inner{stroke:#ff895d38;stroke-width:.7;fill:none;stroke-dasharray:90 10;transform-origin:88px 88px;animation:clock-orbit 35s linear infinite reverse}
.clock-orbit-caption{text-align:center;line-height:1.25}
.clock-orbit-caption strong{display:block;font-size:29px;font-weight:500;letter-spacing:-1px;color:var(--lime);font-variant-numeric:tabular-nums}
.clock-orbit-caption span{display:block;margin-top:6px;font-size:12px;color:var(--muted);letter-spacing:.5px}
.clock-display{min-width:0}
.clock-target{margin:0 0 17px;font-size:13px;color:#c3ceb9;line-height:1.6}
.clock-target time{display:block;color:var(--paper);font-size:16px;letter-spacing:-.3px;margin-top:3px}
.clock-units{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.clock-card{position:relative;padding:22px 6px 14px;border:1px solid #c7ee9a28;border-radius:10px;overflow:hidden;text-align:center;background:linear-gradient(180deg,#25302590,#101a12b0);box-shadow:inset 0 1px 0 #ffffff06;transition:border-color .3s,background .3s}
.clock-card:after{content:'';position:absolute;left:0;right:0;top:45%;height:1px;background:#080d0980;pointer-events:none}
.clock-card:last-child{border-color:#ff895d38;background:linear-gradient(180deg,#30251b75,#171a12a0)}
.clock-card:hover{border-color:#c7ee9a75;background:#29372480}
.clock-value{display:flex;align-items:center;justify-content:center;min-height:1.2em;line-height:1;font-size:var(--clock-type);font-weight:500;font-variant-numeric:tabular-nums;color:var(--lime);perspective:500px}
.clock-card:first-child .clock-value{font-size:calc(var(--clock-type)*.79);min-height:1.52em}
.clock-card:first-child .clock-value[data-wide=true]{font-size:calc(var(--clock-type)*.6);min-height:2em}
.clock-card:last-child .clock-value{color:var(--orange)}
.clock-digit{position:relative;display:block;width:.63em;height:1.15em;flex-shrink:0;overflow:hidden;perspective:180px}
.clock-digit-face{display:block;line-height:1.15;backface-visibility:hidden;transform-origin:50% 50%}
.clock-digit.is-changing .clock-digit-face{animation:clock-digit-in .62s cubic-bezier(.2,.75,.15,1) both}
.clock-digit.is-changing:before{content:attr(data-previous);position:absolute;inset:0;line-height:1.15;animation:clock-digit-out .62s cubic-bezier(.2,.75,.15,1) both;backface-visibility:hidden}
.clock-unit-label{display:block;margin-top:13px;font-size:11px;letter-spacing:1.1px;color:#a6b69d}
.clock-dateline{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin-top:16px;font-size:12px;color:var(--muted)}
.clock-pause{display:inline-flex;align-items:center;gap:7px;border:0;border-radius:6px;padding:7px 3px;background:none;font-size:12px;color:#c9d3c0}
.clock-pause:hover{color:var(--lime)}
.clock-control-icon{display:block;width:14px;height:14px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.clock-note{font-size:12px;line-height:1.65;color:#b0bda6;margin:18px 0 0;padding-top:16px;border-top:1px solid var(--line)}
.clock-note strong{color:#d7e3ca;font-weight:500}
.clock-note a{color:var(--lime);text-decoration:underline;text-underline-offset:3px}
.clock-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.clock-timeline{flex:1;min-width:0}
.clock-timeline>summary{display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;font-size:13px;color:#d0dcc3;width:fit-content}
.clock-timeline>summary>.arrow-icon{font-size:19px;color:var(--lime);transition:transform .3s}
.clock-timeline[open]>summary>.arrow-icon{transform:rotate(180deg)}
.clock-timeline ol{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:20px 0 0;padding:0;list-style:none}
.clock-timeline li{position:relative;padding-left:15px;border-left:1px solid #c7ee9a40}
.clock-timeline time{font-size:12px;color:var(--orange)}
.clock-timeline strong{display:block;font-size:14px;font-weight:500;margin:4px 0}
.clock-timeline p{font-size:12px;line-height:1.6;color:var(--muted);margin:0}
.clock-timeline a{text-decoration:underline;text-underline-offset:3px;color:var(--lime)}
.clock-bottom>.button{flex-shrink:0;font-size:13px;padding:13px 16px;gap:24px}
.clock-bottom>.button>span{font-size:22px}
.solar-clock.is-charged{box-shadow:0 0 45px #c7ee9a16,inset 0 0 55px #c7ee9a08;border-color:#c7ee9a90;transition:box-shadow .3s,border-color .3s}
.solar-clock.is-paused .clock-live-dot{background:var(--orange);box-shadow:none}
.solar-clock.is-expired .clock-live-dot{background:var(--muted);box-shadow:none}
.solar-clock.is-paused *,.solar-clock.is-paused *:before,.solar-clock.is-offscreen *,.solar-clock.is-expired *{animation-play-state:paused!important}
.solar-clock.is-paused .clock-digit-face,.motion-off .clock-digit-face{animation:none!important;transform:none!important;opacity:1!important}
.solar-clock.is-paused .clock-digit:before,.motion-off .clock-digit:before{display:none}
@keyframes clock-digit-in{from{transform:translateY(80%) rotateX(-65deg);opacity:0}to{transform:translateY(0) rotateX(0);opacity:1}}
@keyframes clock-digit-out{from{transform:translateY(0) rotateX(0);opacity:1}to{transform:translateY(-80%) rotateX(65deg);opacity:0}}
@keyframes clock-orbit{to{transform:rotate(360deg)}}
@keyframes clock-beacon{0%,100%{box-shadow:0 0 0 3px #c7ee9a0a}50%{box-shadow:0 0 0 6px #c7ee9a12}}
@media(max-width:950px){.solar-clock{--clock-type:68px;padding:27px}.clock-body{grid-template-columns:1fr;gap:24px}.clock-intro{position:relative;padding-right:160px;min-height:125px;display:flex;flex-direction:column;justify-content:center}.clock-intro h3{font-size:38px}.clock-intro>p{max-width:420px}.clock-orbit{position:absolute;right:0;top:50%;translate:0 -50%;width:125px;height:125px;margin:0}.clock-orbit-caption strong{font-size:26px}.clock-target time{display:inline;margin-left:10px}.clock-topline{margin-bottom:24px}.clock-bottom{align-items:flex-start}.clock-bottom>.button{margin-top:0}}
@media(max-width:550px){.solar-clock{--clock-type:61px;padding:23px 20px;border-radius:16px;margin-bottom:28px}.clock-topline{gap:10px}.clock-kicker{font-size:11px;letter-spacing:1px}.clock-live{font-size:11px;padding:6px 8px}.clock-intro{padding-right:112px;min-height:110px}.clock-intro h3{font-size:clamp(23px,6.5vw,30px);letter-spacing:-1.2px;margin-bottom:11px}.clock-intro>p{font-size:12px;line-height:1.6}.clock-orbit{width:102px;height:102px;right:-4px}.clock-orbit-caption strong{font-size:23px}.clock-orbit-caption span{font-size:12px;margin-top:3px}.clock-target{font-size:12px;margin-bottom:15px}.clock-target time{display:block;margin:3px 0 0;font-size:15px}.clock-units{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.clock-card{padding:17px 6px 13px}.clock-unit-label{margin-top:8px;font-size:11px}.clock-dateline{gap:8px;margin-top:13px}.clock-note{font-size:12px;margin-top:13px;padding-top:14px}.clock-bottom{display:flex;flex-direction:column;gap:22px;padding-top:20px;margin-top:22px}.clock-bottom>.button{width:100%}.clock-timeline{width:100%}.clock-timeline ol{gap:17px}.clock-timeline p{font-size:12px}.countdown-teaser{font-size:11px;gap:8px;padding:9px 11px;margin-top:19px}.countdown-teaser small{font-size:11px}.countdown-teaser strong{font-size:11px}}
@media(max-width:360px){.solar-clock{padding:20px 16px}.clock-intro{padding-right:94px}.clock-intro h3{font-size:23px}.clock-orbit{width:87px;height:87px;right:-5px}.clock-orbit-caption strong{font-size:20px}.clock-orbit-caption span{font-size:11px}.clock-timeline ol{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.solar-clock *,.solar-clock *:before{animation:none!important;transition:none!important}.clock-digit:before{display:none}.clock-digit-face{opacity:1!important;transform:none!important}}
