@font-face{font-family:CtrlSans;src:url('assets/nimbus-sans.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:CtrlDisplay;src:url('assets/nimbus-narrow-bold.woff') format('woff');font-style:normal;font-weight:700;font-display:swap}
:root{--paper:#f7f7f2;--ink:#21231f;--line:#c8cbc2;--muted:#656a60;--purple:#693d7b;--green:#86b95c;--pale:#edf0e7;--light-purple:#eee7f0;--sans:CtrlSans,Arial,sans-serif;--display:CtrlDisplay,'Arial Narrow',Arial,sans-serif;--mono:'Courier New',monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#eaece5;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--purple);outline-offset:4px}img{display:block;max-width:100%}::selection{background:var(--green);color:var(--ink)}h1,h2,h3,p{margin:0}button{color:inherit}a,button{touch-action:manipulation}
.site-shell{max-width:1440px;margin:24px auto;background:var(--paper);border:1px solid var(--line)}.skip-link{position:fixed;left:12px;top:-100px;padding:12px;background:var(--paper);z-index:100}.skip-link:focus{top:12px}.prototype{display:flex;justify-content:space-between;gap:12px;padding:9px 30px;background:var(--pale);border-bottom:1px solid var(--line);font:11px/1.3 var(--mono);letter-spacing:.025em}.prototype span:first-child:before{content:'';display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--purple)}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:stretch;min-height:88px;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:13px;padding:20px 30px;min-width:300px}.brand-symbol{width:39px;height:39px;background:var(--purple);color:var(--paper);display:grid;place-items:center;font:28px/1 var(--sans);border-radius:2px}.wordmark{font-weight:bold;font-size:24px;letter-spacing:-1.2px;line-height:1}.wordmark small{display:block;font:9px/1.5 var(--mono);letter-spacing:2.8px;margin-top:4px}.header-note{font:10px/1.4 var(--mono);align-self:center;color:var(--muted);padding:0 20px;margin-right:auto}.main-nav{display:flex;align-items:stretch}.main-nav a{display:flex;align-items:center;padding:0 26px;border-left:1px solid var(--line);font-size:13px}.main-nav a:hover{background:var(--pale)}.main-nav .contact-nav{background:var(--green);gap:22px}.menu-toggle{display:none;border:0;border-left:1px solid var(--line);background:transparent;padding:20px}
.label{font:11px/1.5 var(--mono);letter-spacing:.045em;text-transform:uppercase}.muted{color:var(--muted)}.section-id{font:12px/1.5 var(--mono);color:var(--purple)}.display{font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:-.045em;line-height:.91}.arrow{font-family:Arial,sans-serif}.hero{display:grid;grid-template-columns:1.02fr .98fr;min-height:610px}.hero-copy{min-width:0;padding:36px 34px 30px;display:flex;flex-direction:column;align-items:flex-start;border-right:1px solid var(--line)}.hero h1{font-size:clamp(90px,9.5vw,140px);margin:30px 0 24px}.hero h1 span{display:block}.hero h1 .purple{color:var(--purple)}.hero-description{max-width:350px;font-size:15px;line-height:1.65;color:#4c5148}.hero-actions{margin-top:27px}.button{min-height:46px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;border:1px solid var(--ink);padding:12px 20px;font-size:12px;background:transparent}.button:hover{background:var(--ink);color:var(--paper)}.button.solid{background:var(--ink);color:var(--paper)}.button.solid:hover{background:var(--purple)}.hero-visual{display:flex;flex-direction:column;min-width:0}.visual-caption{display:flex;justify-content:space-between;gap:16px;padding:30px 28px 20px}.frame{flex:1;margin:0 28px 24px;min-height:320px;position:relative;overflow:hidden;border:1px solid var(--line);background:#e5e7df;display:flex;flex-direction:column;justify-content:space-between;padding:20px}.frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.frame:before{content:'';position:absolute;inset:12px;border:1px solid #c9cdc1;pointer-events:none}.frame:after{content:'';position:absolute;inset:34% 0;border-top:1px solid #c9cdc1;border-bottom:1px solid #c9cdc1;pointer-events:none}.frame-corner{position:relative;z-index:1;display:flex;justify-content:space-between;font:10px/1.5 var(--mono);letter-spacing:.07em}.frame-bottom{position:relative;z-index:1;display:flex;align-items:end;justify-content:space-between;font:10px/1.5 var(--mono)}.frame-center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.frame-word{font-family:var(--display);font-size:clamp(140px,18vw,260px);line-height:1;letter-spacing:-.04em;color:#c5cbbd;transform:rotate(-9deg)}.frame-plus{position:absolute;font:32px/1 var(--sans);color:#929b86}.frame-meta{padding:0 28px 25px;display:flex;justify-content:space-between;font:10px/1.4 var(--mono);color:var(--muted)}.caption-dot{width:8px;height:8px;background:var(--green);display:inline-block;margin-right:7px}
.ticker{display:flex;border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:70px}.ticker .label{padding:24px 32px;border-right:1px solid var(--line);flex-shrink:0}.ticker-text{flex:1;display:flex;align-items:center;justify-content:space-around;gap:12px;font:21px/1 var(--display);padding:20px;text-transform:uppercase}.ticker-text b{color:var(--purple);font:20px/1 var(--sans)}.section{scroll-margin-top:85px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:56px 34px 28px}.section-heading h2{font:700 66px/.95 var(--display);letter-spacing:-.025em;text-transform:uppercase;margin-top:12px}.section-heading .section-intro{max-width:320px;font-size:14px;line-height:1.6;color:var(--muted)}.work-list{border-top:1px solid var(--line)}.project-row{display:grid;grid-template-columns:100px 1fr 38% 76px;align-items:stretch;min-height:195px;border-bottom:1px solid var(--line);transition:background .18s}.project-row:hover{background:var(--pale)}.project-num{font:700 56px/1 var(--display);padding:30px 20px 20px 32px;border-right:1px solid var(--line);color:#676d60}.project-info{padding:28px 30px;display:flex;flex-direction:column;justify-content:space-between;gap:20px}.project-info h3{font-size:34px;letter-spacing:-1.2px;line-height:1.12}.project-info .label{color:var(--muted);font-size:10px}.format-tag{display:inline-block;border:1px solid var(--line);padding:3px 8px;font:10px/1.5 var(--mono);margin-left:8px}.project-art{position:relative;overflow:hidden;border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;padding:20px;background:#e5e8de;min-height:190px}.project-art .asset-code{font:9px/1.4 var(--mono);letter-spacing:.045em;position:relative;z-index:1}.project-art .asset-name{font:700 53px/.9 var(--display);letter-spacing:-.02em;opacity:.55;max-width:100%;overflow-wrap:anywhere;text-transform:uppercase;padding:12px 0}.project-art .placeholder-label{font:9px/1.4 var(--mono);color:var(--muted)}.project-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.project-art.is-photo .asset-code,.project-art.is-photo .placeholder-label{background:var(--paper);padding:4px 6px;align-self:start}.project-row:nth-child(2) .project-art{background:var(--light-purple)}.project-row:nth-child(3) .project-art{background:#e5e5e1}.project-arrow{border-left:1px solid var(--line);display:grid;place-items:center;font:30px/1 Arial}.project-row:hover .project-arrow{background:var(--purple);color:var(--paper)}.future-project{display:flex;justify-content:space-between;gap:20px;padding:20px 34px;background:var(--pale);font:11px/1.5 var(--mono);color:var(--muted);border-bottom:1px solid var(--line)}
.photo-grid{display:grid;grid-template-columns:1fr 1fr 1fr;padding:0 34px 34px;gap:16px}.photo-placeholder{aspect-ratio:4/5;background:#e9ebe4;border:1px dashed #b6bcae;display:flex;align-items:center;justify-content:center;position:relative}.photo-placeholder:nth-child(2){aspect-ratio:1.2;align-self:center}.photo-placeholder .label{position:absolute;bottom:16px;left:16px;color:var(--muted);font-size:10px}.photo-placeholder .cross{font:40px/1 var(--sans);color:#bac1b0}.photo-item{padding:0;border:0;background:var(--pale)}.photo-item img{width:100%;aspect-ratio:4/5;object-fit:cover}.section-photos{border-bottom:1px solid var(--line)}
.about-section{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.about-copy{padding:44px 34px;border-right:1px solid var(--line)}.about-copy h2{font:700 66px/.96 var(--display);letter-spacing:-.025em;text-transform:uppercase;margin:24px 0}.about-copy>p{max-width:460px;color:#4c5148;font-size:15px;line-height:1.8}.about-meta{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:23px;margin-top:30px}.seal{font:48px/1 Arial;color:var(--purple)}.services{display:flex;flex-direction:column;padding:44px 34px}.service-row{display:flex;gap:18px;padding:27px 0;border-bottom:1px solid var(--line)}.service-row:last-child{border:0;padding-bottom:0}.service-row .number{font:11px/1.5 var(--mono);color:var(--muted);padding-top:5px}.service-row h3{font-size:21px;letter-spacing:-.4px}.service-row p{font-size:13px;line-height:1.65;margin-top:7px;color:var(--muted)}
.equipment-body{display:grid;grid-template-columns:31% 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.gear-aside{padding:32px 34px;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;gap:28px}.gear-aside p{max-width:230px;font-size:14px;color:var(--muted);line-height:1.65}.gear-symbol{display:flex;align-items:center;justify-content:center;background:var(--light-purple);border:1px solid var(--line);aspect-ratio:1.1;position:relative;overflow:hidden}.gear-symbol:before{content:'';width:55%;aspect-ratio:1;border:1px solid var(--purple);border-radius:50%;position:absolute}.gear-symbol:after{content:'';width:35%;aspect-ratio:1;border:1px solid var(--purple);border-radius:50%;position:absolute}.gear-symbol span{font:60px/1 Arial;color:var(--purple)}.gear-list details{border-bottom:1px solid var(--line)}.gear-list details:last-child{border-bottom:0}.gear-list summary{padding:22px 28px;display:flex;align-items:center;gap:20px;cursor:pointer;list-style:none}.gear-list summary::-webkit-details-marker{display:none}.gear-list summary:hover{background:var(--pale)}.gear-list .gear-title{font-size:20px;letter-spacing:-.3px}.gear-list .gear-count{font:10px/1.5 var(--mono);color:var(--muted);margin-left:auto}.gear-list summary:after{content:'+';font:22px/1 var(--sans);width:16px}.gear-list details[open] summary:after{content:'−'}.gear-content{padding:0 28px 25px 66px}.gear-content p{font:10px/1.5 var(--mono);color:var(--muted);margin-bottom:15px}.gear-content ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;font-size:14px}.gear-content li:before{content:'—';color:var(--purple);margin-right:8px}
.contact-section{padding:48px 34px 36px;display:grid;grid-template-columns:1.15fr .85fr;gap:32px}.contact-section h2{font:700 84px/.94 var(--display);text-transform:uppercase;letter-spacing:-.04em;margin-top:20px}.contact-right{padding-top:4px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:24px}.contact-right>p{max-width:340px;color:var(--muted);font-size:15px;line-height:1.7}.contact-links{display:flex;align-items:flex-start;flex-direction:column;gap:12px}.contact-links .social{font:12px/1.5 var(--mono);text-decoration:underline;text-underline-offset:4px}.contact-link-button{background:var(--green);border-color:var(--green)}.email-pending{font:10px/1.5 var(--mono);color:var(--muted)}.site-footer{display:flex;justify-content:space-between;gap:20px;padding:20px 34px;border-top:1px solid var(--line);font:10px/1.5 var(--mono);color:var(--muted)}.site-footer a:hover{text-decoration:underline}.color-key{display:inline-flex;gap:5px;align-items:center}.color-key i{width:10px;height:10px;display:block;background:var(--green)}.color-key i+i{background:var(--purple)}
.project-top{padding:28px 34px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font:11px/1.5 var(--mono)}.project-top a:hover{color:var(--purple)}.project-header{padding:44px 34px 35px}.project-header h1{font:700 clamp(65px,9vw,128px)/.96 var(--display);text-transform:uppercase;letter-spacing:-.035em;margin:22px 0 28px;overflow-wrap:anywhere}.project-facts{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;border-top:1px solid var(--line);padding-top:20px}.project-facts dt{font:10px/1.5 var(--mono);color:var(--muted);text-transform:uppercase;margin-bottom:6px}.project-facts dd{margin:0;font-size:14px}.project-description{display:grid;grid-template-columns:31% 1fr;gap:30px;padding:34px;border-bottom:1px solid var(--line);border-top:1px solid var(--line)}.project-description p{font-size:19px;max-width:690px;line-height:1.6}.media-section{padding:38px 34px 8px}.media-block{margin-bottom:40px}.media-placeholder{aspect-ratio:16/9;border:1px solid var(--line);background:var(--pale);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;position:relative;padding:20px;text-align:center;overflow:hidden}.media-placeholder:before,.media-placeholder:after{content:'';position:absolute;width:120%;height:1px;background:var(--line);transform:rotate(29deg)}.media-placeholder:after{transform:rotate(-29deg)}.media-placeholder>span{z-index:1;background:var(--pale);padding:4px 10px}.media-placeholder .media-number{font:700 80px/1 var(--display);color:#aeb7a5}.media-placeholder .label{font-size:10px}.media-caption{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-top:17px}.media-caption h3{font-size:20px;letter-spacing:-.4px}.media-caption p{max-width:520px;color:var(--muted);font-size:13px;line-height:1.6;margin-top:5px}.media-caption .label{border:1px solid var(--line);padding:4px 8px;white-space:nowrap}.video-link{display:block;position:relative;aspect-ratio:16/9;background:var(--pale);overflow:hidden}.video-link img{width:100%;height:100%;object-fit:cover}.video-link .watch-label{position:absolute;left:24px;bottom:24px;display:flex;align-items:center;gap:30px;background:var(--paper);padding:12px 18px;font-size:13px;border:1px solid var(--ink)}.video-link:hover .watch-label{background:var(--purple);color:white}.video-link .video-title{position:absolute;top:20px;left:24px;font:700 65px/1 var(--display);max-width:75%;text-transform:uppercase}.media-embed{width:100%;aspect-ratio:16/9;border:0;background:#1e201d;display:block}.media-image{width:100%;max-height:750px;object-fit:contain;background:var(--pale)}.next-project{display:flex;align-items:center;gap:20px;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--pale);padding:28px 34px}.next-project h2{font:700 46px/1 var(--display);text-transform:uppercase;margin-top:10px}.next-project>.arrow{font-size:36px}.next-project:hover{background:var(--light-purple)}.not-found{padding:80px 34px}.not-found h1{font:700 72px/1 var(--display);margin-bottom:20px}.not-found p{margin:15px 0 25px}.lightbox{padding:16px;background:var(--paper);border:1px solid var(--line);width:min(95vw,1000px);max-height:95vh}.lightbox::backdrop{background:#171916d9}.lightbox img{max-height:78vh;margin:auto}.lightbox button{display:block;margin:0 0 12px auto;background:transparent;border:1px solid var(--line);padding:8px 12px}.lightbox p{font-size:13px;color:var(--muted);padding-top:10px}
@media(min-width:1500px){.hero h1{font-size:148px}}
@media(max-width:1150px){.site-shell{margin:12px}.brand{min-width:245px;padding:20px 24px}.header-note{display:none}.main-nav{margin-left:auto}.main-nav a{padding:0 19px}.hero{min-height:550px}.hero h1{font-size:clamp(82px,10vw,112px)}.hero-copy{padding:30px 26px}.project-row{grid-template-columns:80px 1fr 35% 60px}.project-num{padding-left:24px}.project-info{padding:25px}.project-info h3{font-size:28px}.project-art .asset-name{font-size:43px}.project-arrow{font-size:27px}}
@media(max-width:760px){html{scroll-padding-top:75px}.site-shell{margin:0;border-left:0;border-right:0}.prototype{padding:9px 18px;font-size:9px}.prototype .prototype-secondary{display:none}.site-header{min-height:74px;flex-wrap:wrap}.brand{min-width:0;margin-right:auto;padding:16px 18px;gap:10px}.wordmark{font-size:21px}.brand-symbol{width:34px;height:34px;font-size:25px}.wordmark small{font-size:8px}.menu-toggle{display:block;font:11px/1.5 var(--mono);padding:18px 22px}.main-nav{display:none;width:100%;border-top:1px solid var(--line);flex-direction:column}.main-nav.is-open{display:flex}.main-nav a{min-height:50px;padding:14px 20px;border:0;border-bottom:1px solid var(--line)}.main-nav .contact-nav{justify-content:space-between}.hero{grid-template-columns:minmax(0,1fr)}.hero-copy{padding:29px 22px 32px;border:0}.hero h1{font-size:clamp(70px,21vw,135px);margin:25px 0 22px}.hero-description{max-width:370px}.hero-actions{margin-top:23px}.hero-visual{border-top:1px solid var(--line)}.visual-caption{padding:22px 22px 17px}.frame{margin:0 22px 17px;min-height:0;aspect-ratio:1.35;flex:auto}.frame-word{font-size:200px}.frame-meta{padding:0 22px 24px;flex-wrap:wrap;gap:10px}.ticker .label{padding:19px 22px;font-size:10px}.ticker{min-height:0;flex-direction:column}.ticker .label{border-right:0;border-bottom:1px solid var(--line)}.ticker-text{font-size:clamp(12px,4vw,17px);padding:17px 22px;justify-content:space-between;gap:8px}.ticker-text b{font-size:12px}.section-heading{padding:36px 22px 24px;align-items:start;flex-direction:column;gap:18px}.section-heading h2{font-size:57px}.section-heading .section-intro{font-size:13px;max-width:400px}.project-row{grid-template-columns:60px 1fr 52px;min-height:0}.project-num{font-size:36px;padding:24px 14px}.project-info{padding:22px 17px;gap:18px}.project-info h3{font-size:27px;letter-spacing:-.8px}.project-info .label{font-size:9px}.format-tag{font-size:9px;margin-left:3px}.project-art{grid-column:1/-1;grid-row:2;border-left:0;border-top:1px solid var(--line);margin:0;min-height:170px;padding:18px 22px}.project-art .asset-name{font-size:50px}.project-arrow{grid-column:3;grid-row:1;font-size:25px}.future-project{padding:20px 22px;font-size:10px;flex-wrap:wrap;gap:8px}.photo-grid{padding:0 22px 27px;gap:10px}.photo-placeholder .label{font-size:8px;left:8px;bottom:8px}.photo-placeholder .cross{font-size:28px}.about-section{grid-template-columns:1fr}.about-copy{padding:32px 22px;border-right:0;border-bottom:1px solid var(--line)}.about-copy h2{font-size:58px}.about-copy>p{font-size:14px}.services{padding:30px 22px}.service-row{padding:23px 0}.equipment-body{grid-template-columns:1fr}.gear-aside{padding:25px 22px;display:grid;grid-template-columns:1fr 105px;gap:20px;border:0;border-bottom:1px solid var(--line)}.gear-aside p{font-size:13px;align-self:center;max-width:400px}.gear-symbol{grid-column:2;grid-row:1}.gear-symbol span{font-size:36px}.gear-aside>.label{grid-column:1/-1;font-size:9px}.gear-list summary{padding:21px 22px;gap:13px}.gear-list .gear-title{font-size:18px}.gear-count{font-size:9px!important}.gear-content{padding:0 22px 24px 52px}.gear-content ul{grid-template-columns:1fr;font-size:14px}.contact-section{padding:35px 22px;grid-template-columns:1fr;gap:28px}.contact-section h2{font-size:72px}.contact-right{gap:25px}.contact-right>p{font-size:14px}.site-footer{padding:20px 22px;flex-wrap:wrap;gap:14px;font-size:9px}.site-footer .color-key{display:none}.project-top{padding:22px;font-size:10px;gap:16px}.project-header{padding:30px 22px}.project-header h1{font-size:clamp(58px,14vw,90px);margin:20px 0 25px}.project-facts{grid-template-columns:1fr;gap:16px}.project-facts dd{font-size:13px}.project-description{grid-template-columns:1fr;gap:14px;padding:25px 22px}.project-description p{font-size:16px}.media-section{padding:26px 22px 0}.media-block{margin-bottom:30px}.media-placeholder .media-number{font-size:58px}.media-placeholder{gap:7px}.media-caption h3{font-size:18px}.media-caption p{font-size:12px}.media-caption .label{font-size:9px}.next-project{padding:26px 22px}.next-project h2{font-size:39px}.video-link .video-title{font-size:37px;left:15px;top:15px}.video-link .watch-label{left:15px;bottom:15px;padding:9px 13px;font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
