/* AB Firestop — coherent site-wide refinement */
:root{--red:#d91c2b;--ink:#202426;--muted:#656b6f;--line:#e0e2e1;--paper:#f5f5f2}body{font-size:15px}h1,h2,h3{text-wrap:balance}h1,h2{font-weight:600;letter-spacing:-.045em}h1{line-height:1.06}h2{line-height:1.14}h3{line-height:1.25}p{line-height:1.75}::selection{background:#f6cbd0;color:#202426}.wrap{width:min(1240px,calc(100% - 96px))}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--red);outline-offset:6px}.eyebrow{font-size:10px;letter-spacing:.14em}.button{min-height:50px;border-radius:0;padding:15px 22px;font-size:12px;transition:background .2s,color .2s}.button:hover{transform:none}.text-link{font-size:12px;padding-bottom:5px}.topbar{height:32px;border-bottom:1px solid #ededeb;font-size:10px}.topbar>div{gap:24px}.social-mini a{width:18px;height:18px;background:transparent;color:#5c6266;border:none;font-size:10px}.header-inner{height:88px}.brand>span{font-size:25px;letter-spacing:-.055em}.brand small{font-size:7px;letter-spacing:.12em}.header-inner nav{gap:21px}.header-inner nav>a{font-size:12px}.header-inner nav .button{padding-inline:17px}.new-hero{height:680px;min-height:680px;clip-path:none;padding-bottom:0;background:#24292b}.hero-background{filter:saturate(.72);object-position:center 43%}.hero-shade{background:linear-gradient(90deg,rgba(15,22,25,.94),rgba(15,22,25,.77) 40%,rgba(15,22,25,.22) 80%)}.hero-content{padding-top:90px;padding-right:0}.hero-content .eyebrow{color:#e8c4c8;margin-bottom:31px}.new-hero h1{font-size:clamp(52px,5.6vw,80px);max-width:880px;line-height:1.04;letter-spacing:-.045em}.new-hero h1 em{color:#fff}.new-hero .lead{max-width:560px;font-size:16px;color:#e1e4e4;margin-top:28px}.new-hero .actions{margin-top:30px;gap:14px}.new-hero .button{background:var(--red);border-color:var(--red);color:white;min-width:0}.new-hero .button.outline{background:transparent;border-color:#ffffff70;color:white}.new-hero .button:hover{background:#b61522;border-color:#b61522}.hero-points{left:max(48px,calc((100% - 1240px)/2));right:auto;top:auto;bottom:30px;display:flex;gap:0;border-top:1px solid #ffffff35;padding-top:20px}.hero-points>span{background:none;border-radius:0;color:#cbd1d3;padding:0 30px 0 0;margin-right:30px;min-width:0;font-size:10px;line-height:1.7;border-right:1px solid #ffffff35}.hero-points>span:last-child{border:0;margin:0;padding:0}.hero-points b{font-size:12px;color:white;font-weight:500}.intro{padding:90px 0}.intro-grid{grid-template-columns:.8fr 1.2fr;gap:90px}.intro h2{color:var(--ink);font-size:36px}.intro h2 span{color:var(--muted)}.protection-mark{border-left:2px solid var(--red);padding-left:28px}.protection-mark strong{font-size:40px;font-weight:700}.classes b{font-size:13px;background:#f3f3ef;color:#42494c;padding:9px 12px;font-weight:500}.expertise{clip-path:none;background:#f4f4f0;padding:82px 0}.expertise h2{color:var(--ink)}.section-heading{margin-bottom:40px;gap:40px;align-items:end}.section-heading>p{font-size:13px;line-height:1.8;color:var(--muted)}.service-row{padding:27px 0;transition:background .2s;border-color:#d7dbd9;gap:25px}.service-row h3{font-size:25px;color:var(--ink);font-weight:500;transition:color .2s}.service-row p{font-size:13px;margin-bottom:0}.service-row:hover h3{color:var(--red)}.service-row .num{color:#a04951}.why{padding-top:90px;padding-bottom:90px;gap:75px}.why h2,.work-strip h2,.faq h2{color:var(--ink)}.why-image{clip-path:none}.why-image img{filter:saturate(.8)}.why li{font-size:14px;padding-block:12px}.work-strip{padding-top:80px;padding-bottom:90px}.home-projects{gap:45px 26px}.project-card-photo{background:#eceeeb}.project-card h3{font-weight:500}.project-card-meta{color:#8b4d55;font-size:9px}.home-projects .project-card-photo{aspect-ratio:1.45}.home-projects .project-card h3{font-size:22px}.process-band{padding:75px 0;background:#f4f4f0}.process-band h2{color:var(--ink)}.process-track{border-color:#d3d8d5;gap:40px}.process-track h3{font-size:20px}.process-track p{font-size:13px}.document-callout{padding-top:90px;padding-bottom:90px;gap:75px}.document-callout h2{color:var(--ink);font-size:36px}.document-photo{height:400px;overflow:hidden}.document-photo img{width:100%;height:100%;object-fit:cover}.faq{padding-top:20px;padding-bottom:85px;gap:80px}.faq summary{color:var(--ink);text-transform:none;font-weight:500;font-size:15px}.faq details{border-color:var(--line);padding:23px 0}.faq summary:after{color:var(--red)}.cta{clip-path:none;padding-top:70px;padding-bottom:70px;background:#ca1c2a}.cta h2{font-size:44px;font-weight:500;max-width:780px}.cta .eyebrow{color:#f0c9cc}.cta .button{font-weight:500}footer{background:#20272b;color:#fff}.footer-top{padding-top:55px;padding-bottom:45px;gap:50px}.footer-brand{font-size:28px}footer h3{color:#c8cdcf;font-weight:500;font-size:10px;letter-spacing:.1em}footer p,.footer-top>div>a:not(.footer-brand){color:#d2d6d7;font-size:12px;line-height:1.9}.footer-bottom{padding-top:20px;padding-bottom:22px;color:#9ba5aa;font-size:10px;border-color:#ffffff20}.page-head{background:#f7f7f4;margin-bottom:45px;padding-top:70px;padding-bottom:65px}.page-head h1,.detail-head h1{color:var(--ink);font-size:clamp(40px,4.5vw,64px)}.page-head h1 em{color:var(--red)}.page-head .lead,.detail-head .lead{font-size:16px;max-width:660px}.detail-head{padding-top:65px;padding-bottom:40px}.detail-grid{gap:65px;padding-bottom:70px}.detail-grid h2,.service-depth h2{color:var(--ink)}.detail-image{height:540px}.detail-image img{height:100%;width:100%;object-fit:cover}.technical{background:#f4f4f0;border-left:2px solid var(--red)}.application-list li{font-size:14px}.service-depth{padding-top:50px;padding-bottom:75px;gap:70px}.service-photo-section{padding-block:40px 75px}.story-grid{gap:70px;padding-bottom:80px}.story-grid h2,.values-band h2,.team-section h2,.usecase h2,.context-grid h2,.document-grid h2,.handover h2,.faq-category h2{color:var(--ink)}.values-band{background:#f4f4f0;padding:70px 0}.value-grid h3{font-size:23px}.document-panel{background:#f4f4f0}.contact-grid{gap:70px;padding-bottom:70px}.contact-grid form{background:#f4f4f0;padding:38px}.contact-grid .big-mail{font-size:clamp(24px,2.6vw,37px);letter-spacing:-.03em}.contact-grid form h2{font-size:29px}.contact-grid input,.contact-grid textarea,.contact-grid select{background:#fff;border:1px solid #ccd1ce;padding:13px;min-height:46px}.people{gap:26px}.people article{padding-top:25px}.people h2{color:var(--ink);font-size:22px}.people a{line-height:1.9}.project-overview{padding-top:0}.project-head{margin-bottom:0}.project-hero{padding-top:40px}.project-hero>img{height:540px}.project-gallery-section{padding-top:70px}.project-gallery .photo-button{background:#f4f4f0}.project-gallery figcaption{line-height:1.5}.project-related h2{color:var(--ink)}.faq-page{padding-top:15px}.faq-category h2{border-color:#cdd2cf}.team-section{padding-block:75px}.initials{background:#f4f4f0}.contact-work-photo{padding-bottom:75px}.service-list{padding-bottom:70px}.usecase{gap:65px}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header-inner nav{gap:14px}.header-inner nav>a{font-size:11px}.brand>span{font-size:22px}.hero-points{left:32px}.intro-grid,.why,.faq,.document-callout,.detail-grid,.contact-grid{gap:40px}.new-hero{height:650px;min-height:650px}.hero-content{padding-top:80px}.new-hero h1{font-size:68px}.footer-top{gap:30px}.page-head,.cta{padding-inline:32px}}
@media(max-width:800px){html{scroll-padding-top:80px}.wrap{width:calc(100% - 40px)}.topbar{display:none}.header-inner{height:76px}.header-inner nav{top:76px;padding:24px 20px 30px;background:#fff;border-bottom:1px solid #ddd}.header-inner nav>a{font-size:16px;padding:10px 0}.header-inner nav .button{font-size:13px;padding:14px 18px;margin-top:10px}.menu{min-height:44px;padding:10px 0 10px 15px;font-size:12px}.brand>span{font-size:24px}.new-hero{height:auto;min-height:660px;padding-bottom:130px}.hero-content{padding:62px 0 35px}.new-hero h1{font-size:clamp(44px,8vw,65px);max-width:650px}.new-hero .lead{font-size:15px;max-width:500px}.hero-content .eyebrow{font-size:8px;max-width:360px;line-height:1.8}.hero-shade{background:linear-gradient(90deg,#0f1619ec,#0f161999)}.hero-points{position:absolute;left:20px;right:20px;bottom:25px;top:auto;margin:0;padding-top:16px;gap:0;display:flex}.hero-points>span{padding:0 20px 0 0;margin-right:20px;flex:1;font-size:9px}.hero-points b{font-size:11px}.intro,.why,.work-strip{padding-block:60px}.intro-grid{grid-template-columns:1fr;gap:35px}.protection-mark strong{font-size:32px}.protection-mark{display:none}.intro h2,.document-callout h2{font-size:31px}.expertise{padding:60px 0}.section-heading{gap:25px;align-items:start;margin-bottom:30px}.service-row h3{font-size:22px}.service-row{padding-block:23px;gap:18px}.home-projects{grid-template-columns:1fr 1fr;gap:30px 20px}.home-projects .project-card h3{font-size:20px}.process-band{padding-block:55px}.process-track{gap:25px}.process-track h3{font-size:18px}.document-callout{padding-block:60px;grid-template-columns:1fr;gap:30px}.document-photo{height:330px}.faq{padding-block:10px 60px;gap:30px}.cta{width:100%;padding:50px 20px}.cta h2{font-size:34px}.footer-top{padding-block:40px;gap:30px}.page-head{width:100%;padding:45px 20px;margin-bottom:30px}.page-head h1,.detail-head h1{font-size:clamp(35px,6.5vw,48px)}.page-head .lead,.detail-head .lead{font-size:15px}.detail-head{padding-block:40px 25px}.detail-grid{gap:30px;padding-bottom:50px}.detail-image{height:380px}.service-depth{gap:30px;padding-block:40px 55px}.service-photo-section{padding-block:20px 55px}.contact-grid{gap:35px;padding-bottom:50px}.contact-grid form{padding:26px}.contact-grid .big-mail{font-size:29px}.project-head{margin-bottom:0}.project-hero{padding-top:25px}.project-hero>img{height:370px}.project-gallery-section{padding-top:50px}.story-grid,.usecase{gap:30px}.team-section{padding-block:55px}.values-band{padding-block:55px}}
@media(max-width:500px){.new-hero{min-height:640px}.hero-content{padding-top:47px}.new-hero h1{font-size:43px;line-height:1.06}.new-hero .actions{gap:10px}.new-hero .button{font-size:11px;padding:14px 16px;min-height:47px}.hero-points>span{padding-right:12px;margin-right:12px;font-size:8px}.hero-points b{font-size:10px}.section-heading{flex-direction:column;align-items:start}.section-heading h2{font-size:30px;margin-bottom:0}.service-row h3{font-size:20px}.service-row .num{font-size:10px}.service-row p{font-size:12px}.home-projects{grid-template-columns:1fr;gap:30px}.home-projects .project-card-photo{aspect-ratio:1.5}.home-projects .project-card h3{font-size:25px}.project-card-meta{margin-top:16px}.project-hero>img{height:290px}.project-related .section-heading{gap:18px}.project-overview{gap:35px}.project-related .project-overview{gap:20px}.footer-top{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-top>div:first-child{grid-column:1/-1}.footer-top>div:nth-child(3){grid-column:1;grid-row:auto}.footer-top>div:nth-child(3)>a{display:block!important}.footer-top>div:nth-child(4){grid-column:2;grid-row:3}.footer-top>div:nth-child(2){grid-column:1/-1}.footer-bottom{gap:15px;flex-wrap:wrap}.contact-grid form h2{font-size:26px}.people{grid-template-columns:1fr}.project-gallery .photo-button{height:210px}.value-grid{gap:25px}.story-photo{height:350px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Client feedback: original wordmark, readable contact strip and real portraits. */
.brand{gap:12px}.brand .brand-symbol{width:34px;height:56px;object-fit:contain}.brand .brand-wordmark{display:block;position:relative;width:226px;height:45px;overflow:hidden;flex:none}.brand .brand-wordmark img{position:absolute;left:0;top:-230px;width:226px;height:auto;max-width:none;object-fit:initial}.topbar{height:40px}.topbar>div:last-child>a{font-size:13px!important;color:#17191b!important;font-weight:700!important;letter-spacing:.015em}.topbar>div:last-child{gap:28px}.service-row .num{font-family:Arial,Helvetica,sans-serif!important;font-size:26px!important;line-height:1;font-weight:700;color:#bc1f2e;letter-spacing:-.055em;min-width:44px}.contact-portrait{width:120px;height:140px;object-fit:cover;margin-bottom:22px;background:#edf0f1}.contact-portrait.andy{object-position:center 35%}.contact-portrait.ardit{object-position:center 29%}.people article{min-width:0}.people .additional-director{grid-column:1/-1;padding-top:23px;margin-top:2px}.people .additional-director h2{font-size:20px;margin-bottom:8px}.people .additional-director p{margin-bottom:0}.team-grid .team-portrait{width:140px;height:180px;object-fit:cover;background:#edf0f1}.team-portrait.ardit{object-position:center 28%}.team-portrait.andy{object-position:center}.team-grid .additional-director{display:block;grid-column:1/-1;padding-top:25px}.team-grid .additional-director h3{font-size:23px}.company-vat{font-size:12px;color:var(--muted);margin-top:12px}footer .company-vat{color:#d2d6d7;font-size:11px}
@media(max-width:1100px){.brand .brand-wordmark{width:200px;height:40px}.brand .brand-wordmark img{width:200px;top:-203px}.brand{gap:9px}.header-inner nav{gap:12px}.header-inner nav>a{font-size:11px}}
@media(max-width:800px){.topbar{display:none}.brand .brand-wordmark{width:223px;height:44px}.brand .brand-wordmark img{width:223px;top:-227px}.brand .brand-symbol{width:32px;height:51px}.brand{gap:9px}.service-row .num{font-size:25px!important;min-width:35px}.team-grid .team-portrait{width:100px;height:150px}.contact-portrait{width:130px;height:150px}.people{display:grid;grid-template-columns:1fr 1fr;gap:28px 20px}}
@media(max-width:390px){.brand .brand-wordmark{width:195px;height:39px}.brand .brand-wordmark img{width:195px;top:-198px}.brand .brand-symbol{width:29px}.header-inner{gap:10px}.menu{padding-left:8px}.people{grid-template-columns:1fr}.contact-portrait{width:135px;height:155px}}

/* Readable navigation and complete team portraits. */
.header-inner{height:100px;gap:25px}.header-inner nav{gap:24px}.header-inner nav>a{font-size:15px;font-weight:600;color:#202426;line-height:1.35;white-space:nowrap;padding-block:13px}.header-inner nav>a[aria-current="page"]{color:var(--red);box-shadow:inset 0 -2px var(--red)}.header-inner nav>a:hover{color:var(--red)}.header-inner nav .button{font-size:14px;min-height:49px;padding:15px 18px;color:white;box-shadow:none}.header-inner .menu{color:#202426;font-size:16px;font-weight:600}.people .additional-director.has-portrait{grid-column:auto;margin-top:0}.team-grid .additional-director.has-portrait{display:grid;grid-template-columns:140px 1fr;grid-column:auto;gap:30px;align-items:center}.contact-portrait.bledar,.team-portrait.bledar{object-position:center 25%}.people .text-link{font-size:12px;margin-top:8px;line-height:1.5}.header-inner .menu span{width:25px;height:12px;border-top-width:2px;border-bottom-width:2px}.header-inner .menu[aria-expanded="true"]{color:var(--red)}
@media(max-width:1200px) and (min-width:1101px){.header-inner nav{gap:16px}.header-inner nav>a{font-size:14px}.header-inner nav .button{font-size:13px}.brand .brand-wordmark{width:200px;height:40px}.brand .brand-wordmark img{width:200px;top:-203px}}
@media(max-width:1100px){.header-inner{height:84px}.header-inner .menu{display:flex;align-items:center;gap:12px;min-height:48px;background:none;border:1px solid #d9deda;padding:10px 14px;color:#202426}.header-inner nav{display:none;position:absolute;left:0;right:0;top:124px;width:100%;background:#fff;border-top:1px solid #e1e4e1;border-bottom:1px solid #d3d8d5;padding:15px 32px 25px;box-shadow:0 16px 30px #10202012;max-height:calc(100dvh - 124px);overflow-y:auto}.header-inner nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.header-inner nav>a{display:block;font-size:19px;font-weight:500;padding:17px 4px;line-height:1.35;border-bottom:1px solid #e9ece9;white-space:normal}.header-inner nav>a[aria-current="page"]{box-shadow:none;color:var(--red);font-weight:700}.header-inner nav .button{display:flex;font-size:15px;margin-top:19px;min-height:52px;padding:15px 20px;border-bottom-color:var(--red);color:#fff}}
@media(max-width:800px){.header-inner{height:84px}.header-inner nav{top:84px;max-height:calc(100dvh - 84px);padding:12px 20px 25px}.header-inner .menu{font-size:16px;padding:10px 12px}.team-grid .additional-director.has-portrait{grid-template-columns:100px 1fr;gap:25px}.people .additional-director h2{font-size:22px}.brand .brand-wordmark{width:205px;height:41px}.brand .brand-wordmark img{width:205px;top:-209px}.brand .brand-symbol{width:30px;height:48px}.brand{gap:8px}}
@media(max-width:390px){.brand .brand-wordmark{width:170px;height:34px}.brand .brand-wordmark img{width:170px;top:-173px}.brand .brand-symbol{width:25px;height:44px}.header-inner .menu{font-size:15px;padding:10px;gap:9px}.header-inner .menu span{width:21px}.header-inner{gap:12px}}

/* Align the wordmark optically with the flame. */
.brand .brand-wordmark {
  transform: translateY(4px);
}
