:root{--color-dark:#151515;--color-light:#fff;--color-brand:#3e5065;--color-accent:#5f9be1;--surface:var(--color-light);--ink:var(--color-dark);--heading-ink:var(--color-brand);--rule:var(--color-brand);--action-surface:var(--color-brand);--action-ink:var(--color-light);--font-heading:"Ranked Optimistic", sans-serif;--font-body:"Ranked Gill Sans MT", sans-serif;--weight-regular:400;--weight-bold:700;--text-label:.875rem;--text-body:clamp(1rem, .96rem + .2vw, 1.125rem);--text-lead:clamp(1.25rem, 1.1rem + .75vw, 1.75rem);--text-title:clamp(1.5rem, 1.2rem + 1.5vw, 2.5rem);--text-section:clamp(2rem, 1.4rem + 3vw, 4rem);--text-display:clamp(2.5rem, 1.5rem + 5vw, 6rem);--leading-body:1.55;--leading-heading:1.1;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-24:6rem;--space-section:clamp(var(--space-12), 8vw, var(--space-24));--container-max:80rem;--container-gutter:clamp(var(--space-4), 4vw, var(--space-16));--grid-gap:clamp(var(--space-4), 2vw, var(--space-8));--measure-copy:65ch}*,:before,:after{box-sizing:border-box}html{scroll-padding-block-start:var(--space-8)}body{background:var(--surface);color:var(--ink);font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--weight-regular);font-synthesis:none;line-height:var(--leading-body);margin:0}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4,.heading{color:var(--heading-ink);font-family:var(--font-heading);font-weight:var(--weight-regular);line-height:var(--leading-heading);overflow-wrap:break-word;text-wrap:balance}h1,.heading-display{font-size:var(--text-display)}h2,.heading-section{font-size:var(--text-section)}h3,h4,.heading-title{font-size:var(--text-title)}strong{font-weight:var(--weight-bold)}a{color:inherit;text-underline-offset:.2em}button,input,textarea,select{font:inherit}img{block-size:auto;max-inline-size:100%;display:block}:focus-visible{outline-offset:4px;outline:2px solid}::selection{background:var(--color-accent);color:var(--color-dark)}.container{inline-size:min(100% - 2 * var(--container-gutter), var(--container-max));margin-inline:auto}.grid{gap:var(--grid-gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.grid>*{grid-column:1/-1;min-inline-size:0}.stack>*+*{margin-block-start:var(--space-6)}.copy{max-inline-size:var(--measure-copy)}.lead{font-size:var(--text-lead)}.label{font-size:var(--text-label);line-height:1.4}.brand-slashes{font-weight:var(--weight-regular);margin-inline-end:.2em}.text-bar{padding-inline:var(--space-2);background:var(--action-surface);color:var(--action-ink);box-decoration-break:clone}.section{padding-block:var(--space-section);background:var(--surface);color:var(--ink)}.section-brand,.section-dark{--ink:var(--color-light);--heading-ink:var(--color-light);--rule:var(--color-light);--action-surface:var(--color-light);--action-ink:var(--color-brand)}.section-brand{--surface:var(--color-brand)}.section-dark{--surface:var(--color-dark)}.cta{min-block-size:2.75rem;max-inline-size:100%;padding:var(--space-3) var(--space-6);border:1px solid var(--action-surface);background:var(--action-surface);color:var(--action-ink);font-size:var(--text-body);text-align:center;justify-content:center;align-items:center;line-height:1.35;text-decoration:none;display:inline-flex}.cta:hover{text-decoration:underline;text-decoration-color:var(--color-accent);text-decoration-thickness:2px}.cta:focus-visible{outline-color:var(--ink)}.brand-logo{flex-shrink:0;align-items:center;min-block-size:2.75rem;inline-size:clamp(6rem,11vw,9rem);display:inline-flex}.brand-logo svg{aspect-ratio:892/116;inline-size:100%;display:block}.site-header{border-block-end:1px solid var(--rule)}.header-inner{align-items:center;gap:var(--space-4) var(--space-8);padding-block:var(--space-4);flex-wrap:wrap;display:flex}.site-nav{flex:1;min-inline-size:0}.nav-list{justify-content:flex-end;gap:var(--space-2) var(--space-6);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.nav-item{min-block-size:2.75rem;color:var(--color-brand);font-size:var(--text-label);align-items:center;display:inline-flex}.nav-item[aria-disabled=true]{cursor:default}.skip-link{padding:var(--space-2);background:var(--color-light);color:var(--color-dark);position:absolute;inset-block-start:var(--space-2);inset-inline-start:var(--space-4);transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}@media (width>=48rem){.grid{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-halves>*{grid-column:span 6}.grid-thirds>*{grid-column:span 4}}button[data-inquiry]{cursor:pointer;font-family:inherit}button.nav-item{background:0 0;border:0;padding:0}body .site-nav .nav-item[aria-current=page],.mobile-menu a[aria-current=page]{text-underline-offset:.3em;text-decoration:underline 1px}.inquiry{background:var(--color-light);max-block-size:calc(100svh - 2rem);inline-size:min(35rem,100% - 2rem);max-inline-size:none;color:var(--color-brand);border:0;padding:0;overflow:auto}.inquiry::backdrop{background:#1515158c}.inquiry[open]{animation:.16s ease-out inquiry-enter}.inquiry-panel{padding:clamp(1.5rem,4vw,2rem)}.inquiry-close{block-size:2.75rem;inline-size:2.75rem;color:inherit;cursor:pointer;background:0 0;border:0;font-size:1.75rem;position:absolute;inset-block-start:.25rem;inset-inline-end:.5rem}.inquiry h2{padding-inline-end:var(--space-6);font-size:1.75rem}.inquiry h2+p{margin-block:var(--space-3) var(--space-6)}.inquiry-field{gap:var(--space-1);margin-block-end:var(--space-3);display:grid}.inquiry label,.inquiry-email{font-size:var(--text-label)}.inquiry input,.inquiry textarea{border:1px solid var(--color-brand);inline-size:100%;min-inline-size:0;padding:.625rem var(--space-3);background:var(--color-light);color:var(--color-brand);font:inherit;border-radius:0;font-size:1rem}.inquiry textarea{resize:vertical}.inquiry input::placeholder,.inquiry textarea::placeholder{color:var(--color-brand);opacity:.7}.inquiry-contact{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.inquiry-error,.inquiry-status{font-size:var(--text-label);display:block}.inquiry-status,.inquiry-email{margin-block-start:var(--space-3)}.inquiry-submit{cursor:pointer}.inquiry-submit:disabled{opacity:.65;cursor:wait}@keyframes inquiry-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.inquiry[open]{animation:none}}.inquiry-error:empty,.inquiry-status:empty{display:none}@media (width>48rem){.inquiry-close{place-items:center;padding:0;line-height:1;display:grid;inset-block-start:var(--space-6);inset-inline-end:var(--space-4)}.inquiry h2{margin-inline-end:var(--space-8)}}.inquiry-privacy{font-size:var(--text-label);margin-block-start:var(--space-3)}@media (width<=30rem){.inquiry-contact{grid-template-columns:minmax(0,1fr);gap:0}}.inquiry-consent{gap:var(--space-2);margin-block:var(--space-3);grid-template-columns:1.125rem minmax(0,1fr);align-items:start;display:grid}.inquiry-consent input{appearance:auto;block-size:1.125rem;inline-size:1.125rem;accent-color:var(--color-brand);margin:.15rem 0 0;padding:0}.inquiry-consent label{line-height:1.4}#consent-error:not(:empty){margin-block-end:var(--space-3)}#services{--surface:color-mix(in srgb, var(--color-light) 98%, var(--color-dark));--ink:var(--color-brand);padding-block:clamp(var(--space-12), 6vw, var(--space-24))}.services-heading .heading{font-size:clamp(2rem,3vw,2.75rem)}.services-spread{gap:var(--space-8);margin-block-start:clamp(2.5rem, 5vw, var(--space-16));display:grid}.services-photograph{aspect-ratio:2;overflow:hidden}.services-photograph img{object-fit:cover;object-position:30% 65%;transform-origin:50% 65%;filter:saturate(.88)brightness(.97);block-size:100%;inline-size:100%;transform:scale(1.08)}.services-index{min-inline-size:0}.service-list{margin:0;padding:0;list-style:none}.service-item{padding-block:var(--space-6);border-block-end:1px solid color-mix(in srgb, var(--color-brand) 25%, transparent)}.service-item:first-child{padding-block-start:0}.service-number{font-size:var(--text-label);font-variant-numeric:tabular-nums;margin-block-end:var(--space-2);line-height:1.4;display:block}.service-summary{font-size:clamp(1.25rem,1.6vw,1.5rem);font-weight:var(--weight-bold);text-wrap:initial;line-height:1.25}.service-copy{max-inline-size:52ch;font-size:var(--text-body);margin-block-start:var(--space-2)}@media (width>=64rem){.services-spread{gap:clamp(var(--space-8), 5vw, var(--space-16));grid-template-columns:5fr 7fr;align-items:start}.services-photograph{aspect-ratio:10/11}.services-photograph img{transform:scale(1.25)}}#contact{--container-gutter:clamp(1.5rem, 4vw, 4rem);padding-block:clamp(var(--space-8), 5vw, var(--space-16))}.contact-heading .heading{font-size:clamp(1.625rem,2.5vw,2.5rem)}.contact-content{gap:var(--space-6);margin-block-start:var(--space-6);display:grid}.contact-statement{max-inline-size:23ch;font-family:var(--font-heading);text-wrap:balance;font-size:clamp(1.875rem,3.5vw,3.25rem);line-height:1.16}.contact-copy{min-inline-size:0;max-inline-size:52ch}.contact-copy>*+*{margin-block-start:var(--space-6)}.contact-link{align-items:center;gap:var(--space-2);min-block-size:3rem;max-inline-size:100%;padding:var(--space-3) var(--space-6);border:1px solid var(--color-light);background:var(--color-light);color:var(--color-brand);font-size:var(--text-body);line-height:1.35;text-decoration:none;display:inline-flex}.contact-link:hover{background:var(--color-brand);color:var(--color-light)}.site-footer{padding-block:var(--space-8) var(--space-4);color:var(--color-brand);background:var(--color-light)}.footer-inner{align-items:start;gap:var(--space-4);font-size:1rem;display:grid}.footer-contact{gap:var(--space-2);justify-items:start;display:grid}.site-footer a{text-underline-offset:.2em;text-decoration:none}.site-footer a:hover{text-decoration:underline}.footer-legal{justify-content:space-between;gap:var(--space-2) var(--space-6);border-block-start:1px solid color-mix(in srgb, var(--color-brand) 20%, transparent);font-size:var(--text-label);flex-wrap:wrap;margin-block-start:var(--space-6);padding-block-start:var(--space-3);display:flex}@media (width>=48rem){.contact-content{gap:var(--space-12);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;margin-block-start:var(--space-8)}.footer-inner{gap:var(--space-8);grid-template-columns:1fr auto 1fr}.footer-descriptor{text-align:center}.footer-contact{justify-self:end}}.explore-link{font-size:var(--text-body);text-underline-offset:.2em;margin-block-start:var(--space-8);text-decoration:underline;display:inline-block}.explore-link[aria-disabled=true]{cursor:default}.process-section-label{color:var(--color-brand);margin-block-end:var(--space-4)}.hero-category{max-inline-size:65ch}#insights{border-block-start:1px solid var(--color-brand)}.insights-heading .process-symbol{margin-block-start:var(--space-6)}@media (width>=64rem){#services{padding-block-end:clamp(1.3rem,2.6vw,2.6rem)}}#hero.cinematic-hero{isolation:isolate;min-block-size:100svh;padding-block:12rem calc(clamp(var(--space-16), 16svh, 10rem) + 2.5rem);background:var(--color-brand);color:var(--color-light);align-items:flex-end;display:flex;position:relative;overflow:clip}.cinematic-hero-video,.cinematic-hero-grade{pointer-events:none;block-size:100%;inline-size:100%;position:absolute;inset:0}.cinematic-hero-video{z-index:-2;object-fit:cover;object-position:50% 50%;filter:brightness(.9)saturate(.88)}.cinematic-hero-grade{z-index:-1;background:color-mix(in srgb, var(--color-dark) 70%, var(--color-brand));opacity:.25}.cinematic-hero-content{padding-inline:var(--space-8)}.cinematic-hero-content h1{max-inline-size:14ch;color:var(--color-light);font-size:clamp(3rem,6.2vw,6.25rem);font-weight:var(--weight-regular);letter-spacing:-.025em;text-wrap:initial;line-height:1.05}.cinematic-hero-content h1 span{display:block}.site-header-overlay{z-index:2;color:var(--color-light);border:0;position:absolute;inset-block-start:0;inset-inline:0}.site-header-overlay .header-inner{padding-block:var(--space-6)}.site-header-overlay .nav-item{color:var(--color-light);text-decoration:none}.site-header-overlay .nav-item:hover,.site-header-overlay .nav-item:focus-visible{text-underline-offset:.3em;text-decoration:underline 1px}.site-header-overlay .nav-list{column-gap:var(--space-8)}body>.skip-link{z-index:3}.mobile-menu-trigger{display:none}.mobile-menu-trigger,.mobile-menu-close{min-block-size:2.75rem;padding:var(--space-2) 0 var(--space-2) var(--space-4);color:inherit;font-family:var(--font-body);font-size:var(--text-body);cursor:pointer;background:0 0;border:0}.mobile-menu{background:var(--color-brand);block-size:100dvh;max-block-size:none;inline-size:100%;max-inline-size:none;color:var(--color-light);overscroll-behavior:contain;border:0;margin:0;padding:0;position:fixed;inset:0}.mobile-menu::backdrop{background:var(--color-brand)}.mobile-menu-inner{min-block-size:100%;padding-block:var(--space-6) var(--space-12)}.mobile-menu-close{margin-inline-start:auto;display:block}.mobile-menu-heading{justify-content:space-between;align-items:center;display:flex}.mobile-menu nav{margin-block-start:max(var(--space-8), calc(30svh - 4.25rem))}.mobile-menu ul{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.mobile-menu nav a{min-block-size:2.75rem;padding-block:var(--space-2);font-family:var(--font-heading);font-size:clamp(1.55rem,5.3vw,2.4375rem);line-height:1.25;text-decoration:none;display:block}.mobile-menu nav a:hover,.mobile-menu nav a:focus-visible,.mobile-menu-trigger:hover,.mobile-menu-close:hover{text-decoration:underline 1px}@media (prefers-reduced-motion:no-preference){.mobile-menu[open]{animation:.15s ease-out menu-reveal}}@keyframes menu-reveal{0%{opacity:0}to{opacity:1}}@media (width<=48rem){#hero.cinematic-hero{padding-block-end:clamp(var(--space-16), 12svh, var(--space-24))}.cinematic-hero-content{padding-inline:var(--space-2)}.cinematic-hero-content h1{font-size:clamp(2.05rem,8.6vw,3rem)}.site-header-overlay .header-inner{flex-wrap:nowrap;justify-content:space-between;align-items:center}.site-header-overlay .site-nav{display:none}.mobile-menu-trigger{display:inline-block}}@media (width<48rem){.cinematic-hero-video{object-position:62% 50%}}.hero-descriptor{margin-block-start:var(--space-4);font-size:clamp(.875rem,1.15vw,1rem);line-height:1.4}.mobile-menu nav button{min-block-size:2.75rem;padding:var(--space-2) 0;color:inherit;font-family:var(--font-heading);text-align:start;background:0 0;border:0;font-size:clamp(1.55rem,5.3vw,2.4375rem);line-height:1.25;display:block}.mobile-menu nav button:hover{text-decoration:underline}
