@font-face{font-family:Albert;src:url('/assets/fonts/albert-sans-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--surface-white:oklch(100% 0 260);--blue:#2d528d;--navy:#142748;--ink:oklch(29% .055 260);--muted:oklch(46% .055 260);--lavender:oklch(71% .066 275);--lavender-deep:oklch(59% .075 269);--paper:oklch(98.7% .004 260);--mist:oklch(96.2% .012 267);--line:oklch(86% .027 266);--white:oklch(99.8% .001 260);--ease:cubic-bezier(.22,1,.36,1);--gutter:clamp(24px,6.5vw,104px);--section:clamp(72px,8vw,120px);font-family:Albert,'Segoe UI',Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}button,summary{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}svg{width:24px;height:24px;flex-shrink:0;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}p,h1,h2,h3{margin:0}p+p{margin-top:1.5rem}h1,h2,h3{font-weight:500;line-height:1.13;letter-spacing:-.035em}h1{font-size:clamp(3.3rem,6.4vw,6rem)}h2{font-size:clamp(2rem,3.7vw,3.5rem)}h3{font-size:1.45rem}::selection{background:var(--lavender);color:var(--ink)}:focus-visible{outline:3px solid var(--lavender-deep);outline-offset:6px}button:active,.button:active{transform:translateY(1px)}.container{width:calc(100% - var(--gutter)*2);max-width:1248px;margin-inline:auto}.section{padding-block:var(--section)}.eyebrow,.caption{font-size:.7rem;letter-spacing:.19em;font-weight:600;line-height:1.6;text-transform:uppercase}.eyebrow{color:var(--blue);margin-bottom:26px}.caption{display:block;margin-bottom:18px}.lead{font-size:1.35rem;line-height:1.6}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;background:var(--blue);color:var(--white);min-height:52px;padding:13px 23px;font-size:.87rem;font-weight:600;border:1px solid var(--blue);transition:background-color .22s var(--ease),color .22s var(--ease),transform .22s var(--ease)}.button svg{width:19px;height:19px}.button-outline{background:transparent;color:var(--blue);border-color:var(--line)}.button-light{background:var(--white);color:var(--blue);border-color:var(--white)}.text-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;border-bottom:1px solid var(--blue);font-weight:500;color:var(--blue)}.text-link svg{width:21px}.skip-link{position:fixed;top:12px;left:12px;z-index:30;padding:12px 20px;background:var(--white);color:var(--blue);transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}
.site-header{position:sticky;top:0;z-index:20;background:var(--white);border-bottom:1px solid transparent;transition:box-shadow .3s var(--ease),border-color .3s var(--ease)}.nav-shell{width:calc(100% - var(--gutter)*2);max-width:1280px;margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:36px;min-height:124px}.brand{display:block;width:172px;flex-shrink:0;transform-origin:left center;transition:transform .4s var(--ease)}.brand img{width:172px;height:auto}.navigation{display:flex;gap:30px;align-items:center;font-size:.8rem;font-weight:500}.navigation>a:not(.button){min-height:44px;display:flex;align-items:center;position:relative}.navigation>a[aria-current=page]::after{content:'';height:1px;background:var(--blue);position:absolute;bottom:3px;left:0;right:0}.nav-contact{font-size:.8rem;min-height:46px;padding:10px 18px;gap:12px}.nav-contact svg{width:16px}.nav-group{position:relative}.nav-group summary{display:flex;align-items:center;gap:7px;min-height:44px;cursor:pointer;list-style:none}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary svg{width:11px;height:11px;transition:transform .25s var(--ease)}.nav-group[open] summary svg{transform:rotate(180deg)}.nav-dropdown{position:absolute;top:calc(100% + 10px);left:-20px;width:310px;padding:12px 20px;background:var(--white);box-shadow:0 16px 36px oklch(30% .04 260/.12);border:1px solid var(--line)}.nav-dropdown a{display:block;padding:10px 0;border-bottom:1px solid var(--mist);font-size:.85rem;line-height:1.5}.nav-dropdown a:last-child{border:0}.nav-dropdown a[aria-current=page]{color:var(--blue);font-weight:700}.menu-toggle{display:none}.scroll-progress{position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:var(--lavender-deep);transform:scaleX(0);transform-origin:left;will-change:transform}.site-header.is-compact{box-shadow:0 2px 14px oklch(30% .04 260/.045);border-color:var(--line)}.site-header.is-compact .nav-shell{min-height:88px}.site-header.is-compact .brand{transform:scale(.8)}
.hero{position:relative;overflow:hidden}.hero-layout{display:grid;grid-template-columns:1.04fr 1fr;min-height:730px;align-items:center;position:relative;padding-top:64px;padding-bottom:88px}.hero-copy{position:relative;z-index:2;padding-right:48px}.welcome-line{font-size:.65rem;letter-spacing:.17em;margin-bottom:26px}.hero h1{color:var(--blue);letter-spacing:-.055em;line-height:1.02;margin-left:-.055em;max-width:700px;font-size:clamp(3.4rem,6.35vw,6rem)}.title-dot{color:var(--lavender-deep)}.hero-description{font-size:1.03rem;line-height:1.7;margin-top:32px;max-width:490px;color:var(--muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.hero-art{position:relative;min-height:580px;height:100%;isolation:isolate;--shift:0px;align-self:stretch;margin-right:calc(var(--gutter)*-.7)}.hero-photo{position:absolute;top:66px;left:25px;right:0;bottom:16px;overflow:hidden;clip-path:polygon(27% 0,100% 0,100% 78%,76% 78%,76% 100%,0 100%,0 20%,27% 20%)}.hero-photo img{height:calc(100% + 64px);width:100%;object-fit:cover;object-position:34% center;max-width:none;transform:translateY(calc(var(--shift) - 32px));will-change:transform}.hero-step{position:absolute;background:var(--lavender);z-index:-1}.step-one{width:54%;height:39%;bottom:-12px;left:-20px;transform:translateY(calc(var(--shift)*-.35));background:var(--lavender)}.step-two{top:8px;right:18px;width:39%;height:31%;background:oklch(82% .042 266);transform:translateY(calc(var(--shift)*.25))}.hero-cutout{position:absolute;left:0;top:46%;width:33px;height:23%;background:var(--paper)}.hero-location{position:absolute;right:0;bottom:0;font-size:.55rem;line-height:1.8;letter-spacing:.19em;color:var(--blue);padding:22px 0 18px 26px;max-width:195px;background:var(--paper)}.scroll-cue{position:absolute;bottom:20px;left:var(--gutter);display:flex;align-items:center;gap:24px;font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;min-height:44px}.scroll-cue span:last-child{font-size:1.2rem}
.chapter-rail{position:fixed;left:20px;top:50%;transform:translateY(-45%);z-index:10;width:70px;display:none;gap:22px}.chapter-rail a{display:flex;gap:8px;color:var(--muted);font-size:.55rem;line-height:1.4;min-height:40px;padding:4px 0;position:relative}.chapter-number{color:var(--blue);font-size:.55rem}.chapter-name{opacity:0;max-width:48px;transition:opacity .2s var(--ease)}.chapter-rail a::after{content:'';position:absolute;left:0;bottom:0;width:18px;height:1px;background:var(--line);transform-origin:left;transition:transform .3s var(--ease),background-color .3s var(--ease)}.chapter-rail a.is-current .chapter-name,.chapter-rail a:focus-visible .chapter-name,.chapter-rail a:hover .chapter-name{opacity:1}.chapter-rail a.is-current::after{background:var(--blue);transform:scaleX(2.6)}.chapter-rail.on-blue a,.chapter-rail.on-blue .chapter-number{color:var(--white)}.chapter-rail.on-blue a.is-current::after{background:var(--white)}
.approach{background:var(--blue);color:var(--white);overflow:hidden;position:relative}.approach-layout{display:grid;grid-template-columns:1.4fr .7fr;gap:80px;align-items:center}.approach .eyebrow{color:oklch(86% .035 267)}.approach h2{font-size:clamp(1.9rem,3.3vw,3rem);max-width:720px;font-weight:400;line-height:1.2}.approach-lead{margin-top:32px;font-size:1.25rem;line-height:1.6;color:oklch(95% .009 266)}.approach-note{margin-top:24px;font-size:.92rem;color:oklch(89% .023 266)}.approach-image{position:relative;padding-bottom:110px;align-self:end}.approach-image>img{width:100%;aspect-ratio:1.65;object-fit:cover;position:relative;z-index:1}.brand-steps{position:absolute;inset:80px -24px -10px -40px;display:flex;align-items:flex-end;gap:0;opacity:.3;transform:translateY(var(--step-shift,0px))}.brand-steps span{width:33.333%;background:var(--lavender);height:45%}.brand-steps span:nth-child(2){height:70%;background:var(--lavender-deep)}.brand-steps span:nth-child(3){height:100%;background:oklch(80% .04 267)}
.section-heading{display:flex;align-items:start;justify-content:space-between;gap:60px;margin-bottom:64px}.section-heading>.eyebrow{min-width:180px;margin-top:8px}.section-heading h2{max-width:780px;width:70%;font-size:clamp(2rem,3.8vw,3.4rem);font-weight:400}.service-columns{display:grid;grid-template-columns:1fr 1fr;gap:86px}.service-columns h3{font-size:.75rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin-bottom:20px}.service-row{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:83px;padding:20px 0;border-bottom:1px solid var(--line);font-size:clamp(1.05rem,1.65vw,1.5rem);font-weight:400;line-height:1.3;color:var(--blue);transition:color .2s var(--ease)}.service-row:first-child{border-top:1px solid var(--line)}.service-row svg{transition:transform .3s var(--ease);width:23px}.service-row>span{max-width:30ch}.industries-section{background:var(--mist)}.industries-section h2{font-size:clamp(1.7rem,2.8vw,2.5rem);text-transform:none}.industry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:40px;row-gap:0}.industry-item{display:flex;align-items:center;gap:24px;padding:28px 0;border-top:1px solid var(--line)}.industry-photo{width:110px;min-width:110px;aspect-ratio:1.1;overflow:hidden;background:var(--lavender)}.industry-photo img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}.industry-item h3{font-size:1.1rem;line-height:1.3;letter-spacing:-.015em}.sam-teaser{display:grid;grid-template-columns:210px 1.7fr .8fr;gap:64px;align-items:start}.sam-image{width:210px;position:relative}.sam-image:before{content:'';position:absolute;inset:18px 18px -18px -18px;background:var(--lavender);z-index:-1}.sam-image img{width:210px;height:auto}.sam-teaser h2{font-size:clamp(2.3rem,3.6vw,3.5rem);margin-bottom:24px}.sam-teaser .eyebrow{margin-bottom:14px}.sam-teaser p:not(.eyebrow){color:var(--muted);font-size:1rem}.sam-teaser .text-link{margin-top:26px}.sam-qualification{padding-top:2px}.small-k{font-size:72px;font-weight:600;color:var(--lavender);line-height:1;display:block;margin-bottom:20px}
.site-footer{background:var(--navy);color:var(--white);padding-block:80px 28px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:40px;padding-bottom:48px;border-bottom:1px solid oklch(90% .03 260/.25)}.site-footer .eyebrow{color:oklch(87% .03 266);margin-bottom:20px}.footer-email{font-size:clamp(1.45rem,3vw,2.7rem);line-height:1.2;letter-spacing:-.025em;display:flex;align-items:center;gap:24px;overflow-wrap:anywhere}.footer-email svg{width:34px;height:34px}.footer-details{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-block:42px}.footer-details p{font-size:.9rem;line-height:1.9;color:oklch(94% .013 266)}.footer-details .caption{color:oklch(85% .03 266);font-size:.63rem;margin-bottom:12px}.memberships{display:flex;align-items:center;gap:28px;padding-block:20px 42px}.memberships img{width:116px;height:62px;object-fit:contain;background:var(--white);padding:8px}.memberships img:nth-child(2){width:78px}.footer-bottom{display:flex;justify-content:space-between;gap:35px;align-items:baseline;padding-top:24px;border-top:1px solid oklch(90% .03 260/.25);font-size:.65rem;color:oklch(90% .02 266);line-height:1.7}.footer-bottom p{max-width:82ch}.footer-bottom a{white-space:nowrap;min-height:44px;display:flex;align-items:center}.site-footer a:not(.button){text-underline-offset:4px}.site-footer a:not(.button):hover{text-decoration:underline}
.page-intro{background:var(--mist);padding:38px 0 66px;position:relative;overflow:hidden}.breadcrumbs{display:flex;align-items:center;gap:14px;font-size:.7rem;color:var(--muted);margin-bottom:52px;position:relative;z-index:2}.breadcrumbs a{min-height:34px;display:inline-flex;align-items:center}.page-intro .eyebrow{margin-bottom:18px}.page-intro h1{font-size:clamp(2.8rem,5.5vw,5rem);max-width:900px;color:var(--blue);position:relative;z-index:2;line-height:1.08}.intro-steps{position:absolute;display:flex;align-items:flex-end;gap:0;bottom:-60px;right:6%;height:210px;width:240px;opacity:.23;transform:skewY(0)}.intro-steps i{background:var(--lavender);width:33.333%;height:40%}.intro-steps i:nth-child(2){height:70%;background:var(--lavender-deep)}.intro-steps i:nth-child(3){height:100%;background:var(--blue)}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:100px}.prose{max-width:70ch}.prose p{margin-bottom:25px;line-height:1.8;color:var(--muted)}.prose .lead{font-size:1.3rem;line-height:1.65;color:var(--ink);margin-bottom:40px}.prose h2{font-size:1.8rem;line-height:1.25;margin-top:50px;margin-bottom:26px;color:var(--blue)}.prose h2:first-child{margin-top:0}.prose ul{list-style:none;margin:30px 0 44px;padding:0}.prose li{position:relative;padding:17px 0 17px 28px;border-bottom:1px solid var(--line);font-size:1rem;line-height:1.6;color:var(--muted)}.prose li::before{content:'';position:absolute;left:0;top:28px;width:5px;height:5px;background:var(--lavender-deep)}.prose a:not(.button){color:var(--blue);text-decoration:underline;text-underline-offset:4px}.detail-aside>div{position:sticky;top:128px}.detail-aside h2{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px;color:var(--muted)}.related-link{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:.83rem;line-height:1.4;padding:13px 0;border-bottom:1px solid var(--line)}.related-link svg{width:16px;height:16px}.related-link.is-current{color:var(--blue);font-weight:700}.aside-contact{padding:28px 0 0;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.aside-contact>.caption{margin:0}.aside-contact>a:not(.button){font-size:1.5rem;letter-spacing:-.02em}.aside-contact .button{margin-top:4px;font-size:.8rem}.practice-layout{display:grid;grid-template-columns:1fr 2fr;gap:100px}.section-label{font-size:1.4rem;color:var(--blue)}.director-section{background:var(--mist)}.director-layout{display:grid;grid-template-columns:241px minmax(0,1fr);gap:100px}.director-aside{position:relative}.director-aside img{width:241px;max-width:100%;border-bottom:6px solid var(--lavender)}.director-aside .caption{margin-top:20px}.director-layout .prose{max-width:65ch}.index-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:100px}.index-layout .service-row{font-size:1.65rem;min-height:100px}.index-art{display:flex;align-items:flex-end;max-width:300px;height:300px;gap:0;margin-top:28px}.index-art span{width:33.333%;background:var(--lavender);height:40%}.index-art span:nth-child(2){height:70%;background:var(--lavender-deep)}.index-art span:nth-child(3){height:100%;background:var(--blue)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact-block h2{font-size:.75rem;letter-spacing:.15em;margin-bottom:25px}.contact-block address{font-style:normal;font-size:1.25rem;line-height:1.8;color:var(--muted);margin-bottom:50px}.contact-block address:last-child{margin:0}.contact-block dl{margin:0}.contact-block dl>div{display:flex;gap:20px;border-bottom:1px solid var(--line);padding:20px 0;font-size:1.2rem}.contact-block dt{width:24px;color:var(--muted);font-size:.8rem;padding-top:5px}.contact-block dd{margin:0;overflow-wrap:anywhere}.contact-block a{color:var(--blue);text-underline-offset:6px}.contact-block a:hover{text-decoration:underline}
.js .reveal{opacity:0;transform:translateY(20px);transition:opacity .85s var(--ease),transform .85s var(--ease)}.js .reveal.is-visible{opacity:1;transform:translateY(0)}.js .hero-copy{animation:hero-enter .9s var(--ease) both}.js .hero-art{animation:hero-enter 1.1s .1s var(--ease) both}@keyframes hero-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover){.button:hover{background:var(--ink);border-color:var(--ink);color:var(--white)}.button-outline:hover{background:var(--blue);border-color:var(--blue)}.button-light:hover{background:var(--lavender);border-color:var(--lavender);color:var(--ink)}.service-row:hover svg,.text-link:hover svg,.related-link:hover svg{transform:translateX(5px)}.service-row:hover,.related-link:hover,.navigation a:hover{color:var(--lavender-deep)}.navigation .button:hover{color:var(--white)}.industry-item:hover img{transform:scale(1.04)}}
@media(min-width:1360px){.chapter-rail{display:grid}}
@media(min-width:1700px){:root{--gutter:120px}.hero-layout{min-height:780px}.hero-art{margin-right:-60px}.chapter-rail{left:28px;width:85px}.chapter-name{max-width:64px}}
@media(max-width:1199px){.navigation{gap:20px}.hero-layout{min-height:700px}.hero-copy{padding-right:28px}.hero-art{min-height:570px}.hero-description{font-size:.96rem}.industry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sam-teaser{grid-template-columns:180px 1.5fr 1fr;gap:36px}.sam-image,.sam-image img{width:180px}.service-columns{gap:48px}.detail-layout{gap:56px;grid-template-columns:minmax(0,1fr) 240px}}
@media(max-width:1099px){.nav-shell{flex-wrap:wrap;gap:0;min-height:108px;padding-block:10px}.brand{width:156px}.brand img{width:156px}.navigation{display:grid;width:100%;gap:0;padding:12px 0 20px;max-height:calc(100dvh - 100px);overflow:auto;font-size:1rem}.navigation>a:not(.button){padding:14px 0;border-bottom:1px solid var(--line)}.nav-group{border-bottom:1px solid var(--line)}.nav-group summary{padding-block:14px;justify-content:space-between}.nav-group summary svg{width:14px;height:14px}.nav-dropdown{position:static;box-shadow:none;border:0;width:100%;padding:2px 0 12px 18px}.nav-dropdown a{font-size:.9rem}.nav-contact{margin-top:20px;justify-content:center;max-width:220px;gap:22px}.js .navigation:not(.is-open){display:none}.js .menu-toggle{display:flex;align-items:center;gap:14px;padding:12px 0 12px 16px;min-height:44px;background:transparent;border:0;font-size:.75rem;letter-spacing:.06em;color:var(--blue)}.menu-lines{position:relative;display:block;width:22px;height:15px;border-top:1px solid var(--blue);border-bottom:1px solid var(--blue)}.menu-lines:after{content:'';position:absolute;left:0;top:6px;width:100%;border-top:1px solid var(--blue)}.menu-toggle[aria-expanded=true] .menu-lines{transform:rotate(45deg);border-bottom:0;height:1px}.menu-toggle[aria-expanded=true] .menu-lines:after{top:-1px;transform:rotate(90deg)}.site-header.is-compact .nav-shell{min-height:80px}.site-header.is-compact .brand{transform:scale(.84)}.hero-copy{padding-right:12px}.hero-layout{grid-template-columns:1fr .9fr;min-height:660px;padding-block:46px 82px}.hero h1{font-size:clamp(3.2rem,6.4vw,4.8rem)}.hero-art{min-height:540px}.hero-actions{gap:10px}.hero-actions .button{padding:12px 15px;font-size:.78rem;gap:12px}.approach-layout{gap:48px}.sam-teaser{grid-template-columns:180px 1fr}.sam-qualification{display:none}.practice-layout,.director-layout{gap:60px}.contact-layout{gap:60px}}
@media(max-width:767px){:root{--gutter:24px;--section:72px}html{scroll-padding-top:95px}body{font-size:16px}.nav-shell{min-height:94px}.brand,.brand img{width:140px}.site-header.is-compact .nav-shell{min-height:76px}.hero-layout{display:flex;flex-direction:column;align-items:stretch;min-height:auto;padding-top:46px;padding-bottom:82px}.hero-copy{padding:0}.welcome-line{font-size:.57rem;letter-spacing:.12em;margin-bottom:23px}.hero h1{font-size:clamp(3.4rem,11.3vw,5rem);line-height:1.02;letter-spacing:-.05em}.hero-description{font-size:1rem;line-height:1.72;margin-top:25px;max-width:39ch}.hero-actions{margin-top:26px;gap:12px}.hero-actions .button{font-size:.8rem;padding:12px 18px;min-height:48px;gap:18px}.hero-art{margin:30px 0 0 0;height:310px;min-height:310px}.hero-photo{top:36px;bottom:12px;left:22px;right:0;clip-path:polygon(25% 0,100% 0,100% 78%,77% 78%,77% 100%,0 100%,0 18%,25% 18%)}.hero-photo img{height:100%;transform:none;object-position:40% 50%}.step-one{bottom:0;left:0;width:52%;height:42%;transform:none}.step-two{top:0;right:12px;width:38%;height:36%;transform:none}.hero-cutout{display:none}.hero-location{font-size:.4rem;max-width:140px;right:0;bottom:0;letter-spacing:.1em;padding:14px 0 14px 17px}.scroll-cue{bottom:17px;font-size:.59rem}.approach-layout{grid-template-columns:1fr;gap:40px}.approach h2{font-size:2rem;line-height:1.25}.approach-lead{font-size:1.1rem;line-height:1.7;margin-top:26px}.approach-note{font-size:.9rem}.approach-image{width:74%;margin-left:auto;padding-bottom:42px}.approach-image>img{aspect-ratio:2.2}.brand-steps{inset:28px -15px -18px -35px;opacity:.24}.section-heading{display:block;margin-bottom:38px}.section-heading>.eyebrow{margin-bottom:20px}.section-heading h2{width:100%;font-size:2.2rem}.service-columns{grid-template-columns:1fr;gap:48px}.service-columns h3{font-size:.68rem}.service-row{font-size:1.25rem;min-height:75px;padding-block:19px}.industry-grid{grid-template-columns:1fr}.industry-item{padding-block:22px;gap:25px}.industry-photo{width:112px;min-width:112px;aspect-ratio:1.25}.industry-item h3{font-size:1.15rem;max-width:17ch}.industries-section h2{font-size:1.75rem;line-height:1.3}.sam-teaser{grid-template-columns:1fr;gap:38px}.sam-image,.sam-image img{width:180px}.sam-image{margin-left:16px}.sam-teaser h2{font-size:2.5rem;margin-bottom:20px}.sam-teaser .text-link{margin-top:20px}.footer-top{display:block;padding-bottom:32px}.footer-email{font-size:clamp(1.2rem,5vw,1.8rem);gap:10px}.footer-email svg{width:23px;height:23px}.footer-top>.button{margin-top:25px}.site-footer{padding-top:58px}.footer-details{grid-template-columns:1fr 1fr;gap:30px 20px;padding-block:32px}.footer-details>div:first-child{grid-column:1/-1}.footer-details p{font-size:.82rem}.footer-details .caption{font-size:.58rem;margin-bottom:8px}.memberships{gap:16px;padding-block:10px 30px}.memberships img{width:96px;height:55px}.memberships img:nth-child(2){width:65px}.footer-bottom{display:block;font-size:.6rem}.footer-bottom a{margin-top:18px}.page-intro{padding:24px 0 46px}.breadcrumbs{margin-bottom:36px;font-size:.65rem}.page-intro h1{font-size:clamp(2.6rem,9vw,3.5rem);max-width:95%;overflow-wrap:normal}.page-intro .eyebrow{font-size:.6rem}.intro-steps{height:150px;width:170px;right:-25px;bottom:-45px;opacity:.16}.detail-layout{display:flex;flex-direction:column;gap:56px}.prose .lead{font-size:1.18rem;line-height:1.65}.prose p{font-size:1rem;line-height:1.75}.prose li{font-size:.95rem;padding-block:16px}.prose h2{font-size:1.6rem}.detail-aside>div{position:static}.detail-aside{border-top:1px solid var(--line);padding-top:30px}.related-link{min-height:48px}.practice-layout,.director-layout,.index-layout,.contact-layout{grid-template-columns:1fr;gap:36px}.section-label{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}.director-aside{max-width:241px}.director-layout .prose h2{font-size:1.9rem}.index-art{height:130px;max-width:150px;margin:0 0 10px}.index-layout .service-row{font-size:1.3rem;min-height:82px}.contact-block address{font-size:1.1rem}.contact-block dl>div{font-size:1.04rem;gap:14px}.contact-layout{gap:50px}}
@media(max-width:374px){.hero h1{font-size:3.25rem}.hero-actions{gap:8px}.hero-actions .button{font-size:.75rem;padding-inline:13px;gap:12px}.hero-art{height:280px;min-height:280px}.footer-email{font-size:1.14rem}.industry-item{gap:18px}.industry-photo{width:96px;min-width:96px}}
/* Photographic industry gallery: open layout, no nested card containers. */
html:not(.js) .site-header{position:relative}.breadcrumbs a,.chapter-rail a{min-height:44px}.site-footer :focus-visible,.chapter-rail.on-blue a:focus-visible{outline-color:var(--white)}
@media(hover:hover){.service-row:hover,.related-link:hover,.navigation a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:5px}.navigation .button:hover{color:var(--white)}}
.industry-grid{row-gap:42px}.industry-item{display:block;padding:20px 0 0}.industry-photo{width:100%;min-width:0;aspect-ratio:4/3}.industry-item h3{font-size:1.12rem;max-width:none;margin-top:20px}.approach-image>img{aspect-ratio:1.35;object-fit:cover}.hero-photo img{object-position:52% 50%}
.memberships{gap:55px;flex-wrap:wrap}.memberships a{display:flex;align-items:center;justify-content:center;min-height:100px}.memberships img,.memberships img:nth-child(2){width:180px;height:108px;background:transparent;padding:0}.memberships a:nth-child(2) img{width:125px;height:90px}.memberships a:nth-child(3) img{width:180px;height:90px}
@media(max-width:767px){.industry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px}.industry-item{padding-top:16px}.industry-item h3{font-size:1rem;line-height:1.4;margin-top:14px}.industry-photo{width:100%;min-width:0;aspect-ratio:1}.approach-image{width:85%}.approach-image>img{aspect-ratio:1.5}.hero-photo img{object-position:52% 50%}.memberships{gap:25px 35px;justify-content:flex-start}.memberships img,.memberships img:nth-child(2){width:145px;height:90px}.memberships a:nth-child(2) img{width:100px;height:80px}.memberships a:nth-child(3) img{width:155px;height:80px}.memberships a{min-height:90px}}
@media(max-width:420px){.industry-grid{grid-template-columns:1fr;gap:28px}.industry-photo{aspect-ratio:4/3}.industry-item h3{font-size:1.15rem}}
/* Brand motion: translucent squares and rising bars, contained away from copy. */
.hero{background:var(--ink);color:var(--white)}.hero-background{position:absolute;inset:0;pointer-events:none}.hero-background img{width:100%;height:100%;object-fit:cover;object-position:center 52%}.hero-background:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,oklch(25% .065 260/.94),oklch(29% .075 260/.82) 37%,oklch(32% .08 260/.35) 65%,oklch(34% .075 260/.12))}.hero h1{color:var(--white);font-size:clamp(3.4rem,6.1vw,5.7rem)}.hero .title-dot{color:oklch(82% .055 267)}.hero .welcome-line{color:oklch(90% .025 267)}.hero-description{color:oklch(95% .009 266)}.hero-actions .button{background:var(--white);border-color:var(--white);color:var(--blue)}.hero-actions .button-outline{background:oklch(98% .01 267/.08);border-color:oklch(95% .015 267/.55);color:var(--white);backdrop-filter:blur(10px)}.hero .scroll-cue{color:var(--white)}.hero-art{margin-right:0;min-height:550px}.hero-bars{position:absolute;right:2%;bottom:12%;width:70%;height:52%;display:flex;align-items:flex-end;gap:10px;transform:translate3d(var(--pointer-x,0px),var(--pointer-y,0px),0);transition:transform .7s var(--ease)}.hero-bars span{height:42%;width:33.333%;transform-origin:50% 100%;border:1px solid oklch(98% .01 267/.48);background:linear-gradient(145deg,oklch(98% .01 267/.16),oklch(73% .065 267/.06));box-shadow:inset 1px 1px 0 oklch(99% .006 260/.3);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.hero-bars span:nth-child(2){height:70%}.hero-bars span:nth-child(3){height:100%}.hero .hero-location{background:oklch(29% .065 260/.3);color:oklch(95% .015 267);border:1px solid oklch(98% .01 267/.35);padding:18px 22px;max-width:245px;bottom:0;right:0}
.site-header{background:var(--surface-white);backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom-color:oklch(98% .01 267/.5);box-shadow:0 4px 24px oklch(29% .055 260/.06),inset 0 1px 0 oklch(99% .006 260/.75)}
.home-page .hero{margin-top:-124px;padding-top:124px}
@media(max-width:1099px){.home-page .hero{margin-top:-108px;padding-top:108px}}
@media(max-width:767px){.home-page .hero{margin-top:-94px;padding-top:94px}}
/* Text controls use borderless frost; keyboard focus remains clearly visible. */
.button{border:0;border-radius:8px;background:var(--navy);backdrop-filter:blur(16px) saturate(1.18);-webkit-backdrop-filter:blur(16px) saturate(1.18);box-shadow:inset 0 1px 0 oklch(99% .006 260/.2),0 6px 20px oklch(29% .055 260/.08)}
.button-outline{background:oklch(94% .018 267/.55);color:var(--navy)}.button-light{background:oklch(99% .006 260/.86);color:var(--navy)}
.hero-actions .button{background:oklch(99% .006 260/.86);border:0;color:var(--navy)}.hero-actions .button-outline{background:oklch(95% .015 267/.16);border:0;color:var(--white);backdrop-filter:blur(18px) saturate(1.15);-webkit-backdrop-filter:blur(18px) saturate(1.15)}
.nav-dropdown{border:0;border-radius:10px;background:oklch(99% .006 260/.86);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.js .motion-toggle{border:0;border-radius:8px;background:oklch(99% .006 260/.82)}.hero .hero-location{border:0;border-radius:8px;background:oklch(29% .065 260/.62)}
.hero-art{--pointer-x:0px;--pointer-y:0px;--bars-left:28%}.hero-photo{transform:translate3d(var(--pointer-x),var(--pointer-y),0);transition:transform .7s var(--ease)}
.hero-step{border:1px solid oklch(90% .035 267/.8);box-shadow:inset 1px 1px 0 oklch(99% .006 260/.65)}
.step-one{background:oklch(71% .066 275/.55)}.step-two{background:oklch(82% .042 266/.48)}
.glass-square{position:absolute;z-index:2;pointer-events:none;aspect-ratio:1;border:1px solid oklch(99% .006 260/.7);background:linear-gradient(135deg,oklch(99% .006 260/.36),oklch(75% .06 267/.12));box-shadow:inset 1px 1px 0 oklch(99% .006 260/.65),0 14px 28px oklch(34% .07 260/.1);backdrop-filter:blur(9px) saturate(1.15);-webkit-backdrop-filter:blur(9px) saturate(1.15)}
.glass-square-one{width:114px;left:6%;top:35%}.glass-square-two{width:78px;right:7%;top:10%}
.hero-location{z-index:3;backdrop-filter:blur(14px)}
.section-photo{position:absolute;inset:0;pointer-events:none}.section-photo img{width:100%;height:100%;object-fit:cover;object-position:center 58%}.section-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in srgb,var(--blue) 96%,transparent),color-mix(in srgb,var(--blue) 89%,transparent) 55%,color-mix(in srgb,var(--blue) 70%,transparent))}
.approach-layout{position:relative;z-index:1}.approach-image{min-height:320px;padding:0;align-self:center}.brand-steps{inset:10px -12px 0 -25px;gap:9px;opacity:1}.brand-steps span{background:oklch(85% .04 267/.16);border:1px solid oklch(95% .015 267/.42);box-shadow:inset 1px 1px 0 oklch(98% .01 267/.25);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);transform-origin:50% 100%}.brand-steps span:nth-child(2){background:oklch(78% .06 267/.2)}.brand-steps span:nth-child(3){background:oklch(91% .025 267/.17)}
.intro-steps i,.index-art span,.sam-bars span{transform-origin:50% 100%}.intro-steps{opacity:.28}.index-art{gap:8px}.index-art span{border:1px solid oklch(80% .045 267/.5);box-shadow:inset 1px 1px 0 oklch(98% .01 267/.5)}
.sam-teaser{grid-template-columns:300px 1.5fr .75fr;gap:60px;align-items:center}.portrait-frame{position:relative;overflow:hidden;width:100%;aspect-ratio:4/5;background:var(--ink);isolation:isolate}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:25% 50%;transform:scale(1.14);transition:transform .8s var(--ease)}.sam-image{width:300px}.sam-image:before{display:none}.portrait-frame:after{content:'';position:absolute;inset:auto 0 0;height:12%;pointer-events:none;background:linear-gradient(transparent,oklch(29% .055 260/.3))}.director-layout{grid-template-columns:300px minmax(0,1fr);gap:90px}.director-aside{max-width:300px}.director-aside img{border:0}.sam-bars{height:86px;width:100px;display:flex;align-items:flex-end;gap:5px;margin-bottom:25px}.sam-bars span{width:30%;height:42%;background:var(--lavender);border:1px solid var(--line)}.sam-bars span:nth-child(2){height:70%;background:var(--lavender-deep)}.sam-bars span:nth-child(3){height:100%;background:var(--blue)}
.service-row,.related-link{position:relative;isolation:isolate}.service-row:before,.related-link:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:oklch(90% .03 267/.38);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}.service-row>span,.related-link>span{transition:transform .35s var(--ease)}.button{position:relative;overflow:hidden;isolation:isolate}.button:before{content:'';position:absolute;inset:-25% -65%;z-index:-1;pointer-events:none;background:linear-gradient(110deg,transparent 35%,oklch(99% .006 260/.18) 50%,transparent 65%);transform:translateX(-65%);transition:transform .6s var(--ease)}
.motion-toggle{display:none;position:fixed;right:22px;bottom:18px;z-index:30;align-items:center;gap:9px;min-height:44px;padding:10px 14px;border:1px solid oklch(80% .04 267/.6);color:var(--blue);background:oklch(99% .006 260/.9);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 4px 18px oklch(29% .055 260/.08);font-size:.75rem;line-height:1.3}.js .motion-toggle{display:flex}.motion-toggle svg{width:16px;height:16px}.motion-toggle[aria-pressed=true] svg{transform:rotate(90deg)}.footer-bottom{padding-inline-end:150px}
@keyframes brand-rise{0%,100%{transform:scaleY(.74)}50%{transform:scaleY(1.06)}}
@keyframes square-drift{0%,100%{transform:translate3d(calc(var(--pointer-x,0px)*-1),0,0)}50%{transform:translate3d(calc(var(--pointer-x,0px)*-.5),-22px,0)}}
.js .hero-bars span,.js .brand-steps span,.js .intro-steps i,.js .index-art span,.js .sam-bars span{animation:brand-rise 5.8s cubic-bezier(.65,0,.35,1) infinite;animation-play-state:paused}.js .hero-bars span:nth-child(2),.js .brand-steps span:nth-child(2),.js .intro-steps i:nth-child(2),.js .index-art span:nth-child(2),.js .sam-bars span:nth-child(2){animation-duration:6.7s;animation-delay:-2.4s}.js .hero-bars span:nth-child(3),.js .brand-steps span:nth-child(3),.js .intro-steps i:nth-child(3),.js .index-art span:nth-child(3),.js .sam-bars span:nth-child(3){animation-duration:5.2s;animation-delay:-3.6s}
.js .glass-square,.js .hero-step{animation:square-drift 7.6s cubic-bezier(.65,0,.35,1) infinite;animation-play-state:paused}.js .glass-square-two,.js .step-one{animation-duration:9s;animation-delay:-3s}
.js .motion-active>span,.js .motion-active>i,.js .motion-active>.glass-square,.js .motion-active>.hero-step{animation-play-state:running}.motion-paused .motion-active>span,.motion-paused .motion-active>i,.motion-paused .motion-active>.glass-square,.motion-paused .motion-active>.hero-step,.page-idle .motion-active>span,.page-idle .motion-active>i,.page-idle .motion-active>.glass-square,.page-idle .motion-active>.hero-step{animation-play-state:paused}
@media(hover:hover){.service-row:hover:before,.service-row:focus-visible:before,.related-link:hover:before{transform:scaleX(1)}.service-row:hover>span,.related-link:hover>span{transform:translateX(12px)}.button:hover:before{transform:translateX(65%)}.industry-item:hover img{transform:scale(1.055)}.portrait-frame:hover img{transform:scale(1.18)}.hero-actions .button:hover{background:oklch(88% .035 267);border-color:oklch(88% .035 267);color:var(--ink)}.hero-actions .button-outline:hover{background:oklch(98% .01 267/.2);border-color:var(--white);color:var(--white)}}
@media(max-width:1199px){.sam-teaser{grid-template-columns:250px 1.5fr .8fr;gap:40px}.sam-image{width:250px}}
@media(max-width:1099px){.sam-teaser{grid-template-columns:250px 1fr}.sam-qualification{display:none}.director-layout{grid-template-columns:260px 1fr;gap:55px}.approach-image{min-height:260px}.glass-square-one{width:85px}.glass-square-two{width:60px}}
@media(max-width:767px){.hero h1{font-size:clamp(3.4rem,11.3vw,5rem)}.hero-background img{object-position:76% center}.hero-background:after{background:linear-gradient(180deg,oklch(25% .065 260/.9),oklch(29% .075 260/.79) 55%,oklch(32% .08 260/.35))}.hero .hero-art{min-height:220px;height:220px;margin-top:16px}.hero-bars{height:75%;width:55%;bottom:13%;right:0;gap:7px}.hero .hero-location{font-size:.43rem;max-width:185px;padding:12px 15px;bottom:0}.glass-square-one{width:70px;left:3%;top:36%}.glass-square-two{width:48px;top:15%}.approach-layout{gap:25px}.approach-image{width:100%;min-height:140px;height:140px;margin:0}.brand-steps{left:auto;right:5px;top:0;bottom:0;width:175px;gap:6px}.section-photo img{object-position:62% 50%}.section-photo:after{background:color-mix(in srgb,var(--blue) 90%,transparent)}.sam-teaser,.director-layout{grid-template-columns:1fr;gap:35px}.sam-image{width:260px;max-width:100%;margin:0}.director-aside{width:280px;max-width:100%}.motion-toggle{right:12px;bottom:12px;font-size:.7rem;padding:9px 11px}.footer-bottom{padding-inline-end:0;padding-bottom:50px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.hero-photo,.hero-photo img,.hero-step,.hero-bars,.hero-bars span,.brand-steps,.glass-square,.brand-steps span,.intro-steps i,.index-art span,.sam-bars span{transform:none!important}.hero-photo img{height:100%}.scroll-progress{will-change:auto}.js .motion-toggle{display:none}}
.hero .hero-location{left:calc(var(--bars-left) - 16px);right:auto;width:calc(100% - var(--bars-left) + 16px);max-width:245px;padding-inline:16px}.hero-bars{left:var(--bars-left)}@media(max-width:767px){.hero-art{--bars-left:45%}.hero .hero-location{max-width:none;padding-inline:16px}}
.approach-layout{align-items:end}.approach-image{align-self:end;margin-bottom:.23rem}@media(max-width:767px){.approach-image{margin-bottom:0}}
.brand,.brand img{mix-blend-mode:normal}
.hero-art{--bars-bottom:20%}.hero-bars{bottom:var(--bars-bottom)}.hero .hero-location{top:calc(100% - var(--bars-bottom) + 16px);bottom:auto}@media(max-width:767px){.hero-art{--bars-bottom:24%}}
.hero .hero-location{transform:translate3d(var(--pointer-x,0px),var(--pointer-y,0px),0);transition:transform .7s var(--ease)}
.brand-steps{transform:none}
.site-header :focus-visible{outline-color:var(--ink)}@media(min-width:1100px){.navigation>a:not(.button),.nav-group>summary{padding-inline:10px;border-radius:6px;background:oklch(99% .006 260/.3);backdrop-filter:blur(10px);color:var(--ink)}}@media(max-width:1099px){.nav-shell{position:relative}.js .menu-toggle{background:oklch(99% .006 260/.35);border-radius:8px;padding-inline:12px;color:var(--ink)}.js .navigation.is-open{position:absolute;top:calc(100% + 8px);left:0;width:100%;padding:12px 22px 20px;background:oklch(99% .006 260/.92);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:10px;box-shadow:0 14px 34px oklch(29% .055 260/.13)}}
@media(prefers-reduced-motion:reduce){.hero .hero-location{transform:none!important}}
.js .motion-toggle{position:static;flex-shrink:0;width:44px;height:44px;min-height:44px;padding:0;justify-content:center;color:var(--ink);background:oklch(99% .006 260/.35);box-shadow:none}.motion-toggle span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.motion-toggle[aria-pressed=true] svg{transform:none}.footer-bottom{padding-inline-end:0}@media(max-width:767px){.footer-bottom{padding-bottom:0}}

/* Three logo-led blue tones retain translucent glass and the shared motion. */
.hero-bars span,.brand-steps span{background:linear-gradient(145deg,oklch(99% .006 260/.14),transparent 65%),oklch(76% .065 267/.52)}
.hero-bars span:nth-child(2),.brand-steps span:nth-child(2){background:linear-gradient(145deg,oklch(99% .006 260/.14),transparent 65%),oklch(64% .092 265/.62)}
.hero-bars span:nth-child(3),.brand-steps span:nth-child(3){background:linear-gradient(145deg,oklch(99% .006 260/.14),transparent 65%),oklch(50% .112 260/.76)}

/* A white approach creates breathing room before the photographic services chapter. */
.approach{background:var(--surface-white);color:var(--blue)}.approach .eyebrow{color:var(--blue)}.approach-lead,.approach-note{color:var(--muted)}.approach .brand-steps span{border-color:oklch(65% .08 265/.28);box-shadow:inset 1px 1px 0 oklch(99% .006 260/.45)}
.services-section{position:relative;overflow:hidden;background:var(--blue);color:var(--white)}.services-section>.container{position:relative;z-index:1}.services-section .eyebrow,.services-section .service-columns h3{color:oklch(89% .025 265)}.services-section .service-row{color:var(--white);border-color:oklch(95% .01 265/.3)}.services-section .service-row:before{background:oklch(99% .006 260/.12)}.services-section :focus-visible{outline-color:var(--white)}

/* Keep the harbour zoom subtle and confined to the photograph. */
.hero-background img{transform:scale(var(--hero-zoom,1));transform-origin:65% 50%;transition:transform .18s ease-out}.motion-paused .hero-background img{transition:none}@media(prefers-reduced-motion:reduce){.hero-background img{transform:none!important;transition:none}}

/* Page-specific wide photographs keep titles as accessible HTML. */
.page-intro.has-photo{min-height:clamp(300px,25vw,380px);background:var(--blue);color:var(--white);isolation:isolate}.has-photo>.container{position:relative;z-index:2}.page-intro-photo{position:absolute;inset:0;pointer-events:none}.page-intro-photo img{width:100%;height:100%;object-fit:cover;object-position:center 52%}.page-intro-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,oklch(24% .055 260/.56),oklch(30% .07 260/.24) 58%,oklch(30% .07 260/.08))}.page-intro.has-photo h1,.has-photo .eyebrow,.has-photo .breadcrumbs{color:var(--white)}.has-photo .breadcrumbs{opacity:.9}.has-photo .intro-steps{z-index:1;opacity:.45;bottom:-25px;height:185px;width:220px;gap:7px}.has-photo .intro-steps i{border:1px solid oklch(95% .01 265/.36);backdrop-filter:blur(5px)}.has-photo :focus-visible{outline-color:var(--white)}
@media(max-width:767px){.page-intro.has-photo{min-height:300px;padding:26px 0 50px}.has-photo .breadcrumbs{margin-bottom:44px}.page-intro-photo img{object-position:58% center}.page-intro-photo:after{background:oklch(25% .06 260/.58)}.has-photo .intro-steps{width:140px;height:115px;right:24px;bottom:-28px;opacity:.35}}

.page-intro-tagline{margin-top:20px;max-width:35ch;font-size:clamp(1rem,1.5vw,1.3rem);line-height:1.5;color:var(--white)}

/* Consistent, compact service lists on the homepage and both index pages. */
.service-row,.index-layout .service-row{min-height:72px;padding-block:15px}.has-illustration h1{max-width:850px;font-size:clamp(2.6rem,5vw,4.8rem)}
@media(max-width:767px){.service-row,.index-layout .service-row{min-height:64px;padding-block:13px}.has-illustration .page-intro-photo img{object-position:82% center}.has-illustration h1{font-size:clamp(2.2rem,8.5vw,3.5rem)}}

/* Reduce list whitespace by one quarter while preserving readable line spacing. */
.prose li{padding-block:12.75px}.prose li:before{top:23.75px}@media(max-width:767px){.prose li{padding-block:12px}.prose li:before{top:24px}}

/* Six aligned footer elements in one desktop row; wrap comfortably below it. */
.footer-grid{display:grid;grid-template-columns:minmax(225px,1.65fr) minmax(125px,1fr) minmax(155px,1.15fr) minmax(100px,.85fr) minmax(80px,.65fr) minmax(130px,1fr);gap:24px;align-items:start;padding-block:42px}.footer-grid .footer-details,.footer-grid .memberships{display:contents}.footer-grid .footer-details p{font-size:.8rem;line-height:1.8}.footer-grid .memberships a{align-self:center;display:flex;justify-content:center;align-items:center;min-height:90px}.footer-grid .memberships img,.footer-grid .memberships a:nth-child(2) img,.footer-grid .memberships a:nth-child(3) img{width:100%;max-width:150px;height:78px;padding:0;background:none}.footer-grid .memberships a:nth-child(2) img{max-width:100px}
@media(max-width:1149px){.footer-grid{display:block;padding-block:0}.footer-grid .footer-details{display:grid}.footer-grid .memberships{display:flex;gap:28px;padding-block:12px 36px}.footer-grid .memberships a{min-height:80px}.footer-grid .memberships img{width:145px}.footer-grid .memberships a:nth-child(2) img{width:100px}.footer-grid .memberships a:nth-child(3) img{width:155px}}@media(max-width:767px){.footer-grid .memberships{flex-wrap:wrap;gap:20px 28px}}

/* A gradual dark-to-clear veil separates the blue suit from the heading. */
.contact-banner .page-intro-photo:after{background:linear-gradient(90deg,rgba(8,19,37,.94) 0%,rgba(12,26,48,.78) 26%,rgba(20,39,72,.34) 48%,rgba(20,39,72,.08) 65%,transparent 78%)}@media(max-width:767px){.contact-banner .page-intro-photo:after{background:linear-gradient(90deg,rgba(8,19,37,.88),rgba(20,39,72,.52) 58%,rgba(20,39,72,.22))}}
