/* Framing follows the owner's selected photo crops. */
.intro-photo-grid{grid-template-columns:1fr 1fr;gap:80px}
.intro-photo{width:100%;max-width:480px;justify-self:end;aspect-ratio:283/345;position:relative}
.intro-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:81% 50%}
.people-grid{grid-template-columns:1.08fr .75fr .83fr;grid-template-rows:auto;gap:32px;align-items:center}
.people-copy{grid-column:1;grid-row:1;padding:0 10px 0 0}
.people-copy h2{font-size:43px;line-height:1.13}
.people-wide{grid-column:2;grid-row:1;position:relative;aspect-ratio:175/195;width:100%;height:auto;align-self:center}
.people-wide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:15% 50%;transform:scale(1.24);transform-origin:50% 55%}
.people-portrait{grid-column:3;grid-row:1;position:relative;aspect-ratio:4/5;width:100%;height:auto;min-height:0;align-self:center}
.people-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.about-company-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.about-company-photo{margin:0;width:100%;max-width:480px;aspect-ratio:283/345;justify-self:end;position:relative;overflow:hidden;border-radius:18px;background:#e5e9ee}
.about-company-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:81% 50%}
.about-company-copy h2{font-size:43px;line-height:1.15;margin-bottom:28px;letter-spacing:-1.3px}
.about-company-copy>p:not(.eyebrow){font-size:14px;line-height:1.85;color:var(--muted)}
.contact-banner{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:#0b223d;min-height:340px;display:flex;align-items:center;padding:70px 0;text-align:center}
.contact-banner-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:50% 45%}
.contact-banner:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#06192bd9,#06192ba8)}
.contact-banner-content{position:relative}
.contact-banner h2{font-size:clamp(30px,3.2vw,44px);line-height:1.2;letter-spacing:-.8px;max-width:950px;margin:0 auto 20px}
.contact-banner p{font-size:15px;line-height:1.8;max-width:620px;color:#e6eef4;margin:0 auto 25px}
.contact-banner .button{min-width:175px;justify-content:center}
.footer-business{background:#0b2445;color:#fff;padding:62px 0 0}
.footer-business-grid{display:grid;grid-template-columns:.95fr 1.2fr .75fr;gap:82px;padding-bottom:52px}
.footer-business .brand{display:inline-flex;margin-bottom:23px}
.footer-business-description{font-size:14px;line-height:1.8;max-width:240px;color:#b8c9d9;margin:0 0 23px}
.footer-business-legal{display:flex;flex-direction:column;gap:10px;font-size:13px;color:#d3deea}
.footer-business-heading{font-size:15px;font-weight:700;letter-spacing:.3px;margin:4px 0 24px;color:#fff}
.footer-contact-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:20px}
.footer-contact-list li{display:flex;gap:13px;align-items:flex-start;font-size:14px;line-height:1.7;color:#e1eaf2}
.footer-contact-icon{width:21px;flex:none;color:#1ed7ee;display:flex;align-items:center;padding-top:2px}
.footer-contact-icon svg{display:block;width:20px;height:20px}
.footer-contact-label{display:block;color:#829eb7;letter-spacing:1px;font-size:9px;font-weight:600;margin-bottom:4px;text-transform:uppercase}
.footer-contact-list address{font-style:normal}
.footer-contact-list a{overflow-wrap:anywhere}
.footer-business-pages{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.footer-business-pages .footer-business-heading{margin-bottom:11px}
.footer-business-pages>a{color:#d3deea;font-size:14px;line-height:1.55}
.footer-business a:hover{color:#25daee}
.footer-business-bottom{border-top:1px solid #29405d;display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:22px;padding-bottom:24px;color:#829eb7;font-size:11px;line-height:1.7}
.footer-business-bottom p{margin:0}
.footer-business-bottom p{font-size:10px;max-width:620px;text-align:right}
.contact-detail address{font-style:normal;font-size:15px;line-height:1.8;color:var(--ink)}
@media(max-width:1100px){.intro-photo-grid,.about-company-grid{gap:45px}.people-grid{gap:24px}.people-copy h2{font-size:36px}.footer-business-grid{gap:45px}}
@media(max-width:900px){.people-grid{grid-template-columns:1fr 1fr;gap:30px}.people-copy{grid-column:1/-1;grid-row:1;padding-right:0;max-width:630px}.people-wide{grid-column:1;grid-row:2}.people-portrait{grid-column:2;grid-row:2}.people-copy h2{font-size:40px}.footer-business-grid{grid-template-columns:1fr 1fr;gap:36px}.footer-business-about{grid-column:1/-1}.footer-business-description{max-width:380px}.footer-business-legal{flex-direction:row;gap:22px}.footer-business-bottom{display:block}.footer-business-bottom p{text-align:left;margin-top:8px}}
@media(max-width:760px){.intro-photo-grid,.about-company-grid{grid-template-columns:1fr;gap:34px}.intro-photo,.about-company-photo{justify-self:center;width:100%;max-width:420px;aspect-ratio:283/345}.people-grid{grid-template-columns:1fr 1fr;gap:28px 16px}.people-copy{grid-column:1/-1;grid-row:1}.people-copy h2{font-size:37px}.people-wide{grid-column:1;grid-row:2;aspect-ratio:175/195;height:auto}.people-portrait{grid-column:2;grid-row:2;aspect-ratio:4/5;height:auto;min-height:0}.about-company-copy h2{font-size:36px}.contact-banner{min-height:330px;padding:55px 0}.contact-banner h2{font-size:30px;letter-spacing:-.5px}.contact-banner p{font-size:14px}.contact-banner-image{object-position:50% 42%}.footer-business{padding-top:45px}.footer-business-grid{padding-bottom:38px}.footer-business-bottom{font-size:10px}}
@media(max-width:520px){.footer-business-grid{grid-template-columns:1fr;gap:32px}.footer-business-about{grid-column:auto}.footer-business-heading{margin-bottom:20px}.footer-business .brand{margin-bottom:18px}.footer-contact-list{gap:18px}.footer-business-pages{gap:10px}.footer-business-pages .footer-business-heading{margin-bottom:8px}}

.footer-business-bottom>a{white-space:nowrap;color:#b8c9d9}
@media(max-width:900px){.footer-business-bottom>a{display:inline-block;margin-top:12px}}

.footer-business-legal{align-items:flex-start}.footer-business-legal>a,.footer-business-pages>a{padding:0}.footer-business-pages{gap:10px}

.footer-business nav{position:static;inset:auto;background:transparent;padding:0;box-shadow:none;border:0}
