/* Events route only; Home V3.2 owns the shared header, footer and full-width CTA. */
@font-face{font-family:"Noto Sans SC";src:url('fonts/noto-sans-sc-events.ttf') format('truetype');font-weight:400;font-display:swap}
.page-events main{overflow:hidden;background:white}
.ev-hero{position:relative;isolation:isolate;overflow:hidden;background:#fffcf6}
.ev-hero-grid{display:grid;grid-template-columns:minmax(0,46fr) minmax(0,54fr);align-items:center;gap:26px;padding-block:26px}
.ev-hero-copy{position:relative;z-index:1}
.ev-hero h1{font-size:39px;line-height:1.1;margin-bottom:15px}
.ev-hero-description{font-size:15px;line-height:1.5;scroll-margin-top:130px}
.ev-hero .v3-actions{gap:10px;margin-top:18px}.ev-hero .v3-button{font-size:13px;padding:10px 20px;gap:16px}
.ev-hero figure{height:290px;overflow:hidden;border-radius:32% 18% 22% 18% / 55% 35% 40% 30%}
.ev-hero figure img{width:100%;height:100%;object-fit:cover;object-position:center 48%}
.ev-hero .v3-motifs{height:680px;top:-45px;opacity:.6}
.ev-hero .v3-bamboo{top:85px;width:clamp(0px,calc((100vw - 1200px)/2 - 28px),82px);height:170px}
.ev-events{margin-top:18px;padding:24px;border-radius:20px;background:#f2f7ff;scroll-margin-top:112px}
.ev-section-title{display:flex;gap:15px;align-items:flex-start;margin-bottom:14px}
.ev-section-title>svg{width:31px;height:31px;color:#00269a;flex-shrink:0;margin-top:2px}
.ev-section-title h2{font-size:29px;line-height:1.2;margin-bottom:5px}.ev-section-title p{font-size:15px;line-height:1.5}
.ev-tabs{display:flex;gap:3px;border:1px solid #dce6f4;border-radius:30px;background:white;padding:3px;margin-bottom:16px}
.ev-tabs button{flex:1;min-width:0;min-height:43px;padding:9px 15px;border:0;border-radius:26px;cursor:pointer;background:white;color:#00269a;font-size:14px;font-weight:800;line-height:1.3}
.ev-tabs [aria-selected=true]{background:#00269a;color:white;box-shadow:inset 0 0 0 2px #ffffff22}
.ev-panel[hidden]{display:none!important}.ev-panel{scroll-margin-top:120px;border-radius:18px}
.ev-event-card{display:grid;grid-template-columns:34% 1fr;gap:24px;background:#fffbef;border-radius:17px;padding:16px;min-width:0}
.ev-event-card.ev-past{background:#edf6ff}
.ev-event-card figure{display:flex;flex-direction:column;min-width:0;margin:0}
.ev-event-card figure img{width:100%;height:100%;min-height:260px;max-height:340px;object-fit:cover;object-position:center;border-radius:13px}
.ev-event-card figcaption,.ev-volunteer figcaption{font-size:11px;line-height:1.4;color:#52627b;padding-top:6px}
.ev-event-content{padding:4px 6px 4px 0;min-width:0}
.ev-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:9px}.ev-badges span{display:inline-flex;align-items:center;min-height:23px;padding:3px 10px;border-radius:20px;background:#ffe49c;color:#123568;font-size:11px;font-weight:800}.ev-badges span+span{background:#e5f0fa}.ev-past .ev-badges span{background:#dceaff}
.ev-chinese-title{font-family:"Noto Sans SC",sans-serif;color:#00269a;font-size:23px;line-height:1.4;margin-bottom:4px}
.ev-event-card h3{font-size:24px;line-height:1.18;margin-bottom:13px;max-width:650px}
.ev-detail{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;margin-bottom:5px}.ev-detail svg{width:18px;height:18px;color:#9c0000;margin-top:1px}.ev-detail strong{font-weight:700}
.ev-pending-details{font-size:12px;line-height:1.45;margin:6px 0 0;color:#53617b}
.ev-event-description{font-size:15px;line-height:1.55;margin:14px 0 16px;max-width:730px}
.ev-registration-state{display:inline-flex;align-items:center;justify-content:center;min-height:44px;background:#f2e3c9;color:#5c4623;border:1px solid #dfcba8;border-radius:30px;padding:11px 23px;font-size:14px;font-weight:800;line-height:1.3;margin:0}
.ev-event-card .v3-button{min-height:44px;font-size:14px}
.ev-volunteer{display:grid;grid-template-columns:40% 1fr;gap:25px;align-items:center;margin-block:18px 22px;padding:20px;background:#eaf7f3;border-radius:20px}
.ev-volunteer figure{min-width:0}.ev-volunteer figure img{height:210px;width:100%;object-fit:cover;object-position:center 48%;border-radius:72px 25px 60px 25px}
.ev-volunteer h2{display:flex;align-items:center;gap:10px;font-size:27px;line-height:1.2;margin-bottom:10px}.ev-volunteer h2 svg{width:28px;height:28px;color:#00269a}
.ev-volunteer p{font-size:15px;line-height:1.5}.ev-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0 8px;padding:0;list-style:none}
.ev-benefits li{display:flex;gap:8px;align-items:center;padding:10px 9px;background:#ffffffbb;border-radius:20px;font-size:12px;line-height:1.35;font-weight:700}.ev-benefits svg{width:23px;height:23px;color:#9c0000;flex-shrink:0}
.ev-volunteer-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:14px;font-weight:800;color:#00269a}
.ev-noscript{font-size:14px;padding:14px}
@media(max-width:1190px) and (min-width:901px){.ev-hero h1{font-size:35px}.ev-hero-grid{gap:20px;grid-template-columns:minmax(0,48fr) minmax(0,52fr)}.ev-hero .v3-button{padding-inline:15px;font-size:12px}.ev-benefits{grid-template-columns:1fr}.ev-benefits li{padding:7px 10px}.ev-event-card{gap:18px}}
@media(max-width:900px){.ev-hero-grid{grid-template-columns:1fr;gap:22px;padding-block:28px 24px}.ev-hero h1{font-size:36px}.ev-hero-description{font-size:16px;line-height:1.55}.ev-hero .v3-actions{display:flex}.ev-hero .v3-button{font-size:14px;min-height:46px;padding:11px 20px}.ev-hero figure{height:clamp(205px,55vw,350px);border-radius:55px 35px 45px 35px}.ev-hero .v3-motifs{top:160px;opacity:.35}.ev-events{padding:18px;margin-top:16px}.ev-section-title{gap:10px}.ev-section-title h2{font-size:26px}.ev-section-title p{font-size:14px}.ev-section-title>svg{width:27px;height:27px}.ev-event-card{grid-template-columns:1fr;gap:14px;padding:14px}.ev-event-card figure img{height:190px;min-height:0;max-height:none;object-position:center 48%}.ev-event-content{padding:0}.ev-chinese-title{font-size:23px}.ev-event-card h3{font-size:23px;line-height:1.25;margin-bottom:13px}.ev-event-description{font-size:15px;line-height:1.55;margin:13px 0 16px}.ev-detail{font-size:14px}.ev-volunteer{grid-template-columns:1fr;gap:16px;padding:18px;margin-block:16px 22px}.ev-volunteer figure img{height:200px;border-radius:48px 25px 45px 25px}.ev-volunteer h2{font-size:25px;gap:9px}.ev-benefits{gap:7px}.ev-benefits li{flex-direction:column;align-items:flex-start;font-size:12px;padding:10px;border-radius:13px}.ev-volunteer p{font-size:15px}}
@media(max-width:420px){.ev-hero h1{font-size:34px}.ev-hero .v3-actions{display:grid;grid-template-columns:1fr;gap:9px}.ev-hero .v3-secondary{justify-self:center;min-height:44px;padding:8px 20px}.ev-section-title h2{font-size:24px}.ev-section-title{display:block}.ev-section-title>svg{display:none}.ev-tabs button{font-size:13px;min-height:44px;padding:9px 5px}.ev-events{padding:15px}.ev-event-card{padding:12px}.ev-registration-state{width:100%;font-size:13px;padding:12px 14px}.ev-event-card figure img{height:170px}.ev-volunteer h2{font-size:24px}.ev-benefits{grid-template-columns:1fr}.ev-benefits li{flex-direction:row;align-items:center;padding:9px 12px}.ev-volunteer-link{font-size:14px}}
