@font-face{font-family:Montserrat;src:url('assets/montserrat-light.ttf') format('truetype');font-style:normal;font-weight:300;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/montserrat-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{--leaf-orange:#f39200;--leaf-gray:#556276;--edge:clamp(28px,4.45vw,80px);color-scheme:dark}
*{box-sizing:border-box}html,body{margin:0;background:var(--leaf-gray)}body{font-family:Montserrat,Arial,sans-serif;color:#fff}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--leaf-orange);outline-offset:10px}
.hero{position:relative;isolation:isolate;width:100%;height:100vh;height:100svh;min-height:480px;overflow:hidden}
.hero__image,.hero__shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero__image{object-fit:cover;object-position:50% 48%}.hero__shade{z-index:-1;background:linear-gradient(180deg,rgba(12,18,22,.38),transparent 36%,rgba(12,18,22,.08) 50%,rgba(12,18,22,.65))}
.header{position:absolute;top:clamp(30px,4.6vh,52px);left:var(--edge);right:var(--edge);display:flex;align-items:center;justify-content:space-between;gap:40px}.brand{display:block;width:clamp(170px,15.3vw,228px);flex-shrink:0}.brand img{display:block;width:100%;height:auto}nav a{display:flex;align-items:center;gap:13px;font-size:11px;font-weight:400;letter-spacing:.13em;padding:14px 0}nav span{height:4px;width:4px;border-radius:50%;background:var(--leaf-orange)}
.hero__copy{position:absolute;left:var(--edge);bottom:clamp(92px,14vh,160px);right:var(--edge)}h1{font-size:clamp(32px,3.7vw,64px);font-weight:300;line-height:1.23;letter-spacing:-.045em;margin:0;text-shadow:0 2px 20px #0003}.project{position:absolute;left:var(--edge);bottom:clamp(28px,4.6vh,52px);display:flex;align-items:center;gap:16px}.project__line{width:30px;height:1px;background:var(--leaf-orange)}.project p{margin:0;font-size:10px;font-weight:400;letter-spacing:.16em}
@media(max-width:600px){:root{--edge:26px}.header{top:30px;gap:20px}.brand{width:170px}nav a{font-size:9px;gap:8px;letter-spacing:.08em}.hero__image{object-position:53% center}.hero__copy{bottom:123px}h1{font-size:clamp(27px,7.7vw,43px);line-height:1.3;letter-spacing:-.045em}.project{bottom:36px}.project p{font-size:9px}.hero__shade{background:linear-gradient(180deg,#0c12164f,transparent 36%,#0c121619 50%,#0c1216ba)}}
@media(max-height:500px) and (min-width:601px){.hero{min-height:320px}.header{top:22px}.brand{width:150px}.hero__copy{bottom:76px}h1{font-size:32px}.project{bottom:24px}}

/* Soft localized shade preserves the original logo and its orange descriptor. */
.hero::after{content:"";position:absolute;z-index:-1;pointer-events:none;top:0;left:0;width:min(680px,75vw);height:300px;background:radial-gradient(ellipse at 22% 18%,rgba(5,10,14,.72) 0%,rgba(5,10,14,.40) 36%,rgba(5,10,14,0) 72%)}
@media(max-width:600px){.hero::after{width:100%;height:225px;background:radial-gradient(ellipse at 20% 15%,rgba(5,10,14,.83) 0%,rgba(5,10,14,.59) 34%,rgba(5,10,14,0) 74%)}}

@font-face{font-family:'Cormorant Garamond';src:url('assets/cormorant-garamond-italic.ttf') format('truetype');font-style:italic;font-weight:400;font-display:swap}
h1{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:400;font-size:clamp(38px,4.2vw,68px);letter-spacing:.015em;line-height:1.15}
@media(max-width:600px){h1{font-size:clamp(28px,8.4vw,40px);letter-spacing:.005em;line-height:1.22}}
@media(max-height:500px) and (min-width:601px){h1{font-size:36px}}
html{scroll-behavior:smooth}nav{display:flex;gap:30px}.portfolio{background:#f4f1eb;color:#272c2d;padding:110px var(--edge) 50px;scroll-margin-top:0}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:.2em;line-height:1.6;margin:0 0 28px}.portfolio__heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:72px}.portfolio h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-style:italic;font-size:clamp(38px,4.2vw,66px);letter-spacing:-.025em;line-height:1.1;margin:0}.portfolio__heading>p{font-size:12px;line-height:1.9;margin:0;color:#596064}.portfolio__grid{display:grid;grid-template-columns:1.15fr 1fr;gap:90px 7vw;align-items:start}.work--offices{margin-top:160px}.work--lighting{margin-top:140px}.work__open{display:block;width:100%;padding:0;border:0;background:none;text-align:left;color:inherit;cursor:pointer;font-family:inherit}.work__image{position:relative;overflow:hidden;background:#ddd8cf;aspect-ratio:4/3}.work--offices .work__image{aspect-ratio:1.1}.work--lighting .work__image{aspect-ratio:1.1}.work__image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}.work__open:hover img{transform:scale(1.025)}.work__open:focus-visible{outline:2px solid var(--leaf-gray);outline-offset:8px}.work__arrow{position:absolute;right:16px;bottom:16px;background:#151d20b3;color:#fff;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:19px}.work__caption{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-top:20px}.work h3{font-size:16px;font-weight:400;margin:0;line-height:1.5}.work__caption>span{font-size:9px;letter-spacing:.06em;white-space:nowrap;color:#596064}.work__scope{font-size:10px;line-height:1.8;margin:9px 0 0;color:#596064;max-width:370px}.concept-tag{position:absolute;top:16px;left:16px;color:#fff;background:#151d20cf;padding:9px 12px;font-size:9px;letter-spacing:.04em}.back-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.08em;border-top:1px solid #c8c7c2;padding-top:24px;margin-top:90px}.footer{background:#182126;display:flex;justify-content:space-between;gap:25px;padding:30px var(--edge);font-size:9px;letter-spacing:.05em}.footer p{margin:0;line-height:1.7}dialog{border:0;padding:76px 5vw 50px;background:#f4f1eb;color:#272c2d;width:min(1200px,94vw);max-height:94svh}dialog::backdrop{background:#071014d9;backdrop-filter:blur(5px)}.dialog__close{position:absolute;right:28px;top:22px;font:12px Montserrat,Arial,sans-serif;border:0;background:none;color:inherit;cursor:pointer;padding:8px}.dialog__close span{font-size:20px;margin-left:12px}.dialog__content h2{font:italic 400 clamp(32px,4vw,55px)/1.1 'Cormorant Garamond',Georgia,serif;margin:0 0 18px}.dialog__content .eyebrow{margin-bottom:15px}.dialog__content>p:not(.eyebrow){font-size:12px;line-height:1.8;max-width:650px;margin-bottom:30px}.dialog__content img{display:block;width:100%;height:auto;max-height:65vh;object-fit:contain}body.modal-open{overflow:hidden}
@media(max-width:700px){nav{gap:17px}.portfolio{padding-top:66px}.portfolio__heading{display:block;margin-bottom:42px}.portfolio__heading>p{margin-top:22px;font-size:11px}.portfolio__grid{grid-template-columns:1fr;gap:45px}.work--offices,.work--lighting{margin-top:0}.work--offices .work__image,.work--lighting .work__image{aspect-ratio:4/3}.work__caption{gap:12px;margin-top:15px}.work h3{font-size:14px}.work__caption>span{font-size:8px}.footer{flex-direction:column;gap:10px}.back-top{margin-top:52px}dialog{padding:66px 20px 24px}.dialog__close{right:15px}.header{gap:16px}.brand{width:160px}nav a{font-size:9px;letter-spacing:.025em;gap:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.work__image img{transition:none}}

@media(max-width:700px){.header .brand{width:170px}.header nav a:first-child{display:none}}

/* Three large, aligned typologies in a single horizontal sequence. */
.portfolio{padding:80px 0 40px}.portfolio__intro{padding:0 var(--edge)}.portfolio__heading{margin-bottom:46px}.portfolio__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 24px;align-items:start}.work--offices{margin-top:0}.work__open{position:relative}.work .work__image{aspect-ratio:auto;height:clamp(460px,66vh,780px)}.work__image::after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(5,12,16,.78))}.work__caption{position:absolute;bottom:32px;left:30px;right:30px;margin:0;display:block;color:#fff;pointer-events:none;z-index:1}.work h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(32px,3.1vw,52px);font-style:italic;font-weight:400;line-height:1.1;margin:0 0 12px}.work__caption>span{color:#fff;font-size:10px;letter-spacing:.07em;white-space:normal;line-height:1.6}.work__arrow{z-index:2;right:25px;bottom:30px;background:none}.work__caption{padding-right:24px}.work__scope{margin:13px 20px;font-size:10px;line-height:1.7}.work--offices img{object-position:55% center}.work--retail img{object-position:43% center}.back-top{margin:64px var(--edge) 0}.portfolio__hint{display:none}
@media(max-width:700px){.portfolio{padding-top:58px}.portfolio__heading{margin-bottom:28px}.portfolio__grid{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:26px;padding:0 26px 16px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#556276 #dedbd5}.work{flex:0 0 86vw;scroll-snap-align:start;margin:0}.work .work__image{height:clamp(390px,65svh,620px)}.work__caption{left:24px;bottom:28px;right:24px}.work h3{font-size:40px}.work__scope{margin-left:0}.portfolio__hint{display:flex;justify-content:space-between;margin:0 26px 18px;font-size:9px;letter-spacing:.09em;color:#596064}.back-top{margin-top:35px}}

.work h3{font-family:Montserrat,Arial,sans-serif;font-style:normal;font-weight:300;font-size:clamp(25px,2.5vw,40px);letter-spacing:-.025em}.portfolio h2{font-family:Montserrat,Arial,sans-serif;font-style:normal;font-weight:300;font-size:clamp(30px,3.3vw,52px);letter-spacing:-.035em}.dialog__content h2{font-family:Montserrat,Arial,sans-serif;font-style:normal;font-weight:300;font-size:clamp(28px,3.4vw,46px);letter-spacing:-.025em}.residential-picker{display:flex;gap:22px;border-bottom:1px solid #c8c7c2;margin:0 0 30px;padding-bottom:12px}.residential-picker[hidden]{display:none}.residential-picker button{font:400 11px Montserrat,Arial,sans-serif;background:none;border:0;padding:8px 0;color:#596064;cursor:pointer;border-bottom:2px solid transparent}.residential-picker button[aria-pressed=true]{color:#272c2d;border-bottom-color:var(--leaf-orange)}.residential-picker button:focus-visible{outline:2px solid var(--leaf-gray);outline-offset:4px}
@media(max-width:700px){.work h3{font-size:32px}.residential-picker{gap:18px}}

:root{--graphite:#252829;--ivory:#f4f1eb;--muted:#b9bcbb}.portfolio{background:var(--graphite);color:var(--ivory)}.portfolio__heading>p,.portfolio__hint,.work__scope{color:var(--muted)}.eyebrow{color:var(--muted)}.back-top{border-color:#535758}.footer{background:#1d2021;color:var(--ivory)}dialog{background:var(--graphite);color:var(--ivory)}.residential-picker{border-color:#535758}.residential-picker button{color:var(--muted)}.residential-picker button[aria-pressed=true]{color:var(--ivory)}.portfolio__grid{scrollbar-color:#858b8c var(--graphite)}.work__open:focus-visible,.residential-picker button:focus-visible{outline-color:var(--leaf-orange)}

/* Smaller titles keep the images dominant. */
.work h3{font-size:clamp(20px,1.7vw,28px);line-height:1.25;margin-bottom:9px}.portfolio h2{font-size:clamp(25px,2.5vw,38px)}.dialog__content h2{font-size:clamp(25px,2.7vw,36px)}
@media(max-width:700px){.work h3{font-size:24px}}

.portfolio__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.work__caption{left:22px;right:20px}.work h3{font-size:clamp(18px,1.65vw,25px)}.work__caption>span{font-size:9px;letter-spacing:.035em}.residential-picker button[hidden]{display:none}.residential-picker{flex-wrap:wrap;gap:8px 24px}.work--lighting-real img{object-position:43% center}
@media(max-width:1000px){.portfolio__grid{display:flex;overflow-x:auto;gap:8px;scroll-snap-type:x mandatory;scroll-padding-inline:26px;padding:0 26px 16px;overscroll-behavior-x:contain}.work{flex:0 0 70vw;scroll-snap-align:start;margin:0}.portfolio__hint{display:flex;justify-content:space-between;margin:0 26px 18px;font-size:9px;letter-spacing:.09em;color:var(--muted)}.work h3{font-size:24px}}
@media(max-width:700px){.work{flex-basis:86vw}}

#dialog-description{white-space:pre-line;font-size:13px;line-height:1.85;max-width:720px}
