@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap";
:root{--paper:#fff;--ink:#17243e;--body:#596273;--line:#dfe4ed;--accent:#dce5ff;--white:#fff;--serif:Georgia,"Times New Roman",serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:DM Sans,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline-offset:6px;outline:3px solid #243bce}img{width:100%;height:auto;display:block}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:Manrope,Arial,sans-serif;font-weight:500}h1{letter-spacing:-.055em;font-size:clamp(40px,4.9vw,76px);line-height:1.07}h2{letter-spacing:-.045em;font-size:clamp(30px,3.3vw,48px);line-height:1.13}h3{letter-spacing:-.03em;font-size:24px;line-height:1.3}p{color:var(--body);line-height:1.75}.header{border-bottom:1px solid var(--line);background:var(--paper);z-index:20;justify-content:space-between;align-items:center;height:100px;padding:0 5%;display:flex;position:relative}.brand{letter-spacing:-.03em;align-items:center;gap:16px;font-size:16px;font-weight:650;display:flex}.brand small{letter-spacing:.14em;margin-top:7px;font-size:9px;font-weight:500;display:block}.nav{align-items:center;gap:30px;font-size:13px;display:flex}.nav>a{padding:10px 0}.nav a:hover,.nav a[aria-current]{text-underline-offset:7px;text-decoration:underline}.nav .language{border-left:1px solid var(--line);padding-left:25px;font-size:11px}.nav .nav-contact{border:1px solid var(--ink);padding:12px 18px}.menu-toggle{display:none}.hero{grid-template-columns:1fr;gap:3.5vw;padding:65px 5% 0;display:grid}.eyebrow{letter-spacing:.15em;color:var(--ink);text-transform:uppercase;margin-bottom:28px;font-size:10px;font-weight:600;line-height:1.7}.dot{background:#e32636;border-radius:50%;width:6px;height:6px;margin-right:10px;display:inline-block}.hero h1{margin-bottom:30px;font-size:clamp(40px,4.8vw,73px)}.hero h1 em{font-family:var(--serif);letter-spacing:-.045em;font-weight:400}.hero-intro{color:var(--ink);margin-bottom:15px;font-size:18px;font-weight:500}.hero-intro span{font-size:12px;font-weight:400;display:block}.hero-description{max-width:500px;font-size:14px;line-height:1.85}.hero-actions{align-items:center;gap:25px;margin-top:28px;display:flex}.button{border:1px solid var(--ink);justify-content:space-between;align-items:center;gap:35px;padding:17px 22px;font-size:12px;transition:background .2s;display:inline-flex}.button.dark{background:var(--ink);color:var(--paper)}.button:hover{background:#223dad}.button span{font-size:18px}.text-link{border-bottom:1px solid #8995ac;padding-bottom:7px;font-size:12px;display:inline-block}.text-link:hover{color:#223dad}.hero-bottom{border-bottom:1px solid var(--line);letter-spacing:.1em;grid-column:1/-1;justify-content:space-between;align-items:center;margin-top:8px;padding:24px 0;font-size:9px;display:flex}.section{padding:100px 5%}.profile{grid-template-columns:.72fr 1.3fr;align-items:center;gap:10%;display:grid}.portrait{width:100%;max-width:400px;margin:auto;position:relative}.portrait img{aspect-ratio:4/4.7;object-fit:cover;filter:grayscale()}.portrait>span{letter-spacing:.12em;margin-top:15px;font-size:9px;display:block}.profile h2{max-width:650px}.profile p{max-width:650px;font-size:14px}.profile p.lead{color:var(--ink);font-size:19px}.credentials{border-top:1px solid var(--line);justify-content:space-between;gap:15px;margin-top:30px;padding-top:25px;display:flex}.credentials span{color:var(--body);font-size:10px}.credentials strong{color:var(--ink);margin-bottom:7px;font-size:20px;font-weight:500;display:block}.practice{background:#f3f5fa}.section-heading{justify-content:space-between;align-items:flex-start;gap:40px;margin-bottom:42px;display:flex}.section-heading>h2{flex-basis:62%;max-width:600px;margin-bottom:0}.section-heading .eyebrow{min-width:180px}.service-grid{grid-template-columns:repeat(3,1fr);gap:40px;display:grid}.service-grid article{border-top:1px solid #c4cede;padding-top:22px}.service-number{letter-spacing:.1em;margin-bottom:45px;font-size:11px;display:block}.service-grid h3{max-width:230px;font-size:25px}.service-grid p{max-width:350px;margin-bottom:0;font-size:14px}.selected .section-heading{align-items:flex-end}.selected h2{max-width:550px;margin-bottom:0}.project-grid{grid-template-columns:repeat(2,1fr);gap:55px 35px;display:grid}.selected-grid{grid-template-columns:repeat(3,1fr);gap:28px}.project-label{text-transform:uppercase;letter-spacing:.11em;justify-content:space-between;margin:20px 0 12px;font-size:9px;display:flex}.project-card h3{margin-bottom:9px;font-size:22px}.project-card p{margin:0;font-size:13px}.isthmus{background:var(--ink);color:var(--paper);grid-template-columns:1fr 1fr;gap:12%;padding:85px 8%;display:grid}.isthmus .eyebrow,.isthmus p{color:#e1e6f0}.isthmus h2{font-size:42px}.isthmus p{font-size:14px}.isthmus .text-link{margin-top:15px}.company-history article{border-top:1px solid #586884;padding:25px 0 12px}.company-history article>span{letter-spacing:.1em;color:#c0d0ff;margin-bottom:15px;font-size:10px;display:block}.company-history h3{letter-spacing:.01em;margin-bottom:10px;font-size:26px}.company-history article+article{margin-top:20px}.company-history article+article h3{font-size:23px}.company-history p{font-size:11px}.award{border-top:1px solid var(--line);grid-template-columns:100px 1fr 1fr 20px;align-items:center;gap:25px;padding:28px 0;display:grid}.award>span:first-child{font-family:var(--serif);font-size:32px}.award h3{margin:0;font-size:21px}.award small{color:var(--body);letter-spacing:0;margin-top:8px;font-family:DM Sans,Arial,sans-serif;font-size:11px;display:block}.award p{margin:0;font-size:12px}.contact{background:#eef2fa;grid-template-columns:1.1fr 1fr;gap:12%;padding:85px 5%;scroll-margin-top:30px;display:grid}.contact h2{max-width:540px;margin-bottom:0}.contact-links{padding-top:45px}.contact-links a{overflow-wrap:anywhere;border-bottom:1px solid #c2cce0;justify-content:space-between;padding:18px 0;font-size:clamp(16px,1.9vw,26px);display:flex}.contact-links p{margin-top:22px;font-size:12px}footer{justify-content:space-between;align-items:center;gap:25px;padding:35px 5%;display:flex}footer>a{letter-spacing:-.03em;font-size:17px}footer>a span{margin-left:10px}footer p,footer small{color:var(--body);margin:0;font-size:10px}.portfolio{padding-top:65px}.portfolio h1{max-width:900px;margin-bottom:20px}.page-intro{max-width:660px;font-size:17px}.filters{border-top:1px solid var(--line);flex-wrap:wrap;gap:12px;margin:45px 0 12px;padding-top:30px;display:flex}.filters button{color:var(--ink);background:0 0;border:1px solid #c5cddd;padding:11px 19px;font-size:12px}.filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.results{margin:18px 0 25px;font-size:11px}.project-detail{padding-top:45px}.project-detail>.eyebrow{margin-top:50px;margin-bottom:18px}.project-detail h1{max-width:1000px}.detail-body{grid-template-columns:1fr 2fr;gap:10%;padding:40px 0 65px;display:grid}.detail-body h2{font-size:32px}.detail-body aside p{font-size:13px}.detail-body aside .eyebrow{margin-bottom:8px;font-size:10px}.detail-body aside>p:nth-of-type(2){margin-bottom:30px}.recognition{background:#eef2fa;margin-top:30px;padding:24px;font-size:24px}.recognition p{margin-bottom:0}.source-note{border-top:1px solid var(--line);margin-top:30px;padding-top:20px;font-size:11px}.next-project{border-top:1px solid var(--line);padding-top:55px}.cv{max-width:1250px;margin:auto;padding-top:65px}.cv-heading{border-bottom:1px solid var(--line);justify-content:space-between;gap:30px;padding-bottom:30px;display:flex}.cv-heading h1{font-size:48px}.cv-heading .lead{color:var(--ink);font-size:16px}.cv-heading p{font-size:13px}.print-hint{max-width:240px;margin-top:12px;font-size:11px!important}.cv-profile{border-bottom:1px solid var(--line);padding:35px 0}.cv h2{font-size:27px}.cv h3{margin-bottom:7px;font-size:20px}.cv h4{margin:0 0 12px;font-size:13px;font-weight:600}.cv p,.cv li{font-size:13px}.cv-columns{grid-template-columns:1.7fr 1fr;gap:65px;padding-top:40px;display:grid}.cv-columns aside{border-left:1px solid var(--line);padding-left:35px}.cv-columns aside section{margin-bottom:38px}.cv li{color:var(--body);margin:10px 0;line-height:1.6}.cv ul{padding-left:18px}.experience{break-inside:avoid;margin-bottom:32px}.experience .eyebrow{margin-bottom:10px;font-size:10px}.skip-link{background:var(--ink);color:#fff;z-index:100;padding:14px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:10px}@media (min-width:1600px){.header,.hero,.section,.contact,footer{padding-left:max(5%,50vw - 725px);padding-right:max(5%,50vw - 725px)}.cv{padding-left:50px;padding-right:50px}}@media (max-width:1000px){.header{height:85px}.nav{gap:18px}.hero{gap:25px;padding-top:45px}.hero h1{font-size:48px}.hero-actions{flex-wrap:wrap;gap:18px}.hero-bottom span:nth-child(2){display:none}.section{padding-top:70px;padding-bottom:70px}.profile{gap:6%}.credentials{flex-wrap:wrap}.credentials strong{font-size:17px}.service-grid{gap:25px}.isthmus{gap:7%;padding:65px 5%}.isthmus h2{font-size:36px}.selected-grid{grid-template-columns:repeat(2,1fr)}.award{grid-template-columns:70px 1fr 1fr 15px}.cv-columns{gap:30px}.cv-heading h1{font-size:40px}footer p{display:none}}@media (max-width:700px){html{scroll-padding-top:20px}.header{height:80px;padding:0 6%}.brand{gap:12px;font-size:14px}.brand small{font-size:8px}.menu-toggle{color:var(--ink);background:0 0;border:0;gap:15px;padding:12px 0;font-size:12px;display:flex}.menu-toggle span{font-size:18px}.nav{background:var(--paper);border-bottom:1px solid var(--line);padding:20px 6% 28px;display:none;position:absolute;top:80px;left:0;right:0;box-shadow:0 18px 25px #17243e15}.nav.open{flex-direction:column;align-items:stretch;gap:10px;display:flex}.nav>a{padding:12px 0}.nav .language{border-left:0;padding-left:0}.nav .nav-contact{width:max-content}.hero{flex-direction:column;gap:30px;padding:40px 6% 0;display:flex}.hero .eyebrow{margin-bottom:25px;font-size:9px}.hero h1{margin-bottom:25px;font-size:clamp(42px,10.3vw,64px)}.hero-intro{font-size:17px}.hero-intro span{font-size:11px}.hero-description{font-size:13px}.hero-actions{gap:22px;margin-top:23px}.button{padding:15px 19px;font-size:11px}.hero-bottom{gap:15px;margin-top:0;padding:0 0 25px;font-size:8px}.section{padding:60px 6%}.profile{flex-direction:column-reverse;align-items:stretch;gap:35px;display:flex}.profile .portrait{max-width:none}.portrait img{aspect-ratio:1.15;object-position:50% 30%}.profile h2{font-size:34px}.profile p{font-size:13px}.credentials{gap:20px}.credentials strong{font-size:17px}.section-heading{margin-bottom:30px;display:block}.section-heading .eyebrow{margin-bottom:18px}.section-heading h2{font-size:34px}.service-grid{grid-template-columns:1fr;gap:28px}.service-grid article{grid-template-columns:40px 1fr;column-gap:20px;display:grid}.service-number{grid-row:1/3;margin:6px 0}.service-grid h3{max-width:none;margin-bottom:12px;font-size:23px}.service-grid p{max-width:none;font-size:13px}.selected .text-link{margin-top:25px}.project-grid,.selected-grid{grid-template-columns:1fr;gap:35px}.project-card h3{font-size:23px}.isthmus{grid-template-columns:1fr;gap:35px;padding:55px 6%}.isthmus h2{font-size:35px}.isthmus p{font-size:13px}.company-history h3{font-size:25px}.award{grid-template-columns:55px 1fr;gap:12px;padding:25px 0}.award>span:first-child{align-self:start;font-size:25px}.award h3{font-size:19px}.award p{grid-column:2}.award>span:last-child{display:none}.award small{line-height:1.6}.contact{grid-template-columns:1fr;gap:20px;padding:55px 6%}.contact h2{font-size:35px}.contact-links{padding-top:0}.contact-links a{font-size:19px}.contact-links p{font-size:12px}footer{flex-direction:column;align-items:flex-start;gap:15px;padding:30px 6%}footer>a{font-size:17px}.portfolio h1{font-size:45px}.page-intro{font-size:15px}.filters{gap:8px}.filters button{padding:10px 12px;font-size:11px}.project-detail h1{font-size:39px}.project-detail>.eyebrow{margin-top:35px}.detail-body{grid-template-columns:1fr;gap:20px;padding-top:15px}.detail-body>div p{font-size:14px}.detail-body aside{grid-template-columns:1fr 1fr;column-gap:20px;display:grid}.detail-body aside .recognition{grid-column:1/-1;margin:0 0 20px}.cv-heading{display:block}.cv-heading h1{font-size:39px}.cv-heading .no-print{margin-top:25px}.cv-columns{grid-template-columns:1fr;gap:20px}.cv-columns aside{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}@media print{@page{size:A4;margin:15mm}body{color:#111;background:#fff;font-family:Arial,sans-serif}.no-print,.skip-link{display:none!important}.cv{max-width:none;padding:0}.cv-heading{padding-bottom:10px;display:block}.cv-heading h1{margin-bottom:8px;font-size:27px}.cv-heading .eyebrow{margin-bottom:8px}.cv h2{break-after:avoid;font-size:17px}.cv h3{break-after:avoid;font-size:13px}.cv h4{font-size:10px}.cv p,.cv li{color:#333;font-size:9.5px;line-height:1.55}.cv .lead{font-size:11px}.cv-columns{padding-top:20px;display:block}.cv-columns>section{width:100%}.cv-columns aside{border-left:0;grid-template-columns:1fr 1fr;gap:10px 30px;padding:20px 0 0;display:grid}.cv-columns aside section{break-inside:avoid;margin-bottom:10px}.experience{break-inside:avoid;margin-bottom:17px}.experience .eyebrow{margin-bottom:5px;font-size:8px}.cv-profile{padding:18px 0 8px}.cv-columns aside h3{font-size:11px}.cv-columns aside p{margin-bottom:10px}.cv ul{margin-top:0}.cv li{margin:4px 0}a{text-decoration:none}}.hero-copy{max-width:1000px}.hero-description{max-width:650px}.project-card{border-top:1px solid var(--ink);flex-direction:column;align-items:flex-start;min-width:0;padding:25px 0 10px;display:flex}.project-label{width:100%;margin:0 0 24px}.project-card h3{margin-bottom:15px}.project-card p{margin-bottom:25px}.project-cta{align-items:center;gap:24px;margin-top:auto;padding-top:8px;font-size:12px;display:flex}.project-cta>span{font-size:20px}.project-card:hover .project-cta{text-underline-offset:5px;text-decoration:underline}.detail-body{border-top:1px solid var(--line);margin-top:35px}.header{background:#fff;height:132px}.brand{align-items:center;gap:26px;display:flex}.brand-logo{flex-shrink:0;width:190px;height:auto}.brand-registration{border-left:1px solid var(--line);letter-spacing:.12em;color:var(--body);white-space:nowrap;padding-left:24px;font-size:9px}.button.dark{background:#223dad;border-color:#223dad}.button.dark:hover{background:#172b85}.nav .nav-contact{color:#223dad;border-color:#223dad}.nav a:hover,.nav a[aria-current]{text-decoration-color:#e32636}.footer-brand{flex-shrink:0;width:170px;display:block}.footer-brand img{width:100%;height:auto}@media (max-width:1000px){.brand-registration{display:none}.header{height:120px}.brand-logo{width:175px}}@media (max-width:700px){.header{height:112px}.brand-logo{width:165px}.nav{top:112px}.footer-brand{width:165px}}
