/* GONAGRA v6 — reference discipline: all-over analog haze and film grain;
   no cross-project compositing. The visual grammar is shared, the media is not. */
:root{--bg:#08090b;--ink:#dededb;--muted:#b1b1af;--accent:#c7c5c3;--line:rgba(196,198,198,.21);--max:1320px}
html{scroll-padding-top:91px}
body{background:#08090a;color:var(--ink)}
body::before{background-image:url('assets/analog-grain.webp');background-repeat:repeat;background-size:330px 330px;mix-blend-mode:screen;opacity:.095;filter:grayscale(1);z-index:3}
body::after{background:repeating-linear-gradient(0deg,rgba(255,255,255,.008) 0 1px,transparent 1px 5px);opacity:.6;z-index:3}
.site-shell{isolation:isolate}
.site-header{background:rgba(9,9,11,.89);border-bottom:1px solid rgba(210,212,213,.12)}
.brand-mark{font-weight:380;letter-spacing:.32em;font-size:26px}
.brand-sub{letter-spacing:.33em;font-size:9px}
.nav-link{font-weight:450;letter-spacing:.075em;color:#cacac9}
.nav-link:hover{color:#fff;text-shadow:0 0 14px #ffffff3d}
.language{border-color:#68696b6a}
/* Hero: no imagery from collaborations and no stock sci-fi objects. */
.hero{height:min(960px,97vh);min-height:760px;isolation:isolate;background:#090a0b;overflow:hidden}
.hero-art{inset:-4%;background-image:
linear-gradient(0deg,#090a0b 0,rgba(9,10,11,.14) 28%,rgba(9,10,11,.05) 70%,#090a0b 100%),
linear-gradient(90deg,rgba(8,9,11,.73),rgba(9,10,11,.34) 52%,rgba(8,9,11,.52)),url('assets/hero-monochrome.webp');
background-size:cover;background-position:center;filter:grayscale(1) contrast(1.1) brightness(.78);transform:scale(1.035)}
.hero::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;transform:none;
background:radial-gradient(ellipse 50% 45% at 70% 52%,rgba(184,187,189,.11),transparent 77%),radial-gradient(ellipse 35% 35% at 21% 70%,rgba(170,171,175,.08),transparent 90%),linear-gradient(0deg,#090a0b,transparent 34%)}
.hero::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;
background-image:radial-gradient(rgba(255,255,255,.23) .6px,transparent .6px),linear-gradient(90deg,transparent 49.97%,rgba(232,233,231,.055) 50%,transparent 50.03%);
background-size:170px 170px,100% 100%;opacity:.32;mask-image:linear-gradient(180deg,transparent 6%,#000 24%,#000 75%,transparent 97%)}
.hero-technical-grid{background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),rgba(222,225,224,.045) 25%);opacity:.5;mask-image:linear-gradient(180deg,transparent 5%,#000 30%,#000 75%,transparent 96%)}
.hero-signal-field{inset:5% -4% 3% 32%;opacity:.21;filter:grayscale(1) contrast(1.5);background-size:contain;transform:rotate(-1deg)}
.hero-etched-arcs{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.18;background:
radial-gradient(circle 570px at 72% 49%,transparent 99.76%,rgba(210,210,210,.56) 99.87%,transparent 100%),
radial-gradient(circle 410px at 72% 49%,transparent 99.74%,rgba(210,210,210,.34) 99.87%,transparent 100%),
radial-gradient(circle 230px at 72% 49%,transparent 99.58%,rgba(210,210,210,.31) 99.84%,transparent 100%)}
.hero-scanning-line{opacity:.34;inset:auto 0 28%}
.hero-content{position:relative;text-align:center;margin-inline:auto;max-width:1200px;padding-top:18px}
.hero-kicker{justify-content:center;letter-spacing:.30em;color:#bfc0bf;font-size:12px}
.hero-id{margin:0 auto 35px;color:#a1a1a1;letter-spacing:.4em}
.hero h1{font-family:'Segoe UI',Arial,sans-serif;font-size:clamp(82px,10.4vw,157px);font-weight:290;letter-spacing:.16em;margin:0 0 28px .16em;line-height:1.12;color:#efeeeb;text-shadow:0 3px 38px #050506cc,0 0 90px #ffffff18}
.hero-period{color:#9fa1a1}
.hero-genre{font-size:clamp(14px,1.65vw,20px);font-weight:340;letter-spacing:.28em;color:#d3d3d1}
.hero-divider{width:210px;margin:40px auto 26px;background:linear-gradient(90deg,transparent,#dadada88,transparent)}
.hero-statement{margin:0 auto 12px;max-width:740px;font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(25px,2.7vw,35px);line-height:1.52;letter-spacing:-.018em;color:#e1e0dd}
.hero-whisper{margin:0 auto 38px;max-width:610px;color:#aaa9aa;font-size:16px;line-height:1.7}
.hero-actions{justify-content:center}
.hero-vignette{height:28%;z-index:-1}
.hero-bottom{color:#b0b0b0}
.btn{border-color:#858588;background:rgba(15,15,16,.34);backdrop-filter:blur(4px);font-weight:420;letter-spacing:.09em;box-shadow:0 7px 32px #0007}
.btn-primary{background:#d0d0cd;border-color:#d0d0cd;color:#1a1a1b}
.btn-ghost{background:#05050633}
/* Shared graphic language: haze, graphite, photographic darkroom scratches. */
.section,.manifesto,.contact{position:relative;isolation:isolate}
.section::before,.manifesto::before,.contact::before{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;background:
radial-gradient(ellipse 44% 45% at 88% 7%,rgba(130,132,137,.068),transparent 88%),
radial-gradient(ellipse 37% 34% at 8% 88%,rgba(124,123,126,.064),transparent 92%),
repeating-linear-gradient(90deg,transparent,transparent calc(20% - 1px),rgba(232,232,232,.010) 20%);}
.section::after,.manifesto::after,.contact::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.11;background-image:url('assets/analog-grain.webp');background-size:380px 380px;mix-blend-mode:screen;mask-image:linear-gradient(180deg,transparent 2%,#000 22%,#000 79%,transparent 98%)}
.section>.container,.manifesto>.container,.contact>.container{position:relative;z-index:1}
.section-heading{margin-bottom:68px}
.section-heading h2,.about-lead h2,.contact h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.047em;color:#e7e5e2;text-shadow:0 1px 25px #ffffff0c}
.heading-dot{color:#8e9092}
.eyebrow,.mini-overline{letter-spacing:.30em;font-weight:450;color:#a7a9aa}
.heading-side{font-size:17px;color:#aaa9a9}
.manifesto{background:linear-gradient(90deg,#090a0c,#171819 46%,#0e1012);border-block:1px solid #ffffff20}
.manifesto p{font-size:clamp(24px,3vw,39px);font-family:Georgia,'Times New Roman',serif;font-weight:400}
.manifesto p em{color:#d9d7d5;font-style:italic}
.manifesto-index{letter-spacing:.25em}
.section-releases{background:radial-gradient(ellipse at 18% 9%,#24252822,transparent 50%),#0b0c0d}
.release-image-wrap{border:0;box-shadow:0 28px 70px #0009;isolation:isolate}
.release-image-wrap::before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:
linear-gradient(0deg,rgba(0,0,0,.56),transparent 37%),radial-gradient(ellipse 85% 88% at 50% 44%,transparent 50%,#090a0d70 100%);
opacity:.82}
.release-image{filter:grayscale(1) contrast(1.22) brightness(.79)}
.release-card h3{font-family:Georgia,'Times New Roman',serif;font-size:clamp(23px,2.1vw,28px);font-weight:400}
.release-card p{color:#b2b3b2}
.release-meta{letter-spacing:.23em;color:#a6a8a6}
.section-collabs{background:radial-gradient(ellipse at 50% 20%,#48474918,transparent 60%),#0a0b0d}
.collab-list{border-top:1px solid #70707360}
.collab-card{border-bottom:1px solid #77777950;padding-top:64px;padding-bottom:78px}
.collab-card::before{background:linear-gradient(90deg,rgba(255,255,255,.025),transparent 15%,transparent 84%,rgba(255,255,255,.014));inset:10px -18px;opacity:.5}
.collab-main h3,.lorand-intro h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.048em;line-height:1.15}
.collab-index{color:#a5a6a8;letter-spacing:.27em}
.status{border-color:#78797b7d;font-weight:450;background:#111114cc}
.collab-type{color:#b7b6b6}
.collab-text{color:#b1b0b0}
/* Project frames: same treatment, separated source media. */
.project-photo{aspect-ratio:1.36;border:0;background:#111;box-shadow:0 24px 64px #000b;isolation:isolate}
.project-photo::before{content:'';position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse 85% 75% at 50% 50%,transparent 45%,#09090b88 100%),linear-gradient(0deg,#09090bf0,transparent 36%)}
.project-photo::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:1;background-image:url('assets/analog-grain.webp');background-size:280px 280px;mix-blend-mode:soft-light;opacity:.31}
.project-photo figcaption{z-index:2;color:#d6d4d0;letter-spacing:.27em}
.circling-cover img{filter:grayscale(.12) contrast(1.06) brightness(.92)}
.yurt-photo img{filter:grayscale(1) contrast(1.19) brightness(.76);object-position:center}
/* The visual module of each collaboration is confined to its own article. */
.collab-circling{background:radial-gradient(ellipse 46% 39% at 85% 48%,#7d7c7d12,transparent 97%)}
.collab-tundermag{background:radial-gradient(ellipse 52% 39% at 84% 48%,#c0c2c214,transparent 97%)}
.collab-lorand{background:radial-gradient(ellipse 66% 59% at 70% 43%,#6e6b7213,transparent 88%)}
.lorand-intro{margin:45px 0 52px}
.lorand-montage{border:0;background:#09090b;box-shadow:0 28px 68px #000d}
.lorand-montage .montage-base{opacity:.42;filter:grayscale(1) contrast(1.16) brightness(.65)}
.lorand-montage .montage-piece{filter:grayscale(1) contrast(1.13) brightness(.72) sepia(.08)}
.lorand-montage .montage-piece-a{opacity:.88}
.lorand-montage .montage-piece-b{opacity:.85}
.lorand-montage .montage-piece-c{opacity:.79}
.lorand-montage .montage-piece-d{opacity:.81}
.lorand-montage::before{background:radial-gradient(ellipse 66% 70% at 50% 50%,transparent 38%,#030406b7 100%),linear-gradient(90deg,transparent 49.97%,#e0dcd111 50%,transparent 50.03%),linear-gradient(0deg,#030406da,transparent 30%);mix-blend-mode:normal}
.lorand-montage::after{opacity:.48;mix-blend-mode:soft-light}
.lorand-montage .feature-caption{letter-spacing:.15em;color:#dedddb}
.lorand-tracks{border-top-color:#8a8b8b55}
.lorand-tracks li{border-bottom-color:#8a8b8b43}
.lorand-tracks li strong{font-family:Georgia,'Times New Roman',serif;font-weight:400}
.session-gallery .session-thumb{box-shadow:0 12px 39px #0008}
.session-gallery .session-thumb img{filter:grayscale(1) contrast(1.23) brightness(.77) sepia(.07)}
.session-gallery .session-thumb:hover img{filter:grayscale(.84) contrast(1.1) brightness(.97)}
/* The About, Listen and Contact panels retain the visual grammar without borrowing project photos. */
.section-about{background:#0a0b0d}
.about-copy{color:#b9b7b5}
.about-copy .about-first{font-family:Georgia,'Times New Roman',serif;font-size:clamp(22px,2.2vw,31px);font-weight:400;color:#dcdad7}
.about-lines span{background:linear-gradient(180deg,#858486,transparent)}
.section-listen{background:#0d0f10}
.listen-card{background:linear-gradient(145deg,#191b1c66,#08090a33);border-color:#57575777}
.listen-icon{background:#0b0b0ce8;color:#d0d0cf}
.inline-player{background:#0a0b0c;border:1px solid #67676b65}
.contact{background:linear-gradient(110deg,#101113,#090a0c 82%)}
.footer-brand{font-weight:400;letter-spacing:.22em}
.site-footer{background:#060708}
@media(max-width:1100px){.hero h1{font-size:11vw}}
@media(max-width:850px){.hero{min-height:735px;height:auto;padding:130px 0 100px}.hero h1{font-size:12.5vw;letter-spacing:.13em;margin-left:.13em}.hero-etched-arcs{opacity:.10}.hero-id{letter-spacing:.19em}.hero-content{padding-top:0}.section{padding:93px 0}.collab-card{padding:42px 0 50px}.project-photo{max-width:680px}}
@media(max-width:600px){.brand-mark{font-size:21px;letter-spacing:.22em}.brand-sub{font-size:7px}.hero{min-height:710px;padding-top:100px;padding-bottom:115px}.hero-id{font-size:9px;letter-spacing:.11em;margin-bottom:28px}.hero-kicker{font-size:10px}.hero h1{font-size:11.1vw;letter-spacing:.14em;margin:0 0 25px .14em}.hero-genre{font-size:11px;letter-spacing:.10em}.hero-divider{width:145px;margin:25px auto}.hero-statement{font-size:25px}.hero-whisper{font-size:15px;margin-bottom:27px}.hero-actions{flex-direction:column}.hero-actions .btn{max-width:355px}.hero-bottom{font-size:9px}.section-heading h2{font-size:45px}.section{padding:75px 0}.collab-main h3,.lorand-intro h3{font-size:36px}.project-photo{aspect-ratio:1.18}.collab-index{letter-spacing:.13em}}
@media(prefers-reduced-motion:reduce){.hero-art,.hero-signal-field,.hero-technical-grid{transform:none!important}}

/* Audiovisual collaboration uses neutral signal graphics, not an unrelated album artwork. */
.video-frame{background:radial-gradient(ellipse at 70% 35%,rgba(182,182,182,.09),transparent 60%),linear-gradient(120deg,rgba(9,10,11,.6),rgba(8,9,11,.96)),url("assets/signal-field.svg") center/cover;filter:grayscale(1)}
