:root{--ink:#0b1212;--deep:#111c1b;--forest:#26382f;--moss:#486152;--storm:#68797e;--mist:#aeb9b6;--sand:#ddd6c9;--cream:#f0eee8;--gold:#b69a58;--line:rgba(240,238,232,.18);--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--mono:'DM Mono',monospace}*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}body{background:var(--ink);color:var(--cream);font-family:var(--sans);overflow-x:hidden}.noise{position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}
.progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--gold);z-index:100}
.header{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:28px 5vw;mix-blend-mode:normal;transition:.4s}
.header.scrolled{background:rgba(11,18,18,.88);backdrop-filter:blur(14px);padding:18px 5vw;border-bottom:1px solid var(--line)}
.logo{font:400 18px var(--mono);letter-spacing:.08em;color:var(--cream);text-decoration:none}.logo span{color:var(--gold)}
.nav{display:flex;align-items:center;gap:32px}.nav a{color:var(--cream);text-decoration:none;font:12px var(--mono);letter-spacing:.08em;text-transform:uppercase;opacity:.8}
.nav a:hover{opacity:1}.nav-cta{border:1px solid var(--line);padding:12px 16px;opacity:1!important}
.nav-cta span,.text-link span,.button span,.contact-mail span{color:var(--gold);margin-left:10px}
.menu-toggle{display:none;background:none;border:0}.hero{min-height:100vh;position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:150px 10vw 90px;background:radial-gradient(ellipse at 80% 35%,#314840 0%,var(--ink) 55%)}
.hero-copy{position:relative;z-index:2}.eyebrow{font:11px var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--mist);margin-bottom:28px}
.hero h1,h2{font:400 clamp(55px,7vw,108px)/.96 var(--serif);letter-spacing:-.045em}
.hero h1 em,h2 em{color:var(--gold);font-style:italic}.intro{max-width:410px;color:var(--mist);font-size:16px;line-height:1.8;margin-top:28px}
.circle-link{display:flex;align-items:center;justify-content:center;flex-direction:column;width:115px;height:115px;border:1px solid var(--line);border-radius:50%;color:var(--cream);text-decoration:none;font:11px var(--mono);line-height:1.5;text-align:center;margin-top:48px;transition:.35s}
.circle-link b{font-size:20px;font-weight:300;color:var(--gold);margin-top:7px}
.circle-link:hover{background:var(--gold);color:var(--ink);transform:rotate(10deg)}
.hero-visual{height:610px;position:relative;justify-self:end;width:min(39vw,540px)}
.hero-image{height:100%;overflow:hidden;clip-path:polygon(13% 0,100% 0,87% 100%,0 100%)}
.hero-image img{height:100%;width:100%;object-fit:cover;filter:saturate(.65) contrast(1.05);transition:transform 1.2s}
.hero:hover .hero-image img{transform:scale(1.04)}
.hero-stamp{position:absolute;right:-32px;top:52px;width:104px;height:104px;border:1px solid var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;font:10px var(--mono);letter-spacing:.1em;line-height:1.4;color:var(--gold);transform:rotate(12deg)}
.hero-stamp span{color:var(--mist)}.image-caption{position:absolute;bottom:-30px;right:0;font:10px var(--mono);color:var(--mist)}.hero-side{position:absolute;right:35px;bottom:48px;writing-mode:vertical-rl;transform:rotate(180deg);font:10px var(--mono);letter-spacing:.16em;color:var(--mist)}
.hero-side span{color:var(--gold);padding:12px 0}.manifesto,.worlds,.process{padding:150px 10vw;background:var(--cream);color:var(--ink)}
.manifesto-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.manifesto h2,.worlds h2,.process h2{font-size:clamp(48px,6vw,88px)}
.large-text{font:400 25px/1.55 var(--serif);max-width:530px}.text-link{display:inline-block;margin-top:42px;color:var(--ink);font:12px var(--mono);text-transform:uppercase;letter-spacing:.12em;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:10px}
.worlds{background:var(--deep);color:var(--cream)}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:65px}
.section-note{color:var(--mist);font:12px var(--mono)}.world-list{border-top:1px solid var(--line)}.world{position:relative;display:grid;grid-template-columns:90px 1.1fr 1.2fr 40px;align-items:center;gap:25px;padding:34px 0;border-bottom:1px solid var(--line);color:var(--cream);text-decoration:none;transition:.4s}
.world:before{content:'';position:absolute;inset:0 -30px;background:var(--forest);transform:scaleY(0);transform-origin:bottom;transition:.4s;z-index:0}
.world:hover:before{transform:scaleY(1)}.world>*{position:relative;z-index:1}.world-number{font:12px var(--mono);color:var(--gold)}
.world-name span{font:400 36px var(--serif)}.world-name small{display:block;font:10px var(--mono);color:var(--mist);text-transform:uppercase;letter-spacing:.1em;margin-top:8px}
.accent{color:#91aa9d!important}.gold{color:var(--gold)!important}.world-desc{font-size:14px;color:var(--mist);line-height:1.6;max-width:330px}
.world-arrow{font-size:28px;color:var(--gold);text-align:right}.feature{display:grid;grid-template-columns:1.1fr .9fr;min-height:750px;background:var(--forest)}
.feature-image{position:relative;min-height:600px;overflow:hidden}.feature-image img{height:100%;width:100%;object-fit:cover;filter:saturate(.6) brightness(.72);transition:transform 1s}
.feature:hover img{transform:scale(1.04)}.feature-word{position:absolute;inset:0;display:grid;place-items:center;font:clamp(32px,6vw,84px) var(--sans);letter-spacing:.35em;color:rgba(240,238,232,.82);padding-left:.35em}
.feature-copy{padding:12vw 9vw;align-self:center}.feature-copy h2{font-size:clamp(48px,5vw,78px)}.feature-copy p:not(.eyebrow){color:var(--mist);line-height:1.8;max-width:400px;margin:30px 0}
.button{display:inline-block;background:var(--gold);color:var(--ink);padding:16px 22px;text-decoration:none;font:12px var(--mono);text-transform:uppercase;letter-spacing:.1em}
.process{padding-bottom:180px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:80px;border-top:1px solid rgba(11,18,18,.2);padding-top:25px}
.steps span{font:12px var(--mono);color:var(--gold)}
.steps h3{font:400 30px var(--serif);margin:48px 0 14px}
.steps p{max-width:230px;color:#65706d;line-height:1.7;font-size:14px}
.contact{background:var(--ink);text-align:center;padding:180px 8vw}
.contact-inner{max-width:800px;margin:auto}.contact h2{font-size:clamp(55px,8vw,110px)}
.contact-mail{display:inline-block;color:var(--cream);font:20px var(--mono);text-decoration:none;margin-top:55px;border-bottom:1px solid var(--gold);padding-bottom:12px}
.contact-meta{font:11px var(--mono);color:var(--mist);margin-top:45px;letter-spacing:.08em}
footer{display:flex;justify-content:space-between;align-items:center;padding:28px 5vw;background:#080d0d;color:var(--mist);font:10px var(--mono)}
footer div{display:flex;gap:20px}footer a{color:inherit;text-decoration:none}@media(max-width:800px){
    .header{padding:22px 6vw}.menu-toggle{display:block;position:relative;width:28px;height:22px;z-index:60}
    .menu-toggle i{display:block;height:1px;background:var(--cream);margin:7px 0}
    .nav{position:fixed;inset:0;background:var(--ink);flex-direction:column;justify-content:center;align-items:flex-start;padding:10vw;gap:28px;transform:translateX(100%);transition:.4s}
    .nav.open{transform:translateX(0)}.nav a{font-size:16px}
    .nav-cta{margin-top:20px}.hero{display:block;padding:140px 7vw 90px}
    .hero h1{font-size:clamp(55px,15vw,90px)}
    .hero-visual{width:88vw;height:480px;margin:70px auto 0}
    .hero-side{display:none}.hero-stamp{right:-10px}.manifesto,.worlds,.process{padding:100px 7vw}.manifesto-grid{grid-template-columns:1fr;gap:45px}.large-text{font-size:22px}
    .section-head{display:block}.section-note{margin-top:25px}
    .world{grid-template-columns:45px 1fr 30px;gap:10px}
    .world-desc{grid-column:2/4;margin-top:-4px}
    .world-name span{font-size:29px}
    .feature{display:block}
    .feature-image{min-height:480px}
    .feature-copy{padding:100px 8vw}
    .steps{grid-template-columns:1fr;gap:45px;margin-top:55px}
    .steps h3{margin-top:18px}.contact{padding:120px 7vw}
    footer{display:block;text-align:center}
    footer p{margin:18px 0}
    footer div{justify-content:center}}
