:root{
 --ori-canvas:#06090D;--ori-surface-1:#0A0F15;--ori-surface-2:#0D141E;--ori-surface-3:#101B28;
 --ori-white:#fff;--ori-soft:#D8DEE7;--ori-purple:#883BD2;--ori-red:#D23C3B;--ori-cyan:#3BD0D2;
 --ori-gradient:linear-gradient(150deg,#D23C3B 0%,#883BD2 50%,#3BD0D2 100%);
 --ori-border:rgba(255,255,255,.12);--ori-border-soft:rgba(255,255,255,.07);--ori-muted:rgba(216,222,231,.66);
 --ori-shell:min(1280px,calc(100% - 72px));--ori-font-headline:"Gotham",Arial,Helvetica,sans-serif;
 --ori-font-body:"Exo 2",Arial,Helvetica,sans-serif;--ori-ease:cubic-bezier(.22,.72,.23,1);
 --ori-heading-size:clamp(30px,3.4vw,46px);--ori-subheading-size:19px;--ori-body-size:15px;--ori-small-size:12px;--ori-label-size:10px;
 --ori-title-size:var(--ori-heading-size);--ori-section-size:var(--ori-heading-size);
 --ori-eyebrow-dot-size:9px;
}
*{box-sizing:border-box}
html{background:var(--ori-canvas);scroll-behavior:smooth}
body.ori-site{margin:0;background:var(--ori-canvas);color:var(--ori-soft);font-family:var(--ori-font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}
.ori-shell{width:var(--ori-shell);margin-inline:auto;min-width:0}.ori-main{min-height:60vh}
.ori-arrow{width:17px;height:17px;fill:currentColor;transition:transform .22s var(--ori-ease)}a:hover .ori-arrow{transform:translate(2px,-2px)}
.ori-link{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;padding-block-end:5px;border-block-end:1px solid rgba(255,255,255,.28)}
.ori-prose{max-width:820px;font-size:17px;line-height:1.7}.ori-prose h2,.ori-prose h3{font-family:var(--ori-font-headline);color:#fff}.ori-prose a{text-decoration:underline;text-underline-offset:3px}.ori-empty{padding:32px;color:var(--ori-muted)}
::selection{background:rgba(136,59,210,.62);color:#fff}::-moz-selection{background:rgba(136,59,210,.62);color:#fff}
.ori-surface{position:relative;min-width:0;border:1px solid rgba(255,255,255,.075);border-radius:26px;background:var(--ori-surface-1);box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 24px 70px rgba(0,0,0,.16)}
/* One solid eyebrow surface. The dot has explicit square geometry. */
.ori-eyebrow{display:inline-flex;align-items:center;gap:10px;width:max-content;max-width:100%;min-height:34px;padding:7px 13px;margin:0 0 17px;border:1px solid rgba(255,255,255,.09);border-radius:999px;background:var(--ori-surface-1);color:rgba(216,222,231,.64);font-size:10px;font-weight:700;letter-spacing:.11em;line-height:1.25;text-transform:uppercase}
.ori-eyebrow__dot{position:relative;display:block;flex:0 0 var(--ori-eyebrow-dot-size);width:var(--ori-eyebrow-dot-size);height:var(--ori-eyebrow-dot-size);min-width:var(--ori-eyebrow-dot-size);min-height:var(--ori-eyebrow-dot-size);aspect-ratio:1;border-radius:50%;background:var(--ori-purple)}
.ori-eyebrow__dot:after{content:"";position:absolute;inset:-5px;border:1px solid var(--ori-purple);border-radius:50%;animation:ori-eyebrow-wave 2.2s ease-out infinite;pointer-events:none}
@keyframes ori-eyebrow-wave{0%{transform:scale(.65);opacity:.75}75%,100%{transform:scale(2.2);opacity:0}}
/* Shared information tooltips. */
[data-ori-tooltip]{position:relative}
.ori-info-dot{display:inline-grid;place-items:center;width:28px;height:28px;border:1px solid rgba(255,255,255,.10);border-radius:50%;background:var(--ori-surface-1);color:rgba(216,222,231,.72);font-size:12px;font-weight:700}
.ori-info-dot:hover,.ori-info-dot:focus-visible{background:var(--ori-surface-2);color:#fff}


:focus-visible{outline:2px solid var(--ori-purple);outline-offset:3px}img,svg{max-width:100%}
@media(max-width:700px){:root{--ori-shell:calc(100% - 28px);--ori-heading-size:clamp(29px,7.5vw,38px);--ori-subheading-size:18px;--ori-body-size:15px;--ori-small-size:12px;--ori-label-size:10px}}
/* Arabic typography stays active after live language changes. */
html[lang^="ar"]{--ori-font-headline:"Cairo",sans-serif;--ori-font-body:"Cairo",sans-serif}
html[lang^="ar"] body.ori-site{font-family:var(--ori-font-body)}
html[lang^="ar"] .ori-hero__title,html[lang^="ar"] .ori-section__head h2,html[lang^="ar"] .ori-page__header h1,html[lang^="ar"] .ori-final-cta h2{line-height:1.25;padding-bottom:.07em;overflow:visible}
html[lang^="ar"] .ori-button{font-family:var(--ori-font-body);line-height:1.45}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.ori-eyebrow__dot:after{animation:none;opacity:.4}}

/* One global tooltip, positioned against the actual viewport. */
.ori-tooltip{position:fixed;z-index:2000;box-sizing:border-box;width:max-content;max-width:min(320px,calc(100vw - 24px));padding:10px 12px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:var(--ori-surface-3);box-shadow:0 16px 40px rgba(0,0,0,.28);color:var(--ori-soft);font-family:var(--ori-font-body);font-size:12px;font-weight:400;line-height:1.5;letter-spacing:0;text-transform:none;text-align:start;white-space:normal;overflow-wrap:anywhere;pointer-events:none;visibility:hidden;opacity:0;transition:opacity .12s ease;direction:ltr}
.ori-tooltip.is-visible{visibility:visible;opacity:1}
.ori-tooltip[dir=rtl]{direction:rtl}
.ori-tooltip__arrow{position:absolute;left:calc(var(--ori-tooltip-arrow-x,50%) - 5px);width:10px;height:10px;background:var(--ori-surface-3);transform:rotate(45deg);pointer-events:none}
.ori-tooltip[data-placement=bottom] .ori-tooltip__arrow{top:-6px;border-top:1px solid rgba(255,255,255,.12);border-left:1px solid rgba(255,255,255,.12)}
.ori-tooltip[data-placement=top] .ori-tooltip__arrow{bottom:-6px;border-right:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.ori-section__title-line{display:flex;align-items:center;gap:12px}
.ori-section__title-line .ori-info-dot{flex:0 0 28px;align-self:center;transform:translateY(3px)}
@media(prefers-reduced-motion:reduce){.ori-tooltip{transition:none}}

/* In-place language changes. Text stays readable while the new copy settles. */
@keyframes ori-language-fade{from{opacity:.58}to{opacity:1}}
@keyframes ori-language-lift{from{opacity:.58;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
.ori-language-entering [data-ori-i18n]{animation:ori-language-fade .22s ease-out both}
.ori-language-entering :is(.ori-hero__title,.ori-section__head h2,.ori-page__header h1){animation:ori-language-lift .22s var(--ori-ease) both}
.ori-language-notice{position:fixed;z-index:2100;top:90px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:12px;width:max-content;max-width:calc(100% - 32px);padding:12px 16px;border:1px solid var(--ori-border);border-radius:14px;background:var(--ori-surface-2);color:var(--ori-soft);box-shadow:0 12px 40px rgba(0,0,0,.24);font-size:13px;line-height:1.5}
.ori-language-notice[hidden]{display:none}
.ori-language-notice button{flex:0 0 auto;border:1px solid var(--ori-border);border-radius:999px;padding:7px 12px;background:var(--ori-surface-3);color:#fff;font-weight:700}
.ori-language-notice button:focus-visible{outline:2px solid var(--ori-purple);outline-offset:2px}
@media(max-width:640px){.ori-language-notice{top:76px;flex-wrap:wrap;text-align:center}}
@media(prefers-reduced-motion:reduce){.ori-language-entering [data-ori-i18n],.ori-language-entering :is(.ori-hero__title,.ori-section__head h2,.ori-page__header h1){animation:none}}


/* 0.4.16 global info-dot optical alignment. */
.ori-section__title-line{align-items:flex-end;gap:12px}
.ori-section__title-line .ori-info-dot{align-self:flex-end;transform:translateY(-4px);margin-bottom:.06em}
.ori-info-dot{line-height:1;font-style:normal}
@media(max-width:700px){.ori-section__title-line .ori-info-dot{transform:translateY(-3px)}}
