/* Modern Advisory refinement: blue, near-black, and readable secondary text. */
:root{--ink:#181d25;--paper:#fafbfd;--green:#245fba;--pale:#edf3fb;--muted:#4d5b70;--rule:#d0dbea;--deep:#132843;--light:#e2eaf6;--blue:#245fba}
.header-inner{border-bottom-color:var(--rule)}
.wordmark-dot{color:var(--green)}
.hero{background:var(--paper)}
.hero-copy>p{color:#4d5b70;font-size:1.05rem}
.hero h1 em{color:var(--green)}
.hero-top{color:var(--muted);font-size:.75rem;letter-spacing:.1em}
.hero-art{width:min(100%,61rem)}
.connection{background:var(--pale);border:0;border-top:1px solid #b9cce6;border-bottom:1px solid #b9cce6;border-radius:4px;padding:2rem 2.5rem}
.node-symbol{background:#dce9fb;color:#244f90;font-size:.8rem;width:2.4rem;height:2.4rem}
.node-name{font-size:1.15rem}
.node-detail{font-size:.9375rem;line-height:1.55;color:#41526b;font-weight:500;margin-top:.5rem}
.connection-node{min-width:12rem}
.connector{background:#a4bcdf}
.connector:after{border-color:#6589bd}
.hero-bottom{font-size:.9375rem;color:#41526b;padding-top:1.5rem}
.eyebrow,.index-label{font-size:.75rem;letter-spacing:.11em}
.section-title{grid-template-columns:1.15fr 1fr;gap:6rem}
.section-title h2{font-weight:500;letter-spacing:-.05em}
.section-title>p{font-size:1rem}
.situations{gap:0;border-top:1px solid var(--rule)}
.situation,.situation:nth-child(even){border:0;border-bottom:1px solid var(--rule);border-radius:0;background:transparent;padding:2rem 2rem 2rem 0}
.situation:nth-child(even){border-left:1px solid var(--rule);padding-left:2rem}
.situation h3{font-size:1.05rem}
.situation p{font-size:.9375rem}
.number{font-size:.8rem;color:#40618c}
.services-section{background:var(--deep);color:var(--paper)}
.services-section .index-label{color:#b7d2fc}
.services-grid{gap:0;border-top:1px solid #476184}
.service,.service+.service{background:transparent;border:0;border-radius:0;padding:2rem 2rem 0 0}
.service+.service{padding-left:2rem;border-left:1px solid #476184}
.service h3{font-weight:500;font-size:1.5rem}
.service p{color:#e0e9f7;font-size:.9375rem}
.service-graphic{color:#accaf5}
.detail-copy h2{font-weight:500}
.detail-copy p{font-size:1rem}
.process-plate{border-radius:4px;background:#edf3fb;border:1px solid var(--rule)}
.plate-heading{font-weight:500}
.flow-row{border-color:#c7d7ec;font-size:.9375rem}
.flow-number{font-size:.75rem;background:#fafbfd}
.plate-caption{font-size:.875rem;color:#41526b}
.text-link{font-size:.9375rem}
.founder h2{font-weight:500}.founder p{font-size:1rem}
.contact{background:#e9f0fa;color:var(--ink)}
.contact p,.contact .eyebrow,.contact .email{color:#41526b}
.contact p{font-size:1rem}
.contact h2{font-weight:500}
.contact .button{background:var(--deep);color:white}
.contact .button:hover{background:#245fba}
.contact .email{font-size:.9375rem}
.footer p,.footer-links a{font-size:.8125rem}
.footer-end{font-size:.75rem}
.nav a{font-size:.85rem}
.header-action{font-size:.8rem}
.button{font-size:.9rem}
.inner-hero{background:var(--pale)}
@media(max-width:1000px){.connection{padding:1.7rem 1.2rem}.connection-node{min-width:0}.node-detail{max-width:18ch}.connector{width:2rem}.section-title{gap:3rem}.service,.service+.service{padding-right:1.2rem}.service+.service{padding-left:1.2rem}}
@media(max-width:760px){.header-action{font-size:.7rem}.hero-top{font-size:.6875rem;gap:.6rem;line-height:1.7}.hero-copy>p{font-size:1rem}.connection{padding:1.5rem 1rem;gap:.5rem}.connection-node{min-width:0}.node-name{font-size:1rem}.node-detail{font-size:.8125rem;max-width:13ch;line-height:1.6}.node-symbol{font-size:.7rem;width:2rem;height:2rem}.connector{width:.5rem;margin:1rem 0 0}.hero-bottom{font-size:.875rem;line-height:1.7;max-width:35ch;margin:auto}.section-title{grid-template-columns:1fr;gap:1.2rem}.situation,.situation:nth-child(even){border-left:0;padding:1.6rem 0;grid-template-columns:1.5rem 1fr}.service,.service+.service{padding:1.75rem 0;border:0}.service+.service{border-top:1px solid #476184}.services-grid{gap:0}.service h3{font-size:1.4rem}.contact h2{font-size:2.3rem}.footer-end>span{line-height:1.9}}
@media(max-width:380px){.connection{padding:1.4rem .65rem;gap:.25rem}.node-detail{font-size:.8125rem;max-width:11ch}.node-name{font-size:.9375rem}.header-action{font-size:.65rem}}

/* Restore modern geometry; use a few static alignment details for precision. */
.section-title h2,.detail-copy h2,.founder h2,.contact h2,.plate-heading{font-weight:600}
.connection{border:1px solid #c5d5ed;border-radius:20px;position:relative;background:#f1f6fd}
.situations{gap:1rem;border:0}
.situation,.situation:nth-child(even){border:1px solid var(--rule);border-radius:16px;background:#fff;padding:1.8rem;position:relative}
.situation:hover{border-color:#8aa9d4}
.services-grid{gap:1rem;border:0}
.service,.service+.service{border:1px solid #435b7b;border-radius:16px;background:#1a3353;padding:2rem}
.service h3{font-weight:600}
.services-section{position:relative}
.services-section>.wrap{position:relative}
.service-graphic svg{stroke-width:1.5}
.process-plate{border-radius:18px;border-color:#cad9ed}
.header-action,.hero .button{background:#181d25}
.header-action:hover,.hero .button:hover{background:#245fba}
.contact{background:#101722;color:#fafbfd}
.contact p,.contact .eyebrow,.contact .email{color:#dce5f3}
.contact .button{background:#f6f9ff;color:#182b46}
.contact .button:hover{background:#cdddF5}
.wordmark{color:#181d25}
@media(max-width:760px){
 .situation,.situation:nth-child(even){padding:1.4rem;border:1px solid var(--rule)}
 .service,.service+.service{padding:1.6rem;border:1px solid #435b7b}
 .services-grid{gap:1rem}
}

/* Softer modern palette and intermediate type sizes. */
:root{--ink:#20252b;--paper:#fcfcfa;--green:#126d87;--pale:#f0f3f5;--muted:#596570;--rule:#dde3e7;--deep:#162935;--light:#dbe4e9;--blue:#126d87}
.hero h1 em,.wordmark-dot{color:#126d87}
.wordmark{color:#20252b}
.hero-copy>p{font-size:1.025rem;color:#596570}
.hero-top{font-size:.7rem;color:#596570}
.connection{background:#fff;border-color:#dde3e7}
.node-symbol{background:#e9f2f5;color:#126d87;font-size:.725rem}
.node-name{font-size:1.075rem}
.node-detail{font-size:.8125rem;color:#52616c;font-weight:500}
.hero-bottom{font-size:.8125rem;color:#52616c}
.connector{background:#c7d7df}.connector:after{border-color:#8eacba}
.header-action,.hero .button{background:#20252b}
.header-action:hover,.hero .button:hover{background:#126d87}
.services-section{background:#162935}
.service,.service+.service{background:#1d3544;border-color:#47606e}
.service p{color:#e0e9ee}.service-graphic{color:#b5d3df}
.services-section .index-label{color:#bed6e2}
.process-plate{background:#f0f4f5;border-color:#d9e2e6}
.contact{background:#171e26}.contact p,.contact .eyebrow,.contact .email{color:#dce5ea}
.eyebrow,.index-label{font-size:.7rem}
.nav a{font-size:.8rem}.header-action{font-size:.76rem}.button{font-size:.85rem}
.situation p,.service p{font-size:.9rem}
.trilogy{margin:1rem 0 0}
.trilogy svg{display:block;width:100%;height:auto}
.trilogy .tri-line{stroke:#9cb7c4;stroke-width:1.5;fill:none}
.trilogy .tri-label{font-family:Manrope,Arial,sans-serif;font-size:16px;font-weight:600;fill:#263844;text-anchor:middle}
.trilogy .tri-centre{font-family:Manrope,Arial,sans-serif;font-size:21px;font-weight:600;fill:#126d87;text-anchor:middle;letter-spacing:-.5px}
.trilogy-caption{text-align:center;font-size:.8125rem;color:#52616c;margin-top:.75rem}
@media(max-width:760px){
 .hero-top{font-size:.6rem}.hero-copy>p{font-size:.95rem}
 .node-name{font-size:.9rem}.node-detail{font-size:.6875rem;max-width:15ch}
 .node-symbol{font-size:.65rem}
 .hero-bottom{font-size:.75rem;max-width:40ch}
 .header-action{font-size:.66rem}
 .service,.service+.service{border-color:#47606e}
 .trilogy .tri-label{font-size:18px}.trilogy .tri-centre{font-size:23px}
}

/* Shared heading hierarchy: H1 for page introductions, H2 for all sections,
   H3 for entries. No section-specific weight or tracking changes. */
:root{--section-size:clamp(2rem,2.8vw,2.5rem);--section-leading:1.2;--section-tracking:-.045em}
h2,.section-title h2,.detail-copy h2,.founder h2,.contact h2,.copy-section h2{font-family:Manrope,Arial,sans-serif;font-size:var(--section-size);font-weight:600;line-height:var(--section-leading);letter-spacing:var(--section-tracking);margin:0}
h3,.service h3,.situation h3,.copy-section h3{font-family:Manrope,Arial,sans-serif;font-size:1.125rem;font-weight:600;line-height:1.4;letter-spacing:-.025em}
.detail-copy h2{margin-bottom:1.5rem}
.index-label,.contact .eyebrow{margin-bottom:1.25rem}
.plate-heading{font-size:1.3rem;font-weight:600;line-height:1.4;letter-spacing:-.025em}
.operation-loop{margin:1rem 0 0}.operation-loop svg{display:block;width:100%;height:auto}
.loop-label{font-family:Manrope,Arial,sans-serif;font-size:17px;font-weight:500;fill:#263844;text-anchor:middle}
.loop-centre{font-family:Manrope,Arial,sans-serif;font-size:21px;font-weight:600;fill:#126d87;text-anchor:middle}
.operation-loop figcaption{font-size:.8125rem;line-height:1.7;color:#52616c;text-align:center}
.founder-name{font-size:1.1rem!important;font-weight:600;color:var(--ink)!important;margin:1.2rem 0!important}
.founder-grid{align-items:center;grid-template-columns:1fr 1.3fr}
.portrait-placeholder{aspect-ratio:4/5;width:min(100%,15rem);background:#edf2f4;border:1px solid #d7e1e5;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;margin-top:1.5rem;color:#667b86}
.portrait-initials{font-size:2.8rem;font-weight:500;letter-spacing:-.04em;color:#8ba0ab}
.portrait-note{font-size:.75rem}
.approach-alignment{display:grid;grid-template-columns:1fr 1.6fr;gap:5rem;align-items:center;padding:3.5rem 0;border-bottom:1px solid var(--rule)}
@media(max-width:760px){
 .founder-grid,.approach-alignment{grid-template-columns:1fr;gap:1.75rem}
 .portrait-placeholder{width:12rem}
 .approach-alignment{padding:2.5rem 0}
 .loop-label{font-size:19px}
}

/* One shared corner treatment for interface surfaces and actions. */
:root{--radius-ui:1rem}
.button,.header-action,.connection,.situation,.situation:nth-child(even),.service,.service+.service,.process-plate,.portrait-placeholder{border-radius:var(--radius-ui)}

/* Client names retain consistent typography until approved logo files are supplied. */
.clients-section{padding-top:0}
.client-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--rule)}
.client-list li{padding:1.6rem 1rem 1.6rem 0;border-bottom:1px solid var(--rule)}
.client-name{display:block;font-size:1rem;font-weight:600;letter-spacing:-.025em}
.client-country{display:block;font-size:.8125rem;color:var(--muted);margin-top:.4rem}
.platform-panel{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:2rem;align-items:center;margin-top:2rem;padding-top:2rem;border-top:1px solid #47606e}
.platform-panel .eyebrow{color:#bed6e2;font-size:.7rem}
.platform-panel h3{font-size:1.7rem;margin-top:.4rem}
.platform-panel>p{font-size:.9rem;color:#e0e9ee}
.platform-credentials{display:flex;flex-direction:column;gap:.6rem;font-size:.8125rem;color:#e0e9ee}
@media(max-width:760px){.client-list{grid-template-columns:repeat(2,minmax(0,1fr))}.client-name{font-size:.9375rem}.platform-panel{grid-template-columns:1fr;gap:1.2rem}.clients-section{padding-top:0}}

.odoo-section{padding-top:0}
.odoo-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:5rem;align-items:center}
.odoo-grid h2{margin-bottom:1.5rem}.odoo-grid>div>p{max-width:60ch;color:var(--muted)}
.odoo-identity{background:#f0f4f5;border:1px solid var(--rule);border-radius:var(--radius-ui);padding:3rem 2rem;text-align:center}
.odoo-logo{width:11rem;max-width:100%;height:auto;display:block;margin:0 auto 2rem}
.odoo-partner-label{font-size:1.1rem;font-weight:600;color:var(--ink)!important}
.odoo-identity p{font-size:.9375rem}.brand-attribution{font-size:.75rem;color:var(--muted);margin-top:2rem}
@media(max-width:760px){.odoo-grid{grid-template-columns:1fr;gap:2rem}.odoo-identity{padding:2rem}.odoo-section{padding-top:0}}
/* One calm, horizontally browsable row of client identities. */
.client-carousel{position:relative;min-width:0}
.client-controls{display:flex;justify-content:flex-end;gap:.6rem;margin-bottom:1rem}
.client-controls[hidden]{display:none}
.client-controls button{width:2.75rem;height:2.75rem;border:1px solid var(--rule);border-radius:var(--radius-ui);background:#fff;color:var(--ink);font:inherit;font-size:1.2rem;cursor:pointer}
.client-controls button:hover:not(:disabled){background:var(--ink);color:white;border-color:var(--ink)}
.client-controls button:disabled{opacity:.35;cursor:default}
.client-controls button:focus-visible,.client-list:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.client-list{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;border:0;padding:0 0 1rem;scrollbar-width:thin;scrollbar-color:#b6ccd5 transparent}
.client-list li{flex:0 0 calc((100% - 3rem)/4);min-width:0;padding:1.5rem 1rem;text-align:center;border:1px solid var(--rule);border-radius:var(--radius-ui);background:white;scroll-snap-align:start}
.client-logo-space{height:8rem;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem}
.client-logo{display:block;max-width:100%;width:9rem;height:6rem;object-fit:contain}
.client-logo.dimd{width:12rem;height:9rem}
.client-logo.so-free{width:10rem;height:10rem}
.client-logo.lactimoza{width:7.5rem;height:auto}
.client-text-mark{font-size:1.4rem;font-weight:600;letter-spacing:-.04em;color:#334651}
.client-list .client-name{font-size:.875rem}
.client-list .client-country{font-size:.75rem}
@media(max-width:1000px){.client-list li{flex-basis:calc((100% - 2rem)/3)}}
@media(max-width:760px){.client-list li{flex-basis:calc((100% - 1rem)/2)}}
@media(max-width:480px){.client-list li{flex-basis:78%}}
/* Compact client strip and consistent section labels. */
.clients-section .section-title{margin-bottom:1rem}
.clients-section{padding-bottom:3rem}
.client-controls{margin-bottom:.6rem}
.client-list li{padding:1rem .75rem}
.client-logo-space{height:5rem;margin-bottom:.65rem}
.client-logo{width:8rem;height:4.5rem}
.client-logo.dimd{width:10rem;height:7rem}
.client-logo.so-free{width:8rem;height:8rem}
.client-logo.lactimoza{width:7rem;height:auto}
main .index-label,main .contact .eyebrow{font-family:Manrope,Arial,sans-serif;font-size:.7rem;font-weight:500;line-height:1.75;letter-spacing:.11em;margin-top:0;margin-bottom:1.25rem}
.founder-portrait{display:block;width:min(100%,15rem);height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius-ui);margin-top:1.5rem}
@media(max-width:760px){.founder-portrait{width:12rem}}
/* Balanced personal introduction with caption attached to the portrait. */
.founder-profile{display:grid;grid-template-columns:minmax(16rem, .85fr) minmax(0,1.25fr);gap:4rem;align-items:center;margin-top:2rem}
.founder-identity{margin:0;justify-self:center;width:min(100%,17rem)}
.founder-identity .founder-portrait{width:100%;margin:0}
.founder-identity figcaption{margin-top:1rem}
.founder-identity .founder-name{margin:0!important}
.founder-identity .founder-role{margin-top:.25rem;font-size:.8rem;color:var(--muted)}
.founder-story p{max-width:57ch}
.client-logo.box-for-less{width:10rem;height:5rem}
a{transition:color .18s ease,background-color .18s ease,border-color .18s ease}
a:not(.brand):not(.button):not(.header-action):not(.skip):not(.nav a):not(.footer-links a):not([href^="mailto:"]):not([href^="tel:"]):hover,a:not(.brand):not(.button):not(.header-action):not(.skip):not(.nav a):not(.footer-links a):not([href^="mailto:"]):not([href^="tel:"]):focus-visible{color:#0b5870;background-color:#e4f0f4;border-radius:.2rem}
a.brand:hover .wordmark,a.brand:focus-visible .wordmark{color:var(--ink)}
.contact a:not(.button):hover,.services-section a:not(.button):hover{color:#fff;background-color:#325468}
.button:focus-visible,.header-action:focus-visible{background:#126d87;color:white;outline:2px solid #126d87;outline-offset:4px}
@media(max-width:760px){.founder-profile{grid-template-columns:1fr;gap:2rem}.founder-identity{width:min(100%,16rem)}}
@media(prefers-reduced-motion:reduce){a{transition:none}}
/* Quiet navigation; pillar icons express roles rather than sequence. */
.header .nav{margin-left:auto}
.header .nav a:hover,.header .nav a:focus-visible{background:transparent;color:var(--blue);border-radius:0}
.node-symbol svg{width:1.25rem;height:1.25rem;display:block}
@media(max-width:760px){.header .header-inner{display:flex;flex-wrap:wrap;justify-content:space-between;padding-bottom:1rem}.header .nav{width:100%;margin:0;display:flex;justify-content:space-between;gap:1rem;order:2}.node-symbol svg{width:1.1rem;height:1.1rem}}

/* Slightly stronger main navigation, preserving its spacing. */
.header .nav a{font-size:calc(.8rem + 1px);font-weight:600}

/* Shared navigation appearance and a centred copyright line. */
.footer-links a{font-size:calc(.8rem + 1px);font-weight:600;text-decoration:none;color:var(--ink)}
.footer-links a:hover,.footer-links a:focus-visible{background:transparent;color:var(--blue);border-radius:0;text-decoration:none}
.footer .copyright{text-align:center;width:100%;margin:1.5rem 0 0;font-size:.75rem;color:var(--muted)}

/* Plain contact links use the same restrained interaction as navigation. */
a[href^="mailto:"]:not(.brand):not(.button):not(.header-action),a[href^="tel:"]{text-decoration:none}
body a[href^="mailto:"]:not(.brand):not(.button):not(.header-action):is(:hover,:focus-visible),body a[href^="tel:"]:is(:hover,:focus-visible){color:var(--blue);background:transparent;text-decoration:none}

.header .nav .language-switch{font-family:"Noto Sans Arabic",Arial,sans-serif;color:var(--blue);white-space:nowrap}
@media(max-width:480px){.header .nav{gap:.6rem}}

.brand{-webkit-tap-highlight-color:transparent;user-select:none}

@media(max-width:760px){.header .nav{flex-wrap:wrap;column-gap:1.1rem;row-gap:.25rem}.footer-links{flex-wrap:wrap;gap:1rem}}
