/* An open, architectural Events composition in Lala's cream, green and gold. */
.public-website .events-page-intro { position:relative; display:grid; grid-template-columns:1.1fr 1fr; align-items:center; gap:72px; max-width:1320px; margin:36px auto 0; padding:40px 44px 54px; background:var(--brand-ivory,#f7f4ec); text-align:start; isolation:isolate; border-bottom:1px solid #194f3520; }
.events-hero-copy { animation:events-arrive .8s ease both; }
.events-hero-eyebrow { display:flex; align-items:center; gap:14px; font-size:12px; font-weight:600; letter-spacing:.07em; color:#52715b; }
.events-hero-eyebrow:before { content:""; width:36px; height:2px; background:#c69b43; }
.public-website .events-page-intro h1 { font-size:clamp(48px,5.5vw,78px); line-height:1.13; letter-spacing:-.035em; color:#143e2d; margin:28px 0 24px; }
.events-page-intro h1 span { display:block; max-width:520px; color:#52785a; font-size:.58em; line-height:1.4; letter-spacing:-.02em; margin-top:18px; }
.events-hero-copy p { font-size:16px; line-height:1.9; color:#637568; max-width:480px; margin:0; }
.events-hero-actions { display:flex; align-items:center; gap:24px; flex-wrap:wrap; margin-top:32px; }
.public-website .events-page-intro .events-explore { display:inline-flex; align-items:center; gap:24px; padding:15px 24px; border-radius:8px; background:#164e37; color:white; text-decoration:none; font-weight:600; transition:transform .2s,background .2s; }
.public-website .events-page-intro .events-explore:hover { transform:translateY(-3px); background:#0d402c; }
.events-hero-actions>a:last-child { font-size:13px; }
.events-hero-art { position:relative; min-width:0; height:465px; padding:15px 42px 38px; }
.events-photo-arch { position:relative; height:100%; width:100%; overflow:hidden; border-radius:220px 220px 10px 10px; background:#174e38; box-shadow:0 20px 40px #254f3015; animation:events-arrive 1s .15s ease both; }
.events-photo-arch img { width:100%; height:100%; object-fit:cover; animation:events-breathe 14s ease-in-out infinite alternate; }
.events-photo-arch:after { content:""; position:absolute; inset:40% 0 0; background:linear-gradient(transparent,#103b2ce6); }
.events-photo-caption { position:absolute; z-index:1; bottom:30px; inset-inline:24px; color:#fff9e8; text-align:center; font-size:21px; font-weight:600; }
.events-arch-outline { position:absolute; inset:0 22px 55px 58px; border:1px solid #ba934d80; border-radius:220px 220px 10px 10px; transform:rotate(5deg); }
.events-sun { position:absolute; width:94px; height:94px; inset-inline-end:-4px; top:4px; color:#bd9441; animation:events-turn 70s linear infinite; }
.events-gathering-seal { position:absolute; inset-inline-start:-8px; bottom:84px; width:120px; height:120px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; border-radius:50%; background:#174d36; color:#f5eedc; border:7px solid #f7f4ec; outline:1px solid #bd944175; animation:events-float 6s ease-in-out infinite; }
.events-gathering-seal span { font-size:29px; line-height:1.4; }
.events-gathering-seal small { font-size:10px; }
.events-art-label { display:flex; justify-content:space-between; gap:12px; padding-top:18px; color:#54705c; font-size:10px; letter-spacing:.04em; }
.events-art-label>span { color:#a07b35; }
.events-reader-page #events { scroll-margin-top:100px; }
@keyframes events-arrive { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:translateY(0); } }
@keyframes events-turn { to { transform:rotate(360deg); } }
@keyframes events-float { 50% { transform:translateY(-8px); } }
@keyframes events-breathe { from { transform:scale(1); } to { transform:scale(1.055); } }
@media(max-width:1000px) { .public-website .events-page-intro { gap:32px; padding-inline:28px; } .events-hero-art { height:420px; padding-inline:26px; } }
@media(max-width:700px) { .public-website .events-page-intro { grid-template-columns:1fr; padding:24px 24px 36px; margin:16px 0 0; gap:36px; } .public-website .events-page-intro h1 { font-size:48px; } .events-hero-art { width:min(100%,400px); margin:auto; height:390px; padding-inline:30px; } .events-hero-copy p { font-size:14px; } .events-gathering-seal { width:100px; height:100px; inset-inline-start:0; } .events-sun { width:70px; height:70px; inset-inline-end:0; } }
@media(prefers-reduced-motion:reduce) { .events-page-intro * { animation:none!important; transition:none!important; } }
