@import"https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;500;600;700&family=Space+Grotesk:wght@300;400;500;600&display=swap";*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden}body{font-family:Space Grotesk,system-ui,sans-serif;background:#f0ede8;color:#111}.shell{display:flex;flex-direction:column;height:100vh;overflow:hidden}.header{display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,3.5vw,52px);height:56px;border-bottom:1px solid rgba(0,0,0,.08);flex-shrink:0;background:#f0ede8;z-index:10}.wordmark{font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#111;background:none;border:none;cursor:pointer;font-family:inherit;padding:0}.nav{display:flex;gap:clamp(20px,3vw,40px)}.nav button{font-size:10px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:#00000061;background:none;border:none;cursor:pointer;font-family:inherit;padding:0;transition:color .15s;position:relative}.nav button:hover,.nav button.active{color:#111}.nav button.active:after{content:"";position:absolute;bottom:-4px;left:0;right:0;height:1px;background:#111}.content{flex:1;overflow:hidden;display:flex;flex-direction:column;animation:pageIn .32s ease;min-height:0}@keyframes pageIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.site-footer{height:40px;flex-shrink:0;border-top:1px solid rgba(0,0,0,.07);display:flex;align-items:center;padding:0 clamp(20px,3.5vw,52px);background:#f0ede8}.site-footer span{font-size:9px;font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:#00000047}.work-descriptor{display:flex;align-items:center;padding:0 clamp(20px,3.5vw,52px);height:44px;border-bottom:1px solid rgba(0,0,0,.08);flex-shrink:0}.hero-descriptor{font-family:Barlow Condensed,sans-serif;font-weight:500;font-size:clamp(16px,2.4vw,30px);letter-spacing:.04em;text-transform:uppercase;color:#111}.grid{flex:1;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;overflow:hidden;min-height:0}.tile{position:relative;display:block;border:none;border-right:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(0,0,0,.1);overflow:hidden;cursor:pointer;padding:0;background:#1a1a1a}.tile:nth-child(2),.tile:nth-child(4){border-right:none}.tile:nth-child(3),.tile:nth-child(4){border-bottom:none}.tile-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform .6s ease,filter .4s ease;filter:brightness(.88) saturate(.9)}.tile:hover .tile-image{transform:scale(1.04);filter:brightness(.72) saturate(.85)}.tile-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 35%,rgba(0,0,0,.18) 60%,rgba(0,0,0,.72) 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(14px,2.5vw,28px);transition:background .4s ease}.tile:hover .tile-overlay{background:linear-gradient(to bottom,transparent 20%,rgba(0,0,0,.28) 55%,rgba(0,0,0,.82) 100%)}.tile-label{display:block;font-size:9px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:#fff9;margin-bottom:5px;opacity:.7;transform:translateY(4px);transition:transform .35s ease,opacity .35s ease}.tile:hover .tile-label{transform:translateY(0);opacity:1}.tile-client{display:block;font-family:Barlow Condensed,sans-serif;font-weight:600;font-size:clamp(20px,3.2vw,42px);line-height:1;letter-spacing:.06em;text-transform:uppercase;color:#fff;transition:letter-spacing .35s ease}.tile:hover .tile-client{letter-spacing:.1em}.tile-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.8);width:clamp(40px,5vw,56px);height:clamp(40px,5vw,56px);background:#ffffff26;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;opacity:0;transition:opacity .3s ease,transform .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.25)}.tile-play svg{width:40%;height:40%;margin-left:3px}.tile:hover .tile-play{opacity:1;transform:translate(-50%,-50%) scale(1)}.about-page{flex:1;display:grid;grid-template-columns:.78fr 1.3fr;overflow:hidden;min-height:0}.about-image-col{border-right:1px solid rgba(0,0,0,.08);overflow:hidden;position:relative;background:#1a1a1a}.about-portrait{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:48% 28%;display:block;transform:scale(1.1);transform-origin:48% 28%}.about-text-col{padding:clamp(32px,5vw,64px) clamp(24px,4vw,56px);overflow-y:auto;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:9px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:#00000059;margin-bottom:16px}.about-name{font-family:Barlow Condensed,sans-serif;font-weight:600;font-size:clamp(36px,5.5vw,72px);line-height:.92;letter-spacing:.02em;text-transform:uppercase;color:#111;margin-bottom:24px}.rule{width:32px;height:2px;background:#111;margin-bottom:24px}.about-bio{font-size:clamp(13px,1.3vw,15px);font-weight:400;line-height:1.78;color:#000000a6;margin-bottom:18px;max-width:520px}.contact-page{flex:1;display:grid;grid-template-columns:1fr 1.4fr;overflow:hidden;min-height:0}.contact-intro-col{border-right:1px solid rgba(0,0,0,.08);padding:clamp(40px,6vw,80px) clamp(24px,4vw,56px);display:flex;flex-direction:column;justify-content:center}.contact-heading{font-family:Barlow Condensed,sans-serif;font-weight:600;font-size:clamp(48px,6.5vw,88px);line-height:.88;letter-spacing:.01em;text-transform:uppercase;color:#111;margin-bottom:20px}.contact-subtext{font-size:clamp(12px,1.2vw,14px);font-weight:400;line-height:1.75;color:#0000007a;max-width:280px}.contact-form-col{overflow-y:auto;display:flex;align-items:center}.contact-form-inner{width:100%;padding:clamp(40px,6vw,80px) clamp(28px,4.5vw,64px)}.contact-form{display:flex;flex-direction:column;gap:24px;max-width:440px}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-size:9px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:#00000061}.form-input{width:100%;padding:10px 0;background:transparent;border:none;border-bottom:1px solid rgba(0,0,0,.18);font-family:inherit;font-size:14px;color:#111;outline:none;transition:border-color .2s;resize:none;border-radius:0;-webkit-appearance:none}.form-input:focus{border-bottom-color:#111}.form-textarea{min-height:90px;line-height:1.6}.btn-outline{display:inline-block;margin-top:8px;padding:11px 28px;border:1px solid #111;font-family:inherit;font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#111;text-decoration:none;cursor:pointer;transition:background .2s,color .2s;background:none}.btn-outline:hover{background:#111;color:#f0ede8}.btn-solid{align-self:flex-start;padding:12px 32px;background:#111;color:#f0ede8;border:1px solid #111;font-family:inherit;font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s}.btn-solid:hover{background:transparent;color:#111}.btn-solid:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{align-self:flex-start;padding:10px 24px;background:none;border:1px solid rgba(0,0,0,.22);font-family:inherit;font-size:9px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;color:#00000073;transition:all .15s}.btn-ghost:hover{border-color:#111;color:#111}.placeholder-label{font-size:8px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:#00000040}.success-state{display:flex;flex-direction:column;gap:14px;max-width:400px;margin-top:8px}.success-title{font-family:Barlow Condensed,sans-serif;font-weight:600;font-size:28px;letter-spacing:.1em;text-transform:uppercase;color:#111}.success-sub{font-size:14px;color:#00000080;line-height:1.65;margin-bottom:8px}.modal-overlay{position:fixed;inset:0;background:#000000e0;display:flex;align-items:center;justify-content:center;z-index:100;animation:fadeIn .25s ease;padding:clamp(16px,4vw,48px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-box{width:100%;max-width:960px;display:flex;flex-direction:column;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px}.modal-title{font-family:Barlow Condensed,sans-serif;font-weight:600;font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:#ffffffb3}.modal-close{background:none;border:1px solid rgba(255,255,255,.2);cursor:pointer;font-size:10px;font-family:inherit;font-weight:500;letter-spacing:.14em;color:#ffffff80;padding:6px 14px;transition:all .15s;text-transform:uppercase}.modal-close:hover{color:#fff;border-color:#ffffff80}.modal-player{position:relative;width:100%;aspect-ratio:16 / 9;background:#0a0a0a;overflow:hidden}.modal-player iframe{position:absolute;inset:0;width:100%;height:100%;border:none}@media(max-width:768px){.content{overflow-y:auto}.tile:nth-child(1) .tile-image{object-position:82% 22%}.tile:nth-child(3) .tile-image{object-position:22% 38%}.tile-label{opacity:1;transform:translateY(0)}.tile-play{opacity:.75;transform:translate(-50%,-50%) scale(1)}.about-page{display:block;overflow-y:auto;height:auto;min-height:100%}.about-image-col{display:none}.about-text-col{width:100%;overflow-y:visible;justify-content:flex-start;padding:36px 24px 56px;border-right:none}.about-name{font-size:clamp(34px,10vw,52px);margin-bottom:18px}.about-bio{font-size:14px;margin-bottom:16px}.contact-page{display:flex;flex-direction:column;overflow:visible;height:auto;min-height:100%}.contact-intro-col{flex-shrink:0;border-right:none;border-bottom:1px solid rgba(0,0,0,.08);padding:32px 20px 24px;justify-content:flex-start;background:transparent}.contact-heading{font-size:clamp(44px,13vw,68px);margin-bottom:12px}.contact-subtext{font-size:13px;max-width:100%}.contact-form-col{flex:1;align-items:flex-start;overflow-y:visible}.contact-form-inner{padding:28px 20px 48px;width:100%}.contact-form{max-width:100%;gap:22px}.btn-solid{width:100%;text-align:center;padding:14px 24px}.work-descriptor{padding:0 14px;height:40px}.hero-descriptor{font-size:13px;letter-spacing:.015em;white-space:nowrap}.wordmark{font-size:10px;letter-spacing:.14em}.nav{gap:16px}.nav button{font-size:9px;letter-spacing:.12em}.site-footer{height:36px}}
