/* Service catalogue and project presentation, aligned with the company's content structure. */
.catalog-home-services .section-heading,.catalog-industries .section-heading,.selected-work .section-heading{align-items:end;margin-bottom:44px}
.home-capabilities,.catalog-service-grid,.scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px}
.home-capabilities>a,.catalog-service-card,.scope-grid>article{position:relative;padding:32px 0;border-top:1px solid #c9d7e5;min-width:0}
.home-capabilities>a{display:block;text-decoration:none;color:var(--ink,#081e38);padding-inline-end:30px}
.home-capabilities h3,.catalog-service-card h2,.scope-grid h3{font-size:clamp(23px,2.05vw,29px);line-height:1.3;letter-spacing:-.035em;font-weight:700;margin:18px 0 14px}
.home-capabilities p,.catalog-service-card p,.scope-grid p{font-size:18px;line-height:1.7;color:#49647e;margin:0 0 22px}
.scope-number{font-size:14px;letter-spacing:.08em;color:#1e65ff;display:block;font-weight:600;direction:ltr;text-align:start}
.home-capabilities>a>.arrow{width:25px;height:25px;transition:transform .2s}
.home-capabilities>a:hover>.arrow{transform:translate(3px,-3px)}
.catalog-service-card{display:flex;flex-direction:column;text-decoration:none;color:#081e38;padding:34px 0}
.catalog-service-card .text-link{margin-top:auto;align-self:flex-start}
.catalog-service-card:hover h2,.home-capabilities>a:hover h3{color:#1358db}
.catalog-scope .section-heading{margin-bottom:48px;align-items:start}
.catalog-scope .section-heading>p{font-size:21px;line-height:1.7;max-width:570px;margin:0}
.catalog-engagement,.catalog-industries{background:#f3f6fa}
.catalog-engagement .text-link{margin-top:24px}
.scope-grid>article .text-link{margin-top:8px}
.projects-grid,.sector-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.project-card{min-width:0;border-bottom:1px solid #cad7e5;padding-bottom:28px}
.project-card>a{display:block;color:inherit;text-decoration:none;height:100%}
.project-image{position:relative;aspect-ratio:1.5;overflow:hidden;border-radius:4px;background:#e7edf5}
.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.project-image>span{position:absolute;inset-inline-start:16px;bottom:16px;background:#fff;color:#102f4d;padding:7px 12px;font-size:13px;font-weight:600;border-radius:2px}
.project-card:hover img{transform:scale(1.025)}
.project-copy{padding-top:24px}
.project-client{font-size:14px;line-height:1.5;color:#516b85;margin:0 0 14px}
.project-copy h3{font-size:clamp(24px,2vw,29px);line-height:1.3;letter-spacing:-.035em;margin:0 0 16px}
.project-copy>p:not(.project-client){font-size:18px;line-height:1.65;margin-bottom:20px;color:#49647e}
.project-copy .text-link{font-size:16px}
.sector-card{position:relative;display:block;aspect-ratio:1;overflow:hidden;color:#fff;border-radius:4px;background:#081e38}
.sector-card>img{width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.sector-card:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 28%,rgba(3,22,42,.9))}
.sector-card>div{position:absolute;inset-inline:28px;bottom:28px;z-index:1;display:flex;align-items:end;gap:20px}
.sector-card h3{font-size:29px;line-height:1.25;margin:0;letter-spacing:-.03em;flex:1}
.sector-card .arrow{flex-shrink:0;width:25px;height:25px}
.industry-banner{height:380px;border-radius:4px;overflow:hidden;margin-bottom:55px}
.industry-banner img{width:100%;height:100%;object-fit:cover;object-position:50% 32%}
.project-facts{display:flex;gap:100px;margin:0 0 36px}
.project-facts dt{font-size:14px;color:#49647e;margin-bottom:8px}
.project-facts dd{font-size:23px;font-weight:600;margin:0}
.project-banner{height:440px;overflow:hidden;margin-bottom:64px;border-radius:4px}
.project-banner img{width:100%;height:100%;object-fit:cover}
.project-story{display:grid;grid-template-columns:1fr 2fr;gap:80px}
.project-story>div>section{margin-bottom:42px}
.project-story h2{font-size:30px;line-height:1.3;letter-spacing:-.03em;margin:0 0 18px}
.project-story .scope-grid{grid-template-columns:1fr 1fr;gap:30px}
.project-story .scope-grid h3{font-size:25px}
.catalog-dropdown.services-dropdown{grid-template-columns:260px minmax(0,1fr);gap:48px}
.catalog-dropdown .mega-services{display:grid;grid-template-columns:1fr 1fr;column-gap:32px}
.catalog-dropdown .mega-services>a{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid #dce5ee;min-width:0}
.catalog-dropdown .mega-services strong{font-size:16px;line-height:1.4;flex:1}
.catalog-dropdown .mega-services .arrow{position:static;width:18px;height:18px;flex-shrink:0}
.mega-number{font-size:12px;color:#65809c;flex-shrink:0}
.catalog-dropdown .mega-intro h2{font-size:30px;line-height:1.2;margin-bottom:18px}
.service-photo-hero h1{font-size:clamp(38px,4.2vw,60px);line-height:1.1;overflow-wrap:normal}
[dir=rtl] .scope-number{text-align:right}
[dir=rtl] .catalog-dropdown .mega-services strong{font-size:18px}
[dir=rtl] .service-photo-hero h1{line-height:1.25;letter-spacing:0}
@media(max-width:1100px){.catalog-dropdown.services-dropdown{grid-template-columns:1fr;gap:20px}.catalog-dropdown .mega-intro{display:none}.projects-grid{gap:24px}.home-capabilities,.catalog-service-grid,.scope-grid{gap:0 28px}.project-copy h3{font-size:24px}}
@media(max-width:850px){.home-capabilities,.catalog-service-grid,.scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sector-card-grid{gap:18px}.sector-card{aspect-ratio:.8}.sector-card h3{font-size:24px}.sector-card>div{inset-inline:18px;bottom:20px}.project-story{gap:36px;grid-template-columns:1fr 2fr}.service-photo-hero h1{font-size:42px}}
@media(max-width:600px){.home-capabilities,.catalog-service-grid,.scope-grid,.projects-grid,.sector-card-grid{grid-template-columns:1fr}.catalog-dropdown .mega-services{grid-template-columns:1fr}.home-capabilities h3,.catalog-service-card h2,.scope-grid h3{font-size:26px}.scope-grid p,.home-capabilities p,.catalog-service-card p{font-size:18px}.section-heading{gap:22px}.sector-card{aspect-ratio:1.45}.project-story{grid-template-columns:1fr;gap:40px}.project-facts{gap:32px;flex-wrap:wrap}.project-facts dd{font-size:20px}.project-banner,.industry-banner{height:260px;margin-bottom:40px}.project-story .scope-grid{grid-template-columns:1fr}.catalog-scope .section-heading>p{font-size:20px}.service-photo-hero h1{font-size:38px}.project-story h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){.project-image img,.home-capabilities>a>.arrow{transition:none}}
html[data-motion=paused] .project-image img{transition:none}

.partner-catalog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:0;gap:0}.partner-catalog li{border:1px solid #e2e9f0;margin:-1px 0 0 -1px}.partner-catalog a{display:flex;align-items:center;justify-content:center;padding:32px;min-height:140px}.partner-catalog img,.partner-catalog svg{width:100%;max-width:180px;height:70px;object-fit:contain}.marid-demonstration{background:#eef3f8}.marid-demonstration h2{margin-bottom:35px}.marid-demonstration video{display:block;width:100%;max-width:1100px;height:auto;margin:auto;border-radius:6px;background:#071e38}@media(max-width:700px){.partner-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-catalog a{padding:24px;min-height:120px}}

@media(min-width:851px){.catalog-scope .scope-grid:has(>article:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}}

.scope-points{padding-inline-start:20px;margin:18px 0 0;font-size:16px;line-height:1.65;color:#49647e}.scope-points li{padding-inline-start:3px;margin:8px 0}.scope-points li::marker{color:#2367df}.cyber-frameworks{background:#f3f6fa}.cyber-frameworks h2{font-size:clamp(32px,3vw,46px)}.cyber-frameworks h3{font-size:26px;margin-bottom:18px}.cyber-frameworks p{font-size:20px;line-height:1.9}

/* Homepage character: the original ascending tiles, with room to breathe. */
.catalog-home-services{background:linear-gradient(180deg,#fff 0%,#f7faff 100%)}
.home-services-intro{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:56px;margin-bottom:60px}
.home-services-title h2{font-size:clamp(36px,4.2vw,62px);line-height:1.16;letter-spacing:-.05em;margin:24px 0 28px;font-weight:750}
.home-services-title h2 span{color:#1765ff}
.home-tiles-stage{position:relative;min-width:0;isolation:isolate;padding:28px 18px}
.home-tiles-stage:before{content:'';position:absolute;inset:6% -4%;border-radius:50%;background:radial-gradient(ellipse,#deedff 0%,#eff6ff 42%,transparent 70%);z-index:-1}
.home-tiles-stage .direction-sculpture{display:block;width:100%;max-width:480px;margin:0 auto;filter:drop-shadow(0 18px 18px #1a5cad0e)}
.home-tiles-stage .direction-sculpture svg{display:block;overflow:visible}
.home-tiles-stage .block-top{fill:#c8e0ff;stroke:#6fa8ed;transition:none}
.home-tiles-stage .block-side{fill:#8db9ef}
.home-tiles-stage .block-shadow{fill:#cbdff7}
.catalog-home-services .home-capabilities{gap:18px}
.catalog-home-services .home-capabilities>a{padding:28px 28px 26px;border:1px solid #dae5f2;border-radius:5px;background:#ffffffb8;display:flex;flex-direction:column;transition:background .2s,border-color .2s,box-shadow .2s}
.catalog-home-services .home-capabilities h3{margin-top:20px}
.catalog-home-services .home-capabilities p{font-size:17px;line-height:1.65}
.catalog-home-services .home-capabilities>a>.arrow{margin-top:auto;color:#1765ff}
.catalog-home-services .home-capabilities>a:is(:hover,:focus-visible){background:#edf4ff;border-color:#8eb7f4;box-shadow:0 12px 30px #194b8b0a}
.catalog-home-services .home-capabilities>a:focus-visible{outline:2px solid #1765ff;outline-offset:4px}
[dir=rtl] .home-services-title h2{letter-spacing:0;line-height:1.4}
[dir=rtl] .home-tiles-stage{direction:ltr}
@media(max-width:850px){.home-services-intro{gap:24px;grid-template-columns:1.2fr 1fr}.home-services-title h2{font-size:40px}.catalog-home-services .home-capabilities>a{padding:24px}}
@media(max-width:600px){.home-services-intro{grid-template-columns:1fr;gap:10px;margin-bottom:28px}.home-services-title h2{font-size:clamp(32px,8.8vw,46px)}.home-tiles-stage{max-width:340px;width:100%;justify-self:center;padding:16px 12px}.catalog-home-services .home-capabilities{gap:12px}.catalog-home-services .home-capabilities h3{font-size:25px;margin-top:14px}.catalog-home-services .home-capabilities>a{padding:24px}}
@media(prefers-reduced-motion:reduce){.catalog-home-services .home-capabilities>a{transition:none}}

/* Continuous vendor strip; the original link list stays fully usable without motion. */
.partner-marquee{direction:ltr;overflow:hidden}
.partner-repeat{display:none}
.partner-marquee .partner-catalog li{margin:0;border:0}
.partner-marquee .partner-catalog a:focus-visible{outline:2px solid #1765ff;outline-offset:-5px}
.motion-enabled .partner-marquee.is-ready:not(:focus-within) .partner-track{display:flex;width:max-content;direction:ltr;animation:partner-roll 46s linear infinite;animation-play-state:paused}
.motion-enabled .partner-marquee.is-ready:not(:focus-within) .partner-catalog{display:flex;flex:none;width:max-content}
.motion-enabled .partner-marquee.is-ready:not(:focus-within) .partner-catalog li{flex:0 0 220px;width:220px}
.motion-enabled .partner-marquee.is-ready:not(:focus-within) .partner-catalog a{min-height:132px;padding:26px 30px}
.motion-enabled .partner-marquee.is-ready:not(:focus-within) .partner-catalog :is(img,svg){max-width:160px;height:64px}
.motion-enabled .partner-marquee.is-ready.is-active:not(:hover):not(:focus-within) .partner-track{animation-play-state:running}
[dir=rtl].motion-enabled .partner-marquee.is-ready:not(:focus-within) .partner-track{animation-direction:reverse}
@keyframes partner-roll{to{transform:translateX(-50%)}}
@media(max-width:600px){
 .motion-enabled .partner-marquee.is-ready:not(:focus-within) .partner-catalog li{width:172px;flex-basis:172px}
 .motion-enabled .partner-marquee.is-ready:not(:focus-within) .partner-catalog a{min-height:112px;padding:24px}
 .motion-enabled .partner-marquee.is-ready:not(:focus-within) .partner-track{animation-duration:38s}
}
@media(prefers-reduced-motion:reduce){
 .partner-marquee .partner-track{animation:none!important;transform:none!important;display:block!important;width:auto!important}
 .partner-marquee .partner-catalog{display:grid!important;width:auto!important}
 .partner-marquee .partner-catalog li{width:auto!important}
 .partner-marquee .partner-repeat{display:none!important}
}
