*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:#171b1c;color:#eceddf;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:500;line-height:1.02}h2{font-size:clamp(40px,4.4vw,70px);letter-spacing:-2.7px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400}img{display:block;width:100%;height:auto}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #dce88b;outline-offset:5px}.skip{position:fixed;top:-100px;left:15px;padding:12px;background:#171b1c;z-index:100}.skip:focus{top:15px}header{height:88px;padding:0 4%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #4b5253;gap:30px;background:#171b1c}.brand{font-size:31px;letter-spacing:-1.5px;font-weight:700;line-height:1;display:inline-flex;align-items:baseline;white-space:nowrap}.brand span{font-size:13px;letter-spacing:2px;margin-left:12px;font-weight:400}.brand i{width:7px;height:7px;background:#dce88b;margin-left:8px;display:inline-block}nav{display:flex;align-items:center;gap:32px;font-size:14px}nav>a:hover{text-decoration:underline;text-underline-offset:6px}.nav-cta{border:1px solid #8c9492;padding:10px 20px}.menu{display:none}.hero{position:relative;isolation:isolate;overflow:hidden}.hero-img{width:100%;height:auto}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0b151dcc,transparent 55%,#0b151d90);pointer-events:none}.hero-heading{position:absolute;top:6%;left:5%;right:5%}.eyebrow{font-size:11px;letter-spacing:1.7px;font-weight:500;line-height:1.5;margin-bottom:25px}.hero .eyebrow{color:#dce88b}h1{font-size:clamp(49px,6.7vw,112px);line-height:.99;letter-spacing:-4.7px;text-shadow:0 2px 18px #07131b30}h1>span{font-family:Georgia,serif;font-style:italic;font-size:.88em;font-weight:400}.hero-intro{margin-top:30px;display:flex;align-items:center;gap:40px}.hero-intro p{font-size:16px;line-height:1.5;text-shadow:0 1px 10px #000}.button{display:inline-flex;align-items:center;justify-content:center;padding:13px 23px;font-size:14px;font-weight:600;border:1px solid transparent}.lime{background:#dce88b;color:#1b2220}.lime:hover{background:#edf7b7}.hero-bottom{position:absolute;bottom:6%;left:5%;right:5%;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;font-size:10px;letter-spacing:1.5px;line-height:1.8}.hero-bottom b{font-weight:500;font-size:14px;letter-spacing:1px}.concept-tag{position:absolute;bottom:12px;right:5%;font-size:8px;letter-spacing:1px;background:#14201ead;padding:3px 7px;color:#e6e8e2}.manifesto{padding:30px 5% 68px;background:#dce88b;color:#19231e}.manifesto-line{display:flex;justify-content:space-between;gap:25px;font-size:10px;letter-spacing:1px;border-bottom:1px solid #77874d;padding-bottom:22px}.manifesto-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;padding-top:43px;align-items:end}.manifesto h2{font-size:clamp(40px,4.6vw,73px)}.manifesto-grid>div>p{max-width:425px;font-size:17px}.manifesto-grid>div>p+p{font-size:15px;margin-top:20px;color:#36422e}.text-link{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid currentColor;padding:15px 0;gap:30px;font-size:14px;margin-top:22px;max-width:330px}.text-link span{font-size:22px;font-weight:300;line-height:1}.visions,.solutions,.approach{padding:65px 5%}.section-top{display:flex;justify-content:space-between;align-items:flex-start;gap:35px;margin-bottom:37px}.section-top .eyebrow{color:#b4bdb4;margin-top:6px;max-width:300px}.audience{display:flex;border:1px solid #606967;padding:4px;gap:4px}.audience button{background:none;border:0;padding:10px 25px;font-size:14px;color:#b3bdb9}.audience button.active{background:#dce88b;color:#19231e}.vision-layout{display:grid;grid-template-columns:62% 38%;align-items:stretch}.vision-image{min-width:0}.image-open{position:relative;display:block;padding:0;border:0;background:none;width:100%;text-align:left}.image-open img{width:100%;height:auto}.zoom{position:absolute;bottom:18px;right:18px;background:#16201ccc;border:1px solid #e1e7d677;color:#edf2de;width:40px;height:40px;display:grid;place-items:center;font-size:25px;line-height:1}.image-open:hover .zoom{background:#dce88b;color:#19231e}.image-annotation{display:block;font-size:8px;letter-spacing:1px;color:#a8b4ad;margin-top:10px}.vision-copy{padding:0 0 0 13%;display:flex;flex-direction:column;justify-content:center}.large-index{font-size:80px;color:#dce88b;letter-spacing:-6px;line-height:1;margin-bottom:24px;font-weight:300}.vision-copy .eyebrow{font-size:9px;letter-spacing:1px;color:#aab6ae;margin-bottom:17px}.vision-copy h2{font-size:clamp(30px,3.5vw,55px);letter-spacing:-1.9px;white-space:pre-line}.vision-copy>p:not(.eyebrow){font-size:15px;color:#b7c0b9;margin-top:21px;max-width:340px}.vision-copy .text-link{color:#dce88b}.solutions{background:#293235;border-top:1px solid #586164}.solutions .section-top h2{width:50%}.solution-layout{display:grid;grid-template-columns:43% 50%;gap:7%;align-items:start}.material-image .image-pullquote{font-size:42px;letter-spacing:-1.5px;line-height:1.1;margin-top:23px}.solution-list{border-top:1px solid #75817e}details{border-bottom:1px solid #75817e}summary{list-style:none;display:flex;align-items:center;gap:22px;cursor:pointer;padding:25px 0}summary::-webkit-details-marker{display:none}summary>span{font-size:11px;color:#bdcba1;letter-spacing:1px}summary h3{font-size:clamp(20px,2.2vw,32px);line-height:1.1;flex:1;letter-spacing:-.6px}summary>b{font-weight:300;font-size:27px;line-height:1}details[open] summary>b{transform:rotate(45deg)}details>div{padding:0 35px 25px 38px;color:#c0cbc4;font-size:15px;max-width:600px}.hospitality{background:#101819;padding:0 0 24px;position:relative}.hospitality-heading{padding:45px 5% 35px;display:flex;align-items:flex-end;justify-content:space-between;gap:40px}.hospitality-heading .eyebrow{max-width:250px;color:#dce88b;margin-bottom:3px}.hospitality-heading h2{font-size:clamp(40px,5.4vw,83px);text-align:right}.hospitality>.image-open{width:90%;margin:0 auto}.hospitality-caption{display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:1px;padding:14px 5% 0;color:#b7c6ba}.approach{background:#bec7c2;color:#17201d}.approach .eyebrow{color:#374b40}.approach .section-top h2{width:60%}.approach-grid{display:grid;grid-template-columns:33% 60%;gap:7%}.about p{font-size:18px;line-height:1.55;max-width:330px}.about p+p{font-size:15px;color:#3c4a41;margin-top:23px}.approach ol{list-style:none;padding:0;margin:0}.approach li{display:grid;grid-template-columns:40px 1fr;gap:18px;border-top:1px solid #73877a;padding:22px 0}.approach li>span{font-size:12px}.approach li h3{font-size:27px;letter-spacing:-.7px}.approach li p{font-size:15px;color:#3c4a41;margin-top:10px;max-width:570px}.region{padding:50px 5%;background:#253b32}.region>.eyebrow{color:#dce88b}.region>div{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;align-items:end}.region h2{font-size:clamp(38px,4.3vw,65px)}.region>div>p{font-size:16px;color:#c3cec4;max-width:400px}.places{border-top:1px solid #748e77;margin-top:32px;padding-top:23px;font-size:10px;letter-spacing:1px;line-height:2.4;color:#dce88b}.places span{margin:0 10px}.contact{padding:60px 5% 45px}.contact>.eyebrow{color:#dce88b}.contact>h2{font-size:clamp(60px,10.6vw,175px);letter-spacing:-6px;line-height:1.1;margin-bottom:35px}.contact>h2 em{color:#dce88b}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px;border-top:1px solid #697570;padding-top:26px}.contact-grid>p{color:#b8c5bc;font-size:15px;max-width:300px}.person{display:flex;flex-direction:column;border-bottom:1px solid #657368;padding-bottom:15px}.person>span{font-size:11px;letter-spacing:1.5px;color:#dce88b}.person strong{font-size:clamp(23px,2.5vw,38px);font-weight:400;letter-spacing:-1px;margin:10px 0 8px;line-height:1.2}.person small{font-size:13px;color:#acbdb0}.person:hover strong{color:#dce88b}footer{padding:27px 5%;border-top:1px solid #44544a;display:flex;align-items:center;justify-content:space-between;gap:25px;background:#101718}footer .brand{font-size:25px}footer .brand span{font-size:10px}footer p{font-size:10px;letter-spacing:1px;color:#b3c0b8}footer small{font-size:11px;color:#94a99c}dialog{border:1px solid #738276;background:#111b17;color:#eaf0e5;padding:50px 20px 20px;max-width:94vw;max-height:95vh}dialog::backdrop{background:#07100eeb}dialog>img{max-width:85vw;max-height:75vh;width:auto;height:auto;object-fit:contain;margin:auto}dialog>p{font-size:14px;margin-top:12px}.close-dialog{position:absolute;top:10px;right:15px;border:0;background:none;padding:5px 8px;color:inherit}
@media(max-width:1050px){nav{gap:22px}h1{font-size:6.8vw;letter-spacing:-3px}.hero-heading{top:6%}.hero-intro{margin-top:20px;gap:25px}.hero-intro p{font-size:14px}.hero .eyebrow{font-size:10px;margin-bottom:18px}.hero-bottom{bottom:7%}.vision-copy{padding-left:9%}.large-index{font-size:60px;margin-bottom:15px}.vision-copy .eyebrow{font-size:8px}.vision-copy>p:not(.eyebrow){font-size:14px;margin-top:16px}.vision-copy .text-link{margin-top:12px}.section-top .eyebrow{font-size:10px;max-width:220px}.contact-grid{gap:25px}.manifesto-grid{gap:8%}.solution-layout{grid-template-columns:40% 54%;gap:6%}.brand{font-size:28px}}
@media(max-width:700px){header{height:76px;padding:0 6%;position:relative;z-index:10}.brand{font-size:27px}.brand span{font-size:10px;letter-spacing:1.7px}.menu{display:flex;align-items:center;gap:10px;border:0;background:none;font-size:13px;padding:8px 0}.menu span{font-size:23px}.menu+nav{display:none}nav{display:none;position:absolute;top:100%;left:0;right:0;padding:15px 6% 25px;background:#171b1c;border-bottom:1px solid #606b63;gap:0}nav.open{display:flex;flex-direction:column;align-items:stretch}nav>a{padding:12px 0}nav>.nav-cta{padding:12px;text-align:center;margin-top:8px}.hero{display:flex;flex-direction:column}.hero-heading{position:relative;top:auto;left:auto;right:auto;order:0;padding:30px 6% 25px;background:#171b1c}.hero-img{order:1}.hero-shade{display:none}h1{font-size:clamp(40px,9vw,63px);line-height:1.04;letter-spacing:-2.3px}h1>span{font-size:.89em}.hero .eyebrow{font-size:8px;letter-spacing:1.3px;margin-bottom:19px}.hero-intro{display:flex;gap:15px;justify-content:space-between;align-items:center;margin-top:22px}.hero-intro p{font-size:12px}.hero-intro .button{font-size:11px;padding:11px 14px;flex-shrink:0}.hero-bottom{position:static;order:2;padding:16px 6% 27px;background:#171b1c;font-size:8px;letter-spacing:1px}.hero-bottom b{font-size:10px;letter-spacing:.7px}.concept-tag{bottom:7px;right:6%;font-size:6px;letter-spacing:.7px;background:none;padding:0}.manifesto{padding:21px 6% 35px}.manifesto-line{font-size:8px;letter-spacing:.6px;padding-bottom:18px}.manifesto-line>span:last-child{max-width:135px;text-align:right}.manifesto-grid{grid-template-columns:1fr;gap:24px;padding-top:27px}.manifesto h2,h2{font-size:39px;letter-spacing:-1.5px}.manifesto-grid>div>p{font-size:16px}.manifesto-grid>div>p+p{font-size:14px;margin-top:15px}.text-link{font-size:13px;margin-top:16px;max-width:100%;padding:12px 0}.visions,.solutions,.approach{padding:37px 6%}.section-top{display:block;margin-bottom:24px}.section-top .eyebrow{font-size:9px;margin:0 0 20px;max-width:100%;letter-spacing:1.3px}.audience{display:inline-flex}.audience button{font-size:13px;padding:9px 20px}.vision-layout{grid-template-columns:1fr}.vision-copy{padding:25px 0 0;display:grid;grid-template-columns:62px 1fr;column-gap:18px;justify-content:initial}.large-index{font-size:60px;letter-spacing:-4px;grid-row:1/3;margin-bottom:0}.vision-copy .eyebrow{font-size:8px;letter-spacing:.8px;margin:0 0 8px}.vision-copy h2{font-size:33px;letter-spacing:-1.4px}.vision-copy>p:not(.eyebrow){grid-column:1/-1;font-size:15px;max-width:none;margin-top:18px}.vision-copy .text-link{grid-column:1/-1;margin-top:8px}.image-annotation{font-size:6px;letter-spacing:.8px;margin-top:7px}.solutions .section-top h2,.approach .section-top h2{width:100%}.solution-layout{grid-template-columns:1fr;gap:25px}.material-image .image-pullquote{font-size:31px;margin-top:17px;line-height:1.05}.material-image .image-pullquote br{display:none}.solution-list summary{gap:15px;padding:20px 0}.solution-list h3{font-size:23px;letter-spacing:-.7px}details>div{font-size:14px;padding:0 15px 21px 29px}.hospitality-heading{padding:30px 6% 23px;display:block}.hospitality-heading .eyebrow{font-size:9px;margin-bottom:18px;max-width:none}.hospitality-heading h2{font-size:44px;text-align:left}.hospitality>.image-open{width:100%}.hospitality-caption{padding:10px 6% 0;font-size:6px;letter-spacing:.7px;gap:15px}.hospitality{padding-bottom:20px}.approach-grid{grid-template-columns:1fr;gap:25px}.about p{font-size:17px;max-width:none}.about p+p{font-size:14px;margin-top:15px}.approach li{padding:20px 0;grid-template-columns:25px 1fr;gap:13px}.approach li h3{font-size:25px}.approach li p{font-size:14px}.region{padding:35px 6%}.region .eyebrow{font-size:9px;margin-bottom:20px}.region>div{grid-template-columns:1fr;gap:22px}.region h2{font-size:37px}.region>div>p{font-size:15px}.places{font-size:8px;letter-spacing:.7px;line-height:2.5;padding-top:19px;margin-top:23px}.places span{margin:0 5px}.contact{padding:35px 6%}.contact .eyebrow{font-size:9px}.contact>h2{font-size:clamp(49px,11vw,78px);letter-spacing:-2.6px;margin-bottom:25px}.contact-grid{grid-template-columns:1fr 1fr;gap:25px 18px;padding-top:22px}.contact-grid>p{grid-column:1/-1;max-width:none;font-size:14px}.person>span{font-size:9px;letter-spacing:1.2px}.person strong{font-size:clamp(19px,4.3vw,28px);letter-spacing:-.7px;white-space:nowrap}.person small{font-size:11px}footer{padding:24px 6%;flex-wrap:wrap;gap:20px}footer p{display:none}footer small{font-size:9px}footer .brand{font-size:23px}footer .brand span{font-size:8px}.zoom{width:32px;height:32px;font-size:22px;bottom:12px;right:12px}dialog{padding:47px 12px 15px}dialog>img{max-width:85vw;max-height:73vh}dialog>p{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Actual project photography preserves the full image area within screenshots. */
.real-work{padding:62px 5%;background:#202928;border-top:1px solid #53625a}.real-work .section-top{align-items:flex-end}.real-intro{max-width:375px;color:#bfcac0;font-size:16px}.real-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;align-items:start}.real-project:nth-child(2){margin-top:35px}.real-crop{position:relative;overflow:hidden;background:#17221d;width:100%}.real-crop img{position:absolute;left:0;width:100%;height:auto;max-height:none;max-width:none;object-fit:initial}.real-project figcaption{padding-top:16px}.real-project figcaption>span{font-size:9px;letter-spacing:1.4px;color:#dce88b}.real-project h3{font-size:23px;letter-spacing:-.7px;line-height:1.15;margin:10px 0}.real-project figcaption p{font-size:14px;color:#b3c2b7}.real-work .eyebrow{color:#dce88b}#lightbox-media{margin:auto}#lightbox-media:not(.real-crop)>img{max-width:85vw;max-height:75vh;width:auto;height:auto;object-fit:contain;margin:auto}#lightbox-media.real-crop>img{width:100%;height:auto;max-height:none;max-width:none}
@media(max-width:1050px){header nav{gap:19px;font-size:13px}}
@media(max-width:700px){.real-work{padding:37px 6%}.real-intro{font-size:15px;margin-top:22px}.real-gallery{grid-template-columns:1fr;gap:30px;max-width:470px;margin:auto}.real-project:nth-child(2){margin-top:0}.real-project h3{font-size:24px}.real-project figcaption p{font-size:14px}header nav{gap:0}}

/* Original photo proportions, no forced crops. */
.real-gallery{display:block;columns:3;column-gap:25px}.real-project{break-inside:avoid;margin:0 0 32px}.real-project:nth-child(2){margin-top:0}.vision-image .image-open img{max-height:650px;object-fit:contain;width:100%;height:auto}.vision-image{align-self:center}.hero-img{aspect-ratio:auto}.hero-shade{background:linear-gradient(180deg,#06121bcc,transparent 60%,#07131d80)}
@media(max-width:1000px){.real-gallery{columns:2}}
@media(max-width:700px){.real-gallery{columns:1}.vision-image .image-open img{max-height:none}.hero-shade{display:none}}

.hero-img,#vision-photo,.hospitality>.image-open img{filter:brightness(1.06) contrast(1.025) saturate(1.025)}

/* Architectural opening: brand, portfolio photograph, two functional paths. */
.design-opening{background:#171b1c;padding:24px 4% 0}.opening-meta{display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:1.8px;color:#c3cdc5;line-height:1.5}.opening-meta>span{color:#dce88b}.design-opening h1{display:flex;justify-content:space-between;align-items:baseline;gap:2vw;font-family:Arial,Helvetica,sans-serif;font-size:clamp(60px,12.2vw,210px);font-weight:500;line-height:1.05;letter-spacing:-.065em;margin:9px 0 19px;text-shadow:none;white-space:nowrap}.design-opening h1>span{font:inherit;color:#b6c3bd;letter-spacing:inherit}.opening-photo{position:relative}.opening-photo>img{width:100%;height:auto;display:block;filter:brightness(1.06) contrast(1.025)}.opening-credit{position:absolute;bottom:18px;left:22px;right:22px;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:1.6px;color:white;text-shadow:0 1px 5px #000;background:#10201aa8;padding:8px 12px;width:fit-content;max-width:calc(100% - 44px)}.opening-choices{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #68766d}.opening-choices>a{display:grid;grid-template-columns:30px 1fr 24px;gap:5px 16px;padding:24px;align-items:center;background:#202c27;transition:background .2s}.opening-choices>a+a{border-left:1px solid #68766d;background:#dce88b;color:#1a241e}.opening-choices>a:hover{background:#36483e}.opening-choices>a+a:hover{background:#eef4bc}.choice-number{font-size:11px;align-self:start;padding-top:5px}.choice-title{font-size:38px;letter-spacing:-1px;line-height:1.1}.choice-description{font-size:12px;grid-column:2;opacity:.8}.choice-plus{grid-column:3;grid-row:1/3;font-size:30px;font-weight:300}.choice-number{grid-row:1/3}
@media(max-width:700px){.design-opening{padding:20px 6% 0}.opening-meta{font-size:8px;letter-spacing:.6px;gap:12px}.opening-meta>p{max-width:190px}.opening-meta>span{text-align:right;max-width:100px}.design-opening h1{font-size:11.8vw;letter-spacing:-.07em;margin:15px 0 21px;line-height:1.1;gap:3vw}.opening-photo{margin:0 -6.82%}.opening-credit{font-size:6px;letter-spacing:.6px;bottom:10px;left:12px;right:12px;padding:5px 7px;max-width:calc(100% - 24px);gap:13px}.opening-choices{margin:0 -6.82%}.opening-choices>a{padding:19px 16px;grid-template-columns:18px 1fr 14px;column-gap:7px}.choice-title{font-size:29px}.choice-number{font-size:8px}.choice-description{font-size:9px;line-height:1.45}.choice-plus{font-size:23px}}
/* Production statement, immediately below the opening photograph. */
.production-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px 24px;background:#dce88b;color:#171b1c;border-bottom:1px solid #68766d}.production-heading{font-size:clamp(22px,2.6vw,38px);line-height:1.2;letter-spacing:-.6px}.production-heading strong{font-weight:700}.production-link{font-size:14px;text-decoration:underline;text-underline-offset:5px;white-space:nowrap}.production-banner:hover{background:#eef4bc}.production-banner:focus-visible{outline:3px solid #fff;outline-offset:4px}
@media(max-width:700px){.production-banner{margin:0 -6.82%;padding:24px 6%;align-items:flex-start;flex-direction:column;gap:16px}.production-heading{font-size:26px;max-width:100%;letter-spacing:-.4px}.production-heading strong{display:block}.production-link{font-size:14px}}

.production-banner{position:relative;z-index:1;cursor:pointer;touch-action:manipulation}.production-link{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 20px;background:#171b1c;color:#eceddf;text-decoration:none;border:1px solid #171b1c;font-weight:600;white-space:normal;text-align:center}.production-banner:hover .production-link{background:#303a34}.production-banner:focus-visible{outline:3px solid #fff;outline-offset:3px}
