/* ==========================================================================
   WPIIET Components  v1.0 — uses tokens only, never raw hex.
   Naming: .c-{component}  /  .c-{component}__{part}  /  .is-{state}
   ========================================================================== */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font-ar);font-size:var(--fs-md);line-height:var(--lh-body);color:var(--ink);background:var(--surface-2);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--brand);text-decoration:none}
a:hover{color:var(--brand-strong)}
h1,h2,h3,h4{font-weight:var(--fw-black);line-height:var(--lh-tight);margin:0 0 var(--space-3);color:var(--secondary)}
p{margin:0 0 var(--space-4)}
:focus-visible{outline:none;box-shadow:var(--focus);border-radius:var(--r-xs)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.container{width:min(100% - 2*var(--gutter),var(--container));margin-inline:auto}
.section{padding-block:var(--section-y)}
.section--alt{background:var(--surface-3)}
.section--white{background:var(--surface)}
.section--dark{background:var(--secondary);color:#fff}
.section--dark h2,.section--dark h3{color:#fff}
.section--pattern{background:var(--c-navy-900) url("../img/pattern-geo.jpg") center/420px;color:#fff;position:relative}
.section--pattern::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,23,51,.82),rgba(8,52,59,.9))}
.section--pattern>*{position:relative}
.section--pattern h2,.section--pattern h3{color:#fff}
.ic{width:1.25em;height:1.25em;flex:none;vertical-align:-.2em}
.grid{display:grid;gap:var(--space-5)}
.grid--2{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
.grid--3{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.grid--4{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}
.stack>*+*{margin-top:var(--space-4)}
.dev-note{display:inline-flex;gap:.4rem;align-items:center;font-size:var(--fs-xs);background:var(--c-gold-100);color:var(--c-gold-700);border:1px dashed var(--c-gold-500);padding:.15rem .6rem;border-radius:var(--r-pill);margin-inline-start:.5rem;font-weight:var(--fw-medium);vertical-align:middle}

/* ---- Buttons ---- */
.c-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1.4rem;border-radius:var(--button-radius);border:2px solid transparent;font:inherit;font-weight:var(--fw-bold);font-size:var(--fs-sm);cursor:pointer;transition:transform var(--t-fast) var(--ease),box-shadow var(--t-base),background var(--t-base),color var(--t-base);line-height:var(--lh-ui)}
.c-btn:hover{transform:translateY(-2px)}
.c-btn--primary{background:var(--brand);color:#fff;box-shadow:var(--sh-glow)}
.c-btn--primary:hover{background:var(--brand-strong);color:#fff}
.c-btn--accent{background:var(--accent);color:var(--c-navy-900)}
.c-btn--accent:hover{background:var(--c-gold-300);color:var(--c-navy-900)}
.c-btn--ghost{background:transparent;border-color:var(--brand);color:var(--brand)}
.c-btn--ghost:hover{background:var(--brand);color:#fff}
.c-btn--light{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.5);color:#fff;backdrop-filter:blur(6px)}
.c-btn--light:hover{background:#fff;color:var(--secondary)}
.c-btn--sm{padding:.4rem 1rem;font-size:var(--fs-xs)}

/* ---- Badge / chip ---- */
.c-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:var(--fs-xs);font-weight:var(--fw-bold);padding:.2rem .7rem;border-radius:var(--r-pill);background:var(--brand-soft);color:var(--brand-strong)}
.c-badge--gold{background:var(--c-gold-100);color:var(--c-gold-700)}
.c-badge--dark{background:rgba(12,23,51,.75);color:#fff}
.c-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center;margin-bottom:var(--space-6)}
.c-chip{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);padding:.45rem 1.1rem;border-radius:var(--r-pill);font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-medium);cursor:pointer;transition:all var(--t-base)}
.c-chip:hover{border-color:var(--brand);color:var(--brand)}
.c-chip.is-active{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:var(--sh-glow)}

/* ---- Section head ---- */
.c-sechead{text-align:center;max-width:720px;margin:0 auto var(--space-7)}
.c-sechead__eyebrow{display:inline-block;color:var(--brand);font-weight:var(--fw-bold);font-size:var(--fs-sm);margin-bottom:var(--space-2);letter-spacing:.02em}
.c-sechead h2{font-size:var(--fs-3xl);margin-bottom:var(--space-3)}
.c-sechead h2::after{content:"";display:block;width:64px;height:5px;border-radius:var(--r-pill);background:linear-gradient(90deg,var(--accent),var(--brand));margin:var(--space-3) auto 0}
.c-sechead p{color:var(--ink-2);margin:0}
.section--dark .c-sechead p,.section--pattern .c-sechead p{color:rgba(255,255,255,.8)}
.section--dark .c-sechead__eyebrow,.section--pattern .c-sechead__eyebrow{color:var(--accent)}
.c-sechead--row{display:flex;justify-content:space-between;align-items:end;text-align:start;max-width:none;gap:var(--space-4);flex-wrap:wrap}
.c-sechead--row h2::after{margin-inline:0}

/* ---- Topbar + Header ---- */
.c-topbar{background:var(--topbar-bg);color:var(--topbar-ink);font-size:var(--fs-sm);font-weight:var(--fw-medium)}
.c-topbar .container{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);min-height:44px;flex-wrap:wrap}
.c-topbar a{color:inherit;display:inline-flex;align-items:center;gap:.4rem;padding:.2rem .7rem;border-radius:var(--r-pill);transition:background var(--t-fast)}
.c-topbar a:hover{background:rgba(255,255,255,.22);color:inherit}
.c-topbar__links{display:flex;gap:var(--space-2);flex-wrap:wrap}
.c-switcher{position:relative}
.c-switcher>button{display:inline-flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.28);border:1px solid rgba(255,255,255,.55);color:inherit;border-radius:var(--r-pill);padding:.3rem .9rem;font:inherit;font-weight:var(--fw-bold);cursor:pointer;max-width:260px}
.c-switcher>button span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.c-switcher__panel{position:absolute;inset-inline-start:0;top:calc(100% + 8px);width:min(360px,92vw);background:#fff;color:var(--ink);border-radius:var(--r-md);box-shadow:var(--sh-3);padding:var(--space-3);z-index:var(--z-dropdown);display:none}
.c-switcher.is-open .c-switcher__panel{display:block}
.c-switcher__panel input{width:100%;font:inherit;padding:.6rem .9rem;border:1.5px solid var(--line-strong);border-radius:var(--r-sm);margin-bottom:var(--space-2)}
.c-switcher__group{font-size:var(--fs-xs);color:var(--ink-3);font-weight:var(--fw-bold);padding:.5rem .6rem .2rem}
.c-switcher__panel a{display:flex;align-items:center;gap:.6rem;padding:.55rem .6rem;border-radius:var(--r-sm);color:var(--ink)!important;font-weight:var(--fw-medium)}
.c-switcher__panel a:hover,.c-switcher__panel a.is-current{background:var(--brand-soft);color:var(--brand-strong)!important}
.c-header{background:var(--header-bg);color:var(--header-ink);position:sticky;top:0;z-index:var(--z-header);box-shadow:0 1px 0 var(--line),var(--sh-1)}
.c-header .container{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);min-height:76px}
.c-brand{display:flex;align-items:center;gap:var(--space-3);color:var(--header-ink)}
.c-brand:hover{color:var(--header-ink)}
.c-brand img{height:52px;width:auto}
.c-brand b{display:block;font-size:var(--fs-md);font-weight:var(--fw-black);line-height:1.2}
.c-brand small{display:block;font-size:var(--fs-xs);opacity:.7;font-weight:var(--fw-medium)}
.c-nav{display:flex;gap:var(--space-1);align-items:center;flex-wrap:wrap}
.c-nav a{color:inherit;font-weight:var(--fw-bold);font-size:var(--fs-sm);padding:.5rem .85rem;border-radius:var(--r-pill);transition:all var(--t-fast)}
.c-nav a:hover{background:var(--brand-soft);color:var(--brand-strong)}
.c-nav a.is-active{background:var(--brand);color:#fff}
[data-theme="technical"] .c-nav a:hover{background:rgba(255,255,255,.12);color:#fff}
.c-burger{display:none;background:none;border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:.5rem;color:inherit;cursor:pointer}
@media(max-width:1000px){
  .c-burger{display:inline-flex}
  .c-nav{display:none;position:absolute;inset-inline:0;top:100%;background:var(--header-bg);flex-direction:column;align-items:stretch;padding:var(--space-4);box-shadow:var(--sh-3)}
  .c-nav.is-open{display:flex}
  .c-header .container{position:relative}
}

/* ---- Hero (wide picture) ---- */
.c-hero{position:relative;min-height:clamp(520px,78vh,760px);display:flex;flex-direction:column;justify-content:flex-end;color:#fff;overflow:hidden;isolation:isolate}
.c-hero__bg{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center}
.c-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:var(--hero-overlay)}
.c-hero__body{padding-block:var(--space-8) var(--space-6);display:grid;gap:var(--space-5);justify-items:start}
.c-hero__logo{display:flex;align-items:center;gap:var(--space-4);background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);backdrop-filter:blur(10px);padding:var(--space-3) var(--space-5) var(--space-3) var(--space-4);border-radius:var(--r-lg)}
.c-hero__logo img{height:84px}
.c-hero__logo span{font-size:var(--fs-sm);opacity:.9;font-weight:var(--fw-medium);display:block}
.c-hero__logo b{font-size:var(--fs-xl);font-weight:var(--fw-black)}
.c-hero h1{color:#fff;font-size:var(--fs-4xl);margin:0}
.c-hero__slogan{display:inline-flex;align-items:center;gap:var(--space-3);font-size:var(--fs-2xl);font-weight:var(--fw-black);color:var(--c-navy-900);background:var(--accent);padding:.35rem 1.6rem .5rem;border-radius:var(--r-pill);box-shadow:var(--sh-3)}
.c-hero__lead{font-size:var(--fs-lg);max-width:640px;opacity:.95;margin:0}
.c-hero__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);padding-bottom:var(--space-6)}
@media(max-width:760px){.c-hero__stats{grid-template-columns:repeat(2,1fr)}}
.c-stat{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.32);backdrop-filter:blur(12px);border-radius:var(--r-lg);padding:var(--space-4) var(--space-5);text-align:center;transition:transform var(--t-base) var(--ease),background var(--t-base)}
.c-stat:hover{transform:translateY(-4px);background:rgba(255,255,255,.22)}
.c-stat b{display:block;font-size:var(--fs-3xl);font-weight:var(--fw-black);line-height:1.1;color:var(--accent)}
.c-stat span{font-weight:var(--fw-bold);font-size:var(--fs-md)}
.c-stat--solid{background:var(--surface);border:1px solid var(--line);backdrop-filter:none;box-shadow:var(--sh-1)}
.c-stat--solid:hover{background:var(--surface)}
.c-stat--solid b{color:var(--brand)} .c-stat--solid span{color:var(--ink-2)}

/* ---- Cards ---- */
.c-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--card-radius);box-shadow:var(--sh-1);overflow:hidden;transition:transform var(--t-base) var(--ease),box-shadow var(--t-base)}
.c-card:hover{transform:translateY(-4px);box-shadow:var(--sh-3)}
.c-card__media{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--surface-3)}
.c-card__media img{width:100%;height:100%;object-fit:cover;transition:transform var(--t-slow) var(--ease)}
.c-card:hover .c-card__media img{transform:scale(1.06)}
.c-card__tag{position:absolute;top:var(--space-3);inset-inline-start:var(--space-3)}
.c-card__body{padding:var(--space-4) var(--space-5) var(--space-5)}
.c-card__body h3{font-size:var(--fs-lg);margin-bottom:var(--space-2)}
.c-card__body h3 a{color:inherit}
.c-card__body p{color:var(--ink-2);font-size:var(--fs-sm);line-height:1.7;margin-bottom:var(--space-3)}
.c-card__meta{display:flex;justify-content:space-between;align-items:center;font-size:var(--fs-xs);color:var(--ink-3)}
/* featured news */
.c-news{display:grid;grid-template-columns:1.35fr 1fr;gap:var(--space-5)}
@media(max-width:900px){.c-news{grid-template-columns:1fr}}
.c-news__lead{position:relative;border-radius:var(--card-radius);overflow:hidden;min-height:440px;display:flex;align-items:flex-end;color:#fff;isolation:isolate}
.c-news__lead img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform var(--t-slow) var(--ease)}
.c-news__lead:hover img{transform:scale(1.05)}
.c-news__lead::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 30%,rgba(12,23,51,.92))}
.c-news__lead div{padding:var(--space-6)}
.c-news__lead h3{color:#fff;font-size:var(--fs-2xl)}
.c-news__lead p{opacity:.9;margin:0 0 var(--space-3)}
.c-news__list{display:grid;gap:var(--space-4);align-content:start}
.c-row{display:grid;grid-template-columns:120px 1fr;gap:var(--space-4);align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--space-3);transition:box-shadow var(--t-base),transform var(--t-base)}
.c-row:hover{box-shadow:var(--sh-2);transform:translateX(-3px)}
.c-row img{width:120px;height:90px;object-fit:cover;border-radius:var(--r-sm)}
.c-row h4{font-size:var(--fs-md);margin:0 0 .25rem;line-height:1.4}
.c-row small{color:var(--ink-3)}

/* ---- Feature tile (forum, projects) ---- */
.c-tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--card-radius);padding:var(--space-5);display:grid;gap:var(--space-2);align-content:start;position:relative;overflow:hidden;transition:all var(--t-base) var(--ease)}
.c-tile::before{content:"";position:absolute;inset-inline:0;top:0;height:4px;background:linear-gradient(90deg,var(--brand),var(--accent));transform:scaleX(0);transform-origin:right;transition:transform var(--t-base) var(--ease)}
.c-tile:hover{transform:translateY(-4px);box-shadow:var(--sh-3);border-color:transparent}
.c-tile:hover::before{transform:scaleX(1)}
.c-tile__icon{width:56px;height:56px;border-radius:var(--r-md);background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;font-size:1.6rem}
.c-tile h3{font-size:var(--fs-lg);margin:var(--space-2) 0 0}
.c-tile p{margin:0;color:var(--ink-2);font-size:var(--fs-sm);line-height:1.7}
.c-tile--center{text-align:center;justify-items:center}

/* ---- Awards ---- */
.c-awards{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--space-6);align-items:center}
@media(max-width:900px){.c-awards{grid-template-columns:1fr}}
.c-awards__img{border-radius:var(--card-radius);overflow:hidden;box-shadow:var(--sh-3);aspect-ratio:16/10}
.c-awards__img img{width:100%;height:100%;object-fit:cover}
.c-award-list{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}
.c-award-list li{display:grid;grid-template-columns:52px 1fr auto;gap:var(--space-4);align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);padding:var(--space-3) var(--space-4);border-radius:var(--r-md)}
.c-award-list .n{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--c-navy-900);font-weight:var(--fw-black);font-size:var(--fs-lg)}
.c-award-list b{display:block;color:#fff}
.c-award-list small{color:rgba(255,255,255,.7)}

/* ---- Results (نتائجنا) ---- */
.c-results{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--space-5)}
@media(max-width:900px){.c-results{grid-template-columns:1fr}}
.c-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--card-radius);padding:var(--space-5);box-shadow:var(--sh-1)}
.c-panel h3{font-size:var(--fs-lg)}
.c-bars{display:flex;align-items:end;gap:var(--space-4);height:230px;padding-top:var(--space-4);border-bottom:2px solid var(--line-strong)}
.c-bar{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:.35rem;height:100%}
.c-bar i{display:block;width:100%;max-width:64px;border-radius:var(--r-sm) var(--r-sm) 0 0;background:linear-gradient(180deg,var(--brand-300),var(--brand-600));height:var(--h);transition:height var(--t-slow) var(--ease)}
.c-bar b{color:var(--brand-strong);font-weight:var(--fw-black)}
.c-bar-x{display:flex;gap:var(--space-4);margin-top:var(--space-2)}
.c-bar-x span{flex:1;text-align:center;font-size:var(--fs-xs);color:var(--ink-3);font-weight:var(--fw-bold)}
.c-toppers{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}
.c-toppers li{display:grid;grid-template-columns:44px 1fr auto;gap:var(--space-3);align-items:center;padding:var(--space-3);border-radius:var(--r-md);background:var(--surface-3)}
.c-toppers .rank{width:44px;height:44px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:var(--fw-black)}
.c-toppers li:first-child .rank{background:var(--accent);color:var(--c-navy-900)}
.c-toppers small{display:block;color:var(--ink-3)}
.c-meter{height:10px;background:var(--line);border-radius:var(--r-pill);overflow:hidden;margin-top:.4rem}
.c-meter i{display:block;height:100%;width:var(--w);background:linear-gradient(90deg,var(--brand),var(--accent));border-radius:inherit}

/* ---- Calendar + publications split ---- */
.c-split{display:grid;grid-template-columns:1.25fr 1fr;gap:var(--space-5);align-items:start}
@media(max-width:1000px){.c-split{grid-template-columns:1fr}}
.c-cal{background:var(--surface);border:1px solid var(--line);border-radius:var(--card-radius);overflow:hidden;box-shadow:var(--sh-1)}
.c-cal__head{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-5);background:linear-gradient(120deg,var(--brand-700),var(--secondary));color:#fff}
.c-cal__head h3{color:#fff;margin:0;font-size:var(--fs-xl)}
.c-cal__head small{opacity:.8;display:block;font-weight:var(--fw-medium)}
.c-cal__nav{display:flex;gap:var(--space-2)}
.c-cal__nav button{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:rgba(255,255,255,.12);color:#fff;cursor:pointer}
.c-cal__grid{display:grid;grid-template-columns:repeat(7,1fr);padding:var(--space-3);gap:4px}
.c-cal__dow{text-align:center;font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--ink-3);padding:.4rem 0}
.c-cal__day{aspect-ratio:1;border-radius:var(--r-sm);display:grid;place-items:center;font-weight:var(--fw-bold);font-size:var(--fs-sm);position:relative;color:var(--ink-2)}
.c-cal__day.is-empty{visibility:hidden}
.c-cal__day.is-event{background:var(--c-gold-100);color:var(--c-gold-700)}
.c-cal__day.is-event::after{content:"";position:absolute;bottom:6px;width:6px;height:6px;border-radius:50%;background:var(--accent-strong)}
.c-cal__day.is-today{outline:2px solid var(--brand);color:var(--brand)}
.c-cal__events{border-top:1px solid var(--line);padding:var(--space-4) var(--space-5);display:grid;gap:var(--space-3)}
.c-event{display:grid;grid-template-columns:56px 1fr;gap:var(--space-4);align-items:center}
.c-event time{background:var(--secondary);color:#fff;border-radius:var(--r-sm);text-align:center;padding:.4rem 0;line-height:1.1}
.c-event time b{display:block;font-size:var(--fs-xl);font-weight:var(--fw-black)}
.c-event time small{font-size:.7rem;opacity:.85}
.c-event h4{margin:0;font-size:var(--fs-md)}
.c-event p{margin:0;font-size:var(--fs-xs);color:var(--ink-3)}
.c-pubs{display:grid;gap:var(--space-4)}
.c-pub{display:grid;grid-template-columns:96px 1fr;gap:var(--space-4);align-items:center;background:var(--surface);border:1px solid var(--line);padding:var(--space-3);border-radius:var(--r-md);transition:all var(--t-base)}
.c-pub:hover{box-shadow:var(--sh-2);transform:translateY(-2px)}
.c-pub__cover{aspect-ratio:3/4;border-radius:var(--r-xs);background:linear-gradient(160deg,var(--brand-600),var(--secondary));color:var(--accent);display:grid;place-items:center;font-size:2rem;box-shadow:var(--sh-2);overflow:hidden;position:relative}
.c-pub__cover img{width:100%;height:100%;object-fit:cover}
.c-pub h4{margin:0 0 .2rem;font-size:var(--fs-md)}
.c-pub p{margin:0;color:var(--ink-3);font-size:var(--fs-xs)}

/* ---- Platforms ---- */
.c-platform{text-align:center;padding:var(--space-5);display:grid;gap:var(--space-3);justify-items:center}
.c-platform__logo{width:76px;height:76px;border-radius:24px;background:linear-gradient(135deg,var(--brand-50),var(--c-gold-100));color:var(--brand);display:grid;place-items:center;font-size:2rem;box-shadow:inset 0 0 0 1px var(--line)}
.c-platform h3{font-size:var(--fs-lg);margin:0}
.c-platform p{font-size:var(--fs-sm);color:var(--ink-2);margin:0;line-height:1.7}

/* ---- Quotes ---- */
.c-quote{background:var(--surface);border-radius:var(--card-radius);padding:var(--space-6) var(--space-5) var(--space-5);border:1px solid var(--line);position:relative;display:grid;gap:var(--space-4)}
.c-quote::before{content:"”";position:absolute;top:-8px;inset-inline-end:var(--space-5);font-size:6rem;line-height:1;color:var(--brand-100);font-weight:var(--fw-black)}
.c-quote p{font-size:var(--fs-md);color:var(--ink);margin:0;font-weight:var(--fw-medium)}
.c-quote footer{display:flex;align-items:center;gap:var(--space-3)}
.c-avatar{width:52px;height:52px;border-radius:50%;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;font-weight:var(--fw-black);flex:none}
.c-quote b{display:block;color:var(--secondary)} .c-quote small{color:var(--ink-3)}

/* ---- Projects ---- */
.c-project{display:grid;grid-template-columns:auto 1fr;gap:var(--space-4);align-items:start;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--space-4);transition:all var(--t-base) var(--ease)}
.c-project:hover{border-color:var(--brand);box-shadow:var(--sh-2);transform:translateY(-3px)}
.c-project h3{font-size:var(--fs-md);margin:0 0 .25rem}
.c-project p{font-size:var(--fs-xs);color:var(--ink-3);margin:0;line-height:1.6}

/* ---- Edifices (صروحنا) ---- */
.c-edifice{position:relative;border-radius:var(--card-radius);overflow:hidden;aspect-ratio:4/5;display:flex;align-items:end;color:#fff;isolation:isolate;transition:transform var(--t-base) var(--ease)}
.c-edifice:hover{transform:translateY(-5px);color:#fff}
.c-edifice img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.c-edifice::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 35%,rgba(8,52,59,.95))}
.c-edifice div{padding:var(--space-4)}
.c-edifice b{display:block;font-size:var(--fs-lg);font-weight:var(--fw-black)}
.c-edifice small{opacity:.85}
.c-filter{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center;margin-bottom:var(--space-6)}

/* ---- Contact CTA ---- */
.c-contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-4)}
.c-contact a{display:flex;align-items:center;gap:var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--space-5);color:var(--ink);transition:all var(--t-base)}
.c-contact a:hover{border-color:var(--brand);box-shadow:var(--sh-2);transform:translateY(-3px)}
.c-contact .c-tile__icon{background:var(--brand);color:#fff}
.c-contact b{display:block;color:var(--secondary)} .c-contact small{color:var(--ink-3)}

/* ---- Footer ---- */
.c-footer{background:var(--footer-bg);color:rgba(255,255,255,.8);padding-top:var(--space-8);font-size:var(--fs-sm)}
.c-footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:var(--space-6);padding-bottom:var(--space-7)}
@media(max-width:900px){.c-footer__grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.c-footer__grid{grid-template-columns:1fr}}
.c-footer h4{color:#fff;font-size:var(--fs-md);margin-bottom:var(--space-4)}
.c-footer a{color:rgba(255,255,255,.75);display:block;padding:.2rem 0}
.c-footer a:hover{color:var(--accent)}
.c-footer p{display:flex;gap:.6rem;margin:0 0 .6rem;align-items:start}
.c-footer__bottom{border-top:1px solid rgba(255,255,255,.12);padding-block:var(--space-4);display:flex;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;font-size:var(--fs-xs)}
.c-social{display:flex;gap:var(--space-2)}
.c-social a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.1);display:grid;place-items:center;padding:0}

/* ---- Intro gateway ---- */
.c-intro{min-height:100vh;display:grid;place-items:center;padding:var(--space-6) var(--gutter);background:linear-gradient(180deg,rgba(8,52,59,.55),rgba(12,23,51,.7)),url("../img/intro-bg.jpg") center/cover fixed}
.c-intro__card{width:min(1080px,100%);background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.32);backdrop-filter:blur(22px) saturate(1.2);border-radius:var(--r-xl);padding:clamp(1.5rem,4vw,3rem);color:#fff;box-shadow:0 30px 80px -20px rgba(0,0,0,.5)}
.c-intro__head{text-align:center;margin-bottom:var(--space-6)}
.c-intro__head img{height:92px;margin:0 auto var(--space-4)}
.c-intro__head h1{color:#fff;font-size:var(--fs-3xl);margin-bottom:var(--space-2)}
.c-intro__head p{opacity:.9;margin:0}
.c-orgs{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}
@media(max-width:900px){.c-orgs{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.c-orgs{grid-template-columns:1fr}}
.c-org{display:grid;gap:var(--space-2);align-content:start;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.28);border-radius:var(--r-lg);padding:var(--space-5);color:#fff;transition:all var(--t-base) var(--ease);position:relative;overflow:hidden}
.c-org:hover{transform:translateY(-6px);background:rgba(255,255,255,.2);color:#fff;border-color:var(--accent)}
.c-org .ico{width:52px;height:52px;border-radius:var(--r-md);display:grid;place-items:center;background:var(--accent);color:var(--c-navy-900);font-size:1.5rem}
.c-org b{font-size:var(--fs-lg);font-weight:var(--fw-black)}
.c-org small{opacity:.8;line-height:1.6}
.c-org .num{font-size:var(--fs-2xl);font-weight:var(--fw-black);color:var(--accent);line-height:1}
.c-org--main{grid-column:span 2;background:linear-gradient(120deg,var(--accent),var(--c-gold-300));color:var(--c-navy-900);border:none}
.c-org--main:hover{color:var(--c-navy-900);background:linear-gradient(120deg,var(--c-gold-300),var(--accent))}
.c-org--main .ico{background:var(--c-navy-900);color:var(--accent)}
.c-org--main small{opacity:.85}
@media(max-width:520px){.c-org--main{grid-column:auto}}
.c-intro__foot{text-align:center;margin-top:var(--space-5);font-size:var(--fs-sm)}
.c-intro__foot a{color:#fff;text-decoration:underline}

/* ---- School specifics ---- */
.c-ticker{background:linear-gradient(90deg,var(--brand-600),var(--highlight));color:#fff;overflow:hidden}
.c-ticker .container{display:flex;align-items:center;gap:var(--space-4);min-height:54px}
.c-ticker__label{background:#fff;color:var(--brand-strong);font-weight:var(--fw-black);padding:.3rem 1rem;border-radius:var(--r-pill);white-space:nowrap;font-size:var(--fs-sm);display:inline-flex;gap:.4rem;align-items:center}
.c-ticker__track{display:flex;gap:var(--space-7);white-space:nowrap;animation:tick 40s linear infinite;font-weight:var(--fw-medium)}
.c-ticker__track span::before{content:"•";margin-inline-end:.7rem;color:var(--accent)}
@keyframes tick{from{transform:translateX(0)}to{transform:translateX(50%)}}
@media(prefers-reduced-motion:reduce){.c-ticker__track{animation:none}.c-card,.c-tile,.c-btn{transition:none}}
.c-quick{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--space-4);margin-top:calc(var(--space-8) * -1);position:relative;z-index:2}
@media(max-width:1000px){.c-quick{grid-template-columns:repeat(3,1fr);margin-top:var(--space-5)}}
@media(max-width:560px){.c-quick{grid-template-columns:repeat(2,1fr)}}
.c-quick a{background:var(--surface);border-radius:var(--card-radius);padding:var(--space-5) var(--space-3);display:grid;justify-items:center;gap:var(--space-2);text-align:center;color:var(--ink);font-weight:var(--fw-bold);box-shadow:var(--sh-2);border-bottom:4px solid var(--c);transition:all var(--t-base) var(--ease)}
.c-quick a:hover{transform:translateY(-6px);box-shadow:var(--sh-3);color:var(--ink)}
.c-quick .c-tile__icon{background:color-mix(in srgb,var(--c) 14%,white);color:var(--c)}
.c-catnews{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:var(--space-5)}
.c-cat{background:var(--surface);border-radius:var(--card-radius);border:1px solid var(--line);overflow:hidden}
.c-cat__head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:color-mix(in srgb,var(--c) 10%,white);border-bottom:3px solid var(--c);color:var(--c);font-weight:var(--fw-black);font-size:var(--fs-lg)}
.c-cat ul{list-style:none;margin:0;padding:var(--space-3) var(--space-5) var(--space-4)}
.c-cat li{padding:var(--space-3) 0;border-bottom:1px dashed var(--line-strong)}
.c-cat li:last-child{border:0}
.c-cat li a{color:var(--ink);font-weight:var(--fw-bold);display:block;line-height:1.5}
.c-cat li small{color:var(--ink-3)}
.c-gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:var(--space-3)}
.c-gallery a:first-child{grid-column:span 2;grid-row:span 2}
.c-gallery a{border-radius:var(--r-md);overflow:hidden;position:relative}
.c-gallery img{width:100%;height:100%;object-fit:cover;transition:transform var(--t-slow) var(--ease)}
.c-gallery a:hover img{transform:scale(1.08)}
@media(max-width:700px){.c-gallery{grid-template-columns:repeat(2,1fr)}}
.c-map{border-radius:var(--card-radius);overflow:hidden;min-height:300px;background:repeating-linear-gradient(45deg,var(--brand-50),var(--brand-50) 14px,#fff 14px,#fff 28px);display:grid;place-items:center;color:var(--brand-strong);font-weight:var(--fw-bold);border:1px solid var(--line)}

/* ---- Type-page specifics ---- */
.c-page-hero{position:relative;color:#fff;isolation:isolate;padding-block:var(--space-9) var(--space-8);overflow:hidden}
.c-page-hero .c-hero__bg{z-index:-2}
.c-page-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,color-mix(in srgb,var(--brand-900) 92%,transparent) 20%,color-mix(in srgb,var(--brand-700) 55%,transparent))}
.c-page-hero h1{color:#fff;font-size:var(--fs-4xl);max-width:760px}
.c-page-hero p{font-size:var(--fs-lg);max-width:640px;opacity:.95}
.c-page-hero .actions{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-5)}
.c-program{display:grid;gap:var(--space-2)}
.c-program .meta{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-2)}
.c-steps{counter-reset:s;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4);padding:0;margin:0;list-style:none}
.c-steps li{counter-increment:s;background:var(--surface);border:1px solid var(--line);border-radius:var(--card-radius);padding:var(--space-5);position:relative}
.c-steps li::before{content:counter(s);display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--brand);color:#fff;font-weight:var(--fw-black);margin-bottom:var(--space-3)}
.c-steps b{display:block;color:var(--secondary)}
.c-steps small{color:var(--ink-3)}
.c-logos{display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:center}
.c-logos span{padding:var(--space-4) var(--space-6);border:1px dashed var(--line-strong);border-radius:var(--r-md);color:var(--ink-3);font-weight:var(--fw-bold);background:var(--surface)}
.c-theme-switch{position:fixed;inset-inline-end:16px;bottom:16px;z-index:var(--z-modal);background:var(--c-navy-900);color:#fff;border-radius:var(--r-lg);padding:.6rem;box-shadow:var(--sh-3);display:flex;gap:.3rem;flex-wrap:wrap;max-width:330px;font-size:var(--fs-xs);display:block}
.c-theme-switch summary{cursor:pointer;padding:.2rem .6rem;font-weight:700;list-style:none}.c-theme-switch__list{display:flex;gap:.3rem;flex-wrap:wrap;margin-top:.5rem}
.c-theme-switch a{color:#fff;padding:.3rem .8rem;border-radius:var(--r-pill);background:rgba(255,255,255,.12)}
.c-theme-switch a:hover,.c-theme-switch a.is-current{background:var(--accent);color:var(--c-navy-900)}

/* ==========================================================================
   v1.1  —  "Their suggestion" family: Idara (enterprise) + Intro + Schools upgrade
   ========================================================================== */
.c-sechead h2{color:var(--heading)}
.c-sechead--left{text-align:start;margin-inline:0}
.c-sechead--left h2::after{margin-inline:0}
[data-theme="enterprise"] .c-nav a.is-active{background:#fff;color:var(--secondary);box-shadow:var(--sh-2)}
[data-theme="enterprise"] .c-nav a:hover{background:rgba(255,255,255,.7);color:var(--secondary)}
[data-theme="enterprise"] .c-header{border-bottom:1px solid var(--line)}
.c-header__social{display:flex;gap:var(--space-2)}
.c-header__social a{width:34px;height:34px;border-radius:50%;background:#fff;display:grid;place-items:center;color:var(--ink-2);border:1px solid var(--line-strong)}
.c-header__social a:hover{background:var(--brand);color:#fff;border-color:var(--brand)}
.c-topbar .c-btn-contact{background:#fff;color:var(--brand-strong);font-weight:var(--fw-black);border-radius:var(--r-pill);padding:.25rem 1rem}
.c-topbar__end{display:flex;gap:var(--space-3);align-items:center}

/* --- Hero (idara): stats ride the bottom of the wide picture --- */
.c-hero--idara{min-height:clamp(560px,86vh,800px)}
.c-hero--idara .c-hero__body{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-5);position:absolute;inset:0 0 auto 0;width:min(100% - 2*var(--gutter),var(--container));margin-inline:auto;padding-top:var(--space-6);z-index:1;pointer-events:none}
.c-hero--idara .c-hero__body>*{pointer-events:auto}
.c-hero__logo-frame{background:#fff;border-radius:var(--r-md);padding:var(--space-2);box-shadow:var(--sh-3);border:3px solid var(--c-plum-700);width:clamp(96px,11vw,150px);transform:rotate(-1.5deg)}
.c-hero__logo-frame img{width:100%;height:auto}
.c-hero__slogan-block{display:grid;gap:var(--space-3);justify-items:start;max-width:560px;background:linear-gradient(135deg,rgba(50,31,53,.78),rgba(14,127,137,.55));backdrop-filter:blur(8px);border-radius:var(--r-lg);padding:var(--space-5) var(--space-6);border:1px solid rgba(255,255,255,.25);color:#fff}
.c-hero__slogan-block small{font-weight:var(--fw-bold);opacity:.9}
.c-hero__slogan-block h1{color:#fff;font-size:var(--fs-4xl);margin:0;line-height:1.1}
.c-hero__slogan-block h1 span{color:var(--accent)}
.c-hero__slogan-block p{margin:0;opacity:.92}
.c-hero--idara .c-hero__tail{padding-bottom:var(--space-6);position:relative;z-index:1}
.c-hero--idara .c-hero__stats{padding-bottom:0}
.c-hero--idara .c-stat{background:rgba(255,255,255,.62);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.8);border-radius:var(--r-xl);padding:var(--space-5) var(--space-4);box-shadow:var(--sh-3)}
.c-hero--idara .c-stat b{color:var(--stat-ink);font-size:clamp(2.2rem,1.4rem + 3.2vw,3.8rem);letter-spacing:.01em}
.c-hero--idara .c-stat span{color:var(--brand-600);font-weight:var(--fw-black);font-size:var(--fs-xl)}
.c-hero--idara .c-stat:hover{background:rgba(255,255,255,.85)}
.c-hero--idara .c-stat:nth-child(1){border-bottom:5px solid var(--c-cyan-400)}
.c-hero--idara .c-stat:nth-child(2){border-bottom:5px solid var(--c-violet-500)}
.c-hero--idara .c-stat:nth-child(3){border-bottom:5px solid var(--accent)}
.c-hero--idara .c-stat:nth-child(4){border-bottom:5px solid var(--c-green-400)}
@media(max-width:760px){.c-hero--idara .c-hero__body{flex-direction:column-reverse;align-items:center;position:relative;padding-top:var(--space-5)}.c-hero--idara{min-height:0}}

/* --- Forum band --- */
.c-band{background:var(--secondary);color:#fff;text-align:center;padding:var(--space-4) 0}
.c-band h2{color:#fff;margin:0;font-size:var(--fs-3xl)}
.c-forum{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:var(--space-5)}
.c-forum a{background:#fff;border-radius:var(--r-md);box-shadow:var(--sh-2);padding:var(--space-6) var(--space-5) var(--space-5);text-align:center;display:grid;gap:var(--space-3);justify-items:center;border-bottom:6px solid var(--brand);color:var(--ink);transition:transform var(--t-base) var(--ease)}
.c-forum a:nth-child(even){border-bottom-color:var(--secondary)}
.c-forum a:hover{transform:translateY(-6px);color:var(--ink)}
.c-forum .ico{width:68px;height:68px;border-radius:50%;background:#E6F0FF;color:var(--c-link-blue);display:grid;place-items:center;font-size:1.8rem}
.c-forum h3{margin:0;font-size:var(--fs-lg);color:var(--secondary)}
.c-forum p{margin:0;color:var(--ink-3);font-size:var(--fs-sm);line-height:1.7}

/* --- News: 4 tall photo panels with a big word, as in their layout --- */
.c-panels{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-radius:var(--r-md);overflow:hidden;box-shadow:var(--sh-3)}
@media(max-width:900px){.c-panels{grid-template-columns:repeat(2,1fr)}}
.c-panel-news{position:relative;min-height:380px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#fff;isolation:isolate;padding:var(--space-5);overflow:hidden}
.c-panel-news img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform var(--t-slow) var(--ease)}
.c-panel-news::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(50,31,53,.2),rgba(50,31,53,.82));transition:background var(--t-base)}
.c-panel-news:hover img{transform:scale(1.08)}
.c-panel-news:hover::after{background:linear-gradient(180deg,rgba(14,127,137,.35),rgba(14,127,137,.9))}
.c-panel-news h3{color:#fff;font-size:var(--fs-3xl);margin:0 0 var(--space-3);text-shadow:0 2px 12px rgba(0,0,0,.5)}
.c-panel-news p{margin:0 0 var(--space-4);font-size:var(--fs-sm);opacity:.95;max-width:220px}
.c-panel-news .more{border:2px solid #fff;border-radius:var(--r-xs);padding:.2rem 1.2rem;font-weight:var(--fw-bold);opacity:0;transform:translateY(8px);transition:all var(--t-base)}
.c-panel-news:hover .more,.c-panel-news:focus-visible .more{opacity:1;transform:none}
.c-panel-news time{font-size:var(--fs-xs);opacity:.85;margin-bottom:var(--space-2)}
.c-news-more{display:flex;justify-content:center;gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap}

/* --- Calendar banner (date block + photo) --- */
.c-datebanner{display:grid;grid-template-columns:1fr 1fr;min-height:200px;overflow:hidden}
@media(max-width:760px){.c-datebanner{grid-template-columns:1fr}}
.c-datebanner__date{background:var(--c-cyan-500);color:var(--c-plum-900);display:flex;align-items:center;justify-content:center;gap:var(--space-5);padding:var(--space-5);font-weight:var(--fw-black);line-height:1}
.c-datebanner__date .d{font-size:clamp(5rem,12vw,9rem);color:var(--c-plum-900)}
.c-datebanner__date .m{display:grid;gap:var(--space-2)}
.c-datebanner__date .m b{font-size:clamp(2rem,5vw,3.4rem)}
.c-datebanner__date .m span{font-size:var(--fs-lg);background:var(--c-plum-900);color:#fff;padding:.2rem .8rem;border-radius:var(--r-xs);display:inline-block}
.c-datebanner__date .y{font-size:clamp(2rem,5vw,3.6rem);writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.05em}
.c-datebanner__photo{position:relative;background:#000}
.c-datebanner__photo img{width:100%;height:100%;object-fit:cover;opacity:.9}
.c-datebanner__photo b{position:absolute;top:0;inset-inline-end:0;background:#fff;color:var(--c-plum-900);font-size:var(--fs-3xl);padding:.2rem 1.4rem;border-end-start-radius:var(--r-md);border-start-start-radius:0}

/* --- Calendar v2: plum weekday row, yellow weekends, green events --- */
.c-cal2{background:#fff;border-radius:var(--r-md);overflow:hidden;box-shadow:var(--sh-2);border:1px solid var(--line-strong)}
.c-cal2__head{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);background:var(--c-plum-900);color:#fff}
.c-cal2__head h3{color:#fff;margin:0;font-size:var(--fs-lg)}
.c-cal2__head small{opacity:.75;font-weight:var(--fw-medium)}
.c-cal2__nav{display:flex;gap:6px}
.c-cal2__nav button{width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:rgba(255,255,255,.1);color:#fff;cursor:pointer;font:inherit}
.c-cal2__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--line-strong)}
.c-cal2__dow{background:var(--c-plum-900);color:#fff;font-weight:var(--fw-black);text-align:center;padding:.4rem 0;font-size:var(--fs-sm)}
.c-cal2__dow.is-weekend{background:var(--c-yellow-400);color:var(--c-plum-900)}
.c-cal2__day{background:#ECEFF2;min-height:74px;padding:.3rem .45rem;font-weight:var(--fw-black);color:var(--c-ink-navy);font-size:var(--fs-md);display:flex;flex-direction:column;gap:2px;position:relative}
.c-cal2__day.is-out{background:#DCDDF3;color:transparent}
.c-cal2__day.is-weekend{background:var(--c-yellow-400)}
.c-cal2__day.is-event{background:var(--c-green-400)}
.c-cal2__day.is-today{box-shadow:inset 0 0 0 3px var(--c-violet-500)}
.c-cal2__day em{font-style:normal;font-size:.72rem;line-height:1.25;font-weight:var(--fw-bold);color:var(--c-plum-900);text-align:center;margin:auto 0 0}
@media(max-width:600px){.c-cal2__day{min-height:46px}.c-cal2__day em{display:none}}
.c-upcoming{background:#fff;border-radius:var(--r-md);box-shadow:var(--sh-2);border:1px solid var(--line-strong);padding:var(--space-4);display:grid;gap:var(--space-3)}
.c-upcoming__head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap}
.c-upcoming__head h3{margin:0;font-size:var(--fs-lg)}
.c-pillbtn{border:1.5px solid var(--c-link-blue);color:var(--c-link-blue);background:#fff;border-radius:var(--r-sm);padding:.15rem .8rem;font:inherit;font-size:var(--fs-xs);font-weight:var(--fw-bold)}
.c-pillbtn.is-active{background:var(--c-link-blue);color:#fff}
.c-upcoming__item{display:grid;grid-template-columns:78px 1fr;border-radius:var(--r-md);overflow:hidden;box-shadow:var(--sh-1);border:1px solid var(--line)}
.c-upcoming__item time{background:linear-gradient(160deg,var(--c-violet-500),#8D6BC9);color:#fff;text-align:center;padding:.7rem 0;line-height:1.15}
.c-upcoming__item time b{display:block;font-size:var(--fs-2xl);font-weight:var(--fw-black)}
.c-upcoming__item time small{display:block;font-size:.72rem;opacity:.9}
.c-upcoming__item div{padding:.6rem 1rem;display:grid;gap:.3rem;justify-items:start}
.c-upcoming__item .tag{background:var(--c-link-blue);color:#fff;border-radius:var(--r-pill);padding:.05rem .8rem;font-size:var(--fs-xs);font-weight:var(--fw-bold)}
.c-upcoming__item h4{margin:0;font-size:var(--fs-md);color:var(--c-plum-900)}
.c-cal-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:var(--space-5);align-items:start}
@media(max-width:1000px){.c-cal-grid{grid-template-columns:1fr}}
.c-pubshow{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}
.c-pubshow a{background:#fff;border-radius:var(--r-md);box-shadow:var(--sh-2);overflow:hidden;color:var(--ink);transition:transform var(--t-base) var(--ease);display:grid}
.c-pubshow a:hover{transform:translateY(-5px);color:var(--ink)}
.c-pubshow .cover{aspect-ratio:4/3;background:var(--c-plum-700);position:relative}
.c-pubshow .cover img{width:100%;height:100%;object-fit:cover}
.c-pubshow .cover span{position:absolute;inset-inline-start:var(--space-3);top:var(--space-3);background:var(--accent);color:var(--c-plum-900);font-weight:var(--fw-black);font-size:var(--fs-xs);padding:.1rem .7rem;border-radius:var(--r-pill)}
.c-pubshow h4{margin:var(--space-3) var(--space-3) 0;font-size:var(--fs-md);color:var(--c-plum-900)}
.c-pubshow p{margin:.1rem var(--space-3) var(--space-3);font-size:var(--fs-xs);color:var(--ink-3)}

/* --- Results / Awards in new palette --- */
.c-panel--teal{border:2px solid var(--c-cyan-400);box-shadow:none;border-radius:var(--r-lg)}
.section--plum{background:linear-gradient(160deg,var(--c-plum-900),var(--c-plum-700));color:#fff;position:relative;overflow:hidden}
.section--plum::before{content:"";position:absolute;inset:0;background:url("../img/pattern-geo.jpg") center/420px;opacity:.07}
.section--plum>*{position:relative}
.section--plum h2,.section--plum h3{color:#fff}
.section--plum .c-sechead h2{color:#fff}
.section--plum .c-sechead p{color:rgba(255,255,255,.8)}
.section--plum .c-sechead__eyebrow{color:var(--accent)}
.c-toppers .rank{background:var(--c-cyan-500)}
.c-toppers li:first-child .rank{background:var(--accent);color:var(--c-plum-900)}

/* --- صروحنا: map + regional circles --- */
.c-regions{position:relative;padding:var(--space-7) 0;background:var(--surface-2) url("../img/world-dots.svg") center/cover no-repeat}
.c-regions__row{display:flex;flex-wrap:wrap;gap:var(--space-5);justify-content:center}
.c-region{width:clamp(130px,16vw,170px);aspect-ratio:1;border-radius:50%;background:var(--c-cyan-400);color:var(--c-plum-900);display:grid;place-content:center;text-align:center;font-weight:var(--fw-black);font-size:var(--fs-xl);line-height:1.2;box-shadow:var(--sh-2);transition:all var(--t-base) var(--ease);padding:var(--space-3);position:relative}
.c-region small{display:block;font-size:var(--fs-xs);font-weight:var(--fw-bold);color:#fff;margin-top:.2rem}
.c-region:hover{transform:translateY(-8px) scale(1.04);background:var(--c-violet-500);color:#fff}
.c-region:hover small{color:var(--accent)}
.c-regionstat{text-align:center;color:var(--ink-2);margin-bottom:var(--space-6)}
.c-regionstat b{color:var(--c-green-600)}

/* --- Platform / quote / contact restyle --- */
.c-platform__logo{border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff,var(--brand-100));width:84px;height:84px;color:var(--brand-700)}
.c-platform .c-btn--ghost{border-color:var(--c-link-blue);color:var(--c-link-blue)}
.c-platform .c-btn--ghost:hover{background:var(--c-link-blue);color:#fff}
.c-quote--photo{padding:0;border:0;overflow:hidden;min-height:340px;align-content:end;color:#fff;isolation:isolate;background:linear-gradient(180deg,#9CB6EA,var(--c-violet-600));border-radius:var(--r-md)}
.c-quote--photo::before{display:none}
.c-quote--photo .ph{position:absolute;inset:0 0 40%;display:grid;place-items:center;z-index:-1;font-size:7rem;font-weight:var(--fw-black);color:rgba(255,255,255,.25)}
.c-quote--photo p{color:#fff;font-style:italic;text-align:center;padding:var(--space-5) var(--space-5) var(--space-2);background:linear-gradient(180deg,transparent,rgba(50,31,53,.7) 30%)}
.c-quote--photo footer{justify-content:center;padding:0 var(--space-5) var(--space-5);background:rgba(50,31,53,.7)}
.c-quote--photo b{color:#fff}.c-quote--photo small{color:rgba(255,255,255,.8)}
.c-quote--photo .c-avatar{background:rgba(255,255,255,.2);color:#fff}
.c-contact3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-5);max-width:900px;margin-inline:auto}
.c-contact3 a{background:#fff;border-radius:var(--r-md);box-shadow:var(--sh-2);padding:var(--space-6) var(--space-4);display:grid;justify-items:center;gap:var(--space-3);text-align:center;color:var(--ink-2);transition:transform var(--t-base) var(--ease)}
.c-contact3 a:hover{transform:translateY(-5px)}
.c-contact3 .ring{width:92px;height:92px;border-radius:50%;border:3px solid #2B4BB5;color:#2B4BB5;display:grid;place-items:center;font-size:2.2rem}
.c-contact3 b{color:#2B4BB5;font-size:var(--fs-xl);letter-spacing:.04em;text-transform:uppercase}
.c-footer{background:linear-gradient(180deg,var(--c-plum-700),var(--c-plum-900))}
.c-footer a:hover{color:var(--accent)}
.c-footer__grid h4{color:#fff}
.c-footer p .ic{color:var(--c-green-400)}

/* ==========================================================================
   Intro v2 — gateway distribution
   ========================================================================== */
.c-gate{min-height:100vh;position:relative;isolation:isolate;display:grid;grid-template-rows:auto 1fr auto;color:#fff;overflow:hidden}
.c-gate__bg{position:absolute;inset:0;z-index:-2;background:url("../img/hero-assembly.jpg") center/cover}
.c-gate::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(21,154,163,.35) 0%,rgba(50,31,53,.78) 55%,rgba(50,31,53,.95) 100%)}
.c-gate__top{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--gutter);gap:var(--space-4);flex-wrap:wrap}
.c-gate__top a{color:#fff;font-weight:var(--fw-bold);font-size:var(--fs-sm);background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.4);border-radius:var(--r-pill);padding:.35rem 1rem;backdrop-filter:blur(8px)}
.c-gate__main{width:min(1180px,100% - 2*var(--gutter));margin:0 auto;display:grid;gap:var(--space-6);align-content:center;padding-block:var(--space-6)}
.c-gate__head{text-align:center;display:grid;justify-items:center;gap:var(--space-3)}
.c-gate__logo{width:104px;background:#fff;border-radius:var(--r-md);padding:6px;border:3px solid var(--c-plum-700);box-shadow:var(--sh-3)}
.c-gate__head h1{color:#fff;font-size:var(--fs-4xl);margin:0}
.c-gate__head h1 span{color:var(--accent)}
.c-gate__head p{margin:0;font-size:var(--fs-lg);opacity:.92;max-width:640px}
.c-gate__stats{display:flex;gap:var(--space-4);flex-wrap:wrap;justify-content:center}
.c-gate__stats span{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.45);border-radius:var(--r-pill);padding:.25rem 1rem;font-weight:var(--fw-bold);font-size:var(--fs-sm);backdrop-filter:blur(8px)}
.c-gate__stats b{color:var(--accent);font-size:var(--fs-lg);margin-inline-end:.3rem}
.c-gate__grid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--space-4)}
.c-door{--c:var(--c-cyan-400);grid-column:span 3;position:relative;overflow:hidden;background:rgba(255,255,255,.94);border-radius:var(--r-lg);color:var(--c-plum-900);display:grid;gap:var(--space-2);align-content:start;padding:var(--space-5);box-shadow:var(--sh-3);border-top:6px solid var(--c);transition:all var(--t-base) var(--ease);min-height:170px}
.c-door:hover{transform:translateY(-8px);color:var(--c-plum-900);box-shadow:0 24px 50px -12px rgba(0,0,0,.5)}
.c-door .ico{width:56px;height:56px;border-radius:var(--r-md);background:color-mix(in srgb,var(--c) 22%,white);color:color-mix(in srgb,var(--c) 70%,#000);display:grid;place-items:center;font-size:1.6rem}
.c-door b{font-size:var(--fs-xl);font-weight:var(--fw-black);color:var(--c-plum-900)}
.c-door small{color:var(--ink-2);line-height:1.6}
.c-door .num{position:absolute;inset-inline-end:var(--space-4);top:var(--space-3);font-size:3.2rem;font-weight:var(--fw-black);color:color-mix(in srgb,var(--c) 40%,white);line-height:1}
.c-door .go{margin-top:auto;font-weight:var(--fw-bold);font-size:var(--fs-sm);color:var(--c-link-blue);display:inline-flex;align-items:center;gap:.4rem}
.c-door--main{grid-column:span 6;background:linear-gradient(120deg,var(--c-yellow-400),var(--c-yellow-300));border-top-color:var(--c-plum-700);min-height:190px}
.c-door--main .ico{background:var(--c-plum-900);color:var(--c-yellow-400)}
.c-door--main small{color:var(--c-plum-900);opacity:.85}
.c-door--wide{grid-column:span 4}
@media(max-width:1000px){.c-door,.c-door--wide{grid-column:span 6}.c-door--main{grid-column:span 12}}
@media(max-width:600px){.c-door,.c-door--wide,.c-door--main{grid-column:span 12}}
.c-gate__foot{text-align:center;padding:var(--space-4);font-size:var(--fs-sm);opacity:.9}
.c-gate__foot a{color:#fff;text-decoration:underline}

/* ==========================================================================
   Schools upgrade
   ========================================================================== */
.c-hero--school{min-height:clamp(540px,82vh,760px)}
.c-hero--school .c-hero__body{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--space-6);align-items:end;padding-bottom:calc(var(--space-9) + var(--space-5))}
@media(max-width:900px){.c-hero--school .c-hero__body{grid-template-columns:1fr}}
.c-hero--school h1{font-size:var(--fs-4xl);max-width:760px}
.c-hero__dots{display:flex;gap:8px;margin-top:var(--space-3)}
.c-hero__dots i{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.4)}
.c-hero__dots i.on{width:34px;border-radius:var(--r-pill);background:var(--accent)}
.c-glass{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(14px);border-radius:var(--r-lg);padding:var(--space-5);display:grid;gap:var(--space-3)}
.c-glass h3{color:#fff;margin:0;font-size:var(--fs-lg)}
.c-glass a.item{display:grid;grid-template-columns:70px 1fr;gap:var(--space-3);align-items:center;color:#fff;border-radius:var(--r-sm);transition:background var(--t-fast)}
.c-glass a.item:hover{background:rgba(255,255,255,.14)}
.c-glass a.item img{width:70px;height:56px;border-radius:var(--r-sm);object-fit:cover}
.c-glass a.item b{font-size:var(--fs-sm);line-height:1.4}
.c-glass a.item small{display:block;opacity:.75}
.c-ticker{background:linear-gradient(90deg,var(--brand-600),var(--highlight))}
.c-quick--round a{border-bottom:0;border-radius:var(--r-xl);padding:var(--space-5) var(--space-3) var(--space-4);background:#fff;position:relative}
.c-quick--round .c-tile__icon{width:72px;height:72px;border-radius:50%;background:var(--c);color:#fff;font-size:1.9rem;box-shadow:0 10px 20px -6px color-mix(in srgb,var(--c) 70%,transparent)}
.c-strip{display:grid;grid-template-columns:repeat(4,1fr);background:linear-gradient(120deg,var(--brand-700),var(--c-plum-700));border-radius:var(--r-xl);color:#fff;overflow:hidden;box-shadow:var(--sh-3)}
@media(max-width:700px){.c-strip{grid-template-columns:repeat(2,1fr)}}
.c-strip div{padding:var(--space-5) var(--space-4);text-align:center;border-inline-start:1px solid rgba(255,255,255,.18)}
.c-strip div:first-child{border:0}
.c-strip b{display:block;font-size:var(--fs-3xl);font-weight:var(--fw-black);color:var(--accent);line-height:1.1}
.c-strip span{font-weight:var(--fw-bold)}
.c-news-s{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--space-5)}
@media(max-width:900px){.c-news-s{grid-template-columns:1fr}}
.c-portal{display:grid;grid-template-columns:1fr auto;align-items:center;gap:var(--space-5);background:linear-gradient(120deg,var(--c-violet-500),var(--brand-600));color:#fff;border-radius:var(--r-xl);padding:var(--space-6);position:relative;overflow:hidden;box-shadow:var(--sh-3)}
.c-portal::after{content:"";position:absolute;inset-inline-start:-60px;bottom:-80px;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.1)}
.c-portal h2{color:#fff;margin:0 0 var(--space-2);font-size:var(--fs-2xl)}
.c-portal p{margin:0;opacity:.92}
.c-portal .acts{display:flex;gap:var(--space-3);flex-wrap:wrap;position:relative;z-index:1}
@media(max-width:760px){.c-portal{grid-template-columns:1fr}}
.c-staff{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-5)}
.c-staff figure{margin:0;background:#fff;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-2);text-align:center;transition:transform var(--t-base) var(--ease)}
.c-staff figure:hover{transform:translateY(-6px)}
.c-staff .pic{aspect-ratio:1;display:grid;place-items:center;font-size:4rem;font-weight:var(--fw-black);color:#fff;background:linear-gradient(135deg,var(--c,var(--brand-500)),color-mix(in srgb,var(--c,var(--brand-500)) 60%,#000))}
.c-staff figcaption{padding:var(--space-3) var(--space-3) var(--space-4)}
.c-staff b{display:block;color:var(--secondary)}
.c-staff small{color:var(--ink-3)}
.c-sport{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-4)}
.c-sport span{display:grid;justify-items:center;gap:var(--space-2);padding:var(--space-4);border-radius:var(--r-lg);background:#fff;box-shadow:var(--sh-1);font-weight:var(--fw-bold);color:var(--secondary);text-align:center}
.c-sport .c-tile__icon{background:var(--brand-soft)}
.c-video{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:16/9;display:grid;place-items:center;color:#fff;isolation:isolate}
.c-video img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.c-video::after{content:"";position:absolute;inset:0;background:rgba(50,31,53,.45);z-index:-1}
.c-video .play{width:84px;height:84px;border-radius:50%;background:var(--accent);color:var(--c-plum-900);display:grid;place-items:center;font-size:2rem;box-shadow:0 0 0 12px rgba(255,255,255,.25)}
.c-form{display:grid;gap:var(--space-3)}
.c-form input,.c-form textarea{font:inherit;padding:.8rem 1rem;border:1.5px solid var(--line-strong);border-radius:var(--r-sm);background:#fff;width:100%}
.c-form input:focus,.c-form textarea:focus{outline:none;border-color:var(--brand);box-shadow:var(--focus)}
.c-sectitle-bar{background:var(--secondary);color:#fff;text-align:center;padding:var(--space-3) 0}
.c-sectitle-bar h2{color:#fff;margin:0;font-size:var(--fs-2xl)}
