:root{--navy:#03142b;--navy2:#0a223b;--ink:#102237;--muted:#536170;--gold:#b48c3e;--gold-light:#e0c27d;--paper:#f7f7f4;--stone:#edf0ef;--white:#fff;--line:#d7dcde;--orange:#e86630;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.65 'Segoe UI',Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(42px,4.7vw,68px);font-weight:780}h2{font-size:clamp(34px,3.05vw,46px);font-weight:750}h3{font-size:25px;font-weight:650}h4{font-size:19px}p+p{margin-top:16px}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:disabled{cursor:default;opacity:.35}img{display:block;max-width:100%;height:auto}button img{pointer-events:none}svg{flex-shrink:0}button{background:none;border:none;padding:0}a,button{touch-action:manipulation}input,textarea,select{min-width:0}input[type=checkbox]{accent-color:var(--navy)}:focus-visible{outline:3px solid var(--orange);outline-offset:5px}::selection{background:#e4cc93;color:var(--navy)}[hidden]{display:none!important}main:focus{outline:none}.wrap{width:min(1450px,calc(100% - 96px));margin:0 auto}.section{padding:76px 0}.icon{width:24px;height:24px;vertical-align:middle}.eyebrow{font-size:11px;line-height:1.55;font-weight:750;letter-spacing:.15em;text-transform:uppercase;color:#86631e;margin-bottom:18px}.lead{font-size:20px;line-height:1.65;color:var(--muted);max-width:730px}.lead-small{font-size:19px;line-height:1.5}.fine{font-size:11px;line-height:1.65;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:49px;padding:13px 22px;line-height:1.35;font-size:12px;font-weight:750;letter-spacing:.045em;text-transform:uppercase;border:1px solid transparent;transition:background .22s,box-shadow .22s,transform .22s}.button .icon{width:17px;height:17px}.button:hover{transform:translateY(-2px);box-shadow:0 7px 18px #03142b14}.button.primary{background:var(--navy);color:#fff}.button.primary:hover{background:#183b56}.button.gold{background:linear-gradient(115deg,#c4a25a,#e3c782 55%,#b8954b);color:var(--navy)}.button.gold:hover{box-shadow:0 6px 22px #d8bb6933}.button.outline{border-color:#8190a0;color:var(--navy);background:#ffffff55}.button.outline:hover{background:#fff;border-color:var(--navy)}.text-action{display:inline-flex;align-items:center;gap:16px;line-height:1.5;font-size:13px;font-weight:650;padding:8px 0;border-bottom:1px solid currentColor}.text-action .icon{width:17px}.text-action:hover{color:var(--gold)}.skip-link{position:fixed;top:-100px;left:15px;background:var(--navy);color:white;padding:15px 24px;z-index:999}.skip-link:focus{top:10px}
/* Compact, wide masthead. */
.utility{height:28px;background:var(--navy);color:#e2e8ef;font-size:9px;letter-spacing:.12em;line-height:1}.utility .wrap{display:flex;align-items:center;justify-content:space-between;height:100%}.utility b{padding:0 12px;color:var(--gold-light)}.header{position:sticky;top:0;z-index:60;background:#fafaf7ed;backdrop-filter:blur(14px);border-bottom:1px solid #d5d9d9;transition:box-shadow .3s}.header.is-scrolled{box-shadow:0 3px 18px #03142b0d}.header-inner{height:86px;display:flex;gap:28px;align-items:center;justify-content:space-between}.brand{display:inline-flex;gap:12px;align-items:center;flex-shrink:0}.brand-shield{height:50px;width:42px;background:var(--navy);clip-path:polygon(50% 0,100% 18%,100% 63%,90% 80%,50% 100%,10% 80%,0 63%,0 18%);display:flex;align-items:center;padding:2px}.brand-shield img{width:100%;height:100%;object-fit:contain}.brand-name{font:700 29px/1.03 Georgia,'Times New Roman',serif;letter-spacing:.005em}.brand-name small{display:block;font:700 7px/1.7 'Segoe UI',Arial,sans-serif;letter-spacing:.15em;text-align:center;margin-top:4px}.navigation{display:flex;gap:25px;align-items:center;margin-left:auto}.navigation a{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;line-height:1.4;position:relative;white-space:nowrap;padding:12px 0}.navigation a:after{position:absolute;content:'';height:2px;background:var(--gold);bottom:4px;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .25s}.navigation a:hover:after,.navigation a[aria-current=page]:after{transform:scaleX(1)}.header-button{font-size:10px;padding:12px 17px;min-height:43px}.menu-toggle{display:none}.reading-progress{height:2px;background:var(--gold);position:absolute;left:0;bottom:-1px;width:0;transition:width .1s linear}
/* B2: full-bleed image and bright, grounded content. */
.hero{position:relative;min-height:540px;overflow:hidden;isolation:isolate;background:#edf1f0}.hero-photo{position:absolute;inset:0 0 0 28%;z-index:-3}.hero-photo>img{height:100%;width:100%;object-fit:cover;object-position:50% 55%;animation:hero-settle 1.9s var(--ease) both}.hero-wash{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,#fafaf7 0%,#fafaf7fb 27%,#fafaf7e8 39%,#fafaf788 51%,#fafaf700 65%)}.hero-inner{min-height:540px;display:flex;align-items:center}.hero-copy{width:min(580px,53%);padding:56px 0 61px;animation:copy-in .8s var(--ease) both}.hero h1{font-size:clamp(44px,4.9vw,72px);line-height:1.02;letter-spacing:-.055em;font-weight:800}.hero .eyebrow{font-size:10px;color:#45566c;margin-bottom:23px}.hero-summary{font-size:18px;line-height:1.6;max-width:440px;margin:24px 0 0}.hero-summary strong{font-weight:650}.hero-sub{font-size:14px;line-height:1.6;color:#526170;max-width:405px;margin-top:12px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero-actions .button{font-size:10px;min-height:47px;padding:13px 20px}.hero-photo-caption{position:absolute;bottom:23px;right:32px;color:#fff;background:#03142bc4;padding:8px 14px;font-size:9px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;backdrop-filter:blur(8px)}.service-shortcuts{background:#fafaf7;border-bottom:1px solid var(--line)}.service-shortcuts>.wrap{display:grid;grid-template-columns:repeat(4,1fr);padding:22px 0}.service-shortcuts a{display:flex;align-items:center;gap:18px;padding:6px 28px;border-right:1px solid var(--line);position:relative;transition:color .2s,background .2s}.service-shortcuts a:first-child{padding-left:0}.service-shortcuts a:last-child{border:0}.service-shortcuts a>.icon{width:29px;height:32px;color:var(--gold)}.service-shortcuts span{font-size:12px;font-weight:700;text-transform:uppercase;line-height:1.45}.service-shortcuts .shortcut-arrow{height:15px;width:15px;color:var(--ink);opacity:0;transition:opacity .2s,transform .2s;margin-left:auto}.service-shortcuts a:hover .shortcut-arrow{opacity:1;transform:translate(2px,-2px)}.service-shortcuts a:hover{color:#916715}
/* MEP is the first major content block. */
.mep-feature{padding:51px 0 0;background:var(--navy);color:#fff;position:relative;overflow:hidden}.mep-feature:after{content:'';position:absolute;right:-110px;top:-270px;width:510px;height:510px;border:1px solid #e5c47914;transform:rotate(30deg);pointer-events:none}.mep-feature-grid{display:grid;grid-template-columns:1.1fr 1.05fr .9fr;gap:38px;align-items:center;position:relative;z-index:1}.mep-feature .eyebrow{color:var(--gold-light);font-size:10px;margin-bottom:14px}.mep-intro h2{font-size:40px;line-height:1.06;text-transform:uppercase}.mep-intro>p:not(.eyebrow){font-size:15px;line-height:1.65;margin-top:20px;color:#d5dfe9;max-width:380px}.mep-intro .button{font-size:10px;padding:12px 17px;margin-top:22px;gap:16px}.mep-disciplines{padding-left:30px;border-left:1px solid #60708670}.discipline-tabs{display:flex;gap:0;border-bottom:1px solid #53657a}.discipline-tabs button{flex:1;display:flex;align-items:center;flex-direction:column;gap:13px;padding:10px 6px 18px;color:#cbd5e1;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.discipline-tabs button .icon{width:31px;height:34px}.discipline-tabs button span{font-size:12px;font-weight:650}.discipline-tabs button:hover,.discipline-tabs button[aria-selected=true]{color:var(--gold-light);border-color:var(--gold-light)}.discipline-description{min-height:151px;padding:19px 0 0}.discipline-description h3{font-size:16px;letter-spacing:-.015em;line-height:1.45}.discipline-description p{font-size:12px;color:#c5d0df;line-height:1.7;margin-top:10px}.partner-signature{display:flex;align-items:center;gap:14px;padding:14px 0 0;border-top:1px solid #53657a;justify-content:space-between}.partner-signature>span{font-size:7px;letter-spacing:.1em;max-width:79px}.partner-signature strong{font-size:25px;font-weight:700;line-height:1;letter-spacing:.04em}.partner-signature small{font-size:8px;display:block;letter-spacing:.18em;margin-top:5px;text-align:center}.partner-signature>.icon{width:18px;color:var(--gold-light)}.mep-visual button{display:block;position:relative;width:100%;height:257px;background:white;overflow:hidden}.mep-visual img{width:100%;height:100%;object-fit:contain;padding:13px;transition:transform .7s var(--ease)}.mep-visual button:hover img{transform:scale(1.03)}.drawing-open{position:absolute;bottom:0;right:0;padding:11px 13px;background:#ddc181;color:var(--navy);display:flex;gap:16px;align-items:center;font-size:10px;font-weight:650}.drawing-open .icon{width:16px;height:16px}.mep-visual>p{font-size:9px;line-height:1.6;color:#aab8c9;margin-top:8px}.mep-responsibilities{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:35px;padding:18px 0;border-top:1px solid #60708670}.mep-responsibilities p{font-size:10px;color:#bfccdb;margin:0}.mep-responsibilities b{font-size:11px;display:inline-block;margin-right:12px;color:#eee5d1}
/* Visible code-resolution capability; no invented success case. */
.code-feature{background:#fafaf7;border-bottom:1px solid var(--line)}.code-layout{display:grid;grid-template-columns:.88fr 1.5fr .63fr;gap:36px;align-items:stretch}.notice-figure{position:relative;min-height:420px;overflow:hidden;background:#e1e2da}.notice-figure>img{height:100%;width:100%;object-fit:cover;object-position:47% 42%;transition:transform .8s var(--ease)}.notice-figure:hover>img{transform:scale(1.025)}.notice-figure figcaption{position:absolute;bottom:0;left:0;right:0;padding:10px 13px;font-size:9px;color:#fff;line-height:1.5;background:#03142bb8}.code-copy>.eyebrow{font-size:10px;color:#aa6427;margin-bottom:17px}.code-copy h2{font-size:46px;line-height:1.01;letter-spacing:-.05em}.code-copy>.lead-small{font-size:17px;font-weight:600;margin:20px 0 10px}.code-copy>p:not(.eyebrow):not(.lead-small):not(.fine){font-size:14px;line-height:1.65;max-width:560px}.code-steps{padding:0;margin:30px 0 26px;display:grid;grid-template-columns:repeat(3,1fr);gap:23px;list-style:none}.code-steps li{position:relative}.code-steps li:not(:last-child):after{content:'→';font-size:23px;color:var(--ink);position:absolute;right:0;top:0}.step-number{display:grid;place-items:center;background:var(--orange);color:white;width:34px;height:34px;border-radius:50%;font-size:18px;line-height:1;margin-bottom:12px;box-shadow:0 0 0 5px #e866300b;transition:transform .3s}.code-steps li:hover .step-number{transform:translateY(-3px)}.code-steps h3{font-size:15px;line-height:1.3;letter-spacing:-.01em;margin-bottom:8px}.code-steps p{font-size:11px;line-height:1.7;color:var(--muted)}.code-copy>.button{font-size:10px;min-height:43px}.code-copy>.fine{font-size:10px;margin-top:15px;max-width:530px}.code-types{border-left:1px solid var(--line);padding-left:27px;align-self:center}.code-types>.icon{width:34px;height:39px;color:var(--navy);margin-bottom:22px}.code-types h3{font-size:12px;line-height:1.5;text-transform:uppercase;letter-spacing:.06em;margin-bottom:20px}.code-types ul{list-style:none;padding:0;margin:0}.code-types li{display:flex;align-items:flex-start;gap:10px;font-size:11px;line-height:1.65;margin-bottom:14px}.code-types li .icon{color:var(--orange);height:17px;width:17px;margin-top:1px}.code-motto{padding-top:26px;margin-top:27px;border-top:1px solid var(--gold);font-size:9px;letter-spacing:.13em;line-height:1.95}
/* Real project imagery takes priority over decorative stock. */
.selected{background:var(--stone)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:64px;margin-bottom:34px}.section-heading>div:first-child{flex:1;min-width:0}.section-heading>div:last-child:not(:first-child){max-width:430px}.section-heading>p{max-width:420px;font-size:15px;color:var(--muted);line-height:1.7}.section-heading>div>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.75}.section-heading .button{margin-top:18px;min-height:43px;font-size:10px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.project-card{min-width:0;background:#fff;border:1px solid #d8dddc;transition:box-shadow .4s}.project-card:hover{box-shadow:0 15px 30px #03142b09}.project-picture{position:relative;height:320px;display:block;overflow:hidden;background:#fff}.project-picture>img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.project-picture:hover>img{transform:scale(1.04)}.project-picture.plan-picture>img{object-fit:contain;padding:20px}.media-type{position:absolute;bottom:0;left:0;background:#f5f5f1eb;padding:9px 14px;font-size:9px;letter-spacing:.055em;text-transform:uppercase;font-weight:600}.picture-arrow{position:absolute;right:14px;top:14px;display:grid;place-items:center;width:37px;height:37px;background:#f8f8f0dd;transition:background .2s,transform .2s}.picture-arrow .icon{width:18px}.project-picture:hover .picture-arrow{background:var(--gold-light);transform:translate(2px,-2px)}.project-caption{padding:22px 23px;display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid var(--line)}.project-caption .eyebrow{font-size:9px;margin-bottom:9px;color:#667383}.project-caption h3{font-size:27px}.project-caption p:not(.eyebrow){font-size:11px;line-height:1.7;color:var(--muted);margin-top:9px}.project-caption>a{padding:10px}.project-caption>a .icon{width:19px}.project-note{margin-top:22px;max-width:930px}.filter-bar{display:flex;align-items:center;gap:10px;padding-bottom:25px}.filter-bar button{min-height:44px;font-size:13px;padding:10px 20px;border:1px solid var(--line)}.filter-bar button[aria-pressed=true]{background:var(--navy);color:#fff;border-color:var(--navy)}.filter-bar button:hover{border-color:var(--ink)}.filter-bar small{margin-left:14px;opacity:.75}.filter-bar>span{font-size:11px;color:var(--muted);margin-left:auto}
.production{background:#fafaf7}.production-grid{display:grid;grid-template-columns:1.18fr 1fr;gap:68px;align-items:center}.production-copy h2{font-size:38px;line-height:1.1}.production-copy>p:not(.eyebrow):not(.fine){font-size:15px;color:var(--muted);margin-top:23px}.production-services{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px;margin:28px 0}.production-services>div{display:flex;align-items:center;gap:12px}.production-services .icon{width:22px;height:27px;color:var(--gold)}.production-services span{font-size:11px;line-height:1.6;font-weight:600}.production-copy .button{font-size:10px;min-height:44px}.production-copy>.fine{margin-top:18px;font-size:10px}.doc-viewer{min-width:0;background:#fff;border:1px solid #cbd2d5;box-shadow:10px 10px 0 #e8eceb}.doc-toolbar{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--line);gap:15px}.doc-toolbar>span{font-size:8px;font-weight:700;letter-spacing:.08em;display:flex;align-items:center;gap:9px}.doc-toolbar>span .icon{width:16px;height:19px;color:var(--gold)}.doc-toolbar .text-action{font-size:10px;border:0;padding:0}.doc-tabs{display:flex;border-bottom:1px solid var(--line)}.doc-tabs button{padding:12px 18px;flex:1;font-size:11px;border-bottom:2px solid transparent;min-height:43px}.doc-tabs button[aria-selected=true]{color:#765622;background:#f3efe4;border-bottom-color:var(--gold);font-weight:700}.doc-stage{height:350px;overflow:hidden}.doc-stage>button{width:100%;height:100%;display:block;padding:18px}.doc-stage img{width:100%;height:100%;object-fit:contain}.doc-caption{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:11px 16px;font-size:8px;line-height:1.5;color:var(--muted)}.doc-caption span:last-child{white-space:nowrap}.delivery{background:#eef0ee;border-top:1px solid var(--line)}.delivery-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:100px}.delivery-grid>div>p:not(.eyebrow){color:var(--muted);font-size:15px;max-width:400px;margin-top:22px}.delivery-options>a{display:block;border-bottom:1px solid #c1cbcf;padding:22px 44px 22px 0;position:relative}.delivery-options>a:first-child{border-top:1px solid #c1cbcf}.delivery-options>a>span{display:block;font-size:20px;line-height:1.4;font-weight:600;letter-spacing:-.02em}.delivery-options>a>p{font-size:13px;color:var(--muted);line-height:1.7;margin-top:8px}.delivery-options>a>.icon{position:absolute;right:7px;top:25px;width:20px;transition:transform .25s,color .25s}.delivery-options>a:hover>.icon{transform:translate(4px,-4px);color:var(--gold)}
.closing{background:var(--navy);color:#fff;padding:57px 0;border-bottom:1px solid #3c4c60;position:relative;overflow:hidden}.closing:after{content:'';width:360px;height:360px;position:absolute;right:-120px;top:-40px;border:1px solid #dfc98b29;transform:rotate(35deg);pointer-events:none}.closing-inner{display:flex;justify-content:space-between;align-items:center;gap:50px;position:relative;z-index:1}.closing h2{font-size:37px;line-height:1.12}.closing .eyebrow{color:var(--gold-light);font-size:10px;margin-bottom:15px}.closing p:not(.eyebrow){font-size:14px;color:#cad5e2;margin-top:16px}.closing-actions{display:flex;align-items:flex-start;flex-direction:column;gap:17px;min-width:230px}.closing-actions>a:not(.button){display:flex;align-items:center;gap:10px;font-size:12px}.closing-actions>a:not(.button) .icon{width:17px;height:18px}
.footer{background:var(--navy);color:#d0dbe6}.footer-main{padding:47px 0 31px;display:grid;grid-template-columns:1.2fr .85fr 1fr;gap:70px}.brand.inverse{color:var(--gold-light)}.footer .brand-shield{height:48px;width:40px}.footer .brand-name{font-size:26px}.footer .brand-name small{font-size:6px}.footer-main>div:first-child>p{font-size:18px;color:#f6f5ef;line-height:1.5;margin:18px 0 15px}.footer-main>div>small{font-size:10px;color:#aebcca}.footer-main h2{font-size:12px;font-weight:650;line-height:1.4;letter-spacing:.05em;color:#eeddb6;text-transform:uppercase;margin:4px 0 17px}.footer-main>div>a:not(.brand){display:flex;gap:8px;align-items:center;font-size:12px;margin:9px 0;line-height:1.6;max-width:fit-content}.footer-main>div>a:not(.brand):hover{color:var(--gold-light)}.footer-main>div>a>.icon{width:14px;height:15px}.footer-main>div>p{font-size:12px;line-height:1.7;margin:14px 0}.footer-professional{padding-bottom:23px}.footer-professional>p{font-size:9px;line-height:1.7;color:#93a5b7;max-width:1180px}.footer-bottom{background:#fafaf7;color:#546577;border-top:1px solid #e1e3e4}.footer-bottom>.wrap{display:flex;justify-content:space-between;align-items:center;padding:16px 0;font-size:9px;gap:18px}.footer-bottom nav{display:flex;gap:23px;flex-wrap:wrap}.footer-bottom a:hover{color:var(--gold)}
/* Shared internal-page language. */
.page-hero{padding:34px 0 49px;background:linear-gradient(105deg,#f8f8f5,#eef1ef);border-bottom:1px solid var(--line)}.page-hero .eyebrow{margin:30px 0 17px}.page-hero h1{font-size:56px;line-height:1.04;max-width:1000px}.page-hero .lead{margin-top:23px;font-size:18px;max-width:790px}.breadcrumb{display:flex;align-items:center;gap:12px;font-size:10px;color:#677585;line-height:1.6}.breadcrumb a:hover{color:var(--gold)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.two-col>div>p:not(.eyebrow):not(.fine){margin-top:23px;color:var(--muted);font-size:16px}.two-col .button{margin-top:25px}.partner-card{background:white;border:1px solid var(--line);padding:40px}.partner-card>span{font-size:10px;letter-spacing:.1em;font-weight:700}.partner-card>img{width:260px;max-height:150px;object-fit:contain;object-position:left center;margin:32px 0}.partner-card p{font-size:15px;margin:20px 0;color:var(--muted)}.partner-card .text-action{margin-top:10px}.mep-discipline-section{background:var(--navy);color:#fff}.mep-discipline-section .eyebrow{color:var(--gold-light)}.mep-discipline-section .section-heading>p{color:#c2cedd}.discipline-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:48px}.discipline-card-grid article{padding-left:28px;border-left:1px solid #667a8d7d}.discipline-card-grid article>.icon{width:35px;height:38px;color:var(--gold-light);margin-bottom:19px}.discipline-card-grid h3{font-size:27px}.discipline-card-grid h4{font-size:16px;line-height:1.45;letter-spacing:0;margin:20px 0 10px}.discipline-card-grid p{font-size:13px;color:#c3d0df;line-height:1.8}.role-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}.role-grid article{padding:38px}.role-grid article:first-child{background:var(--navy);color:#fff}.role-grid article:first-child p{color:#d0dbe6}.role-grid article:first-child .eyebrow{color:var(--gold-light)}.role-grid article:nth-child(2){background:#fff}.role-grid h3{font-size:32px;margin-bottom:21px}.role-grid p:not(.eyebrow){font-size:14px;line-height:1.8}.role-note{margin-top:20px;max-width:1060px}.code-page-photo{height:465px;min-height:0}.call-inline{display:flex;align-items:center;gap:12px;font-size:13px;margin-top:18px}.call-inline>.icon{width:16px}.resolution-process{background:#ecefed;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.resolution-process .code-steps{margin:43px 0 40px;border-bottom:1px solid var(--line);padding-bottom:32px;gap:55px}.resolution-process .step-number{height:40px;width:40px;font-size:21px}.resolution-process .code-steps h3{font-size:23px}.resolution-process .code-steps p{font-size:14px;max-width:310px}.resolution-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.resolution-detail-grid h3{font-size:18px;letter-spacing:-.015em;margin-bottom:15px}.resolution-detail-grid p{font-size:14px;line-height:1.8;color:var(--muted)}.check-list{list-style:none;padding:0;margin:25px 0}.check-list li{font-size:15px;border-bottom:1px solid var(--line);padding:14px 0;display:flex;align-items:center;gap:13px}.check-list .icon{height:18px;width:18px;color:var(--gold)}.faq>h3{font-size:24px;margin-bottom:25px}.faq details{border-top:1px solid #bec7cc;padding:18px 0}.faq details:last-child{border-bottom:1px solid #bec7cc}.faq summary{font-size:15px;font-weight:650;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;line-height:1.55}.faq summary::-webkit-details-marker{display:none}.faq summary>.icon{width:16px;height:16px;transition:transform .2s}.faq details[open] summary>.icon{transform:rotate(45deg)}.faq details>p{font-size:13px;color:var(--muted);margin-top:15px;line-height:1.8}
.projects-index{padding-top:40px}.project-overview{padding:45px 0;background:#edf0ef}.project-overview-grid{display:grid;grid-template-columns:1.25fr .85fr;gap:65px;align-items:center}.overview-image{height:405px;overflow:hidden;background:white}.overview-image>img{width:100%;height:100%;object-fit:cover}.overview-image.plan-overview>img{padding:20px;object-fit:contain}dl{margin:0}dl>div{padding:14px 0;border-bottom:1px solid #d0d6d8}dt{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}dd{font-size:15px;margin:0;line-height:1.5}.project-overview-grid .fine{margin:20px 0 13px}.project-gallery{display:grid;grid-template-columns:1fr 1fr;gap:35px 30px;margin-bottom:29px}.gallery-tile{min-width:0}.gallery-tile button{width:100%;height:335px;position:relative;background:white;display:block;overflow:hidden}.gallery-tile button>img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}.gallery-tile button:hover>img{transform:scale(1.035)}.drawing-tile button>img{object-fit:contain;padding:18px}.gallery-tile button>span{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:38px;height:38px;background:var(--navy);color:white}.gallery-tile button>span>.icon{width:18px}.gallery-tile figcaption{display:flex;justify-content:space-between;gap:15px;padding-top:13px;font-size:12px;line-height:1.6}.gallery-tile figcaption>span{font-size:10px;color:var(--muted)}.service-jump{background:var(--navy);color:#fff}.service-jump>.wrap{display:flex;gap:27px;justify-content:space-between;padding:20px 0}.service-jump a{font-size:11px;line-height:1.5;display:flex;gap:10px;align-items:center}.service-jump a:hover{color:var(--gold-light)}.service-jump .icon{width:15px}.service-detail{border-bottom:1px solid var(--line)}.service-detail:nth-of-type(even){background:#ecefee}.service-detail .two-col>div:first-child>.icon{color:var(--gold);width:33px;height:37px;margin-bottom:22px}.service-detail .two-col h2{max-width:550px}.service-detail .two-col .fine{font-size:11px}.service-highlight{background:#ecefee}.about-image{background:#eceeea;position:relative}.about-image>img{width:100%;height:380px;object-fit:cover}.about-image figcaption{font-size:10px;padding:10px 15px}.audience-section{background:#ecefee}.audience-section .two-col{align-items:stretch;gap:0}.audience-section article{padding:15px 45px 15px 0}.audience-section article+article{border-left:1px solid var(--line);padding:15px 0 15px 45px}.audience-section article>p:not(.eyebrow){font-size:16px;line-height:1.8;color:var(--muted);margin:24px 0}.audience-section .button{font-size:11px}
/* Honest, local-only email draft flow. */
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}.contact-info{position:sticky;top:135px}.contact-direct{margin:30px 0}.contact-direct>a,.contact-direct>div{display:flex;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--line);font-size:17px;line-height:1.5}.contact-direct small{display:block;font-size:9px;color:var(--muted);font-weight:650;letter-spacing:.12em;margin-bottom:8px}.contact-direct .icon{height:22px;width:22px;color:var(--gold)}.contact-direct>a>.icon:last-child{margin-left:auto;color:var(--ink);width:17px}.contact-info>p{font-size:14px}.contact-info>.fine{font-size:11px;max-width:380px;margin-top:22px}.form-panel{padding:35px;background:#fff;border:1px solid var(--line)}.form-panel>h2{font-size:26px;line-height:1.2;letter-spacing:-.025em}.form-panel>p{font-size:13px;line-height:1.7;color:var(--muted);margin:12px 0 24px}form label{display:block;font-size:12px;font-weight:650;line-height:1.7;margin-bottom:17px}form label>span:not(.checkbox span){color:#956326}input,select,textarea{width:100%;display:block;border:1px solid #c4ccd0;color:var(--ink);padding:11px 12px;font-size:14px;line-height:1.5;background:#fbfcfa;min-height:44px;border-radius:0;margin-top:7px}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.checkbox{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:11px;line-height:1.6;margin:23px 0}.checkbox input{width:17px;min-width:17px;height:17px;min-height:17px;margin:2px 0 0}.checkbox a{text-decoration:underline}form>.fine{margin-top:14px;font-size:10px;max-width:540px}.form-panel .button{font-size:10px}#email-draft{border-top:2px solid var(--gold);margin-top:30px;padding-top:22px}#email-draft h3{font-size:21px}#draft-text{margin:20px 0 0;font-size:12px}.draft-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:17px}#copy-status{margin-top:15px}.map-section{background:#edf0ee;border-top:1px solid var(--line)}.map-holder{display:grid;place-items:center;min-height:290px;border:1px solid #c0cace;background:repeating-linear-gradient(0deg,transparent,transparent 39px,#d3dbd844 40px),repeating-linear-gradient(90deg,transparent,transparent 39px,#d3dbd844 40px),#f6f8f5}.map-holder>div{text-align:center;padding:30px}.map-holder>div>.icon{color:var(--gold);height:33px;width:30px;margin:0 auto 14px}.map-holder h3{font-size:24px}.map-holder p{font-size:13px;line-height:1.8;margin-top:9px}.map-holder .button{margin-top:20px;font-size:10px}.map-holder .fine{font-size:10px}.map-holder iframe{width:100%;height:370px;border:0}
/* Support pages preserved, restyled into the same website. */
.legal-grid{display:grid;grid-template-columns:230px 1fr;gap:65px;align-items:start;padding-top:42px}.legal-nav{position:sticky;top:125px;display:flex;flex-direction:column;gap:12px;border-left:2px solid var(--gold);padding-left:20px}.legal-nav>a{font-size:12px;padding:4px 0}.legal-nav>a:hover{color:var(--gold)}.legal-copy{max-width:830px}.legal-copy>h2{font-size:23px;letter-spacing:-.02em;line-height:1.3;margin:30px 0 13px}.legal-copy>h2:first-of-type{margin-top:0}.legal-copy>p{font-size:14px;color:var(--muted);line-height:1.9}.legal-copy a{text-decoration:underline}.legal-date{font-size:11px!important;margin-top:30px}
/* Gallery, keyboard controls and document zoom. */
#gallery-dialog{border:0;width:min(1140px,calc(100vw - 40px));max-width:none;max-height:95dvh;padding:22px 26px;background:#f6f7f4;color:var(--ink);overflow:auto;box-shadow:0 20px 110px #0007}#gallery-dialog::backdrop{background:#03142bdb;backdrop-filter:blur(5px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:17px}.dialog-top .eyebrow{margin-bottom:6px;font-size:9px}.dialog-top h2{font-size:23px;letter-spacing:-.025em;line-height:1.3}.icon-button{border:1px solid #c4cdd0;width:41px;height:41px;display:grid;place-items:center;min-width:41px;background:#fff}.icon-button:hover{border-color:var(--gold);color:var(--gold)}.icon-button .icon{height:18px;width:18px}.gallery-viewport{height:min(60vh,600px);overflow:auto;background:#fff}.gallery-viewport img{width:100%;height:100%;max-width:none;object-fit:contain;display:block}.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:14px 0}.gallery-controls>div{display:flex;align-items:center;gap:13px}#gallery-count{font:12px/1.5 monospace;min-width:50px;text-align:center}.turn-back{transform:rotate(180deg)}.zoom-reset{font-size:12px;min-width:52px;min-height:40px}#gallery-caption{font-size:14px;font-weight:600;line-height:1.5}#gallery-note{font-size:10px;margin-top:8px;max-width:1020px}.reveal{transition:opacity .65s var(--ease),transform .7s var(--ease)}.reveal.reveal-pending{opacity:0;transform:translateY(22px)}
@keyframes hero-settle{from{transform:scale(1.035)}to{transform:scale(1)}}@keyframes copy-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1800px){.hero,.hero-inner{min-height:595px}.hero-photo{left:32%}.hero-copy{width:585px}.hero h1{font-size:72px}.mep-feature-grid{gap:50px}.mep-intro h2{font-size:46px}.mep-visual button{height:283px}.code-copy h2{font-size:49px}.project-picture{height:375px}.doc-stage{height:420px}}
@media(max-width:1250px){.wrap{width:calc(100% - 64px)}.header-inner{gap:23px}.navigation{gap:16px}.navigation a{font-size:10px}.brand-name{font-size:25px}.brand-name small{font-size:6px}.brand-shield{height:43px;width:36px}.header-button{padding:11px 12px;gap:13px;font-size:9px}.hero-copy{width:53%}.hero-summary{font-size:17px;max-width:400px}.hero h1{font-size:58px}.mep-feature-grid{gap:27px;grid-template-columns:1.15fr 1.1fr .85fr}.mep-disciplines{padding-left:23px}.mep-intro h2{font-size:36px}.mep-intro>p:not(.eyebrow){font-size:14px}.mep-intro .button{font-size:9px;gap:13px;padding:12px 13px}.mep-visual button{height:246px}.discipline-description{min-height:162px}.discipline-tabs button span{font-size:11px}.code-layout{gap:27px;grid-template-columns:.8fr 1.5fr .65fr}.code-copy h2{font-size:41px}.code-types{padding-left:20px}.code-types li{font-size:10px}.code-steps{gap:15px}.production-grid{gap:42px}.production-copy h2{font-size:33px}.service-shortcuts a{padding:6px 19px;gap:12px}.service-shortcuts span{font-size:11px}.section-heading{gap:40px}.project-picture{height:294px}.two-col{gap:60px}.contact-grid{gap:45px}.brand.inverse .brand-name{font-size:23px}}
@media(max-width:1020px){.header-button{display:none}.navigation{gap:21px}.header-inner{height:79px}.hero,.hero-inner{min-height:524px}.hero h1{font-size:52px}.hero-actions{gap:10px}.hero-actions .button{font-size:9px;padding:12px 15px}.mep-feature-grid{grid-template-columns:1fr 1fr;gap:33px}.mep-visual{display:none}.mep-responsibilities{gap:25px}.mep-responsibilities p b{display:block;margin-bottom:5px}.mep-disciplines{padding-left:35px}.mep-intro h2{font-size:38px}.mep-intro>p:not(.eyebrow){font-size:15px}.discipline-description{min-height:138px}.code-layout{grid-template-columns:.85fr 1.4fr;gap:30px}.code-types{grid-column:1/-1;display:flex;align-items:center;gap:25px;border-left:none;border-top:1px solid var(--line);padding:24px 0 0}.code-types>.icon{margin:0}.code-types h3{margin:0;font-size:10px;min-width:97px}.code-types ul{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 21px;flex:1}.code-types li{margin:0}.code-motto{display:none}.code-copy h2{font-size:43px}.notice-figure{min-height:420px}.production-grid{grid-template-columns:1.15fr 1fr;gap:32px}.production-copy h2{font-size:29px}.production-services{gap:16px;grid-template-columns:1fr}.production-copy>p:not(.eyebrow):not(.fine){font-size:14px;margin-top:19px}.doc-stage{height:370px}.delivery-grid{gap:50px}.delivery-options>a>span{font-size:18px}.delivery-grid h2{font-size:36px}.footer-main{gap:40px;grid-template-columns:1.1fr 1fr 1fr}.closing h2{font-size:33px}.page-hero h1{font-size:49px}.two-col{gap:35px}.discipline-card-grid{gap:25px}.contact-grid{gap:28px;grid-template-columns:.85fr 1.15fr}.contact-info h2{font-size:32px}.contact-direct>a,.contact-direct>div{font-size:14px;gap:11px}.form-panel{padding:25px}.project-overview-grid{gap:38px}.overview-image{height:359px}.gallery-tile button{height:285px}.legal-grid{gap:40px;grid-template-columns:190px 1fr}}
@media(max-width:800px){html{scroll-padding-top:88px}.wrap{width:calc(100% - 40px)}body{font-size:15px}.section{padding:51px 0}.utility{height:25px;font-size:7px;letter-spacing:.085em}.utility .wrap>span:last-child{display:none}.header-inner{height:71px;gap:15px}.brand-name{font-size:25px}.brand-shield{height:43px;width:36px}.brand-name small{font-size:6px}.menu-toggle{display:flex;align-items:center;gap:7px;padding:10px 0 10px 12px;font-size:10px;min-height:44px}.menu-toggle .icon{height:20px;width:21px}.navigation{display:none;position:absolute;left:0;right:0;top:100%;padding:18px 23px 26px;background:var(--navy);color:#fff;border-top:2px solid var(--gold);box-shadow:0 12px 30px #03142b33;max-height:calc(100dvh - 78px);overflow:auto}.header.menu-open .navigation{display:flex;flex-direction:column;align-items:stretch;gap:0}.navigation>a{font-size:13px;padding:14px 0;border-bottom:1px solid #72829444}.navigation>a:after{bottom:0}.hero{display:flex;flex-direction:column;min-height:0;background:#f8f8f5}.hero-photo{position:relative;inset:auto;order:2;z-index:auto;height:270px}.hero-photo>img{object-position:50% 58%;height:100%}.hero-wash{display:none}.hero-inner{min-height:0;order:1;display:block}.hero-copy{width:100%;padding:35px 0 32px;max-width:600px}.hero .eyebrow{font-size:8px;margin-bottom:17px}.hero h1{font-size:clamp(39px,7.5vw,50px);line-height:1.03;letter-spacing:-.05em}.hero-summary{font-size:15px;line-height:1.75;max-width:540px;margin-top:19px}.hero-sub{font-size:12px;margin-top:10px;max-width:450px}.hero-actions{margin-top:22px;gap:10px}.hero-actions .button{font-size:9px;padding:12px 15px;min-height:44px;gap:15px}.hero-photo-caption{font-size:8px;right:16px;bottom:14px;padding:7px 11px}.service-shortcuts>.wrap{grid-template-columns:1fr 1fr;padding:10px 0}.service-shortcuts a{padding:17px 12px!important;min-height:72px;gap:13px}.service-shortcuts a:nth-child(2){border-right:0}.service-shortcuts a:nth-child(3),.service-shortcuts a:nth-child(4){border-top:1px solid var(--line)}.service-shortcuts a:nth-child(3){padding-left:12px}.service-shortcuts span{font-size:10px;line-height:1.5}.service-shortcuts a>.icon{width:25px;height:28px}.service-shortcuts .shortcut-arrow{display:none}.mep-feature{padding-top:38px}.mep-feature-grid{grid-template-columns:1fr;gap:29px}.mep-intro h2{font-size:35px}.mep-intro>p:not(.eyebrow){font-size:14px;max-width:590px;margin-top:17px}.mep-intro .button{font-size:9px;margin-top:20px;min-height:44px}.mep-disciplines{border-left:0;border-top:1px solid #60708670;padding:18px 0 0}.discipline-tabs button{padding:9px 8px 15px;gap:10px}.discipline-tabs button>.icon{width:30px;height:34px}.discipline-tabs button span{font-size:12px}.discipline-description{min-height:128px;padding-top:18px}.discipline-description h3{font-size:16px;line-height:1.5}.discipline-description p{font-size:12px;line-height:1.8}.partner-signature{padding-top:17px;justify-content:flex-start;gap:25px}.partner-signature>span{max-width:none;font-size:8px}.partner-signature>.icon{margin-left:auto}.mep-visual{display:block;padding-top:7px}.mep-visual button{height:217px}.mep-visual button img{padding:10px}.mep-visual p{font-size:8px}.mep-responsibilities{grid-template-columns:1fr;gap:14px;padding:20px 0;margin-top:25px}.mep-responsibilities p{font-size:10px;line-height:1.7}.mep-responsibilities b{font-size:11px;display:inline-block;margin-bottom:0}.code-layout{grid-template-columns:1fr;gap:27px}.code-copy{order:0}.notice-figure{order:1;height:235px;min-height:0}.notice-figure>img{object-position:50% 39%}.code-types{order:2;grid-column:auto;display:block;border:1px solid var(--line);padding:22px}.code-copy h2{font-size:40px}.code-copy>.eyebrow{font-size:9px;letter-spacing:.09em;margin-bottom:15px}.code-copy>.lead-small{font-size:16px;line-height:1.55;margin-top:20px}.code-copy>p:not(.eyebrow):not(.lead-small):not(.fine){font-size:13px}.code-steps{gap:15px;margin-top:26px;margin-bottom:24px}.code-steps h3{font-size:13px;letter-spacing:-.02em}.code-steps p{font-size:10px;line-height:1.7}.code-steps li:after{font-size:20px!important;right:3px!important}.step-number{width:31px;height:31px;font-size:16px;margin-bottom:12px}.code-copy>.button{min-height:44px;font-size:9px}.code-copy>.fine{font-size:9px;margin-top:14px}.code-types>.icon{width:25px;height:28px;float:left;margin-right:14px}.code-types h3{font-size:10px;line-height:1.5;margin-bottom:20px}.code-types ul{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;clear:both}.code-types li{font-size:11px;gap:8px;margin:0;line-height:1.7}.code-types li>.icon{width:15px;height:15px;margin-top:3px}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:35px;line-height:1.08}.section-heading>div:last-child:not(:first-child){max-width:none;margin-top:20px}.section-heading>p{max-width:none;font-size:14px;line-height:1.8;margin-top:20px}.section-heading>div>p:not(.eyebrow){font-size:13px}.section-heading .button{font-size:9px;min-height:43px;margin-top:17px}.eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:15px}.project-grid{grid-template-columns:1fr;gap:25px}.project-picture{height:265px}.project-caption{padding:19px}.project-caption h3{font-size:27px}.project-caption .eyebrow{font-size:8px;margin-bottom:9px}.project-caption p:not(.eyebrow){font-size:10px}.media-type{font-size:8px}.production-grid{grid-template-columns:1fr;gap:30px}.production-copy{order:0}.production-visual{order:1}.production-copy h2{font-size:33px;line-height:1.13}.production-copy>p:not(.eyebrow):not(.fine){font-size:14px;line-height:1.8}.production-services{grid-template-columns:1fr 1fr;gap:19px 13px;margin:25px 0}.production-services>div{gap:10px}.production-services span{font-size:10px}.production-services .icon{width:19px;height:24px}.production-copy .button{font-size:9px}.production-copy>.fine{font-size:9px;line-height:1.8}.doc-viewer{box-shadow:6px 6px 0 #e8eceb}.doc-toolbar{padding:13px 12px;gap:9px}.doc-toolbar>span{font-size:7px;letter-spacing:.015em;gap:7px}.doc-toolbar>span .icon{width:14px}.doc-toolbar>.text-action{font-size:9px;gap:7px}.doc-tabs button{font-size:10px;padding:12px 9px}.doc-stage{height:330px}.doc-stage>button{padding:12px}.doc-caption{font-size:7px;gap:10px;padding:10px}.doc-caption>span:last-child{white-space:normal;text-align:right}.delivery-grid{grid-template-columns:1fr;gap:28px}.delivery-grid h2{font-size:34px}.delivery-grid>div>p:not(.eyebrow){font-size:14px;line-height:1.8;margin-top:19px}.delivery-options>a{padding:20px 36px 20px 0}.delivery-options>a>span{font-size:19px}.delivery-options>a>p{font-size:12px}.closing{padding:40px 0}.closing-inner{display:block}.closing h2{font-size:32px;max-width:420px;line-height:1.1}.closing p:not(.eyebrow){font-size:13px;line-height:1.8;max-width:500px}.closing-actions{margin-top:24px;gap:17px}.closing-actions .button{font-size:10px;min-height:45px}.closing .eyebrow{font-size:8px}.footer-main{grid-template-columns:1fr 1fr;gap:32px;padding:34px 0 25px}.footer-main>div:first-child{grid-column:1/-1}.footer-main>div:first-child>p{font-size:17px;margin-top:18px}.footer-main .brand-name{font-size:26px}.footer-main>div>h2{font-size:10px}.footer-main>div>a:not(.brand){font-size:11px;overflow-wrap:anywhere;display:block;max-width:100%}.footer-main>div>p{font-size:11px}.footer-main>div>small{font-size:9px}.footer-professional>p{font-size:8px;line-height:1.85}.footer-bottom>.wrap{display:block;font-size:8px;padding:17px 0}.footer-bottom nav{gap:16px;margin-top:13px}.page-hero{padding:25px 0 35px}.page-hero .eyebrow{margin-top:24px}.page-hero h1{font-size:39px;line-height:1.09}.page-hero .lead{font-size:15px;line-height:1.8;margin-top:20px}.breadcrumb{font-size:9px;gap:8px}.two-col{grid-template-columns:1fr;gap:31px}.two-col h2{font-size:34px;line-height:1.12}.two-col>div>p:not(.eyebrow):not(.fine){font-size:14px;line-height:1.85;margin-top:20px}.two-col .button{font-size:10px;margin-top:23px}.partner-card{padding:28px}.partner-card>img{max-width:220px;margin:25px 0}.partner-card>span{font-size:9px}.discipline-card-grid{grid-template-columns:1fr;gap:28px;margin-top:30px}.discipline-card-grid article{padding:10px 0 10px 21px}.discipline-card-grid h3{font-size:27px}.discipline-card-grid h4{font-size:16px;margin-top:17px}.discipline-card-grid p{font-size:13px}.role-grid{grid-template-columns:1fr}.role-grid article{padding:27px}.role-grid h3{font-size:29px}.role-grid p:not(.eyebrow){font-size:13px}.role-note{font-size:10px}.code-page-intro .two-col>figure{order:1}.code-page-intro .two-col>div{order:0}.code-page-photo{height:315px}.resolution-process h2{font-size:36px}.resolution-process .code-steps{gap:16px;margin:31px 0 28px;padding-bottom:27px}.resolution-process .code-steps h3{font-size:15px}.resolution-process .code-steps p{font-size:11px}.resolution-process .step-number{width:34px;height:34px;font-size:17px}.resolution-detail-grid{grid-template-columns:1fr;gap:28px}.resolution-detail-grid h3{font-size:20px}.resolution-detail-grid p{font-size:13px}.check-list li{font-size:13px;line-height:1.7;gap:11px}.faq{margin-top:9px}.faq summary{font-size:14px}.faq details p{font-size:13px}.filter-bar{gap:7px;flex-wrap:wrap}.filter-bar button{font-size:10px;padding:10px 12px;min-height:42px}.filter-bar small{margin-left:6px}.filter-bar>span{flex-basis:100%;font-size:9px;margin:6px 0 0}.projects-index{padding-top:27px}.project-overview{padding:29px 0}.project-overview-grid{grid-template-columns:1fr;gap:24px}.overview-image{height:280px}.project-overview dl{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}dt{font-size:8px}dd{font-size:12px}.project-overview .fine{font-size:10px}.project-gallery{grid-template-columns:1fr;gap:27px}.gallery-tile button{height:286px}.gallery-tile.drawing-tile button{height:340px}.gallery-tile figcaption{font-size:11px}.gallery-tile figcaption>span{font-size:9px}.service-jump>.wrap{flex-wrap:wrap;gap:15px 23px;padding:21px 0}.service-jump a{font-size:10px}.service-detail .two-col>div:first-child>.icon{height:31px;width:28px}.about-image>img{height:285px}.about-image figcaption{font-size:9px}.audience-section article{padding:0 0 30px}.audience-section article+article{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}.audience-section article>p:not(.eyebrow){font-size:14px}.contact-grid{grid-template-columns:1fr;gap:29px}.contact-info{position:static}.contact-info h2{font-size:34px}.contact-direct>a,.contact-direct>div{font-size:16px}.contact-info>.fine{font-size:10px;max-width:none}.form-panel{padding:23px 20px}.form-panel>h2{font-size:24px}.form-panel>p{font-size:12px}.form-row{grid-template-columns:1fr;gap:0}.map-holder>div{padding:27px 18px}.map-holder h3{font-size:21px}.map-holder iframe{height:300px}.legal-grid{grid-template-columns:1fr;gap:32px;padding-top:28px}.legal-nav{position:static;display:flex;flex-direction:row;flex-wrap:wrap;gap:7px 18px;padding:0;border-left:0;border-bottom:1px solid var(--line);padding-bottom:20px}.legal-nav>a{font-size:10px}.legal-copy>h2{font-size:22px}.legal-copy>p{font-size:13px;line-height:1.9}#gallery-dialog{width:calc(100vw - 20px);max-height:96dvh;padding:16px}.dialog-top h2{font-size:18px;line-height:1.3}.dialog-top .eyebrow{font-size:8px}.dialog-top{gap:15px}.gallery-viewport{height:54vh}.gallery-controls>div{gap:6px}.gallery-controls .icon-button{width:34px;height:38px;min-width:34px}.gallery-controls{gap:12px}.zoom-reset{font-size:10px;min-width:38px}#gallery-count{min-width:42px;font-size:10px}#gallery-caption{font-size:12px}#gallery-note{font-size:9px;line-height:1.75}.fine.project-note{font-size:10px}}
@media(max-width:370px){.wrap{width:calc(100% - 32px)}.brand-name{font-size:23px}.brand{gap:8px}.hero h1{font-size:37px}.hero-actions .button{font-size:8px;padding:12px;gap:10px}.code-copy h2{font-size:37px}.code-steps{gap:11px}.code-steps p{font-size:9px}.code-steps h3{font-size:12px}.code-types ul{grid-template-columns:1fr}.partner-signature{gap:16px}.partner-signature>span{font-size:7px}.production-services{grid-template-columns:1fr}.footer-main{gap:24px}.footer-main>div>a:not(.brand){font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal.reveal-pending{opacity:1;transform:none}}
@media print{.utility,.header,.reading-progress,.menu-toggle,.footer,.button,.closing,.gallery-controls{display:none!important}.wrap{width:100%}.hero-photo{opacity:.25}.hero,.hero-inner{min-height:400px}.reveal.reveal-pending{opacity:1;transform:none}.section{padding:25px 0}body{background:#fff}section{break-inside:avoid}}
