/* ============================================================
   DQIntegrity — Clean Rebuild
   From-scratch CSS matching the original desktop design.
   Responsive breakpoints: 1100px, 880px, 640px
   ============================================================ */

/* -- Reset & Base -- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}

:root{
  --bg:        #0b1220;
  --bg-alt:    #0f1729;
  --surface:   rgba(255,255,255,.04);
  --surface-2: rgba(255,255,255,.06);
  --border:    rgba(255,255,255,.08);
  --text:      #e2e8f0;
  --text-muted:#94a3b8;
  --heading:   #f1f5f9;
  --cyan:      #22d3ee;
  --blue:      #60a5fa;
  --purple:    #a855f7;
  --orange:    #f59e0b;
  --red:       #ef4444;
  --green:     #34d399;
  --font:      'Inter',system-ui,-apple-system,sans-serif;
  --radius:    12px;
  --radius-sm: 8px;
  --max-w:     1140px;
}

body{
  font-family:var(--font);
  font-size:1rem;
  line-height:1.6;
  color:var(--text);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
}

img{max-width:100%;display:block}
a{color:var(--cyan);text-decoration:none;transition:color .2s}
a:hover{color:var(--blue)}
svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
h1,h2,h3,h4{color:var(--heading);line-height:1.25}
ul{list-style:none}

.container{width:100%;max-width:var(--max-w);margin:0 auto;padding:0 24px}
.muted{color:var(--text-muted)}
.fineprint{font-size:.85rem;color:var(--text-muted)}

/* -- Top Banner -- */
.top-banner{
  background:linear-gradient(90deg,rgba(34,211,238,.12),rgba(96,165,250,.08));
  border-bottom:1px solid var(--border);
  font-size:.85rem;
  padding:10px 0;
}
.banner-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}
.banner-link{color:var(--cyan);font-weight:600;white-space:nowrap}

/* -- Header -- */
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(11,18,32,.85);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--border);
  padding:14px 0;
}
.header-inner{display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand .logo{height:28px;width:auto}
.brand-word{font-size:1.15rem;font-weight:700;color:var(--heading);letter-spacing:-.02em}

.site-nav{display:flex;align-items:center;gap:6px}
.site-nav a{
  color:var(--text-muted);font-size:.88rem;font-weight:500;
  padding:6px 12px;border-radius:6px;transition:color .2s,background .2s;
}
.site-nav a:hover{color:var(--heading);background:var(--surface)}

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:10px 22px;font-size:.9rem;font-weight:600;
  border-radius:999px;border:1.5px solid var(--cyan);
  background:var(--cyan);color:var(--bg);
  cursor:pointer;transition:all .25s;text-decoration:none;white-space:nowrap;
}
.btn:hover{background:#06b6d4;border-color:#06b6d4;color:var(--bg)}
.btn-ghost{background:transparent;color:var(--text);border-color:var(--border)}
.btn-ghost:hover{border-color:var(--text-muted);color:var(--heading);background:var(--surface)}
.btn-sm{padding:6px 16px;font-size:.82rem}

.nav-toggle{
  display:none;background:none;border:none;cursor:pointer;
  width:32px;height:24px;position:relative;flex-direction:column;justify-content:space-between;
}
.nav-toggle span{display:block;width:100%;height:2px;background:var(--text);border-radius:2px;transition:all .3s}

/* -- Home Hero -- */
.home-hero{
  padding:56px 0 48px;
  background:radial-gradient(ellipse at 30% 50%,rgba(34,211,238,.06) 0%,transparent 60%),
             radial-gradient(ellipse at 80% 30%,rgba(96,165,250,.05) 0%,transparent 50%),
             radial-gradient(ellipse at 60% 80%,rgba(168,85,247,.04) 0%,transparent 50%),
             var(--bg);
}
.home-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}

.hero-copy .kicker{
  display:flex;align-items:center;gap:8px;
  font-size:.82rem;font-weight:600;text-transform:uppercase;
  letter-spacing:.08em;color:var(--text-muted);margin-bottom:20px;
}
.hero-copy .kicker::before{
  content:'';width:8px;height:8px;border-radius:50%;background:var(--green);
  box-shadow:0 0 8px var(--green);
}
.hero-copy h1{font-size:clamp(2rem,4vw,3rem);font-weight:800;margin-bottom:20px;letter-spacing:-.03em}
.hero-copy .lead{font-size:1.05rem;margin-bottom:28px;max-width:520px}

.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:28px}

.trust-strip{display:flex;flex-wrap:wrap;gap:8px}
.pill{
  padding:6px 16px;font-size:.8rem;font-weight:500;
  border:1px solid var(--border);border-radius:999px;color:var(--text-muted);
  background:var(--surface);
}

/* Hero Panel (curve viz) */
.hero-panel{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:24px;
  position:relative;
}
.hero-panel-top{display:flex;gap:8px;margin-bottom:16px}
.hero-mini{
  padding:6px 14px;font-size:.78rem;font-weight:500;
  border:1px solid var(--border);border-radius:999px;
  color:var(--text-muted);background:var(--surface);
}
.hero-curve{position:relative}
.hero-curve svg{width:100%;height:auto}
.curve-label{
  position:absolute;
  background:rgba(11,18,32,.85);
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  padding:8px 12px;
  font-size:.72rem;font-weight:600;color:var(--heading);
  line-height:1.35;
  pointer-events:none;
  backdrop-filter:blur(6px);
}
.curve-label small{display:block;font-weight:400;color:var(--text-muted);font-size:.65rem;margin-top:2px}

/* -- Sections -- */
.section{padding:72px 0}
.section-alt{background:var(--bg-alt)}
.section-head{max-width:680px;margin-bottom:48px}
.section-head h2{font-size:clamp(1.4rem,3vw,1.9rem);font-weight:700;margin-bottom:12px}
.section-head h2::before{
  content:'|';margin-right:12px;color:var(--cyan);font-weight:800;
}
.section-head .muted{font-size:1rem;line-height:1.6}

/* -- Cards -- */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}
.signal-grid{grid-template-columns:repeat(3,1fr)}
.service-grid{grid-template-columns:repeat(3,1fr)}

.card{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:28px;
  transition:border-color .25s,transform .25s;
}
.card:hover{border-color:rgba(255,255,255,.15);transform:translateY(-2px)}
.card h3{font-size:1.05rem;font-weight:600;margin-bottom:8px}
.card p{font-size:.92rem;color:var(--text-muted);margin-bottom:6px}
.card a{color:var(--cyan);font-weight:500;font-size:.88rem}

/* Icons */
.icon{
  width:40px;height:40px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  margin-bottom:16px;
}
.icon svg{width:20px;height:20px}
.icon-orange{background:rgba(245,158,11,.15);color:var(--orange)}
.icon-purple{background:rgba(168,85,247,.15);color:var(--purple)}
.icon-blue{background:rgba(96,165,250,.15);color:var(--blue)}
.icon-red{background:rgba(239,68,68,.15);color:var(--red)}
.icon-green{background:rgba(52,211,153,.15);color:var(--green)}
.icon-cyan{background:rgba(34,211,238,.15);color:var(--cyan)}

/* Featured Grid */
.featured-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.featured-card{padding:32px}
.featured-card h3{font-size:1.15rem;margin-bottom:12px}
.featured-card h3 a{color:var(--heading)}
.featured-card h3 a:hover{color:var(--cyan)}
.featured-card .check{margin-top:16px;display:flex;flex-direction:column;gap:6px}
.featured-card .check li{
  font-size:.88rem;color:var(--text-muted);
  padding-left:20px;position:relative;
}
.featured-card .check li::before{
  content:'\2713';position:absolute;left:0;color:var(--green);font-weight:700;
}

/* -- Integrity Journey -- */
.integrity-journey{
  display:grid;grid-template-columns:repeat(5,1fr);gap:0;
  position:relative;padding:40px 0 24px;
}
.journey-line{
  position:absolute;top:52px;left:8%;right:8%;height:2px;
  background:linear-gradient(90deg,var(--border),var(--cyan) 25%,var(--orange) 50%,var(--border));
}
.journey-step{text-align:center;position:relative;z-index:1}
.journey-dot{
  width:14px;height:14px;border-radius:50%;
  margin:0 auto 16px;border:2px solid var(--border);
  background:var(--bg-alt);
}
.journey-dot.completeness{background:var(--orange);border-color:var(--orange);box-shadow:0 0 10px rgba(245,158,11,.4)}
.journey-dot.correctness{background:var(--purple);border-color:var(--purple);box-shadow:0 0 10px rgba(168,85,247,.4)}
.journey-dot.normal{background:var(--surface-2);border-color:var(--border)}
.journey-step h3{font-size:.9rem;font-weight:600;margin-bottom:6px}
.journey-step p{font-size:.82rem;color:var(--text-muted);padding:0 4px}

.journey-legend{
  display:flex;gap:24px;margin-top:28px;
  font-size:.85rem;color:var(--text-muted);
}
.legend-dot{
  display:inline-block;width:10px;height:10px;border-radius:50%;
  margin-right:6px;vertical-align:middle;
}
.legend-dot.completeness{background:var(--orange)}
.legend-dot.correctness{background:var(--purple)}

/* -- CTA Band -- */
.cta-band{
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:24px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:40px 48px;
}
.cta-band h2{font-size:1.4rem;font-weight:700}
.cta-band h2::before{content:'';margin:0}
.cta-actions{display:flex;gap:12px;flex-wrap:wrap}

/* -- Footer -- */
.site-footer{
  border-top:1px solid var(--border);
  padding:56px 0 0;
  background:var(--bg);
}
.footer-grid{
  display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;
  padding-bottom:40px;
}
.footer-brand{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.footer-brand .logo.small{height:22px}
.footer-grid h3{font-size:.9rem;font-weight:600;margin-bottom:16px;color:var(--heading)}
.footer-links{display:flex;flex-direction:column;gap:8px}
.footer-links a{color:var(--text-muted);font-size:.88rem}
.footer-links a:hover{color:var(--cyan)}

.footer-bottom{
  display:flex;justify-content:space-between;align-items:center;
  padding:20px 0;border-top:1px solid var(--border);
  font-size:.82rem;color:var(--text-muted);
}

/* ============================================================
   Responsive
   ============================================================ */

/* -- Tablet (<=1100px) -- */
@media(max-width:1100px){
  .home-hero-grid{grid-template-columns:1fr;gap:40px}
  .hero-panel{max-width:560px}
  .featured-grid{grid-template-columns:1fr}
}

/* -- Small Tablet / Large Phone (<=880px) -- */
@media(max-width:880px){
  .nav-toggle{display:flex}
  .site-nav{
    display:none;position:absolute;top:100%;left:0;right:0;
    flex-direction:column;align-items:stretch;
    background:rgba(11,18,32,.97);backdrop-filter:blur(16px);
    border-bottom:1px solid var(--border);
    padding:16px 24px;gap:4px;
  }
  .site-nav.open{display:flex}
  .site-nav a{padding:12px 16px;border-radius:8px}
  .site-header{position:relative}

  .signal-grid,.service-grid{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px}
  .footer-grid > div:first-child{grid-column:1 / -1}

  .integrity-journey{
    grid-template-columns:1fr;gap:24px;padding:20px 0;
  }
  .journey-line{display:none}
  .journey-step{
    text-align:left;display:grid;grid-template-columns:auto 1fr;gap:0 16px;
    align-items:start;
  }
  .journey-dot{grid-row:1/3;margin:4px 0 0;align-self:start}
  .journey-step h3{grid-column:2}
  .journey-step p{grid-column:2}
}

/* -- Phone (<=640px) -- */
@media(max-width:640px){
  .home-hero{padding:48px 0 40px}
  .hero-copy h1{font-size:1.75rem}
  .hero-copy .lead{font-size:.95rem}
  .hero-cta{flex-direction:column}
  .hero-cta .btn{width:100%;text-align:center}

  .section{padding:48px 0}
  .section-head{margin-bottom:32px}

  .signal-grid,.service-grid,.cards{grid-template-columns:1fr}
  .featured-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr;gap:32px}
  .footer-bottom{flex-direction:column;gap:8px;text-align:center}

  .cta-band{flex-direction:column;text-align:center;padding:32px 24px}
  .cta-actions{justify-content:center}

  .trust-strip{gap:6px}
  .pill{font-size:.75rem;padding:5px 12px}

  .hero-panel{padding:16px}
  .curve-label{font-size:.62rem;padding:6px 8px}
}


/* ============================================================
   Layer 2 -- Article / Insight pages (.article-page)
   ============================================================ */
.article-page .page-hero{
  padding:48px 0 40px;
  background:radial-gradient(ellipse at 20% 50%,rgba(34,211,238,.06),transparent 60%),
             radial-gradient(ellipse at 80% 30%,rgba(96,165,250,.04),transparent 50%),
             radial-gradient(ellipse at 60% 80%,rgba(168,85,247,.04),transparent 50%),
             var(--bg);
}
.article-page .hero-shell{max-width:var(--max-w);margin:0 auto;padding:0 24px}
.article-page .hero-head{max-width:720px}
.article-page .hero-head .kicker{
  display:flex;align-items:center;gap:8px;
  font-size:.82rem;font-weight:600;text-transform:uppercase;
  letter-spacing:.08em;color:var(--text-muted);margin-bottom:16px;
}
.article-page .hero-head .kicker::before{
  content:'';width:8px;height:8px;border-radius:50%;background:var(--green);
  box-shadow:0 0 8px var(--green);flex-shrink:0;
}
.article-page .hero-head h1{font-size:clamp(1.5rem,2.8vw,2.1rem);font-weight:800;margin-bottom:16px}
.article-page .hero-subtitle{font-size:1.05rem;color:var(--text-muted);margin-bottom:8px}
.article-page .hero-subnote{font-size:.92rem;color:var(--text-muted)}

.article-page .article-shell{max-width:var(--max-w);margin:0 auto;padding:0 24px}
.article-page .article-layout{padding:48px 0 72px}
.article-page .article-body{max-width:780px}
.article-page .article-body h2{
  font-size:1.5rem;font-weight:700;margin:48px 0 16px;
}
.article-page .article-body h2::before{content:'|';margin-right:10px;color:var(--cyan);font-weight:800}
.article-page .article-body h3{font-size:1.15rem;font-weight:600;margin:24px 0 8px}
.article-page .article-body p{margin-bottom:16px;color:var(--text-muted);line-height:1.7}
.article-page .article-body a{color:var(--cyan)}
.article-page .article-body ul,.article-page .article-body ol{margin-bottom:16px;padding-left:20px}
.article-page .article-body li{margin-bottom:8px;color:var(--text-muted)}
.article-page .article-body strong{color:var(--heading);font-weight:600}

.article-page .section-intro{font-size:1.05rem;margin-bottom:24px}

/* Article grids */
.article-page .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}
.article-page .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:24px 0}

/* Trigger cards */
.article-page .trigger-card{
  background:var(--surface);border:1px solid var(--border);
  border-radius:var(--radius);padding:24px;
}
.article-page .trigger-card h3{font-size:1rem;margin-bottom:8px}
.article-page .trigger-card p{font-size:.9rem;color:var(--text-muted);margin:0}

/* Step blocks */
.article-page .step-stack{display:flex;flex-direction:column;gap:20px;margin:24px 0}
.article-page .step-block{
  display:grid;grid-template-columns:48px 1fr;gap:16px;
  background:var(--surface);border:1px solid var(--border);
  border-radius:var(--radius);padding:24px;
  align-items:start;
}
.article-page .step-number{
  width:40px;height:40px;border-radius:50%;
  background:rgba(34,211,238,.1);color:var(--cyan);
  display:flex;align-items:center;justify-content:center;
  font-weight:700;font-size:1.1rem;
}
.article-page .step-block h3{font-size:1rem;margin-bottom:6px}
.article-page .step-block p{font-size:.9rem;color:var(--text-muted);margin:0}

/* Arrow list */
.article-page .arrow-list{margin:16px 0;padding:0}
.article-page .arrow-list li{
  padding:8px 0 8px 24px;position:relative;
  font-size:.92rem;color:var(--text-muted);border-bottom:1px solid var(--border);
}
.article-page .arrow-list li:last-child{border:0}
.article-page .arrow-list li::before{
  content:'\2192';position:absolute;left:0;color:var(--cyan);font-weight:700;
}

/* Hero grid (services page) */
.article-page .hero-grid{display:grid;grid-template-columns:1fr;gap:24px;margin-top:32px}
.article-page .panel{
  background:var(--surface);border:1px solid var(--border);
  border-radius:var(--radius);padding:28px;
}
.article-page .panel h3{font-size:1.1rem;margin-bottom:16px}
.article-page .stat-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-top:16px}
.article-page .stat-card{
  background:var(--surface-2);border:1px solid var(--border);
  border-radius:var(--radius-sm);padding:16px;
}
.article-page .stat-card .label{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}
.article-page .stat-card strong{display:block;font-size:.95rem;margin:4px 0}
.article-page .stat-card strong.blue{color:var(--blue)}
.article-page .stat-card strong.orange{color:var(--orange)}
.article-page .stat-card strong.purple{color:var(--purple)}
.article-page .stat-card strong.green{color:var(--green)}
.article-page .stat-card p{font-size:.8rem;color:var(--text-muted);margin:0}

/* Service list */
.article-page .service-list{display:flex;flex-direction:column;gap:16px}
.article-page .service-card{
  background:var(--surface-2);border:1px solid var(--border);
  border-radius:var(--radius-sm);padding:20px;
}
.article-page .service-head{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.article-page .service-head .icon{margin-bottom:0;width:32px;height:32px}
.article-page .service-head .icon svg{width:16px;height:16px}
.article-page .service-head h4{font-size:.95rem;font-weight:600;color:var(--heading)}
.article-page .service-card p{font-size:.88rem;color:var(--text-muted);margin:0}

/* Related / sidebar in articles */
.article-page .related-articles{margin-top:48px;padding-top:32px;border-top:1px solid var(--border)}
.article-page .related-articles h2::before{content:''}
.article-page .related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:20px}
.article-page .related-grid .card{padding:20px}

/* Article responsive */
@media(max-width:880px){
  .article-page .grid-2{grid-template-columns:1fr}
  .article-page .grid-3{grid-template-columns:1fr}
  .article-page .hero-grid{grid-template-columns:1fr}
  .article-page .stat-strip{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .article-page .page-hero{padding:40px 0 32px}
  .article-page .article-layout{padding:32px 0 48px}
  .article-page .stat-strip{grid-template-columns:1fr}
  .article-page .step-block{grid-template-columns:36px 1fr;padding:16px}
}


/* ============================================================
   Layer 3 -- Page-specific scopes
   ============================================================ */

/* Industries page (.industries-page) */
.industries-page .card{background:rgba(15,23,42,.90);border-color:rgba(255,255,255,.08)}

/* Insights hub */
.insights-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}

/* Insights label (reusable tag) */
.insights-label{
  display:inline-block;
  font-size:.75rem;font-weight:600;text-transform:uppercase;
  letter-spacing:.08em;color:var(--cyan);
  margin-bottom:12px;
}

/* Insights start-here card */
.insights-start-here{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:32px;
  margin-bottom:40px;
}
.insights-start-here h2{font-size:1.4rem;font-weight:700;margin-bottom:12px}
.insights-start-here p{color:var(--text-muted);line-height:1.7}

/* Insights journey section */
.insights-journey-section{margin-bottom:48px}
.insights-journey-section h2{font-size:1.4rem;font-weight:700;margin-bottom:12px}
.insights-journey-section h2::before{content:'|';margin-right:10px;color:var(--cyan);font-weight:800}
.insights-journey-section > p{color:var(--text-muted);line-height:1.7}

/* Closing card CTA (shared across pages) */
.closing-card{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:40px;
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:24px;
  margin-top:48px;margin-bottom:72px;
}
.closing-card h2{font-size:1.3rem;font-weight:700;margin-bottom:12px}
.closing-card h2::before{content:''}
.closing-card p{color:var(--text-muted);line-height:1.7;margin-bottom:8px}
.closing-actions{display:flex;gap:12px;flex-wrap:wrap;flex-shrink:0}

/* Article-level hero (used by framework, pipeline pages) */
.article-page .article-hero{
  padding:48px 0 40px;
  background:radial-gradient(ellipse at 20% 50%,rgba(34,211,238,.06),transparent 60%),
             radial-gradient(ellipse at 80% 30%,rgba(96,165,250,.04),transparent 50%),
             radial-gradient(ellipse at 60% 80%,rgba(168,85,247,.04),transparent 50%),
             var(--bg);
}
.article-page .article-head{max-width:720px}
.article-page .article-head h1{font-size:clamp(1.5rem,2.8vw,2.1rem);font-weight:800;margin-bottom:16px}
.article-page .article-subtitle{font-size:1.05rem;color:var(--text-muted);margin-bottom:8px}
.article-page .article-subnote{font-size:.92rem;color:var(--text-muted)}

/* Back link */
.back-link{
  display:inline-flex;align-items:center;gap:6px;
  font-size:.88rem;font-weight:500;color:var(--text-muted);
  margin-bottom:20px;
}
.back-link:hover{color:var(--cyan)}

/* Eyebrow badge */
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-size:.82rem;font-weight:600;text-transform:uppercase;
  letter-spacing:.08em;color:var(--text-muted);margin-bottom:16px;
}

/* Tag row (case studies) */
.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.tag{
  padding:6px 16px;font-size:.78rem;font-weight:600;
  border-radius:999px;
  background:var(--surface);border:1px solid var(--border);
  color:var(--text-muted);
}
.tag.compl{border-color:var(--orange);color:var(--orange)}
.tag.corr{border-color:var(--purple);color:var(--purple)}
.tag.ctrl{border-color:var(--cyan);color:var(--cyan)}
.tag.exec{border-color:var(--blue);color:var(--blue)}

@media(max-width:640px){
  .closing-card{flex-direction:column;text-align:center;padding:28px 20px}
  .closing-actions{justify-content:center}
  .insights-start-here{padding:24px 20px}
  .article-page .article-hero{padding:40px 0 32px}
  .tag-row{gap:6px}
  .tag{font-size:.72rem;padding:5px 12px}
}

/* Contact page form & layout */
.form-card{
  background:var(--surface);border:1px solid var(--border);
  border-radius:var(--radius);padding:32px;margin-top:24px;
}
.form-card h3{font-size:1.15rem;font-weight:700;margin-bottom:20px}
.form-grid{display:flex;flex-direction:column;gap:16px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-grid label{display:block;font-size:.85rem;font-weight:600;color:var(--heading);margin-bottom:6px}
.form-grid input,.form-grid select,.form-grid textarea{
  width:100%;padding:10px 14px;font-size:.9rem;font-family:var(--font);
  background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);
  color:var(--text);transition:border-color .2s;
}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{
  outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px rgba(34,211,238,.15);
}
.form-grid textarea{min-height:100px;resize:vertical}
.form-grid select{appearance:auto}
.small-note{font-size:.82rem;color:var(--text-muted);margin-top:8px}

/* Feature grid (contact relevance cards) */
.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}
.focus-card{
  background:var(--surface-2);border:1px solid var(--border);
  border-radius:var(--radius-sm);padding:20px;
}
.focus-card .icon{width:32px;height:32px;margin-bottom:10px}
.focus-card .icon svg{width:16px;height:16px}
.focus-card h4{font-size:.92rem;font-weight:600;color:var(--heading);margin-bottom:6px}
.focus-card p{font-size:.85rem;color:var(--text-muted);margin:0}

/* Article aside (sidebar) */
.article-page .article-aside{display:flex;flex-direction:column;gap:16px}
.aside-card{
  background:var(--surface);border:1px solid var(--border);
  border-radius:var(--radius);padding:20px;
}
.aside-card h3{
  display:flex;align-items:center;gap:10px;
  font-size:.95rem;font-weight:600;margin-bottom:12px;
}
.aside-card h3 .icon{width:28px;height:28px;margin-bottom:0}
.aside-card h3 .icon svg{width:14px;height:14px}
.aside-card p{font-size:.88rem;color:var(--text-muted);margin-bottom:8px}
.aside-card ul{list-style:none;padding:0;margin:0}
.aside-card li{font-size:.88rem;color:var(--text-muted);padding:4px 0}
.aside-card li a{color:var(--cyan)}
.pull{font-style:italic;color:var(--heading) !important;font-size:.95rem !important}

/* Callout (success / error) */
.callout{padding:16px 20px;border-radius:var(--radius-sm);font-size:.9rem;border:1px solid var(--border)}
.callout.success{background:rgba(52,211,153,.1);border-color:var(--green);color:var(--green)}
.callout.error{background:rgba(239,68,68,.1);border-color:var(--red);color:var(--red)}

/* Two-column article layout with sidebar */
.article-page .article-layout{
  display:grid;grid-template-columns:1fr;gap:48px;
  padding:48px 0 72px;
}
@media(min-width:881px){
  .article-page .article-layout:has(.article-aside){
    grid-template-columns:1fr 280px;gap:40px;
  }
}

@media(max-width:880px){
  .form-row{grid-template-columns:1fr}
  .feature-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .form-card{padding:24px 20px}
}

/* ============================================================
   Layer 3b -- When Data Fails: Real Consequences (.consequences-page)
   ============================================================ */
.consequences-page .article-hero{
  padding:5rem 0 2.75rem;
  background:
    radial-gradient(circle at top left, rgba(239,68,68,0.10), transparent 26%),
    radial-gradient(circle at top right, rgba(6,182,212,0.10), transparent 28%),
    radial-gradient(circle at 70% 20%, rgba(168,85,247,0.10), transparent 22%);
  border-bottom:1px solid rgba(255,255,255,0.06);
}
.consequences-page .article-shell{max-width:1180px;margin:0 auto;padding:0 1.25rem 5rem}
.consequences-page .article-head{max-width:920px}
.consequences-page .back-link{
  display:inline-flex;align-items:center;gap:.45rem;
  color:rgba(226,232,240,.82);text-decoration:none;margin-bottom:1.1rem;font-weight:500;
}
.consequences-page .back-link:hover{color:#fff}
.consequences-page .eyebrow{
  display:inline-flex;align-items:center;gap:.5rem;
  padding:.35rem .7rem;border-radius:999px;
  background:rgba(239,68,68,0.10);border:1px solid rgba(239,68,68,0.22);
  color:#f87171;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;margin-bottom:1rem;
}
.consequences-page .article-head h1{
  font-size:clamp(2.7rem,5vw,4.8rem);line-height:1.02;margin:0 0 1.1rem;letter-spacing:-0.045em;
}
.consequences-page .article-subtitle{font-size:1.28rem;line-height:1.62;color:rgba(226,232,240,0.92);max-width:820px;margin:0 0 1.35rem}
.consequences-page .article-subnote{color:rgba(148,163,184,0.95);max-width:820px;font-size:1rem;line-height:1.7}

/* Hero strip — 4-column summary cards */
.consequences-page .hero-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}

/* Glass cards with gradient border */
.consequences-page .stat-card,
.consequences-page .intro-card,
.consequences-page .case-card,
.consequences-page .aside-card,
.consequences-page .closing-card,
.consequences-page .step-block{
  position:relative;
  background:linear-gradient(180deg,rgba(15,23,42,0.90),rgba(2,6,23,0.88));
  border:1px solid rgba(148,163,184,0.14);border-radius:24px;
  box-shadow:0 22px 60px rgba(0,0,0,0.24);overflow:hidden;
}
.consequences-page .stat-card::before,
.consequences-page .intro-card::before,
.consequences-page .case-card::before,
.consequences-page .aside-card::before,
.consequences-page .closing-card::before,
.consequences-page .step-block::before{
  content:"";position:absolute;inset:0;border-radius:24px;padding:1px;
  background:linear-gradient(130deg,rgba(59,130,246,.28),rgba(148,163,184,0.04),rgba(239,68,68,.16));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;
}

/* Stat cards */
.consequences-page .stat-card{padding:1.1rem 1.1rem 1rem}
.consequences-page .stat-card .label{
  display:block;font-size:0.76rem;text-transform:uppercase;letter-spacing:0.08em;
  color:#67e8f9;font-weight:700;margin-bottom:.55rem;
}
.consequences-page .stat-card strong{display:block;font-size:1.7rem;line-height:1.05;margin-bottom:.4rem}
.consequences-page .stat-card.negative strong{color:#f87171}
.consequences-page .stat-card.neutral strong{color:#e2e8f0}
.consequences-page .stat-card p{margin:0;color:rgba(226,232,240,0.82);line-height:1.45;font-size:0.95rem}

/* Article layout */
.consequences-page .article-layout{
  display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:2.25rem;align-items:start;margin-top:2.5rem;
}
.consequences-page .article-body{max-width:790px}
.consequences-page .article-body section{padding:2rem 0;border-bottom:1px solid rgba(255,255,255,0.06)}
.consequences-page .article-body h2{
  font-size:clamp(1.72rem,2.45vw,2.35rem);line-height:1.14;margin:0 0 1rem;
  letter-spacing:-0.025em;position:relative;padding-left:1rem;
}
.consequences-page .article-body h2::before{
  content:"";position:absolute;left:0;top:.28rem;width:4px;height:1.45rem;
  border-radius:999px;background:linear-gradient(180deg,#22d3ee,#3b82f6);
}
.consequences-page .article-body p,
.consequences-page .article-body li{font-size:1.04rem;line-height:1.78;color:rgba(226,232,240,0.88)}
.consequences-page .section-intro{font-size:1.14rem;color:rgba(241,245,249,0.94)}
.consequences-page .intro-card{padding:1.5rem}

/* Icons — enhanced */
.consequences-page .icon{
  width:38px;height:38px;border-radius:50%;display:inline-flex;
  align-items:center;justify-content:center;margin-bottom:.9rem;border:1px solid transparent;
}
.consequences-page .icon svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.9;fill:none}
.consequences-page .icon-red{
  background:rgba(239,68,68,0.10);color:#f87171;border-color:rgba(239,68,68,0.24);
  box-shadow:0 0 16px rgba(239,68,68,0.16);
}
.consequences-page .icon-blue{
  background:rgba(59,130,246,0.12);color:#60a5fa;border-color:rgba(59,130,246,0.22);
  box-shadow:0 0 16px rgba(59,130,246,0.14);
}
.consequences-page .icon-purple{
  background:rgba(168,85,247,0.12);color:#c084fc;border-color:rgba(168,85,247,0.22);
  box-shadow:0 0 16px rgba(168,85,247,0.14);
}
.consequences-page .icon-orange{
  background:rgba(245,158,11,0.12);color:#fbbf24;border-color:rgba(245,158,11,0.22);
  box-shadow:0 0 16px rgba(245,158,11,0.14);
}
.consequences-page .icon-green{
  background:rgba(34,197,94,0.12);color:#4ade80;border-color:rgba(34,197,94,0.22);
  box-shadow:0 0 16px rgba(34,197,94,0.14);
}

/* Case cards */
.consequences-page .case-list{display:grid;gap:1.15rem}
.consequences-page .case-card{padding:1.35rem 1.4rem 1.2rem;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.consequences-page .case-card:hover{transform:translateY(-3px);border-color:rgba(248,113,113,0.26);box-shadow:0 18px 34px rgba(127,29,29,0.14)}
.consequences-page .case-top{display:grid;grid-template-columns:auto 1fr;gap:.95rem;align-items:start;margin-bottom:.5rem}
.consequences-page .case-meta{display:flex;flex-wrap:wrap;gap:0.45rem;margin-bottom:0.7rem}
.consequences-page .case-badge{
  display:inline-flex;align-items:center;border:1px solid rgba(103,232,249,0.18);
  background:rgba(8,47,73,0.24);color:#93c5fd;padding:0.26rem 0.55rem;
  border-radius:999px;font-size:0.76rem;font-weight:700;letter-spacing:0.02em;
}
.consequences-page .case-badge.regulator{color:#67e8f9}
.consequences-page .case-badge.region{color:#93c5fd}
.consequences-page .case-badge.year{color:#c084fc}
.consequences-page .case-card h3{margin:0 0 0.55rem;font-size:1.52rem;line-height:1.23;letter-spacing:-.02em}
.consequences-page .metric-negative{color:#f87171;font-weight:800}
.consequences-page .metric-neutral{color:#e2e8f0;font-weight:800}
.consequences-page .case-card p{margin:0 0 0.85rem}
.consequences-page .case-card .why{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,0.08)}
.consequences-page .case-card .why strong{color:#f8fafc}
.consequences-page .source-link{display:inline-flex;align-items:center;gap:.35rem;margin-top:0.25rem;color:#67e8f9;text-decoration:none;font-weight:600}
.consequences-page .source-link:hover{text-decoration:underline}

/* Sidebar */
.consequences-page .article-aside{position:sticky;top:110px;display:grid;gap:1rem}
.consequences-page .aside-card{padding:1.3rem 1.3rem 1.1rem}
.consequences-page .aside-card h3{margin-top:0;margin-bottom:.8rem;display:flex;align-items:center;gap:.65rem;font-size:1.18rem}
.consequences-page .aside-card ul{margin:0;padding-left:0;list-style:none}
.consequences-page .aside-card li{margin-bottom:0.6rem;color:rgba(226,232,240,0.88);line-height:1.55;position:relative;padding-left:1.05rem}
.consequences-page .aside-card li::before{content:"•";position:absolute;left:0;color:#f59e0b}

/* Steps */
.consequences-page .step-stack{display:grid;gap:.9rem;margin-top:1rem}
.consequences-page .step-block{display:grid;grid-template-columns:auto 1fr;gap:.9rem;padding:1rem 1.05rem;align-items:start}
.consequences-page .step-number{
  width:32px;height:32px;border-radius:10px;background:rgba(34,211,238,0.12);
  border:1px solid rgba(34,211,238,0.24);color:#22d3ee;display:flex;
  align-items:center;justify-content:center;font-weight:800;font-size:1rem;
  box-shadow:0 0 14px rgba(34,211,238,0.12);flex-shrink:0;
}
.consequences-page .step-block h3{margin:.1rem 0 .35rem;font-size:1.04rem}
.consequences-page .step-block p{margin:0;color:rgba(226,232,240,0.84);font-size:.97rem;line-height:1.58}

/* Closing */
.consequences-page .closing-wrap{margin-top:2rem}
.consequences-page .closing-card{display:grid;grid-template-columns:1fr auto;gap:1.5rem;padding:1.8rem 1.9rem;align-items:center}
.consequences-page .closing-card p{margin:0 0 .95rem;color:rgba(226,232,240,0.9);line-height:1.72}
.consequences-page .closing-actions{display:flex;gap:0.75rem;flex-wrap:wrap;justify-content:flex-end}
.consequences-page .muted-note{color:rgba(148,163,184,0.92);font-size:0.95rem}

/* Responsive — consequences */
@media(max-width:1100px){
  .consequences-page .hero-strip{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:980px){
  .consequences-page .article-layout,
  .consequences-page .closing-card{grid-template-columns:1fr}
  .consequences-page .article-aside{position:static}
  .consequences-page .closing-actions{justify-content:flex-start}
}
@media(max-width:640px){
  .consequences-page .hero-strip{grid-template-columns:1fr}
  .consequences-page .article-hero{padding-top:3.75rem}
  .consequences-page .stat-card,
  .consequences-page .intro-card,
  .consequences-page .case-card,
  .consequences-page .aside-card,
  .consequences-page .closing-card,
  .consequences-page .step-block{border-radius:20px}
  .consequences-page .case-top,
  .consequences-page .step-block{grid-template-columns:1fr}
}

/* ============================================================
   Layer 4 -- Arabic pages
   ============================================================ */
[dir="rtl"]{direction:rtl;text-align:right}
[dir="rtl"] .site-nav{flex-direction:row-reverse}
[dir="rtl"] .header-inner{flex-direction:row-reverse}
[dir="rtl"] .footer-grid{direction:rtl}
[dir="rtl"] .hero-copy .kicker{flex-direction:row-reverse}
[dir="rtl"] .section-head h2::before{content:'|';margin-right:0;margin-left:12px}
[dir="rtl"] .arrow-list li{padding-left:0;padding-right:24px}
[dir="rtl"] .arrow-list li::before{left:auto;right:0;content:'\2190'}
[dir="rtl"] .featured-card .check li{padding-left:0;padding-right:20px}
[dir="rtl"] .featured-card .check li::before{left:auto;right:0}
[dir="rtl"] .hero-copy h1{font-size:clamp(1.8rem,3.5vw,2.6rem)}
[dir="rtl"] .article-page .hero-head h1,
[dir="rtl"] .article-page .article-head h1{font-size:clamp(1.4rem,2.6vw,1.9rem)}

@media(max-width:880px){
  [dir="rtl"] .site-nav{flex-direction:column}
  [dir="rtl"] .header-inner{flex-direction:row-reverse}
}
