:root{--ink:#1d2b36;--navy:#16344b;--blue:#3b5b72;--steel:#8193a0;--muted:#5d6e7a;--line:#d8dfe2;--paper:#f4f6f4;--surface:#fff;--mist:#e9eef0;--sans:'IBM Plex Sans',Arial,sans-serif;--serif:'IBM Plex Serif',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.skip-link{position:fixed;z-index:100;top:-60px;left:20px;background:#fff;padding:10px 16px}.skip-link:focus{top:15px}.header{position:absolute;z-index:10;top:0;left:0;width:100%;color:var(--navy);background:rgba(246,248,246,.97);border-bottom:1px solid #d9e0e2;transition:background .2s,box-shadow .2s}.header.scrolled{position:fixed;background:rgba(246,248,246,.97);box-shadow:0 5px 22px #142b3912}.topline{height:35px;border-bottom:1px solid #dfe4e5;background:#eff2f1}.topline-inner{height:100%;display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.13em;font-weight:600;color:#506574}.topline i{display:inline-block;width:3px;height:3px;border-radius:50%;background:#8295a0;vertical-align:middle;margin:0 9px}.topline a{font-size:10px;font-weight:600;letter-spacing:0;color:var(--navy)}.topline b{margin-left:8px}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;transition:height .22s}.header.scrolled .nav{height:72px}.brand{width:280px;height:100%;display:flex;align-items:center;overflow:hidden}.brand img{width:100%;height:78px;object-fit:contain;object-position:left center;background:transparent}.header.scrolled .brand img{height:64px}.nav-links{display:flex;align-items:center;gap:35px;font-size:12px;font-weight:600;color:#304859}.nav-links>a:not(.nav-cta){transition:color .2s}.nav-links>a:not(.nav-cta):hover{color:#8799a4}.work-count{font-size:9px;color:#748894;margin-left:4px}.nav-cta{padding:10px 17px;border:1px solid #788b96;color:var(--navy);font-size:11px}.nav-cta span{margin-left:13px}.menu-toggle{display:none}.hero{height:min(790px,100svh);min-height:660px;position:relative;background:#314b5c;color:white;display:flex;align-items:center;padding-top:105px}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{object-fit:cover;object-position:center 55%}.hero-shade{background:linear-gradient(90deg,rgba(12,26,36,.66) 0%,rgba(15,34,46,.43) 46%,rgba(15,34,46,.08) 100%),linear-gradient(0deg,rgba(13,29,39,.32),transparent 32%)}.hero-content{position:relative;padding-top:55px}.eyebrow{font-size:10px;letter-spacing:.15em;font-weight:700;color:#637a88;display:flex;align-items:center;gap:11px}.eyebrow.light{color:#f1f4f5}.eyebrow-line{width:30px;height:1px;background:#899ba5;display:inline-block}.hero h1{font-family:var(--sans);font-size:clamp(51px,6.1vw,82px);line-height:1.08;letter-spacing:-.055em;font-weight:500;margin:27px 0 21px}.hero h1 em,.company h2 em,.services h2 em,.contact h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.04em}.hero-content>p{max-width:520px;color:#f1f3f3;font-size:16px;line-height:1.8;margin:0 0 32px}.hero-actions{display:flex;align-items:center;gap:28px}.button{display:inline-flex;align-items:center;gap:24px;padding:14px 18px;font-size:11px;font-weight:700;transition:transform .18s,background .18s}.button:hover{transform:translateY(-2px)}.button span{font-size:15px}.button-light{background:#f5f6f4;color:#203747}.hero-phone{font-size:11px;color:#eff3f4}.hero-phone span{margin-left:8px;color:#fff;font-weight:600}.hero-bottom{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);display:flex;justify-content:space-between;color:#f0f2f2;font-size:9px;letter-spacing:.14em}.hero-bottom a{font-size:8px;display:flex;gap:10px;align-items:center}.hero-bottom b{font-size:13px;font-weight:400}.section{padding-block:105px}.section-label{display:flex;justify-content:space-between;align-items:center;color:#758691;font-size:9px;letter-spacing:.15em;font-weight:700;padding-bottom:16px;border-bottom:1px solid var(--line)}.company-grid{display:grid;grid-template-columns:1fr .72fr;gap:90px;padding:38px 0 46px;align-items:start}.company h2,.services h2,.contact h2{font-size:clamp(42px,5vw,66px);line-height:1.1;letter-spacing:-.05em;font-weight:500;margin:0}.company-copy{padding-top:4px;color:#546671;font-size:14px;max-width:475px}.company-copy p{margin:0 0 14px}.company-copy .lead{font-size:18px;line-height:1.5;color:#263d4c;font-weight:600}.line-link{display:inline-flex;gap:18px;align-items:center;margin-top:9px;border-bottom:1px solid #8d9ca4;padding-bottom:6px;color:#263d4c;font-size:11px;font-weight:700}.company-image{position:relative;height:clamp(300px,44vw,530px);overflow:hidden;background:#d5dce0}.company-image>img{width:100%;height:100%;object-fit:cover}.image-caption{position:absolute;left:0;right:0;bottom:0;padding:13px 17px;background:linear-gradient(transparent,#132d3c99);display:flex;justify-content:space-between;color:white;font-size:8px;letter-spacing:.13em}.services{background:#eaf0f2}.services-heading{display:flex;align-items:end;justify-content:space-between;padding:38px 0 36px}.services-heading>p{max-width:335px;font-size:13px;color:#596d79;margin:0 0 5px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cbd5da;border-bottom:1px solid #cbd5da}.service-card{position:relative;min-height:215px;padding:23px 28px 23px 0;display:flex;flex-direction:column;border-right:1px solid #cbd5da;transition:background .2s}.service-card:not(:first-child){padding-left:27px}.service-card:last-child{border-right:0}.service-card:hover{background:#ffffff85}.service-number{font-size:9px;letter-spacing:.13em;color:#748793}.service-mark{font-family:var(--serif);font-size:31px;color:#7e929f;line-height:1;margin-top:26px}.service-card h3{font-size:16px;font-weight:600;letter-spacing:-.015em;margin:17px 0 0}.service-arrow{position:absolute;right:20px;bottom:22px;font-size:17px;color:#587183}.work{padding-top:110px;padding-bottom:110px}.work-heading{display:flex;justify-content:space-between;align-items:end;padding:36px 0 27px}.work-heading h2{font-size:clamp(48px,5.3vw,70px);letter-spacing:-.055em;line-height:1;font-weight:500;margin:13px 0 0}.work-heading>p{max-width:290px;color:#5c6d78;font-size:13px;margin:0 0 4px}.filters{display:flex;align-items:center;gap:27px;border-bottom:1px solid var(--line);margin-bottom:25px;overflow-x:auto}.filter{flex:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;color:#667783;padding:0 0 13px;white-space:nowrap;font-size:11px;cursor:pointer}.filter.active{border-bottom-color:#38596e;color:#1d3444;font-weight:700}.filter span{font-size:9px;color:#8c9aa2;margin-left:6px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px}.project-card{min-width:0;background:var(--surface);border:1px solid #e4e8e9;overflow:hidden;transition:box-shadow .25s,transform .25s}.project-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #233c4c14}.project-card[hidden]{display:none}.project-image-frame{position:relative;aspect-ratio:16/10;background:#d5dde0;overflow:hidden}.project-image-frame>img{width:100%;height:100%;object-fit:cover}.project-card-featured{grid-column:span 2}.project-card-featured .project-image-frame{aspect-ratio:16/9}.photo-brandmark{position:absolute;z-index:1;top:10px;left:10px;width:102px;height:39px;padding:3px 6px;background:rgba(248,249,247,.95);border-left:2px solid #49677b}.photo-brandmark img{width:100%;height:100%;object-fit:contain}.project-caption{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 13px;color:#243b4a}.project-caption span:first-child{font-size:10px;font-weight:600}.project-caption span:last-child{font-size:8px;letter-spacing:.12em;color:#7b8b95}.portfolio-note{color:#75848e;font-size:10px;margin-top:23px}.contact{background:#eaf0f2}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:85px;padding-top:45px;align-items:start}.contact-copy h2{margin:23px 0 14px}.contact-copy>p{font-size:13px;color:#596b77;margin:0 0 26px}.contact-details{border-top:1px solid #cad4d9}.contact-details>div{display:grid;grid-template-columns:115px 1fr;gap:12px;padding:13px 0;border-bottom:1px solid #cad4d9}.contact-details>div>span{font-size:9px;letter-spacing:.12em;color:#71828c;font-weight:700;padding-top:3px}.contact-details p{margin:0;color:#273f50;font-size:13px;line-height:1.6}.contact-details a{border-bottom:1px solid #99a8af}.contact-details a:hover{color:#728795}.location-card{background:#fff;border:1px solid #d9e0e2}.location-heading{height:39px;padding:0 15px;display:flex;justify-content:space-between;align-items:center;color:#627480;font-size:9px;letter-spacing:.12em;font-weight:700}.location-card iframe{width:100%;height:365px;border:0;display:block;background:#e3e8e9}.location-caption{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:13px 15px}.location-caption p{font-size:11px;color:#526572;margin:0}.location-caption strong{font-size:13px;color:#203949;font-weight:600}.location-caption a{font-size:10px;font-weight:700;color:#304d61;white-space:nowrap}.location-caption a span{margin-left:6px}.footer{background:#e0e7e9;color:#263c4b;padding:37px 0 15px}.footer-top{display:grid;grid-template-columns:250px 1fr 1.25fr auto;gap:30px;align-items:center;padding-bottom:29px}.footer-brand{width:250px;height:96px;display:flex;align-items:center}.footer-brand img{width:100%;height:100%;object-fit:contain;object-position:left center}.footer-top>p{font-family:var(--serif);font-size:15px;line-height:1.4;color:#536875;margin:0}.footer-links{display:flex;gap:18px;font-size:10px;color:#385163}.footer-links a:hover{color:#8798a1}.back-top{font-size:8px;letter-spacing:.12em;color:#617580;white-space:nowrap}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #c5d0d4;padding-top:13px;color:#74848d;font-size:8px;letter-spacing:.13em}
@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.nav-links{gap:20px}.company-grid{gap:45px}.contact-grid{gap:45px}.footer-top{grid-template-columns:220px 1fr 1.2fr;gap:22px}.footer-brand{width:220px;height:84px}.back-top{grid-column:3;justify-self:end}.footer-links{flex-wrap:wrap}}
@media(max-width:700px){html{scroll-padding-top:78px}.wrap{width:calc(100% - 40px)}.topline{height:31px}.topline-inner{font-size:7px;letter-spacing:.08em}.topline i{margin-inline:5px}.topline a{font-size:9px}.nav{height:68px}.header.scrolled .nav{height:63px}.brand{width:195px}.brand img,.header.scrolled .brand img{height:59px}.menu-toggle{display:flex;background:none;border:0;padding:10px;flex-direction:column;gap:6px;z-index:2}.menu-toggle span{width:22px;height:1.5px;background:#243f52;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.75px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}.nav-links{position:absolute;top:100%;left:0;width:100%;padding:10px 20px 20px;background:#f4f6f4;border-bottom:1px solid #d8dfe2;display:none;flex-direction:column;align-items:stretch;gap:0}.nav-links.open{display:flex}.nav-links>a:not(.nav-cta){padding:12px 0;border-bottom:1px solid #d8dfe2}.nav-cta{margin-top:13px;text-align:center}.hero{height:86svh;min-height:620px;max-height:780px;padding-top:91px;align-items:flex-end;padding-bottom:96px}.hero-image{object-position:56% center}.hero-shade{background:linear-gradient(90deg,rgba(12,26,36,.67),rgba(15,34,46,.28)),linear-gradient(0deg,rgba(13,29,39,.36),transparent 64%)}.hero-content{padding-top:0}.eyebrow{font-size:8px;letter-spacing:.12em}.hero h1{font-size:clamp(43px,11vw,60px);margin:19px 0}.hero-content>p{font-size:13px;max-width:390px}.hero-actions{gap:15px;flex-wrap:wrap}.button{padding:12px 14px;gap:16px}.hero-phone{font-size:10px}.hero-phone span{display:block;margin:2px 0 0}.hero-bottom{bottom:20px;font-size:7px}.hero-bottom a{font-size:7px}.section{padding-block:72px}.section-label{font-size:7px;padding-bottom:13px}.company-grid{grid-template-columns:1fr;gap:17px;padding:29px 0 30px}.company h2,.services h2,.contact h2{font-size:clamp(39px,10vw,50px)}.company-copy{font-size:13px}.company-copy .lead{font-size:17px}.company-image{height:270px}.image-caption{font-size:6px;padding:10px}.services-heading{display:block;padding:30px 0 25px}.services-heading>p{font-size:12px;margin-top:14px}.services-grid{grid-template-columns:1fr}.service-card{min-height:142px;padding:17px 18px 17px 0}.service-card:not(:first-child){padding-left:0}.service-card:last-child{border-right:1px solid #cbd5da}.service-mark{margin-top:11px;font-size:25px}.service-card h3{margin-top:7px;font-size:15px}.service-arrow{right:8px;bottom:18px}.work{padding-block:72px}.work-heading{display:block;padding:30px 0 24px}.work-heading h2{font-size:54px}.work-heading>p{font-size:12px;margin-top:13px}.filters{gap:19px;margin-bottom:19px}.filter{font-size:10px;padding-bottom:11px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.project-card-featured{grid-column:span 2}.project-image-frame{aspect-ratio:4/3}.project-card-featured .project-image-frame{aspect-ratio:16/9}.photo-brandmark{top:7px;left:7px;width:74px;height:29px;padding:2px 4px}.project-caption{min-height:39px;padding:7px 8px;gap:6px}.project-caption span:first-child{font-size:9px}.project-caption span:last-child{font-size:7px}.portfolio-note{font-size:9px;margin-top:17px}.contact-grid{grid-template-columns:1fr;gap:31px;padding-top:30px}.contact-copy h2{margin-top:20px}.contact-copy>p{font-size:12px}.contact-details>div{grid-template-columns:100px 1fr;gap:8px;padding:12px 0}.location-card iframe{height:290px}.location-caption{align-items:flex-start;padding:12px;gap:10px}.location-caption a{font-size:9px}.footer{padding-top:25px}.footer-top{grid-template-columns:1fr 1fr;gap:12px 16px;padding-bottom:22px}.footer-brand{width:195px;height:76px}.footer-top>p{font-size:13px}.footer-links{grid-column:1/-1;gap:12px 17px;padding-top:3px}.back-top{grid-column:1/-1;justify-self:start}.footer-bottom{font-size:7px;gap:10px}.footer-bottom span:last-child{text-align:right}}
@media(max-width:380px){.topline-inner>span{font-size:6px}.topline a{font-size:8px}.brand{width:175px}.project-grid{gap:11px 8px}.project-caption span:first-child{font-size:8px}.project-caption span:last-child{font-size:6px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Homepage hero refinement for the supplied steel-frame photograph */
.hero{height:min(820px,100svh);min-height:650px;background:#17334d}
.hero-image{object-position:center 56%;filter:saturate(.96)}
.hero-shade{background:linear-gradient(90deg,rgba(10,25,40,.78) 0%,rgba(12,29,46,.62) 32%,rgba(13,35,53,.18) 72%,rgba(13,35,53,.04) 100%),linear-gradient(0deg,rgba(12,27,40,.52),transparent 25%)}
.hero-content{width:min(1240px,calc(100% - 96px));padding-top:92px}
.hero-content .eyebrow{font-size:10px;letter-spacing:.2em;color:#f2f4f4}
.hero-content .eyebrow-line{width:38px;background:#d5ad71}
.hero h1{font-size:clamp(58px,7.1vw,96px);line-height:1.03;letter-spacing:-.065em;font-weight:500;margin:30px 0 24px;text-shadow:0 2px 24px #0a1b2b44}
.hero h1 em{font-family:var(--serif);font-weight:400;font-size:.79em;letter-spacing:-.045em;color:#f1d5aa}
.hero-content>p{max-width:555px;font-size:16px;line-height:1.8;color:#f5f6f6;text-shadow:0 1px 10px #0b1b2a55;margin-bottom:35px}
.hero-actions{gap:30px}
.button-light{background:#f5f4ee;color:#1b354b;padding:15px 20px;font-weight:700;box-shadow:0 8px 26px #061a2c35;transition:transform .2s,background .2s}
.button-light:hover{transform:translateY(-2px);background:#fff}
.hero-phone{display:grid;gap:2px;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:#e0e8eb}
.hero-phone span{font-size:14px;letter-spacing:.025em;font-weight:600;color:#fff}
.hero-bottom{border-top:1px solid #ffffff5c;padding-top:14px;bottom:24px;color:#f6f7f7}
.hero-bottom span{font-weight:600;letter-spacing:.19em}
.hero-bottom a{display:flex;gap:12px;align-items:center;font-size:8px;letter-spacing:.16em}
.hero-bottom a b{font-size:15px;font-weight:400;color:#f1d5aa}
@media(max-width:700px){.hero{height:88svh;min-height:630px;max-height:820px;padding-top:91px;padding-bottom:99px}.hero-image{object-position:57% center}.hero-shade{background:linear-gradient(90deg,rgba(10,25,40,.74),rgba(12,29,46,.4) 72%,rgba(13,35,53,.2)),linear-gradient(0deg,rgba(12,27,40,.64),transparent 78%)}.hero-content{width:calc(100% - 40px);padding-top:0}.hero-content .eyebrow{font-size:8px}.hero h1{font-size:clamp(48px,12vw,68px);line-height:1.04;margin:22px 0 19px}.hero h1 em{font-size:.8em}.hero-content>p{font-size:13px;line-height:1.75;margin-bottom:26px}.hero-bottom{bottom:20px;padding-top:11px}.hero-phone{display:block}.hero-phone span{display:block;font-size:12px;margin-top:4px}}

/* Fixed WhatsApp contact shortcut */
.whatsapp-float{position:fixed;z-index:30;right:25px;bottom:24px;display:flex;align-items:center;gap:9px;padding:12px 17px 12px 13px;border-radius:999px;background:#1fa855;color:#fff;font-size:12px;font-weight:700;letter-spacing:.01em;box-shadow:0 8px 24px #102b2340;transition:transform .2s,background .2s,box-shadow .2s}
.whatsapp-float:hover{background:#168d45;transform:translateY(-2px);box-shadow:0 12px 28px #102b2350}
.whatsapp-float svg{width:24px;height:24px;fill:currentColor}
@media(max-width:700px){.whatsapp-float{right:15px;bottom:15px;padding:12px;border-radius:50%;width:52px;height:52px;justify-content:center}.whatsapp-float span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}

/* Lift the shadows in gallery photo 02 so its steel frame reads clearly */
.project-card-brightened .project-image-frame>img{filter:brightness(1.28) contrast(.96)}


/* Blend the official logo's pale metallic overlap into its surface */
.brand img,.footer-brand img,.photo-brandmark img{mix-blend-mode:multiply}

/* Language selector and Arabic reading direction */
.topline-tools{display:flex;align-items:center;gap:16px}
.language-toggle{border:1px solid #cbd5d9;background:#f8f9f7;color:#304859;padding:4px 10px;font:600 11px/1.4 var(--sans);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.language-toggle:hover,.language-toggle:focus-visible{background:#203d52;color:#fff;border-color:#203d52;outline:none}
html[dir="rtl"] body{font-family:var(--sans)}
html[dir="rtl"] .topline-inner{letter-spacing:0}
html[dir="rtl"] .brand img,html[dir="rtl"] .footer-brand img{object-position:right center}
html[dir="rtl"] .hero-content,html[dir="rtl"] .company-copy,html[dir="rtl"] .services-heading>p,html[dir="rtl"] .work-heading>p,html[dir="rtl"] .contact-copy{text-align:right}
html[dir="rtl"] .eyebrow{letter-spacing:0}
html[dir="rtl"] .eyebrow-line{order:2}
html[dir="rtl"] .hero-shade{background:linear-gradient(270deg,rgba(12,26,36,.66) 0%,rgba(15,34,46,.43) 46%,rgba(15,34,46,.08) 100%),linear-gradient(0deg,rgba(13,29,39,.32),transparent 32%)}
html[dir="rtl"] .hero-actions,html[dir="rtl"] .hero-bottom,html[dir="rtl"] .section-label,html[dir="rtl"] .services-heading,html[dir="rtl"] .work-heading,html[dir="rtl"] .contact-details>div,html[dir="rtl"] .location-caption,html[dir="rtl"] .footer-top,html[dir="rtl"] .footer-bottom{direction:rtl}
html[dir="rtl"] .hero-phone span{margin-right:8px;margin-left:0}
html[dir="rtl"] .company h2,html[dir="rtl"] .services h2,html[dir="rtl"] .contact h2,html[dir="rtl"] .work-heading h2{letter-spacing:0}
html[dir="rtl"] .service-card-photo .service-number{left:auto;right:21px;letter-spacing:0}
html[dir="rtl"] .service-count{right:auto;left:18px;letter-spacing:0}
html[dir="rtl"] .service-explore{letter-spacing:0}
html[dir="rtl"] .filters{direction:rtl}
html[dir="rtl"] .filter span{margin-right:6px;margin-left:0}
html[dir="rtl"] .project-caption{direction:rtl}
html[dir="rtl"] .project-card-featured .project-caption{align-items:flex-start;text-align:right}
html[dir="rtl"] .photo-brandmark{left:auto;right:10px;border-left:0;border-right:2px solid #49677b}
html[dir="rtl"] .contact-details>div{grid-template-columns:115px 1fr}
html[dir="rtl"] .location-caption a span{margin-right:6px;margin-left:0}
html[dir="rtl"] .footer-brand img{object-position:right center}
html[dir="rtl"] .back-top{direction:rtl}
html[dir="rtl"] .skip-link{left:auto;right:20px}
html[dir="rtl"] .whatsapp-float{right:auto;left:24px}
@media(max-width:700px){html[dir="rtl"] .nav-links{direction:rtl}html[dir="rtl"] .nav-links>a:not(.nav-cta){text-align:right}html[dir="rtl"] .nav-cta{text-align:center}html[dir="rtl"] .company-copy,html[dir="rtl"] .services-heading>p,html[dir="rtl"] .work-heading>p{text-align:right}html[dir="rtl"] .service-card-photo .service-number{right:16px}html[dir="rtl"] .service-count{left:13px}}


/* Editorial project catalogue: one featured plate followed by an irregular photo wall */
.work-heading>p{max-width:390px;line-height:1.8}
.filters{gap:9px;overflow:visible;flex-wrap:wrap;border:0;margin:25px 0 27px}
.filter{border:1px solid #d6dfe2;border-radius:999px;margin:0;padding:9px 13px;background:#fff;color:#526774;font-size:10px;transition:background .2s,border-color .2s,color .2s}
.filter.active{border-color:#28485e;background:#28485e;color:#fff}
.filter span{color:inherit;opacity:.65}
.project-grid{display:block;columns:4;column-gap:18px}
.project-card{display:inline-block;vertical-align:top;width:100%;margin:0 0 18px;break-inside:avoid;overflow:hidden;border:0;background:transparent;box-shadow:none}
.project-card:hover{transform:none;box-shadow:none}
.project-card-featured{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(230px,.65fr);grid-column:auto;column-span:all;margin-bottom:26px;border:1px solid #dce2e2;background:#fff}
.project-image-frame{position:relative;width:100%;aspect-ratio:4/3;background:#dfe5e5;overflow:hidden}
.project-open{display:block;width:100%;height:100%;min-height:0;padding:0;border:0;background:#dfe5e5;overflow:hidden;cursor:zoom-in}
.project-open:focus-visible{outline:3px solid #c39655;outline-offset:-4px}
.project-open img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s ease,filter .35s ease}
.project-card:hover .project-open img{transform:scale(1.035)}
.project-card-brightened .project-open img{filter:brightness(1.28) contrast(.96)}
.project-card:nth-child(6n+2) .project-image-frame{aspect-ratio:1/1}
.project-card:nth-child(6n+3) .project-image-frame{aspect-ratio:4/5}
.project-card:nth-child(6n+4) .project-image-frame{aspect-ratio:3/2}
.project-card:nth-child(6n+5) .project-image-frame{aspect-ratio:1/1}
.project-card:nth-child(6n) .project-image-frame{aspect-ratio:4/5}
.project-card-featured .project-image-frame{height:100%;min-height:350px;aspect-ratio:auto}
.project-card-featured .project-caption{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;min-height:0;padding:clamp(22px,4vw,54px);border-left:1px solid #e5e9e9}
.project-card-featured .project-caption::before{content:'FEATURED PLATE';font-size:8px;font-weight:700;letter-spacing:.18em;color:#927346}
.project-card-featured .project-caption span:first-child{font-family:var(--serif);font-size:clamp(23px,2.4vw,34px);font-weight:400;color:#203a4b}
.project-card-featured .project-caption span:last-child{font-size:9px;letter-spacing:.15em;color:#778993}
.project-caption{min-height:0;display:flex;align-items:center;justify-content:space-between;gap:9px;padding:11px 2px 3px;color:#243b4a}
.project-caption span:first-child{font-size:10px;font-weight:600}
.project-caption span:last-child{font-size:8px;letter-spacing:.12em;color:#7b8b95}
.photo-brandmark{top:10px;left:10px;width:82px;height:32px;padding:3px 5px;opacity:.93}
.project-viewer{width:min(1160px,calc(100vw - 34px));max-width:none;max-height:94svh;padding:0;border:1px solid #aab6bc;background:#f4f6f4;color:#203746;box-shadow:0 25px 90px #07131dcc;overflow:hidden}
.project-viewer::backdrop{background:#101b25d9;backdrop-filter:blur(5px)}
.viewer-top,.viewer-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 18px;color:#526572;font-size:9px;font-weight:700;letter-spacing:.14em}
.viewer-top{border-bottom:1px solid #dce2e3}
.viewer-bottom{border-top:1px solid #dce2e3}
.viewer-close{width:34px;height:34px;border:1px solid #ccd5d8;border-radius:50%;background:#fff;color:#233d4e;font-size:24px;line-height:1;cursor:pointer}
.viewer-stage{position:relative;display:grid;place-items:center;min-height:220px;height:min(70svh,760px);background:#162b3a}
.viewer-stage>img{display:block;width:100%;height:100%;object-fit:contain}
.viewer-stage>button{position:absolute;z-index:1;top:50%;transform:translateY(-50%);width:44px;height:54px;border:1px solid #ffffff88;background:#102738bb;color:#fff;font-size:25px;cursor:pointer}
.viewer-prev{left:14px}.viewer-next{right:14px}
.viewer-stage>button:hover{background:#fff;color:#203b4c}
@media(max-width:1050px){.project-grid{columns:3}}
@media(max-width:700px){.work-heading>p{max-width:none}.filters{gap:7px;margin:20px 0}.filter{padding:8px 11px}.project-grid{columns:2;column-gap:11px}.project-card{margin-bottom:12px}.project-card-featured{display:flex;flex-direction:column;margin-bottom:16px}.project-card-featured .project-image-frame{height:auto;min-height:0;aspect-ratio:16/9}.project-card-featured .project-caption{border-left:0;border-top:1px solid #e5e9e9;padding:18px}.project-card-featured .project-caption span:first-child{font-size:22px}.photo-brandmark{top:7px;left:7px;width:70px;height:27px}.viewer-top,.viewer-bottom{padding:10px 12px;font-size:8px}.viewer-stage{height:64svh}.viewer-stage>button{width:38px;height:46px}}
@media(max-width:420px){.project-grid{columns:1}.project-card:not(.project-card-featured) .project-image-frame{aspect-ratio:16/10}.viewer-bottom{letter-spacing:.08em}}

/* Image-led service links connect the overview directly to each catalogue filter */
.services-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.service-card-photo{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:0;min-height:330px;padding:22px;border:0;background:#18364e;color:#fff;overflow:hidden}
.service-card-photo::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(12,30,46,.1) 0%,rgba(13,30,44,.23) 35%,rgba(10,25,38,.9) 100%)}
.service-photo{position:absolute;z-index:-2;inset:0;overflow:hidden}
.service-photo img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease,filter .4s ease}
.service-card-photo:hover .service-photo img{transform:scale(1.06);filter:saturate(1.08)}
.service-card-photo .service-number{position:absolute;top:19px;left:21px;color:#fff;font-size:8px;letter-spacing:.16em}
.service-count{position:absolute;top:17px;right:18px;color:#fff;font-size:8px;letter-spacing:.14em}
.service-count span{font-size:16px;font-weight:600;letter-spacing:0}
.service-card-photo .service-mark,.service-card-photo .service-arrow{display:none}
.service-card-photo h3{position:relative;margin:0 0 11px;font-family:var(--serif);font-size:clamp(21px,2vw,28px);line-height:1.16;font-weight:400;color:#fff}
.service-explore{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;padding-top:11px;border-top:1px solid #ffffff75;color:#f1f3f3;font-size:8px;letter-spacing:.14em;font-weight:600}
.service-explore b{font-size:14px;font-weight:400;color:#efcf9e;transition:transform .2s}
.service-card-photo:hover .service-explore b{transform:translate(3px,-2px)}
@media(max-width:1050px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card-photo{min-height:300px}}
@media(max-width:700px){.services-grid{gap:10px}.service-card-photo{min-height:250px;padding:17px}.service-card-photo .service-number{top:14px;left:16px;font-size:7px}.service-count{top:12px;right:13px;font-size:7px}.service-count span{font-size:14px}.service-card-photo h3{font-size:21px}.service-explore{font-size:7px}}
@media(max-width:420px){.services-grid{grid-template-columns:1fr}.service-card-photo{min-height:290px}}
