@font-face{font-family:'Cormorant';font-style:normal;font-weight:300 700;font-display:swap;src:url(/assets/fonts/cormorant-latin-wght-normal.woff2) format('woff2');}
@font-face{font-family:'Cormorant';font-style:italic;font-weight:300 700;font-display:swap;src:url(/assets/fonts/cormorant-latin-wght-italic.woff2) format('woff2');}
@font-face{font-family:'Nunito';font-style:normal;font-weight:200 1000;font-display:swap;src:url(/assets/fonts/nunito-latin-wght-normal.woff2) format('woff2');}
@font-face{font-family:'Cormorant Fallback';font-style:normal;src:local('Times New Roman'),local('Liberation Serif'),local('Times');size-adjust:94%;ascent-override:98.3%;descent-override:30.5%;line-gap-override:0%;}
@font-face{font-family:'Cormorant Fallback';font-style:italic;src:local('Times New Roman Italic'),local('Liberation Serif Italic'),local('Times Italic');size-adjust:86.5%;ascent-override:106.8%;descent-override:33.2%;line-gap-override:0%;}
@font-face{font-family:'Per Astra Title Fallback';src:local('Times New Roman'),local('Liberation Serif'),local('Times');size-adjust:97.6%;ascent-override:94.7%;descent-override:29.4%;line-gap-override:0%;}
@font-face{font-family:'Nunito Fallback';src:local('Arial'),local('Liberation Sans'),local('Helvetica');size-adjust:100%;ascent-override:101.1%;descent-override:35.3%;line-gap-override:0%;}
:root{
--rose:#e05575;--rose-soft:#f7a8bc;
--lav:#c890f0;--lav-soft:#e0d0f8;
--teal:#3bbfb8;--aqua:#85ddd8;
--gold:#f0c060;--peach:#fde8d8;
--cream:#fffcfa;--void:#080614;--void2:#110828;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Nunito','Nunito Fallback',sans-serif;font-weight:300;background:var(--void);color:var(--cream);overflow-x:hidden;}
@keyframes shimmer{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
@keyframes pulse{0%,100%{opacity:0.3}50%{opacity:0.9}}
@keyframes rotateSlow{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes rotateSlowRev{from{transform:rotate(0deg)}to{transform:rotate(-360deg)}}
.iri{
background:linear-gradient(120deg,#e05575,#c890f0,#3bbfb8,#f0c060,#f7a8bc,#85ddd8,#c890f0,#e05575);
background-size:400% 400%;
-webkit-background-clip:text;-webkit-text-fill-color:transparent;
background-clip:text;animation:shimmer 7s ease infinite;
}
.iri-line{height:1px;border:none;background:linear-gradient(90deg,transparent,rgba(224,85,117,0.5),rgba(200,144,240,0.7),rgba(59,191,184,0.5),rgba(240,192,96,0.5),transparent);margin:0;}
#main-nav{position:fixed;top:0;width:100%;z-index:100;padding:1rem 3rem;display:flex;justify-content:space-between;align-items:center;background:rgba(8,6,20,0.82);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid rgba(200,144,240,0.1);transition:box-shadow 0.3s;}
.nav-logo{font-family:'Cormorant','Cormorant Fallback',serif;font-size:1rem;letter-spacing:0.45em;text-transform:uppercase;color:rgba(255,252,250,0.81);text-decoration:none;font-weight:300;}
.nav-links{list-style:none;display:flex;gap:2.5rem;}
.nav-links a{text-decoration:none;color:rgba(255,252,250,0.62);font-size:0.58rem;letter-spacing:0.3em;text-transform:uppercase;transition:color 0.3s;font-weight:400;}
.nav-links a:hover{color:var(--rose-soft);}
.nav-cta{padding:0.55rem 1.4rem;background:linear-gradient(135deg,rgba(100,160,255,0.85),rgba(180,130,255,0.85),rgba(220,170,255,0.85));border:none;color:#fff;font-size:0.56rem;letter-spacing:0.24em;text-transform:uppercase;cursor:pointer;font-family:'Nunito','Nunito Fallback',sans-serif;transition:all 0.35s;text-decoration:none;display:inline-flex;align-items:center;box-shadow:0 2px 18px rgba(140,100,255,0.3);}
.nav-cta:hover{background:linear-gradient(135deg,rgba(120,180,255,0.95),rgba(190,140,255,0.95),rgba(225,180,255,0.95));box-shadow:0 4px 28px rgba(140,100,255,0.5);transform:translateY(-1px);}
.nav-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px;}
.nav-toggle span{width:22px;height:1px;background:rgba(255,252,250,0.68);display:block;transition:all 0.3s;}
#hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:8rem 2rem 5rem;position:relative;overflow:hidden;}
.hero-nebula{position:absolute;inset:0;pointer-events:none;}
.hero-nebula::before{content:'';position:absolute;width:900px;height:900px;top:50%;left:50%;transform:translate(-50%,-54%);background:radial-gradient(ellipse,rgba(200,144,240,0.12) 0%,rgba(59,191,184,0.06) 35%,transparent 70%);border-radius:50%;}
.hero-nebula::after{content:'';position:absolute;width:600px;height:300px;top:55%;left:40%;background:radial-gradient(ellipse,rgba(224,85,117,0.08),transparent 70%);border-radius:50%;}
.orrery{position:absolute;top:50%;left:50%;transform:translate(-50%,-52%);pointer-events:none;width:800px;height:800px;}
.ring{position:absolute;top:50%;left:50%;border-radius:50%;border-style:solid;transform:translate(-50%,-50%);}
.ring-1{width:720px;height:720px;border-width:0.5px;border-color:rgba(200,144,240,0.12);animation:rotateSlow 120s linear infinite;border-style:dashed;}
.ring-2{width:580px;height:580px;border-width:0.4px;border-color:rgba(59,191,184,0.1);animation:rotateSlowRev 90s linear infinite;border-style:dashed;}
.ring-3{width:440px;height:440px;border-width:0.5px;border-color:rgba(224,85,117,0.1);animation:rotateSlow 70s linear infinite;}
.ring-4{width:300px;height:300px;border-width:0.4px;border-color:rgba(240,192,96,0.1);animation:rotateSlowRev 55s linear infinite;border-style:dashed;}
.ring-5{width:160px;height:160px;border-width:0.5px;border-color:rgba(200,144,240,0.2);animation:rotateSlow 35s linear infinite;}
.constellation{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0.22;}
canvas#starfield{position:fixed;inset:0;pointer-events:none;z-index:0;}
.hero-content{position:relative;z-index:2;}
.hero-presented{display:block;font-size:0.54rem;letter-spacing:0.75em;text-transform:uppercase;color:rgba(200,144,240,0.78);margin-bottom:1.8rem;font-weight:300;}
.hero-series{font-size:0.62rem;letter-spacing:0.55em;text-transform:uppercase;color:rgba(255,252,250,0.52);margin-bottom:0.6rem;display:block;}
.hero-title{font-family:'Cormorant','Per Astra Title Fallback',serif;font-size:clamp(5rem,14vw,11rem);font-weight:300;line-height:0.88;letter-spacing:0.08em;margin-bottom:0.3rem;}
.hero-title-sub{font-family:'Cormorant','Cormorant Fallback',serif;font-size:clamp(1rem,2.5vw,1.6rem);font-weight:300;font-style:italic;letter-spacing:0.35em;color:rgba(255,252,250,0.62);margin-bottom:2rem;display:block;}
.hero-tagline{font-size:clamp(0.65rem,1.4vw,0.82rem);color:rgba(200,144,240,0.78);letter-spacing:0.28em;max-width:560px;margin:0 auto 3rem;font-weight:300;text-transform:uppercase;line-height:2;}
.btn{display:inline-flex;align-items:center;gap:0.5rem;padding:0.9rem 2.2rem;font-size:0.6rem;letter-spacing:0.24em;text-transform:uppercase;text-decoration:none;cursor:pointer;border:none;font-family:'Nunito','Nunito Fallback',sans-serif;font-weight:400;transition:all 0.35s;}
.btn-primary{background:linear-gradient(135deg,rgba(224,85,117,0.9),rgba(200,144,240,0.9));color:#fff;box-shadow:0 4px 30px rgba(200,144,240,0.25);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 40px rgba(200,144,240,0.4);}
.btn-ghost{background:transparent;color:rgba(255,252,250,0.61);border:1px solid rgba(255,252,250,0.2);}
.btn-cosmic{background:linear-gradient(135deg,#64a0ff,#b082ff,#dbaeff);border:none;color:#fff;box-shadow:0 4px 30px rgba(130,90,255,0.35);}
.btn-cosmic:hover{transform:translateY(-2px);box-shadow:0 8px 40px rgba(130,90,255,0.55);background:linear-gradient(135deg,#7ab5ff,#c09aff,#e4beff);}
.btn-ghost:hover{border-color:rgba(255,252,250,0.54);color:rgba(255,252,250,1.0);}
.hero-cta{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-bottom:3rem;}
.scroll-hint{display:flex;flex-direction:column;align-items:center;gap:0.6rem;color:rgba(200,144,240,0.2);font-size:0.5rem;letter-spacing:0.45em;text-transform:uppercase;}
.scroll-line{width:1px;height:55px;background:linear-gradient(to bottom,rgba(200,144,240,0.35),transparent);animation:pulse 2.5s ease-in-out infinite;}
.s-label{display:block;font-size:0.54rem;letter-spacing:0.6em;text-transform:uppercase;color:rgba(229,102,131,0.95);margin-bottom:0.7rem;font-weight:400;}
.s-title{font-family:'Cormorant','Cormorant Fallback',serif;font-size:clamp(2rem,5vw,3.8rem);font-weight:600;line-height:1.08;color:var(--cream);}
.s-title em{font-style:italic;color:var(--lav);}
#concept{padding:7rem 4rem;max-width:920px;margin:0 auto;text-align:center;position:relative;z-index:1;}
.concept-body{font-size:0.92rem;line-height:2;color:rgba(255,252,250,0.78);max-width:700px;margin:1.8rem auto 3.5rem;}
.concept-body strong{color:rgba(255,252,250,1.0);font-weight:400;}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(200,144,240,0.08);margin-top:3rem;}
.pillar{padding:2.5rem 2rem;background:rgba(8,6,20,0.95);text-align:center;transition:background 0.4s;}
.pillar:hover{background:rgba(200,144,240,0.04);}
.pillar-glyph{font-size:1.4rem;display:block;margin-bottom:1.2rem;opacity:0.6;}
.pillar-title{font-family:'Cormorant','Cormorant Fallback',serif;font-size:1.15rem;font-weight:600;color:rgba(255,252,250,1.0);margin-bottom:0.6rem;}
.pillar-body{font-size:0.73rem;line-height:1.85;color:rgba(255,252,250,0.68);}
#about{padding:7rem 4rem;position:relative;z-index:1;}
.about-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1.4fr;gap:6rem;align-items:start;}
.about-left{display:flex;flex-direction:column;align-items:flex-start;}
.about-img-wrap{width:70%;position:relative;margin-bottom:2.2rem;}
.about-img{width:100%;height:auto;display:block;border:none;object-fit:contain;}
.about-eyebrow{font-size:0.54rem;letter-spacing:0.6em;text-transform:uppercase;color:rgba(229,102,131,0.95);margin-bottom:0.6rem;display:block;}
.about-name{font-family:'Cormorant','Cormorant Fallback',serif;font-size:clamp(2.5rem,4vw,4rem);font-weight:600;line-height:1.0;color:var(--cream);margin-bottom:0.3rem;}
.about-role{font-family:'Cormorant','Cormorant Fallback',serif;font-size:0.95rem;font-style:italic;color:rgba(200,144,240,0.78);margin-bottom:1.2rem;display:block;letter-spacing:0.1em;}
.about-links{display:flex;flex-direction:column;gap:0.3rem;}
.about-link{font-size:0.58rem;letter-spacing:0.28em;text-transform:uppercase;color:rgba(255,252,250,0.52);text-decoration:none;transition:color 0.3s;}
.about-link:hover{color:rgba(200,144,240,0.78);}
.about-right{}
.about-quote{font-family:'Cormorant','Cormorant Fallback',serif;font-size:clamp(1.1rem,2vw,1.55rem);font-style:italic;font-weight:300;color:rgba(255,252,250,0.62);line-height:1.55;margin-bottom:2rem;border-left:1px solid rgba(200,144,240,0.2);padding-left:1.5rem;}
.about-quote em{color:rgba(200,144,240,0.78);font-style:normal;}
.about-body{font-size:0.82rem;line-height:2;color:rgba(255,252,250,0.78);margin-bottom:0.9rem;}
.about-body strong{color:rgba(255,252,250,1.0);font-weight:400;}
.year-divider{padding:3rem 4rem 1.5rem;max-width:1100px;margin:0 auto;position:relative;z-index:1;}
.year-label{font-family:'Cormorant','Cormorant Fallback',serif;font-size:clamp(4rem,10vw,8rem);font-weight:700;font-style:italic;color:rgba(200,144,240,0.07);line-height:1;display:block;margin-bottom:-0.5rem;}
.year-sub{font-size:0.56rem;letter-spacing:0.5em;text-transform:uppercase;color:rgba(200,144,240,0.78);}
#events{padding:2rem 0 6rem;position:relative;z-index:1;}
.events-inner{max-width:1100px;margin:0 auto;padding:0 4rem;}
.events-header{text-align:center;padding:4rem 0 3rem;}
.event-list{position:relative;}
.event-list::before{content:'';position:absolute;left:50%;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,rgba(200,144,240,0.2) 5%,rgba(200,144,240,0.2) 95%,transparent);transform:translateX(-50%);}
.event-card{display:grid;grid-template-columns:1fr 60px 1fr;align-items:stretch;padding:2.8rem 0;border-bottom:1px solid rgba(200,144,240,0.07);transition:all 0.4s;position:relative;}
.event-card:last-child{border-bottom:none;}
.event-card:hover{background:rgba(200,144,240,0.025);}
.ev-left{padding-right:3.5rem;display:flex;flex-direction:column;justify-content:center;}
.ev-right{padding-left:3.5rem;display:flex;flex-direction:column;justify-content:center;}
.ev-center{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;z-index:2;}
.ev-vline{flex:1;width:1px;background:rgba(200,144,240,0.15);}
.ev-dot{width:9px;height:9px;border-radius:50%;border:1px solid rgba(200,144,240,0.4);background:var(--void);position:relative;flex-shrink:0;transition:all 0.3s;}
.event-card:hover .ev-dot{border-color:var(--lav);box-shadow:0 0 12px rgba(200,144,240,0.4);}
.ev-dot-inner{position:absolute;inset:2px;border-radius:50%;background:var(--lav);opacity:0;transition:opacity 0.3s;}
.event-card:hover .ev-dot-inner{opacity:1;}
.ev-session{font-size:0.5rem;letter-spacing:0.5em;text-transform:uppercase;color:rgba(200,144,240,0.78);margin-bottom:0.25rem;}
.ev-date-block{margin-bottom:0.9rem;}
.ev-dayofweek{font-size:0.56rem;letter-spacing:0.3em;text-transform:uppercase;color:rgba(255,252,250,0.58);display:block;margin-bottom:0.1rem;}
.ev-date{font-size:0.62rem;letter-spacing:0.32em;text-transform:uppercase;color:rgba(200,144,240,0.82);display:block;}
.ev-transit-note{font-size:0.52rem;letter-spacing:0.22em;text-transform:uppercase;color:rgba(255,252,250,0.52);margin-top:0.15rem;display:block;}
.ev-tag{display:inline-block;padding:0.18rem 0.6rem;font-size:0.5rem;letter-spacing:0.2em;text-transform:uppercase;border:1px solid;margin-bottom:0.6rem;}
.t-eclipse{border-color:rgba(240,192,96,0.35);color:rgba(240,192,96,0.75);}
.t-retrograde{border-color:rgba(200,144,240,0.35);color:rgba(200,144,240,0.78);}
.t-ingress{border-color:rgba(59,191,184,0.35);color:rgba(59,191,184,0.82);}
.t-conjunction{border-color:rgba(247,168,188,0.35);color:rgba(247,168,188,0.75);}
.t-node{border-color:rgba(224,85,117,0.35);color:rgba(229,102,131,0.95);}
.t-direct{border-color:rgba(133,221,216,0.35);color:rgba(133,221,216,0.75);}
.t-fullmoon{border-color:rgba(200,200,255,0.35);color:rgba(200,200,255,0.75);}
.t-supermoon{border-color:rgba(59,191,184,0.35);color:rgba(59,191,184,0.82);}
.t-bluemoon{border-color:rgba(200,144,240,0.35);color:rgba(200,144,240,0.78);}
.t-micromoon{border-color:rgba(224,85,117,0.35);color:rgba(229,102,131,0.95);}
.ev-title{font-family:'Cormorant','Cormorant Fallback',serif;font-size:1.65rem;font-weight:600;color:var(--cream);line-height:1.08;margin-bottom:0.4rem;}
.ev-subtitle{font-size:0.65rem;letter-spacing:0.18em;text-transform:uppercase;color:rgba(200,144,240,0.78);margin-bottom:0.85rem;}
.ev-desc{font-size:0.78rem;line-height:1.9;color:rgba(255,252,250,0.78);}
.ev-sound{margin-top:1rem;padding-top:0.9rem;border-top:1px solid rgba(200,144,240,0.08);}
.ev-sound-label{font-size:0.5rem;letter-spacing:0.35em;text-transform:uppercase;color:rgba(59,191,184,0.84);margin-bottom:0.3rem;display:block;}
.ev-sound-text{font-family:'Cormorant','Cormorant Fallback',serif;font-size:0.92rem;font-style:italic;color:rgba(133,221,216,0.88);line-height:1.6;}
.ev-sensorium{margin-top:0.8rem;padding-top:0.8rem;border-top:1px solid rgba(240,192,96,0.08);}
.ev-sensorium-label{font-size:0.5rem;letter-spacing:0.35em;text-transform:uppercase;color:rgba(240,192,96,0.75);margin-bottom:0.3rem;display:block;}
.ev-sensorium-text{font-family:'Cormorant','Cormorant Fallback',serif;font-size:0.88rem;font-style:italic;color:rgba(247,168,188,0.88);line-height:1.6;}
.event-card.right .ev-sensorium{text-align:right;}
.event-card.left .ev-left{padding-right:3.5rem;padding-left:0;text-align:left;}
.event-card.left .ev-right{padding-left:3.5rem;padding-right:0;}
.event-card.right .ev-left{padding-left:3.5rem;padding-right:0;}
.event-card.right .ev-right{padding-right:3.5rem;padding-left:0;text-align:right;}
.event-card.right .ev-sound{text-align:right;}
#mix{padding:7rem 4rem;position:relative;z-index:1;background:rgba(200,144,240,0.02);}
.mix-inner{max-width:1000px;margin:0 auto;}
.mix-header{text-align:center;margin-bottom:4rem;}
.mix-intro{font-size:0.9rem;line-height:2;color:rgba(255,252,250,0.78);max-width:680px;margin:1.5rem auto 0;text-align:center;}
.mix-intro strong{color:rgba(255,252,250,0.97);font-weight:400;}
.mix-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;margin-top:4rem;align-items:start;}
.mix-left{}
.mix-themes-label{font-size:0.54rem;letter-spacing:0.52em;text-transform:uppercase;color:rgba(229,102,131,0.95);margin-bottom:1.5rem;display:block;}
.mix-themes{list-style:none;display:flex;flex-direction:column;gap:0;}
.mix-theme{padding:1rem 0;border-bottom:1px solid rgba(200,144,240,0.1);display:flex;gap:1rem;align-items:baseline;cursor:default;transition:all 0.3s;}
.mix-theme:first-child{border-top:1px solid rgba(200,144,240,0.1);}
.mix-theme:hover{padding-left:0.5rem;}
.mix-theme-glyph{font-size:0.75rem;color:rgba(200,144,240,0.4);flex-shrink:0;width:1.2rem;text-align:center;transition:color 0.3s;}
.mix-theme:hover .mix-theme-glyph{color:rgba(200,144,240,0.8);}
.mix-theme-text{}
.mix-theme-name{font-family:'Cormorant','Cormorant Fallback',serif;font-size:1.1rem;font-weight:600;color:rgba(255,252,250,1.0);display:block;margin-bottom:0.15rem;transition:color 0.3s;}
.mix-theme:hover .mix-theme-name{color:var(--cream);}
.mix-theme-desc{font-size:0.68rem;color:rgba(255,252,250,0.65);line-height:1.6;letter-spacing:0.02em;}
.mix-right{}
.mix-card{border:1px solid rgba(200,144,240,0.2);padding:2.8rem;background:rgba(200,144,240,0.03);}
.mix-card-eyebrow{font-size:0.52rem;letter-spacing:0.52em;text-transform:uppercase;color:rgba(229,102,131,0.95);margin-bottom:1.2rem;display:block;}
.mix-price{font-family:'Cormorant','Cormorant Fallback',serif;font-size:3.5rem;font-weight:300;color:var(--cream);line-height:1;margin-bottom:0.2rem;display:block;}
.mix-price-sub{font-size:0.6rem;letter-spacing:0.28em;text-transform:uppercase;color:rgba(255,252,250,0.6);display:block;margin-bottom:2rem;}
.mix-what{list-style:none;margin-bottom:2rem;}
.mix-what li{font-size:0.78rem;line-height:1.75;color:rgba(255,252,250,0.75);padding:0.38rem 0;display:flex;gap:0.65rem;align-items:baseline;border-bottom:1px solid rgba(200,144,240,0.07);}
.mix-what li:last-child{border-bottom:none;}
.mix-what li::before{content:'✦';color:rgba(240,192,96,0.5);font-size:0.46rem;flex-shrink:0;}
.mix-divider{height:1px;background:rgba(200,144,240,0.12);margin:1.8rem 0;}
.mix-venmo-label{font-size:0.52rem;letter-spacing:0.42em;text-transform:uppercase;color:rgba(200,144,240,0.78);margin-bottom:0.5rem;display:block;}
.mix-venmo{font-family:'Cormorant','Cormorant Fallback',serif;font-size:1.4rem;font-weight:600;color:rgba(247,168,188,0.75);display:block;margin-bottom:1.5rem;letter-spacing:0.05em;}
.mix-email-label{font-size:0.52rem;letter-spacing:0.42em;text-transform:uppercase;color:rgba(200,144,240,0.78);margin-bottom:0.5rem;display:block;}
.mix-email{font-family:'Cormorant','Cormorant Fallback',serif;font-size:1rem;color:rgba(255,252,250,0.82);display:block;margin-bottom:1.8rem;text-decoration:none;transition:color 0.3s;}
.mix-email:hover{color:rgba(200,144,240,0.78);}
.mix-info-box{background:rgba(200,144,240,0.05);border:1px solid rgba(200,144,240,0.12);padding:1.4rem 1.6rem;margin-bottom:1.8rem;}
.mix-info-label{font-size:0.5rem;letter-spacing:0.44em;text-transform:uppercase;color:rgba(200,144,240,0.78);margin-bottom:0.8rem;display:block;}
.mix-info-list{list-style:none;}
.mix-info-list li{font-size:0.72rem;color:rgba(255,252,250,0.72);padding:0.22rem 0;display:flex;gap:0.6rem;}
.mix-info-list li::before{content:'—';color:rgba(200,144,240,0.3);flex-shrink:0;}
.mix-cta{display:inline-flex;align-items:center;gap:0.5rem;padding:0.9rem 2rem;font-size:0.6rem;letter-spacing:0.24em;text-transform:uppercase;text-decoration:none;cursor:pointer;border:none;font-family:'Nunito','Nunito Fallback',sans-serif;font-weight:400;transition:all 0.35s;background:linear-gradient(135deg,rgba(224,85,117,0.9),rgba(200,144,240,0.9));color:#fff;box-shadow:0 4px 30px rgba(200,144,240,0.2);width:100%;justify-content:center;}
.mix-cta:hover{transform:translateY(-2px);box-shadow:0 8px 40px rgba(200,144,240,0.38);}
.mix-gift-note{font-size:0.68rem;color:rgba(255,252,250,0.58);text-align:center;margin-top:0.9rem;font-style:italic;font-family:'Cormorant','Cormorant Fallback',serif;}
#contact{padding:9rem 2rem 5rem;text-align:center;position:relative;z-index:1;overflow:hidden;}
#contact::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 60%,rgba(200,144,240,0.09),transparent 60%);pointer-events:none;}
.cta-eyebrow{font-size:0.54rem;letter-spacing:0.65em;text-transform:uppercase;color:rgba(200,144,240,0.78);margin-bottom:1.2rem;display:block;}
.cta-h{font-family:'Cormorant','Cormorant Fallback',serif;font-size:clamp(3rem,8vw,6.5rem);font-weight:700;font-style:italic;color:var(--cream);line-height:1.0;margin-bottom:1.2rem;}
.cta-sub{font-size:0.83rem;line-height:1.85;color:rgba(255,252,250,0.68);max-width:440px;margin:0 auto 2.8rem;}
.cta-email{font-family:'Cormorant','Cormorant Fallback',serif;font-size:1.5rem;font-weight:600;color:rgba(247,168,188,0.7);display:block;margin-bottom:2.5rem;text-decoration:none;transition:opacity 0.3s;letter-spacing:0.05em;}
.cta-email:hover{opacity:0.55;}
.contact-boxes{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(200,144,240,0.08);max-width:700px;margin:2.5rem auto 0;}
.contact-box{padding:2rem 1.5rem;background:rgba(8,6,20,0.95);text-align:center;}
.contact-box-label{font-size:0.5rem;letter-spacing:0.42em;text-transform:uppercase;color:rgba(200,144,240,0.78);margin-bottom:0.5rem;display:block;}
.contact-box-val{font-family:'Cormorant','Cormorant Fallback',serif;font-size:1rem;color:rgba(255,252,250,0.74);font-weight:400;text-decoration:none;transition:color 0.3s;display:block;letter-spacing:0.05em;}
.contact-box-val:hover{color:rgba(200,144,240,0.8);}
.contact-btn-wrap{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:2.5rem;}
footer{padding:2.5rem 4rem;display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(200,144,240,0.08);position:relative;z-index:1;}
.footer-copy{font-size:0.52rem;color:rgba(255,252,250,0.56);letter-spacing:0.14em;}
.footer-brand{font-family:'Cormorant','Cormorant Fallback',serif;font-size:1rem;color:rgba(255,252,250,0.56);letter-spacing:0.3em;font-style:italic;}
.reveal{opacity:0;transform:translateY(22px);transition:opacity 0.9s ease,transform 0.9s ease;}
.reveal.on{opacity:1;transform:none;}
@media(max-width:900px){
#main-nav{padding:1rem 1.5rem;}
.nav-links{display:none;}
.nav-links.open{display:flex;flex-direction:column;position:fixed;top:60px;left:0;right:0;background:rgba(8,6,20,0.97);padding:2rem 1.5rem;gap:1.5rem;border-bottom:1px solid rgba(200,144,240,0.15);z-index:99;}
.nav-toggle{display:flex;}
.orrery{width:400px;height:400px;}
.ring-1{width:360px;height:360px;}
.ring-2{width:290px;height:290px;}
.ring-3{width:220px;height:220px;}
.ring-4{width:150px;height:150px;}
.ring-5{width:80px;height:80px;}
.constellation svg{width:360px;height:360px;}
#concept{padding:5rem 1.5rem;}
.pillars{grid-template-columns:1fr;}
.about-inner{grid-template-columns:1fr;gap:3rem;}
.about-img-wrap{width:55%;}
.events-inner{padding:0 1.5rem;}
.event-card{grid-template-columns:1fr 40px 1fr;padding:2rem 0;}
.event-card.left .ev-left,.event-card.right .ev-right{padding-right:1.5rem;padding-left:0;}
.event-card.left .ev-right,.event-card.right .ev-left{padding-left:1.5rem;padding-right:0;}
.ev-title{font-size:1.3rem;}
.mix-grid{grid-template-columns:1fr;gap:3rem;}
.contact-boxes{grid-template-columns:1fr;}
footer{flex-direction:column;text-align:center;gap:0.8rem;padding:2rem 1.5rem;}
.year-divider{padding:2rem 1.5rem 1rem;}
}
@media(max-width:600px){
.event-card{grid-template-columns:1fr;}
.ev-center{display:none;}
.event-card.right .ev-right{order:1;padding-right:0;text-align:left;}
.event-card.right .ev-left{order:2;padding-left:0;}
.event-card.right .ev-sound{text-align:left;}
.event-card.right .ev-sensorium{text-align:left;}
}
@media(prefers-reduced-motion:reduce){
*{animation:none!important;transition:none!important;}
.reveal{opacity:1;transform:none;}
}
#sound{padding:7rem 4rem;text-align:center;position:relative;z-index:1;}
#sound::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 50%,rgba(59,191,184,0.05),transparent 65%);pointer-events:none;}
.sound-inner{max-width:720px;margin:0 auto;}
.sound-body{font-size:0.92rem;line-height:2.1;color:rgba(255,252,250,0.78);margin:1.8rem auto 2.8rem;}
.sound-body strong{color:rgba(255,252,250,1.0);font-weight:400;}
.sound-body em{color:rgba(133,221,216,0.7);font-style:italic;}
.btn-sound{display:inline-flex;align-items:center;gap:0.7rem;padding:0.95rem 2.4rem;font-size:0.6rem;letter-spacing:0.24em;text-transform:uppercase;text-decoration:none;font-family:'Nunito','Nunito Fallback',sans-serif;font-weight:400;transition:all 0.35s;background:linear-gradient(135deg,#2dd4bf,#34d399,#3bbfb8);border:none;color:#fff;box-shadow:0 4px 28px rgba(45,212,191,0.3);}
.btn-sound:hover{background:linear-gradient(135deg,#3ee8d2,#4aeaaa,#4dd6ce);box-shadow:0 6px 38px rgba(45,212,191,0.5);transform:translateY(-2px);}
.sound-glyph{font-size:0.85rem;opacity:0.7;}
html{color-scheme:dark;-webkit-text-size-adjust:100%;scroll-padding-top:5rem;}
img{max-width:100%;}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;}
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:200;padding:0.8rem 1.4rem;background:var(--void2);border:1px solid var(--lav);color:var(--cream);font-size:0.7rem;letter-spacing:0.2em;text-transform:uppercase;text-decoration:none;transition:top 0.2s;}
.skip-link:focus{top:1rem;}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--lav);outline-offset:3px;}
main{display:block;position:relative;z-index:1;}
#moons{position:relative;z-index:1;}
.nav-links a[aria-current="page"]{color:var(--rose-soft);}
.about-links{gap:0;}
.about-link{padding:0.42rem 0;}
.nav-toggle{min-width:44px;min-height:44px;align-items:center;justify-content:center;}
.reveal{opacity:1;transform:none;}
html.js .reveal{opacity:0;transform:translateY(22px);}
html.js .reveal.on{opacity:1;transform:none;}
html.motion-off .iri,html.motion-off .ring,html.motion-off .scroll-line{animation-play-state:paused!important;}
html.motion-off{scroll-behavior:auto;}
html.motion-off .reveal,html.motion-off.js .reveal{opacity:1;transform:none;transition:none;}
@media(prefers-reduced-motion:reduce){
html{scroll-behavior:auto;}
html.js .reveal{opacity:1;transform:none;}
}
.year-label::before{content:attr(data-year);}
.scroll-hint span::before{content:'Scroll';}
.page-hero{padding:10.5rem 2rem 4.5rem;text-align:center;position:relative;overflow:hidden;}
.page-hero::before{content:'';position:absolute;width:900px;height:620px;top:15rem;left:50%;transform:translate(-50%,-50%);background:radial-gradient(ellipse,rgba(200,144,240,0.11) 0%,rgba(59,191,184,0.05) 38%,transparent 70%);border-radius:50%;pointer-events:none;}
.page-hero>*{position:relative;}
.crumbs{list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:0.4rem 0.9rem;margin-bottom:2.4rem;font-size:0.54rem;letter-spacing:0.3em;text-transform:uppercase;color:rgba(255,252,250,0.6);}
.crumbs a{color:rgba(255,252,250,0.6);text-decoration:none;transition:color 0.3s;}
.crumbs a:hover{color:var(--rose-soft);}
.crumbs li+li::before{content:'/';margin-right:0.9rem;color:rgba(200,144,240,0.5);}
.page-title{font-family:'Cormorant','Cormorant Fallback',serif;font-size:clamp(2.5rem,6.4vw,4.8rem);font-weight:600;line-height:1.05;color:var(--cream);max-width:980px;margin:0 auto;}
.page-title em{font-style:italic;color:var(--lav);}
.page-lede{font-size:0.95rem;line-height:2;color:rgba(255,252,250,0.8);max-width:700px;margin:1.8rem auto 0;}
.page-lede strong{color:rgba(255,252,250,1);font-weight:400;}
.page-stats{display:block;margin-top:1.6rem;font-size:0.58rem;letter-spacing:0.42em;line-height:2.1;text-transform:uppercase;color:rgba(200,144,240,0.8);}
.page-hero .hero-cta{margin:2.6rem 0 0;}
.page-note{font-family:'Cormorant','Cormorant Fallback',serif;font-style:italic;font-size:1rem;line-height:1.7;color:rgba(255,252,250,0.72);max-width:640px;margin:1.6rem auto 0;}
.page-note a{color:rgba(247,168,188,0.9);}
.band{padding:5rem 4rem;position:relative;}
.band-inner{max-width:1000px;margin:0 auto;}
.band-narrow{max-width:760px;margin:0 auto;}
.band-head{text-align:center;margin-bottom:3rem;}
.band .s-title{font-size:clamp(1.8rem,4vw,2.9rem);}
.glance-wrap{margin-top:1rem;}
.glance{width:100%;border-collapse:collapse;text-align:left;}
.glance caption{caption-side:top;text-align:left;padding-bottom:1.2rem;font-size:0.56rem;letter-spacing:0.5em;text-transform:uppercase;color:rgba(200,144,240,0.8);}
.glance th{font-size:0.52rem;letter-spacing:0.36em;text-transform:uppercase;font-weight:400;color:rgba(229,102,131,0.95);padding:0 1rem 0.9rem 0;border-bottom:1px solid rgba(200,144,240,0.22);white-space:nowrap;}
.glance td{padding:0.95rem 1rem 0.95rem 0;border-bottom:1px solid rgba(200,144,240,0.1);font-size:0.76rem;line-height:1.6;color:rgba(255,252,250,0.8);vertical-align:baseline;}
.glance tbody th{font-family:'Cormorant','Cormorant Fallback',serif;font-size:1.12rem;letter-spacing:0;text-transform:none;font-weight:600;color:var(--cream);padding:0.8rem 1rem 0.8rem 0;border-bottom:1px solid rgba(200,144,240,0.1);white-space:normal;line-height:1.25;}
.glance tbody th a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(200,144,240,0.35);transition:color 0.3s,border-color 0.3s;}
.glance tbody th a:hover{color:var(--lav-soft);border-color:var(--lav);}
.glance .g-sub{display:block;margin-top:0.2rem;font-family:'Nunito','Nunito Fallback',sans-serif;font-size:0.6rem;font-weight:300;letter-spacing:0.14em;text-transform:uppercase;color:rgba(200,144,240,0.84);}
.glance .g-date{white-space:nowrap;letter-spacing:0.06em;color:rgba(255,252,250,0.9);}
.glance .g-dow{display:block;font-size:0.56rem;letter-spacing:0.26em;text-transform:uppercase;color:rgba(255,252,250,0.62);}
.glance .g-time{white-space:nowrap;}
.glance .ev-tag{margin:0;white-space:nowrap;}
.glance tr.is-next td,.glance tr.is-next th{background:rgba(200,144,240,0.05);}
.next-flag{display:inline-block;margin-left:0.6rem;padding:0.12rem 0.5rem;font-family:'Nunito','Nunito Fallback',sans-serif;font-size:0.5rem;font-weight:400;letter-spacing:0.22em;text-transform:uppercase;vertical-align:middle;border:1px solid rgba(240,192,96,0.5);color:rgba(240,192,96,0.95);}
.ev-session .next-flag{margin-left:0.8rem;letter-spacing:0.22em;}
.glance-foot{margin-top:1.4rem;font-size:0.7rem;line-height:1.9;color:rgba(255,252,250,0.66);max-width:760px;}
.ev-exact{font-size:0.52rem;letter-spacing:0.22em;text-transform:uppercase;color:rgba(133,221,216,0.85);margin-top:0.15rem;display:block;}
.event-card{scroll-margin-top:5rem;}
.event-card:target .ev-dot{border-color:var(--lav);box-shadow:0 0 12px rgba(200,144,240,0.5);}
.event-card:target .ev-dot-inner{opacity:1;}
.jump{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));border-top:1px solid rgba(200,144,240,0.12);border-left:1px solid rgba(200,144,240,0.12);}
.jump li{border-right:1px solid rgba(200,144,240,0.12);border-bottom:1px solid rgba(200,144,240,0.12);}
.jump a{display:block;height:100%;padding:1rem 1.2rem;background:rgba(8,6,20,0.96);text-decoration:none;transition:background 0.3s;}
.jump a:hover{background:rgba(200,144,240,0.07);}
.jump-date{display:block;font-size:0.54rem;letter-spacing:0.3em;text-transform:uppercase;color:rgba(200,144,240,0.84);margin-bottom:0.25rem;}
.jump-name{display:block;font-family:'Cormorant','Cormorant Fallback',serif;font-size:1.08rem;font-weight:600;color:var(--cream);line-height:1.2;}
.jump-sub{display:block;font-size:0.62rem;color:rgba(255,252,250,0.66);margin-top:0.2rem;letter-spacing:0.04em;}
.more-wrap{text-align:center;margin-top:3.2rem;}
.more-link{display:inline-block;font-size:0.6rem;letter-spacing:0.3em;text-transform:uppercase;text-decoration:none;color:rgba(255,252,250,0.74);padding:0.6rem 0.2rem;border-bottom:1px solid rgba(200,144,240,0.4);transition:color 0.3s,border-color 0.3s;}
.more-link:hover{color:var(--rose-soft);border-color:var(--rose-soft);}
.more-link span{margin-left:0.6rem;}
.steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(200,144,240,0.08);counter-reset:step;}
.steps li{padding:2.2rem 1.6rem;background:rgba(8,6,20,0.95);counter-increment:step;}
.steps li::before{content:counter(step,upper-roman);display:block;font-family:'Cormorant','Cormorant Fallback',serif;font-style:italic;font-size:1.5rem;color:rgba(240,192,96,0.75);margin-bottom:0.9rem;}
.step-title{font-family:'Cormorant','Cormorant Fallback',serif;font-size:1.2rem;font-weight:600;color:var(--cream);margin-bottom:0.5rem;line-height:1.2;}
.step-body{font-size:0.74rem;line-height:1.85;color:rgba(255,252,250,0.74);}
.step-body a{color:rgba(247,168,188,0.92);}
.step-body strong{color:var(--cream);font-weight:400;}
.faq{border-top:1px solid rgba(200,144,240,0.12);}
.faq-item{padding:1.5rem 0;border-bottom:1px solid rgba(200,144,240,0.12);}
.faq-q{font-family:'Cormorant','Cormorant Fallback',serif;font-size:1.3rem;font-weight:600;color:var(--cream);line-height:1.25;margin-bottom:0.5rem;}
.faq-a{font-size:0.82rem;line-height:1.95;color:rgba(255,252,250,0.78);}
.faq-a a{color:rgba(247,168,188,0.92);}
.prose{max-width:720px;margin:0 auto;}
.prose h2{font-family:'Cormorant','Cormorant Fallback',serif;font-size:1.6rem;font-weight:600;color:var(--cream);margin:2.6rem 0 0.7rem;line-height:1.2;}
.prose p,.prose li{font-size:0.86rem;line-height:1.95;color:rgba(255,252,250,0.8);}
.prose p{margin-bottom:0.9rem;}
.prose ul{margin:0 0 0.9rem 1.2rem;}
.prose a{color:rgba(247,168,188,0.92);}
.prose strong{color:var(--cream);font-weight:400;}
.sub #mix{padding-top:3rem;}
.sub #about{padding-top:2rem;}
.sub #events,.sub #moons{padding-top:0;}
.sub .events-header{padding:2rem 0 1rem;}
.sub #contact{padding-top:4rem;}
.contact-solo{padding:0 2rem 5rem;text-align:center;position:relative;}
h2.year-divider,h2.year-divider .year-sub{font-weight:300;}
h2.year-divider{font-size:inherit;line-height:inherit;}
.about-name.as-h1{margin-top:0;}
.mix-theme{scroll-margin-top:6rem;}
footer{flex-wrap:wrap;gap:1.4rem 2rem;}
.footer-nav{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:0.7rem 1.8rem;flex:1 1 auto;}
.footer-nav a,.motion-toggle{font-family:'Nunito','Nunito Fallback',sans-serif;font-size:0.52rem;font-weight:300;letter-spacing:0.26em;text-transform:uppercase;color:rgba(255,252,250,0.62);text-decoration:none;background:none;border:none;cursor:pointer;padding:0.5rem 0;transition:color 0.3s;}
.footer-nav a:hover,.motion-toggle:hover{color:var(--rose-soft);}
.motion-toggle[hidden]{display:none;}
.lost{min-height:78vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:9rem 2rem 4rem;position:relative;}
@media(max-width:900px){
#mix,#about,#sound{padding:5rem 1.5rem;}
.band{padding:4rem 1.5rem;}
.page-hero{padding:8.5rem 1.5rem 3.5rem;}
.steps{grid-template-columns:1fr 1fr;}
.nav-links.open a{display:block;padding:0.35rem 0;font-size:0.68rem;}
}
@media(max-width:760px){
.glance thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}
.glance,.glance tbody,.glance tr,.glance td,.glance tbody th{display:block;width:100%;}
.glance tr{padding:1.1rem 0;border-bottom:1px solid rgba(200,144,240,0.14);}
.glance td,.glance tbody th{border:none;padding:0.15rem 0;}
.glance td[data-l]::before{content:attr(data-l);display:inline-block;min-width:6.2rem;font-size:0.5rem;letter-spacing:0.3em;text-transform:uppercase;color:rgba(229,102,131,0.95);}
.glance .g-dow{display:inline;margin-right:0.5rem;}
.glance td:empty{display:none;}
.glance caption{display:block;width:100%;}
.glance .g-date,.glance .g-time{white-space:normal;}
}
@media(max-width:600px){
.mix-card{padding:2.2rem 1.5rem;}
.mix-info-box{padding:1.2rem 1.1rem;}
.steps{grid-template-columns:1fr;}
footer{padding-bottom:2.6rem;}
}
.crumb-bar{padding:10.5rem 2rem 0;position:relative;}
@media(max-width:900px){.crumb-bar{padding-top:8.5rem;}}
.sm-br{display:none;}
@media(max-width:520px){.sm-br{display:inline;}}
