:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;font-weight:400;color:#333;background-color:#e6e5da;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background-color:#e6e5da}#root{min-height:100vh;display:flex;flex-direction:column;background-color:#e6e5da}html{background-color:#e6e5da}h1,h2,h3{line-height:1.2}button{font-family:inherit}h2{font-family:Mea Culpa,cursive;font-weight:400;font-style:normal}li{font-family:Playfair Display,serif;color:#333;font-size:1.5rem;font-weight:500}p{font-family:Playfair Display,serif}.header{position:fixed;top:0;width:100%;background:#fdfcf8;z-index:100;box-shadow:0 2px 10px #0000001a;transform:translateY(-100%);transition:transform .3s ease}.header.show{transform:translateY(0)}.nav-container{display:flex;justify-content:center;align-items:center;padding:.8rem 2rem;max-width:1200px;margin:0 auto}.nav-menu{list-style:none;display:flex;gap:3rem;margin:0;padding:0}.nav-link{background:none;border:none;color:#333;font-size:1rem;font-weight:500;cursor:pointer;transition:opacity .3s ease;padding:.5rem 1rem}.nav-link:hover{opacity:.6;text-decoration:underline}.main-content{width:100%}.hero{position:relative;width:100%;margin:0;padding:0;background:transparent;overflow:hidden}.hero-video{width:100%;height:auto;display:block;margin:0;padding:0}.hero-video-desktop{display:block}.hero-video-mobile{display:none}.mute-button{position:absolute;top:1rem;right:1rem;background:#00000080;border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:background-color .3s ease;z-index:10}.mute-button:hover{background:#000000b3}.mute-button svg{width:24px;height:24px}.hero h2{margin:0;font-size:4rem;font-weight:700;letter-spacing:3px}.subtitle{margin:1.5rem 0 0;font-size:1.5rem;font-weight:300;opacity:.8}.filmroll-section{background:#0a0806;padding:2rem 0;width:100%}.filmroll-container{display:flex;justify-content:center;padding:1rem}.filmroll{display:flex;flex-direction:row;background:linear-gradient(to right,#1a1410,#2a2218 5% 95%,#1a1410);padding:0;position:relative;border-left:3px solid #0d0a08;border-right:3px solid #0d0a08;box-shadow:inset 5px 0 15px #00000080,inset -5px 0 15px #00000080,0 10px 30px #000c;width:100%;max-width:400px}.filmroll-sprockets{display:flex;flex-direction:column;gap:18px;padding:15px 0;width:24px;align-items:center;background:#1a1410}.filmroll-sprockets-left{padding-left:4px;padding-right:2px}.filmroll-sprockets-right{padding-left:2px;padding-right:4px}.sprocket-hole{width:10px;height:14px;background:#0a0806;border-radius:2px;flex-shrink:0;box-shadow:inset 0 1px 2px #ffffff1a,0 1px 2px #000c}.filmroll-frames{display:flex;flex-direction:column;gap:8px;padding:10px 8px;flex:1;min-width:0}.film-frame{flex-shrink:0;background:#2a2218;padding:10px;position:relative;width:100%}.film-frame-inner{background:#f5f0e6;padding:8px;position:relative;width:100%}.film-photo-container{width:100%;aspect-ratio:4/5;overflow:hidden;background:#e8e0d0;border:1px solid #c4b8a4}.film-photo{width:100%;height:100%;object-fit:cover;filter:sepia(80%) contrast(1.1) brightness(.95) saturate(.8);transition:filter .3s ease}.film-frame:hover .film-photo{filter:sepia(60%) contrast(1.05) brightness(1) saturate(.9)}.film-caption{padding:10px 4px 4px;min-height:50px}.film-caption p{margin:0;font-family:Courier New,monospace;font-size:.7rem;color:#4a4035;line-height:1.4;text-align:left}.film-frame-number{position:absolute;bottom:4px;right:8px;font-family:Courier New,monospace;font-size:.65rem;color:#8b7355;font-weight:700;letter-spacing:1px}.filmroll-edge-text{position:absolute;left:50%;bottom:-25px;transform:translate(-50%);display:flex;gap:10px;font-family:Courier New,monospace;font-size:.6rem;color:#d4a574;letter-spacing:2px;text-transform:uppercase;white-space:nowrap;opacity:.8}.practical-section{padding:3rem 1.5rem;width:100%}.practical-section h2{text-align:center;font-size:2.5rem;margin-bottom:2rem;color:#333}.practical-inner{max-width:1200px;margin:0 auto}.practical-content{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.info-card{background:#fff5f7;padding:2rem;border-radius:8px;box-shadow:0 2px 8px #00000014;text-align:center;transition:box-shadow .3s ease;border-top:3px solid #000000}.info-card:hover{box-shadow:0 4px 16px #0000001f}.info-card h3{color:#000;margin-top:0;font-size:1.3rem}.info-card p{color:#fafad2;margin-bottom:0}.agenda-title,.section-title{padding-bottom:1rem;border-bottom:1px solid #000000}.agenda-list{display:flex;flex-direction:column;gap:2rem}.agenda-item{display:grid;grid-template-columns:180px 1fr;gap:.5rem 3rem;align-items:baseline;padding-bottom:2rem;border-bottom:1px solid rgba(36,32,21,.15)}.agenda-item:last-child{border-bottom:none;padding-bottom:0}.agenda-item h3{font-family:Playfair Display,serif;color:#333;font-size:1.5rem;font-weight:500;margin:0;letter-spacing:.5px;grid-column:1;grid-row:1}.agenda-item p{color:#666;margin:0;line-height:1.8;font-size:1.05rem;grid-column:2}.agenda-item p:first-of-type{grid-row:1}.agenda-detail{font-family:Courier New,monospace;font-style:italic;font-size:12px;color:#666;margin:.25rem 0 .5rem;line-height:1.6}.agenda-detail a{text-decoration:underline;color:#000}.rsvp-contact-info{font-size:16px}.rsvp-contact-info .separator{margin:0 .75rem}.rsvp-section{padding:3rem 1.5rem;width:100%;height:50vh}.rsvp-section h2{text-align:center;font-size:2.5rem;margin-bottom:1rem;color:#000}.rsvp-inner{max-width:800px;margin:0 auto;text-align:center}.rsvp-intro{color:#000;font-size:1.1rem;margin-bottom:2rem;font-family:Playfair Display,serif}.rsvp-contacts{display:flex;justify-content:center;gap:4rem;flex-wrap:wrap}.rsvp-contact{text-align:center}.rsvp-contact h3{color:#000;font-size:1.3rem;margin-bottom:.5rem}.rsvp-contact .role{color:#000;font-size:.9rem;margin-bottom:.5rem}.rsvp-contact .phone{color:#e28fbb;font-size:1.2rem;font-weight:600;text-decoration:none}.rsvp-contact .phone:hover{text-decoration:underline}@media(max-width:768px){.header{position:fixed}.nav-container{padding:.6rem 1.5rem}.nav-menu{gap:1.5rem}.nav-link{font-size:.9rem;padding:.3rem .6rem}.hero-video-desktop{display:none}.hero-video-mobile{display:block}.hero h2{font-size:2.5rem;letter-spacing:1.5px}.subtitle{font-size:1.1rem}.filmroll-section{padding:1.5rem 0}.filmroll-container{padding:.5rem 1rem}.filmroll{max-width:100%}.film-frame{padding:8px}.film-frame-inner{padding:6px}.filmroll-sprockets{gap:14px;width:20px;padding:12px 0}.sprocket-hole{width:8px;height:12px}.film-caption{min-height:45px;padding:8px 4px 4px}.film-caption p{font-size:.65rem}.filmroll-frames{padding:8px 6px;gap:6px}.practical-section{padding:2rem 1rem}.practical-section h2{font-size:1.8rem;margin-bottom:1.5rem}.practical-content{grid-template-columns:1fr;gap:1.5rem}.info-card{padding:1.5rem}.info-card h3{font-size:1.1rem}.agenda-title,.section-title{margin-top:5rem;font-size:1.8rem}.agenda-item{grid-template-columns:1fr;gap:.5rem;text-align:center;padding-bottom:1.5rem}.agenda-item h3{font-size:1.3rem;grid-column:1;grid-row:auto}.agenda-item p{grid-column:1}.agenda-item p:first-of-type{grid-row:auto}.rsvp-section{padding:2rem 1rem;height:auto;min-height:50vh}.rsvp-section h2{font-size:1.8rem}.rsvp-contacts{gap:2rem;flex-direction:column}.rsvp-contact-info{display:flex;flex-direction:column;gap:.5rem;align-items:center}.rsvp-contact-info .separator{display:none}}@media(min-width:1024px){.nav-container{padding:.8rem 2rem}.practical-content{grid-template-columns:repeat(3,1fr)}}
