@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=Inter:wght@400;500;600&display=swap');
:root{color-scheme:dark;--bg:#090909;--text:#e1dcd9;--muted:#aaa4a0;--line:#302d2b;--accent:#fd5539}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}header{padding:27px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);max-width:1700px;margin:auto}.logo{font-size:26px;font-weight:600;letter-spacing:-1.5px}.logo span{vertical-align:top;font-size:12px;letter-spacing:0;margin-left:3px}nav{display:flex;gap:34px;font-size:14px}nav a:hover{color:var(--accent)}main,footer{max-width:1700px;margin:auto}.hero{padding:38px 5% 0;overflow:hidden}.hero-top{display:flex;justify-content:space-between;gap:20px}.eyebrow,.hero-top>span{font-size:12px;letter-spacing:.09em;font-weight:400;color:var(--muted);margin:0}.hero h1{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(110px,25vw,400px);font-weight:600;line-height:.91;letter-spacing:-.035em;margin:18px 0 32px;position:relative}.hero h1>span{font-family:Inter,sans-serif;font-size:.11em;vertical-align:top;display:inline-block;letter-spacing:0;margin:20px 0 0 12px}.hero-bottom{display:flex;justify-content:space-between;align-items:end;margin-bottom:55px}.hero-bottom p{font-size:clamp(20px,2.2vw,32px);line-height:1.3;letter-spacing:-.025em;margin:0}.hero-link{border-bottom:1px solid var(--text);padding:16px 0;min-width:200px;display:flex;justify-content:space-between;font-size:15px}.hero-link span{color:var(--accent)}.visual-strip{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:18px;align-items:center;padding:15px 0 35px}.visual-strip a{display:block;overflow:hidden;border-radius:4px}.visual-strip a:nth-child(even){transform:translateY(25px)}.visual-strip img{width:100%;height:300px;object-fit:cover;display:block;transition:transform .6s}.visual-strip a:hover img{transform:scale(1.04)}.about{padding:130px 5%;display:grid;grid-template-columns:1fr 3fr;gap:30px}.about h2{font-family:Inter,sans-serif;text-transform:none;font-size:clamp(28px,3.6vw,56px);font-weight:400;line-height:1.2;letter-spacing:-.04em}.about h2 span{color:#74706d}.about p:not(.eyebrow){font-size:17px;line-height:1.65;max-width:580px;color:var(--muted);margin:28px 0 0}h2{font-family:'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;font-size:clamp(42px,6vw,88px);font-weight:500;line-height:1;letter-spacing:-.015em;margin:0}.projects{padding:0 5% 100px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:45px}.section-head .eyebrow{margin-bottom:22px}.tabs{display:flex;border-bottom:1px solid var(--line);gap:22px;flex-shrink:0}.tabs button{background:transparent;color:var(--muted);border:0;border-bottom:2px solid transparent;padding:13px 0;font-size:14px;cursor:pointer}.tabs button[aria-selected=true]{color:var(--text);border-color:var(--accent)}.grid{display:grid;grid-template-columns:1fr 1fr;gap:60px 30px;align-items:start}.card{display:block;min-width:0}.card:nth-child(even){margin-top:90px}.card img{width:100%;height:560px;object-fit:contain;background:#141414;display:block;border-radius:3px;transition:background .4s}.card:hover img{background:#24211f}.card-copy{padding:23px 0 0;position:relative;border-top:1px solid var(--line);margin-top:18px}.card-copy>p{font-size:12px;color:var(--muted);margin:0 0 12px;letter-spacing:.04em}.card h3{font-size:clamp(24px,2.7vw,40px);font-weight:400;letter-spacing:-.035em;margin:0 35px 0 0}.card-copy .description{font-size:15px;line-height:1.6;max-width:440px;letter-spacing:0;margin:16px 0 0}.arrow{position:absolute;right:2px;top:40px;font-size:28px;transition:transform .3s}.card:hover .arrow{transform:translate(3px,-3px);color:var(--accent)}.all{display:block;width:max-content;max-width:100%;margin:65px auto 0;border-bottom:1px solid var(--muted);padding:15px 0;font-size:14px}.empty{border:1px solid var(--line);padding:60px 30px}.empty>span{font-size:12px;color:var(--accent);letter-spacing:.1em}.empty h3{font-size:40px;font-weight:400;letter-spacing:-.04em;margin:25px 0}.empty p{font-size:16px;color:var(--muted)}.expertise{padding:60px 5% 110px;border-top:1px solid var(--line)}.expertise .section-head{align-items:start}.service-row{display:grid;grid-template-columns:70px 1.3fr 1fr;align-items:center;gap:20px;padding:35px 0;border-bottom:1px solid var(--line)}.service-row>span{font-size:14px;color:var(--accent)}.service-row h3{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(32px,4vw,58px);text-transform:uppercase;font-weight:500;margin:0}.service-row p{font-size:15px;color:var(--muted);line-height:1.5}.contact{padding:70px 5% 80px;background:#111110}.contact h2{font-size:clamp(65px,11vw,166px);line-height:.96;margin:32px 0}.contact h2 span{color:var(--accent);margin-left:18px;font-family:Inter,sans-serif;font-size:.65em}.contact-link{display:inline-block;font-size:16px;border-bottom:1px solid var(--text);padding:16px 0}footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:35px 5%;border-top:1px solid var(--line)}footer p,footer>a:last-child{font-size:12px;color:var(--muted)}[hidden]{display:none!important}.skip{position:absolute;top:-100px}.skip:focus{top:5px;z-index:30;background:#090909;padding:15px}@media(max-width:760px){header{padding:23px 5%}nav{gap:18px;font-size:12px}.logo{font-size:24px}.hero{padding-top:28px}.hero-top>span{display:none}.hero h1{font-size:27vw;margin:25px 0}.hero h1>span{margin-top:7px;margin-left:6px}.hero-bottom{align-items:start;gap:24px;flex-direction:column;margin-bottom:25px}.hero-bottom p{font-size:23px}.hero-link{min-width:180px}.visual-strip{display:flex;overflow:auto;scroll-snap-type:x mandatory;padding:15px 0 28px;gap:14px}.visual-strip a{flex:0 0 64%;scroll-snap-align:start}.visual-strip a:nth-child(even){transform:none}.visual-strip img{height:280px}.about{padding:75px 5%;grid-template-columns:1fr;gap:24px}.about h2{font-size:30px}.section-head{display:block}.tabs{width:max-content;margin-top:25px}.projects{padding-bottom:70px}.grid{grid-template-columns:1fr;gap:38px}.card:nth-child(even){margin-top:0}.card img{height:auto;max-height:530px;min-height:280px;object-fit:contain}.card h3{font-size:28px}.expertise{padding:45px 5% 70px}.expertise h2{margin-top:25px}.service-row{grid-template-columns:30px 1fr;gap:12px;padding:25px 0}.service-row p{grid-column:2;margin:0}.service-row h3{font-size:38px}.contact{padding:50px 5%}.contact h2{font-size:15vw}.contact h2 span{margin-left:8px}footer{flex-wrap:wrap}footer p{order:3;width:100%;margin:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Portrait-led opening */
header{border-bottom:0;padding:24px 5%;position:relative;z-index:5}header nav{gap:36px}header .logo{font-size:22px}.portrait-hero{position:relative;text-align:center;padding:20px 5% 70px;isolation:isolate}.portrait-hero .hero-top{max-width:1400px;margin:auto}.portrait-hero h1{font-family:Inter,Arial,sans-serif;font-weight:500;font-size:clamp(90px,20vw,315px);line-height:1;letter-spacing:-.08em;margin:52px 0 0;position:relative;z-index:0}.portrait-hero h1>span{font-size:.09em;letter-spacing:0;margin:20px 0 0 10px}.portrait{position:relative;z-index:1;width:min(720px,80vw);margin:-30px auto 0;aspect-ratio:1;mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 55%,transparent 98%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 55%,transparent 98%)}.portrait img{display:block;width:100%;height:100%;object-fit:contain;mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent)}.portrait-intro{position:relative;z-index:2;margin:-90px auto 0;max-width:800px}.portrait-intro .eyebrow{color:var(--accent);margin-bottom:25px}.portrait-intro h2{font-family:Inter,Arial,sans-serif;text-transform:none;font-size:clamp(32px,4.6vw,68px);line-height:1.08;letter-spacing:-.045em;font-weight:400}.portrait-intro>p:not(.eyebrow){font-size:17px;line-height:1.6;color:var(--muted);margin:25px auto;max-width:600px}.portrait-intro .hero-link{display:inline-flex;gap:38px;min-width:0;margin-top:6px}.portrait-hero+.about{border-top:1px solid var(--line);padding-top:85px}@media(max-width:760px){header nav{gap:18px}.portrait-hero{padding:15px 5% 60px}.portrait-hero .hero-top{justify-content:center}.portrait-hero h1{font-size:21vw;margin:40px 0 0}.portrait-hero h1>span{margin:7px 0 0 5px}.portrait{width:100%;margin:0 auto;max-width:530px}.portrait-intro{margin:-35px auto 0}.portrait-intro h2{font-size:clamp(29px,7.6vw,45px)}.portrait-intro>p:not(.eyebrow){font-size:16px}.desktop-break{display:none}.portrait-hero+.about{padding-top:60px}}

/* Rounded surfaces and aligned four-project grid */
.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch}
.card,.card:nth-child(even){margin-top:0;display:flex;flex-direction:column;background:#171719;border:1px solid #ffffff0a;border-radius:30px;overflow:hidden;transition:transform .35s ease,box-shadow .35s ease}
.card:hover{transform:translateY(-5px);box-shadow:0 20px 50px #0004}
.card img{height:460px;min-height:0;max-height:none;border-radius:0;object-fit:contain;background:#121214}
.card-copy{flex:1;padding:26px 28px 30px;margin:0;border:0;min-height:180px}
.card h3{font-size:clamp(24px,2.5vw,36px)}
.card-copy .arrow{top:47px;right:27px}
.tabs{padding:5px;gap:4px;background:#1d1d1f;border:1px solid #ffffff0b;border-radius:999px}
.tabs button{padding:12px 19px;border:0;border-radius:999px}
.tabs button[aria-selected=true]{background:#38383b;color:#fff;box-shadow:0 2px 8px #0003}
.empty{background:#171719;border-radius:30px}
.contact{border-radius:36px;margin:0 3% 24px}
.contact-link,.portrait-intro .hero-link{border:1px solid #ffffff20;background:#242426;border-radius:999px;padding:17px 25px}
.contact-link:hover,.portrait-intro .hero-link:hover{background:#343437}
.portrait img{border-radius:32px}
@media(max-width:760px){.grid{gap:20px}.card,.card:nth-child(even){border-radius:24px}.card img{height:340px}.card-copy{padding:22px;min-height:190px}.card-copy .arrow{right:20px;top:42px}.contact{border-radius:28px}.tabs{width:max-content;max-width:100%}.tabs button{font-size:14px;padding:11px 15px}}
@media(max-width:580px){.grid{grid-template-columns:1fr}.card img{height:420px}.card-copy{min-height:0}.contact{margin:0 4% 20px}}

.contact-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.contact-actions .contact-link{margin:0}.contact-actions .contact-link:first-child{background:var(--text);color:var(--bg)}.contact-actions .contact-link:first-child:hover{background:#fff}@media(max-width:580px){.contact-actions{align-items:stretch;flex-direction:column}.contact-actions .contact-link{text-align:center}}
