:root{--navy:#09284d;--deep:#061e39;--ink:#142536;--muted:#63717d;--blue:#3f6d9c;--pale:#e8f0f5;--line:#d9e2e8;--paper:#f6f7f6;--white:#fff;--max:1200px}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em}p{line-height:1.65}.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.announcement{background:var(--deep);color:#dce8f1;font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.announcement .container{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:18px}.announcement a{color:#fff}.announcement a:hover{text-decoration:underline}.site-header{height:88px;background:#fff;position:relative;z-index:10;border-bottom:1px solid #edf0f1}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:8px;min-width:228px}.brand img{width:70px;height:70px;object-fit:contain}.brand-wordmark{display:flex;flex-direction:column;gap:4px;color:var(--navy)}.brand-wordmark strong{font-family:Georgia,serif;font-size:19px;font-weight:600;letter-spacing:.04em;white-space:nowrap}.brand-wordmark small{font-size:9px;font-weight:800;letter-spacing:.23em;text-transform:uppercase;color:var(--muted)}.desktop-nav{display:flex;align-items:center;gap:clamp(15px,1.8vw,27px);margin-left:auto}.desktop-nav a{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--blue)}.button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:14px 19px;border:1px solid transparent;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--navy);color:#fff}.button-dark:hover{background:#16416f}.button-light{background:#fff;color:var(--navy)}.button-outline{border-color:rgba(255,255,255,.45);color:#fff}.header-cta{min-height:46px}.menu-toggle{display:none;background:none;border:0;width:42px;height:42px;cursor:pointer}.menu-toggle span{display:block;width:22px;height:2px;margin:5px auto;background:var(--navy)}a:focus-visible,button:focus-visible{outline:3px solid #73a8d4;outline-offset:3px}.breadcrumb{background:var(--navy);color:#a9c2d7;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:18px 0}.breadcrumb a{color:#d5e2eb}.breadcrumb span{padding:0 10px}.hero{background:var(--navy);color:#fff;padding:92px 0 96px;overflow:hidden}.hero .eyebrow,.section .eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 23px;color:#aac7dc;font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.hero .eyebrow::before,.section .eyebrow::before{content:"";width:29px;height:2px;background:currentColor}.hero h1{font-size:clamp(3.3rem,7vw,6.6rem);line-height:.98;max-width:920px;margin:0 0 26px}.hero h1 span{color:#b6d0e2}.hero p{max-width:650px;color:#d5e2eb;font-size:17px;margin-bottom:31px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.section{padding:90px 0}.section.alt{background:#eaf0f4}.section-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:9%;align-items:start}.section h2{font-size:clamp(2.4rem,4.5vw,4.2rem);line-height:1.05;margin-bottom:25px}.section-copy{font-size:15px;color:var(--muted)}.section-copy strong{color:var(--ink)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:#fff;border:1px solid var(--line);padding:28px;min-height:220px;display:flex;flex-direction:column}.card .num{font:16px Georgia,serif;color:var(--blue)}.card h3{font-size:24px;line-height:1.12;margin:auto 0 12px}.card p{font-size:13px;color:var(--muted);margin:0}.link-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.link-list a{background:#fff;border:1px solid var(--line);padding:20px;font-size:13px;font-weight:800;color:var(--navy)}.link-list a:hover{border-color:var(--blue);background:#f4f9fc}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project{background:#fff;border:1px solid var(--line)}.project-image{height:310px;overflow:hidden;background:#cfdce5}.project-image img{width:100%;height:100%;object-fit:cover}.project-copy{padding:22px}.project-copy p{font-size:13px;color:var(--muted);margin:0}.project-copy h3{font-size:22px;margin-bottom:9px}.privacy{max-width:820px}.privacy h2{font-size:28px;margin-top:40px}.privacy li{line-height:1.65;color:var(--muted);margin-bottom:8px}.notice{background:#fff;border-left:4px solid var(--blue);padding:22px 24px;color:var(--muted)}.cta{background:var(--navy);color:#fff;padding:75px 0}.cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.cta h2{font-size:clamp(2.6rem,5vw,4.6rem);line-height:1;margin:0}.cta p{color:#d2e0ea}.cta-actions{display:flex;flex-wrap:wrap;gap:10px}footer{background:var(--deep);color:#dae6ef;padding:66px 0 24px}.footer-main{display:grid;grid-template-columns:1.35fr .8fr .9fr;gap:58px;padding-bottom:55px}.footer-name{font-family:Georgia,serif;font-size:25px;letter-spacing:.04em;color:#fff}.footer-name span{display:block;font:800 10px Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase;color:#9fb8cc;margin-top:8px}.footer-main p{color:#aebfcf;font-size:13px;max-width:340px;margin:20px 0 0}.footer-main h3{color:#fff;font-size:11px;letter-spacing:.17em;text-transform:uppercase;margin-bottom:18px}.footer-links{display:flex;flex-direction:column;gap:12px;color:#aebfcf;font-size:13px}.footer-links a:hover{color:#fff;text-decoration:underline}.footer-bottom{border-top:1px solid rgba(255,255,255,.13);padding-top:22px;display:flex;justify-content:space-between;gap:15px;color:#8ea8bc;font-size:11px}.mobile-bar{display:none}picture{display:contents}@media(max-width:1000px){.desktop-nav{gap:12px}.desktop-nav a{font-size:9px}.brand{min-width:190px}.brand img{width:58px;height:58px}.brand-wordmark strong{font-size:16px}.gallery{grid-template-columns:1fr 1fr}}@media(max-width:760px){.container{width:min(100% - 36px,var(--max))}.announcement .container{justify-content:center}.announcement span{display:none}.site-header{height:73px}.brand{min-width:0}.brand img{width:58px;height:58px}.header-cta,.desktop-nav{display:none}.menu-toggle{display:block}.desktop-nav.is-open{display:flex;position:absolute;top:73px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:10px 18px 22px;background:#fff;box-shadow:0 20px 30px rgba(0,0,0,.13)}.desktop-nav.is-open a{font-size:13px;padding:17px 10px;border-bottom:1px solid var(--line)}.hero{padding:66px 0 72px}.hero h1{font-size:clamp(3.1rem,12vw,4.5rem)}.section{padding:70px 0}.section-grid,.cta-grid{grid-template-columns:1fr;gap:30px}.cards{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr}.footer-main{grid-template-columns:1fr 1fr;gap:35px}.footer-main>div:first-child{grid-column:1/-1}.mobile-bar{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr 1.35fr;background:#fff;z-index:20;border-top:1px solid var(--line);box-shadow:0 -8px 22px rgba(0,0,0,.08)}.mobile-bar a{display:flex;align-items:center;justify-content:center;min-height:61px;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--navy);border-right:1px solid var(--line)}.mobile-bar a:last-child{background:var(--navy);color:#fff;border:0}footer{padding-bottom:88px}}@media(max-width:520px){.brand-wordmark small{font-size:8px}.cards,.gallery,.link-list{grid-template-columns:1fr}.project-image{height:290px}.footer-main{grid-template-columns:1fr;gap:28px}.footer-main>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column}.hero-actions,.cta-actions{display:grid}.hero-actions .button,.cta-actions .button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}} .case-study{background:#fff}.case-study.alt{background:#eaf0f4}.case-heading{display:grid;grid-template-columns:.88fr 1.12fr;gap:8%;align-items:start;margin-bottom:48px}.case-heading h2{margin-bottom:0}.case-story{color:var(--muted);font-size:16px}.case-story strong{color:var(--ink)}.scope-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.scope-tags span{border:1px solid #c8d4dc;background:rgba(255,255,255,.72);padding:8px 11px;color:var(--navy);font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.phase{margin-top:43px}.phase-title{display:flex;align-items:baseline;justify-content:space-between;gap:25px;border-top:1px solid #bdcbd5;padding:20px 0 16px}.phase-title strong{color:var(--navy);font-size:12px;letter-spacing:.16em;text-transform:uppercase}.phase-title p{color:var(--muted);font-size:13px;margin:0}.phase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.case-photo{position:relative;margin:0;overflow:hidden;background:#cfdce5;border:1px solid #cbd7de}.case-photo.feature{grid-column:span 2}.case-photo img{width:100%;height:340px;object-fit:cover}.case-photo.feature img{height:400px}.case-photo figcaption{display:flex;align-items:center;gap:12px;min-height:54px;padding:12px 15px;background:#fff;color:var(--ink);font-size:12px;line-height:1.4}.case-photo figcaption strong{flex:none;color:var(--blue);font-size:9px;letter-spacing:.13em;text-transform:uppercase}.gail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.gail-grid .case-photo img{height:450px}.archive-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:36px}.archive-head h2{margin:0}.archive-head p:last-child{max-width:360px;color:var(--muted);margin:0}.section-anchor{scroll-margin-top:100px} @media(max-width:1000px){.case-heading{grid-template-columns:1fr;gap:22px}.phase-grid{grid-template-columns:repeat(2,1fr)}.case-photo.feature{grid-column:span 2}.gail-grid .case-photo img{height:380px}} @media(max-width:760px){.archive-head{display:block}.archive-head h2{margin-bottom:18px}.archive-head p:last-child{max-width:560px}.case-photo img,.gail-grid .case-photo img{height:320px}} @media(max-width:520px){.phase-title{display:block}.phase-title p{margin-top:7px}.phase-grid,.gail-grid{grid-template-columns:1fr}.case-photo.feature{grid-column:auto}.case-photo img,.case-photo.feature img,.gail-grid .case-photo img{height:300px}}