#hero{position:relative;background:var(--c-ink);overflow:hidden} #hero .hero__photo{position:relative;height:78vh;min-height:500px;overflow:hidden} #hero .hero__photo>img{width:100%;height:100%;object-fit:cover;object-position:50% 42%;border-radius:0} #hero .hero__scrim{position:absolute;inset:0;background:linear-gradient(to top right,rgba(20,24,28,.86) 0%,rgba(20,24,28,.62) 46%,rgba(20,24,28,.25) 100%)} #hero .hero__plate{position:absolute;left:0;right:0;bottom:clamp(1.5rem,4vw,3.25rem);padding-inline:max(clamp(1.25rem,4vw,2.5rem),calc((100% - var(--wrap))/2))} #hero .hero__kicker{color:var(--c-chalk-70);margin-bottom:var(--sp-4)} #hero h1{color:var(--c-chalk);font-size:2.125rem;max-width:17ch} #hero .hero__sub{margin-top:var(--sp-4);color:var(--c-chalk-80);font-size:1.0625rem;max-width:46ch} #hero .hero__ctas{margin-top:var(--sp-5);flex-direction:column;align-items:stretch;gap:12px} #hero .hero__ctas .btn{width:100%} @media (min-width:560px){#hero .hero__ctas{flex-direction:row;align-items:center;gap:var(--sp-4)}#hero .hero__ctas .btn{width:auto}} @media (min-width:900px){#hero .hero__photo{height:82vh;min-height:620px;max-height:920px}#hero h1{font-size:clamp(2.9rem,5.4vw,4.6rem);max-width:640px}#hero .hero__sub{font-size:1.1875rem}} #hero .hero__rail{background:var(--c-ink);color:var(--c-chalk);display:grid;grid-template-areas:"mark email" "cov cov";grid-template-columns:auto auto;justify-content:space-between;align-items:center;row-gap:.45rem;column-gap:var(--sp-4);padding:.7rem max(clamp(1.25rem,4vw,2.5rem),calc((100% - var(--wrap))/2))} #hero .hero__mark{grid-area:mark;width:26px;height:26px;color:var(--c-chalk)} #hero .hero__coverage{grid-area:cov;text-align:center;font-family:var(--f-display);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.8125rem;line-height:1.2;color:var(--c-chalk)} #hero .hero__email{grid-area:email;text-align:right;font-size:.75rem;line-height:1.3;color:var(--c-chalk-70);word-break:break-word} @media (min-width:768px){#hero .hero__rail{grid-template-areas:"mark cov email";grid-template-columns:1fr auto 1fr;min-height:56px;padding-block:.35rem;row-gap:0}#hero .hero__email{font-size:.8125rem}}

#what-we-handle{position:relative;overflow:hidden;background:var(--c-bg);padding-block:clamp(3rem,6vw,5.5rem)} #what-we-handle .handle__intro{padding-inline:clamp(1.25rem,4vw,2.5rem);max-width:44rem} #what-we-handle h2{color:var(--c-primary);margin-bottom:var(--sp-4)} #what-we-handle .handle__frame{color:var(--c-secondary);font-size:1rem;max-width:46ch} #what-we-handle .handle__course{margin-top:clamp(2rem,4vw,3rem);background:var(--c-surface);border-top:1px solid var(--c-hairline);border-bottom:1px solid var(--c-hairline);padding:clamp(.75rem,2vw,1.25rem) clamp(1.25rem,4vw,2.5rem)} #what-we-handle .srow{display:grid;grid-template-areas:"num" "media" "text";padding-block:clamp(1.25rem,3vw,1.75rem);transition:background-color var(--mo-fast) linear} #what-we-handle .srow .scope-ledger{grid-area:num} #what-we-handle .srow__media{grid-area:media;margin-bottom:var(--sp-4);border-radius:0} #what-we-handle .srow__media img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:0} #what-we-handle .srow__text{grid-area:text} #what-we-handle .srow h3{margin-bottom:var(--sp-3)} #what-we-handle .srow p{color:var(--c-secondary);font-size:1rem;max-width:54ch} #what-we-handle .srow:hover .scope-ledger,#what-we-handle .srow:focus-within .scope-ledger{color:var(--c-primary)} @media (min-width:900px){#what-we-handle .handle__split{display:grid;grid-template-columns:5fr 7fr;column-gap:clamp(2rem,4vw,3.5rem);padding-left:max(clamp(1.25rem,4vw,2.5rem),calc((100% - var(--wrap))/2));padding-right:0}#what-we-handle .handle__intro{padding-inline:0;position:sticky;top:calc(var(--header-h) + 2rem);align-self:start}#what-we-handle .handle__course{margin-top:0;padding-right:0;padding-left:clamp(1.25rem,2.5vw,2rem);border-left:1px solid var(--c-hairline)}#what-we-handle .srow{grid-template-areas:"num num" "text media";grid-template-columns:minmax(0,1fr) 260px;column-gap:clamp(1.5rem,3vw,2.5rem);align-items:start}#what-we-handle .srow__media{margin-bottom:0}#what-we-handle .srow:nth-of-type(1) .srow__media{margin-right:-14px}#what-we-handle .srow:nth-of-type(2) .srow__media{margin-right:-34px}#what-we-handle .srow:nth-of-type(3) .srow__media{margin-right:-20px}#what-we-handle .srow:hover{background:rgba(31,58,95,.035)}}

#who-we-work-with{background:var(--c-ink);color:var(--c-chalk);padding-block:clamp(2.5rem,5vw,3.75rem)} #who-we-work-with .who__inner{width:100%;padding-inline:max(clamp(1.25rem,4vw,2.5rem),calc((100% - var(--wrap))/2))} #who-we-work-with .who__row{display:grid;gap:clamp(1.25rem,3vw,2.5rem);margin-bottom:clamp(1.5rem,3vw,2rem)} #who-we-work-with .who__label{font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:clamp(1.375rem,2.4vw,1.875rem);line-height:1.08;letter-spacing:.01em;color:var(--c-chalk)} #who-we-work-with .who__label .signal-slash{display:none;height:1em;width:2px;margin:0 .5em 0 0;vertical-align:-.05em} #who-we-work-with .who__note{color:var(--c-chalk-80);font-size:1rem;max-width:62ch} @media (min-width:768px){#who-we-work-with .who__row{grid-template-columns:repeat(3,minmax(0,1fr))}#who-we-work-with .who__item+.who__item .who__label .signal-slash{display:inline-block}} @media (min-width:900px){#who-we-work-with{min-height:34vh;display:flex;align-items:center}}

#where-we-work{position:relative;overflow:hidden;background:var(--c-bg);padding-block:clamp(3rem,6vw,5.5rem)} #where-we-work .ww__split{display:grid;gap:clamp(1.75rem,4vw,2.5rem);padding-inline:clamp(1.25rem,4vw,2.5rem)} #where-we-work h2{color:var(--c-primary);margin-bottom:var(--sp-4)} #where-we-work .ww__line{color:var(--c-secondary);font-size:1rem;max-width:52ch} #where-we-work .ww__markets{list-style:none;margin:0;padding:0} #where-we-work .ww__markets li{padding-bottom:clamp(1rem,2vw,1.25rem)} #where-we-work .ww__city{display:block;font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:1.25rem;letter-spacing:.04em;line-height:1.1;color:var(--c-text)} #where-we-work .ww__map svg{width:100%;height:auto;max-height:320px} #where-we-work .map__outline{stroke:var(--c-secondary);stroke-width:1.25;fill:none} #where-we-work .map__link{stroke:var(--c-primary);stroke-width:2;fill:none} #where-we-work .map__link--light{stroke:var(--c-primary);stroke-width:1;opacity:.5} #where-we-work .map__leader{stroke:var(--c-hairline-strong);stroke-width:1;fill:none} #where-we-work .map__mark{fill:var(--c-accent)} #where-we-work .map__city{font-family:var(--f-display);font-weight:600;font-size:11px;letter-spacing:.12em;fill:var(--c-text)} @media (min-width:900px){#where-we-work .ww__split{grid-template-columns:5fr 7fr;grid-template-areas:"intro map" "markets map";column-gap:clamp(2rem,5vw,4rem);align-items:start;padding-left:max(clamp(1.25rem,4vw,2.5rem),calc((100% - var(--wrap))/2));padding-right:0}#where-we-work .ww__intro{grid-area:intro}#where-we-work .ww__markets{grid-area:markets;margin-top:clamp(1.25rem,3vw,2rem)}#where-we-work .ww__map{grid-area:map;align-self:center}#where-we-work .ww__map svg{max-height:440px}}

#about{position:relative;background:var(--c-ink)} #about .about__strip{position:relative;height:32vh;min-height:220px;overflow:hidden} #about .about__strip img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;border-radius:0} #about .about__strip::after{content:"";position:absolute;inset:0;background:var(--c-ink-55);pointer-events:none} #about .about__block{background:var(--c-ink);color:var(--c-chalk);padding:clamp(2.25rem,5vw,3.75rem) max(clamp(1.25rem,4vw,2.5rem),calc((100% - var(--wrap))/2))} #about .about__rule{height:1px;background:var(--c-hairline-strong);border:0;margin:0 0 clamp(1.75rem,3.5vw,2.5rem)} #about .ridge-kicker{color:var(--c-chalk-70)} #about h2{color:var(--c-chalk)} #about .about__grid{display:grid;gap:clamp(1.5rem,3vw,2.5rem)} #about .about__copy p{color:var(--c-chalk-80);font-size:1.0625rem} @media (min-width:900px){#about .about__strip{height:46vh;min-height:340px;max-height:520px}#about .about__grid{grid-template-columns:5fr 7fr;column-gap:clamp(2rem,5vw,4rem)}} @media (min-width:1100px){#about .about__copy{column-count:2;column-gap:clamp(2rem,3vw,3rem)}#about .about__copy p{max-width:40ch}}

#questions-contact{position:relative;overflow:hidden;background:var(--c-bg)} #questions-contact .qc__faq-course{display:grid;gap:clamp(1.75rem,4vw,2.5rem);padding-block:clamp(3rem,6vw,5.5rem);padding-inline:max(clamp(1.25rem,4vw,2.5rem),calc((100% - var(--wrap))/2))} #questions-contact h2{color:var(--c-primary)} #questions-contact .qc__list{list-style:none;margin:0;padding:0} #questions-contact .qc__list li{border-top:1px solid var(--c-hairline);padding-block:clamp(1.125rem,2.2vw,1.5rem)} #questions-contact .qc__list li:last-child{border-bottom:1px solid var(--c-hairline)} #questions-contact .qc__q{font-family:var(--f-display);font-weight:600;font-size:1.0625rem;line-height:1.3;color:var(--c-text);margin-bottom:var(--sp-2)} #questions-contact .qc__a{font-size:1rem;color:var(--c-secondary);max-width:60ch} #questions-contact .qc__close{display:grid;grid-template-columns:minmax(0,1fr)} #questions-contact .qc__panel{background:var(--c-ink);color:var(--c-chalk);padding:clamp(2.25rem,5vw,3.5rem) clamp(1.25rem,4vw,2.5rem)} #questions-contact .qc__phone{display:inline-block;font-family:var(--f-display);font-weight:800;font-size:clamp(2.125rem,2.9vw,3rem);line-height:1;letter-spacing:-.02em;color:var(--c-chalk);white-space:nowrap} #questions-contact .qc__phone:hover,#questions-contact .qc__phone:focus-visible{color:var(--c-accent)} #questions-contact .qc__email{display:inline-block;margin-top:var(--sp-3);color:var(--c-chalk-70);font-size:1rem;min-height:44px} #questions-contact .qc__formlead{margin-top:var(--sp-5);color:var(--c-chalk-80);font-size:1rem;max-width:44ch} #questions-contact .qc__form{margin-top:var(--sp-6);display:grid;gap:20px} #questions-contact .qc__form label{display:block;font-family:var(--f-display);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--c-chalk-70);margin-bottom:.4rem} #questions-contact .qc__form input,#questions-contact .qc__form select,#questions-contact .qc__form textarea{width:100%;min-height:44px;background:transparent;border:0;border-bottom:1px solid var(--c-chalk-55);border-radius:0;color:var(--c-chalk);padding:.5rem 0;font-size:1rem} #questions-contact .qc__form textarea{min-height:96px;resize:vertical} #questions-contact .qc__form input::placeholder,#questions-contact .qc__form textarea::placeholder{color:var(--c-chalk-55)} #questions-contact .qc__form select{appearance:none;-webkit-appearance:none;padding-right:1.75rem} #questions-contact .qc__form option{background:#14181C;color:#F5F2ED} #questions-contact .qc__field--select{position:relative} #questions-contact .qc__field--select::after{content:"";position:absolute;right:4px;bottom:18px;width:8px;height:8px;border-right:2px solid var(--c-chalk-70);border-bottom:2px solid var(--c-chalk-70);transform:rotate(45deg);pointer-events:none} #questions-contact .qc__form input:focus-visible,#questions-contact .qc__form select:focus-visible,#questions-contact .qc__form textarea:focus-visible{border-bottom-color:var(--c-accent)} #questions-contact .qc__form button{width:100%;margin-top:var(--sp-2)} #questions-contact .qc__photo{order:-1;aspect-ratio:4/3;overflow:hidden} #questions-contact .qc__photo img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;border-radius:0} @media (min-width:768px){#questions-contact .qc__form button{width:auto;justify-self:start}} @media (min-width:900px){#questions-contact .qc__faq-course{grid-template-columns:5fr 7fr;column-gap:clamp(2rem,5vw,4rem)}#questions-contact .qc__close{grid-template-columns:5fr 7fr}#questions-contact .qc__panel{padding-left:max(clamp(1.25rem,4vw,2.5rem),calc((100% - var(--wrap))/2));padding-right:clamp(2rem,3vw,3rem);padding-block:clamp(3rem,5vw,4.5rem)}#questions-contact .qc__photo{order:0;aspect-ratio:auto;min-height:100%}}