@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--ink:#10100e;--cream:#f1f0e8;--lime:#dcfa48;--muted:#aeaead;--line:rgba(255,255,255,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--cream);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}.skip{position:absolute;left:-9999px;top:10px;padding:10px;background:var(--lime);color:var(--ink);z-index:10}.skip:focus{left:10px}.site-header{height:86px;padding:0 clamp(22px,5vw,84px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:5;background:var(--ink)}.brand{display:inline-flex;align-items:center;gap:12px;font-family:'Space Grotesk',Arial,sans-serif;font-weight:700;font-size:18px;letter-spacing:.08em;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:33px;height:33px;background:var(--lime);color:var(--ink);border-radius:50%;font-size:21px;line-height:1;transform:rotate(-12deg)}.site-nav{display:flex;align-items:center;gap:35px;font-size:13px;font-weight:600}.site-nav a:hover,.text-link:hover,.site-footer a:hover{color:var(--lime)}.site-nav .nav-book{border:1px solid #64645d;border-radius:999px;padding:13px 18px}.nav-book span{margin-left:18px}.menu-button{display:none}.hero{overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.hero-copy{padding:clamp(70px,9vw,125px) 35px 28px clamp(22px,7vw,115px);position:relative;z-index:1}.eyebrow{font-family:'Space Grotesk',Arial,sans-serif;font-size:11px;letter-spacing:.19em;font-weight:700;text-transform:uppercase;margin:0 0 27px}.eyebrow-line{display:inline-block;width:24px;height:1px;background:var(--lime);vertical-align:middle;margin-right:10px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Space Grotesk',Arial,sans-serif;font-weight:600;letter-spacing:-.065em;line-height:.99}h1{font-size:clamp(70px,7.9vw,126px);margin:0 0 27px;white-space:nowrap}h1 em,h2 em{font-style:normal;color:var(--lime)}.hero-lead{font-size:clamp(16px,1.5vw,20px);line-height:1.55;max-width:470px;color:#c4c4bd}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:40px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:26px;min-height:56px;padding:0 22px;font-size:13px;font-weight:700;border-radius:2px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button-primary{background:var(--lime);color:var(--ink)}.button-primary:hover{background:#edff88}.text-link{font-size:13px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:6px;white-space:nowrap}.text-link span{margin-left:12px}.hero-meta{display:flex;gap:25px;margin-top:95px;color:#888984;font-family:'Space Grotesk',Arial,sans-serif;font-size:10px;letter-spacing:.12em}.hero-art{position:relative;overflow:hidden;background:radial-gradient(circle at 50% 48%,#353a2c 0,#22261f 37%,#141714 73%);display:grid;place-items:center;min-height:620px}.hero-art:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 42px,rgba(255,255,255,.028) 43px 44px),repeating-linear-gradient(90deg,transparent 0 42px,rgba(255,255,255,.028) 43px 44px)}.orbit{position:absolute;border:1px solid rgba(220,250,72,.18);border-radius:50%;aspect-ratio:1}.orbit-one{width:82%}.orbit-two{width:112%}.record{width:min(68%,440px);aspect-ratio:1;border-radius:50%;position:relative;display:grid;place-items:center;transform:rotate(-14deg);box-shadow:0 28px 65px #0009,0 0 0 1px #2c2c2a;background:repeating-radial-gradient(circle at center,#20211e 0 2px,#111210 3px 5px,#292a26 6px 7px);animation:spin 24s linear infinite}.record:after{content:"";position:absolute;width:6px;height:6px;background:#111;border-radius:50%;top:calc(50% - 3px);left:calc(50% - 3px)}.record-label{width:38%;aspect-ratio:1;background:var(--lime);color:var(--ink);border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;font-family:'Space Grotesk',Arial,sans-serif}.record-label span{font-size:13px;letter-spacing:.14em}.record-label strong{font-size:clamp(28px,3.2vw,48px);line-height:1}.record-label small{font-size:6px;letter-spacing:.12em;margin-top:9px}.art-corner{position:absolute;font-family:'Space Grotesk',Arial,sans-serif;font-size:10px;letter-spacing:.14em;color:#dadbd0}.art-corner-top{right:38px;top:40px;text-align:right}.art-corner-bottom{left:38px;bottom:38px}.ticker{background:var(--lime);color:var(--ink);overflow:hidden;white-space:nowrap;font-family:'Space Grotesk',Arial,sans-serif;font-size:13px;font-weight:700;letter-spacing:.14em;padding:15px 0}.ticker div{width:max-content;animation:marquee 30s linear infinite}.ticker b{margin:0 35px}@keyframes spin{to{transform:rotate(346deg)}}@keyframes marquee{to{transform:translateX(-25%)}}.section{padding:120px clamp(22px,7vw,115px)}.section-heading{display:flex;justify-content:space-between}.section h2,.booking-section h2{font-size:clamp(54px,6vw,94px);margin:0}.sound-section{background:#1a1c18}.sound-layout{display:grid;grid-template-columns:1fr 1fr;gap:11%;margin:55px 0 45px}.large-copy{font-size:clamp(22px,2.5vw,36px);line-height:1.3;letter-spacing:-.04em;max-width:560px}.genre-list{display:flex;flex-wrap:wrap;gap:10px;align-content:start}.genre-list span{border:1px solid #555a4c;border-radius:999px;padding:12px 17px;color:#d6d9cf;font-size:12px}.button-outline{border:1px solid #7a8270}.wedding-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;background:#252723}.wedding-copy>p:not(.eyebrow){color:#c5c8bc;line-height:1.65;max-width:440px;margin:35px 0 30px;font-size:17px}.moment-cards{border-top:1px solid #5e6456}.moment-cards article{padding:30px 0;border-bottom:1px solid #5e6456;display:grid;grid-template-columns:46px 1fr;column-gap:22px}.moment-cards article span{color:var(--lime);font-size:13px}.moment-cards h3{font-family:'Space Grotesk',Arial,sans-serif;font-size:28px;font-weight:500;margin:0 0 8px;letter-spacing:-.04em}.moment-cards p{grid-column:2;color:#aeb4a6;font-size:13px;margin:0}.about-section{background:var(--cream);color:var(--ink)}.about-section h2 em{color:#758800}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%}.about-grid>div{padding-top:9px;max-width:550px}.about-grid p{font-size:20px;line-height:1.55;letter-spacing:-.025em}.about-grid p+p{color:#62655a;font-size:17px;margin-bottom:35px}.booking-section{background:var(--lime);color:var(--ink);padding:115px 22px;text-align:center}.booking-inner{max-width:780px;margin:auto}.booking-section h2 em{color:#5b6900}.booking-section p:not(.eyebrow){font-size:18px;line-height:1.55;max-width:520px;margin:30px auto}.button-dark{background:var(--ink);color:var(--cream);margin:10px auto 18px}.button-dark:hover{background:#313327}.booking-section small{display:block;color:#454c25;font-size:11px}.site-footer{padding:40px clamp(22px,7vw,115px);display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:12px;color:#a1a29a}.site-footer .brand{color:var(--cream)}.site-footer p{margin:0}@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-copy{padding:80px 6vw 45px}.hero-art{min-height:450px}.hero-meta{margin-top:65px}.wedding-section{grid-template-columns:1fr}.moment-cards{margin-top:45px}.section{padding:85px 6vw}}@media(max-width:650px){.site-header{height:68px}.menu-button{display:flex;border:0;background:none;padding:10px;flex-direction:column;gap:5px}.menu-button span{width:23px;height:2px;background:var(--cream)}.site-nav{display:none;position:absolute;top:68px;left:0;right:0;background:#1b1d19;flex-direction:column;align-items:stretch;gap:0;padding:12px 23px 25px;border-bottom:1px solid var(--line)}.site-nav.is-open{display:flex}.site-nav a{padding:15px 0}.site-nav .nav-book{border:0;border-radius:0;padding:15px 0}.hero-copy{padding:66px 23px 35px}h1{font-size:clamp(55px,14vw,80px)}.hero-actions{align-items:flex-start;flex-direction:column;gap:25px}.hero-meta{margin-top:55px;font-size:9px;flex-wrap:wrap}.hero-art{min-height:360px}.record{width:65%}.art-corner{font-size:8px}.art-corner-top{right:20px;top:25px}.art-corner-bottom{left:20px;bottom:20px}.section{padding:75px 23px}.section h2,.booking-section h2{font-size:clamp(47px,12vw,70px)}.sound-layout,.about-grid{grid-template-columns:1fr;gap:25px}.sound-layout{margin:40px 0}.large-copy{font-size:23px}.about-grid p{font-size:18px}.booking-section{padding:85px 23px}.site-footer{flex-direction:column;align-items:flex-start;padding:40px 23px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.music-links{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.instagram-section{background:#121512;overflow:hidden}.instagram-heading{display:flex;align-items:end;justify-content:space-between;gap:30px}.instagram-intro{font-size:17px;line-height:1.6;color:#b9bdb2;max-width:590px;margin:32px 0 38px}.gallery-shell{display:flex;align-items:center;gap:13px}.instagram-gallery{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#6d775d transparent;padding:0 0 20px;flex:1}.instagram-card{flex:0 0 min(32%,390px);min-width:275px;scroll-snap-align:start;background:#20241e;border:1px solid #3b4435;transition:transform .7s ease}.instagram-card:hover{transform:translateY(-6px)}.embed-frame{height:470px;background:linear-gradient(145deg,#222920,#313b2c);position:relative}.embed-frame iframe{border:0;width:100%;height:100%;background:#fff}.card-caption{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px;font-family:'Space Grotesk',Arial,sans-serif;font-size:10px;letter-spacing:.08em}.card-caption span{color:#b2bca5}.card-caption a{color:var(--lime);white-space:nowrap}.gallery-arrow{border:1px solid #66705d;border-radius:50%;background:transparent;color:var(--cream);width:42px;height:42px;flex:0 0 42px;cursor:pointer;font-size:19px}.gallery-arrow:hover{background:var(--lime);color:var(--ink)}.gallery-bottom{display:flex;gap:35px;margin-top:26px}@media(max-width:900px){.instagram-card{flex-basis:46%}}@media(max-width:650px){.instagram-heading{align-items:start;flex-direction:column}.instagram-card{flex-basis:85%;min-width:250px}.embed-frame{height:420px}.gallery-shell{gap:4px}.gallery-arrow{width:28px;height:28px;flex-basis:28px;font-size:14px}.gallery-bottom{gap:25px;flex-wrap:wrap}}
.booking-actions{display:flex;align-items:center;justify-content:center;gap:28px;flex-wrap:wrap;margin:10px auto 18px}.booking-actions .button-dark{margin:0}.booking-instagram{color:var(--ink)}.booking-instagram:hover{color:#596800}
/* Scroll-driven hero */
html,body{overflow-x:hidden;overflow-x:clip}.site-header{z-index:20}.scroll-hero{height:320vh;position:relative;overflow:visible;background:#0b0e0b}.hero-stage{height:100vh;min-height:600px;position:sticky;top:0;overflow:hidden;background:radial-gradient(ellipse at 70% 50%,#26351e 0,#0f1510 35%,#080b09 73%)}.hero-stage:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(3,6,4,.86),rgba(3,6,4,.18) 66%,transparent);z-index:2}.stage-grid{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 54px,rgba(223,255,157,.035) 55px 56px),repeating-linear-gradient(90deg,transparent 0 54px,rgba(223,255,157,.035) 55px 56px);transform:perspective(700px) rotateX(47deg) scale(1.6);transform-origin:50% 80%;opacity:.65}.stage-halo{position:absolute;width:70vw;height:70vw;max-width:850px;max-height:850px;border-radius:50%;right:-7vw;top:-10vw;background:radial-gradient(circle,rgba(182,236,64,.22),rgba(182,236,64,.055) 35%,transparent 65%);filter:blur(15px)}.hero-stage .hero-beat{position:absolute;z-index:3;left:clamp(24px,7vw,115px);top:50%;transform:translateY(-50%) translateY(18px);width:min(48vw,650px);opacity:0;pointer-events:none;will-change:opacity,transform}.hero-stage .hero-beat-one{opacity:1;pointer-events:auto}.hero-stage .hero-copy{padding:0}.hero-stage h1{font-size:clamp(70px,8vw,138px);margin:0 0 25px}.hero-stage h2{font-size:clamp(58px,6vw,102px);margin:0 0 28px}.hero-stage .hero-lead{font-size:19px;max-width:390px}.hero-stage .button{margin-top:14px}.hero-stage .eyebrow{color:#e3f0cd}.scroll-guide{position:absolute;z-index:3;bottom:38px;left:clamp(24px,7vw,115px);display:flex;align-items:center;gap:17px;font-family:'Space Grotesk',Arial,sans-serif;font-size:10px;letter-spacing:.2em;color:#c3d0b7}.scroll-line{display:block;width:70px;height:1px;background:var(--lime)}.hero-count{position:absolute;z-index:3;bottom:32px;right:clamp(24px,6vw,85px);font-family:'Space Grotesk',Arial,sans-serif;font-size:21px;color:var(--lime)}.hero-count span{color:#7f8b75;margin:0 6px}.scroll-hero .ticker{position:absolute;left:0;right:0;bottom:0;z-index:4}@media(max-width:800px){.scroll-hero{height:255vh}.hero-stage{min-height:0}.hero-stage:after{background:linear-gradient(0deg,rgba(3,6,4,.9),rgba(3,6,4,.23) 70%,transparent)}.hero-stage .hero-beat{left:23px;right:23px;top:auto;bottom:10vh;width:auto;transform:translateY(18px)}.hero-stage h1{font-size:clamp(62px,15vw,95px)}.hero-stage h2{font-size:clamp(48px,11vw,77px)}.hero-stage .hero-lead{font-size:16px}.scroll-guide{bottom:25px;left:23px}.hero-count{bottom:20px;right:23px;font-size:16px}}@media(prefers-reduced-motion:reduce){.scroll-hero{height:auto;min-height:100vh}.hero-stage{height:100vh;position:relative}.hero-stage .hero-beat-one{opacity:1!important;transform:translateY(-50%)!important}.hero-stage .hero-beat-two,.hero-stage .hero-beat-three{display:none!important}.scroll-hero .ticker{position:relative}}.booking-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;text-align:left;margin:45px auto 25px;max-width:680px}.booking-form label{font-size:12px;font-weight:700;display:flex;flex-direction:column;gap:9px}.booking-form input,.booking-form select,.booking-form textarea{width:100%;border:1px solid #788d21;border-radius:2px;background:#f5ffc6;color:var(--ink);font:inherit;font-size:15px;padding:14px 16px;outline-offset:3px}.booking-form input::placeholder,.booking-form textarea::placeholder{color:#747c4c}.booking-form .form-wide{grid-column:1/-1}.form-submit{grid-column:1/-1;border:0;cursor:pointer;width:100%;margin:3px 0 0}.booking-section .booking-actions{margin-top:23px}@media(max-width:650px){.booking-form{grid-template-columns:1fr}.booking-form .form-wide,.form-submit{grid-column:auto}}
@media(max-width:800px) and (prefers-reduced-motion:reduce){.hero-stage .hero-beat-one{transform:none!important}}
