/*
Theme Name:   Astra Child – AI Pulse Insights
Theme URI:    https://aipulseinsights.com/
Description:  Astra Child Theme for AI Pulse Insights – PPC, SEO & AI Marketing
Author:       Mandeep Wraich
Author URI:   https://aipulseinsights.com/about/
Template:     astra
Version:      1.0.0
Text Domain:  astra-child-aipulse
*/

/* =========================================================
   IMPORT PARENT ASTRA STYLES
========================================================= */
@import url("../astra/style.css");

/* =========================================================
   GOOGLE FONTS
========================================================= */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,700;0,900;1,700&family=Outfit:wght@300;400;500;600;700&display=swap');

/* =========================================================
   CSS CUSTOM PROPERTIES (brand tokens)
========================================================= */
:root {
  --aip-blk:      #0F0F0F;
  --aip-blk2:     #1A1A1A;
  --aip-blk3:     #242424;
  --aip-org:      #FF6B00;
  --aip-org2:     #FF8C33;
  --aip-orgpal:   #FFF3EA;
  --aip-orgdk:    #CC5500;
  --aip-wht:      #FFFFFF;
  --aip-off:      #F8F8F6;
  --aip-txt:      #111111;
  --aip-txt2:     #3C3C3C;
  --aip-txt3:     #7A7A7A;
  --aip-bdr:      rgba(0,0,0,0.09);
  --aip-r:        4px;
  --aip-rlg:      10px;
}

/* =========================================================
   RESET – scoped inside front-page wrapper only
========================================================= */
.aip-wrap *,
.aip-wrap *::before,
.aip-wrap *::after {
  box-sizing: border-box;
}
.aip-wrap a {
  text-decoration: none;
  color: inherit;
}
.aip-wrap img {
  max-width: 100%;
  display: block;
  object-fit: cover;
}
.aip-wrap h1,
.aip-wrap h2,
.aip-wrap h3,
.aip-wrap h4 {
  font-family: 'Playfair Display', serif;
  line-height: 1.15;
  margin: 0;
}

/* =========================================================
   FULL-WIDTH PAGE OVERRIDE
   Removes Astra sidebar/container constraints on front-page
========================================================= */
.home .site-content,
.home #content,
/* ONLY HOMEPAGE FIX */
body.home .ast-container,
body.home .site-content,
body.home #primary,
body.home .entry-content {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* RESET HOMEPAGE SPACING */
body.home #aip-homepage {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* FULL WIDTH ONLY HOMEPAGE */
body.home #aip-homepage {
  width: 100%;
  margin: 0;
}
.home .hentry {
  margin: 0;
  padding: 0;
}

/* =========================================================
   HERO
========================================================= */
.aip-hero {
  background: var(--aip-blk);
  padding: 56px 60px 52px;
  position: relative;
  overflow: hidden;
}
.aip-hero::before {
  content: '';
  position: absolute;
  top: -160px; right: -80px;
  width: 500px; height: 500px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,107,0,.14) 0%, transparent 70%);
  pointer-events: none;
}
.aip-hero::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--aip-org), transparent);
}
.aip-hero-in {
  max-width: 1160px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.55fr 1fr;
  gap: 32px;
  position: relative;
  z-index: 1;
  animation: aipFadeUp .6s .1s both;
}
@keyframes aipFadeUp {
  from { opacity: 0; transform: translateY(18px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Featured card */
.aip-feat {
  background: var(--aip-blk2);
  border: 1px solid rgba(255,255,255,.06);
  border-radius: var(--aip-rlg);
  overflow: hidden;
  display: block;
  transition: border-color .25s;
}
.aip-feat:hover { border-color: rgba(255,107,0,.35); }
.aip-feat:hover .aip-feat-img { transform: scale(1.03); }
.aip-feat-imgw { height: 320px; overflow: hidden; }
.aip-feat-img  { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.aip-feat-body { padding: 26px 30px 30px; }
.aip-feat-badge {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 10px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase;
  background: var(--aip-org); color: #fff;
  padding: 4px 12px; border-radius: 2px; margin-bottom: 14px;
  font-family: 'Outfit', sans-serif;
}
.aip-feat-title {
  font-size: 22px; font-weight: 900; color: #fff;
  line-height: 1.2; margin-bottom: 12px; letter-spacing: -.5px;
  transition: color .2s;
}
.aip-feat:hover .aip-feat-title { color: var(--aip-org2); }
.aip-feat-exc {
  font-size: 14px; font-weight: 300;
  color: rgba(255,255,255,.55); line-height: 1.7; margin-bottom: 18px;
  font-family: 'Outfit', sans-serif;
}
.aip-feat-meta {
  display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
  font-family: 'Outfit', sans-serif;
}
.aip-av {
  width: 28px; height: 28px; border-radius: 50%;
  background: var(--aip-org);
  display: flex; align-items: center; justify-content: center;
  font-size: 11px; font-weight: 700; color: #fff;
  font-family: 'Playfair Display', serif; flex-shrink: 0;
}
.aip-feat-by  { font-size: 12px; font-weight: 600; color: rgba(255,255,255,.7); }
.aip-mdot     { width: 3px; height: 3px; border-radius: 50%; background: rgba(255,255,255,.2); }
.aip-feat-dt  { font-size: 12px; color: rgba(255,255,255,.35); }
.aip-feat-rd  { font-size: 11px; color: var(--aip-org); font-weight: 700; letter-spacing: .5px; }

/* Side stack */
.aip-stack { display: flex; flex-direction: column; gap: 12px; }
.aip-scard {
  background: var(--aip-blk2);
  border: 1px solid rgba(255,255,255,.06);
  border-radius: var(--aip-rlg);
  overflow: hidden; display: flex; transition: border-color .2s, background .2s;
}
.aip-scard:hover { border-color: rgba(255,107,0,.3); background: rgba(255,255,255,.02); }
.aip-scard:hover .aip-sc-t { color: var(--aip-org2); }
.aip-sc-thumb       { width: 110px; flex-shrink: 0; }
.aip-sc-thumb img   { width: 100%; height: 100%; object-fit: cover; }
.aip-sc-body        { padding: 14px 16px; flex: 1; }
.aip-sc-cat  {
  font-size: 9px; font-weight: 700; letter-spacing: 1.2px;
  text-transform: uppercase; color: var(--aip-org); margin-bottom: 5px;
  font-family: 'Outfit', sans-serif;
}
.aip-sc-t {
  font-size: 13px; font-weight: 700; color: #fff;
  line-height: 1.3; font-family: 'Playfair Display', serif;
  transition: color .2s; margin-bottom: 5px;
}
.aip-sc-dt { font-size: 11px; color: rgba(255,255,255,.3); font-family: 'Outfit', sans-serif; }

/* =========================================================
   CATEGORY NAV
========================================================= */
.aip-catnav {
  background: var(--aip-wht);
  border-bottom: 1px solid var(--aip-bdr);
  padding: 0 60px; overflow-x: auto;
}
.aip-catnav-in { max-width: 1160px; margin: 0 auto; display: flex; }
.aip-catlink {
  padding: 14px 18px; font-size: 12px; font-weight: 600;
  letter-spacing: .8px; text-transform: uppercase; color: var(--aip-txt3);
  white-space: nowrap; border-bottom: 2px solid transparent;
  transition: color .2s, border-color .2s; display: block;
  font-family: 'Outfit', sans-serif;
}
.aip-catlink:hover, .aip-catlink.aip-act {
  color: var(--aip-org); border-bottom-color: var(--aip-org);
}

/* =========================================================
   TRENDING TICKER
========================================================= */
.aip-ticker {
  background: var(--aip-orgpal);
  border-bottom: 1px solid rgba(255,107,0,.15);
  padding: 10px 60px;
}
.aip-ticker-in { max-width: 1160px; margin: 0 auto; display: flex; align-items: center; gap: 18px; }
.aip-tick-lbl {
  font-size: 10px; font-weight: 700; letter-spacing: 1.5px;
  text-transform: uppercase; background: var(--aip-org); color: #fff;
  padding: 4px 11px; border-radius: 2px; flex-shrink: 0;
  font-family: 'Outfit', sans-serif;
}
.aip-tick-items { display: flex; gap: 26px; flex: 1; flex-wrap: wrap; }
.aip-tick-i {
  font-size: 12px; font-weight: 500; color: var(--aip-txt2);
  white-space: nowrap; display: flex; align-items: center; gap: 7px;
  font-family: 'Outfit', sans-serif;
}
.aip-tick-i::before { content: '▶'; font-size: 8px; color: var(--aip-org); }

/* =========================================================
   MAIN LAYOUT (main col + sidebar)
========================================================= */
.aip-main-wrap { background: var(--aip-wht); }
.aip-main {
  max-width: 1160px; margin: 0 auto;
  padding: 52px 60px;
  display: grid; grid-template-columns: 1fr 320px; gap: 48px;
}

/* Section label */
.aip-sec-lbl {
  display: flex; align-items: center; gap: 12px;
  margin-bottom: 26px; padding-bottom: 12px;
  border-bottom: 2px solid var(--aip-blk);
}
.aip-sec-acc  { width: 28px; height: 3px; background: var(--aip-org); border-radius: 2px; flex-shrink: 0; }
.aip-sec-txt  { font-size: 13px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--aip-blk); font-family: 'Outfit', sans-serif; }
.aip-sec-line { flex: 1; height: 1px; background: var(--aip-bdr); }

/* H1 intro */
.aip-h1 {
  font-size: 28px; font-weight: 900; letter-spacing: -.5px;
  margin-bottom: 8px; font-family: 'Playfair Display', serif;
}
.aip-intro {
  font-size: 15px; color: var(--aip-txt3); font-weight: 300;
  margin-bottom: 36px; line-height: 1.7; font-family: 'Outfit', sans-serif;
}
.aip-intro a { color: var(--aip-org); font-weight: 600; }

/* Article grid 2-col */
.aip-agrid {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 24px; margin-bottom: 48px;
}
.aip-acard {
  background: var(--aip-wht); border: 1px solid var(--aip-bdr);
  border-radius: var(--aip-rlg); overflow: hidden; display: block;
  transition: box-shadow .25s, border-color .25s;
}
.aip-acard:hover { box-shadow: 0 8px 28px rgba(0,0,0,.1); border-color: rgba(255,107,0,.22); }
.aip-acard:hover .aip-ac-img { transform: scale(1.04); }
.aip-ac-imgw { height: 185px; overflow: hidden; }
.aip-ac-img  { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.aip-ac-body { padding: 18px 20px; }
.aip-ac-cat  {
  font-size: 10px; font-weight: 700; letter-spacing: 1.2px;
  text-transform: uppercase; color: var(--aip-org); margin-bottom: 8px;
  font-family: 'Outfit', sans-serif;
}
.aip-ac-title {
  font-size: 16px; font-weight: 700; color: var(--aip-txt);
  line-height: 1.28; margin-bottom: 10px;
  font-family: 'Playfair Display', serif; transition: color .2s;
}
.aip-acard:hover .aip-ac-title { color: var(--aip-org); }
.aip-ac-exc {
  font-size: 13px; color: var(--aip-txt3); line-height: 1.65;
  margin-bottom: 14px; font-weight: 300; font-family: 'Outfit', sans-serif;
}
.aip-ac-foot { display: flex; align-items: center; justify-content: space-between; }
.aip-ac-auth { font-size: 11px; color: var(--aip-txt3); font-weight: 500; font-family: 'Outfit', sans-serif; }
.aip-ac-rd   { font-size: 11px; color: var(--aip-org); font-weight: 700; font-family: 'Outfit', sans-serif; }

/* Article list */
.aip-alist { display: flex; flex-direction: column; }
.aip-ali {
  display: flex; gap: 16px; padding: 18px 0;
  border-bottom: 1px solid var(--aip-bdr); align-items: flex-start;
}
.aip-ali:first-child { padding-top: 0; }
.aip-ali:last-child  { border-bottom: none; padding-bottom: 0; }
.aip-ali:hover .aip-ali-title { color: var(--aip-org); }
.aip-ali-num {
  font-family: 'Playfair Display', serif; font-size: 26px; font-weight: 900;
  color: var(--aip-bdr); line-height: 1; min-width: 30px; padding-top: 2px;
}
.aip-ali-body { flex: 1; }
.aip-ali-cat {
  font-size: 10px; font-weight: 700; letter-spacing: 1px;
  text-transform: uppercase; color: var(--aip-org); margin-bottom: 5px;
  font-family: 'Outfit', sans-serif;
}
.aip-ali-title {
  font-size: 15px; font-weight: 700; color: var(--aip-txt);
  line-height: 1.3; margin-bottom: 5px;
  font-family: 'Playfair Display', serif; transition: color .2s; display: block;
}
.aip-ali-meta { font-size: 11px; color: var(--aip-txt3); font-family: 'Outfit', sans-serif; }
.aip-ali-thumb { width: 78px; height: 62px; border-radius: 6px; overflow: hidden; flex-shrink: 0; }
.aip-ali-thumb img { width: 100%; height: 100%; object-fit: cover; }

.aip-loadmore { text-align: center; margin-top: 36px; }
.aip-load-btn {
  background: transparent; border: 2px solid var(--aip-blk); color: var(--aip-blk);
  padding: 12px 36px; font-family: 'Outfit', sans-serif;
  font-size: 13px; font-weight: 700; letter-spacing: .8px;
  text-transform: uppercase; cursor: pointer; border-radius: var(--aip-r);
  transition: all .2s; display: inline-block;
}
.aip-load-btn:hover { background: var(--aip-blk); color: #fff; }

/* =========================================================
   SIDEBAR
========================================================= */
.aip-sidebar { display: flex; flex-direction: column; gap: 34px; }
.aip-sw-title {
  font-size: 12px; font-weight: 700; letter-spacing: 1px;
  text-transform: uppercase; color: var(--aip-txt);
  padding-bottom: 12px; border-bottom: 2px solid var(--aip-blk);
  margin-bottom: 18px; display: flex; align-items: center; gap: 8px;
  font-family: 'Outfit', sans-serif;
}
.aip-sw-title span { color: var(--aip-org); }

/* Newsletter widget */
.aip-nw { background: var(--aip-blk); border-radius: var(--aip-rlg); padding: 26px 22px; }
.aip-nw-eye {
  font-size: 10px; font-weight: 700; letter-spacing: 1.5px;
  text-transform: uppercase; color: var(--aip-org); margin-bottom: 8px;
  font-family: 'Outfit', sans-serif;
}
.aip-nw-h {
  font-family: 'Playfair Display', serif; font-size: 19px; font-weight: 900;
  color: #fff; line-height: 1.2; margin-bottom: 8px;
}
.aip-nw-p {
  font-size: 13px; color: rgba(255,255,255,.5); font-weight: 300;
  margin-bottom: 18px; line-height: 1.6; font-family: 'Outfit', sans-serif;
}
.aip-nw-form { display: flex; flex-direction: column; gap: 9px; }
.aip-nw-inp {
  background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.12);
  color: #fff; padding: 11px 13px; font-family: 'Outfit', sans-serif;
  font-size: 13px; border-radius: var(--aip-r); outline: none;
}
.aip-nw-inp::placeholder { color: rgba(255,255,255,.3); }
.aip-nw-btn {
  background: var(--aip-org); color: #fff; border: none; padding: 12px;
  font-family: 'Outfit', sans-serif; font-size: 13px; font-weight: 600;
  cursor: pointer; border-radius: var(--aip-r); transition: background .2s;
}
.aip-nw-btn:hover { background: var(--aip-org2); }
.aip-nw-note {
  font-size: 10px; color: rgba(255,255,255,.25);
  text-align: center; margin-top: 6px; font-family: 'Outfit', sans-serif;
}

/* Author widget */
.aip-aw {
  background: var(--aip-off); border: 1px solid var(--aip-bdr);
  border-radius: var(--aip-rlg); padding: 22px; text-align: center;
}
.aip-aw-av {
  width: 60px; height: 60px; border-radius: 50%; background: var(--aip-blk);
  display: flex; align-items: center; justify-content: center;
  font-family: 'Playfair Display', serif; font-size: 22px; font-weight: 900;
  color: var(--aip-org); margin: 0 auto 12px; border: 3px solid var(--aip-org);
}
.aip-aw-name { font-size: 16px; font-weight: 700; color: var(--aip-txt); font-family: 'Playfair Display', serif; margin-bottom: 3px; }
.aip-aw-role { font-size: 12px; color: var(--aip-txt3); margin-bottom: 10px; font-family: 'Outfit', sans-serif; }
.aip-aw-bio  { font-size: 13px; color: var(--aip-txt2); line-height: 1.6; font-weight: 300; margin-bottom: 14px; font-family: 'Outfit', sans-serif; }
.aip-aw-btns { display: flex; justify-content: center; gap: 8px; flex-wrap: wrap; }
.aip-aw-btn  {
  background: var(--aip-org); color: #fff; padding: 6px 14px;
  font-size: 11px; font-weight: 600; border-radius: var(--aip-r);
  transition: background .2s; letter-spacing: .5px; display: inline-block;
  font-family: 'Outfit', sans-serif;
}
.aip-aw-btn:hover { background: var(--aip-wht); }

/* Services CTA widget */
.aip-svc-w {
  background: var(--aip-blk); border-radius: var(--aip-rlg);
  padding: 24px 22px; border-left: 4px solid var(--aip-org);
}
.aip-svc-w h4 {
  font-size: 16px; font-weight: 900; color: #fff;
  font-family: 'Playfair Display', serif; margin-bottom: 10px;
}
.aip-svc-w p {
  font-size: 13px; color: rgba(255,255,255,.55);
  font-weight: 300; margin-bottom: 16px; line-height: 1.6;
  font-family: 'Outfit', sans-serif;
}
.aip-svc-wb {
  display: block; background: var(--aip-org); color: #fff;
  text-align: center; padding: 11px 16px; font-size: 13px; font-weight: 600;
  border-radius: var(--aip-r); transition: background .2s;
  font-family: 'Outfit', sans-serif;
}
.aip-svc-wb:hover { background: var(--aip-org2); }

/* Popular widget */
.aip-pop-list { display: flex; flex-direction: column; }
.aip-pop-i {
  display: flex; gap: 12px; align-items: flex-start;
  padding: 13px 0; border-bottom: 1px solid var(--aip-bdr);
}
.aip-pop-i:first-child { padding-top: 0; }
.aip-pop-i:last-child  { border-bottom: none; padding-bottom: 0; }
.aip-pop-i:hover .aip-pi-t { color: var(--aip-org); }
.aip-pi-n   { font-family: 'Playfair Display', serif; font-size: 21px; font-weight: 900; color: rgba(0,0,0,.1); line-height: 1; min-width: 24px; }
.aip-pi-b   { flex: 1; }
.aip-pi-cat {
  font-size: 9px; font-weight: 700; letter-spacing: 1px;
  text-transform: uppercase; color: var(--aip-org); margin-bottom: 3px;
  font-family: 'Outfit', sans-serif;
}
.aip-pi-t   { font-size: 13px; font-weight: 600; color: var(--aip-txt); line-height: 1.35; margin-bottom: 3px; transition: color .2s; display: block; }
.aip-pi-meta{ font-size: 10px; color: var(--aip-txt3); font-family: 'Outfit', sans-serif; }

/* Tags */
.aip-tags { display: flex; flex-wrap: wrap; gap: 7px; }
.aip-tag {
  background: var(--aip-off); border: 1px solid var(--aip-bdr);
  color: var(--aip-txt2); padding: 6px 12px; font-size: 11px; font-weight: 500;
  border-radius: 100px; cursor: pointer; transition: all .2s; display: inline-block;
  font-family: 'Outfit', sans-serif;
}
.aip-tag:hover  { background: var(--aip-org); border-color: var(--aip-org); color: #fff; }
.aip-tag.aip-hot{ background: var(--aip-orgpal); border-color: rgba(255,107,0,.3); color: var(--aip-orgdk); }

/* =========================================================
   MICRO CTA BARS
========================================================= */
.aip-micro { background: var(--aip-org); padding: 24px 60px; }
.aip-micro-in {
  max-width: 1160px; margin: 0 auto;
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
}
.aip-micro p    { font-size: 16px; font-weight: 600; color: #fff; font-family: 'Outfit', sans-serif; }
.aip-micro span { font-size: 13px; font-weight: 300; color: rgba(255,255,255,.8); display: block; margin-top: 3px; font-family: 'Outfit', sans-serif; }
.aip-micro-btn  {
  background: var(--aip-blk); color: #fff; border: none;
  padding: 12px 24px; font-family: 'Outfit', sans-serif;
  font-size: 13px; font-weight: 700; cursor: pointer;
  border-radius: var(--aip-r); white-space: nowrap; transition: background .2s; display: inline-block;
}
.aip-micro-btn:hover { background: var(--aip-blk2); }

/* =========================================================
   TOPIC SECTIONS
========================================================= */
.aip-topic { padding: 56px 60px; border-top: 1px solid var(--aip-bdr); }
.aip-topic.aip-dk { background: var(--aip-blk); border-top: none; }
.aip-topic-in    { max-width: 1160px; margin: 0 auto; }
.aip-topic-hdr   { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 10px; }
.aip-topic-eye   { font-size: 11px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--aip-org); margin-bottom: 6px; font-family: 'Outfit', sans-serif; }
.aip-topic-h     { font-size: 26px; font-weight: 900; color: var(--aip-txt); letter-spacing: -.5px; }
.aip-topic.aip-dk .aip-topic-h { color: #fff; }
.aip-topic-desc  { font-size: 14px; color: var(--aip-txt3); font-weight: 300; margin-bottom: 28px; line-height: 1.7; font-family: 'Outfit', sans-serif; }
.aip-topic.aip-dk .aip-topic-desc { color: rgba(255,255,255,.5); }
.aip-viewall { font-size: 12px; font-weight: 700; color: var(--aip-org); letter-spacing: .5px; display: flex; align-items: center; gap: 4px; white-space: nowrap; font-family: 'Outfit', sans-serif; }
.aip-viewall:hover { text-decoration: underline; }
.aip-t3 { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }

/* Topic card */
.aip-tc {
  background: var(--aip-wht); border: 1px solid var(--aip-bdr);
  border-radius: var(--aip-rlg); overflow: hidden; display: block;
  transition: box-shadow .25s, border-color .25s;
}
.aip-tc:hover { box-shadow: 0 6px 24px rgba(0,0,0,.09); border-color: rgba(255,107,0,.2); }
.aip-tc:hover .aip-tc-img { transform: scale(1.04); }
.aip-tc-imgw { height: 165px; overflow: hidden; }
.aip-tc-img  { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.aip-tc-body { padding: 16px 18px; }
.aip-tc-cat  { font-size: 10px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; color: var(--aip-org); margin-bottom: 6px; font-family: 'Outfit', sans-serif; }
.aip-tc-title{ font-size: 14px; font-weight: 700; color: var(--aip-txt); line-height: 1.3; margin-bottom: 8px; font-family: 'Playfair Display', serif; transition: color .2s; }
.aip-tc:hover .aip-tc-title { color: var(--aip-org); }
.aip-tc-exc  { font-size: 12px; color: var(--aip-txt3); line-height: 1.6; margin-bottom: 10px; font-weight: 300; font-family: 'Outfit', sans-serif; }
.aip-tc-meta { font-size: 11px; color: var(--aip-txt3); display: flex; justify-content: space-between; font-family: 'Outfit', sans-serif; }

/* Dark card */
.aip-tc.aip-dk { background: var(--aip-blk2); border-color: rgba(255,255,255,.06); }
.aip-tc.aip-dk:hover { border-color: rgba(255,107,0,.3); }
.aip-tc.aip-dk .aip-tc-title { color: #fff; }
.aip-tc.aip-dk:hover .aip-tc-title { color: var(--aip-org2); }
.aip-tc.aip-dk .aip-tc-exc  { color: rgba(255,255,255,.45); }
.aip-tc.aip-dk .aip-tc-meta { color: rgba(255,255,255,.3); }

/* =========================================================
   STATS BAND
========================================================= */
.aip-stats { background: var(--aip-blk); padding: 48px 60px; }
.aip-stats-in {
  max-width: 1160px; margin: 0 auto;
  display: grid; grid-template-columns: repeat(4,1fr);
  gap: 1px; background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.06);
  border-radius: var(--aip-rlg); overflow: hidden;
}
.aip-stat     { background: var(--aip-blk2); padding: 30px 24px; text-align: center; }
.aip-stat-n   { font-family: 'Playfair Display', serif; font-size: 36px; font-weight: 900; color: var(--aip-org); line-height: 1; margin-bottom: 8px; }
.aip-stat-l   { font-size: 12px; color: rgba(255,255,255,.45); line-height: 1.4; font-weight: 300; font-family: 'Outfit', sans-serif; }

/* =========================================================
   NEWSLETTER BANNER
========================================================= */
.aip-nl { background: var(--aip-org); padding: 60px; }
.aip-nl-in {
  max-width: 1160px; margin: 0 auto;
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 56px; align-items: center;
}
.aip-nl h2  { font-size: 34px; font-weight: 900; color: #fff; letter-spacing: -1px; line-height: 1.12; margin-bottom: 12px; }
.aip-nl-p   { font-size: 15px; color: rgba(255,255,255,.8); font-weight: 300; line-height: 1.7; font-family: 'Outfit', sans-serif; }
.aip-nl-form{ display: flex; gap: 10px; margin-bottom: 12px; }
.aip-nl-email{
  flex: 1; background: #fff; border: none; padding: 14px 16px;
  font-family: 'Outfit', sans-serif; font-size: 14px;
  border-radius: var(--aip-r); outline: none; color: var(--aip-txt);
}
.aip-nl-sub {
  background: var(--aip-blk); color: #fff; border: none;
  padding: 14px 22px; font-family: 'Outfit', sans-serif;
  font-size: 14px; font-weight: 600; cursor: pointer;
  border-radius: var(--aip-r); white-space: nowrap; transition: background .2s;
}
.aip-nl-sub:hover { background: var(--aip-blk2); }
.aip-nl-perks{ display: flex; gap: 18px; flex-wrap: wrap; }
.aip-nl-perk { font-size: 12px; color: rgba(255,255,255,.85); display: flex; align-items: center; gap: 5px; font-family: 'Outfit', sans-serif; }
.aip-nl-perk::before { content: '✓'; font-weight: 700; color: #fff; }

/* =========================================================
   RESPONSIVE
========================================================= */
@media (max-width: 1100px) {
  .aip-hero,
  .aip-catnav,
  .aip-ticker,
  .aip-micro,
  .aip-stats,
  .aip-nl      { padding-left: 24px; padding-right: 24px; }
  .aip-main    { padding: 36px 24px; }
  .aip-topic   { padding: 44px 24px; }
}
@media (max-width: 960px) {
  .aip-hero-in { grid-template-columns: 1fr; gap: 20px; }
  .aip-feat-imgw { height: 240px; }
  .aip-main    { grid-template-columns: 1fr; gap: 36px; }
  .aip-agrid   { grid-template-columns: 1fr; }
  .aip-t3      { grid-template-columns: 1fr 1fr; }
  .aip-nl-in   { grid-template-columns: 1fr; gap: 28px; }
  .aip-nl-form { flex-direction: column; }
  .aip-stats-in{ grid-template-columns: 1fr 1fr; }
  .aip-micro-in{ flex-direction: column; text-align: center; }
}
@media (max-width: 600px) {
  .aip-t3      { grid-template-columns: 1fr; }
  .aip-stats-in{ grid-template-columns: 1fr 1fr; }
  .aip-scard   { flex-direction: column; }
  .aip-sc-thumb{ width: 100%; height: 140px; }
}
/* RESTORE NORMAL ASTRA FOR OTHER PAGES */
body:not(.home) .ast-container {
  max-width: 1200px;
  margin: auto;
}
/* GLOBAL FIX FOR MOBILE OVERFLOW */
html, body {
  overflow-x: hidden;
  max-width: 100%;
}
/* RESET HEADER TO NORMAL */
.main-header-bar,
.site-header,
.ast-header-break-point .main-header-bar {
  position: relative !important;
  top: auto !important;
}