/* SEO FIRST AGENCY — responsive Figma implementation. */
@font-face{font-family:Montserrat;src:url('../fonts/montserrat-variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Manrope;src:url('../fonts/manrope-variable.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:Inter;src:url('../fonts/inter-variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Inter;src:url('../fonts/inter-variable.woff2') format('woff2');font-style:oblique 0deg 10deg;font-weight:100 900;font-display:swap}

:root{--sfa-bg:#030303;--sfa-surface:#050505;--sfa-text:#f7f7f5;--sfa-muted:#a9aaad;--sfa-accent:#f00014;--sfa-border:#202023;--sfa-heading-font:Montserrat,Arial,sans-serif;--sfa-body-font:Manrope,Arial,sans-serif;--sfa-width:1256px;--sfa-gutter:92px;--sfa-gutter-mobile:24px;--sfa-radius:8px;--header-height:104px;--header-height-mobile:92px;color-scheme:dark}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--sfa-bg);color:var(--sfa-text);font-family:var(--sfa-body-font);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
body.sfa-dialog-open{overflow:hidden}
img{display:block;max-width:100%;height:auto}
picture{display:block}
.sfa-icon{display:block;flex:none;width:18px;height:18px;object-fit:contain}
a{color:inherit;text-decoration:none;text-underline-offset:4px}
button,input,textarea,select{font:inherit}
button,input[type=submit]{cursor:pointer}
button:disabled,input[type=submit]:disabled{cursor:wait;opacity:.6}
button{color:inherit}
h1,h2,h3,h4,h5,h6,p,ul,ol{margin-top:0}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--sfa-text);outline-offset:5px}
::selection{background:var(--sfa-accent);color:#fff}
[hidden]{display:none!important}
.screen-reader-text,.sfa-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;z-index:100000;left:16px;top:-100px;padding:12px 20px;color:#fff;background:var(--sfa-accent)}
.skip-link:focus{position:fixed!important;top:16px;width:auto;height:auto;margin:0;clip:auto;overflow:visible;white-space:normal}
.sfa-container{width:min(var(--sfa-width),calc(100% - 2 * min(var(--sfa-gutter),6.4vw)));margin-inline:auto}
.sfa-container>*{min-width:0}
.sfa-section{position:relative;isolation:isolate;color:var(--section-text,var(--sfa-text));background-color:var(--section-bg,transparent);padding-top:var(--section-pt,40px);padding-bottom:var(--section-pb,40px);--section-accent:var(--sfa-accent)}
.sfa-section .sfa-container{position:relative;z-index:1}
.sfa-heading{margin:0;font-family:var(--sfa-heading-font);font-size:var(--heading-size,48px);font-weight:900;line-height:.96;letter-spacing:-.035em;overflow-wrap:anywhere}
.sfa-heading-line{display:block}
.sfa-description{margin:0;font-size:var(--body-size,14px);line-height:1.5;letter-spacing:.2px;color:var(--sfa-muted);white-space:normal}
.sfa-eyebrow{display:flex;align-items:center;gap:12px;margin:0;font-size:10px;font-weight:700;letter-spacing:3.8px;line-height:20px;text-transform:uppercase}
.sfa-eyebrow::before{content:"";display:block;flex:none;width:10px;height:20px;background:var(--section-accent,var(--sfa-accent));mask:url('../icons/eyebrow-slash.svg') center / contain no-repeat}
.sfa-eyebrow>.sfa-icon{display:none}
.sfa-section.is-decoration-hidden .sfa-eyebrow::before,.sfa-section.is-decoration-hidden::after,.sfa-section[data-decoration="false"]::after{display:none}
.sfa-no-decoration .sfa-eyebrow::before,.sfa-no-decoration .sfa-metric::before,.sfa-partners.sfa-no-decoration::before,.sfa-partners.sfa-no-decoration::after,.sfa-about.sfa-no-decoration::after{display:none}
.sfa-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-width:210px;min-height:50px;padding:12px 24px;border:1px solid var(--section-accent,var(--sfa-accent));border-radius:3px;background:rgb(4 4 4 / .6);font-size:12px;font-weight:700;line-height:18px;letter-spacing:.3px;text-align:center;color:var(--section-text,var(--sfa-text));text-decoration:none;transition:background-color .18s,border-color .18s,box-shadow .18s;white-space:normal}
.sfa-button.is-primary{background:var(--section-accent,var(--sfa-accent));color:#fff}
.sfa-button.is-text{min-width:0;padding-inline:0;background:none;border-color:transparent}
.sfa-button:hover{background:color-mix(in srgb,var(--section-accent,var(--sfa-accent)) 18%,#030303);box-shadow:0 0 22px color-mix(in srgb,var(--section-accent,var(--sfa-accent)) 16%,transparent)}
.sfa-button.is-primary:hover{background:color-mix(in srgb,var(--section-accent,var(--sfa-accent)) 85%,#fff)}
.sfa-button-icon,.sfa-button>span:last-child[aria-hidden="true"]{font-size:18px;font-weight:400;line-height:1}
.sfa-buttons{display:flex;flex-wrap:wrap;gap:20px;margin-top:26px}

/* Header occupies the top of the hero without changing the artwork crop. */
.sfa-site-header{position:relative;z-index:20;min-height:var(--header-height,104px);background:color-mix(in srgb,var(--header-background,var(--sfa-bg)) calc(var(--header-opacity,0) * 100%),transparent)}
.sfa-has-hero .sfa-site-header,.sfa-header-overlay .sfa-site-header,.sfa-site-header.is-overlay{position:absolute;inset-inline:0;top:0}
.admin-bar.sfa-has-hero .sfa-site-header,.admin-bar.sfa-header-overlay .sfa-site-header{top:32px}
.sfa-header-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:var(--header-height,104px)}
.sfa-brand{display:inline-flex;align-items:center;gap:8px;flex:none;color:var(--sfa-text);line-height:1;text-decoration:none}
.sfa-brand>img,.sfa-brand>picture{width:var(--brand-width,196px);max-width:100%;height:auto}
.sfa-brand>.sfa-brand-mark{display:block;flex:none;width:18px;height:38px;background:none;transform:none}
.sfa-brand-copy{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:6px;max-width:var(--brand-width,196px);font-family:var(--sfa-heading-font);font-size:25px;font-weight:800;font-style:italic;letter-spacing:-.9px;line-height:29px}
.sfa-brand-prefix,.sfa-brand-accent{white-space:nowrap}
.sfa-brand-wordmark{display:block;flex-basis:100%;white-space:nowrap}
.sfa-brand-accent{color:var(--sfa-accent)}
.sfa-brand-tagline{flex:0 0 100%;font-family:var(--sfa-body-font);font-style:normal;font-size:8px;font-weight:500;line-height:12px;letter-spacing:6.6px}
.sfa-nav ul{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px 34px;list-style:none;margin:0;padding:0}
.sfa-nav li{position:relative;margin:0;padding:0}
.sfa-nav .sub-menu{display:none;position:absolute;top:100%;left:0;z-index:5;min-width:200px;padding:12px 18px;background:var(--sfa-bg);border:1px solid var(--sfa-border);box-shadow:0 12px 24px #0007}
.sfa-nav li:hover>.sub-menu,.sfa-nav li:focus-within>.sub-menu{display:block}
.sfa-nav a{display:block;font-size:10px;font-weight:700;line-height:16px;letter-spacing:.6px;padding-block:10px;text-transform:uppercase;transition:color .18s}
.sfa-nav a:hover,.sfa-nav .current-menu-item>a{color:var(--sfa-accent)}
.sfa-header-cta{flex:none}
.sfa-header-cta .sfa-button,.sfa-header-cta.sfa-button{min-height:38px;padding:9px 18px}
.sfa-menu-toggle{display:none;align-items:center;justify-content:center;flex:none;width:44px;height:44px;padding:10px;border:1px solid #3d3d40;border-radius:3px;background:rgb(0 0 0 / .3)}
.sfa-menu-toggle svg{width:22px;height:22px}
.sfa-menu-toggle>.sfa-icon{width:22px;height:22px}
.sfa-menu-toggle-icon{position:relative;width:22px;height:14px;border-block:1px solid currentColor}
.sfa-menu-toggle-icon::before{content:"";position:absolute;top:5px;left:0;width:22px;height:1px;background:currentColor}

/* Artwork remains an independently editable media layer at both breakpoints. */
.sfa-background{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.sfa-background picture,.sfa-background img{width:100%;height:100%}
.sfa-background img{max-width:none;object-fit:cover;object-position:var(--image-x,50%) var(--image-y,50%)}
.sfa-hero{position:relative;isolation:isolate;overflow:hidden;min-height:var(--hero-height,590px);padding-top:var(--section-pt,138px);padding-bottom:var(--section-pb,48px)}
.sfa-hero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,rgb(0 0 0 / var(--overlay,.25)),rgb(0 0 0 / 0) 78%)}
.sfa-hero-inner{position:relative;z-index:1}
.sfa-hero .sfa-eyebrow{font-size:11px;letter-spacing:2px;line-height:16px}
.sfa-hero .sfa-eyebrow::before{display:none}
.sfa-hero .sfa-heading{max-width:760px;margin-top:14px;margin-bottom:24px;font-size:var(--heading-size,72px);line-height:.96;letter-spacing:-.043em}
.sfa-hero .sfa-description{max-width:570px;font-size:var(--body-size,16px);line-height:24px}
.sfa-accent-words{position:absolute;right:7%;top:28%;display:flex;flex-direction:column;gap:12px;font-size:10px;letter-spacing:7px;line-height:1.5;color:var(--sfa-muted);transform:rotate(-14deg)}

.sfa-partners{position:relative;min-height:72px;padding-top:var(--section-pt,0);padding-bottom:var(--section-pb,0);border-top:1px solid var(--sfa-border);border-bottom:1px solid var(--sfa-border);background:var(--section-bg,var(--sfa-surface))}
.sfa-partners::before,.sfa-partners::after,.sfa-about::after,.sfa-footer::before{content:"";position:absolute;left:max(calc((100% - var(--sfa-width)) / 2),min(var(--sfa-gutter),6.4vw));width:54px;height:1px;background:var(--section-accent,var(--sfa-accent));pointer-events:none}
.sfa-partners::before{top:-1px}.sfa-partners::after{bottom:-1px}
.sfa-partners>.sfa-container{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:70px}
.sfa-partners-caption,.sfa-partners-descriptor{flex:0 1 auto;margin:0;font-size:9px;line-height:16px;text-transform:uppercase}
.sfa-partners-caption{font-weight:700;letter-spacing:2.7px;color:var(--sfa-muted)}
.sfa-partners-descriptor{font-weight:500;letter-spacing:1.8px;color:color-mix(in srgb,var(--sfa-muted) 70%,var(--sfa-bg))}
.sfa-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:32px;padding-block:10px}
.sfa-partner-logo{display:block;font-family:Inter,Arial,sans-serif;font-style:oblique 10deg;font-variation-settings:"slnt" -10;font-size:var(--heading-size,36px);font-weight:900;letter-spacing:-1.9px;line-height:42px;color:#d5d5d7}
.sfa-partner-logo img{height:var(--logo-height,28px);width:auto;max-width:180px;object-fit:contain}

.sfa-about{position:relative;isolation:isolate;overflow:hidden;min-height:380px;padding-top:var(--section-pt,44px);padding-bottom:var(--section-pb,40px);border-bottom:1px solid var(--sfa-border)}
.sfa-about::after{bottom:-1px}
.sfa-about .sfa-background{inset:auto;top:-6px;left:calc(50% + 158px);width:610px;height:610px;opacity:var(--image-opacity,1)}
.sfa-about .sfa-background img{object-fit:contain}
.sfa-about-grid{display:grid;grid-template-columns:minmax(0,430px) minmax(0,276px);gap:66px}
.sfa-about .sfa-heading{margin-top:12px;margin-bottom:20px;font-size:var(--heading-size,48px);line-height:.96}
.sfa-about .sfa-description{max-width:410px;line-height:21px}
.sfa-about .sfa-button{margin-top:20px;min-height:44px;padding-block:12px}
.sfa-metrics{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin:0;padding-top:21px}
.sfa-metric{position:relative;display:grid;grid-template-columns:minmax(94px,max-content) minmax(0,1fr);align-items:center;gap:20px;width:100%;min-height:58px;padding-left:28px}
.sfa-metric>.sfa-icon{display:none}
.sfa-metric::before{content:"";position:absolute;left:0;top:50%;width:8px;height:40px;background:var(--section-accent,var(--sfa-accent));transform:translateY(-50%);mask:url('../icons/metric-slash.svg') center / contain no-repeat}
.sfa-metric-value{margin:0;font-family:var(--sfa-heading-font);font-size:34px;font-weight:800;line-height:42px;letter-spacing:-1.5px}
.sfa-metric-caption{margin:0;font-size:9px;font-weight:700;line-height:17px;letter-spacing:2.1px;color:var(--sfa-muted);white-space:normal;text-transform:uppercase}

.sfa-services{position:relative;padding-top:var(--section-pt,36px);padding-bottom:var(--section-pb,40px)}
.sfa-services-header{display:grid;grid-template-columns:minmax(0,510fr) minmax(0,404fr) auto;align-items:center;gap:clamp(20px,4.6vw,66px);margin-bottom:24px}
.sfa-services .sfa-heading{margin-top:8px;font-size:var(--heading-size,42px);line-height:1;letter-spacing:-.033em}
.sfa-services-header>.sfa-description{line-height:21px}
.sfa-services-header>.sfa-button{min-height:44px;padding-block:12px}
.sfa-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.sfa-card{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;gap:18px;min-width:0;min-height:var(--card-height,208px);padding:18px 20px;border:1px solid color-mix(in srgb,var(--sfa-border) 92%,#fff);border-radius:var(--sfa-radius);background:var(--sfa-surface);overflow:hidden;transition:border-color .2s,box-shadow .2s}
.sfa-card:hover,.sfa-card:focus-within{border-color:var(--section-accent,var(--sfa-accent));box-shadow:0 0 24px color-mix(in srgb,var(--section-accent,var(--sfa-accent)) 12%,transparent)}
.sfa-card-picture,.sfa-card-shade{position:absolute;inset:0;pointer-events:none;z-index:-1;overflow:hidden}
.sfa-card-picture picture{width:100%;height:100%}
.sfa-card-picture img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--image-x,50%) var(--image-y,50%)}
.sfa-card-picture.is-crop-architecture img{inset:auto;left:-193.75%;top:-2.67%;width:312.5%;height:133.33%;object-fit:fill;translate:calc(var(--image-x,50%) - 50%) calc(var(--image-y,50%) - 50%)}
.sfa-card-picture.is-crop-detail img{inset:auto;left:-115.56%;top:-145%;width:222.22%;height:250%;object-fit:fill;translate:calc(var(--image-x,50%) - 50%) calc(var(--image-y,50%) - 50%)}
.sfa-card-picture.is-crop-globe img{inset:auto;left:-11.76%;top:-5.08%;width:117.65%;height:169.49%;object-fit:fill;translate:calc(var(--image-x,50%) - 50%) calc(var(--image-y,50%) - 50%)}
.sfa-card-shade{background:linear-gradient(180deg,rgb(0 0 0 / calc(var(--card-overlay,.45) * .267)),rgb(0 0 0 / min(1,calc(var(--card-overlay,.45) + .49))))}
.sfa-card-number{margin:0;font-size:10px;font-weight:500;line-height:16px;letter-spacing:2.8px}
.sfa-card-content{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.sfa-card h3{margin:0;font-family:var(--sfa-heading-font);font-size:15px;font-weight:800;line-height:19px;letter-spacing:-.4px}
.sfa-card h3 a::after{content:"";position:absolute;inset:0;z-index:2}
.sfa-card p:not(.sfa-card-number){margin:0;font-size:12px;line-height:18px;color:var(--sfa-muted);white-space:normal}
.sfa-card-arrow{display:inline-flex;align-items:center;justify-content:center;flex:none;width:32px;height:32px;border:1px solid color-mix(in srgb,var(--section-accent,var(--sfa-accent)) 80%,transparent);border-radius:50%;font-size:18px;line-height:1;transition:background .2s}
.sfa-card:hover .sfa-card-arrow{background:var(--section-accent,var(--sfa-accent))}

.sfa-footer{position:relative;border-top:1px solid var(--sfa-border);padding-block:28px}
.sfa-footer::before{top:-1px}
.sfa-footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;min-height:23px}
.sfa-footer p{margin:0}
.sfa-footer-left{font-family:var(--sfa-heading-font);font-size:12px;font-weight:800;line-height:18px;letter-spacing:.5px}
.sfa-footer-center{font-size:12px;line-height:18px;color:color-mix(in srgb,var(--sfa-muted) 70%,var(--sfa-bg))}
.sfa-footer-right{font-size:10px;font-weight:500;line-height:16px;letter-spacing:.4px;color:color-mix(in srgb,var(--sfa-muted) 70%,var(--sfa-bg))}
.sfa-footer-links{display:flex;flex-wrap:wrap;gap:12px 20px;list-style:none;margin:0;padding:0;font-size:12px}
.sfa-footer-links a:hover{text-decoration:underline}

/* Proposal form, native dialog focus handling and a server-rendered result. */
.sfa-contact{position:fixed;inset:0;width:min(560px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 40px);margin:auto;padding:40px;border:1px solid var(--sfa-border);border-top:2px solid var(--sfa-accent);border-radius:var(--sfa-radius);background:var(--sfa-bg);color:var(--sfa-text);box-shadow:0 30px 100px #000c;overflow:auto;overscroll-behavior:contain}
.sfa-contact::backdrop{background:rgb(0 0 0 / .8);backdrop-filter:blur(5px)}
.sfa-contact-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--sfa-border);border-radius:3px;background:transparent;font-size:26px;line-height:1}
.sfa-contact-close:hover{border-color:var(--sfa-accent)}
.sfa-contact h2{margin:0 24px 14px 0;font-family:var(--sfa-heading-font);font-size:28px;font-weight:900;line-height:1.15;letter-spacing:-1px}
.sfa-contact>p,.sfa-contact-description{color:var(--sfa-muted);font-size:14px;line-height:1.6}
.sfa-contact form{display:grid;gap:16px;margin-top:24px}
.sfa-form-field{display:flex;flex-direction:column;gap:7px;margin:0}
.sfa-form-field label{font-size:12px;font-weight:700;letter-spacing:.2px}
.sfa-form-field input,.sfa-form-field textarea,.sfa-form-field select{width:100%;min-height:46px;padding:11px 13px;border:1px solid #37373b;border-radius:3px;background:var(--sfa-surface);color:var(--sfa-text);font-size:15px;line-height:1.5}
.sfa-form-field textarea{min-height:115px;resize:vertical}
.sfa-form-field input::placeholder,.sfa-form-field textarea::placeholder{color:var(--sfa-muted);opacity:.65}
.sfa-form-field input:focus,.sfa-form-field textarea:focus{border-color:var(--sfa-accent)}
.sfa-form-consent,.sfa-contact-consent,.sfa-consent{display:flex;align-items:flex-start;gap:10px;color:var(--sfa-muted);font-size:12px;line-height:1.6}
.sfa-form-consent input,.sfa-contact-consent input,.sfa-consent input{flex:none;width:16px;height:16px;margin:3px 0 0;accent-color:var(--sfa-accent)}
.sfa-contact form>.sfa-button{width:100%;margin-top:3px}
.sfa-contact-result{margin:20px 0 0;padding:14px 16px;border:1px solid var(--sfa-border);border-left:3px solid var(--sfa-accent);background:var(--sfa-surface);font-size:14px;line-height:1.6}
.sfa-contact-result.is-success{border-left-color:#7dd8a4}
.sfa-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* Standard WordPress content remains readable outside the four landing blocks. */
.sfa-content,.sfa-post-content{width:min(840px,calc(100% - 48px));margin:60px auto 80px;line-height:1.8}
.sfa-page-content{width:100%;margin:0;line-height:1.8}
.sfa-page-content>:not(.sfa-section),.sfa-main:not(.sfa-container)>:not(.sfa-section):not(.sfa-page-content):not(.sfa-container){width:min(840px,calc(100% - 2 * var(--sfa-gutter-mobile)));margin-inline:auto;margin-block:24px}
.sfa-page-content>.alignwide,.sfa-main:not(.sfa-container)>.alignwide{width:min(var(--sfa-width),calc(100% - 2 * var(--sfa-gutter-mobile)))}
.sfa-page-content>.alignfull,.sfa-main:not(.sfa-container)>.alignfull{width:100%}
.sfa-content h1,.sfa-page-content h1,.sfa-post-content h1{font-size:clamp(32px,5vw,56px);font-family:var(--sfa-heading-font);line-height:1.1;font-weight:900;letter-spacing:-.04em}
.sfa-content :is(h2,h3,h4),.sfa-page-content :is(h2,h3,h4),.sfa-post-content :is(h2,h3,h4){margin-top:1.7em;font-family:var(--sfa-heading-font);line-height:1.25}
.sfa-content a:not(.sfa-button),.sfa-page-content a:not(.sfa-button),.sfa-post-content a:not(.sfa-button){text-decoration:underline}
.sfa-content :is(input,textarea),.sfa-post-content :is(input,textarea){max-width:100%;background:var(--sfa-surface);border:1px solid var(--sfa-border);padding:10px;color:var(--sfa-text)}
.sfa-content pre,.sfa-post-content pre{overflow:auto;padding:20px;background:var(--sfa-surface)}
.sfa-content table,.sfa-post-content table{border-collapse:collapse;width:100%}
.sfa-content :is(td,th),.sfa-post-content :is(td,th){padding:12px;border:1px solid var(--sfa-border);text-align:left}
.sfa-post-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.sfa-post-summary{padding:28px;border:1px solid var(--sfa-border);border-radius:var(--sfa-radius);background:var(--sfa-surface)}
.sfa-post-summary h2{margin-top:0}
.sfa-post-meta{color:var(--sfa-muted);font-size:12px}
.wp-block-image{margin-inline:0}.alignwide{max-width:var(--sfa-width)}.alignfull{max-width:none}
.pagination,.nav-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:32px}
.comment-list{padding-left:20px}.comment-body{margin-block:24px}.comment-form label{display:block}
.sfa-posts{padding-bottom:80px}.sfa-page-heading{padding-block:48px 32px;max-width:840px}.sfa-page-heading h1{margin:0;font-family:var(--sfa-heading-font);font-size:clamp(34px,5vw,56px);font-weight:900;line-height:1.1;letter-spacing:-.04em}
.sfa-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.sfa-post-card{min-width:0;padding:24px;border:1px solid var(--sfa-border);border-radius:var(--sfa-radius);background:var(--sfa-surface)}
.sfa-post-card>a:first-child{display:block;margin:-24px -24px 24px;overflow:hidden;border-radius:var(--sfa-radius) var(--sfa-radius) 0 0}.sfa-post-card img{width:100%;height:220px;object-fit:cover}
.sfa-post-card h2{margin:12px 0;font-family:var(--sfa-heading-font);font-size:24px;line-height:1.25;letter-spacing:-.03em}.sfa-post-card p{font-size:14px;color:var(--sfa-muted)}.sfa-post-card a:hover{color:var(--sfa-accent)}
.sfa-article{max-width:840px;padding-bottom:72px}.sfa-featured-image{width:100%;max-height:540px;object-fit:cover;border-radius:var(--sfa-radius);margin-bottom:32px}
.sfa-entry-content{line-height:1.8}.sfa-entry-content :is(h2,h3,h4){margin-top:1.7em;font-family:var(--sfa-heading-font);line-height:1.25}.sfa-entry-content a,.sfa-post-tags a{text-decoration:underline}.sfa-entry-content pre{padding:20px;overflow:auto;background:var(--sfa-surface)}.sfa-entry-content table{width:100%;border-collapse:collapse}.sfa-entry-content :is(td,th){padding:12px;border:1px solid var(--sfa-border);text-align:left}
.sfa-entry-content blockquote{margin:32px 0;padding:8px 24px;border-left:3px solid var(--sfa-accent);font-size:22px}.sfa-entry-content li{margin-bottom:8px}
.sfa-comments{max-width:840px;margin-block:48px}.sfa-article .sfa-comments{width:100%}.sfa-comments h2,.sfa-comments h3{font-family:var(--sfa-heading-font)}
.sfa-comments :is(input:not([type=checkbox]):not([type=submit]),textarea),.search-form input[type=search]{width:100%;max-width:100%;min-height:46px;border:1px solid var(--sfa-border);border-radius:3px;padding:10px 13px;background:var(--sfa-surface);color:var(--sfa-text)}.sfa-comments textarea{resize:vertical;min-height:130px}
.sfa-comments :is(input[type=submit],button),.search-form input[type=submit],.search-form button{min-height:46px;padding:11px 22px;border:1px solid var(--sfa-accent);border-radius:3px;background:var(--sfa-accent);color:#fff;font-size:12px;font-weight:700;letter-spacing:.3px}
.comment-form-cookies-consent{display:flex;align-items:flex-start;gap:10px}.comment-form-cookies-consent input{flex:none;margin-top:7px;accent-color:var(--sfa-accent)}.comment-form-cookies-consent label{font-size:12px;color:var(--sfa-muted)}
.search-form{display:flex;align-items:center;gap:12px;margin-block:24px}.search-form label{flex:1}.sfa-post-navigation,.post-navigation{margin-block:40px}.post-navigation .nav-links{justify-content:space-between;gap:24px}.nav-subtitle{display:block;color:var(--sfa-muted);font-size:12px}.page-numbers{display:inline-flex;min-width:40px;min-height:40px;align-items:center;justify-content:center;border:1px solid var(--sfa-border);padding:6px 10px}.page-numbers.current{background:var(--sfa-accent);border-color:var(--sfa-accent)}

@media(max-width:1200px){
 .sfa-header-inner{gap:22px}.sfa-nav ul{gap:14px 22px}.sfa-header-cta .sfa-button,.sfa-header-cta.sfa-button{min-width:180px}
 .sfa-about-grid{grid-template-columns:minmax(0,410px) minmax(0,276px);gap:40px}.sfa-about .sfa-background{left:auto;right:-110px}
 .sfa-services-header{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) auto;gap:24px}.sfa-services-header>.sfa-button{min-width:160px;padding-inline:16px}.sfa-services .sfa-heading{font-size:min(var(--heading-size,42px),3.4vw)}
 .sfa-card{padding-inline:16px}.sfa-card h3{font-size:14px}.sfa-service-grid{gap:16px}
}
@media(max-width:1100px){
 .sfa-header-inner{position:relative}.sfa-header-cta{margin-left:auto}.sfa-js .sfa-menu-toggle{display:inline-flex}
 .sfa-nav{position:absolute;top:calc(100% - 8px);right:0;width:min(360px,100%);padding:20px 24px;background:#080808;border:1px solid var(--sfa-border);border-top:2px solid var(--sfa-accent);box-shadow:0 20px 50px #0009}
 .sfa-nav ul{flex-direction:column;align-items:stretch;gap:0}.sfa-nav a{padding:13px 0;font-size:12px}.sfa-js .sfa-nav:not(.is-open){display:none}
 .sfa-nav .sub-menu{position:static;display:block;min-width:0;padding:0 0 0 16px;border:0;border-left:1px solid var(--sfa-border);box-shadow:none}
 html:not(.sfa-js) .sfa-header-inner{flex-wrap:wrap;padding-block:20px}html:not(.sfa-js) .sfa-nav{position:static;width:100%;margin-top:10px}html:not(.sfa-js) .sfa-nav ul{flex-direction:row;gap:10px 20px}
 .sfa-services-header{grid-template-columns:1fr 1fr;gap:20px 32px}.sfa-services-header>.sfa-button{justify-self:start}.sfa-services .sfa-heading{font-size:var(--heading-size,42px)}
 .sfa-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.sfa-card{padding:18px 20px}.sfa-card h3{font-size:15px}
 .sfa-partners-descriptor{max-width:240px;text-align:right}.sfa-partners-caption{max-width:220px}
}
@media(max-width:900px){
 .sfa-about-grid{grid-template-columns:minmax(0,1.25fr) minmax(240px,.85fr);gap:32px}.sfa-about .sfa-background{right:-230px;opacity:calc(var(--image-opacity,1) * .45)}
 .sfa-about .sfa-heading{font-size:min(var(--heading-size,48px),5vw)}.sfa-metric{grid-template-columns:minmax(80px,max-content) minmax(0,1fr);gap:12px;padding-left:22px}.sfa-metric-value{font-size:30px}.sfa-metric-caption{letter-spacing:1.5px;font-size:8px}
 .sfa-footer-center{order:3;width:100%}.sfa-accent-words{display:none}
 .sfa-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
 :root{--header-height:var(--header-height-mobile,92px)}
 .sfa-container{width:calc(100% - 2 * var(--sfa-gutter-mobile))}
 .sfa-section{padding-top:var(--section-pt-mobile,40px);padding-bottom:var(--section-pb-mobile,40px)}
 .sfa-heading{font-size:var(--heading-size-mobile,38px)}.sfa-description{font-size:var(--body-size-mobile,14px)}
 .sfa-site-header,.sfa-header-inner{min-height:var(--header-height-mobile,92px)}.sfa-header-inner{gap:16px}.sfa-header-cta{display:none}
 .sfa-brand>img,.sfa-brand>picture{width:var(--brand-width-mobile,196px)}.sfa-brand-copy{max-width:var(--brand-width-mobile,196px)}
 .sfa-nav{top:calc(100% - 8px);width:100%}.sfa-nav a{min-height:44px}
 .admin-bar.sfa-has-hero .sfa-site-header,.admin-bar.sfa-header-overlay .sfa-site-header{top:46px}
 .sfa-hero{min-height:var(--hero-height-mobile,720px);padding-top:var(--section-pt-mobile,108px);padding-bottom:var(--section-pb-mobile,32px)}
 .sfa-hero .sfa-background img{object-position:var(--image-x-mobile,64%) var(--image-y-mobile,50%)}
 .sfa-hero::before{background:linear-gradient(180deg,rgb(0 0 0 / min(1,calc(var(--overlay-mobile,.42) + .3))),rgb(0 0 0 / min(1,calc(var(--overlay-mobile,.42) + .15))) 66%,rgb(0 0 0 / .08))}
 .sfa-hero .sfa-heading{max-width:100%;margin-top:16px;margin-bottom:22px;font-size:var(--heading-size-mobile,43px);line-height:1;letter-spacing:-.042em}
 .sfa-hero .sfa-description{font-size:var(--body-size-mobile,15px);line-height:23px;max-width:100%}
 .sfa-hero .sfa-description br{display:none}.sfa-hero .sfa-description{white-space:normal}
 .sfa-buttons{flex-direction:column;align-items:stretch;gap:12px;width:100%;margin-top:24px}.sfa-buttons .sfa-button{width:100%;min-width:0}
 .sfa-partners{min-height:88px;padding-top:var(--section-pt-mobile,0);padding-bottom:var(--section-pb-mobile,0)}
 .sfa-partners>.sfa-container{min-height:86px;gap:20px}.sfa-partners-caption{max-width:178px;font-size:9px;line-height:17px;letter-spacing:2.1px}.sfa-partners-descriptor{display:none}.sfa-logos{gap:16px;justify-content:flex-end}
 .sfa-partner-logo img{height:var(--logo-height-mobile,26px);max-width:140px}
 .sfa-partners::before,.sfa-partners::after,.sfa-about::after,.sfa-footer::before{left:var(--sfa-gutter-mobile)}
 .sfa-about{min-height:0;padding-top:var(--section-pt-mobile,44px);padding-bottom:var(--section-pb-mobile,44px)}
 .sfa-about-grid{grid-template-columns:minmax(0,1fr);gap:32px}.sfa-about .sfa-heading{font-size:var(--heading-size-mobile,38px);line-height:1;letter-spacing:-.034em}
 .sfa-about .sfa-description{max-width:100%;font-size:var(--body-size-mobile,14px);line-height:22px}
 .sfa-about .sfa-background{top:348px;right:auto;left:calc(50% - 29px);width:470px;height:470px;opacity:calc(var(--image-opacity,1) * .27)}
 .sfa-metrics{padding-top:0;gap:14px;max-width:342px}.sfa-metric{max-width:276px;min-height:58px;padding-left:28px;gap:20px;grid-template-columns:minmax(94px,max-content) minmax(0,1fr)}.sfa-metric-value{font-size:34px}.sfa-metric-caption{font-size:9px;letter-spacing:2.1px}
 .sfa-services{padding-top:var(--section-pt-mobile,40px);padding-bottom:var(--section-pb-mobile,40px)}
 .sfa-services-header{grid-template-columns:minmax(0,1fr);gap:18px;margin-bottom:24px}.sfa-services .sfa-heading{font-size:var(--heading-size-mobile,34px);line-height:35px;letter-spacing:-.032em}
 .sfa-services-header>.sfa-description{font-size:var(--body-size-mobile,14px);line-height:22px}.sfa-services-header>.sfa-button{min-width:210px}
 .sfa-service-grid{grid-template-columns:minmax(0,1fr);gap:16px}.sfa-card{min-height:var(--card-height-mobile,228px);padding:18px 20px}
 .sfa-card h3{font-size:16px;line-height:21px}.sfa-card p:not(.sfa-card-number){font-size:13px;line-height:19px}
 .sfa-card-picture img{object-position:var(--image-x-mobile,50%) var(--image-y-mobile,50%)}
 .sfa-card-picture[data-mobile-crop="cover"] img{inset:0;width:100%;height:100%;object-fit:cover;translate:none}
 .sfa-card-picture[data-mobile-crop="architecture"] img{inset:auto;left:-193.75%;top:-2.67%;width:312.5%;height:133.33%;object-fit:fill;translate:calc(var(--image-x-mobile,50%) - 50%) calc(var(--image-y-mobile,50%) - 50%)}
 .sfa-card-picture[data-mobile-crop="detail"] img{inset:auto;left:-115.56%;top:-145%;width:222.22%;height:250%;object-fit:fill;translate:calc(var(--image-x-mobile,50%) - 50%) calc(var(--image-y-mobile,50%) - 50%)}
 .sfa-card-picture[data-mobile-crop="globe"] img{inset:auto;left:-11.76%;top:-5.08%;width:117.65%;height:169.49%;object-fit:fill;translate:calc(var(--image-x-mobile,50%) - 50%) calc(var(--image-y-mobile,50%) - 50%)}
 .sfa-footer{padding-block:28px}.sfa-footer-inner{flex-direction:column;align-items:flex-start;gap:10px}.sfa-footer-center{order:0;width:auto}.sfa-footer-right{opacity:.8}
 .sfa-contact{padding:34px 22px 24px;max-height:calc(100dvh - 24px)}.sfa-contact h2{font-size:25px}.sfa-contact-close{top:8px;right:8px}
 .sfa-post-list,.sfa-post-grid{grid-template-columns:minmax(0,1fr)}.sfa-content,.sfa-post-content{width:calc(100% - 2 * var(--sfa-gutter-mobile));margin-block:40px 60px}.sfa-page-content{width:100%;margin:0}.sfa-page-heading{padding-block:32px 24px}.search-form{flex-wrap:wrap}.search-form label{flex-basis:100%}.sfa-post-card h2{font-size:22px}
}
@media(max-width:374px){.sfa-hero .sfa-heading{font-size:min(var(--heading-size-mobile,43px),10.7vw)}.sfa-services .sfa-heading{font-size:min(var(--heading-size-mobile,34px),8.7vw);line-height:1.03}.sfa-about .sfa-heading{font-size:min(var(--heading-size-mobile,38px),9.6vw)}.sfa-brand-copy{font-size:22px}.sfa-brand-tagline{font-size:7px;letter-spacing:5.8px}.sfa-brand-mark{height:34px;width:12px}.sfa-partners-caption{max-width:160px;letter-spacing:1.6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media print{.sfa-site-header,.sfa-footer,.sfa-contact,.sfa-buttons,.sfa-button{display:none!important}.sfa-section{break-inside:avoid}.sfa-hero{min-height:0;padding-top:30px}.sfa-background,.sfa-card-picture{print-color-adjust:exact}.sfa-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.sfa-partners-caption,.sfa-partners-descriptor{font-size:var(--body-size,9px)}
.sfa-metric-value{grid-column:1;grid-row:1}.sfa-metric-caption{grid-column:2;grid-row:1}
.sfa-metric{grid-template-columns:94px minmax(0,1fr)}.sfa-metric-value{overflow-wrap:anywhere}
.sfa-brand{max-width:calc(100% - 60px)}.sfa-brand-copy{min-width:0}.sfa-brand-wordmark{white-space:normal}.sfa-brand-prefix,.sfa-brand-accent{white-space:normal;overflow-wrap:anywhere}
.sfa-nav .menu-item-has-children{position:relative}.sfa-nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:200px;padding:12px 18px;background:var(--sfa-surface);border:1px solid var(--sfa-border);box-shadow:0 18px 30px #0008}.sfa-nav .sub-menu a{padding-block:10px}.sfa-nav .menu-item-has-children:hover>.sub-menu,.sfa-nav .menu-item-has-children:focus-within>.sub-menu{display:block}
@media(max-width:1100px){.sfa-nav .sub-menu{display:block;position:static;min-width:0;padding:0 0 0 16px;border:0;border-left:1px solid var(--sfa-border);box-shadow:none}}
@media(max-width:767px){.sfa-partners-caption{font-size:var(--body-size-mobile,9px)}.sfa-partner-logo{font-size:var(--heading-size-mobile,36px)}}
