:root{--maroon:#560b15;--deep:#30050a;--gold:#e6b45b;--cream:#fbf3e4;--ink:#491019}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif}.hero{height:100svh;min-height:700px;position:relative;display:grid;place-items:center;overflow:hidden;background:#27050a;color:#fff}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.veil{position:absolute;inset:0;background:linear-gradient(180deg,#20030866 0%,#3b0710aa 45%,#190207e8 100%)}.topbar{position:absolute;z-index:2;top:0;left:0;right:0;padding:max(20px,env(safe-area-inset-top)) clamp(20px,5vw,70px) 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f2ca7333}.om{font:35px serif;color:var(--gold)}.brand{font:700 9px Cinzel;letter-spacing:2px;line-height:1.2;text-align:center;position:absolute;left:50%;transform:translateX(-50%)}.brand span{font-size:7px;color:#f1c96f;letter-spacing:3px}.music{border:1px solid #e4b45f;background:#4c0913cc;color:#f6d58d;border-radius:99px;padding:10px 14px;letter-spacing:1px;font-size:10px}.hero-content{position:relative;z-index:1;text-align:center;width:min(780px,90%);padding-top:50px}.eyebrow{font:700 10px Cinzel;letter-spacing:4px;color:#f0c66d}.symbol{font:65px serif;color:#f0c66d;line-height:1;margin:18px}.hero h1{font:600 clamp(45px,7vw,80px)/1.02 Cinzel;text-transform:uppercase;margin:0}.hero h1 em,.section-light h2 em,.experience h2 em,.finale h2 em{color:#e9b75e;font-family:"Playfair Display";text-transform:none;font-weight:500}.rule{display:flex;justify-content:center;align-items:center;gap:14px;color:#e4ae54;margin:22px 0}.rule i{display:block;width:90px;height:1px;background:#dca94d66}.hero-content p{font:15px/1.7 "DM Sans";color:#fff2da}.signature{font:italic 19px "Playfair Display";margin-top:26px;color:#f6d486}.signature span{color:#d99a3b}.scroll{position:absolute;z-index:2;bottom:28px;left:50%;transform:translateX(-50%);font:700 8px Cinzel;letter-spacing:2px;color:#fff0d0;display:flex;flex-direction:column;gap:10px;align-items:center;white-space:nowrap}.scroll b{font-size:16px;color:#e6b45b}.section-light{padding:100px 22px;background:var(--cream);background-image:radial-gradient(#9d65201c .7px,transparent .7px);background-size:12px 12px}.welcome{text-align:center;max-width:900px;margin:auto}.dark{color:#a85b27}.section-light h2{font:600 clamp(35px,5vw,55px)/1.15 Cinzel;text-transform:uppercase;margin:14px 0 25px}.lead{font-size:18px;line-height:1.8;max-width:700px;margin:auto}.welcome>p:not(.lead){max-width:690px;margin:18px auto;line-height:1.8;color:#654a42}.quote{margin:45px auto 0;max-width:600px;padding:23px;border-top:1px solid #d2a35a;border-bottom:1px solid #d2a35a;font:italic 23px "Playfair Display"}.maroon-band{background:var(--maroon);color:#fff1d3;padding:70px 22px}.band-inner{max-width:1000px;margin:auto;border:1px solid #d0a04e;padding:35px;display:grid;grid-template-columns:1fr 1.3fr 100px;align-items:center}.band-inner div:first-child{display:flex;flex-direction:column;font:600 13px Cinzel;letter-spacing:2px}.band-inner strong{font:600 40px Cinzel;color:#e9b75e}.band-inner p{line-height:1.7;margin:0}.mini-om{text-align:right;font:55px serif;color:#e6b45b}.schedule{padding-top:95px}.section-title{text-align:center}.goldline{color:#d69c3f;margin-top:18px}.events{max-width:1050px;margin:55px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:22px}.event{background:#fffaf0;border:1px solid #d6a353;padding:35px;display:grid;grid-template-columns:55px 105px 1fr;gap:20px;align-items:start;box-shadow:0 20px 50px #4e0a1312}.number{font:700 12px Cinzel;color:#b96b2a}.event-date{font:600 39px Cinzel;color:#74111d;line-height:1}.event-date small{font-size:10px;display:block;letter-spacing:2px;margin-top:7px}.event-copy>span{font-size:9px;letter-spacing:2px;color:#a46632}.event-copy h3{font:600 22px Cinzel;margin:8px 0;color:#64101b}.event-copy p{font-size:13px;line-height:1.7;margin:0 0 17px;color:#624942}.event-copy b{font-size:8px;letter-spacing:1.5px;color:#b66b2b}.experience{background:#3b0710;color:#fff0d3;padding:100px 22px;position:relative;overflow:hidden}.experience:after{content:"";position:absolute;width:500px;height:500px;right:-250px;top:-250px;border-radius:50%;background:#a7352444;filter:blur(50px)}.experience-inner{max-width:1050px;margin:auto;text-align:center;position:relative;z-index:1}.experience h2{font:600 clamp(34px,5vw,55px)/1.15 Cinzel;text-transform:uppercase;margin:13px 0 45px}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d1a05266}.experience-grid div{padding:35px 25px;border-right:1px solid #d1a05266}.experience-grid div:last-child{border:0}.experience-grid b{font:600 11px Cinzel;color:#dca94d}.experience-grid h3{font:600 18px Cinzel;color:#edc16a}.experience-grid p{font-size:13px;line-height:1.7;color:#f1dfc5}.location{padding:90px 22px}.location-wrap{max-width:1100px;margin:auto;display:grid;grid-template-columns:.85fr 1.15fr;gap:30px;align-items:stretch}.address{padding:35px 25px}.address h2{margin-bottom:20px}.address-line{height:1px;background:#d2a254;width:90px}.address p{font:18px/1.8 "Playfair Display";margin:25px 0}.direction{display:inline-flex;background:var(--maroon);color:#f4d58f;padding:15px 22px;gap:28px;font:700 9px Cinzel;letter-spacing:1.5px}.direction span{font-size:15px}.map{min-height:390px;position:relative;overflow:hidden;border:1px solid #d2a254;background:#e5e8df}.map-grid{position:absolute;inset:-20%;background:linear-gradient(35deg,transparent 46%,#fff 47% 50%,transparent 51%),linear-gradient(125deg,transparent 43%,#fff 44% 47%,transparent 48%),linear-gradient(0deg,transparent 49%,#cfd8cf 50% 51%,transparent 52%);background-size:180px 150px;transform:rotate(-5deg)}.map-card{position:absolute;top:18px;left:18px;background:#fff;padding:13px 15px;box-shadow:0 8px 22px #0002;font-size:10px}.map-card span{display:block;color:#777;margin-top:4px}.map-pin{position:absolute;left:52%;top:55%;transform:translate(-50%,-50%);font-size:70px;color:#c33b2c;text-shadow:0 3px 5px #0003}.finale{text-align:center;background:var(--maroon);color:#fff0d3;padding:100px 22px}.finale-mark{font:65px serif;color:#e7b65e}.finale h2{font:600 clamp(34px,5vw,55px)/1.15 Cinzel;text-transform:uppercase;margin:15px 0 25px}.finale p{max-width:700px;margin:auto;line-height:1.8;font-size:14px}.large{font-size:24px;margin-top:35px}footer{background:#f3dfbb;padding:25px 22px;display:flex;align-items:center;justify-content:center;gap:18px;color:#66111b}footer .footer-om{font:30px serif;color:#b36b2c}footer div:nth-child(2){display:flex;flex-direction:column;gap:4px}footer div span{font-size:8px;letter-spacing:2px}footer strong{font:700 12px Cinzel}footer a{margin-left:auto;font:700 8px Cinzel;letter-spacing:1px;color:#8a512d}.ambient{position:fixed;inset:0;pointer-events:none;z-index:50}.dust i{position:fixed;width:4px;height:7px;border-radius:80% 20%;background:#df9c40;opacity:.45;top:-20px;z-index:51;animation:fall linear forwards}@keyframes fall{to{transform:translate3d(var(--x),110vh,0) rotate(600deg);opacity:0}}@media(max-width:760px){.hero{min-height:690px}.brand{font-size:8px}.brand span{font-size:6px}.music{font-size:9px;padding:9px 11px}.music span{display:none}.hero-content{padding-top:55px}.hero h1{font-size:42px}.hero-content p{font-size:13px}.symbol{font-size:52px;margin:14px}.rule i{width:45px}.section-light{padding:75px 20px}.welcome{padding-left:25px;padding-right:25px}.lead{font-size:16px}.quote{font-size:20px}.band-inner{grid-template-columns:1fr;padding:28px;text-align:center}.band-inner strong{font-size:34px}.mini-om{text-align:center;margin-top:12px}.events{grid-template-columns:1fr;margin-top:45px}.event{grid-template-columns:35px 75px 1fr;padding:25px 18px;gap:12px}.event-date{font-size:29px}.event-copy h3{font-size:17px}.experience{padding:75px 20px}.experience-grid{grid-template-columns:1fr}.experience-grid div{border-right:0;border-bottom:1px solid #d1a05266}.experience-grid div:last-child{border-bottom:0}.location-wrap{grid-template-columns:1fr}.address{padding:0 5px 25px}.map{min-height:310px}.finale{padding:75px 20px}.finale h2{font-size:33px}footer{flex-wrap:wrap;text-align:center}footer a{width:100%;margin:5px 0 0}}@media(prefers-reduced-motion:reduce){.dust{display:none}html{scroll-behavior:auto}}
