@font-face{font-family:'Space Grotesk';src:url('../fonts/SpaceGrotesk-Variable.ttf') format('truetype');font-style:normal;font-weight:300 700;font-display:swap}
@font-face{font-family:'Public Sans';src:url('../fonts/PublicSans-Variable.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
:root{--navy:#142c46;--navy-dark:#102338;--blue:#234c73;--copper:#a94c2d;--copper-light:#db9879;--paper:#f8fafc;--mist:#eaf0f5;--line:#d4dde5;--text:#526576;--white:#fff;--heading:'Space Grotesk',Arial,sans-serif;--body:'Public Sans',Arial,sans-serif;--gutter:clamp(24px,5.25vw,84px);--radius:20px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:var(--paper);color:var(--navy);font:400 16px/1.7 var(--body);-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--heading);font-weight:500}h1,h2{letter-spacing:-.055em;line-height:1.07}h2{font-size:clamp(38px,4.25vw,66px)}h3{line-height:1.17;letter-spacing:-.04em}a{color:inherit;text-decoration:none}a,button,input,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}button,summary{cursor:pointer}button:disabled{cursor:default;opacity:.7}img{width:100%;height:100%;display:block;object-fit:cover}address{font-style:normal}[hidden]{display:none!important}::selection{background:#c9ddee;color:var(--navy)}:focus-visible{outline:3px solid var(--copper);outline-offset:5px}.expertise :focus-visible,.footer :focus-visible{outline-color:var(--copper-light)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;left:20px;top:16px;z-index:30;background:var(--navy);color:white;padding:10px 20px;transform:translateY(-170%)}.skip:focus{transform:translateY(0)}.section{padding:100px var(--gutter)}.overline{font-size:12px;line-height:1.5;letter-spacing:.1em;font-weight:600}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:54px;border:1px solid transparent;border-radius:30px;padding:14px 24px;font-size:14px;font-weight:600;line-height:1.5;transition:background .2s,box-shadow .2s}.button span{font-size:23px;line-height:1}.button-navy{background:var(--navy);color:white}.button-navy:hover{background:var(--blue);box-shadow:0 5px 20px #142c4615}
.header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px;padding:24px var(--gutter);min-height:104px;border-bottom:1px solid var(--line);background:#f8fafcf5;position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}.navigation{display:flex;gap:26px;align-items:center;justify-self:start;font-size:14px;font-weight:500}.navigation a{position:relative;padding:9px 0}.navigation a:after{content:'';position:absolute;left:0;bottom:5px;width:0;height:1px;background:var(--copper);transition:width .2s}.navigation a:hover:after{width:100%}.wordmark{display:flex;align-items:center;gap:11px}.monogram{font-family:var(--heading);font-weight:500;line-height:1;letter-spacing:-.14em;border:1px solid var(--navy);border-radius:50%;width:49px;height:49px;display:flex;justify-content:center;align-items:center;padding:0 8px 4px 0;font-size:34px}.monogram>span{color:var(--copper)}.wordmark-type{font-family:var(--heading);font-size:25px;font-weight:700;letter-spacing:-.065em;line-height:1}.wordmark-type small{font-family:var(--body);display:block;font-size:12px;letter-spacing:.26em;font-weight:500;margin-top:8px}.header-phone{display:flex;justify-self:end;align-items:center;gap:11px;font-size:14px;white-space:nowrap}.phone-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:#f0ded5;color:var(--copper);font-size:22px}.header-phone:hover{color:var(--copper)}.menu-button{display:none}
.hero{padding:0 26px}.hero-intro{text-align:center;padding:62px var(--gutter) 54px}.hero .overline{display:flex;justify-content:center;align-items:center;gap:14px;color:#4e6374;font-size:12px;letter-spacing:.09em}.location-mark{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--copper)}.overline-divider{color:#9aaab5}.hero h1{font-size:clamp(50px,6.25vw,92px);max-width:1140px;margin:24px auto 23px;font-weight:500;line-height:1.04;letter-spacing:-.065em}.hero h1>span{color:var(--copper)}.hero-summary{color:var(--text);font-size:16px;line-height:1.75;margin:auto;max-width:630px}.hero .button{margin-top:26px}.city-panorama{height:clamp(360px,35vw,530px);position:relative;border-radius:var(--radius);overflow:hidden;background:var(--mist)}.city-panorama>img{position:absolute;inset:0;object-position:center 52%}.city-panorama:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#102338d9);pointer-events:none}.city-panorama figcaption{position:absolute;z-index:1;bottom:36px;left:46px;right:42px;color:white;display:flex;align-items:center;gap:38px}.caption-label{display:block;font-size:12px;letter-spacing:.12em;margin-bottom:5px}.city-panorama strong{font-family:var(--heading);font-size:35px;letter-spacing:-.05em;font-weight:500;line-height:1.2}.city-coordinate{font-size:12px;line-height:1.7;letter-spacing:.08em;border-left:1px solid #ffffff70;padding-left:30px;margin-left:auto}.city-panorama a{flex-shrink:0;display:grid;place-items:center;width:47px;height:47px;border:1px solid #ffffff90;border-radius:50%;font-size:24px}.city-panorama a:hover{background:#fff;color:var(--navy)}
.company{display:grid;grid-template-columns:1fr 2.55fr;gap:50px}.section-aside{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between}.section-aside .overline{color:var(--copper);margin-top:7px}.section-symbol{font-family:var(--heading);display:inline-flex;align-items:center;justify-content:center;font-size:77px;line-height:1;font-weight:400;letter-spacing:-.18em;background:var(--mist);border-radius:50%;width:130px;height:130px;padding:0 22px 11px 0;color:var(--navy)}.section-symbol>span{color:var(--copper)}.company h2{margin-bottom:31px;font-size:clamp(38px,4vw,61px)}.company-columns{display:grid;grid-template-columns:1fr 1fr;gap:38px;color:var(--text);font-size:16px;line-height:1.8}.focus-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.focus-tags span{font-size:12px;border:1px solid #c9d4dd;border-radius:20px;padding:7px 14px;color:#415b70;line-height:1.5}
.expertise{background:var(--navy);color:white;padding-top:87px;padding-bottom:90px}.expertise-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:43px}.expertise .overline{color:#c8d6e2;margin-bottom:22px}.expertise-heading h2{font-size:clamp(40px,4.1vw,63px)}.expertise-heading>p{color:#becdda;font-size:16px;max-width:330px;line-height:1.8;padding-bottom:3px}.service-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.service-card{border-radius:18px;overflow:hidden;background:var(--white);color:var(--navy);display:flex;flex-direction:column}.service-image{height:245px;position:relative;overflow:hidden}.service-image img{object-position:center;transition:transform .5s}.service-card:hover .service-image img{transform:scale(1.025)}.service-category{position:absolute;top:18px;left:18px;background:#f8fafcef;border-radius:20px;padding:6px 12px;font-size:12px;letter-spacing:.035em;line-height:1.5;backdrop-filter:blur(7px)}.service-body{padding:27px 28px 24px;flex:1;display:flex;flex-direction:column;align-items:start}.service-body h3{font-size:28px;letter-spacing:-.055em;font-weight:500;margin-bottom:16px;min-height:2.3em}.service-body p{font-size:16px;line-height:1.75;color:var(--text);margin-bottom:26px}.service-link{display:flex;align-items:center;justify-content:space-between;gap:15px;align-self:stretch;border-top:1px solid var(--line);padding-top:18px;margin-top:auto;font-size:13px;font-weight:600;line-height:1.6}.service-link>span{font-size:20px;font-weight:400}.service-link:hover{color:var(--copper)}
.work{padding-top:93px;padding-bottom:78px}.work-heading{display:grid;grid-template-columns:1fr 2.55fr;gap:50px;align-items:start;margin-bottom:40px}.work-heading .overline{color:var(--copper);padding-top:7px}.work-heading h2{font-size:clamp(38px,3.8vw,59px)}.work-layout{display:grid;grid-template-columns:1.24fr 1fr;gap:30px;align-items:stretch}.work-photo{min-height:535px;border-radius:18px;overflow:hidden;position:relative}.work-photo>img{position:absolute;inset:0;object-position:center}.work-photo>figcaption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#142c46c9);color:white;padding:55px 30px 26px;font-size:12px;font-weight:500;letter-spacing:.06em}.conversation-guide{background:var(--mist);border-radius:18px;padding:35px 38px 31px}.guide-label{font-size:12px;letter-spacing:.08em;color:var(--copper);font-weight:600}.conversation-guide h3{font-size:35px;line-height:1.12;letter-spacing:-.045em;margin:20px 0 16px}.conversation-guide>p{font-size:16px;color:var(--text)}.details-list{margin:24px 0}.details-list details{border-top:1px solid #bac9d4}.details-list details:last-child{border-bottom:1px solid #bac9d4}.details-list summary{list-style:none;font-family:var(--heading);font-size:19px;font-weight:500;line-height:1.4;display:flex;justify-content:space-between;gap:20px;padding:15px 0}.details-list summary::-webkit-details-marker{display:none}.details-list summary>span{font-size:23px;font-weight:400;line-height:1}.details-list details[open] summary>span{transform:rotate(45deg)}.details-list details p{color:var(--text);font-size:16px;line-height:1.7;padding:0 25px 18px 0}.inline-link{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:14px;font-weight:600}.inline-link>span{font-size:22px}.inline-link:hover{color:var(--copper)}.image-disclosure{margin-top:22px;font-size:12px;color:#667b8c;max-width:850px;line-height:1.7}
.contact{background:var(--mist);padding-top:79px;padding-bottom:63px}.contact-heading{text-align:center}.contact-heading .overline{color:var(--copper);margin-bottom:21px}.contact-heading h2{font-size:clamp(44px,4.8vw,73px);line-height:1.02}.contact-heading>p:last-child{color:var(--text);font-size:16px;line-height:1.8;margin-top:24px}.inquiry-form{max-width:1080px;margin:37px auto 0;background:white;border:1px solid #d7e1e8;border-radius:22px;padding:35px 40px}.topic-fieldset{margin:0 0 28px;padding:0;border:0;min-width:0}.topic-fieldset legend{font-size:14px;font-weight:600;margin-bottom:12px;padding:0}.topic-options{display:flex;flex-wrap:wrap;gap:12px}.topic-options label{position:relative;cursor:pointer}.topic-options input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;margin:0}.topic-options label>span{display:block;border:1px solid #bacbd8;border-radius:30px;padding:10px 18px;line-height:1.5;font-size:14px;background:white;transition:background .2s,border-color .2s,color .2s}.topic-options input:checked+span{background:var(--navy);color:white;border-color:var(--navy)}.topic-options input:focus-visible+span{outline:3px solid var(--copper);outline-offset:4px}.topic-options input:hover+span{border-color:var(--copper)}.identity-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;margin-bottom:26px}.field{min-width:0}.field>label{display:block;font-size:14px;font-weight:600;margin-bottom:10px}.optional{font-size:12px;font-weight:400;color:var(--text)}.field input,.field textarea{display:block;width:100%;min-width:0;max-width:100%;background:white;border:0;border-bottom:1px solid #aabcc9;border-radius:0;color:var(--navy);padding:10px 0;font-size:16px;line-height:1.65}.field input{min-height:46px}.field input::placeholder,.field textarea::placeholder{color:#718391;opacity:1}.field textarea{resize:vertical;min-height:115px;max-height:320px}.field input:focus,.field textarea:focus{outline:none;border-bottom:2px solid var(--navy);background:#f8fafc}.field input:focus-visible,.field textarea:focus-visible{outline:2px solid #587f9e;outline-offset:4px}.form-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:27px}.form-bottom>p{font-size:12px;line-height:1.7;color:var(--text)}.form-bottom .button{flex-shrink:0}.draft-status{margin-top:24px;border-top:1px solid var(--line);padding-top:19px;font-size:14px;line-height:1.8;color:var(--text)}.copy-button{padding:10px 0;border:0;background:transparent;color:var(--navy);font-size:14px;font-weight:600;min-height:44px;text-decoration:underline;text-underline-offset:4px}.manual-copy{width:100%;display:block;margin-top:15px;min-height:150px;max-height:300px;padding:13px;color:var(--navy);border:1px solid var(--line);background:var(--paper);font-size:16px;resize:vertical}.no-script{margin-top:24px;font-size:14px}.no-script a{text-decoration:underline;overflow-wrap:anywhere}.direct-contact{display:grid;grid-template-columns:.95fr 1.45fr 1fr;gap:30px;max-width:1080px;margin:43px auto 0}.direct-contact>div+div{border-left:1px solid #bccbd6;padding-left:30px}.contact-label{display:block;font-size:12px;color:#597185;letter-spacing:.08em;line-height:1.5;margin-bottom:11px}.direct-contact a{display:flex;justify-content:space-between;gap:18px;font-size:16px;line-height:1.6;font-weight:500;overflow-wrap:anywhere}.direct-contact a:hover{color:var(--copper)}.direct-contact a>span:not(.sr-only){font-size:21px;line-height:1.2;flex-shrink:0}.direct-contact address{font-size:16px;line-height:1.65}
.footer{background:var(--navy-dark);color:white;padding:50px var(--gutter) 23px}.footer-main{display:grid;grid-template-columns:1.25fr 1fr 52px;gap:45px;align-items:center;padding-bottom:43px}.footer-wordmark{font-family:var(--heading);font-size:clamp(33px,4.1vw,60px);letter-spacing:-.06em;font-weight:500;line-height:1;justify-self:start}.footer-wordmark>span{font-family:var(--body);display:block;margin-top:11px;letter-spacing:.25em;font-size:12px;color:#d4a087;line-height:1.5}.footer-main>p{font-size:16px;line-height:1.7;color:#b7c7d4}.back-to-top{width:52px;height:52px;border:1px solid #8195a6;border-radius:50%;display:grid;place-items:center;font-size:24px}.back-to-top:hover{background:#ffffff;color:var(--navy)}.footer-bottom{border-top:1px solid #3c5063;padding-top:24px;display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:12px;line-height:1.7;color:#b7c7d4}.footer-bottom nav{display:flex;gap:27px}.footer-bottom a:hover{color:white}.footer-bottom>span{letter-spacing:.12em;color:#d4a087;white-space:nowrap}
@media(min-width:1800px){body{max-width:1920px;margin-inline:auto}.hero-intro{padding-top:85px;padding-bottom:64px}.hero h1{font-size:105px}.city-panorama{height:600px}.service-image{height:310px}.section{padding-block:115px}}
@media(max-width:1100px){.header{grid-template-columns:1fr auto auto;padding-block:20px;gap:25px;min-height:89px}.wordmark{grid-column:1;grid-row:1;justify-self:start}.header-phone{grid-column:2;grid-row:1}.navigation{grid-column:1/-1;grid-row:2;justify-self:center;gap:35px}.enhanced .navigation{display:none}.enhanced .navigation.expanded{display:flex;position:absolute;top:100%;left:0;right:0;padding:20px var(--gutter) 25px;background:var(--paper);border-bottom:1px solid #aebfcf;box-shadow:0 15px 20px #142c4612;gap:27px}.enhanced .menu-button{display:flex;grid-column:3;grid-row:1;align-items:center;gap:14px;border:1px solid #bccbd7;border-radius:30px;background:transparent;color:var(--navy);font-size:14px;padding:10px 15px;min-height:44px}.menu-symbol{width:16px;position:relative;height:12px;display:block}.menu-symbol i{position:absolute;left:0;width:16px;border-top:1px solid var(--navy);top:2px;transition:transform .2s}.menu-symbol i:nth-child(2){top:9px}.menu-button[aria-expanded=true] .menu-symbol i{top:6px;transform:rotate(45deg)}.menu-button[aria-expanded=true] .menu-symbol i:nth-child(2){transform:rotate(-45deg)}.hero-intro{padding-top:53px;padding-bottom:45px}.hero h1{font-size:7.5vw}.hero{padding-inline:20px}.city-panorama{height:420px}.company{grid-template-columns:.65fr 2.4fr;gap:38px}.company-columns{gap:26px}.section-symbol{width:106px;height:106px;font-size:64px;padding-right:18px}.service-cards{gap:18px}.service-body{padding:25px 21px 22px}.service-body h3{font-size:25px}.service-image{height:230px}.work-heading{grid-template-columns:.65fr 2.4fr;gap:38px}.conversation-guide{padding:31px 28px}.conversation-guide h3{font-size:31px}.direct-contact{grid-template-columns:.85fr 1.45fr 1fr;gap:22px}.direct-contact>div+div{padding-left:22px}.direct-contact a{font-size:14px;gap:12px}.footer-main{gap:35px}.footer-bottom{font-size:12px}}
@media(max-width:900px){:root{--gutter:32px}.section{padding-block:74px}.hero h1{font-size:8vw}.hero-intro{padding-inline:20px}.city-panorama{height:365px}.city-panorama figcaption{left:30px;right:30px;bottom:28px;gap:22px}.city-panorama strong{font-size:30px}.city-coordinate{font-size:12px;padding-left:22px;letter-spacing:.025em}.company{grid-template-columns:1fr;gap:25px}.section-aside{display:block}.section-symbol{display:none}.company h2{font-size:49px}.expertise-heading{gap:25px;margin-bottom:35px}.expertise-heading h2{font-size:46px}.expertise-heading>p{font-size:16px;max-width:260px}.service-cards{grid-template-columns:1fr 1fr;gap:23px}.service-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.service-card:last-child .service-image{height:100%;min-height:290px}.service-body h3{font-size:28px;min-height:0}.service-body{padding:25px}.service-body p{margin-bottom:25px}.work-heading{grid-template-columns:1fr;gap:22px;margin-bottom:33px}.work-heading h2{font-size:47px}.work-layout{grid-template-columns:1fr 1fr;gap:22px}.work-photo{min-height:530px}.conversation-guide{padding:27px 24px}.conversation-guide h3{font-size:28px}.details-list summary{font-size:18px}.details-list details p{padding-right:0}.contact-heading h2{font-size:59px}.inquiry-form{padding:31px 28px}.identity-fields{gap:20px;grid-template-columns:1fr 1fr}.identity-fields>.field:last-child{grid-column:1/-1}.topic-options{gap:10px}.topic-options label>span{padding:9px 15px;font-size:13px}.direct-contact{grid-template-columns:1fr 1.5fr;row-gap:27px}.direct-contact>div:last-child{grid-column:1/-1;border-left:0;border-top:1px solid #bccbd6;padding:23px 0 0;display:grid;grid-template-columns:1fr 1.5fr;gap:22px}.direct-contact>div:last-child a{padding-left:22px}.direct-contact a{font-size:16px}.footer-main{grid-template-columns:1fr 1fr 48px;gap:25px}.footer-wordmark{font-size:38px}.footer-main>p{font-size:14px}.footer-bottom nav{gap:19px}.footer-bottom>span{display:none}}
@media(max-width:650px){:root{--gutter:22px;--radius:14px}html{scroll-padding-top:100px}.header{min-height:83px;grid-template-columns:1fr auto;gap:15px;padding:17px var(--gutter)}.header-phone{display:none}.wordmark{gap:8px}.wordmark-type{font-size:23px}.wordmark-type small{font-size:12px;letter-spacing:.24em;margin-top:7px}.monogram{width:42px;height:42px;font-size:30px;padding-right:8px}.enhanced .menu-button{grid-column:2;font-size:12px;gap:10px;padding:9px 12px;min-height:42px}.navigation{font-size:14px}.enhanced .navigation.expanded{display:flex;flex-direction:column;align-items:stretch;gap:1px;padding:12px var(--gutter) 18px}.navigation a{padding-block:13px}.hero{padding-inline:12px}.hero-intro{padding:40px 7px 37px}.hero .overline{font-size:12px;gap:8px;letter-spacing:.05em;flex-wrap:wrap;line-height:1.6}.location-mark{width:6px;height:6px}.hero h1{font-size:clamp(39px,9.5vw,61px);line-height:1.06;letter-spacing:-.065em;max-width:580px;margin:24px auto 22px}.hero-summary{font-size:16px;line-height:1.7;max-width:370px;padding-inline:10px}.desktop-break{display:none}.hero .button{margin-top:24px;padding-inline:21px;gap:20px;font-size:13px}.city-panorama{height:340px}.city-panorama>img{object-position:50% 50%}.city-panorama figcaption{left:22px;right:20px;bottom:23px;gap:15px;align-items:end}.city-coordinate{display:none}.city-panorama strong{font-size:29px}.caption-label{font-size:12px;letter-spacing:.09em;margin-bottom:7px}.city-panorama a{width:42px;height:42px;font-size:22px;margin-left:auto}.section{padding-block:56px}.company{gap:23px}.section-aside .overline{margin:0}.company h2{font-size:40px;margin-bottom:26px}.company-columns{grid-template-columns:1fr;gap:18px;font-size:16px;line-height:1.75}.focus-tags{gap:8px;margin-top:25px}.focus-tags span{font-size:12px;padding:6px 12px}.expertise-heading{display:block;margin-bottom:30px}.expertise-heading h2{font-size:42px;line-height:1.07}.expertise .overline{margin-bottom:21px}.expertise-heading>p{font-size:16px;max-width:none;margin-top:23px;line-height:1.7}.service-cards{grid-template-columns:1fr;gap:23px}.service-card:last-child{display:flex;grid-column:auto}.service-image,.service-card:last-child .service-image{height:240px;min-height:0}.service-body{padding:25px 24px 23px}.service-body h3{font-size:28px;margin-bottom:15px}.service-category{top:16px;left:16px;font-size:12px;padding:6px 12px}.service-body p{font-size:16px;line-height:1.7;margin-bottom:24px}.service-link{font-size:14px;padding-top:17px}.work-heading{gap:22px;margin-bottom:27px}.work-heading .overline{padding-top:0}.work-heading h2{font-size:39px}.work-layout{grid-template-columns:1fr;gap:21px}.work-photo{height:320px;min-height:320px}.work-photo>figcaption{padding:50px 22px 22px;font-size:12px}.conversation-guide{padding:29px 25px 28px}.conversation-guide h3{font-size:34px;margin-top:19px}.details-list summary{font-size:20px;padding-block:17px}.details-list details p{font-size:16px;line-height:1.7}.inline-link{font-size:14px}.image-disclosure{font-size:12px;margin-top:21px;line-height:1.7}.contact-heading h2{font-size:49px}.contact-heading .overline{margin-bottom:20px}.contact-heading>p:last-child{font-size:16px;margin-top:22px;line-height:1.75}.inquiry-form{margin-top:29px;padding:25px 20px;border-radius:16px}.topic-fieldset{margin-bottom:25px}.topic-fieldset legend{font-size:14px;margin-bottom:13px}.topic-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.topic-options label>span{padding:11px 8px;font-size:12px;text-align:center;white-space:nowrap}.identity-fields{grid-template-columns:1fr;gap:23px;margin-bottom:25px}.identity-fields>.field:last-child{grid-column:auto}.field label{font-size:14px}.field input,.field textarea{font-size:16px}.field textarea{min-height:135px}.form-bottom{flex-direction:column;align-items:stretch;gap:19px;margin-top:24px}.form-bottom>p{font-size:12px}.form-bottom .button{width:100%;gap:28px;font-size:14px}.direct-contact{grid-template-columns:1fr;gap:24px;margin-top:32px}.direct-contact>div+div{padding:23px 0 0;border-left:0;border-top:1px solid #bccbd6}.direct-contact>div:last-child{display:block;grid-column:auto}.direct-contact>div:last-child a{padding:0}.direct-contact a{font-size:16px;gap:12px}.contact-label{font-size:12px;margin-bottom:9px;letter-spacing:.07em}.direct-contact address{font-size:16px}.footer{padding:38px var(--gutter) 25px}.footer-main{grid-template-columns:1fr 47px;gap:26px;padding-bottom:29px}.footer-wordmark{font-size:41px}.footer-wordmark>span{font-size:12px;letter-spacing:.22em}.footer-main>p{grid-column:1/-1;grid-row:2;font-size:16px;line-height:1.7}.back-to-top{grid-column:2;grid-row:1;width:45px;height:45px;font-size:21px}.footer-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding-top:23px;font-size:12px;line-height:1.7}.footer-bottom nav{gap:26px;font-size:13px}.overline{font-size:12px}}
@media(max-width:360px){:root{--gutter:18px}.header{gap:9px}.wordmark-type{font-size:21px}.wordmark-type small{font-size:12px}.monogram{width:36px;height:36px;font-size:26px}.enhanced .menu-button{padding-inline:10px;font-size:12px;gap:9px}.hero h1{font-size:39px}.hero .overline{font-size:12px;gap:7px}.hero-summary{padding:0 3px}.hero .button{font-size:12px;gap:18px;padding-inline:19px}.company h2,.work-heading h2{font-size:36px}.expertise-heading h2{font-size:39px}.inquiry-form{padding-inline:16px}.topic-options label>span{font-size:12px;padding-inline:7px}.direct-contact a{font-size:14px}.footer-wordmark{font-size:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.service-card:hover .service-image img{transform:none}}
@media print{.header{position:static;display:none}.hero{padding:0}.hero-intro{padding:20px}.hero h1{font-size:40pt}.button,.menu-button,.inquiry-form,.back-to-top,.city-panorama a{display:none!important}.section{padding:20px 0}.company,.work-heading,.work-layout{display:block}.section-aside{display:none}.hero,.expertise,.contact,.footer{background:white;color:black}.expertise-heading>p,.footer-main>p{color:black}.service-cards{display:block}.service-card{break-inside:avoid;border:1px solid #aaa;margin-bottom:20px;display:grid;grid-template-columns:1fr 1fr}.service-image{height:240px}.service-body{padding:18px}.company h2,.expertise h2,.work h2,.contact h2{font-size:28pt}.city-panorama{height:250px}.work-photo{height:250px;min-height:250px}.conversation-guide{padding:20px;background:white}.direct-contact{display:block}.direct-contact>div{padding:12px!important;border:0!important}.footer{padding:20px 0}.footer-main{padding:0}.footer-bottom{color:black}.footer-bottom nav{display:none}}

/* Comfortable touch targets */
.header-phone,.direct-contact a{min-height:44px}.topic-options label>span{min-height:44px;display:flex;align-items:center;justify-content:center}.footer-bottom nav a{display:inline-flex;align-items:center;min-height:44px}.enhanced .menu-button{min-height:44px}

/* Photo focal points */
.service-card:nth-child(1) img{object-position:48% 50%}.service-card:nth-child(2) img{object-position:50% 70%}.service-card:nth-child(3) img{object-position:52% 80%}.work-photo>img{object-position:58% 56%}
