/* Original InteGrit black-and-gold identity. Full image frames, with no cover crops. */
:root{--darkline:#c2a06636;--muted:#b9b5ac;--gold:#d1ad71}
body{background-color:#090a0b;background-image:linear-gradient(90deg,#090a0bf2 0%,#090a0bbd 45%,#090a0b66 100%),url('brand/brand-background-black.jpg');background-position:center, right top;background-size:cover,1102px auto;background-repeat:no-repeat;background-attachment:fixed;color:#f4f1e9}
.paper{background:transparent;color:#f4f1e9}.paper .eyebrow,.paper em,.paper .text-link{color:var(--gold)}
.paper .lede,.paper .small,.paper .photo-note.credit,.lede,.small{color:#c4c0b6}.photo-note.credit{margin-top:24px}
.site-header{height:124px;background:#090a0be6;border-bottom:1px solid #c2a0663f}.brand{width:300px}.brand img,.footer-brand img{filter:invert(1);mix-blend-mode:screen;width:100%;height:auto;object-fit:contain;transform:none;image-rendering:auto}.desktop-nav{gap:26px}.desktop-nav>a{font-size:11px;color:#efebe2}.desktop-nav .nav-contact{padding:13px 19px}.footer-brand{width:310px}.site-footer{background:#090a0bc9}.footer-top p,.footer-bottom{color:#bdb7ab}.mobile-nav{top:124px;background:#090a0bf7}.mobile-nav a{color:#f4f1e9}.mobile-nav a[aria-current=page]{color:var(--gold)}
.page-intro,.project-header,.service-intro{background-image:linear-gradient(90deg,#090a0b8c,transparent);border-bottom:1px solid #c2a06626}.page-intro{padding-bottom:48px}.breadcrumb,.paper .breadcrumb{color:#c4bdaf}.project-header .project-subtitle{color:#d5ccba}.collection-link{margin-top:22px;font-size:13px;color:#c2baaa}.collection-link a{color:var(--gold);border-bottom:1px solid #c2a0666b}
.portfolio-hero{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;min-height:0;align-items:center;padding-top:65px;padding-bottom:60px;overflow:visible;position:relative}.portfolio-hero:after{display:none}.portfolio-hero .portfolio-intro{position:static;z-index:auto}.portfolio-hero h1{font-size:clamp(50px,5.5vw,80px);max-width:580px}.portfolio-hero .lede{max-width:480px;margin-top:24px;color:#d3cec3}.portfolio-hero .actions{gap:25px}.portfolio-feature{margin:0;background:#08090b;border:1px solid #c2a06636;padding:12px}.portfolio-feature>img{position:static;display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;transform:none}.portfolio-feature figcaption{font-size:10px;letter-spacing:.04em;color:#c5b99f;padding:14px 8px 3px;line-height:1.6}
.metrics{border-color:#c2a0663d}.metric+.metric{border-color:#c2a0663d}.metric span{color:#d2cab9}.portfolio-context{color:#b9b2a4;line-height:1.8}.intro-heading .lede{color:#c2bcb0}
.category-grid{gap:30px}.category-card,.category-card:nth-child(-n+2),.category-card:nth-last-child(-n+2){min-height:0;background:#0a0b0ee8;border:1px solid #c2a06636;overflow:visible;display:flex;flex-direction:column}.category-card:after{display:none}.category-visual{position:relative;padding:12px 12px 0;display:flex;align-items:center;justify-content:center;aspect-ratio:1.55;background:#08090a}.category-visual>img,.category-visual>.source-window{position:static;display:block;width:100%;height:100%;object-fit:contain;object-position:center;transform:none!important;max-height:360px}.category-card:nth-child(-n+2) .category-visual{aspect-ratio:1.55}.category-card>.source-window{position:static}.category-card .card-text{position:relative;bottom:auto;left:auto;right:auto;padding:25px 26px 24px;flex:1}.category-card h3{font-size:30px;padding-right:30px;color:#f4f1e9}.category-card .number{font-size:9px;letter-spacing:.1em;color:#d8b77e;margin-bottom:12px}.category-card p{color:#c2bdb3;max-width:none}.category-card .arrow{right:25px;top:47px;color:var(--gold)}.category-card .kind{position:static;display:block;background:transparent;padding:0;margin-top:20px;color:#a9a192;font-size:9px;letter-spacing:.08em}.category-card:hover{border-color:#d1ad7199;background:#121314}.category-card:hover>img,.project-card:hover img{transform:none!important}.portfolio-directory-cta{display:flex;gap:30px;justify-content:space-between;align-items:center;margin-top:45px;padding:30px 0;border-top:1px solid #c2a0664d;border-bottom:1px solid #c2a0664d}.portfolio-directory-cta h3{font-size:29px}.portfolio-directory-cta p{font-size:13px;color:#bcb5a8;margin-top:12px;max-width:650px}.portfolio-directory-cta .button{flex-shrink:0}
.category-nav a{border-color:#c2a0664a;color:#d3cabc;background:#0b0c0dc9}.category-nav a:hover,.category-nav a[aria-current=page]{background:#c2a066;color:#08090a;border-color:#c2a066}.project-tools{padding:22px 0;border-top:1px solid #c2a0663d;border-bottom:1px solid #c2a0663d;align-items:end}.project-tools label{color:#d0c6b4}.search-box input,.category-filter select{background:#111316;color:#f3efe4;border:1px solid #c2a06670;padding:12px 14px;border-radius:0;font:400 13px/1.5 var(--sans)}.search-box input{width:350px}.search-box input::placeholder{color:#999388}.category-filter select{min-height:49px;max-width:100%;width:260px}.result-count{color:#c1b69f}.project-grid{gap:32px;align-items:stretch}.project-card{background:#0c0d10e8;border:1px solid #c2a06632;padding:14px 20px 24px;display:flex;flex-direction:column}.project-card:hover{border-color:#c2a06699}.project-card .image{aspect-ratio:1.5;background:#08090a;margin:0 -6px 15px;padding:0;overflow:visible;display:flex;align-items:center;justify-content:center}.project-card img,.project-card .source-window{width:100%;height:100%;object-fit:contain;object-position:center;transform:none!important;max-height:300px}.project-card .image-kind{font-size:9px;letter-spacing:.07em;text-transform:uppercase;color:#b4a48a;margin-bottom:17px}.project-card .location{color:#d3b680;font-size:9px;line-height:1.7}.project-card h3{font-size:26px;color:#f4f1e9}.project-card p,.featured-grid .project-card p{color:#c1bbae;font-size:13px}.project-card .engagement-label{font-size:10px;color:#a99f8b;border-top:1px solid #c2a06625;padding-top:15px;margin-top:20px}.project-card .read-more{color:#dec18d;font-size:9px;margin-top:auto;padding-top:20px}.project-card.no-image{background:linear-gradient(130deg,#141518ee,#0b0c0ff2);border:1px solid #c2a06632;border-top:2px solid #b69860;padding:28px 24px;min-height:270px}.project-card.no-image:hover{background:#16171a;border-color:#c2a06699}.project-card.no-image .location{margin-bottom:16px}.empty-results{color:#d3cabc}
.project-cover,.project-cover.panel,.project-cover.archival{background:#08090ae0;padding:24px var(--gutter) 10px;border-bottom:1px solid #c2a06636}.project-cover>img,.project-cover>.source-window,.project-cover.panel>img,.project-cover.archival>.source-window{display:block;position:static;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center;max-width:1240px;max-height:75vh;margin:auto;background:transparent;padding:0;transform:none}.project-cover>.source-window{height:65vh}.project-cover.archival>.source-window{max-width:650px;height:430px;aspect-ratio:auto}.project-cover figcaption{padding:18px 0 10px;color:#c0b7a6;text-align:center;font-size:11px;line-height:1.8}.project-body p,.scope-list,.case-section p,.case-aside,.phase-heading p,.service-item .service-content,.service-item p,.case-card p,.timeline p,.contact-details p,.prose p{color:#c8c2b6}.project-body h2,.project-body h3,.case-aside h3{color:#f3efe6}.scope-list li{border-color:#c2a06630}.project-facts{border-color:#c2a066}.project-facts dt,.project-stat strong{color:#d8b77e}.project-facts dd,.project-stat span{color:#d3cdc0}.project-stat small{color:#aaa08e}.project-case-callout{background:#171716df;border:1px solid #c2a06642}.project-case-callout .text-link{color:var(--gold)}.gallery{align-items:start}.gallery figure{background:#08090ae8;padding:15px;border:1px solid #c2a06630}.gallery img{height:auto;max-height:580px;object-fit:contain;background:transparent;transform:none;aspect-ratio:auto}.gallery figcaption{color:#c1b8a6;font-size:11px}.gallery .gallery-action{color:#d9b77c}.lightbox{border:1px solid #c2a06660;padding:60px 20px 20px;background:#08090b}.lightbox img{height:auto;max-height:72vh;object-fit:contain}.lightbox p{color:#c9c2b6}
.service-intro{padding-top:70px}.service-image{height:auto;max-height:none;overflow:visible;background:#08090ac9;max-width:1180px;margin:0 auto;padding:16px;border:1px solid #c2a06640}.service-image img{width:100%;height:auto;max-height:600px;object-fit:contain;object-position:center;transform:none}.service-image p{position:static;text-align:right;background:transparent;color:#c3b8a5;padding:15px 4px 0;margin:0;font-size:10px}.service-phase{border-color:#c2a06630}.service-item{border-color:#c2a06635}.service-item summary h3{color:#f3efe4}.service-item summary .service-number,.service-item summary:after,.service-item .text-link{color:#d0ad70}.service-item .small{color:#b2a793}.engagement-grid>div{border-color:#c2a06650}.engagement-grid p{color:#c6bead}.case-card{border-color:#c2a06650}.case-card .tag,.case-card .text-link{color:var(--gold)}.case-image{background:#08090b;border:1px solid #c2a06630;overflow:visible;padding:12px;aspect-ratio:1.5;display:flex;align-items:center;justify-content:center}.case-image img,.case-image svg{width:100%;height:100%;object-fit:contain;transform:none}.case-grid .case-card:first-child .case-image{aspect-ratio:auto;max-height:520px}.case-section{border-color:#c2a06635}.case-aside .project-stat-grid{grid-template-columns:1fr}.timeline time{color:var(--gold)}
.home-hero{height:auto;min-height:0;max-height:none;padding:70px var(--gutter) 35px;max-width:1440px;margin:auto;display:grid;grid-template-columns:.95fr 1.05fr;gap:35px 45px;align-items:center;overflow:visible}.home-hero:after{display:none}.home-hero .hero-content{grid-column:1;grid-row:1;padding:0;max-width:none;position:static;z-index:auto}.home-hero h1{font-size:clamp(42px,4.4vw,66px);max-width:700px}.home-hero .lede{font-size:16px;max-width:600px}.hero-slides{grid-column:2;grid-row:1;position:relative;height:580px;min-width:0;background:#08090be6;border:1px solid #c2a06640;padding:12px}.hero-slide{inset:12px;transform:none!important}.hero-slide img,.hero-slide.active img,.hero-slide.flip img,.hero-slide.tower img{height:100%;width:100%;object-fit:contain;object-position:center;transform:none!important;transition:none}.hero-controls{grid-column:2;grid-row:2;position:static;max-width:none;text-align:left;margin-top:-15px}.hero-caption{color:#d7c9af}.hero-controls button{border-color:#c2a06670;background:#0c0d0f}.home-intro .lede{color:#c8c2b6}.founder-image img{object-fit:contain;height:auto;max-height:none;transform:none}.founder-image{max-width:400px;background:#08090b;padding:12px;border:1px solid #c2a06640}.cta{background:#0d0e11c9;border-color:#c2a06655}.cta p{color:#c8c0b0}.cta h2{color:#f5f1e7}.inquiry-form input,.inquiry-form textarea,.inquiry-form select{background:#121416;color:#f3efe5;border-color:#b3a38388}.inquiry-form input::placeholder,.inquiry-form textarea::placeholder{color:#9b9385}.inquiry-form label{color:#e2dacb}.inquiry-form .consent{color:#c0b7a7}.preview-note{color:#d1bea1;border-color:#c2a066}.form-status{background:#1c1d1c;color:#e5dece}.contact-details a{color:#f3efe6}.prose a{color:var(--gold)}.prose .small{color:#c2b7a4}.section{border-color:#c2a06630}
@media(max-width:1100px){.brand{width:265px}.site-header{height:112px}.desktop-nav{gap:18px}.desktop-nav>a{font-size:10px}.portfolio-hero{gap:35px}.portfolio-hero h1{font-size:58px}.portfolio-hero .lede{font-size:16px}.portfolio-hero .actions{gap:18px}.hero-slides{height:520px}.home-hero{gap:35px}.home-hero h1{font-size:47px}.project-tools{flex-wrap:wrap}.result-count{margin-right:auto}.category-card h3{font-size:27px}}
@media(max-width:900px){.site-header{height:106px}.mobile-nav{top:106px}.brand{width:265px}.portfolio-hero{grid-template-columns:1fr;gap:38px;padding-top:45px;padding-bottom:45px}.portfolio-hero h1{font-size:65px}.portfolio-hero .lede{max-width:650px}.portfolio-feature{max-width:720px;width:100%}.portfolio-feature img{max-height:520px}.category-card,.category-card:nth-child(-n+2),.category-card:nth-last-child(-n+2),.category-card:last-child:nth-child(odd){min-height:0}.portfolio-directory-cta{align-items:start;flex-direction:column}.home-hero{grid-template-columns:1fr;padding-top:50px;gap:35px}.home-hero .hero-content{grid-row:1;grid-column:1}.hero-slides{grid-row:2;grid-column:1;width:100%;height:480px}.hero-controls{grid-row:3;grid-column:1;margin:0}.home-hero h1{font-size:57px}.project-cover>img{max-height:70vh}.service-image{margin:0 var(--gutter)}.case-aside{border-color:#c2a06640}}
@media(max-width:600px){body{background-size:cover,860px auto;background-position:center,right top}.site-header{height:102px;padding:0 18px}.brand{width:240px}.menu-toggle{font-size:10px;gap:7px}.mobile-nav{top:102px;padding:22px}.footer-brand{width:285px;max-width:100%}.portfolio-hero{padding-top:36px;padding-bottom:36px;gap:30px}.portfolio-hero h1{font-size:51px;max-width:none}.portfolio-hero .lede{max-width:none;font-size:15px}.portfolio-hero .actions{gap:22px}.portfolio-feature{padding:8px}.portfolio-feature figcaption{font-size:9px;line-height:1.7;padding:12px 5px 4px}.portfolio-feature>img{max-height:none}.metric:nth-child(3),.metric:nth-child(4){border-color:#c2a0663d}.category-grid{gap:24px}.category-card .card-text{padding:22px}.category-card h3{font-size:29px}.category-card p{font-size:13px}.category-card .arrow{right:22px;top:45px}.category-visual,.category-card:nth-child(-n+2) .category-visual{aspect-ratio:1.3;padding:10px 10px 0}.category-visual>img,.category-visual>.source-window{max-height:300px;object-fit:contain}.portfolio-directory-cta h3{font-size:27px}.portfolio-directory-cta .button{width:100%;font-size:9px;padding:15px 13px}.category-nav a{font-size:10px;padding:10px}.project-tools{align-items:stretch;gap:20px;padding:22px 0}.search-box input,.category-filter select{width:100%}.project-grid{gap:24px}.project-card .image{aspect-ratio:1.4}.project-card h3{font-size:28px}.project-card.no-image{min-height:0;padding:25px}.project-card .read-more{margin-top:18px}.project-cover,.project-cover.archival,.project-cover.panel{padding:12px 15px}.project-cover>img,.project-cover.panel>img{max-height:none;width:100%;height:auto;aspect-ratio:auto}.project-cover>.source-window,.project-cover.archival>.source-window{height:auto;aspect-ratio:1.3}.project-cover figcaption{font-size:10px;padding:14px 0 6px}.gallery{gap:24px}.gallery img{max-height:none;height:auto}.service-intro{padding-top:42px}.service-intro h1{font-size:42px}.service-image{padding:8px;margin:0 15px}.service-image img{max-height:none;height:auto}.service-image p{text-align:left;font-size:9px;padding:10px 3px 3px}.service-phase{padding-top:55px;padding-bottom:55px}.service-item summary h3{font-size:24px}.case-grid .case-card:first-child .case-image{aspect-ratio:1.5}.home-hero{padding:42px 22px 30px;gap:28px}.home-hero h1{font-size:44px}.home-hero .hero-content{padding:0}.home-hero .lede{font-size:15px;max-width:none}.hero-slides{height:330px}.hero-controls{max-width:none;margin-top:0}.hero-slide{inset:8px}.hero-controls .photo-note{font-size:10px}.founder-image{max-width:360px}.founder-image img{max-height:none}.contact-layout h2{font-size:32px}.contact-details a{font-size:15px}.lightbox{padding:55px 12px 15px}.lightbox img{max-height:68vh}}
.project-cover>img,.project-cover.panel>img{max-width:min(1240px,var(--native-width,1240px))}.project-cover>.source-window,.project-cover.archival>.source-window{max-width:min(1240px,var(--native-width,1240px));height:auto;aspect-ratio:var(--photo-ratio,auto)}.lightbox img{width:auto;max-width:100%;margin:auto}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}
/* Logo presentation copied from the existing live site's header and footer. */
body{padding-top:82px}
.site-header{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;height:auto;padding:1.4rem clamp(1.5rem,4vw,3.5rem);background:rgba(12,12,13,.92);border:0;transition:background .4s cubic-bezier(.22,.61,.36,1),padding .4s cubic-bezier(.22,.61,.36,1)}
.site-header.scrolled{background:rgba(12,12,13,.92);backdrop-filter:blur(10px);padding:.9rem clamp(1.5rem,4vw,3.5rem);box-shadow:0 1px 0 rgba(156,124,67,.25)}
.brand{display:flex;align-items:center;width:auto;max-width:none}.brand img{height:30px;width:auto;display:block;filter:none;mix-blend-mode:normal;transform:none;object-fit:contain;transition:height .4s cubic-bezier(.22,.61,.36,1),opacity .25s}.site-header.scrolled .brand img{height:26px}.brand:hover img{opacity:.82}
.desktop-nav{gap:2.4rem;font-size:.82rem;letter-spacing:.04em}.desktop-nav>a{padding:0;opacity:.82;font-size:.82rem;line-height:normal;text-transform:none;letter-spacing:.04em;color:#f4f3f0}.desktop-nav>a:hover{opacity:1}.desktop-nav>a[aria-current=page]{border:0;color:var(--gold)}.desktop-nav .nav-contact{border:1px solid #c2a066;padding:.6rem 1.3rem;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;opacity:1;color:#c2a066}
.footer-brand{display:flex;align-items:center;width:auto;max-width:none}.footer-brand img{height:40px;width:auto;display:block;filter:none;mix-blend-mode:normal;transform:none;object-fit:contain}
.menu-toggle{height:44px;min-width:44px;padding:0;line-height:1;align-items:center}.menu-toggle span{font-size:21px;line-height:1}.mobile-nav{top:88px;z-index:99}.site-header.scrolled+.mobile-nav{top:72px}
@media(max-width:900px){body{padding-top:89px}.brand{width:auto}.site-header{height:auto;padding:1.4rem clamp(1.5rem,4vw,3.5rem)}.mobile-nav{top:88px}}
@media(max-width:640px){.brand img{height:24px}.footer-brand img{height:40px}.site-header{padding:1.4rem clamp(1.5rem,4vw,3.5rem)}}

/* Portfolio hierarchy: a quiet opening, clearly labelled categories and compact related work. */
.portfolio-opening{display:block;padding-top:68px;padding-bottom:55px;border-bottom:1px solid #c2a06635}
.portfolio-opening h1{max-width:1100px;font-size:clamp(48px,5.5vw,80px)}
.portfolio-opening .lede{max-width:760px;margin-top:24px}
.portfolio-categories{padding-top:48px;padding-bottom:55px}
.portfolio-categories .intro-heading{margin-bottom:34px;align-items:center}
.portfolio-categories .intro-heading h2{font-size:clamp(34px,3.3vw,47px)}
.portfolio-categories .intro-heading .lede{max-width:420px}
.portfolio-track-record{padding-bottom:36px}
.category-band{position:relative;padding:21px 24px 20px;border-left:3px solid #bd985e;border-top:1px solid #c2a06644;border-bottom:1px solid #c2a06644;background:linear-gradient(105deg,#b58d482a,#b58d4807);display:flex;flex-direction:column;gap:12px;flex:1}
.category-index{font:600 9px/1.5 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:#d6b577}
.category-card .category-band h3{padding:0;font-size:clamp(27px,2.4vw,33px);line-height:1.13;color:#f5f1e9}
.category-action{display:flex;align-items:center;gap:20px;margin-top:auto;padding-top:7px;font:600 9px/1.5 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#dfc18c}
.category-action span{font-size:18px;line-height:1}
.category-description{padding:20px 25px 22px}
.category-card .category-description p{margin:0;font-size:13px;color:#bfb9ad;line-height:1.8}
.category-card .category-description .kind{margin-top:15px;color:#a99e8a}
.category-card:hover .category-band{background:linear-gradient(105deg,#b58d4842,#b58d4812)}
.category-card:focus-visible{outline-offset:5px}
.related-projects{margin-top:64px;padding-top:35px;border-top:1px solid #c2a06665}
.related-heading{margin-bottom:24px}.related-heading .eyebrow{margin-bottom:15px}.related-heading h2{font-size:34px}.related-heading p{margin-top:14px;font-size:13px;color:#bfb7a8}
.related-project-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:48px;list-style:none;padding:0;margin:0}
.related-project-list li{min-width:0;border-bottom:1px solid #c2a06635}
.related-project-list a{display:grid;grid-template-columns:1fr 22px;gap:5px 16px;align-content:center;min-height:76px;padding:15px 4px;line-height:1.5}
.related-title{font-size:15px;color:#eee9df}.related-location{grid-column:1;font-size:11px;color:#aca394}.related-arrow{grid-column:2;grid-row:1/3;align-self:center;color:#c8a667;font-size:18px}
.related-project-list a:hover .related-title{color:#dfc18c}.related-project-list a:hover{background:#b9985710}
.empty-results{padding:25px 0}
.about-opening .lede{max-width:760px}.about-founder{align-items:start;gap:65px}
.about-founder .founder-copy .lede{font-size:17px;max-width:720px;line-height:1.85}
.portrait-caption{padding:16px 6px 4px;font:400 10px/1.6 var(--sans);letter-spacing:.06em;color:#b9ac96}
.about-perspective,.about-values,.about-client{border-top:1px solid #c2a06630}
.about-values .engagement-grid{margin-top:40px}.about-values .engagement-grid h3{font-size:28px}
.about-client .text-link{margin-top:25px}.founder-introduction{border-top:1px solid #c2a06630}
@media(max-width:900px){.portfolio-opening{padding-top:50px;padding-bottom:42px}.portfolio-categories .intro-heading{align-items:start}.about-founder{grid-template-columns:1fr;gap:36px}.about-founder .founder-image{max-width:380px}.about-founder .founder-copy .lede{max-width:none}.related-project-list{column-gap:28px}}
@media(max-width:600px){.portfolio-opening{padding-top:36px;padding-bottom:34px}.portfolio-opening h1{font-size:49px;max-width:360px}.portfolio-opening .lede{font-size:15px}.portfolio-categories{padding-top:34px;padding-bottom:40px}.portfolio-categories .intro-heading{gap:18px;margin-bottom:28px}.portfolio-categories .intro-heading h2{font-size:35px}.category-band{padding:19px 21px}.category-card .category-band h3{font-size:30px}.category-description{padding:19px 22px}.related-projects{margin-top:42px;padding-top:28px}.related-heading h2{font-size:30px}.related-project-list{grid-template-columns:1fr}.related-project-list a{min-height:70px}.related-title{font-size:14px}.about-founder .founder-copy .lede{font-size:15px}.about-founder{gap:32px}.about-values .engagement-grid{gap:30px}}

/* October review: compact galleries, clear categories and service hierarchy. */
.section{padding-top:58px;padding-bottom:58px}
.page-intro,.service-intro{padding-top:44px;padding-bottom:36px}
.page-intro h1,.service-intro h1{font-size:clamp(42px,4.8vw,66px)}
.page-intro .lede,.service-intro .lede{margin-top:20px;font-size:16px;max-width:830px}
.portfolio-opening{padding-top:48px;padding-bottom:34px;min-height:0}
.portfolio-opening h1{font-size:clamp(46px,5vw,68px)}
.portfolio-opening .lede{max-width:780px;margin-top:18px}
.portfolio-categories{padding-top:32px;padding-bottom:40px}
.portfolio-categories .intro-heading{margin-bottom:24px}
.portfolio-categories .intro-heading h2{font-size:34px}
.portfolio-categories .intro-heading .lede{font-size:13px;max-width:390px}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.category-card,.category-card:nth-child(-n+2),.category-card:nth-last-child(-n+2),.category-card:last-child:nth-child(odd){grid-column:auto;min-height:0}
.category-visual,.category-card:nth-child(-n+2) .category-visual{aspect-ratio:auto;height:180px;padding:10px}
.category-visual>img,.category-visual>.source-window{height:100%;max-height:160px;width:100%;object-fit:contain}
.category-band{padding:15px 18px;gap:7px;min-height:128px}
.category-card .category-band h3{font-size:26px;line-height:1.15}
.category-action{padding-top:5px;font-size:9px}
.category-index{font-size:8px}
.portfolio-directory-cta{margin-top:30px;padding:23px 0}
.category-nav{margin-top:25px;gap:7px}
.category-nav a{padding:9px 11px;font-size:10px}
.project-grid,.featured-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.project-card{padding:11px 16px 18px;min-width:0}
.project-card .image{height:180px;aspect-ratio:auto;margin:0 -5px 12px}
.project-card .image img,.project-card .image .source-window{height:100%;max-height:180px;max-width:min(100%,var(--native-width,100%));object-fit:contain}
.project-card h3{font-size:24px;line-height:1.17;margin-bottom:4px}
.project-card .read-more{padding-top:14px;font-size:9px}
.project-card .location{margin-bottom:10px}
.project-card .engagement-label{margin-top:9px;padding-top:10px}
.career-card{border-color:#c2a06675;background:linear-gradient(130deg,#b58d481b,#0c0d10)}
.career-card p{font-size:12px;margin-top:8px}
.related-projects{margin-top:35px;padding-top:26px}
.related-heading{margin-bottom:18px}.related-heading h2{font-size:29px}
.related-project-list a{min-height:66px;padding:12px 4px}.related-title{font-size:14px}
.project-header{padding-top:30px;padding-bottom:30px}
.project-header h1{font-size:clamp(36px,4.4vw,60px)}
.project-header .project-subtitle{margin-top:18px;gap:15px 24px}
.breadcrumb{margin-bottom:20px}
.project-cover,.project-cover.panel,.project-cover.archival{padding-top:16px;padding-bottom:6px}
.project-cover>img,.project-cover.panel>img,.project-cover>.source-window,.project-cover.archival>.source-window{max-height:520px;height:auto;max-width:min(1040px,var(--native-width,1040px));object-fit:contain}
.project-cover figcaption{padding-top:12px;font-size:10px;max-width:1040px;line-height:1.7}
.project-body{gap:58px}.project-body h2{font-size:35px;margin-bottom:18px}
.project-body p{font-size:15px}.scope-list{margin:20px 0}.scope-list li{padding-top:6px;padding-bottom:6px}
.project-stat-grid{margin-top:25px;gap:18px}.project-stat{padding-top:16px}
.project-stat strong{font-size:29px}.project-case-callout{padding:22px;margin-top:26px}
.project-case-callout h3{font-size:25px}.project-case-callout .text-link{margin-top:10px}
.project-gallery-section{padding-top:0}.project-gallery-section h2{font-size:34px}
.project-gallery{margin-top:22px;max-width:1060px;margin-left:auto;margin-right:auto}
.gallery-stage figure{margin:0;padding:16px;background:#08090ae8;border:1px solid #c2a06638}
.gallery-stage figure+figure{margin-top:20px}
.gallery-stage a{display:flex;justify-content:center;align-items:center;height:460px;max-height:65vh}
.gallery-stage img,.gallery-stage svg{display:block;width:100%;height:100%;max-width:min(100%,var(--native-width,100%));object-fit:contain;aspect-ratio:auto}
.gallery-stage figcaption{margin-top:12px;font-size:11px;line-height:1.7;color:#c4bbab}
.gallery-action{display:block;margin-top:6px;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--gold)}
.gallery-controls{display:flex;justify-content:center;align-items:center;gap:24px;margin:15px 0;font-size:12px;color:#d8c6a5}
.gallery-controls button{width:44px;height:42px;border:1px solid #c2a06665;background:#0c0d10;color:var(--gold)}
.gallery-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:3px 3px 10px}
.gallery-thumbnails button{width:110px;height:70px;flex:0 0 110px;padding:5px;background:#0c0d10;border:1px solid #c2a06635;cursor:pointer}
.gallery-thumbnails button[aria-pressed=true]{border-color:var(--gold);background:#c2a0661a}
.gallery-thumbnails img,.gallery-thumbnails svg{width:100%;height:100%;object-fit:contain}
.lightbox-visual{display:flex;align-items:center;justify-content:center}
.lightbox-visual img,.lightbox-visual svg{max-width:100%;width:auto;height:auto;max-height:72vh;object-fit:contain}
.lightbox-visual svg{width:100%;height:65vh}
.service-intro{padding-bottom:22px}.service-nav{margin-top:28px}.service-nav a{padding:15px 18px 15px 0}
.service-phase{display:block;padding-top:34px;padding-bottom:34px;scroll-margin-top:100px}
.service-phase .phase-heading{position:static;display:flex;align-items:flex-start;gap:22px;padding:23px 26px;margin-bottom:20px;border-left:3px solid #c2a066;border-top:1px solid #c2a06650;border-bottom:1px solid #c2a06650;background:linear-gradient(105deg,#b58d4830,#b58d4808)}
.phase-number{font:400 28px/1.3 var(--serif);color:var(--gold)}
.service-phase h2{font-size:clamp(30px,3vw,42px)}
.phase-heading p{max-width:850px;margin-top:10px;font-size:13px}
.phase-heading .phase-promise{font-size:17px;color:#dfc79c;margin-top:12px}
.service-item,.service-item:last-child{border:1px solid #c2a0663b;margin-bottom:10px;padding:0}
.service-item summary{grid-template-columns:30px 1fr 95px;gap:16px;padding:19px 24px;background:linear-gradient(100deg,#c2a06617,#c2a06605)}
.service-item summary:after{display:none}.service-item summary h3{font-size:25px}
.expand-label{font:500 10px/1.5 var(--sans);letter-spacing:.05em;color:#dfc79c;text-align:right;white-space:nowrap}
.expand-label>span:last-child{display:inline-block;font-size:18px;margin-left:6px;vertical-align:middle}
.collapse-word{display:none}.service-item[open] .expand-word{display:none}.service-item[open] .collapse-word{display:inline}.service-item[open] .expand-label>span:last-child{transform:rotate(45deg)}
.service-item .service-content{padding:22px 28px 26px 70px;max-width:1040px;font-size:14px}
.service-content li{padding:3px 0}.service-related{margin-top:22px;padding-top:18px;border-top:1px solid #c2a06636}
.service-related h4{font:500 11px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.1em;color:#dfc79c;margin-bottom:12px}
.related-experience-links{display:flex;flex-wrap:wrap;gap:9px 20px}
.related-experience-links a{font:400 12px/1.7 var(--sans);color:var(--gold);border-bottom:1px solid #c2a06650}
.case-filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:20px}
.case-filters button{font:400 12px/1.4 var(--sans);color:#d8c9af;border:1px solid #c2a06665;background:#0c0d10;padding:11px 15px}
.case-filters button[aria-pressed=true]{color:#090a0b;background:#c2a066}
.case-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 25px;margin-top:23px}
.case-card,.case-grid .case-card:first-child{display:flex;flex-direction:column;grid-column:auto;padding-top:15px}
.case-image,.case-grid .case-card:first-child .case-image{height:180px;aspect-ratio:auto;margin-bottom:17px;max-height:none;grid-row:auto;padding:8px}
.case-card h3{font-size:25px;line-height:1.22}.case-card p{font-size:13px;margin-top:13px}
.case-card .text-link{margin-top:auto;padding-top:18px;font-size:9px}
.case-card .tag,.case-grid .case-card:first-child .tag{margin-top:0;font-size:9px;line-height:1.6}
.case-section{padding-bottom:28px;margin-bottom:28px}.case-section h2{font-size:31px;margin-bottom:18px}.case-section p{font-size:15px}
.case-layout{gap:55px;grid-template-columns:1fr 2.3fr}
.collection-intro{font-size:14px;color:#c3bbad;max-width:830px;margin-top:20px;line-height:1.8}
.page-intro .text-link{margin-top:18px}
.about-founder{grid-template-columns:.7fr 1.3fr;gap:48px}.about-founder .founder-copy .lede{font-size:15px;line-height:1.85;margin-top:18px}
.about-founder h2{font-size:39px}.about-founder .founder-image{max-width:330px}
.about-perspective .project-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:35px}
.about-perspective .project-stat strong{font-size:30px}
.capability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 45px}
.capability-grid article{border-top:1px solid #c2a06650;padding-top:20px}
.capability-grid h3{font-size:27px}.capability-grid p{font-size:14px;color:#c7c0b2;margin:14px 0}
.about-values .engagement-grid{margin-top:25px}.about-values .engagement-grid h3{font-size:25px}
.home-intro{gap:50px}.home-intro .lede{font-size:15px}.cta{padding-top:40px;padding-bottom:40px}.cta h2{font-size:39px}.cta p{font-size:14px}
.desktop-nav{gap:clamp(1rem,2vw,2.4rem)}
@media(max-width:1050px){.desktop-nav{display:none}.menu-toggle{display:flex}.mobile-nav{top:88px}.category-grid,.project-grid,.featured-grid,.case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-band{min-height:117px}.about-founder{grid-template-columns:.7fr 1.3fr;gap:30px}}
@media(max-width:900px){.section{padding-top:44px;padding-bottom:44px}.project-body,.case-layout{grid-template-columns:1fr;gap:32px}.service-phase{padding:28px 0}.about-founder{grid-template-columns:1fr}.about-founder .founder-image{max-width:300px}.capability-grid{gap:25px}.project-gallery-section{padding-top:0}.portfolio-opening{display:block}.home-intro{gap:28px}}
@media(max-width:600px){.section{padding-top:36px;padding-bottom:36px}.page-intro,.service-intro,.portfolio-opening{padding-top:30px;padding-bottom:28px}.portfolio-opening h1{font-size:44px;max-width:none}.portfolio-opening .lede{font-size:14px;max-width:none}.page-intro h1,.service-intro h1{font-size:39px}.page-intro .lede,.service-intro .lede{font-size:14px}.category-grid,.project-grid,.featured-grid,.case-grid{grid-template-columns:1fr;gap:20px}.category-visual,.category-card:nth-child(-n+2) .category-visual{height:170px}.category-band{min-height:0;padding:15px 18px}.category-card .category-band h3{font-size:27px}.category-action{padding-top:6px}.category-card .category-band{flex:1}.portfolio-categories .intro-heading .lede{margin-top:13px}.project-card .image{height:175px}.project-card h3{font-size:25px}.project-card{padding-bottom:17px}.project-tools{padding:18px 0;margin-bottom:24px}.project-header h1{font-size:35px}.project-body h2{font-size:30px}.project-body p{font-size:14px}.project-cover>img,.project-cover.panel>img,.project-cover>.source-window,.project-cover.archival>.source-window{max-height:380px}.related-projects{margin-top:28px}.related-heading h2{font-size:28px}.service-phase .phase-heading{padding:18px 17px;gap:13px}.phase-number{font-size:22px}.service-phase h2{font-size:30px}.phase-heading .phase-promise{font-size:16px}.phase-heading p{font-size:12px}.service-item summary{grid-template-columns:22px 1fr;gap:8px 10px;padding:16px}.service-item summary h3{font-size:23px}.expand-label{grid-column:2;text-align:left}.service-item .service-content{padding:17px 18px 22px}.service-nav a{font-size:11px}.service-related{margin-top:18px}.case-card h3{font-size:25px}.case-image,.case-grid .case-card:first-child .case-image{height:175px}.case-filters{gap:7px}.case-filters button{font-size:10px;padding:10px 12px}.gallery-stage figure{padding:10px}.gallery-stage a{height:240px;max-height:50vh}.gallery-thumbnails button{width:82px;flex-basis:82px;height:57px}.project-gallery-section{padding-top:0}.gallery-stage figcaption{font-size:10px}.capability-grid{grid-template-columns:1fr}.about-perspective .project-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-founder h2{font-size:34px}.about-founder .founder-copy .lede{font-size:14px}.about-founder .founder-image{max-width:280px}.capability-grid h3{font-size:26px}.home-intro .lede{font-size:14px}.cta h2{font-size:33px}.collection-intro{font-size:13px}}
/* Text-led service overview, informed by the user's Vespar reference. */
.service-nav{gap:16px;border:0;margin-top:30px}
.service-nav a{padding:20px 18px;background:linear-gradient(130deg,#c2a06617,#0b0c0ee8);border:1px solid #c2a06645;display:flex;flex-direction:column;gap:13px}
.service-nav a:hover{border-color:var(--gold);background:#c2a06620}
.service-nav a:after{display:none}
.service-nav h2{font-size:24px;line-height:1.2;letter-spacing:-.02em}
.service-nav a p{font-size:13px;line-height:1.7;color:#bfb7a7;max-width:270px}
.service-nav a .service-overview-number{font-size:10px;color:var(--gold);margin:0;letter-spacing:.1em}
.service-nav a .service-overview-action{font:500 10px/1.5 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#d9bd8c;margin:0;margin-top:auto;padding-top:4px}
.service-nav a .service-overview-action span{display:inline;font-size:15px;margin-left:10px}
@media(max-width:900px){.service-nav{gap:12px}.service-nav h2{font-size:23px}}
@media(max-width:600px){.service-nav{grid-template-columns:1fr 1fr;gap:10px}.service-nav a{padding:15px 12px;gap:10px}.service-nav h2{font-size:21px}.service-nav a p{font-size:13px}.service-nav a .service-overview-action{font-size:10px;letter-spacing:.03em}.service-nav a .service-overview-action span{margin-left:3px;font-size:12px}}
/* Portfolio landing-page review: slimmer category banners. */
.category-card .category-band{padding:10px 16px;gap:7px;min-height:0}
.category-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto}
.category-meta .category-action{padding:0;white-space:nowrap}
.category-meta .category-index{margin:0}
/* Home opening restored to the original site's full-screen project slideshow. */
body.home-page{padding-top:0}
.home-page .site-header:not(.scrolled){background:transparent}
.home-page .home-hero{position:relative;isolation:isolate;height:100vh;height:100svh;min-height:620px;max-height:none;max-width:none;margin:0;padding:0;display:block;overflow:hidden;background:#0c0c0d}
.home-page .hero-slides{position:absolute;inset:0;height:auto;width:auto;padding:0;border:0;background:transparent}
.home-page .hero-slide{inset:0;opacity:0;transition:opacity 2.4s cubic-bezier(.22,.61,.36,1)}
.home-page .hero-slide.active{opacity:1}
.home-page .hero-slide.flip{transform:scaleX(-1)!important}
.home-page .hero-slide img{width:100%;height:100%;object-fit:cover;object-position:center 46%;transform:scale(1)!important;transition:transform 11s linear}
.home-page .hero-slide.active img{transform:scale(1.05)!important}
.home-page .hero-slide:not(.active) img{transition:transform 1.1s cubic-bezier(.22,.61,.36,1)}
.home-page .hero-slide.tower img{object-position:72% 50%}
.home-page .home-hero:after{content:'';display:block;position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(12,12,13,.94) 0%,rgba(12,12,13,.82) 32%,rgba(12,12,13,.28) 62%,rgba(12,12,13,.42) 100%),linear-gradient(180deg,rgba(12,12,13,.72) 0%,rgba(12,12,13,0) 26%,rgba(12,12,13,0) 55%,rgba(12,12,13,.86) 100%)}
.home-page .home-hero .hero-content{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;height:100%;width:100%;max-width:1500px;margin:0 auto;padding:88px clamp(1.5rem,6vw,5rem) 115px}
.home-page .home-hero h1{font-family:var(--serif);font-weight:500;letter-spacing:-.015em;font-size:clamp(2.4rem,5.6vw,4.5rem);line-height:1.04;max-width:640px;margin:0}
.home-page .home-hero .eyebrow{margin-bottom:24px}
.home-page .home-hero .lede{font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.72;color:rgba(244,243,240,.84);max-width:46ch;margin-top:1.7rem}
.home-page .home-hero .actions{gap:2.2rem;margin-top:2.6rem}
.home-page .home-hero .button{font-size:.76rem;letter-spacing:.08em;padding:1rem 2.2rem;line-height:1.2}
.home-page .home-hero .text-link{padding:.95rem 0;border-bottom:1px solid #f4f3f059;font-size:.76rem;letter-spacing:.1em}
.home-page .home-hero .text-link:after{content:none}
.home-page .hero-controls{position:absolute;right:clamp(1.5rem,6vw,5rem);left:auto;bottom:clamp(2rem,5vh,3.2rem);z-index:3;text-align:right;max-width:44vw;margin:0}
.home-page .hero-register-label{display:block;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:#f4f3f080;margin-bottom:.55rem}
.home-page .hero-caption{font:500 clamp(.95rem,1.5vw,1.2rem)/1.5 var(--serif);color:#f4f3f0;margin:0}
.home-page .hero-indicators{display:flex;justify-content:flex-end;align-items:center;gap:6px;margin-top:9px}
.home-page .hero-indicators button{background:transparent;border:0;padding:0;margin:0;height:28px;width:26px;cursor:pointer}
.home-page .hero-indicators button[data-hero-index]:after{content:'';display:block;height:2px;background:#f4f3f038}
.home-page .hero-indicators button[aria-pressed=true]:after{background:var(--gold)}
.home-page .hero-indicators #slideshow-pause{width:28px;font-size:12px;color:#f4f3f0a3}
.home-page .hero-controls .photo-note{font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:#f4f3f06b;margin:0}
.home-page .hero-scroll{position:absolute;left:clamp(1.5rem,6vw,5rem);bottom:clamp(2rem,5vh,3.2rem);z-index:3;display:flex;align-items:center;gap:.7rem;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:#f4f3f08c}
.home-page .hero-scroll:after{content:'';display:block;height:30px;width:1px;background:var(--gold)}
@media(max-width:820px){.home-page .home-hero:after{background:linear-gradient(180deg,rgba(12,12,13,.86) 0%,rgba(12,12,13,.55) 40%,rgba(12,12,13,.9) 100%)}.home-page .hero-controls{max-width:calc(100% - 48px)}.home-page .hero-register-label,.home-page .hero-caption,.home-page .hero-controls .photo-note{display:none}.home-page .hero-indicators button{height:44px}.home-page .hero-controls{bottom:22px}.home-page .hero-scroll{bottom:29px}.home-page .home-hero .hero-content{padding-top:105px;padding-bottom:100px}.home-page .home-hero .actions{gap:20px;margin-top:28px}}
@media(max-width:420px){.home-page .home-hero h1{font-size:clamp(32px,9.5vw,39px)}.home-page .home-hero .lede{font-size:15px;line-height:1.6;margin-top:22px}.home-page .home-hero .eyebrow{font-size:8px;letter-spacing:.12em}.home-page .home-hero .button{padding:14px 18px;font-size:10px}.home-page .home-hero .text-link{font-size:10px}.home-page .hero-controls{right:20px}.home-page .hero-indicators{gap:4px}.home-page .hero-indicators button{width:23px}.home-page .hero-scroll{font-size:9px}}
@media(prefers-reduced-motion:reduce){.home-page .hero-slide,.home-page .hero-slide img{transition:none!important}.home-page .hero-slide img,.home-page .hero-slide.active img{transform:none!important}}
