/* =========================================================
   M2A GROUP — MASTER VISUAL & MICRO-INTERACTION SYSTEM V3
   Shared by Arabic and English master templates.
   Depends on master-tokens.css. No structural layout rules live here.
   ========================================================= */

/* ---------- Atmospheric canvas ---------- */
body.m2a-master-template{
  background:
    radial-gradient(circle at 11% 7%,rgba(56,189,248,.075),transparent 28%),
    radial-gradient(circle at 88% 12%,rgba(212,175,55,.105),transparent 29%),
    radial-gradient(circle at 54% 72%,rgba(56,189,248,.030),transparent 34%),
    linear-gradient(145deg,var(--m2a-bg) 0%,var(--m2a-bg-navy) 48%,var(--m2a-bg) 100%) !important;
  color:var(--m2a-text);
  font-weight:var(--m2a-weight-body);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}

html[lang="ar"] body.m2a-master-template{
  font-family:'Cairo',system-ui,sans-serif;
}

html[lang="en"] body.m2a-master-template{
  font-family:'Inter','Cairo',system-ui,sans-serif;
}

body.m2a-master-template .page-bg{
  background:
    radial-gradient(circle at 14% 18%,rgba(56,189,248,.095),transparent 31%),
    radial-gradient(circle at 82% 16%,rgba(212,175,55,.125),transparent 29%),
    radial-gradient(circle at 52% 76%,rgba(56,189,248,.04),transparent 34%),
    linear-gradient(145deg,var(--m2a-bg) 0%,var(--m2a-bg-navy) 48%,var(--m2a-bg) 100%) !important;
}

body.m2a-master-template .page-bg::after{
  opacity:.46;
  background-image:
    linear-gradient(rgba(255,255,255,.027) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.027) 1px,transparent 1px) !important;
}

/* ---------- Typography hierarchy ---------- */
body.m2a-master-template :is(h1,.hero h1){
  color:var(--m2a-heading);
  font-weight:var(--m2a-weight-display) !important;
  letter-spacing:-.018em;
  text-shadow:0 0 32px rgba(212,175,55,.065);
}

body.m2a-master-template :is(
  h2,
  .section-head h2,
  .section-copy h2,
  .strength-copy h2,
  .quote-copy h2,
  .contact-card h2
){
  color:var(--m2a-heading);
  font-weight:var(--m2a-weight-heading) !important;
  letter-spacing:-.012em;
  text-shadow:0 0 28px rgba(212,175,55,.055);
}

body.m2a-master-template :is(
  h3,
  .sector-premium-card h3,
  .project-preview-card h3,
  .insight-card h3,
  .value-card b
){
  color:var(--m2a-heading);
  font-weight:var(--m2a-weight-card) !important;
}

body.m2a-master-template :is(p,.hero p,.section-head p,.section-copy p,.strength-copy p,.quote-copy p,.contact-card p){
  color:var(--m2a-muted) !important;
  font-weight:var(--m2a-weight-body);
}

body.m2a-master-template :is(.section-label,.hero-badge,.project-card-number,.sector-card-index){
  font-weight:var(--m2a-weight-label) !important;
}

body.m2a-master-template .section-label{
  color:var(--m2a-sky-soft) !important;
  text-shadow:0 0 18px rgba(56,189,248,.12);
}

body.m2a-master-template .section-label::before{
  background:linear-gradient(90deg,var(--m2a-sky),var(--m2a-gold)) !important;
  box-shadow:var(--m2a-sky-glow);
}

/* ---------- Master header / navigation ---------- */
body.m2a-master-template .m2a-master-header{
  background:rgba(18,20,24,.76) !important;
  border-bottom-color:rgba(255,255,255,.085) !important;
  -webkit-backdrop-filter:blur(22px) saturate(135%) !important;
  backdrop-filter:blur(22px) saturate(135%) !important;
  box-shadow:0 12px 42px rgba(0,0,0,.18) !important;
}

body.m2a-master-template .m2a-master-header.scrolled{
  background:rgba(18,20,24,.93) !important;
  box-shadow:0 16px 54px rgba(0,0,0,.30) !important;
}

body.m2a-master-template .m2a-master-header::before{
  background:linear-gradient(110deg,transparent 24%,rgba(56,189,248,.035) 38%,rgba(212,175,55,.18) 50%,rgba(56,189,248,.035) 62%,transparent 76%) !important;
}

body.m2a-master-template .m2a-master-header .desktop-nav a{
  transition:
    color var(--m2a-motion-fast) var(--m2a-ease),
    border-color var(--m2a-motion-fast) var(--m2a-ease),
    background-color var(--m2a-motion-fast) var(--m2a-ease),
    transform var(--m2a-motion) var(--m2a-ease) !important;
}

body.m2a-master-template .m2a-master-header .desktop-nav a:hover{
  color:var(--m2a-sky-soft) !important;
}

body.m2a-master-template .m2a-master-header .desktop-nav a::after{
  background:linear-gradient(90deg,var(--m2a-sky),var(--m2a-gold)) !important;
  box-shadow:0 0 14px rgba(56,189,248,.26);
}

body.m2a-master-template .m2a-master-header .desktop-nav a.active{
  border-color:var(--m2a-gold-line) !important;
  background:linear-gradient(180deg,rgba(212,175,55,.12),rgba(212,175,55,.055)) !important;
  color:var(--m2a-gold-soft) !important;
  box-shadow:0 0 20px rgba(212,175,55,.08) !important;
}

body.m2a-master-template .language-link{
  background:var(--m2a-surface-soft) !important;
  border-color:var(--m2a-line) !important;
  -webkit-backdrop-filter:blur(14px) saturate(120%);
  backdrop-filter:blur(14px) saturate(120%);
}

/* ---------- Buttons ---------- */
body.m2a-master-template :is(.header-cta,.btn,.language-link){
  transition:
    transform var(--m2a-motion) var(--m2a-ease),
    box-shadow var(--m2a-motion) var(--m2a-ease),
    border-color var(--m2a-motion-fast) var(--m2a-ease),
    filter var(--m2a-motion-fast) var(--m2a-ease) !important;
}

body.m2a-master-template :is(.header-cta,.btn-primary){
  background:linear-gradient(135deg,var(--m2a-gold-deep) 0%,var(--m2a-gold-soft) 52%,var(--m2a-gold) 100%) !important;
  box-shadow:var(--m2a-gold-glow) !important;
}

body.m2a-master-template .btn-outline{
  background:rgba(28,34,45,.54) !important;
  border-color:rgba(56,189,248,.20) !important;
  -webkit-backdrop-filter:blur(14px) saturate(120%);
  backdrop-filter:blur(14px) saturate(120%);
}

body.m2a-master-template .btn-outline:hover{
  color:#EAF8FF !important;
  border-color:rgba(56,189,248,.50) !important;
  box-shadow:var(--m2a-sky-glow),0 16px 42px rgba(0,0,0,.22) !important;
}

/* ---------- Layered glass surfaces ---------- */
body.m2a-master-template :is(
  .hero-stats div,
  .mini-metrics div,
  .value-card,
  .process-step,
  .quote-card,
  .contact-card,
  .contact-channel,
  .contact-address-card,
  .partner-contact-panel,
  .projects-coming-note,
  .articles-bottom-cta,
  .digital-os-screen
){
  background:linear-gradient(145deg,rgba(32,40,53,.78),rgba(25,31,41,.60)) !important;
  border-color:var(--m2a-line) !important;
  -webkit-backdrop-filter:blur(18px) saturate(125%);
  backdrop-filter:blur(18px) saturate(125%);
  box-shadow:var(--m2a-shadow),inset 0 1px 0 rgba(255,255,255,.035) !important;
}

body.m2a-master-template .strength-panel{
  background:
    radial-gradient(circle at 16% 18%,rgba(56,189,248,.085),transparent 34%),
    radial-gradient(circle at 88% 80%,rgba(212,175,55,.095),transparent 36%),
    linear-gradient(145deg,rgba(32,40,53,.73),rgba(24,30,40,.59)) !important;
  border-color:rgba(255,255,255,.105) !important;
  -webkit-backdrop-filter:blur(20px) saturate(120%);
  backdrop-filter:blur(20px) saturate(120%);
  box-shadow:var(--m2a-shadow) !important;
}

body.m2a-master-template :is(
  .sector-premium-card,
  .project-preview-card,
  .insight-card,
  .partner-showcase,
  .value-card,
  .process-step,
  .quote-card,
  .contact-channel,
  .contact-address-card,
  .projects-coming-note,
  .articles-bottom-cta
){
  transition:
    transform var(--m2a-motion) var(--m2a-ease),
    box-shadow var(--m2a-motion) var(--m2a-ease),
    border-color var(--m2a-motion-fast) var(--m2a-ease),
    filter var(--m2a-motion-fast) var(--m2a-ease) !important;
}

body.m2a-master-template :is(.sector-premium-card,.project-preview-card,.insight-card,.partner-showcase){
  border-color:var(--m2a-line) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.28) !important;
}

/* ---------- Technical sky-blue states ---------- */
body.m2a-master-template :is(.project-status i,.m2a-media-live i,.digital-os-status i){
  background:var(--m2a-sky) !important;
  border-color:var(--m2a-sky-soft) !important;
  box-shadow:0 0 0 4px rgba(56,189,248,.08),0 0 18px rgba(56,189,248,.42) !important;
}

body.m2a-master-template :is(.project-status,.m2a-media-live,.digital-os-status){
  border-color:rgba(56,189,248,.16) !important;
}

body.m2a-master-template :is(
  .contact-channel-arrow,
  .partner-site-cta svg,
  .contact-address-card > a,
  .contact-social-links a:hover
){
  color:var(--m2a-sky-soft) !important;
}

/* ---------- Digital OS atmosphere ---------- */
body.m2a-master-template .digital-os-section::before{
  content:"";
  position:absolute;
  inset:10% 0 auto;
  height:72%;
  pointer-events:none;
  background:
    radial-gradient(circle at 74% 40%,rgba(56,189,248,.060),transparent 35%),
    radial-gradient(circle at 28% 60%,rgba(212,175,55,.070),transparent 33%);
}

body.m2a-master-template .digital-os-screen{
  border-color:rgba(212,175,55,.25) !important;
}

body.m2a-master-template .digital-os-status{
  background:rgba(28,34,45,.86) !important;
  border-color:rgba(56,189,248,.18) !important;
  -webkit-backdrop-filter:blur(16px) saturate(120%);
  backdrop-filter:blur(16px) saturate(120%);
}

/* ---------- Footer ---------- */
body.m2a-master-template .m2a-master-footer{
  background:linear-gradient(180deg,rgba(17,26,36,.70),rgba(14,18,24,.93)) !important;
  border-top:1px solid var(--m2a-line) !important;
  -webkit-backdrop-filter:blur(16px) saturate(115%);
  backdrop-filter:blur(16px) saturate(115%);
}

body.m2a-master-template .m2a-master-footer .developer-credit{
  color:#CBD5DF !important;
}

/* =========================================================
   DARK THEME INTEGRITY — MASTER GUARD
   Prevents legacy light surfaces from leaking into V8 master pages.
   ========================================================= */
body.m2a-master-template,
body.m2a-master-template main{
  background-color:var(--m2a-bg) !important;
  color:var(--m2a-text);
}

body.m2a-master-template main > section{
  color:var(--m2a-text);
}

/* Partners: legacy V9 partner CSS contains explicit ivory/white surfaces.
   These selectors intentionally outrank .home-page partner rules. */
body.m2a-master-template.home-page .partners{
  color:var(--m2a-text) !important;
  border-block-color:var(--m2a-line) !important;
  background:
    radial-gradient(circle at 10% 12%,rgba(56,189,248,.075),transparent 28%),
    radial-gradient(circle at 90% 84%,rgba(212,175,55,.085),transparent 30%),
    linear-gradient(145deg,var(--m2a-bg) 0%,var(--m2a-bg-navy) 52%,var(--m2a-bg-deep) 100%) !important;
}

body.m2a-master-template.home-page .partners::before{
  opacity:.42 !important;
  background-image:
    linear-gradient(rgba(226,232,240,.028) 1px,transparent 1px),
    linear-gradient(90deg,rgba(226,232,240,.028) 1px,transparent 1px) !important;
}

body.m2a-master-template.home-page .partners .section-label{
  color:var(--m2a-sky-soft) !important;
}

body.m2a-master-template.home-page .partners .section-label::before{
  background:linear-gradient(90deg,var(--m2a-sky),var(--m2a-gold)) !important;
  box-shadow:var(--m2a-sky-glow);
}

body.m2a-master-template.home-page .partners .section-head h2{
  color:var(--m2a-heading) !important;
}

body.m2a-master-template.home-page .partners .section-head p{
  color:var(--m2a-muted) !important;
}

body.m2a-master-template.home-page .partner-showcase{
  background:linear-gradient(145deg,rgba(28,34,45,.88),rgba(14,18,24,.94)) !important;
  border-color:rgba(212,175,55,.22) !important;
  box-shadow:
    0 34px 96px rgba(0,0,0,.38),
    inset 0 1px 0 rgba(226,232,240,.045) !important;
}

body.m2a-master-template.home-page .partner-brand-panel{
  color:var(--m2a-text) !important;
  background:
    radial-gradient(circle at 88% 10%,rgba(56,189,248,.09),transparent 30%),
    radial-gradient(circle at 8% 92%,rgba(34,197,94,.055),transparent 34%),
    linear-gradient(145deg,#151C25 0%,#101821 58%,#0E141B 100%) !important;
}

body.m2a-master-template.home-page .partner-brand-panel::before{
  opacity:.38 !important;
}

body.m2a-master-template.home-page .partner-country-badge,
body.m2a-master-template.home-page .partner-logo-shell,
body.m2a-master-template.home-page .partner-capabilities span{
  color:var(--m2a-text) !important;
  background:rgba(28,34,45,.64) !important;
  border-color:var(--m2a-line) !important;
  -webkit-backdrop-filter:blur(14px) saturate(120%);
  backdrop-filter:blur(14px) saturate(120%);
  box-shadow:inset 0 1px 0 rgba(226,232,240,.04) !important;
}

body.m2a-master-template.home-page .partner-country-badge > span{
  background:var(--m2a-sky) !important;
  color:#08131B !important;
  box-shadow:0 0 18px rgba(56,189,248,.24) !important;
}

body.m2a-master-template.home-page .partner-eyebrow{
  color:var(--m2a-gold-soft) !important;
}

body.m2a-master-template.home-page .partner-brand-copy h3{
  color:var(--m2a-heading) !important;
  text-shadow:0 0 26px rgba(212,175,55,.07);
}

body.m2a-master-template.home-page .partner-brand-copy p{
  color:var(--m2a-muted) !important;
}

body.m2a-master-template.home-page .partner-contact-panel{
  color:var(--m2a-text) !important;
  background:
    radial-gradient(circle at 100% 0,rgba(56,189,248,.065),transparent 34%),
    linear-gradient(155deg,rgba(28,34,45,.92),rgba(17,24,32,.96)) !important;
  border-color:var(--m2a-line) !important;
  -webkit-backdrop-filter:blur(20px) saturate(120%);
  backdrop-filter:blur(20px) saturate(120%);
  box-shadow:inset 1px 0 0 rgba(226,232,240,.045) !important;
}

body.m2a-master-template.home-page .partner-contact-head > span{
  color:var(--m2a-sky-soft) !important;
}

body.m2a-master-template.home-page .partner-contact-head h4{
  color:var(--m2a-heading) !important;
}

body.m2a-master-template.home-page .partner-contact-head p{
  color:var(--m2a-muted) !important;
}

body.m2a-master-template.home-page .partner-contact-item{
  color:var(--m2a-text) !important;
  background:linear-gradient(145deg,rgba(32,40,53,.78),rgba(24,30,40,.68)) !important;
  border-color:var(--m2a-line) !important;
  -webkit-backdrop-filter:blur(14px) saturate(120%);
  backdrop-filter:blur(14px) saturate(120%);
  box-shadow:inset 0 1px 0 rgba(226,232,240,.035) !important;
}

body.m2a-master-template.home-page .partner-contact-item span{
  color:var(--m2a-muted) !important;
}

body.m2a-master-template.home-page .partner-contact-item strong{
  color:var(--m2a-text) !important;
}

body.m2a-master-template.home-page .partner-contact-icon{
  color:var(--m2a-sky-soft) !important;
  background:rgba(56,189,248,.10) !important;
  border:1px solid rgba(56,189,248,.20) !important;
  box-shadow:0 0 20px rgba(56,189,248,.08) !important;
}

body.m2a-master-template.home-page .partner-site-cta{
  color:#111827 !important;
  border-color:transparent !important;
  background:linear-gradient(135deg,var(--m2a-gold-deep),var(--m2a-gold-soft),var(--m2a-gold)) !important;
  box-shadow:var(--m2a-gold-glow) !important;
}

body.m2a-master-template.home-page .partner-site-cta svg{
  color:#111827 !important;
}

/* ---------- Desktop micro-interactions ---------- */
@media (hover:hover) and (pointer:fine){
  body.m2a-master-template :is(
    .sector-premium-card,
    .project-preview-card,
    .insight-card,
    .partner-showcase,
    .value-card,
    .process-step,
    .quote-card,
    .contact-channel,
    .contact-address-card,
    .projects-coming-note,
    .articles-bottom-cta
  ):hover{
    transform:translate3d(0,var(--m2a-lift),0);
    border-color:var(--m2a-gold-line) !important;
    box-shadow:var(--m2a-shadow-hover),0 0 28px rgba(212,175,55,.065) !important;
  }

  body.m2a-master-template :is(.header-cta,.btn-primary):hover{
    transform:translate3d(0,-3px,0);
    filter:brightness(1.035);
    box-shadow:0 0 32px rgba(212,175,55,.28),0 22px 58px rgba(0,0,0,.29) !important;
  }

  body.m2a-master-template :is(.btn-outline,.language-link):hover{
    transform:translate3d(0,-2px,0);
  }

  body.m2a-master-template .m2a-master-header .desktop-nav a:hover{
    transform:translate3d(0,-1px,0);
  }

  body.m2a-master-template.home-page .partner-contact-item:hover{
    transform:translate3d(0,-2px,0);
    border-color:var(--m2a-sky-line) !important;
    box-shadow:0 18px 48px rgba(0,0,0,.28),var(--m2a-sky-glow) !important;
  }
}

/* ---------- Responsive / accessibility stability ---------- */
@media(max-width:720px){
  body.m2a-master-template{
    background:linear-gradient(155deg,var(--m2a-bg) 0%,var(--m2a-bg-navy) 52%,var(--m2a-bg) 100%) !important;
  }

  body.m2a-master-template :is(.value-card,.process-step,.quote-card,.contact-channel,.contact-address-card){
    -webkit-backdrop-filter:blur(12px) saturate(115%);
    backdrop-filter:blur(12px) saturate(115%);
  }

  body.m2a-master-template.home-page .partner-showcase,
  body.m2a-master-template.home-page .partner-brand-panel,
  body.m2a-master-template.home-page .partner-contact-panel{
    box-shadow:none !important;
  }
}

@media(prefers-reduced-motion:reduce){
  body.m2a-master-template *,
  body.m2a-master-template *::before,
  body.m2a-master-template *::after{
    scroll-behavior:auto !important;
    transition-duration:.01ms !important;
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
  }

  body.m2a-master-template :is(
    .sector-premium-card,
    .project-preview-card,
    .insight-card,
    .partner-showcase,
    .value-card,
    .process-step,
    .quote-card,
    .contact-channel,
    .contact-address-card,
    .projects-coming-note,
    .articles-bottom-cta,
    .header-cta,
    .btn,
    .language-link
  ):hover{
    transform:none !important;
  }
}
