/* NERALOQ 3.0: fixed navigation, reference-aligned ecosystem and editorial depth.
   V2 artwork, fonts and product identities are preserved. No font files bundled. */
:root { --header-height:76px; --header-clearance:20px; }
html { scroll-padding-top:calc(var(--header-height) + var(--header-clearance)); }
body { padding-top:var(--header-height); }
main:focus { outline:none; }
.skip-link { position:fixed; z-index:1200; }
.site-header {
 position:fixed; inset:0 0 auto; z-index:1000;
 background:rgba(3,19,33,.96); border-bottom:1px solid rgba(129,199,229,.12);
 -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px);
 transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease;
}
body[data-page=index] .site-header { background:rgba(3,19,33,.28); border-bottom-color:transparent; }
.site-header.is-scrolled, body[data-page=index] .site-header.is-scrolled {
 background:rgba(3,19,33,.96); border-bottom-color:rgba(129,199,229,.18);
 box-shadow:0 5px 24px rgba(0,10,22,.15);
}
.header-inner { min-height:var(--header-height); }
.hero { margin-top:calc(-1 * var(--header-height)); }
.header-cta:focus-visible,.language-switch:focus-visible,.main-nav a:focus-visible { outline-color:#68d9f1; }
/* The user reference has a separate outlook at the side and two free-flowing
   light arms. Do not attach a central line to, or behind, the parent wordmark. */
.ecosystem {
 padding:31px 0 27px;
 background:linear-gradient(0deg,rgba(2,15,29,.62),rgba(4,20,37,.67)),url('ecosystem-landscape.webp') center bottom / cover no-repeat;
}
.ecosystem-grid {
 display:grid; grid-template-columns:minmax(270px,.95fr) minmax(0,1.95fr) 105px;
 gap:26px; align-items:center;
}
.ecosystem-heading .eyebrow { margin-bottom:30px; }
.ecosystem-heading h2 { font-size:33px; line-height:1.18; letter-spacing:-.035em; margin:0; }
.ecosystem-heading { padding-bottom:8px; }
.ecosystem-tree { min-height:292px; padding:0; position:relative; isolation:isolate; }
.eco-parent { height:96px; min-height:96px; margin:0 auto; width:132px; z-index:3; }
.eco-parent .brand-large .brand-wordmark { width:132px; height:91px; object-fit:contain; filter:none; }
.eco-connections { position:absolute; inset:61px 0 auto; width:100%; height:70px; z-index:0; stroke:none; }
.eco-connector {
 position:absolute; top:0; width:calc(50% - 100px); height:70px; fill:none;
 stroke:#8ddeff; stroke-width:1.1; overflow:visible; pointer-events:none;
}
.eco-connector-left { left:0; }
.eco-connector-right { right:0; }
.eco-connector .eco-light-glow { stroke:#48bfff; stroke-width:5; filter:blur(4px); opacity:.8; }
.eco-connector circle { fill:#d8f5ff; stroke:none; filter:drop-shadow(0 0 4px #00b7ff); }
.eco-children { margin-top:30px; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.eco-node {
 min-height:162px; padding:10px 8px 13px; border-radius:17px;
 background:linear-gradient(145deg,rgba(16,37,60,.58),rgba(3,17,32,.68));
 border:1px solid rgba(99,151,186,.12); gap:12px;
}
.eco-node>img { width:125px; height:88px; filter:none; }
.eco-node>span { font-size:8px; line-height:1.65; color:#e3ecf5; letter-spacing:.075em; }
.eco-next { border:1px dashed rgba(119,182,217,.57); background:rgba(4,21,37,.42); }
.eco-next>.icon { width:32px; height:32px; background:rgba(97,166,218,.13); border:0; color:#d7eeff; margin-top:11px; }
.eco-next>strong { font-size:12px; }
.eco-next>span { font-size:10px; letter-spacing:0; }
.ecosystem-outlook {
 align-self:start; margin:47px 0 0; padding-inline-start:15px;
 border-inline-start:1px solid rgba(166,209,227,.68); color:#e2edf6!important;
 font-size:10px; line-height:1.9; letter-spacing:.13em;
}
html[lang=ar] .ecosystem-heading h2 { font-size:27px; line-height:1.8; letter-spacing:0; }
html[lang=ar] .ecosystem-outlook { font-size:10px; letter-spacing:0; line-height:2.1; }
html[lang=ar] .eco-node>span { font-size:8px; line-height:1.95; letter-spacing:0; }
/* The reference's values headline is navy, rather than an additional cyan CTA. */
body[data-page=index] .values-section h2 em { color:inherit; }
/* Substantive copy is concentrated in internal pages to protect homepage rhythm. */
.experience-section { padding:66px 0; background:#f0f6fa; border-block:1px solid #e1ebf2; }
.experience-grid { display:grid; grid-template-columns:.6fr 1.65fr; gap:70px; align-items:center; }
.experience-number { display:flex; flex-direction:column; padding-inline-end:38px; border-inline-end:1px solid #c8dce8; }
.experience-number strong { display:block; font-size:92px; font-weight:600; line-height:1; letter-spacing:-.075em; color:#007fae; }
.experience-number span { margin-top:17px; font-size:13px; line-height:1.7; color:#385471; }
.experience-copy h2 { font-size:31px; line-height:1.2; }
.experience-copy .section-heading { max-width:760px; }
.experience-copy .section-heading p { max-width:760px; font-size:15px; line-height:1.85; }
.experience-copy .text-link { margin-top:19px; font-size:12px; }
.experience-compact { padding:35px 0 37px; background:linear-gradient(105deg,#f0f7fb,#fff); }
.experience-compact .experience-grid { grid-template-columns:250px 1fr; gap:47px; }
.experience-compact .experience-number { flex-direction:row; align-items:center; gap:22px; padding-inline-end:25px; }
.experience-compact .experience-number strong { font-size:69px; }
.experience-compact .experience-number span { font-size:10px; margin:0; }
.experience-compact .experience-copy h2 { font-size:26px; }
.experience-compact .experience-copy .eyebrow { font-size:8px; margin-bottom:10px; }
.experience-compact .experience-copy .section-heading p { font-size:13px; line-height:1.8; }
.experience-compact .text-link { font-size:11px; margin-top:12px; }
.editorial-section { padding-block:76px; }
.editorial-intro { max-width:790px; margin-bottom:40px; }
.editorial-intro h2 { font-size:36px; line-height:1.2; margin-bottom:19px; }
.editorial-intro p { font-size:16px; line-height:1.9; max-width:740px; margin:0; }
.editorial-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; }
.editorial-card { border-top:1px solid #cadde9; padding:25px 0 0; }
.editorial-index { display:block; font-size:11px; letter-spacing:.12em; color:#007fae; margin-bottom:18px; }
.editorial-card h3 { font-size:21px; line-height:1.35; margin-bottom:17px; letter-spacing:-.035em; }
.editorial-card p { font-size:14px; line-height:1.95; margin:0; color:#52677e; }
.leadership-section { background:radial-gradient(ellipse at 13% 70%,#073750,#041725 68%); }
.leadership-panel { display:grid; grid-template-columns:.4fr 1.6fr; gap:74px; align-items:center; }
.leadership-brand { display:flex; justify-content:center; }
.leadership-brand .brand-large .brand-wordmark { width:168px; max-width:100%; }
.leadership-panel h2 { font-size:34px; line-height:1.2; }
.leadership-panel blockquote { margin:0 0 26px; font-size:19px; line-height:1.9; font-weight:400; color:#dcecf5; }
.leadership-role { color:#65d1ec!important; font-size:13px; font-weight:600; letter-spacing:.06em; margin:0; }
.leadership-role span { font-weight:400; color:#d8e6f0; }
.prose { max-width:760px; }
.prose p { font-size:16px; line-height:1.95; }
body:not([data-page=index]) .page-hero .lead { max-width:780px; }
body:not([data-page=index]) .section-heading { margin-bottom:26px; }
body:not([data-page=index]) .feature-grid { margin-top:34px; }
html[lang=ar] .editorial-intro h2 { font-size:29px; line-height:1.8; }
html[lang=ar] .editorial-intro p { font-size:14px; line-height:2.15; }
html[lang=ar] .editorial-card h3 { font-size:19px; line-height:1.8; letter-spacing:0; }
html[lang=ar] .editorial-card p { font-size:13px; line-height:2.3; }
html[lang=ar] .experience-number strong { font-family:'Inter',sans-serif; }
html[lang=ar] .experience-number span { font-size:11px; line-height:2; }
html[lang=ar] .experience-copy h2 { font-size:27px; line-height:1.8; }
html[lang=ar] .experience-copy .section-heading p { font-size:13px; line-height:2.1; }
html[lang=ar] .experience-compact .experience-copy h2 { font-size:23px; }
html[lang=ar] .leadership-panel h2 { font-size:28px; line-height:1.9; }
html[lang=ar] .leadership-panel blockquote { font-size:17px; line-height:2.2; }
html[lang=ar] .prose p { font-size:14px; line-height:2.2; }
@media (min-width:731px) and (max-width:1100px) {
 .ecosystem-grid { grid-template-columns:minmax(215px,.85fr) minmax(0,1.7fr); gap:25px; }
 .ecosystem-heading h2 { font-size:27px; }
 .ecosystem-outlook { grid-column:1; grid-row:2; margin:0; font-size:9px; }
 .ecosystem-tree { grid-column:2; grid-row:1 / span 2; }
 .eco-parent { width:118px; }
 .eco-parent .brand-large .brand-wordmark { width:118px; }
 .eco-connector { width:calc(50% - 82px); }
 .eco-children { gap:9px; }
 .eco-node { padding-inline:5px; min-height:167px; }
 .eco-node>span { font-size:6.5px; letter-spacing:.035em; }
 .eco-next>span { font-size:9px; }
 html[lang=ar] .ecosystem-heading h2 { font-size:24px; }
 html[lang=ar] .eco-node>span { font-size:7px; }
 .experience-grid { gap:45px; }
 .experience-compact .experience-grid { grid-template-columns:220px 1fr; gap:30px; }
 .editorial-cards { gap:24px; }
 .editorial-card h3 { font-size:19px; }
 .leadership-panel { gap:36px; }
}
@media(max-width:730px) {
 :root { --header-height:72px; }
 .main-nav { top:calc(var(--header-height) - 1px); max-height:calc(100dvh - var(--header-height) - 12px); overflow-y:auto; overscroll-behavior:contain; }
 .site-header,body[data-page=index] .site-header { background:rgba(3,19,33,.93); }
 .ecosystem { padding:36px 0 28px; }
 .ecosystem-grid { grid-template-columns:1fr; gap:21px; }
 .ecosystem-heading { padding:0; }
 .ecosystem-heading .eyebrow { margin-bottom:17px; }
 .ecosystem-heading h2 { font-size:31px; }
 .ecosystem-tree { min-height:0; }
 .eco-parent { width:120px; height:96px; }
 .eco-parent .brand-large .brand-wordmark { width:120px; height:86px; }
 .eco-connector { width:calc(50% - 83px); }
 .eco-connections { top:63px; }
 .eco-children { grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; margin-top:32px; }
 .eco-node { padding:13px 12px; min-height:172px; }
 .eco-node>img { height:95px; width:140px; }
 .eco-node>span { font-size:8px; }
 .eco-next>span { font-size:11px; }
 .ecosystem-outlook { margin:1px 0 0; justify-self:start; font-size:9px; letter-spacing:.08em; }
 .ecosystem-outlook br { display:none; }
 .ecosystem-outlook br:after { content:' '; }
 .ecosystem-outlook { max-width:100%; }
 /* Preserve word separation when the stacked aside reflows. */
 .ecosystem-outlook { white-space:normal; }
 .experience-section,.experience-compact { padding:37px 0; }
 .experience-grid,.experience-compact .experience-grid { grid-template-columns:1fr; gap:25px; }
 .experience-number,.experience-compact .experience-number { flex-direction:row; align-items:center; gap:24px; border-inline-end:0; padding:0 0 22px; border-bottom:1px solid #cedee9; }
 .experience-number strong,.experience-compact .experience-number strong { font-size:67px; }
 .experience-number span,.experience-compact .experience-number span { margin:0; font-size:12px; }
 .experience-copy h2,.experience-compact .experience-copy h2 { font-size:27px; }
 .experience-copy .section-heading p,.experience-compact .experience-copy .section-heading p { font-size:14px; }
 .experience-copy .text-link,.experience-compact .text-link { font-size:12px; }
 .editorial-section { padding-block:43px; }
 .editorial-intro { margin-bottom:30px; }
 .editorial-intro h2 { font-size:29px; }
 .editorial-intro p { font-size:14px; line-height:1.85; }
 .editorial-cards { grid-template-columns:1fr; gap:29px; }
 .editorial-card { padding-top:21px; }
 .editorial-card h3 { font-size:21px; }
 .editorial-card p { font-size:14px; }
 .editorial-index { margin-bottom:11px; }
 .leadership-panel { grid-template-columns:1fr; gap:25px; }
 .leadership-brand { justify-content:flex-start; }
 .leadership-brand .brand-large .brand-wordmark { width:96px; }
 .leadership-panel h2 { font-size:28px; }
 .leadership-panel blockquote { font-size:17px; line-height:1.9; }
 html[lang=ar] .ecosystem-heading h2 { font-size:26px; }
 html[lang=ar] .experience-copy h2,html[lang=ar] .experience-compact .experience-copy h2 { font-size:23px; }
 html[lang=ar] .experience-copy .section-heading p,html[lang=ar] .experience-compact .experience-copy .section-heading p { font-size:12px; }
 html[lang=ar] .editorial-intro h2 { font-size:25px; }
 html[lang=ar] .editorial-card h3 { font-size:19px; }
 html[lang=ar] .editorial-intro p,html[lang=ar] .editorial-card p { font-size:13px; }
 html[lang=ar] .leadership-panel h2 { font-size:25px; }
 html[lang=ar] .leadership-panel blockquote { font-size:15px; }
}
@media(prefers-reduced-motion:reduce) {
 .site-header { transition:none; }
 .eco-node,.button,.text-link .icon { transition:none; }
 .eco-node:hover { transform:none; }
}
@media print {
 body { padding-top:0; }
 .site-header { position:static!important; backdrop-filter:none; box-shadow:none; }
 .hero { margin-top:0; }
 .eco-connections { display:none; }
 .editorial-card,.experience-number { break-inside:avoid; }
 .leadership-section { background:white; color:#081c37; }
 .leadership-panel blockquote { color:#081c37; }
}
