/* =========================================================
   QARAR Enterprise v17.0 — Unified Design System
   Media Center (.qmc) intentionally preserved.
   ========================================================= */
:root{
  --qarar-primary:#be1622;
  --qarar-primary-700:#9f111b;
  --qarar-primary-100:#fbe9eb;
  --qarar-gray-950:#30343a;
  --qarar-gray-900:#3b4047;
  --qarar-gray-800:#4a5058;
  --qarar-gray-700:#626a74;
  --qarar-gray-600:#77808b;
  --qarar-gray-500:#949ca6;
  --qarar-gray-300:#d8dce1;
  --qarar-gray-200:#e8eaed;
  --qarar-gray-100:#f3f4f6;
  --qarar-gray-50:#f8f9fa;
  --qarar-surface:#fff;
  --qarar-radius-sm:8px;
  --qarar-radius-md:14px;
  --qarar-radius-lg:22px;
  --qarar-shadow-sm:0 6px 18px rgba(59,64,71,.06);
  --qarar-shadow-md:0 14px 38px rgba(59,64,71,.10);
  --qarar-shadow-lg:0 28px 70px rgba(59,64,71,.14);
  --qarar-ease:cubic-bezier(.2,.7,.2,1);
  --red:#be1622;
  --red2:#9f111b;
  --ink:#3b4047;
  --ink2:#4a5058;
  --muted:#77808b;
  --soft:#f3f4f6;
  --line:#e2e5e9;
  --shadow:var(--qarar-shadow-lg);
  --qarar-brand-red:#be1622;
  --qarar-brand-red-dark:#9f111b;
  --qarar-brand-dark:#3b4047;
}

body{color:var(--qarar-gray-900);background:var(--qarar-surface);font-feature-settings:"kern" 1,"liga" 1}
body :where(h1,h2,h3,h4,h5,h6){color:var(--qarar-gray-950);letter-spacing:-.015em}
body :where(p,li){color:var(--qarar-gray-700)}
body :where(a,button,input,select,textarea){transition:color .22s var(--qarar-ease),background-color .22s var(--qarar-ease),border-color .22s var(--qarar-ease),box-shadow .22s var(--qarar-ease),transform .22s var(--qarar-ease)}

/* Header remains brand-led; blacks become charcoal gray. */
.qarar-v7-header{background:linear-gradient(135deg,var(--qarar-primary),#ca2732 58%,var(--qarar-primary-700));box-shadow:0 10px 30px rgba(59,64,71,.12)}
.qarar-v7-header.is-scrolled{box-shadow:0 14px 35px rgba(59,64,71,.18)}
.tagline-bar,.qarar-v6-header .primary-nav{background:var(--qarar-gray-900)!important}

/* Institutional internal sidebar */
body:not(.page-template-page-media-center) .institutional-sidebar,
body:not(.page-template-page-media-center) .inner-side-nav{background:var(--qarar-gray-50);border:1px solid var(--qarar-gray-200);box-shadow:var(--qarar-shadow-sm)}
body:not(.page-template-page-media-center) .institutional-sidebar__head,
body:not(.page-template-page-media-center) .sidebar-section-head,
body:not(.page-template-page-media-center) .inner-side-nav .side-nav-head{background:linear-gradient(145deg,var(--qarar-gray-800),var(--qarar-gray-900));color:#fff}
body:not(.page-template-page-media-center) .institutional-sidebar a,
body:not(.page-template-page-media-center) .inner-side-nav a{color:var(--qarar-gray-800);border-color:var(--qarar-gray-200);background:transparent}
body:not(.page-template-page-media-center) .institutional-sidebar a:hover,
body:not(.page-template-page-media-center) .institutional-sidebar a.is-active,
body:not(.page-template-page-media-center) .inner-side-nav a:hover,
body:not(.page-template-page-media-center) .inner-side-nav a.is-active{background:var(--qarar-primary);color:#fff;box-shadow:none}

/* Unified headings and page rhythm */
.internal-heading{background:linear-gradient(180deg,var(--qarar-gray-50),#fff);border-bottom:1px solid var(--qarar-gray-200)}
.internal-heading h1,.section-heading-v3 h2{color:var(--qarar-gray-950)}
.section-kicker,.internal-heading .kicker{color:var(--qarar-primary)}
.internal-layout{gap:44px}
.section-page-content,.entry-content{font-size:17px;line-height:2}

/* Buttons */
.btn,.button,button[type=submit],input[type=submit],.wp-element-button{border-radius:var(--qarar-radius-sm);font-weight:800;box-shadow:none}
.btn-primary,.button-primary,button[type=submit],input[type=submit],.wp-element-button{background:var(--qarar-primary);border-color:var(--qarar-primary);color:#fff}
.btn-primary:hover,.button-primary:hover,button[type=submit]:hover,input[type=submit]:hover,.wp-element-button:hover{background:var(--qarar-primary-700);border-color:var(--qarar-primary-700);transform:translateY(-1px);box-shadow:0 10px 22px rgba(190,22,34,.18)}
.btn-secondary,.btn-outline{background:#fff;color:var(--qarar-gray-800);border-color:var(--qarar-gray-300)}
.btn-secondary:hover,.btn-outline:hover{color:var(--qarar-primary);border-color:var(--qarar-primary);background:var(--qarar-primary-100)}

/* Cards outside Media Center */
body:not(.page-template-page-media-center) :where(.content-card,.program-card-v3,.partner-card,.qarar-card,.event-card,.job-card,.publication-card,.project-card){border-color:var(--qarar-gray-200);border-radius:var(--qarar-radius-md);box-shadow:var(--qarar-shadow-sm);background:#fff}
body:not(.page-template-page-media-center) :where(.content-card,.program-card-v3,.partner-card,.qarar-card,.event-card,.job-card,.publication-card,.project-card):hover{transform:translateY(-5px);box-shadow:var(--qarar-shadow-md);border-color:#cfd4da}
.program-card-v3:hover{background:linear-gradient(145deg,var(--qarar-gray-800),var(--qarar-gray-900));color:#fff}
.knowledge-v3{background:linear-gradient(145deg,var(--qarar-gray-800),var(--qarar-gray-950))}
.bento-media{background:linear-gradient(145deg,var(--qarar-gray-700),var(--qarar-gray-900))}

/* Forms */
body:not(.page-template-page-media-center) :where(input[type=text],input[type=email],input[type=tel],input[type=url],input[type=date],input[type=time],input[type=number],input[type=file],select,textarea){border:1px solid var(--qarar-gray-300);border-radius:var(--qarar-radius-sm);background:#fff;color:var(--qarar-gray-900);min-height:48px;padding:11px 14px;outline:0}
body:not(.page-template-page-media-center) :where(input,select,textarea):focus{border-color:var(--qarar-primary);box-shadow:0 0 0 3px rgba(190,22,34,.10)}
body:not(.page-template-page-media-center) label{color:var(--qarar-gray-800);font-weight:700}

/* Tables, notices, pagination */
body:not(.page-template-page-media-center) table{border-color:var(--qarar-gray-200)}
body:not(.page-template-page-media-center) th{background:var(--qarar-gray-100);color:var(--qarar-gray-900)}
body:not(.page-template-page-media-center) :where(.notice,.alert,.empty-state){border-color:var(--qarar-gray-300);background:var(--qarar-gray-50);border-radius:var(--qarar-radius-md)}
body:not(.page-template-page-media-center) :where(.page-numbers,.pagination a){border-color:var(--qarar-gray-300);color:var(--qarar-gray-700)}
body:not(.page-template-page-media-center) :where(.page-numbers.current,.pagination a:hover){background:var(--qarar-primary);border-color:var(--qarar-primary);color:#fff}

/* Project Portal harmonization, without changing its architecture. */
.project-portal{--pp-red:#be1622;--pp-red-dark:#9f111b;--pp-ink:#3b4047;--pp-muted:#77808b;--pp-line:#e2e5e9}
.project-portal-head{background:linear-gradient(180deg,#f8f9fa,#fff)}
.project-portal h1,.project-section-content>h2,.project-content-hub h2,.project-related-grid h4{color:var(--qarar-gray-950)}
.project-vision-grid>div{background:linear-gradient(145deg,var(--qarar-gray-700),var(--qarar-gray-900))}
.project-info-card-title{background:linear-gradient(145deg,var(--qarar-gray-700),var(--qarar-gray-900))}
.project-portal-nav{box-shadow:0 8px 28px rgba(59,64,71,.055)}
.project-impact-strip>div,.project-component-card,.project-related-grid article,.project-info-card,.project-timeline-card,.project-share-card{box-shadow:var(--qarar-shadow-sm)}

/* Footer: charcoal rather than near-black. */
.site-footer,.footer-main{background:linear-gradient(145deg,var(--qarar-gray-800),var(--qarar-gray-950));color:#fff}
.site-footer p,.site-footer li,.footer-main p,.footer-main li{color:rgba(255,255,255,.72)}
.site-footer a:hover,.footer-main a:hover{color:#fff}

/* Focus and accessibility */
:focus-visible{outline:3px solid rgba(190,22,34,.45);outline-offset:3px}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

@media(max-width:780px){
  body:not(.page-template-page-media-center) .institutional-sidebar,
  body:not(.page-template-page-media-center) .inner-side-nav{box-shadow:none;border-width:0 0 2px;background:transparent}
  body:not(.page-template-page-media-center) .inner-side-nav a{background:var(--qarar-gray-100);border-radius:var(--qarar-radius-sm)}
  .internal-layout{gap:26px}
}
