:root{--slate:#2b3a52;--slate-dim:#0e1b2c;--amber:#c8860a;--amber-lt:#e0991a;--chalk:#f7f6f4;--white:#fffffb;--rule:#d8d4cf;--mid:#6b7280;--steel:#4b5563;--nav-h:64px;--pad-sm:clamp(20px, 5vw, 72px);--pad-lg:clamp(24px, 4vw, 40px)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:var(--nav-h)}body{background:var(--slate-dim);color:var(--chalk);-webkit-font-smoothing:antialiased;font-family:DM Sans,sans-serif;font-weight:300;overflow-x:hidden}#app-canvas{z-index:0;width:100%;height:100%;display:block;position:fixed;inset:0}#page-wrap{z-index:10;position:relative}.page{display:none}.page.active{display:block}#splash{z-index:9000;background:var(--white);flex-direction:column;justify-content:center;align-items:center;transition:opacity .4s;display:flex;position:fixed;inset:0;overflow:hidden}#splash.done{opacity:0;pointer-events:none}.splash-stage{flex-direction:column;align-items:center;width:min(90vw,520px);padding:0 16px;display:flex}.splash-logo-wrap{opacity:0;margin-bottom:clamp(16px,3vw,28px);animation:.8s cubic-bezier(.22,1,.36,1) .1s forwards splashIn;transform:scale(.85)translateY(-10px)}.splash-logo-mark{filter:drop-shadow(0 6px 24px #fff6);width:auto;height:clamp(52px,10vw,80px);display:block}.splash-name{text-align:center;opacity:0;flex-direction:column;align-items:center;animation:.9s cubic-bezier(.22,1,.36,1) .3s forwards splashIn;display:flex;transform:translateY(16px)}.splash-name-main{color:var(--slate-dim);letter-spacing:-.04em;font-family:Playfair Display,serif;font-size:clamp(32px,7vw,64px);font-weight:700;line-height:.9}.splash-name-group{color:var(--slate);letter-spacing:-.02em;font-family:Playfair Display,serif;font-size:clamp(20px,4vw,36px);font-style:italic;font-weight:400}.splash-line-wrap{opacity:0;width:100%;margin:clamp(16px,3vw,24px) 0;animation:.7s .55s forwards splashIn;position:relative}.splash-line{background:var(--amber);width:0;height:1.5px;animation:.6s cubic-bezier(.4,0,.2,1) .3s forwards datumDraw}.splash-datum{letter-spacing:.2em;text-transform:uppercase;color:#c8860a73;font-size:8px;font-weight:700;position:absolute;top:6px;right:0}.splash-disciplines{opacity:0;align-items:center;gap:10px;animation:.6s 1.1s forwards splashIn;display:flex}.splash-disciplines span{letter-spacing:.22em;text-transform:uppercase;color:var(--slate);font-size:9px;font-weight:700}.splash-disciplines .dot{background:var(--amber);opacity:.5;letter-spacing:0;border-radius:50%;width:3px;height:3px}.splash-location{letter-spacing:.22em;text-transform:uppercase;color:#f7f6f424;opacity:0;font-size:9px;font-weight:600;animation:.5s 1.35s forwards splashIn;position:absolute;bottom:clamp(16px,4vw,32px)}@keyframes splashIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes datumDraw{to{width:100%}}.nav{height:var(--nav-h);z-index:500;padding:0 var(--pad-sm);align-items:center;gap:0;transition:background .4s,-webkit-backdrop-filter .4s,backdrop-filter .4s;display:flex;position:fixed;top:0;left:0;right:0}.nav.scrolled{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--rule);background:#fffffff5}.nav-logo{opacity:0;pointer-events:none;align-items:center;gap:10px;margin-right:auto;text-decoration:none;transition:opacity .45s,transform .45s;display:flex;transform:translate(-8px)}.nav.scrolled .nav-logo{opacity:1;pointer-events:auto;transform:none}.nav-logo-p{width:auto;height:28px;display:block}.nav-logo-main{color:var(--chalk);letter-spacing:-.01em;white-space:nowrap;font-family:Playfair Display,serif;font-size:16px;font-weight:700}.nav.scrolled .nav-logo-main{color:var(--slate)}.nav-links{gap:28px;list-style:none;display:none}@media (width>=1000px){.nav-links{display:flex}}.nav-links a,.nav-div-link{color:#f7f6f4bf;letter-spacing:.05em;cursor:pointer;font-size:12px;font-weight:500;text-decoration:none;transition:color .2s}.nav-links a:hover,.nav-div-link:hover{color:var(--chalk)}.nav.scrolled .nav-links a,.nav.scrolled .nav-div-link{color:var(--slate)}.nav.scrolled .nav-links a:hover,.nav.scrolled .nav-div-link:hover{color:var(--amber)}.nav-divs{border-left:1px solid #f7f6f426;gap:20px;margin:0 24px;padding-left:24px;display:none}.nav.scrolled .nav-divs{border-left-color:var(--rule)}@media (width>=1200px){.nav-divs{display:flex}}.nav-cta{background:var(--amber);color:#fff;letter-spacing:.1em;text-transform:uppercase;margin-left:20px;padding:9px 20px;font-size:11px;font-weight:600;text-decoration:none;transition:background .2s;display:none}@media (width>=900px){.nav-cta{display:block}}.nav-cta:hover{background:var(--amber-lt)}#ham{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;margin-left:auto;padding:8px;display:flex}@media (width>=900px){#ham{display:none}}#ham span{background:var(--chalk);width:22px;height:1.5px;transition:all .3s;display:block}.nav.scrolled #ham span{background:var(--slate)}#mobile-menu{top:var(--nav-h);background:var(--slate-dim);z-index:490;padding:24px var(--pad-sm) 48px;flex-direction:column;transition:transform .4s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;bottom:0;left:0;right:0;transform:translate(100%)}#mobile-menu.open{transform:none}.mob-link{color:#f7f6f4a6;cursor:pointer;border-bottom:1px solid #ffffff0f;align-items:center;gap:20px;padding:16px 0;font-family:Playfair Display,serif;font-size:20px;font-weight:400;text-decoration:none;transition:color .2s;display:flex}.mob-link span{letter-spacing:.15em;color:var(--amber);min-width:28px;font-family:DM Sans,sans-serif;font-size:10px;font-weight:700}.mob-link:hover{color:var(--chalk)}.mob-divider{letter-spacing:.22em;text-transform:uppercase;color:#c8860a80;margin:20px 0 8px;font-size:9px;font-weight:700}.mob-cta{background:var(--amber);color:#fff;text-align:center;letter-spacing:.1em;text-transform:uppercase;margin-top:auto;padding:16px;font-size:12px;font-weight:600;text-decoration:none}.section{padding:var(--pad-lg) var(--pad-sm);position:relative}.section-num{top:var(--pad-lg);color:#2b3a520f;pointer-events:none;z-index:0;-webkit-user-select:none;user-select:none;font-family:Playfair Display,serif;font-size:clamp(80px,14vw,160px);font-weight:700;line-height:1;position:absolute;right:0}.section-num.light{color:#f7f6f40d}.section>*{z-index:1;position:relative}.section>.section-num{z-index:0}.section-header{margin-bottom:clamp(36px,6vw,56px)}.eyebrow{letter-spacing:.26em;text-transform:uppercase;color:var(--amber);margin-bottom:12px;font-size:10px;font-weight:700;display:block}.section-title{letter-spacing:-.025em;color:var(--slate);font-family:Playfair Display,serif;font-size:clamp(28px,5vw,52px);font-weight:700;line-height:1.08}.section-sub{max-width:520px;color:var(--steel);margin-top:16px;font-size:clamp(13px,1.8vw,15px);font-weight:300;line-height:1.8}.btn-primary{background:var(--amber);color:#fff;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:none;align-items:center;gap:8px;padding:13px 26px;font-family:DM Sans,sans-serif;font-size:11px;font-weight:600;text-decoration:none;transition:background .25s,gap .25s;display:inline-flex}.btn-primary:hover{background:var(--amber-lt);gap:12px}.btn-secondary{color:#f7f6f4a6;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #f7f6f433;align-items:center;padding:12px 26px;font-family:DM Sans,sans-serif;font-size:11px;font-weight:600;text-decoration:none;transition:color .25s,border-color .25s;display:inline-flex}.btn-secondary:hover{color:var(--chalk);border-color:#f7f6f480}.section-hero{min-height:100svh;padding-top:calc(var(--nav-h) + clamp(16px,3vw,32px));padding-bottom:clamp(64px,10vw,96px);padding-left:var(--pad-sm);padding-right:var(--pad-sm);background:0 0;flex-direction:column;justify-content:center;display:flex;position:relative}.hero-inner{margin-bottom:0}.hero-name-top,.hero-name-group{letter-spacing:-.04em;color:var(--chalk);opacity:0;font-family:Playfair Display,serif;font-size:clamp(52px,13vw,164px);font-weight:700;line-height:.86;animation:1.2s cubic-bezier(.16,1,.3,1) .2s forwards heroIn;display:block;transform:translateY(28px)}.hero-name-group{margin-bottom:clamp(18px,3vw,32px);animation-delay:.32s}.hero-sep{opacity:0;align-items:center;gap:14px;margin-bottom:clamp(20px,3vw,36px);animation:.8s .52s forwards heroIn;display:flex}.hero-sep-line{background:var(--amber);flex-shrink:0;width:clamp(36px,5vw,72px);height:1px}.hero-sep-label{letter-spacing:.22em;text-transform:uppercase;color:#c8860a99;white-space:nowrap;flex-shrink:0;font-size:10px;font-weight:700}.hero-sep-rule{background:linear-gradient(90deg,#c8860a73,#0000);flex:1;height:1px}.hero-meta{opacity:0;grid-template-columns:1fr 1fr;gap:12px 48px;max-width:620px;margin-bottom:clamp(28px,4vw,44px);animation:.8s .7s forwards heroIn;display:grid}@media (width<=480px){.hero-meta{grid-template-columns:1fr}}.hero-meta-left{color:#f7f6f466;border-left:1.5px solid #c8860a47;padding-left:12px;font-size:clamp(12px,1.6vw,14px);font-weight:300;line-height:1.7}.hero-meta-right{flex-direction:column;justify-content:center;gap:2px;display:flex}.hero-meta-right span{color:#f7f6f44d;font-family:Playfair Display,serif;font-size:clamp(13px,1.8vw,16px);font-style:italic;line-height:1.5}.hero-meta-right span:first-child{color:#f7f6f480}.hero-actions{opacity:0;flex-wrap:wrap;gap:14px;animation:.8s .88s forwards heroIn;display:flex}.hero-scroll{opacity:0;letter-spacing:.26em;text-transform:uppercase;color:#ffffff29;-webkit-user-select:none;user-select:none;cursor:default;z-index:2;flex-direction:column;align-items:center;gap:10px;font-size:9px;font-weight:700;animation:.6s 1.2s forwards heroIn;display:flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.scroll-track{background:#ffffff12;width:1px;height:40px;position:relative;overflow:hidden}.scroll-track:after{content:"";background:var(--amber);width:100%;height:100%;animation:2.4s ease-in-out 1.6s infinite scanDrop;position:absolute;top:-100%;left:0}@keyframes heroIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes scanDrop{0%{top:-100%}to{top:100%}}.section-about{border-top:3px solid var(--amber);background:#f7f6f4}.about-grid{grid-template-columns:1fr;gap:clamp(36px,6vw,64px);display:grid}@media (width>=860px){.about-grid{grid-template-columns:1fr 1fr}}.about-left .section-title,.about-left h2{color:var(--slate)}.about-left .eyebrow{color:var(--amber)}.about-text{color:var(--steel);margin-top:20px;font-size:clamp(13px,1.8vw,15px);font-weight:300;line-height:1.85}.about-highlight{border-left:3px solid var(--amber);color:var(--slate);background:#c8860a0a;margin-top:28px;padding:20px 20px 20px 24px;font-family:Playfair Display,serif;font-size:clamp(14px,2vw,17px);font-style:italic;line-height:1.6}.vmv-grid{border:1px solid var(--rule);grid-template-columns:1fr 1fr;gap:0;display:grid}.vmv-card{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:clamp(18px,3vw,28px);position:relative}.vmv-card:before{content:"";background:var(--amber);width:0;height:3px;transition:width .5s;position:absolute;top:0;left:0}.vmv-card:hover:before{width:100%}.vmv-full{border-bottom:none;border-right:none;grid-column:1/-1}.vmv-icon{color:var(--amber);margin-bottom:10px;font-size:18px}.vmv-card h4{color:var(--slate);margin-bottom:8px;font-family:Playfair Display,serif;font-size:16px;font-weight:600}.vmv-card p{color:var(--steel);font-size:13px;font-weight:300;line-height:1.7}.vmv-values{grid-template-columns:1fr 1fr;gap:6px 20px;list-style:none;display:grid}.vmv-values li{color:var(--steel);font-size:12px;font-weight:300;line-height:1.5}.vmv-values strong{color:var(--slate);font-weight:600}.stats-strip{border-top:3px solid var(--amber);border-bottom:1px solid var(--rule);background:#fff}.stats-inner{border-left:1px solid var(--rule);grid-template-columns:repeat(2,1fr);display:grid}@media (width>=640px){.stats-inner{grid-template-columns:repeat(3,1fr)}}@media (width>=1080px){.stats-inner{grid-template-columns:repeat(6,1fr)}}.stat-cell{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:clamp(18px,3vw,28px) clamp(14px,2.5vw,24px);position:relative}@media (width>=1080px){.stat-cell{border-bottom:none}.stat-cell:last-child{border-right:none}}@media (width<=639px){.stat-cell:nth-child(2n){border-right:none}}@media (width>=640px) and (width<=1079px){.stat-cell:nth-child(3n){border-right:none}.stat-cell:nth-child(4),.stat-cell:nth-child(5),.stat-cell:nth-child(6){border-bottom:none}}.stat-pre{letter-spacing:.22em;text-transform:uppercase;color:var(--amber);margin-bottom:6px;font-size:9px;font-weight:700;display:block}.stat-val{color:var(--slate);align-items:baseline;margin-bottom:6px;font-family:Playfair Display,serif;font-size:clamp(36px,6vw,56px);font-weight:700;line-height:1;display:flex}.stat-val sup{color:var(--amber);vertical-align:super;margin-left:1px;font-size:.36em}.stat-k{color:var(--amber);font-size:.52em;font-weight:600}.stat-label{letter-spacing:.06em;text-transform:uppercase;color:var(--mid);font-size:10px;font-weight:600;line-height:1.4}.section-services{border-top:1px solid var(--rule);background:#fff}.section-services .section-title,.section-services h2{color:var(--slate)}.services-grid{border-left:1px solid var(--rule);border-top:1px solid var(--rule);grid-template-columns:1fr;display:grid}@media (width>=640px){.services-grid{grid-template-columns:1fr 1fr}}@media (width>=900px){.services-grid{grid-template-columns:1fr 1fr 1fr}}.svc{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:clamp(24px,4vw,40px) clamp(20px,3vw,32px);transition:background .25s;position:relative}.svc:hover{background:#c8860a08}@media (width>=900px){.svc:nth-child(3n){border-right:none}.svc:first-child,.svc:nth-child(2),.svc:nth-child(3){border-bottom:none}}@media (width<=639px){.svc:nth-child(2n){border-right:none}}.svc-num{letter-spacing:.12em;color:var(--amber);margin-bottom:14px;font-family:Playfair Display,serif;font-size:11px;font-weight:700}.svc h3{color:var(--slate);margin-bottom:12px;font-family:Playfair Display,serif;font-size:clamp(16px,2.5vw,22px);font-weight:600;line-height:1.2}.svc p{color:var(--steel);margin-bottom:12px;font-size:13px;font-weight:300;line-height:1.8}.svc-clients{letter-spacing:.08em;color:var(--mid);text-transform:uppercase;font-size:10px;font-weight:600;margin-bottom:16px!important}.svc-link{letter-spacing:.1em;text-transform:uppercase;color:var(--amber);gap:6px;font-size:11px;font-weight:600;text-decoration:none;transition:gap .2s;display:inline-flex}.svc-link:hover{gap:10px}.section-projects{border-top:3px solid var(--amber);background:#f7f6f4}.section-projects .section-title,.section-projects h2{color:var(--slate)}.proj-tabs{border-bottom:1px solid var(--rule);gap:0;margin-bottom:clamp(24px,4vw,40px);display:flex}.proj-tab{cursor:pointer;letter-spacing:.1em;text-transform:uppercase;color:var(--mid);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 24px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:600;transition:all .25s}.proj-tab.active{color:var(--slate);border-bottom-color:var(--amber)}.proj-tab span{background:var(--rule);margin-left:6px;padding:2px 7px;font-size:10px}.proj-grid{background:var(--rule);grid-template-columns:repeat(2,1fr);gap:1px;display:grid}@media (width>=640px){.proj-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=1000px){.proj-grid{grid-template-columns:repeat(4,1fr)}}.pcard{background:#fff;overflow:hidden}.pcard-img{aspect-ratio:4/3;background:#2b3a520d;position:relative;overflow:hidden}.pcard-img img{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.pcard:hover .pcard-img img{transform:scale(1.05)}.pcard-img-placeholder{background:repeating-linear-gradient(45deg,#2b3a520a 0 10px,#0000 10px 20px);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.pcard-badge{letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;font-size:9px;font-weight:700;position:absolute;top:10px;right:10px}.pcard-badge-active{color:var(--amber);background:#c8860a26}.pcard-badge-done{color:var(--slate);background:#2b3a521a}.pcard-body{padding:14px}.pcard-client{letter-spacing:.1em;text-transform:uppercase;color:var(--amber);margin-bottom:4px;font-size:10px;font-weight:700}.pcard-scope{color:var(--slate);margin-bottom:8px;font-size:12px;font-weight:500;line-height:1.4}.pcard-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pcard-loc{color:var(--mid);font-size:10px}.pcard-area{color:var(--amber);margin-left:auto;font-size:10px;font-weight:600}.pcard-sector{letter-spacing:.08em;text-transform:uppercase;color:var(--mid);background:var(--rule);padding:2px 7px;font-size:9px;font-weight:700}.section-clients{background:var(--slate-dim);border-top:3px solid var(--amber)}.clients-groups{flex-direction:column;gap:clamp(32px,5vw,48px);display:flex}.client-group-label{letter-spacing:.22em;text-transform:uppercase;color:#c8860a8c;margin-bottom:16px;font-size:9px;font-weight:700;display:block}.logo-grid{background:#ffffff0f;border:1px solid #ffffff0f;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1px;display:grid}.logo-tile{background:#ffffff08;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:120px;padding:2px;transition:background .25s;display:flex}.logo-tile:hover{background:#ffffff12}.logo-tile img{object-fit:contain;opacity:.85;width:100%;max-height:80px;transition:opacity .25s}.logo-tile:hover img{opacity:1}.logo-tile span{letter-spacing:.1em;text-transform:uppercase;color:#f7f6f44d;text-align:center;font-size:9px;font-weight:600}.section-people{border-top:3px solid var(--amber);background:#f7f6f4}.section-people .section-title{color:var(--slate)}.people-grid{grid-template-columns:1fr;gap:0;display:grid}@media (width>=540px){.people-grid{grid-template-columns:repeat(3,1fr);gap:clamp(16px,3vw,40px)}}.person-card{padding-bottom:20px}.person-photo{aspect-ratio:3/4;border:1px solid var(--rule);background:#2b3a520f;justify-content:center;align-items:center;max-height:260px;margin-bottom:14px;display:flex;position:relative;overflow:hidden}.person-photo img{object-fit:cover;z-index:2;width:100%;height:100%;position:absolute;inset:0}.person-mono{color:#2b3a522e;letter-spacing:.04em;-webkit-user-select:none;user-select:none;font-family:Playfair Display,serif;font-size:32px;font-weight:600}.person-info{border-top:2px solid var(--rule);padding-top:14px;position:relative}.person-info:before{content:"";background:var(--amber);width:0;height:2px;transition:width .5s;position:absolute;top:-2px;left:0}.person-card:hover .person-info:before{width:32px}.person-name{color:var(--slate);margin-bottom:3px;font-family:Playfair Display,serif;font-size:15px;font-weight:600}.person-role{letter-spacing:.1em;text-transform:uppercase;color:var(--amber);font-size:10px;font-weight:700}.person-dept{color:var(--mid);margin-top:3px;font-size:11px;font-weight:300}.person-trigger{cursor:pointer;-webkit-user-select:none;user-select:none;border-top:1px solid #d8d4cf80;justify-content:space-between;align-items:center;margin-top:10px;padding-top:10px;display:flex}.trigger-label{letter-spacing:.12em;text-transform:uppercase;color:var(--amber);font-size:10px;font-weight:700}.trigger-icon{color:var(--amber);font-size:16px;transition:transform .4s cubic-bezier(.4,0,.2,1)}.person-card.open .trigger-icon{transform:rotate(45deg)}.person-bio{opacity:0;max-height:0;transition:max-height .5s cubic-bezier(.4,0,.2,1),opacity .4s,padding .4s;overflow:hidden}.person-card.open .person-bio,.person-card:hover .person-bio{opacity:1;max-height:200px;padding:12px 0 4px}.bio-inner{border-left:2px solid var(--amber);padding-left:12px}.bio-inner p{color:var(--steel);font-size:12.5px;font-weight:300;line-height:1.75}.section-contact{background:var(--slate-dim);border-top:3px solid var(--amber);position:relative;overflow:hidden}.contact-grid{z-index:2;grid-template-columns:1fr;gap:clamp(36px,6vw,60px);display:grid;position:relative}@media (width>=800px){.contact-grid{grid-template-columns:1fr 1fr}}.section-contact .section-title{color:var(--chalk)}.contact-info{flex-direction:column;gap:16px;margin-top:28px;display:flex}.ci-row{align-items:flex-start;gap:16px;display:flex}.ci-label{letter-spacing:.2em;text-transform:uppercase;color:#c8860a99;flex-shrink:0;width:52px;padding-top:2px;font-size:9px;font-weight:700}.ci-val{color:#f7f6f4b3;font-size:13px;font-weight:300;line-height:1.6;text-decoration:none}.ci-val:hover{color:var(--amber)}.contact-form{flex-direction:column;gap:12px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=480px){.form-row{grid-template-columns:1fr}}.contact-form input,.contact-form textarea,.contact-form select{color:var(--chalk);background:#ffffff0d;border:1px solid #f7f6f41f;outline:none;width:100%;padding:13px 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:300;transition:border-color .25s}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#f7f6f44d}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--amber)}.contact-form textarea{resize:vertical;min-height:100px}.footer{background:var(--slate-dim);padding:clamp(24px,4vw,40px) var(--pad-sm);border-top:1px solid #ffffff0f}.footer-inner{flex-direction:column;gap:16px;display:flex}@media (width>=700px){.footer-inner{flex-flow:wrap;justify-content:space-between;align-items:center}}.footer-logo-wrap{align-items:center;gap:10px;display:flex}.footer-logo-p{width:auto;height:24px;display:block}.footer-logo{color:#f7f6f48c;font-family:Playfair Display,serif;font-size:14px;font-weight:700}.footer-logo span{color:var(--amber);font-style:italic}.footer-meta{color:#f7f6f433;letter-spacing:.04em;font-size:11px;line-height:1.7}.footer-links{flex-wrap:wrap;gap:20px;display:flex}.footer-links a{letter-spacing:.1em;text-transform:uppercase;color:#f7f6f44d;cursor:pointer;font-size:11px;font-weight:600;text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--amber)}.footer-copy{color:#f7f6f426;letter-spacing:.06em;width:100%;font-size:10px}.div-hero{min-height:70vh;padding:calc(var(--nav-h) + 80px) var(--pad-sm) clamp(48px,8vw,80px);background:var(--slate-dim);border-bottom:3px solid var(--amber);align-items:flex-end;display:flex;position:relative}.div-hero-inner{z-index:2;max-width:700px;position:relative}.div-title{letter-spacing:-.04em;color:var(--chalk);margin:16px 0 24px;font-family:Playfair Display,serif;font-size:clamp(48px,10vw,100px);font-weight:700;line-height:.9}.div-title em{color:var(--amber);font-style:italic;font-weight:400}.div-tagline{color:#f7f6f48c;max-width:520px;margin-bottom:32px;font-size:clamp(14px,2vw,18px);font-weight:300;line-height:1.6}.div-body{background:#fff}.div-content-grid{grid-template-columns:1fr;gap:clamp(36px,6vw,64px);display:grid}@media (width>=800px){.div-content-grid{grid-template-columns:1fr 1.4fr}}.div-content-left .section-title{color:var(--slate);margin-bottom:20px}.div-content-left p{color:var(--steel);margin-top:16px;font-size:clamp(13px,1.8vw,15px);font-weight:300;line-height:1.85}.div-expertise-list{border:1px solid var(--rule);flex-direction:column;gap:0;display:flex}.div-expertise-item{border-bottom:1px solid var(--rule);align-items:flex-start;gap:20px;padding:clamp(18px,3vw,28px) clamp(16px,2.5vw,24px);transition:background .2s;display:flex}.div-expertise-item:last-child{border-bottom:none}.div-expertise-item:hover{background:#c8860a08}.dei-num{color:var(--amber);letter-spacing:.1em;flex-shrink:0;padding-top:2px;font-family:Playfair Display,serif;font-size:11px;font-weight:700}.div-expertise-item h4{color:var(--slate);margin-bottom:6px;font-family:Playfair Display,serif;font-size:15px;font-weight:600}.div-expertise-item p{color:var(--steel);font-size:12.5px;font-weight:300;line-height:1.7}.div-projects{border-top:1px solid var(--rule);background:#f7f6f4}.div-projects .section-title{color:var(--slate)}.div-proj-grid{background:var(--rule);grid-template-columns:repeat(2,1fr);gap:clamp(1px,.5vw,2px);display:grid}@media (width>=700px){.div-proj-grid{grid-template-columns:repeat(4,1fr)}}.div-proj-card{background:#fff;overflow:hidden}.div-proj-card img{aspect-ratio:16/9;object-fit:cover;width:100%;transition:transform .5s;display:block}.div-proj-card:hover img{transform:scale(1.04)}.div-proj-info{padding:14px}.div-proj-info h4{color:var(--slate);margin-bottom:4px;font-family:Playfair Display,serif;font-size:14px;font-weight:600}.div-proj-info p{color:var(--mid);font-size:11px;font-weight:300;line-height:1.5}.div-back-bar{background:var(--slate-dim);padding:clamp(32px,5vw,52px) var(--pad-sm);border-top:1px solid #ffffff0f;flex-wrap:wrap;gap:16px;display:flex}.page-transition-overlay{background:var(--slate-dim);z-index:800;pointer-events:none;opacity:0;transition:opacity .3s;position:fixed;inset:0}.page-transition-overlay.active{opacity:1;pointer-events:all}@media (width<=600px){#splash{padding-left:env(safe-area-inset-left,16px);padding-right:env(safe-area-inset-right,16px)}.splash-stage{width:min(90vw,520px)}.splash-disciplines{flex-wrap:wrap;justify-content:center;gap:6px 10px}.splash-location{text-align:center;left:0;right:0}.hero-sep{flex-wrap:wrap;gap:8px}.hero-sep-label{white-space:normal}.hero-sep-rule{display:none}.hero-actions{flex-direction:column;align-items:flex-start}.hero-actions .btn-primary,.hero-actions .btn-secondary{justify-content:center;width:100%}}@media (width<=540px){.vmv-grid{grid-template-columns:1fr}.vmv-full{grid-column:1}.vmv-values{grid-template-columns:1fr}}@media (width<=480px){.svc:nth-child(2n){border-right:none}.pcard-body{padding:10px}.pcard-scope{font-size:11px}}@media (width<=500px){.logo-grid{grid-template-columns:repeat(2,1fr)}.logo-tile{min-height:100px;padding:12px 8px}.logo-tile img{max-height:56px}}@media (width<=539px){.person-card{border-bottom:1px solid var(--rule);margin-bottom:28px;padding-bottom:28px}.person-card:last-child{border-bottom:none;margin-bottom:0}.person-photo{max-height:220px}}@media (width<=480px){.contact-form input,.contact-form textarea{padding:12px 14px;font-size:16px}}@media (width<=600px){.div-hero{min-height:60vh;padding-top:calc(var(--nav-h) + 48px);align-items:flex-end;padding-bottom:40px}.div-title{font-size:clamp(36px,11vw,72px)}.div-tagline{font-size:14px}.div-back-bar{flex-direction:column}.div-back-bar .btn-primary,.div-back-bar .btn-secondary{text-align:center;justify-content:center}}@media (width<=500px){.div-proj-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){#mobile-menu{padding-bottom:calc(48px + env(safe-area-inset-bottom,0px))}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
