.hero{background:var(--navy);background-image:radial-gradient(ellipse 70% 80% at 20% 50%,#223073 0%,transparent 60%),radial-gradient(ellipse 50% 60% at 80% 30%,#0e1a40 0%,transparent 55%);color:var(--white);padding:72px 0 80px;overflow:hidden;position:relative}.hero:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.025' fill-rule='evenodd'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/svg%3E");pointer-events:none}.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.hero-logo{height:80px;width:auto;display:block;margin-bottom:20px;animation:fadeUp .5s ease both}.hero-badge{display:inline-block;background:#e8a0202e;border:1px solid rgba(232,160,32,.45);color:var(--gold-lt);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:6px 14px;border-radius:100px;margin-bottom:24px;animation:fadeUp .6s ease both}.hero h1{font-family:var(--font-display);font-size:clamp(42px,5.5vw,64px);font-weight:900;line-height:1.05;margin-bottom:20px;animation:fadeUp .6s .1s ease both}.hero h1 em{font-style:italic;color:var(--gold)}.hero-sub{font-size:17px;font-weight:300;line-height:1.65;color:#fffc;margin-bottom:36px;max-width:420px;animation:fadeUp .6s .2s ease both}.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;animation:fadeUp .6s .3s ease both}.program-tiles{display:grid;grid-template-columns:1fr 1fr;gap:14px;animation:fadeUp .7s .25s ease both}.tile{border-radius:var(--radius);padding:28px 20px 24px;color:var(--white);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;cursor:pointer;transition:transform .2s,box-shadow .2s;text-align:center;min-height:120px;position:relative;overflow:hidden}.tile:after{content:"";position:absolute;inset:0;background:#fff0;transition:background .2s}.tile:hover:after{background:#ffffff14}.tile:hover{transform:translateY(-3px);box-shadow:0 12px 28px #00000040}.tile-icon{font-size:28px;line-height:1}.tile-label{font-size:15px;font-weight:700;line-height:1.2}.tile-blue{background:var(--blue)}.tile-green{background:var(--green)}.tile-red{background:var(--red)}.tile-amber{background:#c87a0a}.section-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:32px}.section-title{font-family:var(--font-display);font-size:32px;font-weight:700;color:var(--navy)}.all-link{font-size:14px;font-weight:600;color:var(--blue);transition:letter-spacing .2s}.all-link:hover{letter-spacing:.04em}.events-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:20px}.event-card{background:var(--white);border-radius:var(--radius);border:1px solid var(--border);padding:24px;box-shadow:var(--shadow-card);transition:box-shadow .22s,transform .22s;display:flex;flex-direction:column;gap:10px;position:relative;overflow:hidden}.event-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px}.event-card.concert:before{background:var(--blue)}.event-card.film:before{background:var(--red)}.event-card.class:before{background:var(--green)}.event-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}.event-tag{display:inline-flex;align-items:center;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:100px;width:fit-content}.tag-concert{background:#dbeafe;color:var(--blue)}.tag-film{background:#fee2e2;color:var(--red)}.tag-class{background:#dcfce7;color:var(--green)}.event-card h3{font-family:var(--font-display);font-size:21px;font-weight:700;color:var(--navy);line-height:1.2}.event-meta{display:flex;flex-direction:column;gap:5px;margin-top:2px}.meta-row{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--muted)}.meta-icon{font-size:14px;flex-shrink:0}.event-link{margin-top:auto;padding-top:14px;font-size:13.5px;font-weight:700;color:var(--blue);display:inline-flex;align-items:center;gap:4px;transition:gap .2s}.event-link:hover{gap:8px}.event-card.film .event-link{color:var(--red)}.event-card.class .event-link{color:var(--green)}.place-section{background:var(--cream);padding:72px 0;text-align:center}.place-section .section-title{margin-bottom:8px}.place-subtitle{font-size:17px;color:var(--muted);margin-bottom:44px}.roles-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;text-align:left}.role-card{background:var(--white);border-radius:var(--radius);border:1px solid var(--border);padding:28px 24px;box-shadow:var(--shadow-card);transition:box-shadow .22s,transform .22s;display:flex;flex-direction:column;gap:10px;position:relative;overflow:hidden}.role-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px}.role-card.attend:before{background:var(--blue)}.role-card.volunteer:before{background:var(--green)}.role-card.present:before{background:var(--red)}.role-card.lead:before{background:var(--amber)}.role-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}.role-icon{font-size:30px;line-height:1}.role-card h3{font-family:var(--font-display);font-size:20px;font-weight:700}.role-card.attend h3{color:var(--blue)}.role-card.volunteer h3{color:var(--green)}.role-card.present h3{color:var(--red)}.role-card.lead h3{color:var(--amber)}.role-card p{font-size:14px;line-height:1.6;color:var(--muted);flex:1}.role-link{font-size:13.5px;font-weight:700;display:inline-flex;align-items:center;gap:4px;transition:gap .2s}.role-link:hover{gap:8px}.role-card.attend .role-link{color:var(--blue)}.role-card.volunteer .role-link{color:var(--green)}.role-card.present .role-link{color:var(--red)}.role-card.lead .role-link{color:var(--amber)}.donate-banner{background:var(--navy-dk);color:var(--white);padding:56px 0}.donate-inner{display:flex;align-items:center;justify-content:space-between;gap:32px}.donate-inner h2{font-family:var(--font-display);font-size:30px;font-weight:700;margin-bottom:8px}.donate-inner p{font-size:15px;color:#ffffffb8;max-width:540px}.donate-btn{font-size:15px;padding:16px 40px;flex-shrink:0}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.hero-inner{grid-template-columns:1fr}.program-tiles{max-width:360px}.events-grid{grid-template-columns:1fr}.roles-grid{grid-template-columns:1fr 1fr}.donate-inner{flex-direction:column;align-items:flex-start}}@media(max-width:600px){.hero{padding:48px 0 56px}.roles-grid{grid-template-columns:1fr}}
