*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:165px}body{margin:0;background:#fafaf7;color:#20211e;font:13px Arial,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}button{background:none;border:0;cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #417483;outline-offset:4px}header{position:sticky;top:0;z-index:8;display:flex;align-items:center;justify-content:space-between;padding:20px 40px;background:#fafaf7f5;border-bottom:1px solid #d7d8d0;height:94px}.logo{font:44px Georgia;letter-spacing:-4px;line-height:.85}.logo small{display:block;font:7px Arial;letter-spacing:3px;padding-left:5px;margin-top:9px}nav{display:flex;gap:35px;font-size:17px}nav a{color:#90918a;padding:12px 0;border-bottom:1px solid transparent}nav a.active{color:#20211e;border-color:#20211e}#lang{font-size:10px}.toolbar{position:sticky;top:94px;z-index:7;display:flex;align-items:center;justify-content:space-between;padding:16px 40px;background:#fafaf7f5;border-bottom:1px solid #ddd;height:63px;font-size:10px;letter-spacing:1px}.toolbar label{display:flex;gap:15px;align-items:center}.toolbar input{width:210px;background:none;border:0;border-bottom:1px solid #bbb;padding:8px;font-size:12px;letter-spacing:0}.views button{padding:8px 12px;color:#888}.views button.active{color:#222;text-decoration:underline;text-underline-offset:6px}#categories{position:fixed;left:40px;top:203px;width:160px;display:flex;flex-direction:column;gap:20px;font-size:10px;letter-spacing:1px}#categories a{color:#73756a;display:flex;justify-content:space-between}#categories a:hover{color:#222}#categories span{color:#a1a295}main{margin-left:245px;margin-right:40px;min-height:70vh}.group{padding-top:46px;scroll-margin-top:10px}.grouphead{display:flex;align-items:baseline;justify-content:space-between;border-top:1px solid #222;padding-top:18px;margin-bottom:22px}.grouphead h2{font:36px Georgia;font-weight:normal;margin:0}.grouphead span{font-size:10px;color:#8a8c80}.projectrow{display:grid;grid-template-columns:50px 1fr 300px;align-items:center;gap:25px;border-top:1px solid #dedfd6;padding:22px 0;cursor:pointer;transition:background .2s}.projectrow:hover{background:#f0f0e9}.num{align-self:start;color:#989c8e;font:11px Arial;padding-top:8px}.projectrow h3{font-size:21px;font-weight:normal;margin:0 0 14px;line-height:1.3}.projectrow small{font-size:9px;letter-spacing:1.5px;color:#8a8c80}.projectrow img{width:300px;height:175px;object-fit:cover}.wall .rows{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.wall .projectrow{display:flex;flex-direction:column;align-items:stretch;padding:0;border:0;gap:0}.wall .num{display:none}.wall .projectrow img{order:-1;width:100%;height:auto;aspect-ratio:1;object-fit:cover}.wall .projectrow h3{font-size:12px;margin:10px 0 7px}.wall .projectrow small{font-size:8px;letter-spacing:.5px}.wall .grouphead h2{font-size:30px}.missing{width:300px;height:175px;background:#e9eae2;display:grid;place-items:center;font-size:11px;color:#999}.empty{padding:80px 0;font:30px Georgia}footer{display:flex;justify-content:space-between;margin:70px 40px 30px 245px;border-top:1px solid #bbb;padding-top:20px;font-size:9px;line-height:1.7;color:#777}dialog{border:0;padding:0;width:calc(100vw - 80px);max-width:1400px;background:#fafaf7;color:#222;max-height:90svh;overflow:auto}dialog[open]{display:grid;grid-template-columns:2fr 1fr}dialog::backdrop{background:#171916bb}#detailImage{width:100%;height:75svh;object-fit:contain;background:#eeeee7}#close{position:absolute;top:12px;right:16px;font-size:28px;background:#fafaf7;z-index:2}.detail{padding:65px 30px;display:flex;flex-direction:column;justify-content:center}.detail small{font-size:9px;letter-spacing:1px}.detail h2{font:38px Georgia;margin:25px 0}.detail p{font-size:12px;line-height:1.8;color:#888}.detail>a{margin-top:35px;font-size:11px;text-decoration:underline;text-underline-offset:6px}.detailnav{display:flex;justify-content:space-between;align-items:center;margin-top:65px;font-size:11px}.detailnav button{font-size:22px}@media(min-width:1800px){.projectrow{grid-template-columns:50px 1fr 440px}.projectrow img{width:440px;height:240px}}@media(max-width:1000px){header{padding:20px}nav{gap:20px;font-size:14px}.toolbar{padding:15px 20px}#categories{position:static;width:auto;margin:25px 20px 0;flex-direction:row;flex-wrap:wrap;gap:20px}#categories a{gap:8px}main{margin:0 20px}.projectrow{grid-template-columns:30px 1fr 260px}.projectrow img{width:260px;height:160px}footer{margin:60px 20px 25px}.wall .rows{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){header{height:110px;flex-wrap:wrap;padding:15px 20px}.logo{font-size:35px}nav{order:3;flex-basis:100%;justify-content:space-between;gap:8px;font-size:13px}nav a{padding:8px 0}.toolbar{top:110px;height:auto;min-height:85px;gap:10px;flex-wrap:wrap}.toolbar label{order:3;width:100%;justify-content:space-between}.toolbar input{width:70%}html{scroll-padding-top:210px}.group{padding-top:30px}.grouphead h2{font-size:30px}.projectrow{grid-template-columns:24px 1fr;gap:12px;padding:20px 0}.projectrow img{grid-column:2;width:100%;height:auto;aspect-ratio:1.6}.projectrow h3{font-size:20px}.wall .rows{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.wall .projectrow h3{font-size:12px}.wall .projectrow img{aspect-ratio:1}.wall .projectrow small{font-size:7px}dialog{width:calc(100vw - 24px)}dialog[open]{display:block}#detailImage{height:40svh}.detail{padding:25px}.detail h2{font-size:30px}.detailnav{margin-top:25px}footer{gap:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Category columns follow the supplied QAT sketch. */
header{height:150px;flex-direction:column;justify-content:center;gap:23px}.logo{font-size:48px}header #lang{position:absolute;right:40px;top:38px}nav{gap:65px;font-size:18px}.toolbar{top:150px;height:64px}.toolbar .views{display:none}#categories{display:none}main,main.wall{margin:0;padding:35px 35px 50px;display:flex;gap:25px;overflow-x:auto;align-items:flex-start;min-height:75vh}.group{padding:0;flex:1 0 220px;min-width:220px;max-width:360px;scroll-margin:0}.grouphead{position:sticky;top:0;background:#fafaf7;display:block;min-height:72px;margin:0;padding:16px 0;border-top:1px solid #34362f}.grouphead h2,.wall .grouphead h2{font:14px Arial;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:9px}.grouphead span{font-size:9px}.rows,.wall .rows{display:flex;flex-direction:column;gap:28px}.projectrow,.wall .projectrow{display:flex;flex-direction:column;align-items:stretch;gap:0;border:0;padding:0;background:none}.projectrow img,.wall .projectrow img{order:-1;width:100%;height:auto;aspect-ratio:1.28;object-fit:cover;transition:filter .25s}.projectrow:hover img{filter:brightness(1.06)}.projectrow .num{display:none}.projectrow h3,.wall .projectrow h3{font:12px Arial;line-height:1.4;margin:10px 0 5px}.projectrow small,.wall .projectrow small{font-size:8px;letter-spacing:1px;color:#9a9c91}.missing{width:100%;height:auto;aspect-ratio:1.28}.projectrow:hover h3{text-decoration:underline;text-underline-offset:3px}footer{margin:20px 35px 30px}.empty{padding:60px}.scrollhint{font-size:10px;color:#777;letter-spacing:0}.group:only-of-type{flex-basis:100%;max-width:none}.group:only-of-type .rows{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:25px}@media(min-width:1600px){.group{flex-basis:245px}}@media(max-width:1000px){main,main.wall{padding:25px 20px;gap:20px}.group{flex:0 0 235px;max-width:235px}header{height:145px}nav{gap:35px}.toolbar{top:145px}.group:only-of-type .rows{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){header{height:140px;padding:16px;flex-wrap:nowrap;gap:20px}.logo{font-size:40px}nav{order:initial;flex-basis:auto;gap:25px;font-size:13px}header #lang{right:20px;top:25px}.toolbar{top:140px;height:90px}.toolbar label{order:3}.group{flex:0 0 72vw;max-width:72vw}.projectrow img{aspect-ratio:1.28}.projectrow h3{font-size:13px}.group:only-of-type .rows{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.group:only-of-type{min-width:100%}footer{margin:20px}.scrollhint{font-size:9px}}
/* Full-frame editorial project opening */
dialog{position:fixed;inset:0;margin:0;width:100vw;height:100svh;max-width:none;max-height:none;background:#171917;color:#fff;overflow-y:auto}dialog[open]{display:block}dialog::backdrop{background:#171917}#detailImage{position:fixed;inset:0;width:100vw;height:100svh;object-fit:cover;background:#252724;z-index:0}.shade{position:fixed;inset:0;background:linear-gradient(90deg,rgba(10,15,14,.78),rgba(10,15,14,.55) 55%,rgba(10,15,14,.3));z-index:1;transition:opacity .55s}.detail{position:relative;z-index:2;min-height:100svh;width:min(920px,78vw);padding:110px 7vw 90px;display:flex;justify-content:center;align-items:flex-start;transition:opacity .45s}.detail small{font-size:10px;letter-spacing:3px;color:#e2e5df}.detail h2{font:clamp(42px,5.7vw,88px)/1.06 Georgia,serif;letter-spacing:-2px;margin:25px 0 26px;max-width:850px}.detail p{font-size:14px;line-height:1.85;color:#e1e5df;margin:0 0 32px;max-width:700px}.detail p:empty{display:none}#creditFields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 32px;margin:0;max-width:700px;width:100%;border-top:1px solid #ffffff40;padding-top:23px}#creditFields:empty{display:none}#creditFields dt{font-size:9px;letter-spacing:1.7px;text-transform:uppercase;color:#b6beb7;margin-bottom:9px}#creditFields dd{margin:0;font-size:12px;line-height:1.65;color:#fff}#creditFields div:last-child{grid-column:span 2}.detail>a{font-size:10px;letter-spacing:1px;color:#f5f5f0;margin-top:32px}.detailnav{margin-top:34px;width:180px;color:#fff}.detailnav button{color:#fff}#close{position:fixed;right:32px;top:20px;z-index:5;color:#fff;background:#1117;width:45px;height:45px;border-radius:50%;font-size:29px}#inspect{position:fixed;right:40px;bottom:35px;z-index:5;color:white;border-bottom:1px solid #fff9;padding:12px 0;font-size:12px;letter-spacing:1px;text-shadow:0 1px 5px #000}.image-only .shade,.image-only .detail{opacity:0;pointer-events:none}.image-only #inspect{background:#111a;border:0;padding:13px 18px}.image-only .detail{visibility:hidden}.image-only #detailImage{object-fit:contain}.image-only{overflow:hidden}body:has(dialog[open]){overflow:hidden}dialog[open] .detail{animation:detailEnter .5s ease-out}@keyframes detailEnter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media(max-width:700px){.detail{width:100%;padding:100px 25px 115px;min-height:100svh;justify-content:flex-start}.detail h2{font-size:44px;letter-spacing:-1px}.detail p{font-size:13px;line-height:1.8}#creditFields{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}#creditFields div:last-child{grid-column:1/-1}.shade{background:rgba(8,14,12,.68)}#inspect{bottom:20px;right:22px;background:#111a;padding:12px}#close{right:15px;top:15px}.detailnav{margin-top:35px}#detailImage{height:100svh}dialog{width:100vw}}@media(prefers-reduced-motion:reduce){dialog[open] .detail{animation:none}.detail,.shade{transition:none}}
[hidden]{display:none!important}.boot{padding:20vh 10vw;font:25px Georgia}.logo{display:block;line-height:1;letter-spacing:0}.logo img{width:96px;height:65px;object-fit:contain;mix-blend-mode:multiply}header{height:150px;position:sticky}#menuToggle{position:absolute;left:32px;top:35px;font-size:11px;letter-spacing:1px}.sitemenu{position:fixed;z-index:15;top:95px;left:25px;width:330px;background:#f5f5ef;box-shadow:0 20px 70px #0002;padding:25px}.sitemenu a{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid #d2d4c9;font:22px Georgia}.sitemenu a:last-child{font:11px Arial;border:0;padding-top:24px}.indexmark{font-size:9px;color:#aaa;letter-spacing:2px}main.index{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:clamp(10px,1.1vw,24px);padding:28px 24px 60px;margin:0;overflow:visible;width:100%;align-items:start}.index .group{min-width:0;max-width:none;width:100%}.index .grouphead{position:static;min-height:65px}.index .grouphead h2{font-size:clamp(8px,.7vw,13px);letter-spacing:.5px;overflow-wrap:anywhere}.index .grouphead span{font-size:clamp(7px,.55vw,10px)}.index .rows{display:flex;flex-direction:column;gap:24px}.index .group:only-of-type .rows{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.index .projectrow{text-align:left;padding:0;display:flex;width:100%;font:inherit}.index .projectrow h3{font-size:clamp(9px,.65vw,12px);line-height:1.4}.index .projectrow img{width:100%;height:auto;aspect-ratio:1.28;order:0}.index .projectrow small{font-size:7px;letter-spacing:.5px}.index .projectrow h3,.index .projectrow small{width:100%}footer{margin:30px 25px;gap:25px;align-items:center}footer div{display:flex;gap:25px;flex-wrap:wrap}.contentpage{display:block;margin:0;padding:0 6vw 80px;min-height:70vh}.pageintro{padding:65px 0 55px;border-bottom:1px solid #ccc;margin-bottom:50px}.pageintro small{font-size:9px;letter-spacing:2px;color:#888}.pageintro h1{font:clamp(42px,6vw,82px) Georgia;margin:20px 0;letter-spacing:-2px}.pageintro p{font:20px Georgia;max-width:550px;line-height:1.5}.aboutlead{display:grid;grid-template-columns:1fr 1fr;gap:6vw}.aboutlead>img{width:100%;position:sticky;top:180px;height:65vh;object-fit:cover}.aboutlead p{line-height:1.85;font-size:14px;margin:0 0 24px}.sectiontitle{font:40px Georgia;margin:80px 0 35px}.team{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.team img{width:100%;aspect-ratio:1;object-fit:cover;filter:grayscale(1)}.team h3{font:21px Georgia;margin-bottom:10px}.team p{font-size:11px;line-height:1.6;color:#777}.clients{display:grid;grid-template-columns:repeat(5,1fr);gap:50px;align-items:center}.clients img{width:100%;max-height:120px;object-fit:contain;mix-blend-mode:multiply}.contactgrid{display:grid;grid-template-columns:1fr 1fr;gap:6vw}.contactgrid h2{font:35px Georgia}.contactgrid p{max-width:350px;line-height:1.8}.contactgrid a{display:block;margin:20px 0}.underlink{text-decoration:underline;text-underline-offset:7px;display:inline-block;margin-top:25px}.contactimage img{width:100%;height:45vh;object-fit:cover;margin-top:60px}.careerbody{max-width:650px;font:17px/1.8 Arial}.software{display:grid;grid-template-columns:1fr 1fr;gap:5vw}.software article{padding:35px 0 60px;border-top:1px solid #333}.software span{font:60px Georgia;color:#b3b8aa}.software h2{font:42px Georgia}.software p{max-width:450px;font-size:15px;line-height:1.8}.software small{font-size:10px;letter-spacing:1px;color:#777;display:block}.solidlink{display:inline-block;background:#263a35;color:#fff;border:0;padding:17px 24px;font:12px Arial;cursor:pointer}.solidlink:disabled{opacity:.5}.instaintro{display:flex;justify-content:space-between;align-items:center;margin-bottom:45px}.instagramimages{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.instagramimages img{width:100%;aspect-ratio:1;object-fit:cover}.postlinks{display:flex;gap:25px;flex-wrap:wrap;margin:30px 0}.catalogueview{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.cataloguecover{aspect-ratio:.72;background:#eceee6;border:1px solid #ddd;padding:50px;display:flex;flex-direction:column;box-shadow:20px 30px 70px #0002}.cataloguecover img{width:100px;mix-blend-mode:multiply}.cataloguecover h2{font:clamp(40px,5vw,65px) Georgia;line-height:1.1;margin:auto 0 40px}.cataloguecover span{font-size:9px;letter-spacing:2px}.cataloguecover b{font:25px Georgia;margin-top:20px}.catalogueview section h2{font:35px Georgia}.catalogueview section p{font-size:14px;line-height:1.8}.catalogueview label{display:block;margin:25px 0;font-size:12px}.catalogueview select{display:block;width:100%;padding:12px;margin-top:10px;background:none;border:1px solid #bbb}.catalogueview input{margin-right:10px}.textlink{color:white;font:11px Arial;text-decoration:underline;text-underline-offset:6px;padding:0}.gallerybar{position:fixed;z-index:5;left:50%;bottom:30px;transform:translateX(-50%);display:flex;gap:25px;align-items:center;background:#111b;padding:10px 18px;color:#fff;font-size:11px}.gallerybar button{color:white;font-size:24px}.worldlayout{display:grid;grid-template-columns:1.5fr 1fr;gap:5vw}.globewrap{position:sticky;top:160px;height:75vh}.globewrap canvas{width:100%;height:calc(100% - 60px);touch-action:none;cursor:grab}.globewrap p{font-size:11px;text-align:center}.globewrap small{display:block;font-size:9px;text-align:center;color:#999}.countrybtn{display:flex;width:100%;justify-content:space-between;font:24px Georgia;padding:20px 0;border-bottom:1px solid #ccc;text-align:left}.countrybtn.active{color:#4d7462}.worldprojects{padding:15px 0}.worldprojects button{display:flex;align-items:center;gap:15px;width:100%;text-align:left;padding:10px 0}.worldprojects img{width:95px;height:65px;object-fit:cover}.worldprojects small{display:block;font-size:10px;color:#888;margin-top:6px}@media(max-width:1200px){main.index{gap:10px;padding:25px 15px}.index .grouphead h2{font-size:8px}.index .projectrow h3{font-size:9px}.index .projectrow small{display:none}.team{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){main.index{display:flex;overflow-x:auto;gap:18px}.index .group{flex:0 0 180px;min-width:180px}.index .grouphead h2{font-size:12px}.index .grouphead span{font-size:9px}.index .projectrow h3{font-size:12px}.index .group:only-of-type{min-width:100%}.index .group:only-of-type .rows{grid-template-columns:repeat(3,1fr)}.aboutlead{display:block}.aboutlead>img{position:static;height:40vh;margin-bottom:35px}.worldlayout{grid-template-columns:1fr}.globewrap{position:static;height:55vh}.clients{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){header{height:140px}#menuToggle{left:20px;top:30px}.logo img{width:75px;height:52px}.toolbar{top:140px}.indexmark{display:none}main.index{padding:20px 15px}.index .group{flex-basis:65vw;min-width:65vw}.index .group:only-of-type .rows{grid-template-columns:repeat(2,1fr)}.sitemenu{left:15px;right:15px;width:auto}.contentpage{padding:0 22px 50px}.pageintro{padding:35px 0;margin-bottom:30px}.pageintro h1{font-size:43px}.team{grid-template-columns:repeat(2,1fr);gap:20px}.team h3{font-size:18px}.contactgrid,.software,.catalogueview{grid-template-columns:1fr}.cataloguecover{max-width:360px}.instaintro{display:block}.instaintro a{margin-top:20px}.instagramimages{gap:8px}.clients{gap:25px}.gallerybar{bottom:75px}.software h2{font-size:34px}footer{align-items:start;flex-direction:column}.worldlayout{gap:15px}}
@font-face{font-family:QAT;src:url('/fonts/Manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}body,body *,button,input,select,textarea{font-family:QAT,Arial,sans-serif!important}.detail h2,.pageintro h1,.cataloguecover h2{font-weight:400;letter-spacing:-.04em}.index .grouphead h2{letter-spacing:.04em;line-height:1.45}.index .projectrow small{display:block;letter-spacing:0}.team article:not(:has(img)){border-top:1px solid #cdd1c8;padding-top:15px}.team article:has(img){grid-column:span 2}.team article:has(img) img{max-height:470px;aspect-ratio:1.2;object-position:top}.officemap{margin-top:65px}.officemap h2{font-size:26px;font-weight:400}.officemap iframe{width:100%;height:480px;border:0}.mapheading{display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.07em;padding:0 0 22px}.mapheading i{display:inline-block;width:9px;height:9px;background:#557064;border-radius:50%;margin-right:6px}#worldMap svg{display:block;width:100%;height:auto;border:1px solid #e3e5dc}.mapcountry{fill:#dedfd7;stroke:#f2f3ee;stroke-width:.7;vector-effect:non-scaling-stroke;transition:fill .2s}.mapcountry.has-projects{fill:#648373;cursor:pointer}.mapcountry.has-projects:hover,.mapcountry.has-projects:focus,.mapcountry.selected{fill:#b8774f;outline:none}.mapcaption{font-size:11px;color:#73796f;margin-top:18px}.geofilters{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:45px 0}.geofilters label{font-size:10px;text-transform:uppercase;letter-spacing:.1em}.geofilters select{display:block;width:100%;padding:14px 0;border:0;border-bottom:1px solid #abb4a8;background:transparent;color:#26392e;font-size:14px;margin-top:9px}.mapresulttitle{display:flex;justify-content:space-between;align-items:center;margin:35px 0}.mapresulttitle h2{font-size:28px;font-weight:400}.mapresulttitle span{font-size:11px}.mapprojects{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px 22px}.mapprojects button{text-align:left;padding:0}.mapprojects img{width:100%;aspect-ratio:1.35;object-fit:cover}.mapprojects span{display:block;font-size:13px;margin:12px 0 7px}.mapprojects small{font-size:10px;color:#73796f}.mapprojects button:hover span{text-decoration:underline}.locationlink{color:inherit;text-align:left;padding:0;text-decoration:underline;text-underline-offset:5px;font-size:inherit;line-height:inherit}@media(max-width:700px){.mapheading{flex-direction:column;gap:10px}.geofilters{grid-template-columns:1fr;gap:12px}.mapprojects{grid-template-columns:repeat(2,minmax(0,1fr))}.mapresulttitle h2{font-size:23px}.team article:has(img){grid-column:span 1}.officemap iframe{height:350px}}
/* Compact archive rhythm and balanced masthead. */
header{height:170px;padding:0 32px;display:grid;grid-template-rows:120px 50px;gap:0;justify-content:stretch;align-items:center}.logo{justify-self:center;align-self:center}.logo img{display:block;width:96px;height:65px}header nav{justify-self:center;align-self:center;height:50px;align-items:center}header #menuToggle,header #lang{top:54px}.toolbar{top:170px}.index .rows{gap:16px}.index .projectrow{min-width:0;width:100%}.index .projectrow h3{height:2.8em;min-height:2.8em;max-height:2.8em;line-height:1.4;margin:8px 0 4px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.index .projectrow small{height:12px;line-height:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.index .grouphead{height:72px;min-height:72px}.index .grouphead h2{height:2.9em;margin-bottom:3px}.index .grouphead span{white-space:nowrap}.aboutlead{display:flow-root}.aboutlead>img{position:static;float:left;width:42%;height:auto;aspect-ratio:1.2;object-fit:cover;margin:0 40px 20px 0}.aboutlead>article{display:contents}.aboutlead p{margin-bottom:20px;line-height:1.8}.team article:has(img){grid-column:span 1}.team article:has(img) img{display:block;width:min(100%,205px);height:255px;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:center top}.team{align-items:start}.contactlayout{display:grid;grid-template-columns:1.05fr 1fr;gap:6vw;align-items:start}.contactgrid{display:block}.contactgrid section+section{margin-top:35px}.contactgrid h2{font-size:27px;margin:0 0 14px}.contactgrid a{margin:12px 0}.contactgrid p{margin:0 0 12px}.contactlayout .officemap{margin:0}.officemap h2{font-size:20px;margin:0 0 20px}.contactlayout .officemap iframe{height:320px}.socialprofile{margin:70px auto 0;max-width:1050px;border:1px solid #dfe2d9;padding:32px;background:#fdfdf9}.socialhead{display:flex;align-items:center;gap:24px}.socialhead>img{width:76px;height:76px;border:1px solid #ddd;border-radius:50%;object-fit:contain;background:white;padding:10px}.socialhead span{font-size:10px;color:#7d8377}.socialhead h2{font-size:24px;font-weight:500;margin:5px 0}.socialhead p{font-size:12px;line-height:1.6;margin:0}.socialhead>a{margin-left:auto;border:1px solid #b8bfb2;padding:12px 16px;font-size:11px;white-space:nowrap}.socialtabs{border-top:1px solid #dde0d7;margin-top:28px;padding:17px 0;font-size:9px;letter-spacing:.12em}.socialtiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.socialtiles img{display:block;width:100%;aspect-ratio:1;object-fit:cover;transition:filter .2s}.socialtiles a:hover img{filter:brightness(.92)}.socialposts{display:flex;gap:20px;flex-wrap:wrap;margin-top:20px;font-size:11px}@media(max-width:900px){.contactlayout{grid-template-columns:1fr;gap:35px}.contactgrid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contactgrid section+section{margin-top:0}.aboutlead>img{width:42%;height:auto}}@media(max-width:600px){header{height:150px;grid-template-rows:100px 50px;padding:0 20px;gap:0}.logo img{width:75px;height:52px}header #menuToggle,header #lang{top:43px}header nav{font-size:12px;gap:18px;flex-basis:auto}.toolbar{top:150px}.aboutlead>img{float:none;width:100%;height:auto;margin:0 0 25px;aspect-ratio:1.5}.team article:has(img) img{width:100%;height:220px}.contactgrid{display:block}.contactgrid section+section{margin-top:30px}.socialprofile{padding:20px 14px;margin-top:45px}.socialhead{flex-wrap:wrap;gap:12px}.socialhead>img{width:56px;height:56px}.socialhead h2{font-size:20px}.socialhead p{max-width:200px}.socialhead>a{margin:8px 0 0 68px}.socialtiles{gap:3px}.contactlayout .officemap iframe{height:270px}}

/* Archive captions retain the same total height, with metadata directly beneath the title. */
.index .projectcaption{width:100%;height:calc(2.8em + 24px);font-size:clamp(9px,.65vw,12px);padding-top:8px;text-align:left}.index .projectrow h3{height:auto;min-height:0;max-height:2.8em;margin:0 0 4px;font-size:inherit}.index .projectrow small{margin:0}.sitemenu a:last-child{font-size:22px;border:0;padding:13px 0}.contactpage .pageintro{padding:28px 0 22px;margin-bottom:28px}.contactpage .pageintro h1{margin:12px 0}.contactpage .pageintro p{margin:0;max-width:none}.contactpage .contactlayout{gap:4vw;grid-template-columns:1.1fr 1fr}.contactpage .contactgrid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contactpage .contactgrid section+section{margin-top:0}.contactpage .contactgrid h2{font-size:23px}.contactpage .contactgrid p{font-size:13px;line-height:1.65}.contactpage .contactgrid a{font-size:12px;margin:9px 0}.contactpage .officemap iframe{height:230px}.contactpage .socialprofile{margin:32px 0 0;max-width:none;padding:22px}.contactpage .socialhead>img{width:60px;height:60px}.contactpage .socialtabs{margin-top:18px;padding:12px 0}.contactpage .socialtiles{grid-template-columns:repeat(6,minmax(0,1fr))}.contactpage{padding-bottom:32px}.legalfooter{width:100%;font-size:10px}.legalfooter button{padding:0;text-decoration:underline}footer{flex-wrap:wrap}.mapconsent{min-height:230px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:22px;background:#e9ece5}.mapconsent p{font-size:12px;line-height:1.6;max-width:370px}.mapconsent button,.privacybuttons button{border:1px solid #828c80;padding:10px 15px;background:#fafaf7}.privacybanner{position:fixed;bottom:18px;left:18px;right:18px;max-width:760px;margin:auto;background:#fafaf7;border:1px solid #c5ccc0;box-shadow:0 8px 40px #0002;z-index:30;padding:22px}.privacybanner h2{font-size:18px;margin:0 0 9px}.privacybanner p,.privacybanner label{font-size:12px;line-height:1.6}.privacybuttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.privacybanner a{text-decoration:underline}.privacybody{max-width:860px;line-height:1.8;font-size:14px}.privacybody h2{font-size:23px;margin-top:30px}.privacybody table{width:100%;border-collapse:collapse;font-size:12px}.privacybody td,.privacybody th{padding:12px 8px;text-align:left;border-bottom:1px solid #ddd}.privacybody a{text-decoration:underline}@media(max-width:900px){.index .projectcaption{font-size:12px}.contactpage .contactlayout{grid-template-columns:1fr}.contactpage .socialtiles{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.contactpage .contactgrid{grid-template-columns:1fr}.contactpage .socialprofile{padding:16px}.privacybanner{padding:16px;bottom:8px;left:8px;right:8px}.privacybuttons button{flex:1}.legalfooter{gap:12px}.privacybody{overflow-wrap:anywhere}}
.serverindex{display:block;padding:40px}.serverindex>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}.serverindex img{width:100%;height:auto;aspect-ratio:1.3;object-fit:cover}.serverindex h2{font-size:16px}.serverproject{display:block;padding:0;margin:0}.serverhero{position:relative;height:90svh;color:white;background:#222}.serverhero>img{width:100%;height:100%;object-fit:cover;filter:brightness(.45)}.serverhero>div{position:absolute;bottom:10%;left:7%;max-width:80%}.serverhero h1{font-size:clamp(30px,5vw,70px)}.serverproject article{max-width:1000px;margin:auto;padding:40px;line-height:1.8}.serverproject article img{width:100%;height:auto;margin:20px 0}.skiplink{position:fixed;top:-100px;left:16px;z-index:100;background:white;padding:12px}.skiplink:focus{top:12px}.relatedlinks{display:flex;flex-wrap:wrap;gap:15px;margin-top:15px}.relatedlinks a{font-size:11px;text-decoration:underline}.detailactions{display:flex;gap:20px;margin:16px 0}.detailactions button{font-size:11px;text-decoration:underline}@media(max-width:700px){.serverindex>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}

.selectionlist{max-height:300px;overflow:auto;margin:15px 0;border:1px solid #ddd;padding:15px}.selectionlist label{display:flex;gap:10px;font-size:12px;margin:10px 0}.selectionlist label[hidden]{display:none}#catalogueSelection[hidden]{display:none}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
