@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght,SOFT,WONK@9..144,700,70,1&display=swap');
:root{--green:#214d48;--cream:#f4e9d3;--orange:#e7834a;--yellow:#e7bb5b;--ink:#243d36;--display:'Fraunces',Georgia,serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:7px}button{color:inherit}h1,h2,p{margin-top:0}h1,h2{font-family:var(--display);font-weight:700;line-height:1.02;letter-spacing:-.055em}h2{font-size:clamp(44px,5.1vw,76px);margin-bottom:28px}h2 em{font-style:normal;color:#a24b31}header{height:100px;position:absolute;top:0;left:0;right:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;color:var(--cream)}.brand{font-size:14px;font-weight:700;letter-spacing:.08em;position:relative;display:flex;align-items:center;gap:12px;line-height:1.1}.brand-symbol{font-size:38px;color:var(--orange);line-height:1}.brand-sub{position:absolute;left:50px;top:28px;font-size:8px;letter-spacing:.21em;opacity:.7}nav{display:flex;align-items:center;gap:32px;font-size:12px;font-weight:500}nav a{transition:color .2s}nav a:hover{color:var(--yellow)}.nav-contact{border:1px solid #f4e9d366;border-radius:40px;padding:10px 21px}.nav-contact span{margin-left:16px}.menu-toggle{display:none}.hero{min-height:830px;background:var(--green);color:var(--cream);position:relative;overflow:hidden;padding-top:145px}.hero:before{content:'';position:absolute;inset:0;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 150 150' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.4' filter='url(%23n)'/%3E%3C/svg%3E");pointer-events:none}.hero-inner{width:89%;max-width:1420px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:20px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.18em;display:flex;align-items:center;gap:12px;line-height:1.6;margin-bottom:24px}.mini-sun{color:var(--yellow);font-size:24px}.hero h1{font-size:clamp(80px,8.8vw,143px);line-height:.99;margin:24px 0 32px;position:relative;z-index:1}.hero h1 span{color:var(--orange);font-style:italic}.hero-intro{font-size:17px;line-height:1.75;opacity:.88}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:34px}.pill{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;border:0;border-radius:60px;padding:16px 25px;font-size:12px;font-weight:700;transition:transform .25s,box-shadow .25s}.pill:hover{transform:translateY(-3px);box-shadow:0 8px 0 #00000014}.pill span{font-size:20px;line-height:1}.orange{background:var(--orange);color:#233c35}.dark{background:var(--green);color:var(--cream)}.text-link{font-size:12px;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:4px}.text-link span{margin-left:12px}.concept-note{font-size:8px;letter-spacing:.16em;opacity:.55;margin-top:42px}.hero-art{position:relative;width:100%;max-width:610px;aspect-ratio:1;margin-left:auto;will-change:transform}.art-halo{position:absolute;inset:5%;border-radius:50%;background:var(--orange);box-shadow:0 0 0 17px var(--green),0 0 0 18px #f4e9d348;transform:rotate(-12deg)}.art-halo:before,.art-halo:after{content:'';position:absolute;inset:22px;border:1px solid #7c412433;border-radius:50%}.art-halo:after{inset:32px}.orbit{position:absolute;width:112%;height:58%;border:1px solid #e7bb5b66;border-radius:50%;top:20%;left:-6%;transform:rotate(-35deg)}.orbit-two{transform:rotate(35deg);height:68%;top:15%;width:106%;left:-3%}.art-star{position:absolute;color:var(--yellow);z-index:2}.star-one{font-size:60px;left:3%;top:12%;transform:rotate(10deg)}.star-two{right:0;bottom:15%;font-size:70px;animation:spin 35s linear infinite}.round-stamp{position:absolute;right:0;top:3%;z-index:2;background:var(--yellow);border-radius:50%;width:104px;height:104px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:9px;font-weight:bold;letter-spacing:.09em;line-height:.8;transform:rotate(15deg);border:1px solid var(--green);outline:5px solid var(--yellow)}.round-stamp span{font-size:26px;line-height:.6}.art-caption{position:absolute;bottom:0;left:0;right:0;text-align:center;font-size:8px;letter-spacing:.2em;opacity:.65}.scroll-cue{display:flex;gap:28px;align-items:center;font-size:8px;letter-spacing:.18em;width:max-content;margin:26px auto 110px}.scroll-cue>span:last-child{font-size:25px}.wave{position:absolute;bottom:-1px;left:0;width:100%;height:100px;display:block;pointer-events:none}.section{padding:94px 7% 100px}.section-top{display:flex;justify-content:space-between;align-items:center}.little-label{font-size:8px;letter-spacing:.15em;opacity:.7}.split-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin:15px 0 40px}.split-heading h2{margin:0}.split-heading>p{font-size:13px;line-height:1.85;max-width:350px;margin-bottom:8px}.video-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:28px}.video-card{border:0;background:transparent;text-align:left;padding:0;min-width:0}.video-art{height:330px;display:block;position:relative;overflow:hidden;border-radius:170px 170px 5px 5px}.live-art{background:#a84a32;color:var(--cream)}.studio-art{background:var(--yellow);color:var(--green);border-radius:5px 120px 5px 5px}.art-label{position:absolute;top:25px;left:0;right:0;text-align:center;font-size:9px;letter-spacing:.18em;z-index:1}.sound-bars{position:absolute;inset:90px 9% 70px;display:flex;align-items:center;justify-content:center;gap:8px;transform:rotate(-7deg)}.sound-bars i{width:13px;flex:1;max-width:22px;height:30%;border-radius:30px;background:var(--orange);transform:scaleY(.8);transition:transform .5s}.sound-bars i:nth-child(3n){height:90%}.sound-bars i:nth-child(4n){height:65%;background:var(--yellow)}.sound-bars i:nth-child(5n){height:45%}.sound-bars i:nth-child(7n){height:100%}.video-card:hover .sound-bars i{transform:scaleY(1)}.play{position:absolute;bottom:22px;right:22px;border-radius:50%;width:47px;height:47px;background:var(--cream);color:var(--green);display:grid;place-items:center;font-size:24px;transition:transform .2s}.video-card:hover .play{transform:rotate(45deg)}.sample-tag{position:absolute;bottom:27px;left:25px;font-size:8px;letter-spacing:.13em;opacity:.8}.vinyl{position:absolute;width:260px;height:260px;border-radius:50%;background:repeating-radial-gradient(circle,#214d48 0px,#214d48 2px,#38635b 3px,#214d48 4px);right:15%;top:55px;display:grid;place-items:center;transform:rotate(-15deg);transition:transform 1.2s}.vinyl:after{content:'';width:12px;height:12px;border-radius:50%;background:var(--yellow);position:absolute}.vinyl span{width:100px;height:100px;border-radius:50%;background:var(--orange);display:grid;place-items:center;font-size:60px;color:var(--cream)}.video-card:hover .vinyl{transform:rotate(40deg)}.video-details{display:flex;justify-content:space-between;align-items:center;margin-top:17px}.video-details strong{font-family:var(--display);font-size:25px;letter-spacing:-.04em}.video-details small{display:block;font-size:8px;letter-spacing:.16em;margin-top:3px}.video-details>span:last-child{font-size:11px}.media-note{font-size:11px;opacity:.7;margin:26px 0 0}.ribbon{background:var(--orange);padding:17px 0;overflow:hidden;transform:rotate(-2deg);position:relative;z-index:2;width:100%;margin:12px 0}.ribbon-track{display:flex;width:max-content;font-family:var(--display);font-size:29px;line-height:1;white-space:nowrap;animation:ribbon-scroll 24s linear infinite;will-change:transform}.ribbon-group{display:flex;flex:0 0 auto;align-items:center;justify-content:space-around;gap:clamp(48px,6vw,110px);min-width:100vw;padding:0 clamp(24px,3vw,55px)}.ribbon-group span{flex:0 0 auto}.story{background:#e6d8b6;padding-top:100px;padding-bottom:160px;position:relative;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;margin-top:-30px;overflow:hidden}.story-art{position:relative;max-width:430px;margin:0 auto;width:100%}.portrait-arch{aspect-ratio:.9;background:#a74d35;border-radius:50% 50% 10px 10px;overflow:hidden;position:relative}.arch-ring{position:absolute;border:28px solid var(--orange);inset:28px -40px -130px;border-radius:50% 50% 0 0;transform:rotate(-15deg)}.r2{inset:75px -10px -100px;border-color:var(--yellow);border-width:27px}.r3{inset:122px 20px -80px;border-color:var(--green);border-width:27px}.portrait-center{position:absolute;inset:35% 5% 0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:var(--cream);font-family:var(--display);font-size:64px;letter-spacing:-.06em;line-height:1}.portrait-center em{color:var(--yellow)}.portrait-center span{font:8px var(--body);letter-spacing:.2em;margin-top:35px;background:var(--green);padding:8px 12px}.story-art>p{font-size:8px;letter-spacing:.16em;margin-top:16px;text-align:center}.story-flower{position:absolute;bottom:25px;left:-35px;font-size:104px;color:var(--orange);line-height:1;transform:rotate(8deg)}.story-copy .lead{font-size:19px;line-height:1.65}.story-copy>p:not(.lead):not(.eyebrow){font-size:13px;line-height:1.9}.story-copy .placeholder-copy{opacity:.7;font-style:italic}.story-copy .text-link{display:inline-block;margin-top:15px}.story-wave{height:70px}.projects{background:var(--green);color:var(--cream);padding-top:65px;padding-bottom:110px}.projects h2 em{color:var(--orange)}.project-list{margin-top:65px}.project{border-top:1px solid #f4e9d345}.project:last-child{border-bottom:1px solid #f4e9d345}.project summary{padding:25px 0;display:grid;grid-template-columns:55px 1fr 220px 40px;gap:15px;align-items:center;cursor:pointer;list-style:none}.project summary::-webkit-details-marker{display:none}.project-no{font-size:11px;color:var(--orange)}.project-name{font-family:var(--display);font-size:33px;line-height:1.3;letter-spacing:-.04em}.project-name small{display:block;font:8px var(--body);letter-spacing:.16em;margin-top:6px;opacity:.65}.project-type{font-size:11px;opacity:.7}.project-plus{border:1px solid #f4e9d36b;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;font-size:23px;line-height:1;transition:transform .3s}.project[open] .project-plus{transform:rotate(45deg)}.project-content{padding:0 60px 20px 70px;max-width:850px;font-size:14px;opacity:.85}.contact{background:var(--orange);position:relative;padding-top:135px;padding-bottom:85px;overflow:hidden}.contact-wave{top:-1px;bottom:auto;height:85px}.contact-inner{position:relative;text-align:center;max-width:1100px;margin:0 auto}.contact .eyebrow{justify-content:center}.contact h2{font-size:clamp(65px,8vw,114px);margin-bottom:20px}.contact h2 em{color:var(--cream)}.contact-inner>p:not(.eyebrow){font-size:15px}.contact .pill{margin-top:15px}.contact-inner .contact-note{font-size:9px!important;margin-top:25px;opacity:.7}.contact-flower{position:absolute;font-size:140px;right:-20px;top:50px;line-height:1;transform:rotate(20deg);color:#a54d3466;pointer-events:none}footer{padding:30px 5.5%;display:flex;justify-content:space-between;align-items:center;gap:20px}footer>span,footer>a:last-child{font-size:8px;letter-spacing:.1em}.footer-brand{font-size:11px}.footer-brand .brand-symbol{font-size:28px}.progress{position:fixed;top:0;left:0;height:3px;width:100%;transform:scaleX(0);transform-origin:left;background:var(--yellow);z-index:10}.skip{position:fixed;left:10px;top:10px;padding:10px;background:var(--cream);z-index:20;transform:translateY(-200%)}.skip:focus{transform:none}dialog{border:none;border-radius:10px;background:var(--cream);color:var(--green);padding:45px;max-width:580px;width:calc(100% - 32px)}dialog::backdrop{background:#0d2824bb;backdrop-filter:blur(8px)}dialog h2{font-size:45px}dialog p{font-size:14px}.modal-close{position:absolute;top:15px;right:18px;border:0;background:transparent;font-size:30px}.modal-art{height:150px;display:grid;place-items:center;background:var(--green);color:var(--orange);font-size:100px;border-radius:80px 80px 0 0;margin:20px 0}.modal-done{margin-top:15px}.js .reveal{opacity:0;transform:translateY(23px);transition:opacity .8s,transform .8s}.js .reveal.visible{opacity:1;transform:none}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:1550px){.section{padding-left:max(7%,calc((100vw - 1380px)/2));padding-right:max(7%,calc((100vw - 1380px)/2))}}@media(max-width:1050px){.hero{min-height:750px}.hero h1{font-size:clamp(75px,9.4vw,110px)}.hero-actions{gap:18px}.hero-actions .text-link{font-size:10px}.round-stamp{width:85px;height:85px;font-size:8px}.video-art{height:285px}.vinyl{right:8%;width:230px;height:230px;top:45px}.contact-flower{right:0;font-size:100px}.story{gap:7%}.portrait-center{font-size:53px}.project summary{grid-template-columns:40px 1fr 170px 40px}.project-name{font-size:28px}}@media(max-width:760px){html{scroll-padding-top:30px}header{height:85px;padding:0 6%}.brand{font-size:11px;gap:9px}.brand-symbol{font-size:33px}.brand-sub{font-size:6px;left:42px;top:24px}.menu-toggle{display:flex;gap:15px;align-items:center;background:transparent;border:1px solid #f4e9d360;border-radius:30px;padding:8px 15px;color:var(--cream);font-size:11px}.menu-toggle span{font-size:18px}nav{display:none;position:absolute;top:76px;right:6%;left:6%;background:#173e39;padding:22px;border-radius:10px;box-shadow:0 10px 20px #0002;flex-direction:column;gap:18px;align-items:stretch}nav.open{display:flex}.nav-contact{text-align:center}.hero{padding-top:120px;min-height:0}.hero-inner{grid-template-columns:1fr;width:88%;gap:22px}.hero h1{font-size:clamp(67px,14vw,102px);margin:15px 0 24px}.hero-intro{font-size:15px}.eyebrow{font-size:9px;margin-bottom:18px}.hero-actions{margin-top:25px;gap:23px}.pill{padding:14px 22px;font-size:11px;gap:22px}.hero-actions .text-link{font-size:11px}.concept-note{margin-top:28px}.hero-art{max-width:420px;width:92%;margin:0 auto}.art-caption{bottom:-8px}.star-one{font-size:45px}.star-two{font-size:55px}.round-stamp{width:77px;height:77px;font-size:6px}.round-stamp span{font-size:22px}.scroll-cue{margin:32px auto 90px;gap:20px}.hero-wave{height:70px}.section{padding:65px 6%}.little-label{display:none}.split-heading{display:block;margin-top:10px}.split-heading>p{margin-top:25px;font-size:12px}h2{font-size:clamp(43px,9vw,65px)}.video-grid{grid-template-columns:1fr;gap:30px}.video-art{height:290px}.studio-art{border-radius:5px 110px 5px 5px}.vinyl{right:calc(50% - 120px);width:240px;height:240px;top:38px}.video-details strong{font-size:25px}.ribbon{padding:15px 0}.ribbon-track{font-size:23px}.story{display:flex;flex-direction:column;padding-top:70px;padding-bottom:120px;gap:45px}.story-art{max-width:350px;width:85%}.story-flower{font-size:85px;left:-28px}.story-copy .lead{font-size:18px}.portrait-center{font-size:59px}.projects{padding-top:40px;padding-bottom:65px}.project-list{margin-top:40px}.project summary{grid-template-columns:25px 1fr 33px;gap:9px;padding:23px 0}.project-name{font-size:clamp(23px,6vw,30px)}.project-type{display:none}.project-plus{width:29px;height:29px;font-size:20px}.project-content{padding:0 10px 12px 34px;font-size:13px}.contact{padding-top:115px;padding-bottom:60px}.contact h2{font-size:clamp(64px,13vw,90px)}.contact-flower{display:none}.contact-inner>p:not(.eyebrow){font-size:14px}.contact-wave{height:70px}footer{flex-wrap:wrap;gap:22px;padding:25px 6%}footer>span{order:3;width:100%;font-size:7px}footer>a:last-child{margin-left:auto;font-size:8px}dialog{padding:35px 25px}dialog h2{font-size:38px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.hero-art{transform:none!important}}
/* Keep decorative ribbon edges within the viewport. */
body{overflow-x:clip}

/* Original cosmic doodles, inspired by the playful reference artwork. */
:root{--lilac:#bc8de8;--acid:#f5cd4b;--sky:#4a91de}
.hero .art-halo{background:repeating-radial-gradient(ellipse at 50% 55%,#e7834a 0 33px,#ed945c 34px 43px,#e7834a 44px 70px);box-shadow:0 0 0 15px var(--green),0 0 0 17px var(--lilac),0 0 0 25px var(--green),0 0 0 26px #f5cd4b66}
.sticker{position:absolute;z-index:3;pointer-events:none;filter:drop-shadow(3px 5px 0 #102d2a35);animation:doodle-float 7s ease-in-out infinite;transform:rotate(var(--tilt,0deg))}
.hero-flower{width:108px;top:7%;left:-1%;--tilt:-15deg;animation-delay:-2s}
.hero-smiley{width:125px;top:0;right:-3%;--tilt:13deg}
.hero-mushrooms{width:118px;bottom:5%;left:0;--tilt:-11deg;animation-delay:-4s}
.hero-planet{width:105px;bottom:9%;right:-4%;--tilt:15deg;animation-delay:-1s}
.checker-swoop{position:absolute;width:150px;right:-8%;top:47%;transform:rotate(-27deg);opacity:.9;z-index:0}
.orbit-one{border-color:#bc8de87a}.orbit-two{border-color:#f5cd4b66}
.hero h1 span{text-shadow:2px 3px 0 #102d2a}
.ribbon{background:var(--lilac);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.ribbon span{color:var(--green)}
.live-art{background:#a44f77;background-image:radial-gradient(ellipse at 30% 80%,#bc8de844,transparent 60%)}
.eye-sticker{position:absolute;width:225px;left:calc(50% - 112px);top:55px;z-index:1;transform:rotate(-9deg);transition:transform .6s}
.video-card:hover .eye-sticker{transform:rotate(3deg) scale(1.05)}
.sound-bars{opacity:.32;gap:12px;inset:50px 3% 25px;transform:rotate(-15deg)}
.sound-bars i{background:var(--lilac)}.sound-bars i:nth-child(4n){background:var(--orange)}
.vinyl span{background:var(--lilac)}.vinyl span img{width:104px;height:104px;transform:rotate(12deg)}
.story-flower{width:122px;height:122px;left:-42px;bottom:22px;filter:drop-shadow(3px 4px 0 #243d362b);animation:doodle-float 8s ease-in-out infinite;--tilt:-12deg}
.story-mushrooms{position:absolute;width:100px;top:8%;right:-32px;transform:rotate(13deg)}
.portrait-arch{background:#975376}.arch-ring{border-color:var(--orange)}.r2{border-color:var(--lilac)}.r3{border-color:var(--green)}
.project-plus{border-color:var(--lilac);color:var(--lilac)}.project[open] .project-plus{background:var(--lilac);color:var(--green)}
.contact-flower{opacity:1;width:160px;height:175px;right:3%;top:55px;transform:rotate(14deg);animation:doodle-float 8s ease-in-out infinite;--tilt:14deg;filter:drop-shadow(4px 6px 0 #a54d3444)}
.contact-planet{position:absolute;width:165px;left:0;top:140px;transform:rotate(-13deg);animation:doodle-float 9s ease-in-out infinite;--tilt:-13deg}
.modal-art img{width:130px;height:130px}
@keyframes doodle-float{0%,100%{transform:translateY(0) rotate(var(--tilt,0deg))}50%{transform:translateY(-9px) rotate(calc(var(--tilt,0deg) + 4deg))}}
@media(max-width:1050px){.hero-flower{width:90px}.hero-smiley{width:102px}.hero-mushrooms{width:100px}.hero-planet{width:90px}.contact-flower{width:130px;right:0}.contact-planet{width:125px;left:-15px}.story-mushrooms{right:-22px;width:80px}.story-flower{width:100px;height:100px;left:-30px}}
@media(max-width:760px){.hero-flower{width:76px;left:-5%;top:7%}.hero-smiley{width:94px;right:-5%;top:-1%}.hero-mushrooms{width:91px;bottom:3%;left:-5%}.hero-planet{width:82px;right:-6%;bottom:9%}.checker-swoop{width:100px;right:-9%}.eye-sticker{width:210px;left:calc(50% - 105px);top:40px}.story-flower{width:100px;height:100px;left:-29px;bottom:12px}.story-mushrooms{width:80px;right:-23px}.contact-flower{display:block;width:70px;height:82px;right:-3%;top:27px;opacity:.95}.contact-planet{width:80px;left:-4%;top:170px;opacity:.85}.contact h2{position:relative;z-index:1}.contact-inner>.eyebrow{margin-bottom:32px}}
@media(prefers-reduced-motion:reduce){.sticker,.story-flower,.contact-flower,.contact-planet{animation:none!important}}

/* Liquid edges and scroll-driven vinyl rotation. */
.scroll-effects .vinyl,.scroll-effects .video-card:hover .vinyl{transform:rotate(var(--vinyl-angle,-15deg));transition:none;will-change:transform}
.wave .liquid-accent{display:none}
.scroll-effects .wave .liquid-accent{display:block}
.scroll-effects .hero-wave{height:140px}
.scroll-effects .story-wave{height:100px}
.scroll-effects .contact-wave{height:110px}
@media(max-width:760px){.scroll-effects .hero-wave{height:95px}.scroll-effects .story-wave{height:80px}.scroll-effects .contact-wave{height:85px}}
@media(prefers-reduced-motion:reduce){.vinyl,.video-card:hover .vinyl{transform:rotate(-15deg)!important;transition:none!important}.wave .liquid-accent{display:none!important}}

/* G2 identity: a vector monogram, with the original floating artwork retained. */
.g2-art{position:absolute;z-index:1;left:0;top:11%;width:100%;height:78%;object-fit:contain;transform:rotate(-9deg);filter:drop-shadow(0 12px 0 #723d252b)}
.brand-mark{width:66px;height:48px;object-fit:contain;flex-shrink:0}
.brand-name{font-size:9px;line-height:1.45;letter-spacing:.13em;font-weight:700}
header .brand{gap:10px}
footer .brand-mark{width:53px;height:39px}
footer .brand-name{font-size:8px}
.contact h2{letter-spacing:-.045em;word-spacing:.055em}
.contact-wave{top:-1px;bottom:auto;overflow:hidden}
@media(max-width:760px){.brand-mark{width:55px;height:41px}.brand-name{font-size:8px}.g2-art{top:12%;height:76%}.hero-intro{font-size:14px;max-width:360px}}

/* The hero becomes a flowing curtain over the incoming performance section. */
.liquid-pair{position:relative;isolation:isolate}
.scroll-effects .liquid-pair>.hero{position:sticky;top:var(--liquid-stick-top,0px);z-index:2;min-height:100svh;will-change:clip-path}
.scroll-effects .liquid-pair>.sound{position:relative;z-index:1;min-height:100svh;background:var(--cream)}
.scroll-effects .liquid-pair .hero-wave{visibility:hidden}
@media(prefers-reduced-motion:reduce){.liquid-pair>.hero{position:relative;clip-path:none!important}.liquid-pair .hero-wave{visibility:visible}}

/* Drumming cues in the opening section. */
.hero-drumsticks{position:absolute;inset:-3%;width:106%;height:106%;z-index:1;transform:rotate(4deg);filter:drop-shadow(0 7px 0 #102d2a44);pointer-events:none}
.g2-art{z-index:2}
.hero-performance{display:grid;grid-template-columns:180px minmax(0,1fr);align-items:center;gap:19px;margin:29px 0 0;max-width:430px}
.hero-video-frame{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:16/10;overflow:hidden;border:2px solid #f4e9d388;border-radius:48px 12px 12px 12px;background:linear-gradient(135deg,#123c37,#426b59);padding:0;color:var(--cream);box-shadow:5px 5px 0 #102d2a44;transition:transform .25s,border-color .25s}
.hero-video-frame:hover{transform:translateY(-3px);border-color:var(--cream)}
.hero-video-grain{position:absolute;inset:-30%;background:repeating-radial-gradient(ellipse at 65% 70%,transparent 0 20px,#bc8de81f 21px 24px,transparent 25px 40px);transform:rotate(-20deg)}
.hero-video-play{position:relative;width:38px;height:38px;border:1px solid #f4e9d3aa;border-radius:50%;background:#f4e9d31a;margin-bottom:12px}
.hero-video-play:after{content:'';position:absolute;left:15px;top:11px;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:10px solid var(--cream)}
.hero-video-tag{position:absolute;bottom:11px;left:0;right:0;font-size:8px;letter-spacing:.15em;text-align:center}
.hero-performance figcaption strong{display:block;font-family:var(--display);font-size:22px;letter-spacing:-.035em;font-weight:700;line-height:1.2;margin-bottom:8px}
.hero-performance figcaption>span{display:block;font-size:10px;line-height:1.7;opacity:.75;letter-spacing:.025em}
@media(max-width:1050px){.hero-performance{grid-template-columns:150px minmax(0,1fr);gap:15px}.hero-performance figcaption strong{font-size:19px}}
@media(max-width:760px){.hero-performance{grid-template-columns:145px minmax(0,1fr);max-width:360px;margin-top:25px}.hero-video-frame{border-radius:40px 10px 10px 10px}.hero-performance figcaption strong{font-size:19px}.hero-video-tag{font-size:7px;bottom:8px}.hero-video-play{width:34px;height:34px;margin-bottom:10px}.hero-video-play:after{left:13px;top:9px}.hero-drumsticks{inset:-4%;width:108%;height:108%}}

/* Keep the artist caption below the full logo and its orbit graphics. */
.hero-art{margin-bottom:52px}
.art-caption{top:calc(100% + 18px);bottom:auto;margin:0;line-height:1.6;opacity:.75}

/* The featured hero performance opens in a full-size YouTube player. */
.hero-video-thumbnail{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.62)}
.hero-video-play,.hero-video-tag{z-index:1}
.hero-video-frame:hover .hero-video-thumbnail{filter:brightness(.8)}
.hero-video-tag{text-shadow:0 1px 3px #102d2a}
dialog.has-video{width:calc(100% - 32px);max-width:920px;padding:32px}
dialog.has-video h2{font-size:clamp(30px,4vw,46px);margin-bottom:24px;padding-right:20px}
.modal-player{width:100%;aspect-ratio:16/9;min-height:200px;background:#102d2a;border-radius:8px;overflow:hidden;margin:0 0 15px}
.modal-player iframe{width:100%;height:100%;display:block;border:0}
.modal-watch-link{display:inline-block;font-size:12px;border-bottom:1px solid currentColor;margin:0 0 12px}
.modal-art[hidden],.modal-player[hidden],.modal-watch-link[hidden],.hero-video-thumbnail[hidden]{display:none}
@media(max-width:760px){dialog.has-video{padding:24px 16px}dialog.has-video .eyebrow{padding-right:20px}dialog.has-video .modal-close{right:12px;top:10px}}

/* Watch / Listen collection */
.media-toolbar{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:0 0 32px;min-height:82px}
.media-tabs{display:inline-flex;border:1px solid #214d4855;border-radius:999px;padding:5px;gap:4px}
.media-tabs button{border:0;background:transparent;color:var(--green);border-radius:999px;padding:13px 25px;font:inherit;font-weight:600;display:flex;align-items:center;gap:20px;cursor:pointer;transition:background .2s,color .2s}
.media-tabs button span{font-size:10px;opacity:.65}
.media-tabs button[aria-selected="true"]{background:var(--green);color:var(--cream)}
.sound-disc{position:relative;flex:0 0 80px;height:80px;margin-right:8px}
.sound-disc .vinyl{width:80px;height:80px;top:0;right:0;box-shadow:5px 4px 0 var(--lilac)}
.sound-disc .vinyl span{width:34px;height:34px}
.sound-disc .vinyl span img{width:29px;height:29px}
.sound-disc .vinyl:after{width:4px;height:4px}
.media-panel[hidden]{display:none}
.watch-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.watch-shorts-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.watch-card{display:block;min-width:0;border:0;background:transparent;padding:0;text-align:left;font:inherit;color:var(--green);cursor:pointer}
.watch-image{display:block;position:relative;isolation:isolate;aspect-ratio:16/9;overflow:hidden;border-radius:26px 26px 8px 8px;background:var(--green)}
.watch-card:nth-child(even) .watch-image{border-radius:8px 40px 8px 8px;background:var(--lilac)}
.watch-image:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 50%,#102d2770);pointer-events:none}
.watch-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s;display:block}
.watch-image img[hidden]{display:none}
.watch-card:hover .watch-image img{transform:scale(1.035)}
.watch-badge{position:absolute;top:15px;left:15px;z-index:1;border-radius:999px;background:var(--cream);padding:7px 10px;font-size:9px;font-weight:600;letter-spacing:.12em}
.watch-play{position:absolute;z-index:1;bottom:18px;right:18px;width:46px;height:46px;border-radius:50%;background:var(--orange);display:grid;place-items:center;font-size:17px;padding-left:3px;transition:transform .2s}
.watch-card:hover .watch-play{transform:rotate(-8deg) scale(1.08)}
.watch-details{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:14px}
.watch-details strong{display:block;font-family:var(--display);font-size:26px;font-weight:500;letter-spacing:-.04em;line-height:1.2}
.watch-details small{display:block;margin-top:7px;font-size:9px;letter-spacing:.12em}
.watch-details>span:last-child{font-size:24px}
.shorts-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:42px 0 20px}
.shorts-heading h3{font:500 28px/1.2 var(--display);letter-spacing:-.04em;margin:0}
.shorts-heading .eyebrow{margin:0;white-space:nowrap}
.short-card .watch-image{aspect-ratio:9/16;border-radius:45px 45px 8px 8px}
.short-card:nth-child(even) .watch-image{border-radius:8px 8px 45px 8px}
.short-card .watch-details strong{font-size:23px}
.album-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.album-card{min-width:0;padding:20px;border:1px solid #214d4838;border-radius:24px;background:#e9dfc9}
.album-card:nth-child(even){background:#e2d5e2}
.album-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.album-heading .eyebrow{margin:0;font-size:10px}
.album-heading a{font-size:11px;text-underline-offset:4px}
.album-card iframe{border:0;border-radius:12px;display:block;background:var(--green);max-width:100%}
.watch-card:focus-visible,.media-tabs button:focus-visible,.media-panel:focus-visible{outline:3px solid var(--orange);outline-offset:5px}
dialog.has-short{max-width:500px}
dialog.has-short .modal-player{aspect-ratio:9/16;width:min(100%,280px);min-height:0;margin:0 auto 15px}
dialog.has-short h2{font-size:35px}
@media(max-width:760px){.watch-featured-grid{gap:22px}.watch-shorts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}.watch-details strong{font-size:22px}.short-card .watch-details strong{font-size:22px}.album-grid{grid-template-columns:1fr;gap:22px}.album-card{padding:16px}.media-tabs button{padding:12px 22px;gap:15px}.shorts-heading h3{font-size:26px}.sound-disc{margin-right:0}.watch-play{width:40px;height:40px;bottom:12px;right:12px}.watch-badge{top:12px;left:12px}.sound .split-heading{margin-bottom:24px}}
@media(max-width:480px){.watch-featured-grid{grid-template-columns:1fr;gap:28px}.watch-details strong{font-size:25px}.short-card .watch-details strong{font-size:21px}.shorts-heading{align-items:flex-start;flex-direction:column;gap:10px}.media-toolbar{gap:12px}.media-tabs button{padding:12px 18px;gap:12px}.sound-disc{flex-basis:64px;height:64px}.sound-disc .vinyl{width:64px;height:64px}.sound-disc .vinyl span{width:29px;height:29px}.sound-disc .vinyl span img{width:25px;height:25px}}
@media(prefers-reduced-motion:reduce){.watch-image img,.watch-play,.media-tabs button{transition:none}}

/* Original artwork remains visible if a remote thumbnail is unavailable. */
.watch-art{position:absolute;inset:0;display:grid;place-items:center;background:repeating-radial-gradient(ellipse at 50% 120%,transparent 0 24px,#f4e9d30c 25px 28px,transparent 29px 48px)}
.watch-art img{position:absolute;width:48%;height:70%;object-fit:contain;transform:rotate(-9deg);opacity:.8}
.watch-art>span{position:absolute;bottom:22px;left:20px;font-size:8px;letter-spacing:.22em;color:var(--cream)}
.watch-image>.video-thumb{position:absolute;inset:0;z-index:0}
.watch-shorts-grid .watch-card:nth-child(1) .watch-image{background:#a84a32}
.watch-shorts-grid .watch-card:nth-child(2) .watch-image{background:#715685}
.watch-shorts-grid .watch-card:nth-child(3) .watch-image{background:var(--green)}
.watch-shorts-grid .watch-card:nth-child(4) .watch-image{background:#b98135}
.short-card .watch-art img{width:75%;height:50%;top:24%}
.watch-card:hover .watch-art img{transform:rotate(-5deg) scale(1.035)}

/* Live portrait in the story’s arched frame. */
.story-photo-frame{border:8px solid var(--orange);box-shadow:9px 9px 0 var(--lilac);background:#60247e}
.story-photo{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:50% 60%}

.story-copy .endorsement{border-left:3px solid var(--orange);padding:10px 16px;background:#f4e9d380;border-radius:0 8px 8px 0;margin:22px 0}.endorsement strong{font-weight:700}

/* Direct contact and social links. */
.contact-email{margin:20px 0 28px;position:relative;z-index:1}
.contact-email a{overflow-wrap:anywhere;text-underline-offset:5px}
.contact-socials{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;position:relative;z-index:1}
.contact-socials a{display:inline-flex;align-items:center;gap:23px;border:1px solid #243d3670;border-radius:999px;padding:12px 21px;font-size:12px;transition:background .2s,color .2s}
.contact-socials a:hover{background:var(--green);color:var(--cream)}
.contact-socials a:focus-visible,.contact-email a:focus-visible{outline:3px solid var(--green);outline-offset:5px}
.contact-flower,.contact-planet{pointer-events:none}
@media(max-width:480px){.contact-socials{gap:9px}.contact-socials a{padding:11px 15px;gap:13px}.contact-email{margin-bottom:25px}}
@media(prefers-reduced-motion:reduce){.contact-socials a{transition:none}}

@keyframes ribbon-scroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@media(prefers-reduced-motion:reduce){.ribbon-track{animation:none;transform:none;will-change:auto}}
