/* Homepage only: keep subathon presentation independent. */
.home-page .home-overview{height:100svh;min-height:0;max-width:none;width:100%;display:grid;grid-template-columns:1.15fr 1fr;gap:6%;align-items:center;padding:clamp(28px,4vw,64px);padding-inline:max(clamp(28px,4vw,64px),calc((100% - 1472px)/2));overflow:hidden}
.home-page .home-overview .hero-art{inset:auto 0;top:50%;transform:translateY(-50%);height:110svh;width:100%;opacity:.62;filter:none;background-image:linear-gradient(90deg,#10101088,transparent 65%),linear-gradient(0deg,#10101088,transparent 45%),url('/assets/background-a-abstract.png');background-size:cover;background-position:center,center,62% center;mask-image:linear-gradient(to bottom,transparent 0%,#00000014 7%,#0000004d 18%,#000000a6 30%,#000 45%,#000 55%,#000000a6 70%,#0000004d 82%,#00000014 93%,transparent 100%)}
.home-identity{width:max-content;max-width:100%;min-width:0;justify-self:center}
.home-page .home-overview h1{font:italic 900 clamp(80px,14vw,180px)/1 var(--display);letter-spacing:.025em;margin:0;text-shadow:none}
.home-actions{display:flex;align-items:center;gap:18px;margin-top:24px}
.home-page .home-actions .home-socials{width:auto;flex:1;justify-content:space-between;gap:8px;margin:0}
.home-page .home-actions .home-socials a{width:28px;height:36px;flex:none;border:0;background:none;box-shadow:none}
.home-page .home-actions .home-social-icon{width:20px;height:20px}
.home-page .home-actions .home-subathon-link{font:700 15px/1 var(--display);letter-spacing:.4px;white-space:nowrap;padding:12px 16px;min-height:40px;margin:0;gap:0;border-radius:3px}
.home-events{position:relative;isolation:isolate;min-width:0}
.home-events::before{content:'';position:absolute;inset:-170px -140px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at center,#08080bbf 0%,#08080b99 38%,#08080b50 58%,transparent 78%);border-radius:50%;filter:blur(35px)}
.home-event{display:grid;grid-template-columns:minmax(0,155px) minmax(0,1fr);gap:36px;align-items:center;padding:17px 0}
.home-event-date,.home-event-title{font:500 16px/1.5 var(--body);letter-spacing:1px;text-transform:uppercase;margin:0;overflow-wrap:anywhere}
.home-event-date{position:relative;justify-self:end;text-align:right;color:#bdbdc5}.home-event-title{font-weight:700;color:#f3f1ef;text-align:left}
.home-event-title a{text-decoration:none;color:inherit;transition:color .15s}.home-event-title a:hover{color:#f03542}.home-event-arrow{font-weight:500;white-space:nowrap}
.home-page .home-events p{font-size:13px;margin:0;color:var(--muted)}
@media(max-width:850px){.home-page .home-overview{height:100svh;min-height:0;grid-template-columns:1fr;grid-template-rows:1fr 1fr;gap:24px;padding:28px 24px;align-items:center}.home-identity{width:min(100%,440px);justify-self:center}.home-events{width:min(100%,440px);justify-self:center}.home-page .home-overview h1{font-size:clamp(80px,18vw,140px)}.home-actions{gap:12px;margin-top:14px}.home-page .home-actions .home-socials{gap:4px}.home-page .home-actions .home-socials a{width:24px;height:36px}.home-page .home-actions .home-social-icon{width:18px;height:18px}.home-page .home-actions .home-subathon-link{font-size:12px;padding:10px 11px;min-height:36px}.home-events::before{inset:-120px -65px;filter:blur(30px)}.home-event{grid-template-columns:minmax(0,125px) minmax(0,1fr);gap:24px;padding:14px 0}.home-event-date,.home-event-title{font-size:15px;letter-spacing:.6px}}
@media(max-height:650px){.home-event{padding:10px 0}}

.home-event-ongoing{isolation:isolate;position:absolute;top:50%;right:calc(100% + 10px);transform:translateY(-50%);display:block;white-space:nowrap;color:var(--red);font:700 11px/1.4 var(--body);letter-spacing:.8px}
/* The divider follows the date column and stays within the event list. */
.home-events::after{content:'';position:absolute;left:173px;top:50%;transform:translateY(-50%);width:1px;height:calc(100% - 16px);max-height:320px;background:linear-gradient(to bottom,transparent 0%,#bb263b55 20%,#cf3049cc 50%,#bb263b55 80%,transparent 100%);pointer-events:none}
@media(max-width:850px){.home-events::after{left:137px}.home-event-ongoing{font-size:10px}}

.home-event-ongoing::before{content:'';position:absolute;inset:-8px -12px;z-index:-1;pointer-events:none;border-radius:50%;background:radial-gradient(ellipse,#08080bee 0%,#08080bb3 40%,transparent 75%);filter:blur(5px)}

/* Phone layout: compact date/title columns within a single viewport. */
@media(max-width:600px){
 .home-page .home-overview{height:100svh;min-height:0;grid-template-columns:minmax(0,360px);grid-template-rows:48% 52%;justify-content:center;align-content:center;gap:0;padding:0 max(24px,env(safe-area-inset-right)) 0 max(24px,env(safe-area-inset-left))}
 /* Keep both event columns aligned, including wrapped dates and titles. */
 .home-events{width:100%;max-width:none;min-height:0}
 /* Center the events between the identity and viewport bottom. */
 .home-identity{width:max-content;max-width:100%;align-self:end}
 .home-page .home-overview h1{font-size:clamp(80px,min(28vw,18svh),140px);line-height:.95;text-align:center}
 .home-actions{width:0;min-width:100%;flex-direction:column;gap:clamp(8px,2svh,18px);margin-top:clamp(8px,2svh,20px)}
 .home-page .home-actions .home-socials{display:flex;width:100%;justify-content:space-between;gap:0;flex:none}
 .home-page .home-actions .home-socials a{width:44px;max-width:44px;min-width:0;flex:1;height:44px}
 .home-page .home-actions .home-social-icon{width:22px;height:22px}
 .home-page .home-actions .home-subathon-link{width:auto;min-height:44px;align-self:center;justify-content:center;font:700 12px/1 var(--body);letter-spacing:.8px;padding:14px 20px}
 .home-page .home-overview .hero-art{position:absolute;inset:0;height:100%;transform:none;opacity:.36;background-position:center;background-size:cover;mask-image:linear-gradient(to bottom,#000, #000 65%,transparent)}
 .home-events::before{inset:-24px;filter:blur(20px);background:#10101066;border-radius:24px}
 .home-events::after{display:block;left:calc((100% - 20px)*.42 + 10px);height:100%;max-height:320px}
 .home-event{grid-template-columns:minmax(0,42fr) minmax(0,58fr);gap:20px;padding:clamp(5px,1.3svh,10px) 0;border:0}
 .home-event:last-child{border-bottom:0}
 .home-event-date{display:block;justify-self:end;text-align:right;font-size:clamp(10px,1.7svh,12px);line-height:1.35;letter-spacing:.6px}
 .home-event-title{font-size:clamp(11px,1.8svh,13px);line-height:1.35;letter-spacing:.35px;overflow-wrap:anywhere}
 .home-event-ongoing{position:absolute;right:calc(100% + 6px);transform:translateY(-50%);font-size:clamp(8px,2.2vw,9px);line-height:1.4;color:var(--red);letter-spacing:.4px}
 .home-event-ongoing::before{display:none}
}

/* Short landscape screens put the identity beside the compact events. */
@media(max-width:950px) and (max-height:500px) and (orientation:landscape){
 .home-page .home-overview{height:100svh;min-height:0;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-rows:minmax(0,1fr);gap:24px;align-content:center;padding:16px max(24px,env(safe-area-inset-right)) 16px max(24px,env(safe-area-inset-left))}
 .home-identity{width:100%;max-width:280px;align-self:center}
 .home-page .home-overview h1{font-size:clamp(64px,14vw,110px);text-align:center}
 .home-actions{width:100%;min-width:0;flex-direction:column;gap:8px;margin-top:8px}
 .home-page .home-actions .home-socials{width:100%;flex:none;justify-content:space-between;gap:0}
 .home-page .home-actions .home-socials a{width:32px;height:36px}
 .home-page .home-actions .home-social-icon{width:18px;height:18px}
 .home-page .home-actions .home-subathon-link{min-height:36px;font-size:11px;padding:10px 14px}
 .home-events{width:100%;min-height:0}
 .home-event{grid-template-columns:minmax(0,42fr) minmax(0,58fr);gap:20px;padding:6px 0}
 .home-event-date{display:block}
 .home-event-date,.home-event-title{font-size:11px;line-height:1.35;letter-spacing:.35px}
 .home-event-ongoing{position:absolute;right:calc(100% + 6px);transform:translateY(-50%);font-size:8px;letter-spacing:.4px}
 .home-event-ongoing::before{display:none}
 .home-events::after{left:calc((100% - 20px)*.42 + 10px);height:100%}
}
