:root{--ink:#17211f;--muted:#71807a;--paper:#f4f5ef;--line:#d8ddd4;--lime:#d5f26d;--mint:#b9e4d0;--blue:#b9d9ee;--orange:#f8b46a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}.site-shell{max-width:1440px;margin:auto;padding:0 5vw}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:13px}.brand{font-family:"DM Mono",monospace;color:var(--ink);letter-spacing:.03em}.brand span{display:inline-grid;place-items:center;background:var(--ink);color:var(--lime);width:28px;height:28px;margin-right:8px;font-size:11px}.nav-links{display:flex;align-items:center;gap:30px;color:var(--muted)}.nav-links a:hover,.text-link:hover,.case-link:hover{color:var(--ink)}.nav-contact{background:var(--ink);color:var(--paper);padding:12px 15px}.nav-contact span,.button span,.text-link span,.case-link span{margin-left:12px;color:var(--lime)}.section-grid{display:grid;grid-template-columns:1fr .85fr;gap:7vw}.hero{min-height:690px;align-items:center;padding:80px 0}.eyebrow{font:500 11px/1.3 "DM Mono",monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#8fca58;margin-right:8px}.hero h1{font-size:clamp(44px,6.5vw,95px);line-height:.98;letter-spacing:-.07em;max-width:720px;margin:25px 0}.hero h1 em,.contact-section h2 em{font-family:Georgia,serif;font-weight:400;color:#849f61}.hero-lede{font-size:18px;line-height:1.6;color:var(--muted);max-width:460px}.hero-actions{display:flex;gap:28px;align-items:center;margin-top:38px}.button{display:inline-flex;align-items:center;padding:16px 18px;font-size:13px;font-weight:700}.button-primary{background:var(--ink);color:var(--paper)}.button-primary:hover{background:#2f4039}.text-link{font-size:13px;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:5px}.hero-visual{min-height:510px;position:relative;display:grid;place-items:center}.portrait-frame{width:min(30vw,370px);height:min(39vw,475px);min-width:255px;position:relative;z-index:2;overflow:hidden;background:var(--mint);border-radius:48% 48% 5px 5px}.portrait-frame:after{content:"";position:absolute;inset:14px;border:1px solid rgba(23,33,31,.35);border-radius:45% 45% 3px 3px}.portrait-frame picture,.portrait-frame img{display:block;width:100%;height:100%;object-fit:cover}.portrait-frame img{filter:saturate(.75) contrast(1.02)}.orbit{position:absolute;border:1px solid #a5bbab;border-radius:50%;z-index:1}.orbit-one{width:500px;height:190px;transform:rotate(-27deg);background:rgba(213,242,109,.18)}.orbit-two{width:360px;height:560px;transform:rotate(24deg);background:rgba(185,217,238,.2)}.visual-note{position:absolute;font:11px "DM Mono",monospace;color:var(--muted);z-index:3}.note-top{top:4%;right:-2%;white-space:nowrap}.note-bottom{bottom:0;left:0;white-space:nowrap}.marquee{margin:0 -5vw;background:var(--lime);color:var(--ink);overflow:hidden;white-space:nowrap;font:500 12px "DM Mono",monospace;letter-spacing:.16em;padding:16px 0}.marquee div{width:max-content;animation:slide 24s linear infinite}.marquee span{margin:0 26px}.section{padding:150px 0}.section-heading{max-width:720px}.section-heading h2{font-size:clamp(35px,5vw,68px);letter-spacing:-.06em;line-height:1.02;margin:20px 0 25px}.section-intro{color:var(--muted);line-height:1.7;max-width:480px}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:70px}.case-card{border:1px solid var(--line);padding:30px;min-height:390px;display:flex;flex-direction:column;position:relative;background:rgba(255,255,255,.18)}.case-featured{grid-column:span 2;min-height:360px;display:grid;grid-template-columns:30px 1fr .8fr;gap:25px;background:var(--blue);border-color:transparent}.case-paywall{grid-column:span 2;min-height:330px;display:grid;grid-template-columns:30px 1fr .8fr;gap:25px;background:var(--mint);border-color:transparent}.art-paywall{background:var(--ink);display:grid;place-items:center}.paywall-window{display:flex;flex-direction:column;gap:12px;width:190px;padding:25px;background:var(--lime);color:var(--ink);font:12px "DM Mono",monospace}.paywall-window b{font-size:16px}.paywall-window small{line-height:1.5}.case-index,.project-number{font:12px "DM Mono",monospace;color:var(--muted)}.case-label{font:11px "DM Mono",monospace;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.case-content h3{font-size:37px;letter-spacing:-.06em;margin:20px 0 10px}.case-content p:not(.case-label){color:#54645d;line-height:1.65;max-width:500px}.tag-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:25px}.tag-row span{border:1px solid rgba(23,33,31,.2);padding:7px 9px;font:10px "DM Mono",monospace}.case-link{display:inline-block;margin-top:auto;padding-top:28px;font-size:12px;font-weight:700}.case-art{position:relative;min-height:240px;overflow:hidden;background:var(--ink)}.art-botcher{background:#1c2d2a}.signal-line{position:absolute;width:130%;height:70px;border:2px solid var(--lime);border-left:0;border-bottom:0;transform:rotate(-15deg);left:-20%;top:40%;border-radius:50%}.signal-line.second{top:58%;left:10%;border-color:var(--mint);transform:rotate(14deg)}.art-label{position:absolute;bottom:18px;right:18px;color:var(--lime);font:12px/1.2 "DM Mono",monospace}.split-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}.project-list{margin-top:65px;border-top:1px solid var(--line)}.project-row{display:grid;grid-template-columns:50px 1.4fr 1fr 30px;align-items:center;gap:20px;padding:25px 0;border-bottom:1px solid var(--line);transition:padding .2s;background:transparent}.project-row:hover{padding-left:14px;padding-right:14px;background:var(--lime)}.project-name{font-size:20px;font-weight:700;letter-spacing:-.04em}.project-type{font:11px "DM Mono",monospace;color:var(--muted)}.project-arrow{font-size:20px;text-align:right}.about-section{display:grid;grid-template-columns:1fr 1fr;gap:10vw;border-top:1px solid var(--line)}.about-copy{padding-top:53px}.about-copy>p{font-size:21px;line-height:1.6;letter-spacing:-.02em;max-width:580px}.about-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;border-top:1px solid var(--line);margin-top:55px;padding-top:20px}.about-facts div{display:flex;flex-direction:column;gap:10px}.about-facts strong{font:10px "DM Mono",monospace;color:var(--muted);text-transform:uppercase}.about-facts span{font-size:13px;line-height:1.4}.contact-section{background:var(--ink);color:var(--paper);margin:0 -5vw;padding:110px 5vw 28px}.contact-section h2{font-size:clamp(48px,7vw,105px);line-height:.95;letter-spacing:-.07em;margin:30px 0 45px}.contact-section .eyebrow{color:#a6b6ae}.contact-section .button{background:var(--lime);color:var(--ink)}.contact-section .button span{color:var(--ink)}.contact-footer{border-top:1px solid #43534d;margin-top:110px;padding-top:20px;display:flex;justify-content:space-between;font:11px "DM Mono",monospace;color:#a6b6ae}.contact-footer a:hover{color:var(--lime)}@keyframes slide{to{transform:translateX(-35%)}}@media(max-width:800px){.site-shell{padding:0 24px}.site-header{height:72px}.nav-links{gap:13px}.nav-links>a:not(.nav-contact){display:none}.section-grid,.about-section{grid-template-columns:1fr}.hero{padding:70px 0 80px;min-height:auto}.hero h1{font-size:clamp(47px,14vw,76px)}.hero-visual{min-height:430px;margin-top:25px}.note-top{top:1%;right:0}.note-bottom{bottom:-8px;left:0}.portrait-frame{width:260px;height:350px}.orbit-one{width:350px}.orbit-two{height:430px}.case-grid{grid-template-columns:1fr}.case-featured,.case-paywall{grid-column:auto;display:block}.case-featured .case-art{margin-top:28px}.split-heading{display:block}.split-heading .text-link{display:inline-block;margin-top:10px}.project-row{grid-template-columns:30px 1fr 25px}.project-type{display:none}.project-name{font-size:16px}.about-copy{padding-top:0}.about-facts{grid-template-columns:1fr}.contact-section{margin:0 -24px;padding-left:24px;padding-right:24px}.contact-footer{display:block;line-height:2}.contact-footer span{display:block}.section{padding:100px 0}}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.reveal.is-visible{opacity:1;transform:none}
.case-card:nth-child(2){transition-delay:.08s}.case-card:nth-child(3){transition-delay:.16s}.case-card:nth-child(4){transition-delay:.24s}
.portrait-frame{animation:portrait-float 7s ease-in-out infinite}
.orbit-one{animation:orbit-drift 11s ease-in-out infinite alternate}.orbit-two{animation:orbit-drift 14s ease-in-out infinite alternate-reverse}
.button,.text-link,.case-link{transition:transform .2s ease,color .2s ease,background-color .2s ease}
.button:hover,.text-link:hover,.case-link:hover{transform:translateY(-2px)}
.case-card{transition:transform .3s ease,box-shadow .3s ease,opacity .7s ease}.case-card:hover{transform:translateY(-6px);box-shadow:0 18px 35px rgba(23,33,31,.08)}
.project-row{transition:padding .2s ease,background-color .2s ease,transform .2s ease}.project-row:hover{transform:translateX(4px)}
@keyframes portrait-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes orbit-drift{from{translate:0 0}to{translate:10px -8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
.marquee-sequence{display:inline-block;margin:0!important}.marquee i{font-style:normal;margin:0 26px}.marquee div{animation:slide 22s linear infinite}.marquee-sequence+ .marquee-sequence{margin-left:0!important}@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.marquee div{display:flex;width:max-content}.marquee-sequence{flex:0 0 auto;display:block}
.marquee div{animation:none!important}.portrait-frame{animation:none!important}
.marquee .marquee-static{width:100%;display:flex;align-items:center;justify-content:space-around;gap:22px;animation:none!important}.marquee-static i{font-style:normal;margin:0}.marquee-static span{margin:0!important}
