@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@1,500&family=Inter:wght@300;400;500;600&display=swap');

:root { --bg:#090b0c; --fg:#ece8df; --muted:#94958f; --accent:#cbae72; --panel:#111415; --line:rgba(255,255,255,.13); --serif:"Cormorant Garamond",Georgia,serif; --sans:"Inter","Helvetica Neue",Arial,sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--fg); background:var(--bg); font-family:var(--sans); font-weight:300; line-height:1.7; }
a { color:inherit; text-decoration:none; }
.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.activity-nav { position:absolute; z-index:10; inset:0 0 auto; min-height:80px; display:flex; align-items:center; justify-content:space-between; padding:0 clamp(1.2rem,5vw,5rem); border-bottom:1px solid var(--line); }
.back { font-size:.62rem; font-weight:500; letter-spacing:.16em; text-transform:uppercase; }.back span { color:var(--accent); margin-right:.7rem; }
.mini-brand { display:flex; align-items:center; gap:.8rem; font-size:.68rem; font-weight:600; letter-spacing:.2em; }.mini-brand svg { width:27px; fill:none; stroke:var(--accent); stroke-width:1.2; }
.nav-index { color:var(--muted); font-family:monospace; font-size:.6rem; letter-spacing:.12em; }
.activity-hero { min-height:100svh; position:relative; display:grid; place-items:center; padding:9rem 1.5rem 5rem; overflow:hidden; text-align:center; }
.activity-hero::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 50% 47%, color-mix(in srgb,var(--accent) 18%,transparent),transparent 36%); }
.hero-pattern { position:absolute; inset:0; opacity:.13; pointer-events:none; }
.hero-inner { position:relative; z-index:2; width:min(100%,1100px); }
.kicker { display:flex; justify-content:center; align-items:center; gap:.8rem; color:var(--accent); font-size:.61rem; font-weight:500; letter-spacing:.22em; text-transform:uppercase; }.kicker::before,.kicker::after { content:""; width:35px; height:1px; background:currentColor; }
.activity-hero h1 { margin:1.4rem 0 .8rem; font-family:var(--serif); font-size:clamp(5rem,14vw,14rem); font-style:italic; font-weight:500; letter-spacing:-.055em; line-height:.78; }
.activity-hero .tagline { max-width:650px; margin:2.2rem auto 0; color:#b0b0a9; font-size:clamp(1rem,1.5vw,1.25rem); }
.activity-hero .meta { display:flex; justify-content:center; flex-wrap:wrap; gap:1.4rem; margin-top:2.7rem; color:var(--muted); font-size:.59rem; letter-spacing:.15em; text-transform:uppercase; }.meta span+span::before { content:"/"; margin-right:1.4rem; color:var(--accent); }
.scroll { position:absolute; bottom:2rem; z-index:2; color:var(--muted); font-size:.55rem; letter-spacing:.17em; text-transform:uppercase; }
.intro { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(3rem,10vw,12rem); padding:clamp(6rem,11vw,11rem) clamp(1.3rem,9vw,10rem); background:var(--fg); color:var(--bg); }
.section-label { color:#77766f; font-size:.59rem; font-weight:500; letter-spacing:.18em; text-transform:uppercase; }.section-label span { color:var(--accent); margin-right:.8rem; }
.intro h2,.features h2,.people h2 { margin:1.5rem 0 0; font-size:clamp(3rem,5.5vw,6.3rem); font-weight:300; letter-spacing:-.05em; line-height:1; }.intro h2 em,.features h2 em,.people h2 em { color:var(--accent); font-family:var(--serif); font-weight:500; }
.intro-copy { max-width:670px; align-self:end; }.intro-copy .lead { color:#292b28; font-size:clamp(1.25rem,2vw,1.8rem); line-height:1.55; }.intro-copy p:not(.lead) { color:#62625d; }
.features { padding:clamp(6rem,10vw,10rem) clamp(1.3rem,7vw,8rem); }
.features-header { display:flex; justify-content:space-between; align-items:end; gap:3rem; margin-bottom:4rem; }.features-header p { max-width:370px; color:var(--muted); }
.feature-grid { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); }
.feature { min-height:330px; padding:2.2rem; display:flex; flex-direction:column; border-right:1px solid var(--line); }.feature:last-child { border:0; }.feature > span { color:var(--accent); font-family:monospace; font-size:.62rem; }.feature h3 { margin:auto 0 .8rem; font-family:var(--serif); font-size:2.4rem; font-style:italic; font-weight:500; }.feature p { margin:0; color:var(--muted); font-size:.82rem; }
.people { padding:clamp(6rem,10vw,10rem) clamp(1.3rem,9vw,10rem); background:var(--panel); }
.people-list { margin-top:4rem; border-top:1px solid var(--line); }.person { display:grid; grid-template-columns:70px 1fr 1fr; gap:2rem; align-items:center; min-height:100px; border-bottom:1px solid var(--line); }.person > span { color:var(--accent); font-family:monospace; font-size:.62rem; }.person b { font-family:var(--serif); font-size:2rem; font-style:italic; font-weight:500; }.person p { color:var(--muted); font-size:.75rem; }
.cta { min-height:580px; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:6rem 1.3rem; text-align:center; }.cta p { color:var(--accent); font-size:.6rem; letter-spacing:.2em; text-transform:uppercase; }.cta h2 { max-width:900px; margin:1rem 0 2rem; font-size:clamp(3rem,6vw,7rem); font-weight:300; line-height:1; letter-spacing:-.045em; }.cta h2 em { font-family:var(--serif); color:var(--accent); }.button { min-height:54px; display:inline-flex; align-items:center; gap:2rem; padding:0 1.6rem; background:var(--accent); color:var(--bg); font-size:.63rem; font-weight:600; letter-spacing:.15em; text-transform:uppercase; }
.activity-footer { display:flex; justify-content:space-between; gap:2rem; padding:2rem clamp(1.3rem,5vw,5rem); border-top:1px solid var(--line); color:var(--muted); font-size:.57rem; letter-spacing:.1em; text-transform:uppercase; }

body.corporate { --accent:#caae75; --panel:#101415; }.corporate .hero-pattern { background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px); background-size:75px 75px; mask-image:radial-gradient(circle,#000,transparent 70%); }.corporate .activity-hero h1 { font-family:var(--sans); font-style:normal; font-weight:300; text-transform:uppercase; font-size:clamp(4rem,11vw,11rem); }
body.vlinder { --bg:#1d1612; --fg:#f0e5d2; --accent:#cb9365; --panel:#281e18; }.vlinder .hero-pattern { background:radial-gradient(ellipse at 35% 50%,transparent 30%,rgba(240,218,181,.4) 31%,transparent 32%),radial-gradient(ellipse at 65% 50%,transparent 30%,rgba(240,218,181,.4) 31%,transparent 32%); }.vlinder .activity-hero h1 { color:#f2dbc0; }
body.hive { --bg:#070807; --fg:#e7dfce; --accent:#d5a943; --panel:#11100b; }.hive .hero-pattern { background-size:90px 156px; background-image:linear-gradient(30deg,rgba(213,169,67,.32) 12%,transparent 12.5%,transparent 87%,rgba(213,169,67,.32) 87.5%,rgba(213,169,67,.32)),linear-gradient(150deg,rgba(213,169,67,.32) 12%,transparent 12.5%,transparent 87%,rgba(213,169,67,.32) 87.5%,rgba(213,169,67,.32)),linear-gradient(30deg,rgba(213,169,67,.32) 12%,transparent 12.5%,transparent 87%,rgba(213,169,67,.32) 87.5%,rgba(213,169,67,.32)); mask-image:radial-gradient(circle,#000,transparent 66%); }.hive .activity-hero h1 { color:var(--accent); text-shadow:0 0 60px rgba(213,169,67,.22); }

@media(max-width:800px){.activity-nav{min-height:70px}.nav-index{display:none}.activity-hero h1{font-size:clamp(4rem,20vw,7rem)}.intro{grid-template-columns:1fr;gap:3rem}.features-header{display:block}.feature-grid{grid-template-columns:1fr}.feature{min-height:260px;border-right:0;border-bottom:1px solid var(--line)}.person{grid-template-columns:45px 1fr}.person p{grid-column:2;margin-top:-1rem}.activity-footer{flex-direction:column;text-align:center}.meta span+span::before{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

