:root { --black:#0b0d0e; --lime:#b7e400; --white:#fff; --soft:#f3f4f2; --grey:#626866; --line:#d9ddda; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
section[id] { scroll-margin-top:88px; }
body { margin:0; background:#fff; color:var(--black); font-family:Arial, Helvetica, sans-serif; }
img { max-width:100%; }
body, button, a { -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
button { font:inherit; }
main { overflow:hidden; }
.font-arabic { font-family:Tahoma, Arial, sans-serif; }
.site-header { height:88px; padding:0 clamp(1.25rem,4vw,4.5rem); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #252829; background:var(--black); color:white; position:relative; z-index:20; }
.brand,.footer-brand { display:flex; flex-direction:column; align-items:center; gap:0; flex-shrink:0; }
.brand img,.footer-brand img { width:92px; height:48px; object-fit:contain; }
.brand span,.footer-brand span { font-size:.58rem; letter-spacing:.38em; margin-top:-8px; margin-inline-start:.4em; }
.nav { display:flex; align-items:center; gap:clamp(1rem,2.5vw,2.5rem); font-size:.93rem; }
.nav a:not(.nav-cta) { color:#d7d9d8; }
.nav a:hover { color:var(--lime); }
.nav-cta { border:1px solid var(--lime); padding:.72rem 1.15rem; border-radius:99px; color:var(--lime); }
.header-actions { display:flex; align-items:center; gap:.6rem; }
.language { background:transparent; color:white; border:0; cursor:pointer; padding:.65rem; }
.menu-button { display:none; background:transparent; color:white; border:0; cursor:pointer; }
.menu-button svg { width:26px; height:26px; }
.menu-button span { display:block; width:24px; height:2px; background:white; margin:5px 0; }
.section-pad { padding:clamp(5rem,9vw,9rem) clamp(1.25rem,6vw,7rem); }
.section-dark { background:var(--black); color:white; }
.section-soft { background:var(--soft); }
.section-lime { background:var(--lime); }
.hero { position:relative; isolation:isolate; overflow:hidden; }
.hero::before { content:""; position:absolute; width:46vw; height:46vw; min-width:520px; min-height:520px; right:-27vw; top:-18vw; z-index:-1; border:1px solid rgba(183,228,0,.11); border-radius:50%; }
[dir="rtl"] .hero::before { right:auto; left:-27vw; }
.hero-main { min-height:calc(100vh - 250px); display:flex; align-items:center; padding:clamp(4rem,7vw,7rem) clamp(1.25rem,6vw,7rem); }
.hero-copy { max-width:860px; position:relative; z-index:1; }
.eyebrow { font-size:.78rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; margin:0 0 1.35rem; }
.eyebrow.lime { color:var(--lime); }
.hero h1 { font-size:clamp(4rem,7.4vw,8rem); line-height:.88; letter-spacing:-.07em; margin:0; max-width:900px; text-wrap:balance; }
.font-arabic .hero h1 { letter-spacing:-.035em; line-height:1.08; }
.hero-body { font-size:clamp(1.05rem,1.35vw,1.22rem); line-height:1.65; color:#c8ccca; max-width:650px; margin:1.8rem 0 0; }
.hero-actions { display:flex; align-items:center; gap:2rem; margin-top:2.2rem; flex-wrap:wrap; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:.75rem; border-radius:99px; padding:1rem 1.45rem; font-weight:700; transition:.2s ease; }
.button svg,.text-link svg { width:18px; height:18px; }
.button-lime { background:var(--lime); color:var(--black); }
.button-dark { background:var(--black); color:white; }
.button:hover { transform:translateY(-2px); }
.text-link { display:inline-flex; align-items:center; gap:.6rem; font-weight:700; border-bottom:1px solid currentColor; padding-bottom:.25rem; }
.text-link.light { color:white; }
.hero-trust { display:flex; align-items:center; gap:1rem; margin-top:3rem; padding-top:1.5rem; border-top:1px solid #303536; max-width:430px; }
.hero-trust strong { color:var(--lime); font-size:2.3rem; line-height:1; letter-spacing:-.06em; }
.hero-trust span { color:#969d99; font-size:.8rem; line-height:1.4; max-width:180px; }
.hero-system { border-top:1px solid #303536; border-bottom:1px solid #303536; padding:1.55rem clamp(1.25rem,6vw,7rem); display:grid; grid-template-columns:minmax(210px,.75fr) minmax(440px,1.7fr) minmax(210px,.75fr); align-items:center; gap:clamp(2rem,4vw,4.5rem); background:#0d1011; }
.system-orbit { display:flex; align-items:center; gap:1.3rem; }
.system-wordmark { display:block; font-size:3.6rem; font-weight:900; letter-spacing:-.11em; line-height:.8; white-space:nowrap; }
.system-wordmark span { color:var(--lime); }
.system-orbit p { color:#aeb4b1; margin:0; font-size:.72rem; line-height:1.45; letter-spacing:.08em; text-transform:uppercase; max-width:130px; }
.system-capabilities { display:grid; grid-template-columns:repeat(4,1fr); }
.system-capabilities span { min-height:54px; padding:.75rem 1rem; display:flex; align-items:center; justify-content:center; color:#d7dbd9; font-size:.69rem; letter-spacing:.14em; border-left:1px solid #34393a; }
.system-capabilities span:last-child { color:var(--lime); font-weight:800; border-right:1px solid #34393a; }
[dir="rtl"] .system-capabilities span:last-child { border-right:0; }
[dir="rtl"] .system-capabilities span:first-child { border-right:1px solid #34393a; }
.system-result { display:flex; align-items:center; justify-content:flex-end; gap:1rem; color:var(--lime); font-size:.7rem; line-height:1.45; letter-spacing:.13em; text-align:end; }
.system-result svg { width:28px; height:28px; }
.section-heading h2,.about h2,.cta h2 { font-size:clamp(2.5rem,5vw,5rem); line-height:1.02; letter-spacing:-.055em; margin:0; }
.font-arabic .section-heading h2,.font-arabic .about h2,.font-arabic .cta h2 { letter-spacing:-.025em; line-height:1.2; }
.section-heading > p:last-child,.split-heading > p,.about-copy > p:last-child { color:var(--grey); line-height:1.75; font-size:1.08rem; }
.section-heading.wide { max-width:1000px; }
.section-heading.wide > p:last-child { max-width:760px; margin-top:1.8rem; }
.split-heading { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(260px,.65fr); gap:clamp(2rem,8vw,8rem); align-items:end; }
.split-heading > p { margin:0; }
.growth-signature { position:relative; overflow:hidden; }
.growth-signature::after { content:"GROWTH"; position:absolute; right:-.04em; bottom:-.22em; font-size:clamp(8rem,22vw,24rem); font-weight:800; letter-spacing:-.09em; color:#111516; pointer-events:none; }
.growth-signature .section-heading { position:relative; z-index:1; }
.growth-signature .section-heading > p:last-child { color:#b9bfbc; }
.stage-rail { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin-top:5rem; background:#353a38; border:1px solid #353a38; position:relative; z-index:1; }
.stage-rail article { padding:2rem; min-height:300px; background:#111516; display:flex; flex-direction:column; transition:.25s ease; position:relative; overflow:hidden; }
.stage-rail article:nth-child(even) { background:#141817; }
.stage-rail article::after { content:""; position:absolute; width:120px; height:120px; border:1px solid #293029; border-radius:50%; right:-55px; bottom:-55px; }
[dir="rtl"] .stage-rail article::after { right:auto; left:-55px; }
.stage-rail article:hover { background:#151b12; transform:translateY(-6px); }
.stage-marker { display:flex; align-items:center; justify-content:space-between; color:var(--lime); }
.stage-marker span { font-size:.75rem; letter-spacing:.15em; }
.stage-marker svg { width:58px; height:58px; padding:13px; border-radius:18px; background:var(--lime); color:var(--black); stroke-width:1.6; box-shadow:0 12px 30px rgba(183,228,0,.14); }
.stage-marker i { width:58px; height:58px; display:grid; place-items:center; font-size:1.5rem; font-style:normal; border-radius:18px; background:var(--lime); color:var(--black); box-shadow:0 12px 30px rgba(183,228,0,.14); }
.stage-rail h3 { font-size:clamp(1.75rem,2.4vw,2.35rem); line-height:1.05; letter-spacing:-.035em; margin:2.3rem 0 1rem; }
.stage-rail p { line-height:1.65; color:#aeb4b1; margin:0; }
.service-grid { display:grid; grid-template-columns:repeat(4,1fr); grid-auto-flow:dense; gap:1rem; margin-top:5rem; }
.service-card { background:white; padding:2rem; min-height:410px; display:flex; flex-direction:column; position:relative; overflow:hidden; border:1px solid #dfe3df; transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.service-card::after { content:""; position:absolute; inset:auto -55px -70px auto; width:150px; height:150px; border:1px solid #e3e7e3; border-radius:50%; transition:transform .35s ease; }
.service-card:hover { transform:translateY(-6px); box-shadow:0 20px 45px rgba(11,13,14,.1); border-color:#cbd0cb; }
.service-card:hover::after { transform:scale(1.28); }
.service-featured { grid-column:span 2; }
.service-1,.service-8 { background:var(--black); color:white; border-color:var(--black); }
.service-6 { background:var(--lime); border-color:var(--lime); color:var(--black); }
.service-7 { background:#e7e9e7; }
.service-top { display:flex; align-items:flex-start; justify-content:space-between; position:relative; z-index:1; }
.service-icon { width:64px; height:64px; display:grid; place-items:center; border-radius:18px; background:var(--lime); color:var(--black); box-shadow:0 10px 28px rgba(183,228,0,.22); }
.service-icon svg { width:31px; height:31px; stroke-width:1.65; }
.service-icon { font-weight:900; font-size:1.35rem; }
.service-6 .service-icon { background:var(--black); color:var(--lime); box-shadow:none; }
.service-7 .service-icon { background:white; box-shadow:none; }
.service-number { color:#8b918e; font-size:.76rem; letter-spacing:.12em; }
.service-1 .service-number,.service-8 .service-number { color:#7c8380; }
.service-copy { position:relative; z-index:1; }
.service-card h3 { font-size:1.45rem; line-height:1.18; margin:4rem 0 1rem; max-width:430px; }
.service-featured h3 { font-size:clamp(1.7rem,2.5vw,2.55rem); max-width:590px; }
.service-card p { color:var(--grey); line-height:1.68; margin:0; max-width:650px; }
.service-1 p,.service-8 p { color:#b9bfbc; }
.service-6 p { color:#303531; }
.service-card > strong { font-size:.86rem; line-height:1.5; margin-top:auto; padding-top:1.5rem; border-top:1px solid var(--line); position:relative; z-index:1; }
.service-1 > strong,.service-8 > strong { border-color:#343839; color:var(--lime); }
.service-6 > strong { border-color:rgba(11,13,14,.3); }
.service-learn { display:inline-block; position:relative; z-index:1; width:max-content; margin-top:1rem; font-size:.75rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; border-bottom:1px solid currentColor; }
.service-detail { min-height:100vh; background:white; }
.service-nav { display:flex; align-items:center; gap:1.5rem; font-size:.83rem; font-weight:700; }
.service-hero { min-height:560px; padding:clamp(4rem,8vw,8rem) clamp(1.25rem,6vw,7rem); display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.55fr); gap:clamp(3rem,8vw,9rem); align-items:end; }
.service-hero>div { max-width:900px; }
.breadcrumb { display:flex; gap:.65rem; color:#8f9793; font-size:.78rem; margin-bottom:3rem; }
.breadcrumb a { border-bottom:1px solid #4a504d; }
.service-hero h1 { font-size:clamp(3.2rem,7vw,7.4rem); line-height:.92; letter-spacing:-.065em; margin:0; text-wrap:balance; }
.font-arabic .service-hero h1 { letter-spacing:-.025em; line-height:1.15; }
.service-hero>div>p:last-child { color:#c3c9c5; font-size:1.12rem; line-height:1.75; max-width:720px; margin:2rem 0 0; }
.service-hero aside { border-top:2px solid var(--lime); padding-top:1.2rem; }
.service-hero aside span { display:block; color:var(--lime); font-size:.68rem; letter-spacing:.16em; margin-bottom:1rem; }
.service-hero aside strong { font-size:1.2rem; line-height:1.5; }
.service-value { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,.75fr); gap:clamp(3rem,9vw,10rem); }
.service-value h2 { font-size:clamp(2.6rem,5.2vw,5.5rem); line-height:1; letter-spacing:-.055em; margin:0; }
.font-arabic .service-value h2 { letter-spacing:-.02em; line-height:1.2; }
.service-value>div:last-child p { color:var(--grey); line-height:1.8; font-size:1.05rem; }
.service-value .button { margin-top:1.4rem; }
.related-services .section-heading { max-width:780px; }
.related-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:3rem; border-top:1px solid #ccd1cd; }
.related-grid a { min-height:220px; padding:2rem; border-right:1px solid #ccd1cd; display:flex; flex-direction:column; justify-content:space-between; transition:.2s ease; }
.related-grid a:last-child { border-right:0; }
.related-grid a:hover { background:var(--lime); }
.related-grid span { font-size:1.35rem; font-weight:800; line-height:1.2; }
.related-grid p { color:var(--grey); line-height:1.55; margin:1.5rem 0 0; }
[dir="rtl"] .related-grid a { border-right:0; border-left:1px solid #ccd1cd; }
[dir="rtl"] .related-grid a:last-child { border-left:0; }
.training .split-heading > p,.light-heading > p:last-child { color:#bcc1bf; }
.training-list { display:grid; grid-template-columns:1fr 1fr; margin-top:5rem; border-top:1px solid #363a3b; }
.training-list div { display:grid; grid-template-columns:52px 1fr; align-items:center; min-height:92px; border-bottom:1px solid #363a3b; }
.training-list div:nth-child(odd) { border-right:1px solid #363a3b; padding-right:2rem; }
[dir="rtl"] .training-list div:nth-child(odd) { border-right:0; border-left:1px solid #363a3b; padding-right:0; padding-left:2rem; }
.training-list div:nth-child(even) { padding-left:2rem; }
[dir="rtl"] .training-list div:nth-child(even) { padding-left:0; padding-right:2rem; }
.training-list span { color:var(--lime); font-size:.72rem; }
.training-list p { font-size:1.15rem; margin:0; }
.project-line { display:grid; grid-template-columns:repeat(4,1fr); margin-top:5rem; position:relative; }
.project-phase { min-width:0; }
.phase-track { height:72px; display:flex; align-items:center; position:relative; }
.phase-dot { width:58px; height:58px; border-radius:50%; display:grid; place-items:center; flex:0 0 auto; background:var(--black); color:var(--lime); font-size:.76rem; font-weight:800; letter-spacing:.08em; position:relative; z-index:2; box-shadow:0 0 0 8px white; transition:transform .25s ease,background .25s ease,color .25s ease; }
.phase-connector { height:2px; background:var(--black); flex:1; position:relative; }
.phase-connector::after { content:""; position:absolute; right:0; top:50%; width:9px; height:9px; border-top:2px solid var(--black); border-right:2px solid var(--black); transform:translateY(-50%) rotate(45deg); }
[dir="rtl"] .phase-connector::after { right:auto; left:0; border-right:0; border-left:2px solid var(--black); transform:translateY(-50%) rotate(-45deg); }
.phase-copy { padding:1.8rem 2rem 0 0; max-width:320px; }
[dir="rtl"] .phase-copy { padding:1.8rem 0 0 2rem; }
.phase-label { color:#777e7a; font-size:.72rem; letter-spacing:.13em; text-transform:uppercase; }
.project-phase h3 { font-size:clamp(1.35rem,2vw,1.8rem); margin:1rem 0 .8rem; line-height:1.15; }
.project-phase p { color:var(--grey); line-height:1.7; margin:0; }
.project-phase:hover .phase-dot { background:var(--lime); color:var(--black); transform:scale(1.08); }
.section-black-lime { background:linear-gradient(110deg,var(--black) 0%,var(--black) 68%,#151a12 68%,#151a12 100%); color:white; }
.coaching-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; margin-top:5rem; }
.coaching-grid article { padding:clamp(2rem,4vw,4rem); border:1px solid #3a3e3f; min-height:430px; display:flex; flex-direction:column; background:#111415; }
.coaching-grid article:last-child { border-color:#566a0c; background:#13190f; }
.case-client-logo { width:min(280px,80%); height:118px; background:white; border-radius:4px; display:flex; align-items:center; justify-content:center; padding:1.15rem 1.5rem; overflow:hidden; }
.case-client-logo img { width:100%; height:100%; object-fit:contain; }
.case-client-logo .gulf-air-logo { width:92%; }
.case-category { font-size:.72rem; text-transform:uppercase; letter-spacing:.14em; color:#959b98; }
.coaching-grid h3 { font-size:clamp(1.7rem,3vw,2.8rem); line-height:1.05; margin:2.5rem 0 1.2rem; }
.coaching-grid article > p:not(.case-category) { color:#c2c6c4; line-height:1.7; max-width:590px; }
.case-note { margin-top:auto; font-size:.78rem; color:#919793; border-top:1px solid #323637; padding-top:1.2rem; }
.portfolio-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; margin-top:5rem; }
.portfolio-card { background:white; display:flex; flex-direction:column; overflow:hidden; border:1px solid #e0e3e1; transition:transform .25s ease, box-shadow .25s ease; }
.portfolio-card:hover { transform:translateY(-6px); box-shadow:0 22px 50px rgba(11,13,14,.12); }
.portfolio-visual { position:relative; aspect-ratio:1/1; overflow:hidden; background:#e7e9e7; }
.portfolio-visual img { object-fit:cover; transition:transform .55s ease; }
.portfolio-visual > img { width:100%; height:100%; display:block; }
.portfolio-card:hover .portfolio-visual img { transform:scale(1.035); }
.portfolio-copy { padding:1.45rem 1.7rem 1.8rem; min-height:330px; position:relative; display:flex; flex-direction:column; }
.portfolio-logo { height:86px; display:flex; align-items:center; justify-content:flex-start; margin-bottom:1.2rem; }
.portfolio-logo img { width:auto; max-width:82%; height:100%; object-fit:contain; object-position:left center; }
[dir="rtl"] .portfolio-logo { justify-content:flex-end; }
[dir="rtl"] .portfolio-logo img { object-position:right center; }
.portfolio-meta { display:flex; justify-content:flex-end; align-items:start; }
.portfolio-card .case-category { max-width:100%; text-align:end; }
.portfolio-card h3 { font-size:1.35rem; margin:1.5rem 0 .85rem; }
.portfolio-card p { color:var(--grey); line-height:1.65; margin:0; }
.about { display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(3rem,10vw,10rem); align-items:end; }
.about-copy > p:last-child { max-width:760px; margin-top:2rem; }
.stats { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--black); }
.stats div { padding:2rem 1rem; border-right:1px solid var(--line); }
[dir="rtl"] .stats div { border-right:0; border-left:1px solid var(--line); }
.stats div:last-child { border:0; }
.stats strong { display:block; font-size:clamp(2.5rem,5vw,4.7rem); letter-spacing:-.06em; }
.stats span { display:block; margin-top:.8rem; color:var(--grey); font-size:.82rem; line-height:1.4; }
.ceo { display:grid; grid-template-columns:.88fr 1.12fr; min-height:780px; }
.ceo-image { position:relative; min-height:620px; background:#16191a; }
.ceo-image img { object-fit:cover; object-position:center 18%; filter:saturate(.82) contrast(1.02); }
.ceo-image > img { width:100%; height:100%; position:absolute; inset:0; }
.ceo-copy { padding:clamp(4rem,8vw,8rem); display:flex; flex-direction:column; justify-content:center; }
.ceo blockquote { font-size:clamp(2rem,3.5vw,3.65rem); line-height:1.12; letter-spacing:-.04em; margin:0; }
.font-arabic .ceo blockquote { letter-spacing:-.01em; line-height:1.45; }
.ceo-copy > p:not(.eyebrow) { color:#b9bfbc; line-height:1.75; margin:2.2rem 0 3rem; }
.ceo-copy h3 { color:var(--lime); margin:0 0 .35rem; font-size:1.35rem; }
.ceo-copy span { color:#8e9491; }
.qualification { display:block; color:var(--lime); margin-top:.7rem; font-size:.78rem; letter-spacing:.08em; text-transform:uppercase; }
.direction .section-heading { max-width:850px; }
.direction-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-top:5rem; }
.direction-card { padding:clamp(2rem,4vw,4rem); min-height:360px; display:flex; flex-direction:column; border:1px solid #343839; background:#101314; }
.direction-0 { background:linear-gradient(155deg,#121617 0%,#121617 70%,#18200f 100%); }
.direction-1 { background:var(--lime); color:var(--black); border-color:var(--lime); }
.direction-2 { grid-column:1/-1; min-height:380px; background:#181c1d; }
.direction-card-head { display:flex; align-items:center; justify-content:space-between; color:var(--lime); }
.direction-1 .direction-card-head { color:var(--black); }
.direction-card-head svg { width:44px; height:44px; stroke-width:1.25; }
.direction-card-head span { font-size:.72rem; letter-spacing:.16em; }
.direction-grid h3 { font-size:clamp(2rem,4vw,4.5rem); letter-spacing:-.055em; margin:auto 0 1.5rem; }
.direction-grid p { color:#bdc2bf; line-height:1.75; max-width:650px; }
.direction-1 p { color:#273000; }
.direction-grid ul { list-style:none; padding:0; margin:auto 0 0; display:grid; grid-template-columns:repeat(5,1fr); gap:1rem; }
.direction-grid li { border-top:1px solid #3d4240; padding-top:.8rem; color:#d8dcda; }
.contact-hub { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr); gap:clamp(3rem,8vw,9rem); align-items:end; text-align:start; }
.contact-copy h2 { max-width:1000px; }
.contact-copy > p:not(.eyebrow) { max-width:650px; margin:2rem 0 2.5rem; line-height:1.7; }
.contact-actions { display:flex; gap:1rem; flex-wrap:wrap; }
.button-outline { border:1px solid var(--black); color:var(--black); }
.contact-details { border-top:1px solid rgba(11,13,14,.35); }
.contact-details > a,.contact-details > div { min-height:104px; display:flex; align-items:center; gap:1rem; border-bottom:1px solid rgba(11,13,14,.35); }
.contact-details svg { width:26px; height:26px; flex:0 0 auto; }
.contact-details span { display:flex; flex-direction:column; gap:.4rem; font-weight:700; }
.contact-details small { text-transform:uppercase; letter-spacing:.14em; font-size:.62rem; font-weight:700; opacity:.65; }
.contact-details b { font-size:1.4rem; width:28px; text-align:center; }
.contact-form { margin-top:2.2rem; max-width:760px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.contact-form label { display:block; margin-bottom:1rem; }
.contact-form label > span { display:block; font-size:.7rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; margin-bottom:.45rem; }
.contact-form input,.contact-form textarea,.contact-form select { width:100%; border:1px solid rgba(11,13,14,.5); background:rgba(255,255,255,.18); padding:.9rem 1rem; font:inherit; color:var(--black); border-radius:0; }
.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus { outline:2px solid var(--black); outline-offset:2px; }
.contact-form .hp { position:absolute; left:-9999px; }
.form-status { min-height:1.4em; font-size:.9rem; font-weight:700; }
.contact-form button:disabled { opacity:.6; cursor:wait; }
.direction-card-head i { font-size:2rem; font-style:normal; }
footer { background:var(--black); color:white; padding:4rem clamp(1.25rem,6vw,7rem) 2rem; display:grid; grid-template-columns:1fr auto; gap:4rem; }
.footer-brand { align-items:flex-start; width:max-content; }
.footer-contact { display:flex; flex-direction:column; gap:.8rem; text-align:end; color:#c3c7c5; }
.footer-bottom { grid-column:1/-1; padding-top:2rem; border-top:1px solid #303435; display:flex; justify-content:space-between; color:#7e8581; font-size:.76rem; }

@media (max-width:1050px) {
  .service-grid { grid-template-columns:repeat(2,1fr); }
  .portfolio-grid { grid-template-columns:repeat(2,1fr); }
  .stage-rail { grid-template-columns:repeat(2,1fr); }
  .hero-main { min-height:auto; padding-top:6rem; padding-bottom:6rem; }
  .hero-system { grid-template-columns:1fr; gap:1.5rem; }
  .system-capabilities { max-width:720px; width:100%; }
  .system-result { justify-content:flex-start; text-align:start; }
  .about { grid-template-columns:1fr; }
  .service-hero,.service-value { grid-template-columns:1fr; }
}
@media (max-width:780px) {
  .site-header { height:76px; }.brand img { width:78px; }
  .nav { display:none; position:absolute; top:76px; left:0; right:0; background:var(--black); padding:2rem 1.25rem; border-top:1px solid #292c2d; flex-direction:column; align-items:stretch; }
  .nav.open { display:flex; }.nav-cta { text-align:center; }.menu-button { display:block; }
  .hero-main { min-height:calc(100vh - 76px); padding-top:4rem; padding-bottom:4rem; }.hero h1 { font-size:clamp(3.3rem,16vw,5.5rem); }.hero-system { padding-top:2rem; padding-bottom:2rem; }.system-wordmark { font-size:3.4rem; }.system-capabilities { grid-template-columns:1fr 1fr; }.system-capabilities span { min-height:48px; padding:.75rem; border-bottom:1px solid #34393a; }.system-capabilities span:nth-child(3) { border-right:1px solid #34393a; }.system-capabilities span:last-child { border-right:1px solid #34393a; }
  .split-heading,.coaching-grid,.about,.ceo { grid-template-columns:1fr; }
  .service-grid,.portfolio-grid,.stage-rail,.direction-grid { grid-template-columns:1fr; }
  .service-nav>a:first-child { display:none; }.service-nav { gap:.7rem; }.service-nav .nav-cta { padding:.65rem .85rem; }.service-hero { min-height:auto; padding-top:4rem; }.related-grid { grid-template-columns:1fr; }.related-grid a,[dir="rtl"] .related-grid a { border-right:0;border-left:0;border-bottom:1px solid #ccd1cd;min-height:170px;}
  .service-featured { grid-column:span 1; }
  .training-list { grid-template-columns:1fr; }
  .training-list div:nth-child(odd),[dir="rtl"] .training-list div:nth-child(odd),.training-list div:nth-child(even),[dir="rtl"] .training-list div:nth-child(even) { border-right:0; border-left:0; padding-left:0; padding-right:0; }
  .stage-rail article,[dir="rtl"] .stage-rail article { min-height:300px; padding:1.5rem; }
  .project-line { grid-template-columns:1fr; gap:0; margin-top:3.5rem; }
  .project-phase { display:grid; grid-template-columns:72px 1fr; min-height:210px; }
  .phase-track { width:72px; height:100%; display:flex; flex-direction:column; align-items:center; }
  .phase-connector { width:2px; height:auto; min-height:100px; flex:1; }
  .phase-connector::after,[dir="rtl"] .phase-connector::after { right:auto; left:50%; top:auto; bottom:0; width:9px; height:9px; border:0; border-right:2px solid var(--black); border-bottom:2px solid var(--black); transform:translateX(-50%) rotate(45deg); }
  .phase-copy,[dir="rtl"] .phase-copy { padding:1rem 0 2.5rem 1rem; max-width:none; }
  [dir="rtl"] .project-phase { grid-template-columns:1fr 72px; }
  [dir="rtl"] .phase-track { grid-column:2; grid-row:1; }
  [dir="rtl"] .phase-copy { grid-column:1; grid-row:1; padding:1rem 1rem 2.5rem 0; }
  .service-card { min-height:390px; }.portfolio-card { min-height:320px; }
  .direction-grid { grid-template-columns:1fr; }.direction-2 { grid-column:auto; }.direction-card { min-height:360px; }.direction-grid ul { grid-template-columns:1fr; }
  .contact-hub { grid-template-columns:1fr; }.contact-details { margin-top:1rem; }
  .form-row { grid-template-columns:1fr; gap:0; }
  .stats { grid-template-columns:1fr; }.stats div,[dir="rtl"] .stats div { border-right:0; border-left:0; border-bottom:1px solid var(--line); }
  .ceo-image { min-height:520px; }
  footer { grid-template-columns:1fr; gap:2rem; }.footer-contact { text-align:start; }.footer-bottom { flex-direction:column; gap:1rem; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  .portfolio-card,.portfolio-visual img,.button { transition:none; }
  .portfolio-card:hover,.button:hover { transform:none; }
}
