:root{--ink:#171b19;--paper:#f4f4ee;--muted:#686c66;--line:#d5d7cd;--gold:#c6a474;--display:'Manrope',sans-serif;--body:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6}body.locked{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button,a{touch-action:manipulation}button{color:inherit}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{border:0}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}::selection{background:var(--gold);color:var(--ink)}.skip{position:fixed;top:-100px;left:20px;z-index:200;background:white;padding:16px}.skip:focus{top:20px}.header{height:98px;position:absolute;top:0;left:0;width:100%;padding:0 4.8%;display:flex;align-items:center;justify-content:space-between;gap:30px;color:white;z-index:30;border-bottom:1px solid #ffffff29}.brand img{height:64px;width:74px;object-fit:contain}.header nav{display:flex;gap:36px;align-items:center;font-size:14px}.header nav a{position:relative}.header nav a:after{content:'';position:absolute;bottom:-5px;left:0;right:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:.3s}.header nav a:hover:after{transform:scaleX(1)}.header nav span{color:var(--gold);font-size:12px;margin-left:4px}.header-cta{border:1px solid #ffffff60;border-radius:2px;padding:12px 20px;font-size:14px;display:flex;gap:32px;align-items:center;transition:.3s}.header-cta:hover{background:var(--gold);color:var(--ink);border-color:var(--gold)}.header-cta span{font-size:24px}.menu-toggle{display:none;background:none;color:white;font-size:26px}.hero{height:900px;min-height:760px;max-height:1100px;height:100svh;position:relative;background:#323832;color:white;isolation:isolate;overflow:hidden}.hero-background{position:absolute;inset:-4%;z-index:-3}.hero-background img{width:100%;height:100%;object-fit:cover;object-position:center 53%;filter:saturate(.65);animation:hero-drift 18s ease-in-out infinite alternate;transition:opacity .7s}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,22,18,.87) 0%,rgba(15,25,22,.53) 52%,rgba(10,18,16,.1) 100%),linear-gradient(0deg,rgba(10,19,15,.85),transparent 40%,rgba(10,19,15,.4));z-index:-2}.hero:after{content:'';position:absolute;left:4.8%;right:4.8%;top:98px;bottom:83px;border-left:1px solid #ffffff10;border-right:1px solid #ffffff10;z-index:-1}.hero-topline{position:absolute;top:133px;left:4.8%;right:4.8%;display:flex;justify-content:space-between;font-size:11px;letter-spacing:2px;color:#e0e3d8}.hero-content{position:absolute;top:28%;left:8.2%;z-index:2}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:550;line-height:1.7}.hero .eyebrow{display:flex;align-items:center;gap:15px;color:#dfdfd4}.short-line{width:40px;height:1px;background:var(--gold);display:inline-block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);font-weight:500}h1{font-size:clamp(78px,7.8vw,150px);line-height:1.02;letter-spacing:-.065em;margin:28px 0 40px}h1 em,h2 em{font-family:Georgia,serif;font-weight:400}h1 em{color:#d5bc97}.hero-bottom-copy{display:flex;gap:45px;align-items:center}.hero-bottom-copy p{font-size:17px;line-height:1.6;margin:0;color:#daddd5}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:36px;font-size:14px;padding:18px 24px;transition:.3s;border:1px solid transparent}.button.light{background:var(--paper);color:var(--ink)}.button:hover{background:var(--gold);transform:translateY(-3px)}.button span{font-size:22px}.hero-card{position:absolute;width:240px;right:8.2%;top:34%;padding:8px;background:#f4f4ee0a;border:1px solid #ffffff42;backdrop-filter:blur(8px);color:white;text-align:left;transform:perspective(1000px) rotateY(-13deg) rotateZ(3deg);box-shadow:0 30px 80px #0005;transition:transform .4s}.hero-card:hover{transform:perspective(1000px) rotateY(0deg) rotateZ(0deg)}.hero-card-image{height:274px;overflow:hidden}.hero-card-image img{width:100%;height:100%;object-fit:cover}.hero-card-label{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 8px 10px;font-size:9px;letter-spacing:1.2px;line-height:1.9}.hero-card-label strong{font-size:13px;letter-spacing:0;font-weight:450}.circle-arrow{border:1px solid #fff5;border-radius:50%;height:33px;width:33px;font-size:18px;display:grid;place-items:center;flex-shrink:0}.hero-bottom{position:absolute;left:4.8%;right:4.8%;bottom:0;height:83px;border-top:1px solid #ffffff36;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:1.8px}.scroll-link{display:flex;align-items:center;gap:18px}.scroll-link>span{font-size:22px}.hero-pager{display:flex;align-items:center;gap:16px;font-size:12px}.slide-line{width:140px;height:1px;background:#ffffff45;display:block;position:relative}.slide-line i{position:absolute;inset:0;background:var(--gold);transform:scaleX(.33);transform-origin:left;transition:.6s}.hero-pause{background:none;color:inherit;padding:12px;font-size:15px}.hero-caption{width:230px;text-align:right}.section-pad{padding:115px 8.2%}.intro{border-bottom:1px solid var(--line)}.intro>.eyebrow{color:var(--muted);margin-bottom:48px}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%}h2{font-size:clamp(44px,4.6vw,78px);line-height:1.12;letter-spacing:-.055em;margin-bottom:28px}.intro h2 span{color:#969a91}.intro-text{font-size:20px;line-height:1.65;max-width:540px}.trust{display:flex;gap:42px;padding-top:22px;border-top:1px solid var(--line);margin-top:36px}.trust strong{display:block;font-family:var(--display);font-size:33px;font-weight:500;line-height:1.3;letter-spacing:-1px}.trust span{display:block;color:var(--muted);font-size:12px;margin-top:6px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:60px}.section-heading .eyebrow{color:var(--muted);margin-bottom:25px}.section-heading h2{margin:0}.section-side{padding-bottom:5px}.section-side p{font-size:16px;color:var(--muted)}.text-button{background:none;border:0;border-bottom:1px solid currentColor;padding:0 0 7px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:14px;text-align:left}.text-button:hover{color:#97744b}.text-button span{color:var(--muted);font-size:12px}.projects{display:grid;grid-template-columns:1.1fr 1fr;column-gap:6%;row-gap:70px;align-items:start}.project{padding:0;display:block;background:none;text-align:left;width:100%}.project-photo{position:relative;overflow:hidden;background:#dadbd3}.project-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1),filter .8s}.project:hover .project-photo img{transform:scale(1.05);filter:saturate(.85)}.project-roofs .project-photo{height:450px}.project-interiors{margin-top:110px}.project-interiors .project-photo{height:520px}.project-wood{width:84%;margin-top:-80px}.project-wood .project-photo{height:490px}.image-count{position:absolute;top:20px;left:20px;font-size:10px;letter-spacing:1.7px;padding:8px 12px;background:#f4f4eee8}.project-open{position:absolute;bottom:22px;left:24px;background:var(--paper);padding:12px 18px;font-size:13px;transform:translateY(80px);transition:.4s}.project:hover .project-open,.project:focus-visible .project-open{transform:translateY(0)}.project-meta{display:flex;justify-content:space-between;align-items:center;padding-top:22px;gap:20px}.project-meta small{display:block;font-size:10px;letter-spacing:1.7px;color:var(--muted);margin-bottom:8px}.project-meta strong{font-family:var(--display);font-size:25px;font-weight:500;letter-spacing:-.7px}.outline-arrow{font-size:30px;font-weight:400}.portfolio-note{align-self:center;padding:0 0 0 10%;margin-top:-70px}.note-cross{font-size:50px;line-height:1;color:var(--gold)}.portfolio-note p{font-family:var(--display);font-size:42px;line-height:1.2;letter-spacing:-1.5px;margin:25px 0}.portfolio-note p span{color:#8c9087}.gallery{position:fixed;inset:0;max-width:none;max-height:none;width:100%;height:100dvh;margin:0;padding:26px 5%;background:#111613;color:var(--paper);border:0;overflow:auto}.gallery::backdrop{background:#111}.gallery[open]{display:flex;flex-direction:column;animation:gallery-in .3s}.gallery-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.gallery-top h2{font-size:28px;margin:3px 0 0;letter-spacing:-1px}.gallery-top .eyebrow{font-size:10px;color:var(--gold)}.icon-button{background:none;border:1px solid #ffffff40;color:inherit;width:46px;height:46px;border-radius:50%;font-size:21px;display:grid;place-items:center;flex-shrink:0}.icon-button:hover{background:#ffffff1f}.gallery-stage{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:180px;flex:1;margin-top:18px;overflow:hidden}.gallery-image-wrap{height:100%;min-height:180px;flex:1;display:grid;place-items:center;overflow:auto;position:relative}.gallery-image-wrap img{width:100%;height:100%;max-height:calc(100dvh - 300px);object-fit:contain;transition:opacity .2s;user-select:none}.gallery-image-wrap.zoomed{display:block;overflow:auto}.gallery-image-wrap.zoomed img{max-width:none;width:auto;height:auto;max-height:none;min-width:100%;object-fit:initial}.gallery-info{display:flex;justify-content:space-between;gap:25px;align-items:center;font-size:13px;margin:12px 71px}.gallery-info p{margin:0}.gallery-info>span{white-space:nowrap;color:var(--gold)}.gallery-thumbs{display:flex;justify-content:center;gap:10px;min-height:64px;overflow-x:auto;padding:4px}.gallery-thumbs button{padding:3px;background:none;border:1px solid transparent;width:62px;height:58px;flex-shrink:0;opacity:.5}.gallery-thumbs img{width:100%;height:100%;object-fit:cover}.gallery-thumbs button[aria-current=true]{border-color:var(--gold);opacity:1}.gallery-thumbs button:hover{opacity:1}.gallery-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #fff2;margin-top:12px;padding-top:15px}.gallery-footer .text-button{font-size:12px;border:none;color:#cccec5}.gallery-footer>div{display:flex;gap:30px}[hidden]{display:none!important}.reveal{transition:opacity .8s,transform .8s}.reveal.pending{opacity:0;transform:translateY(35px)}@keyframes hero-drift{from{transform:scale(1)}to{transform:scale(1.075)}}@keyframes gallery-in{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}@media(min-width:1600px){.hero-card{width:300px}.hero-card-image{height:355px}}@media(max-width:1100px){.header nav{gap:20px}.hero-content{left:6%}.hero-card{right:6%;width:205px}.hero-card-image{height:240px}h1{font-size:92px}.hero-bottom-copy{gap:25px}.hero-bottom-copy p{font-size:15px}.hero-bottom-copy .button{padding:14px 17px;gap:15px;font-size:13px}.section-pad{padding:85px 6%}.project-meta strong{font-size:22px}.trust{gap:25px}}@media(max-width:760px){.header{height:80px;padding:0 6%;gap:15px}.brand img{height:53px;width:61px}.header nav{position:absolute;top:80px;left:0;right:0;background:var(--ink);padding:24px;display:none;flex-direction:column;align-items:stretch;gap:20px}.header nav.open{display:flex}.header-cta{margin-left:auto;padding:8px 12px;gap:15px;font-size:12px}.header-cta span{font-size:20px}.menu-toggle{display:block}.hero{height:850px;min-height:780px;max-height:1100px}.hero-topline{top:104px;left:6%;right:6%;font-size:9px;letter-spacing:1.2px}.hero-topline span:last-child{display:none}.hero-content{top:175px;left:6%;right:6%}.hero .eyebrow{font-size:9px;letter-spacing:1.5px}.short-line{width:20px}h1{font-size:clamp(60px,11.8vw,91px);letter-spacing:-.06em;margin-top:25px;margin-bottom:28px}.hero-bottom-copy{display:block}.hero-bottom-copy p{font-size:16px;margin-bottom:23px}.hero-bottom-copy .button{font-size:13px;padding:15px 20px;gap:35px}.hero-card{width:130px;right:7%;top:auto;bottom:115px;transform:rotate(5deg)}.hero-card-image{height:146px}.hero-card-label{padding:8px 2px 3px;font-size:7px;letter-spacing:.5px}.hero-card-label strong{font-size:10px}.hero-card-label .circle-arrow{display:none}.hero-bottom{left:6%;right:6%;height:76px;gap:20px}.hero-bottom .scroll-link{font-size:8px;letter-spacing:1px;gap:10px}.hero-caption{display:none}.hero-pager{gap:10px;font-size:10px}.slide-line{width:58px}.hero:after{top:80px;bottom:76px}.section-pad{padding:70px 6%}.intro>.eyebrow{margin-bottom:30px;font-size:10px}.intro-grid{grid-template-columns:1fr;gap:16px}h2{font-size:48px}.intro-text{font-size:18px}.trust{gap:30px;justify-content:space-between}.trust strong{font-size:28px}.trust span{font-size:11px}.section-heading{display:block;margin-bottom:35px}.section-heading .eyebrow{font-size:10px}.section-side{margin-top:25px}.section-side p{font-size:16px}.projects{display:flex;flex-direction:column;gap:42px}.project-interiors,.project-wood{margin-top:0;width:100%}.project-roofs .project-photo{height:320px}.project-interiors .project-photo{height:430px}.project-wood .project-photo{height:420px}.project-meta strong{font-size:22px}.portfolio-note{margin:5px 0 0;padding:10px 0 0;align-self:flex-start}.portfolio-note p{font-size:35px}.gallery{padding:18px 4%;height:100dvh}.gallery-top h2{font-size:21px}.gallery-top .eyebrow{font-size:9px}.gallery-stage{gap:7px}.gallery-stage .icon-button{width:32px;height:40px;border:0}.gallery-image-wrap img{max-height:calc(100dvh - 320px)}.gallery-info{margin:12px 4px;font-size:11px}.gallery-thumbs{justify-content:flex-start;max-width:100%}.gallery-footer{gap:10px;flex-wrap:wrap}.gallery-footer>div{gap:20px}.gallery-footer .text-button{font-size:11px}.project-open{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal.pending{opacity:1;transform:none}}
/* Immersive work archive */
.hero-background img{object-position:center 53%}.hero-card{width:270px;top:31%}.hero-card-image{height:310px;position:relative}.hero-card-image video{width:100%;height:100%;object-fit:cover}.hero-film-play{position:absolute;bottom:14px;right:14px;width:44px;height:44px;display:grid;place-items:center;border:1px solid #fff8;border-radius:50%;background:#0003;font-size:25px}.hero-card-label{font-size:12px;letter-spacing:.6px}.hero-card-label strong{font-size:14px}.hero-topline,.hero-bottom,.eyebrow,.hero-topline span,.hero-bottom .scroll-link,.hero-pager{font-size:12px}.hero-content{animation:content-enter 1.3s cubic-bezier(.2,.7,.2,1) both}.hero-card{animation:card-enter 1.6s cubic-bezier(.2,.7,.2,1) both}.portfolio-filters{display:flex;gap:12px;margin-bottom:38px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:16px}.portfolio-filters button{background:none;padding:8px 18px;border-radius:2px;font-size:14px;color:var(--muted);transition:.3s}.portfolio-filters button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.portfolio-filters span{font-size:12px;margin-left:12px;color:var(--gold)}.projects{row-gap:58px}.project{transition:transform .3s}.project .project-photo{height:490px}.project:nth-child(even){margin-top:95px}.project:nth-child(3n) .project-photo{height:420px}.project:last-child:nth-child(odd){width:100%}.projects.filtered .project{margin-top:0}.image-count,.project-meta small{font-size:12px;letter-spacing:1px}.project-meta strong{font-size:26px}.portfolio-end{display:flex;justify-content:space-between;gap:25px;padding-top:55px;margin-top:50px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}.films{background:var(--ink);color:var(--paper);overflow:hidden;padding-right:0}.films>.section-heading{padding-right:9%}.films .eyebrow{color:var(--gold)}.films .section-side p{color:#b6beb3}.film-controls{display:flex;gap:10px}.film-track{display:flex;gap:25px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:12px 8.9% 12px 0;user-select:none}.film-track::-webkit-scrollbar{display:none}.film-card{position:relative;flex:0 0 28%;height:490px;background:#28332c;padding:0;overflow:hidden;scroll-snap-align:start;border:1px solid #ffffff1a;color:white;text-align:left;isolation:isolate}.film-card:after{content:'';inset:0;position:absolute;background:linear-gradient(0deg,#000b,transparent 50%,#0005);z-index:-1}.film-card img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0;z-index:-2;transition:transform .8s}.film-card:hover img{transform:scale(1.06)}.film-number{position:absolute;top:24px;left:24px;font-size:12px;letter-spacing:1px}.film-play{width:65px;height:65px;border:1px solid #fff8;display:grid;place-items:center;position:absolute;top:45%;left:calc(50% - 32px);border-radius:50%;background:#ffffff15;backdrop-filter:blur(5px);font-size:35px;transition:.4s}.film-card:hover .film-play{background:var(--gold);border-color:var(--gold);color:var(--ink);transform:scale(1.08)}.film-label{position:absolute;bottom:24px;left:24px;right:24px;font-family:var(--display);font-size:22px;line-height:1.3}.film-label small{display:block;font:12px var(--body);color:#ddddd2;margin-top:12px}.films-bottom{display:flex;justify-content:space-between;margin:28px 9% 0 0;font-size:12px;letter-spacing:1px;color:#8c998c}.film-track.dragging{scroll-snap-type:none;cursor:grabbing}.film-track.dragging *{cursor:grabbing}.moving-type{overflow:hidden;padding:48px 0;border-bottom:1px solid var(--line)}.moving-type>div{width:max-content;white-space:nowrap;font-family:var(--display);font-size:clamp(60px,7vw,116px);line-height:1.1;letter-spacing:-4px;will-change:transform}.moving-type em{font-family:Georgia,serif;font-weight:400;color:#a8ad9f}.moving-type span{padding-left:35px}.services{display:grid;grid-template-columns:1fr 1.1fr;gap:9%;align-items:start}.service-intro{position:sticky;top:80px}.service-intro h2{font-size:clamp(42px,4vw,67px);margin-top:25px}.service-intro>p:not(.eyebrow){color:var(--muted);max-width:350px}.service-list details{border-top:1px solid var(--line);padding:26px 0}.service-list details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;gap:22px;align-items:center}summary::-webkit-details-marker{display:none}summary>span{font-size:12px;color:var(--muted)}summary h3{margin:0;font-size:23px;letter-spacing:-.7px;flex:1;line-height:1.3}summary i{font-style:normal;font-size:24px;font-weight:400;transition:.3s}.service-list details[open] summary i{transform:rotate(45deg)}.service-list details[open] summary{color:#907147}.service-list details p{margin:18px 34px 0 42px;color:var(--muted);font-size:16px}.process{background:#e7e9e0;border-block:1px solid var(--line)}.process .section-heading>p{color:var(--muted);font-size:16px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.process-grid article{border-top:1px solid #b5baab;padding-top:20px}.step{font-size:12px;color:#777f6c;display:block;margin-bottom:40px}.process-grid h3{font-size:26px;line-height:1.3;letter-spacing:-.8px}.process-grid p{color:#5b6255;font-size:16px;line-height:1.65}.team{display:grid;grid-template-columns:1fr 1fr;background:#242b24;color:var(--paper)}.team-image{height:660px;overflow:hidden}.team-image img{width:100%;height:100%;object-fit:cover;object-position:center 48%}.team-copy{padding:85px 14% 70px 13%;display:flex;flex-direction:column;justify-content:center}.team-copy h2{font-size:clamp(38px,3.8vw,61px);margin-top:20px}.team-copy .eyebrow{color:var(--gold)}.team-copy>p:not(.eyebrow){color:#bac2b5;font-size:17px;margin-bottom:30px}.team-copy .button{align-self:flex-start;font-size:14px;gap:20px}.contact{padding-top:110px}.contact>.eyebrow{color:var(--muted)}.contact-top{display:flex;justify-content:space-between;align-items:center;margin-top:42px;padding-bottom:65px;border-bottom:1px solid var(--line)}.contact-top h2{font-size:clamp(66px,7vw,116px);margin-bottom:0}.contact-orbit{width:175px;height:175px;border:1px solid #c2c6b8;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:16px;line-height:1.3;transition:.4s;text-align:center;flex-shrink:0}.contact-orbit strong{font-weight:400;font-size:42px;line-height:1.2}.contact-orbit:hover{background:var(--ink);color:var(--paper);transform:rotate(-7deg)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:55px}.contact-lead{font-family:var(--display);font-size:26px;letter-spacing:-.6px}.contact-grid p:not(.contact-lead){color:var(--muted);font-size:16px}.contact-grid p.eyebrow{font-size:12px}.phone-links{display:flex;gap:30px;margin:36px 0 28px;flex-wrap:wrap}.phone-links a{font-family:var(--display);font-size:20px;font-weight:500}.phone-links a small{display:block;font:12px var(--body);letter-spacing:1px;color:var(--muted);margin-bottom:7px}.phone-links a span{margin-left:5px}.email{font-size:16px;border-bottom:1px solid var(--line);padding-bottom:7px;overflow-wrap:anywhere}.contact iframe{height:190px;width:100%;border:0;filter:grayscale(1);margin-top:10px}footer{padding:50px 8.2% 24px;background:var(--ink);color:#c5cbc0}.footer-main{display:flex;gap:42px;justify-content:space-between;align-items:center}.footer-logo{width:90px;height:80px;object-fit:contain}.footer-main>p{font-size:14px;margin:0}.footer-links{display:flex;flex-direction:column;gap:10px;font-size:14px}.footer-links .text-button{font-size:12px;border:0;padding:0;color:#8e9a87}.impic{width:105px;height:83px;object-fit:contain;background:white;padding:8px}.footer-bottom{border-top:1px solid #ffffff25;display:flex;justify-content:space-between;margin-top:40px;padding-top:22px;font-size:12px;color:#93a08b}.floating-contact{position:fixed;right:25px;bottom:25px;z-index:40;width:54px;height:54px;border:1px solid #b5c4a97a;border-radius:50%;background:#26392c;color:#fff;display:grid;place-items:center;box-shadow:0 6px 25px #0002;transition:.3s}.floating-contact:hover{background:#416144;transform:translateY(-3px)}.floating-contact svg{width:27px;height:27px}.page-progress{position:fixed;top:0;left:0;right:0;height:2px;background:var(--gold);z-index:60;transform:scaleX(0);transform-origin:left}.view-cursor{position:fixed;z-index:42;width:100px;height:100px;border-radius:50%;background:#f4f4eee8;color:var(--ink);display:grid;place-items:center;pointer-events:none;transform:translate(-50%,-50%) scale(.4);opacity:0;transition:opacity .2s,transform .2s;font-size:12px;letter-spacing:.5px;backdrop-filter:blur(4px)}.view-cursor.visible{opacity:1;transform:translate(-50%,-50%) scale(1)}.gallery-top h2{font-size:29px}.gallery-top .eyebrow{font-size:12px}#gallery-description{font-size:14px;color:#a7b0a1;max-width:800px;margin:7px 0 0;line-height:1.5}.gallery-image-wrap video{height:100%;width:100%;max-height:calc(100dvh - 340px);object-fit:contain}.gallery-image-wrap img{max-height:calc(100dvh - 340px)}.gallery-thumbs{justify-content:flex-start;max-width:90vw;margin-inline:auto;scrollbar-width:thin}.gallery-thumbs button{position:relative}.gallery-thumbs button span{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:26px;text-shadow:0 1px 4px #000}.gallery-info{font-size:14px}.gallery-footer .text-button{font-size:14px}.gallery-info>span{font-size:12px}.image-error{position:absolute;bottom:15px;background:#111c;padding:12px;font-size:14px}.gallery-image-wrap.zoomed img{max-height:none}.motion-paused *{animation-play-state:paused!important}.motion-paused .view-cursor{display:none}.motion-paused .reveal.pending{opacity:1;transform:none}
@keyframes content-enter{from{opacity:0;translate:0 35px;filter:blur(8px)}to{opacity:1;translate:0 0;filter:blur(0)}}@keyframes card-enter{from{opacity:0;translate:70px 20px;rotate:8deg}to{opacity:1;translate:0 0;rotate:0deg}}
@media(min-width:1600px){.hero-card{width:330px}.hero-card-image{height:385px}.film-card{height:540px}}@media(max-width:1100px){.hero-card{width:210px;right:5%}.hero-card-image{height:260px}.hero-card-label{font-size:10px}.hero-card-label strong{font-size:12px}.project .project-photo{height:420px}.project-meta strong{font-size:22px}.film-card{flex-basis:36%;height:440px}.services{gap:6%}.process-grid{grid-template-columns:repeat(2,1fr);gap:35px}.step{margin-bottom:25px}.team-copy{padding:60px 10%}.team-image{height:590px}.footer-main{gap:25px;flex-wrap:wrap}.contact-orbit{height:145px;width:145px}.header nav{gap:18px}}@media(max-width:760px){.hero-topline{font-size:12px;line-height:1.6;letter-spacing:.7px}.hero .eyebrow{font-size:12px;letter-spacing:.4px;gap:10px}.hero-topline span{font-size:12px}.hero-content{top:170px}.hero-card{width:146px;top:auto;bottom:108px;right:7%;padding:6px}.hero-card-image{height:144px}.hero-card-label{font-size:10px;padding:7px 2px 3px}.hero-card-label strong{font-size:12px}.hero-film-play{height:30px;width:30px;bottom:8px;right:8px;font-size:21px}.hero-bottom .scroll-link{font-size:10px;max-width:175px;letter-spacing:.7px}.hero-bottom-copy p{font-size:16px}.hero-bottom-copy .button{font-size:14px}.hero-pager{font-size:12px;gap:8px}.slide-line{width:38px}.hero-pause{padding:8px}.section-heading .eyebrow,.intro>.eyebrow{font-size:12px;letter-spacing:1px}.trust span{font-size:12px}.portfolio-filters{gap:4px}.portfolio-filters button{font-size:14px;padding:8px 11px}.portfolio-filters span{display:none}.project:nth-child(even){margin:0}.project .project-photo,.project:nth-child(3n) .project-photo{height:430px}.project:nth-child(3) .project-photo{height:330px}.project-meta small,.image-count{font-size:12px;letter-spacing:.4px}.project-meta strong{font-size:24px}.portfolio-end{flex-direction:column;padding-top:28px;margin-top:30px}.portfolio-end .text-button{align-self:flex-start}.films>.section-heading{padding-right:6%}.films .section-heading{display:flex;align-items:end;gap:18px}.films .section-side{margin:0}.films .section-side p{display:none}.film-controls{gap:8px}.film-controls .icon-button{width:38px;height:38px}.film-card{flex-basis:76%;height:420px}.film-track{gap:16px;padding-right:6%}.films-bottom span:last-child{display:none}.moving-type{padding:30px 0}.moving-type>div{font-size:64px;letter-spacing:-2px}.services{display:block}.service-intro{position:static;margin-bottom:45px}.service-intro h2{font-size:48px}.service-list details{padding:23px 0}.service-list summary h3{font-size:22px}.service-list summary{gap:17px}.service-list details p{margin-left:32px;margin-right:10px}.process .section-heading>p{margin:25px 0 0}.process h2{font-size:43px}.process-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.process-grid h3{font-size:22px}.process-grid p{font-size:16px}.step{margin-bottom:24px}.team{display:flex;flex-direction:column}.team-image{height:470px}.team-copy{padding:55px 6%}.team-copy h2{font-size:46px}.contact-top{gap:25px;align-items:end;flex-wrap:wrap;margin-top:30px;padding-bottom:35px}.contact-top h2{font-size:59px}.contact-orbit{height:105px;width:105px;font-size:13px;margin-top:5px}.contact-orbit strong{font-size:32px}.contact-grid{grid-template-columns:1fr;gap:42px;padding-top:35px}.contact-lead{font-size:24px}.phone-links{gap:22px}.phone-links a{font-size:19px}.footer-main{gap:30px;align-items:start}.footer-main>p{width:calc(100% - 125px);padding-top:12px}.footer-links{flex:1}.footer-bottom{gap:20px;font-size:12px}.floating-contact{width:48px;height:48px;right:16px;bottom:18px}.gallery-top h2{font-size:23px}.gallery-top .eyebrow{font-size:12px;letter-spacing:1px}#gallery-description{font-size:13px;max-width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gallery-image-wrap img,.gallery-image-wrap video{max-height:calc(100dvh - 350px)}.gallery-info{font-size:12px}.gallery-thumbs{min-height:61px;max-width:90vw}.gallery-footer .text-button{font-size:12px;min-height:35px}.gallery-footer{padding-top:6px;margin-top:8px}.gallery-footer>div{gap:14px}.view-cursor{display:none}}
@media(max-width:380px){.hero{height:880px}.hero-card{bottom:106px}.hero-content{top:166px}.hero .eyebrow{font-size:11px}.hero-bottom .scroll-link{max-width:130px}.process-grid{grid-template-columns:1fr}.hero-bottom-copy .button{gap:20px}.gallery-footer>div{gap:8px}.contact-top h2{font-size:53px}.phone-links{flex-direction:column}}@media(prefers-reduced-motion:reduce){.reveal.pending{opacity:1;transform:none}.hero-content,.hero-card{animation:none}.view-cursor{display:none}}

@media(max-width:760px){.hero-bottom .scroll-link{font-size:12px;letter-spacing:0}.hero-card-label{font-size:12px;line-height:1.4}.hero-card-label strong{font-size:12px}.hero-card-label>span:first-child{font-size:0}.hero-card-label strong{display:block;font-size:12px;line-height:1.4}.hero .eyebrow{font-size:12px}.header-cta{font-size:14px}.hero-card{bottom:108px}.film-track:focus-visible{outline:2px solid var(--gold);outline-offset:6px}}
