:root{--navy:#071a33;--blue:#0059ef;--turquoise:#08a8b4;--ink:#101c2e;--muted:#556171;--line:#dbe1e9;--pale:#f4f7fb;--white:#fff;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--white);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}p{font-size:1rem;line-height:1.75;margin:0}h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.045em}h2{font-size:clamp(2.15rem,3.7vw,3.25rem);line-height:1.12}h3{font-size:1.35rem;line-height:1.3;letter-spacing:-.025em}.container{width:min(1240px,calc(100% - 96px));margin-inline:auto}.section{padding:100px 0;scroll-margin-top:20px}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.15em;line-height:1.6;color:var(--blue);margin-bottom:24px}.skip-link{position:fixed;top:12px;left:12px;transform:translateY(-180%);z-index:100;padding:12px 20px;background:var(--navy);color:white}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:3px solid var(--turquoise);outline-offset:5px}.header{height:108px;position:relative;z-index:10;background:white;border-bottom:1px solid var(--line)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:block;width:236px;flex-shrink:0}.brand img{width:100%;height:auto;max-height:68px;object-fit:contain}.nav{display:flex;align-items:center;gap:32px}.nav a{font-size:.875rem;font-weight:600;white-space:nowrap;transition:color .2s}.nav a:hover{color:var(--blue)}.nav .nav-contact{border:1px solid var(--navy);padding:14px 22px}.nav .nav-contact:hover{background:var(--navy);color:white}.menu-toggle{display:none}.hero{padding:62px 0 0;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:stretch}.hero-copy{padding-top:40px;display:flex;align-items:flex-start;flex-direction:column;min-width:0}.hero-copy .eyebrow{display:flex;align-items:center;gap:12px;letter-spacing:.09em;font-size:.72rem}.small-line{display:inline-block;height:2px;width:28px;background:var(--turquoise);flex-shrink:0}h1{font-size:clamp(3rem,5.3vw,4.65rem);line-height:1.07;letter-spacing:-.055em;color:var(--navy);margin:6px 0 26px}h1 span{color:var(--blue)}.hero-description{max-width:430px;font-size:1.125rem;color:var(--muted);line-height:1.65}.button{display:inline-flex;justify-content:center;align-items:center;min-height:54px;padding:17px 26px;font-size:.875rem;font-weight:700;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-blue{background:var(--blue);color:white;margin-top:34px}.button-blue:hover{background:#0046bd}.hero-location{display:flex;align-items:center;gap:16px;width:100%;margin-top:auto;padding:70px 0 28px;font-size:.7rem;line-height:1.5;color:var(--muted)}.hero-location span:first-child{font-weight:700;letter-spacing:.1em;color:var(--navy)}.location-rule{width:32px;height:1px;background:#adb8c7;flex-shrink:0}.hero-visual{position:relative;height:574px;background:var(--blue);isolation:isolate}.architecture{width:100%;height:100%;object-fit:cover;object-position:50% 50%}.hero-visual:before{position:absolute;content:"";left:0;top:0;width:54px;height:54px;background:white;z-index:1;clip-path:polygon(0 0,100% 0,0 100%)}.image-caption{position:absolute;bottom:0;left:-32px;background:var(--navy);color:white;padding:27px 34px 27px 30px;display:flex;align-items:center;gap:20px;min-width:360px}.image-caption p{font-size:.9rem;line-height:1.7;color:#cbd5e3}.image-caption strong{font-weight:500;color:white}.caption-mark{display:block;height:44px;width:5px;background:var(--turquoise);transform:skewY(-28deg);flex-shrink:0}.intro-strip{margin-top:0;border-bottom:1px solid var(--line);background:var(--pale)}.strip-inner{min-height:88px;display:grid;grid-template-columns:repeat(3,1fr);align-items:center;gap:24px}.strip-inner span{font-size:.875rem;letter-spacing:-.01em;display:flex;align-items:center;gap:13px}.strip-inner span:before{content:"";width:7px;height:7px;display:block;background:var(--blue);flex-shrink:0}.strip-inner span:nth-child(2){justify-content:center}.strip-inner span:last-child{justify-content:flex-end}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:56px;margin-bottom:48px}.section-lead{max-width:360px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-card{padding:30px 32px 34px;position:relative;border-right:1px solid var(--line)}.service-card:first-child{padding-left:0}.service-card:last-child{border-right:0;padding-right:0}.service-number{position:absolute;right:32px;top:33px;color:#748092;font-size:.8rem}.service-card:last-child .service-number{right:0}.service-card svg{width:54px;height:54px;stroke:var(--blue);stroke-width:1.7;stroke-linecap:square;stroke-linejoin:miter;margin:10px 0 31px}.service-card h3{margin-bottom:16px}.service-card p{color:var(--muted);min-height:112px}.service-note{display:block;margin-top:26px;font-size:.75rem;color:#3d506b;letter-spacing:.02em}.consultancy{display:grid;grid-template-columns:56px 1fr auto;gap:25px;align-items:center;margin-top:40px;background:var(--pale);padding:26px 30px}.consultancy-icon{font-size:2.6rem;letter-spacing:-.1em;font-weight:700;color:var(--blue)}.consultancy h3{font-size:1.1rem;margin-bottom:6px}.consultancy p{font-size:.875rem;line-height:1.6;color:var(--muted);max-width:720px}.text-link{font-size:.875rem;white-space:nowrap;padding:8px 0;border-bottom:1px solid var(--navy);font-weight:600}.text-link:hover{color:var(--blue);border-color:var(--blue)}.about{background:var(--pale)}.about-grid{display:grid;grid-template-columns:.9fr 1fr;gap:100px}.about-location{display:flex;align-items:center;gap:19px;margin-top:54px;color:var(--muted);font-size:.875rem;line-height:1.65}.about-location strong{font-weight:500;color:var(--navy)}.blue-square{width:48px;height:48px;background:var(--blue);border-left:8px solid var(--turquoise)}.about-copy>p{color:var(--muted)}.about-copy .about-intro{font-size:1.25rem;color:var(--navy);line-height:1.6;margin-bottom:22px}.principles{margin-top:32px}.principles>div{position:relative;padding:22px 0 22px 43px;border-top:1px solid #d4dde8}.principles span{position:absolute;left:0;top:25px;font-size:.75rem;font-weight:700;color:var(--blue)}.principles h3{font-size:1rem;letter-spacing:-.01em;margin-bottom:5px}.principles p{font-size:.875rem;line-height:1.6;color:var(--muted)}.process{background:var(--navy);color:white}.process .eyebrow{color:#39cad1}.process .section-lead{color:#b3c1d3}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;list-style:none;padding:0;margin:56px 0 0}.steps li{border-top:1px solid #425069;padding-top:22px}.step-number{font-size:2.6rem;letter-spacing:-.05em;font-weight:400;color:#39cad1;display:block;margin-bottom:30px}.steps h3{font-size:1.1rem;margin-bottom:13px}.steps p{font-size:.9rem;line-height:1.7;color:#b9c7d9}.contact{background:var(--blue);color:white;padding:90px 0}.contact-grid{display:grid;grid-template-columns:1fr .85fr;gap:140px}.contact .eyebrow{color:#c2d6ff}.contact-intro>p:not(.eyebrow){color:#dae5ff;max-width:395px;margin-top:23px}.button-white{background:white;color:var(--blue);margin-top:29px}.button-white:hover{background:#e5efff}.contact-details{padding-top:0}.contact-row{padding:0 0 24px;border-bottom:1px solid #5c91f5;margin-bottom:24px;display:flex;align-items:flex-start;flex-direction:column;gap:9px}.contact-row>span{font-size:.7rem;letter-spacing:.16em;color:#d0dfff;font-weight:700;margin-bottom:5px}.contact-row>a{font-size:1.75rem;font-weight:500;letter-spacing:-.03em;line-height:1.4}.contact-row>a:hover{text-decoration:underline;text-underline-offset:6px}.contact-row small{font-size:.75rem;margin-left:10px;letter-spacing:0;color:#d5e3ff}.contact-row.address{border:0;margin:0;padding:0}address{font-style:normal;font-size:1rem;line-height:1.7}.contact-row .email-link{font-size:1.45rem}footer{background:white}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:44px;padding-bottom:40px}.footer-main .brand{width:207px}.footer-main p{font-size:.85rem;line-height:1.5;color:var(--muted)}.footer-main>a:last-child{font-size:.85rem;border-bottom:1px solid #b0bccc;padding:7px 0}.footer-bottom{display:flex;justify-content:space-between;gap:24px;padding-top:23px;padding-bottom:24px;border-top:1px solid var(--line);font-size:.72rem;color:#607082}.menu-toggle{cursor:pointer}
@media(min-width:1550px){.hero-grid{gap:70px}.hero-visual{height:630px}.hero-copy{padding-top:74px}.hero{padding-top:70px}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.nav{gap:20px}.brand{width:210px}.nav a{font-size:.8rem}.nav .nav-contact{padding:13px 15px}.hero-grid{gap:24px}.hero-copy{padding-top:25px}.hero-copy .eyebrow{font-size:.65rem;gap:8px}.small-line{width:18px}h1{font-size:3.65rem}.hero-visual{height:536px}.hero-location{gap:9px;flex-wrap:wrap;font-size:.65rem}.image-caption{left:-18px;min-width:320px;padding:24px}.section{padding:80px 0}.about-grid{gap:58px}.contact-grid{gap:75px}.service-card{padding-right:24px;padding-left:24px}.service-card p{font-size:.9375rem;min-height:140px}.service-note{font-size:.7rem}.consultancy{grid-template-columns:40px 1fr;gap:20px}.consultancy .text-link{grid-column:2;justify-self:start}.steps{gap:24px}.steps h3{font-size:1rem}.steps p{font-size:.875rem}}
@media(max-width:800px){html{scroll-padding-top:20px}.container{width:calc(100% - 40px)}.header{height:90px}.header .brand{width:214px}.menu-toggle{display:flex;flex-direction:column;gap:7px;width:46px;height:46px;justify-content:center;align-items:center;border:1px solid var(--line);background:white}.menu-toggle span{display:block;width:21px;height:2px;background:var(--navy);transition:transform .2s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}.nav{position:absolute;top:89px;left:0;right:0;padding:20px;background:white;border-bottom:1px solid var(--line);box-shadow:0 8px 14px #071a3310;display:none;align-items:stretch;flex-direction:column;gap:2px}.nav.open{display:flex}.nav a{padding:15px;font-size:1rem}.nav .nav-contact{margin-top:10px;text-align:center}.hero{padding-top:37px}.hero-grid{grid-template-columns:1fr;gap:36px}.hero-copy{padding:0}.hero-copy .eyebrow{font-size:.66rem;letter-spacing:.085em;margin-bottom:22px}.hero-copy h1{font-size:clamp(3rem,8.8vw,4.8rem);margin:0 0 22px}.hero-description{font-size:1.05rem;max-width:530px}.button-blue{margin-top:27px}.hero-location{margin-top:0;padding:27px 0 0;gap:12px;font-size:.7rem}.hero-visual{height:420px;margin-right:-20px;margin-left:35px}.hero-visual:before{width:42px;height:42px}.image-caption{left:-35px;min-width:310px;padding:21px 25px}.intro-strip{margin-top:0}.strip-inner{min-height:unset;grid-template-columns:1fr;gap:14px;padding-top:26px;padding-bottom:26px}.strip-inner span{font-size:.875rem}.strip-inner span:nth-child(2),.strip-inner span:last-child{justify-content:flex-start}.section{padding:65px 0}.section-top{display:block;margin-bottom:32px}.section-lead{margin-top:25px;max-width:560px}h2{font-size:2.4rem}.eyebrow{margin-bottom:20px}.service-grid{grid-template-columns:1fr}.service-card,.service-card:first-child,.service-card:last-child{padding:27px 0 30px;border-right:0;border-bottom:1px solid var(--line)}.service-card:last-child{border-bottom:0}.service-card svg{margin:0 0 22px;width:44px;height:44px}.service-number,.service-card:last-child .service-number{right:0;top:31px}.service-card p{font-size:1rem;min-height:0;max-width:530px}.service-note{font-size:.75rem;margin-top:20px}.service-card h3{margin-bottom:12px}.consultancy{padding:25px;gap:18px;margin-top:27px}.consultancy-icon{font-size:2rem}.consultancy h3{line-height:1.4}.consultancy p{font-size:.9rem}.about-grid{grid-template-columns:1fr;gap:35px}.about-heading h2 br:last-child{display:none}.about-location{margin-top:29px}.about-copy .about-intro{font-size:1.125rem}.principles{margin-top:26px}.principles h3{font-size:1rem}.principles p{font-size:.9rem}.steps{grid-template-columns:repeat(2,1fr);gap:30px 24px;margin-top:35px}.step-number{font-size:2.2rem;margin-bottom:18px}.steps h3{font-size:1.05rem}.steps p{font-size:.9rem}.contact-grid{grid-template-columns:1fr;gap:48px}.contact-row>a{font-size:1.75rem}.footer-main{display:grid;grid-template-columns:1fr auto;gap:25px;padding-top:34px;padding-bottom:30px}.footer-main .brand{grid-column:1/-1;width:215px}.footer-main p{font-size:.78rem}.footer-main>a:last-child{font-size:.8rem}.footer-bottom{flex-direction:column;gap:10px;line-height:1.5;padding-top:21px}.footer-bottom span:last-child{display:none}}
@media(max-width:380px){.container{width:calc(100% - 32px)}.header .brand{width:190px}.hero-copy .eyebrow{font-size:.61rem}.hero-copy h1{font-size:2.9rem}.hero-visual{height:350px;margin-right:-16px;margin-left:22px}.image-caption{left:-22px;min-width:280px;padding:20px}.image-caption p{font-size:.83rem}.hero-location{font-size:.65rem;gap:7px}.location-rule{width:20px}h2{font-size:2.1rem}.steps{gap:26px 18px}.steps h3{font-size:.95rem}.steps p{font-size:.875rem}.consultancy{padding:20px;grid-template-columns:1fr}.consultancy-icon{display:none}.consultancy .text-link{grid-column:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Text enlargement: allow navigation and long words to reflow. */
.header{height:auto;min-height:108px}.header-inner{min-height:108px;padding-top:18px;padding-bottom:18px}.nav{min-width:0;flex-wrap:wrap;justify-content:flex-end}h1,h2,.contact-row>a{overflow-wrap:anywhere}.hero-copy .eyebrow{max-width:100%}.contact-details,.about-copy,.service-card{min-width:0}
@media(max-width:800px){.header,.header-inner{min-height:90px}.header-inner{padding-top:12px;padding-bottom:12px}.nav{flex-wrap:nowrap;justify-content:flex-start}}
