.public-site{--forest:#123f33;--forest-dark:#082b25;--orange:#c95722;--rust:#9f3d1d;--gold:#efaa39;--cream:#f4dfae;--paper:#f8edd0;--ink:#20150e;color:var(--ink);background:var(--paper);overflow:hidden}
.public-site::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:30;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='110' height='110' viewBox='0 0 110 110'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
.public-site .nav-wrap{background:rgba(8,43,37,.96);border-bottom:3px solid var(--gold);box-shadow:0 5px 0 rgba(159,61,29,.65)}
.public-site .nav{max-width:1440px}.public-site .nav-links a{color:var(--cream)}.public-site .nav-links a:hover{color:var(--gold)}
.public-site .brand{display:flex;align-items:center;gap:.6rem;color:var(--cream);letter-spacing:.035em}.public-site .brand>img{width:56px;height:56px;object-fit:contain;filter:drop-shadow(0 2px 0 rgba(0,0,0,.2))}.public-site .brand>span{display:flex;align-items:baseline;gap:.45rem}.public-site .brand small{color:var(--gold)}
.public-site .button{background:var(--orange);color:#fff5dc;border:2px solid var(--gold);border-radius:999px;box-shadow:4px 4px 0 var(--forest-dark);transition:transform .18s ease,box-shadow .18s ease}.public-site .button:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--forest-dark)}
.public-site .hero{background:var(--forest-dark);border-bottom:7px solid var(--gold);position:relative}.public-site .hero::after{content:"✦  ✦  ✦";position:absolute;right:2.5rem;bottom:1rem;color:var(--gold);letter-spacing:1rem;opacity:.8}.public-site .hero-copy{background:radial-gradient(circle at 85% 15%,rgba(239,170,57,.16),transparent 25%),repeating-radial-gradient(ellipse at 120% 110%,transparent 0 28px,rgba(201,87,34,.2) 30px 33px),var(--forest-dark);color:var(--cream)}
.public-site .hero-copy::before{background:var(--orange);opacity:.42}.public-site .hero-copy::after{background:var(--gold);opacity:.24}
.public-site .hero-brand-art{display:block;width:min(270px,48vw);margin:-1rem 0 1rem;filter:drop-shadow(0 10px 0 rgba(0,0,0,.16))}.public-site .hero h1,.public-site h2,.public-site h3{font-family:"Fraunces",serif}.public-site .hero h1 em{color:var(--gold);text-shadow:3px 3px 0 var(--rust)}.public-site .hero .eyebrow,.public-site .hero .lede,.public-site .hero .quick-facts{color:var(--cream)}
.public-site .eyebrow{color:var(--rust);letter-spacing:.16em}.public-site .manifesto{background:var(--cream);position:relative}.public-site .manifesto::before{content:"";position:absolute;width:420px;height:420px;border:3px solid rgba(201,87,34,.16);border-radius:45% 55% 65% 35%;right:-220px;top:-160px;box-shadow:0 0 0 24px rgba(18,63,51,.06),0 0 0 48px rgba(239,170,57,.08)}
.public-site .photo-band{background:var(--orange);border-top:5px solid var(--forest);border-bottom:5px solid var(--forest)}.public-site .photo-band blockquote{color:var(--cream);text-shadow:3px 3px 0 var(--forest-dark)}.public-site .photo-band figure{border-color:var(--gold)}
.public-site .action-section{background:var(--forest);color:var(--cream);display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.6fr);gap:clamp(2rem,5vw,6rem);align-items:center;position:relative}.public-site .action-section::before{content:"";position:absolute;inset:0;opacity:.09;background:repeating-radial-gradient(ellipse at 0 100%,transparent 0 34px,var(--gold) 36px 40px)}.public-site .action-copy,.public-site .action-gallery{position:relative}.public-site .action-section .eyebrow{color:var(--gold)}.public-site .action-section h2{color:var(--cream);text-shadow:3px 3px 0 var(--rust)}.public-site .action-caption{display:inline-block;margin-top:1.25rem;padding:.5rem .9rem;border:2px solid var(--gold);border-radius:999px;color:var(--gold);font-weight:700;text-transform:uppercase;font-size:.72rem;letter-spacing:.11em}.public-site .action-gallery{display:grid;grid-template-columns:1.4fr .75fr;grid-template-rows:1fr 1fr;gap:12px;transform:rotate(-1deg)}.public-site .action-gallery figure{margin:0;overflow:hidden;border:5px solid var(--cream);box-shadow:8px 8px 0 var(--orange);min-height:220px}.public-site .action-gallery .action-main{grid-row:1/3}.public-site .action-gallery img{width:100%;height:100%;object-fit:cover;display:block}.public-site .action-gallery figure:nth-child(2) img{object-position:center 25%}
.public-site .music{background:var(--paper);background-image:radial-gradient(circle at 10% 20%,rgba(239,170,57,.12) 0 2px,transparent 3px),radial-gradient(circle at 80% 70%,rgba(18,63,51,.1) 0 2px,transparent 3px);background-size:48px 48px,61px 61px}.public-site .album-wrap img{border:7px solid var(--forest);box-shadow:12px 12px 0 var(--orange)}.public-site .track-list li::marker{color:var(--orange)}.public-site .player-card{border:4px solid var(--forest);border-radius:34px;background:var(--cream);box-shadow:9px 9px 0 var(--gold)}
.public-site .shows{background:var(--cream)}.public-site .card{border:3px solid var(--ink);border-radius:32px 14px 32px 14px;box-shadow:7px 7px 0 var(--gold)}.public-site .card.teal{background:var(--forest);color:var(--cream)}.public-site .card.rust{background:var(--orange);color:var(--cream)}.public-site .card.plum{background:var(--rust);color:var(--cream)}.public-site .epk-strip{background:var(--forest-dark);border:3px solid var(--gold);color:var(--cream)}
.public-site .house{background:var(--orange);border-block:7px solid var(--gold)}.public-site .house-copy{background:radial-gradient(circle at 100% 0,rgba(239,170,57,.25),transparent 35%),var(--orange);color:var(--cream)}.public-site .house-copy .eyebrow{color:var(--forest-dark)}.public-site .house-types span{border-color:var(--gold);background:rgba(8,43,37,.15)}.public-site .button.gold{background:var(--gold);color:var(--forest-dark)}
.public-site .video{background:var(--paper)}.public-site .video-feature{border:7px solid var(--forest);box-shadow:12px 12px 0 var(--gold)}.public-site .play{background:var(--orange);border:3px solid var(--gold)}
.public-site .youtube-player{position:relative;width:100%;aspect-ratio:16/9;border:7px solid var(--forest);box-shadow:12px 12px 0 var(--gold);overflow:hidden;background:#16100c}.public-site .youtube-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.public-site .video-channel-link{display:inline-block;margin-top:2rem;color:var(--forest);font-weight:800}
.public-site .booking{background:var(--forest-dark);color:var(--cream);position:relative}.public-site .booking::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--forest-dark) 0%,rgba(8,43,37,.92) 56%,rgba(8,43,37,.48) 100%),url('/assets/brand/rev-haze-mark.webp') right -100px bottom -150px/620px no-repeat;opacity:.22;pointer-events:none}.public-site .booking>*{position:relative;z-index:1}.public-site .booking .eyebrow,.public-site .booking .email{color:var(--gold)}.public-site .booking-grid a{background:var(--cream);color:var(--forest-dark);border:3px solid var(--gold);border-radius:24px}.public-site footer{background:var(--rust);color:var(--cream);border-top:6px solid var(--gold)}.public-site footer a{color:var(--cream)}
@media(max-width:900px){.public-site .brand>img{width:44px;height:44px}.public-site .hero-brand-art{width:190px}.public-site .action-section{grid-template-columns:1fr}.public-site .action-gallery{transform:none}.public-site .nav-links{background:var(--forest-dark)}}
@media(max-width:620px){.public-site .action-gallery{grid-template-columns:1fr;grid-template-rows:auto}.public-site .action-gallery .action-main{grid-row:auto}.public-site .action-gallery figure{min-height:260px}.public-site .action-gallery figure:nth-child(2){display:none}.public-site .hero::after{display:none}.public-site .brand>span small{display:none}}

/* Integrated hero art, stronger contrast, and restrained psychedelic motion */
.public-site .hero-copy{isolation:isolate;animation:lineDrift 22s ease-in-out infinite alternate}
.public-site .hero-copy>*:not(.hero-brand-art){position:relative;z-index:2}
.public-site .hero-brand-art{position:absolute;z-index:0;width:min(760px,86%);height:auto;right:-10%;top:50%;margin:0;transform:translateY(-50%) scale(.98);opacity:.2;filter:saturate(.9) contrast(1.08);pointer-events:none;animation:brandBreathe 12s ease-in-out infinite}
.public-site .hero-copy::before{background:var(--orange);opacity:.18;animation:orbFloat 16s ease-in-out infinite alternate}
.public-site .hero-copy::after{background:var(--gold);opacity:.14;animation:orbFloat 19s ease-in-out infinite alternate-reverse}
.public-site .hero::after{animation:starPulse 4s ease-in-out infinite}
.public-site .manifesto::before{animation:slowSpin 32s linear infinite}
.public-site .album-wrap img{display:block;aspect-ratio:1;object-fit:cover;transition:transform .35s ease,box-shadow .35s ease}
.public-site .album-wrap:hover img{transform:rotate(-1.5deg) translate(-3px,-3px);box-shadow:17px 17px 0 var(--orange)}
.public-site .card{transition:transform .25s ease,box-shadow .25s ease}
.public-site .card:hover{transform:translateY(-7px) rotate(-.4deg);box-shadow:11px 15px 0 var(--gold)}
.public-site .card p{color:var(--gold)!important}
.public-site .card span{color:#fff6df!important;opacity:1}
.public-site .booking-grid a{transition:transform .25s ease,background .25s ease,box-shadow .25s ease}
.public-site .booking-grid a:hover{transform:translateY(-5px);background:#fff5d9;box-shadow:7px 9px 0 var(--orange)}
@keyframes brandBreathe{0%,100%{opacity:.17;transform:translateY(-50%) scale(.98)}50%{opacity:.27;transform:translateY(-50%) scale(1.035)}}
@keyframes lineDrift{from{background-position:0 0,0 0,0 0}to{background-position:20px -12px,-18px 22px,0 0}}
@keyframes orbFloat{from{transform:translate3d(-8px,-5px,0) rotate(0)}to{transform:translate3d(22px,16px,0) rotate(18deg)}}
@keyframes starPulse{0%,100%{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}
@keyframes slowSpin{to{transform:rotate(360deg)}}
@media(max-width:900px){.public-site .hero-brand-art{width:min(620px,92%);right:-18%;opacity:.17}}
@media(max-width:620px){.public-site .hero-brand-art{width:125%;max-width:none;right:-42%;opacity:.14}}
@media(prefers-reduced-motion:reduce){.public-site *,.public-site *::before,.public-site *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.public-site .photo-band figure:last-child img{object-position:center center}.public-site .house-image{background-position:center center!important}
