@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=Lora:ital,wght@0,400;0,600;1,400&family=Inter:wght@400;500;600;700;800&display=swap');

/* =========================================================
   CSA & CSV â€” DESIGN TOKENS
========================================================= */
:root{
  --navy:#002347;
  --navy-dark:#004D88;
  --teal:#009C8D;
  --teal-dark:#008779;
  --grad:linear-gradient(135deg, #002347 0%, #009C8D 100%);
  --grad-soft:linear-gradient(135deg,rgba(0,35,71,.06) 0%,rgba(0,156,141,.06) 100%);
  --grad-text:linear-gradient(135deg, #002347 0%, #009C8D 100%);
  --ink:#0F172A;
  --sub:#4A5568;
  --line:#EDF2F7;
  --tint-navy:#EDF2F7;
  --tint-teal:#E5FAF7;
  --white:#ffffff;
  --radius-lg:20px;
  --radius-md:14px;
  --radius-sm:10px;
  --shadow-sm:0 4px 16px rgba(0,42,74,.06);
  --shadow-md:0 14px 40px rgba(0,42,74,.10);
  --shadow-lg:0 24px 60px rgba(0,42,74,.14);
  --f-display:'Plus Jakarta Sans',sans-serif;
  --f-body:'Inter',sans-serif;
  --f-mono:'Inter',sans-serif;
  --wrap:1240px;
}

.csacsv{ font-family:var(--f-body); color:var(--ink); background:var(--white); overflow-x:hidden; }
.csacsv *{ box-sizing:border-box; }
.csacsv img{ max-width:100%; display:block; }
.csacsv h1,.csacsv h2,.csacsv h3,.csacsv h4{ font-family:var(--f-display); color:var(--ink); margin:0; line-height:1.18; }
.csacsv p{ margin:0; }
.csacsv section{ background:var(--white); position:relative; }

.ib-shell{ max-width:var(--wrap); margin:0 auto; padding:0 24px; }

/* ---------- reusable section head ---------- */
.ib-head{ max-width:760px; margin:0 auto 56px; text-align:center; position:relative; z-index:2; }
.ib-head.left{ margin:0 0 48px; text-align:left; }
.ib-eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  font-family:var(--f-mono); font-size:12px; font-weight:600;
  letter-spacing:.14em; text-transform:uppercase; color:var(--teal-dark);
  background:var(--tint-teal); border:1px solid rgba(0,156,141,.25);
  padding:7px 16px; border-radius:100px; margin-bottom:18px;
}
.ib-eyebrow::before{ content:''; width:6px; height:6px; border-radius:50%; background:var(--grad); }
.ib-head h2{ font-size:clamp(28px,3.4vw,42px); font-weight:700; letter-spacing:-.01em; }
.ib-head p{ margin-top:14px; font-size:16.5px; color:var(--sub); line-height:1.7; }
.ib-grad-word{ background:var(--grad-text); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }

.csacsv section + section{ border-top:1px solid var(--line); }
.csacsv .no-border{ border-top:none !important; }

/* =========================================================
   HERO
========================================================= */
.ib-hero{ padding:64px 0 76px; position:relative; }
.ib-hero::before{
  content:''; position:absolute; inset:0; z-index:0;
  background:
    radial-gradient(600px 320px at 85% -10%, rgba(0,156,141,.09), transparent 60%),
    radial-gradient(500px 300px at -5% 110%, rgba(0,77,136,.08), transparent 60%);
}
.ib-hero-grid{ position:relative; z-index:2; display:grid; grid-template-columns:1.05fr .95fr; gap:56px; align-items:center; }
.ib-hero-tag{
  display:inline-flex; align-items:center; gap:8px; font-family:var(--f-mono);
  font-size:12px; font-weight:600; letter-spacing:.14em; text-transform:uppercase;
  color:var(--white); background:var(--grad); padding:8px 16px; border-radius:100px; margin-bottom:22px;
}
.ib-hero h1{ font-size:clamp(34px,4.4vw,52px); font-weight:800; letter-spacing:-.02em; margin-bottom:16px; }
.ib-hero .ib-hero-sub{ font-size:18px; font-weight:600; color:var(--navy); margin-bottom:14px; line-height:1.5; }
.ib-hero .ib-hero-desc{ font-size:15.5px; color:var(--sub); line-height:1.8; max-width:560px; margin-bottom:28px; }
.ib-hero-cta{ display:flex; gap:14px; flex-wrap:wrap; }
.ib-btn-primary,.ib-btn-ghost{
  font-family:var(--f-body); font-weight:700; font-size:14.5px; letter-spacing:.01em;
  padding:15px 26px; border-radius:10px; text-decoration:none; display:inline-flex; align-items:center; gap:8px;
  transition:transform .25s ease, box-shadow .25s ease;
}
.ib-btn-primary{ background:var(--grad); color:#fff; box-shadow:var(--shadow-md); }
.ib-btn-primary:hover{ transform:translateY(-2px); box-shadow:var(--shadow-lg); }
.ib-btn-ghost{ background:#fff; color:var(--navy); border:1.5px solid var(--line); }
.ib-btn-ghost:hover{ border-color:var(--navy); transform:translateY(-2px); }

.ib-hero-panel{
  background:var(--grad); border-radius:24px; padding:30px; box-shadow:var(--shadow-lg);
  position:relative;
}
.ib-hero-panel::after{
  content:''; position:absolute; inset:0; border-radius:24px;
  background:radial-gradient(400px 200px at 100% 0%, rgba(255,255,255,.18), transparent 60%);
}
.ib-hero-list{ position:relative; z-index:2; display:grid; gap:10px; }
.ib-hero-list li{
  list-style:none; display:flex; align-items:center; gap:12px;
  background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(6px); color:#fff; font-size:14px; font-weight:600;
  padding:13px 16px; border-radius:12px;
}
.ib-hero-list li .tick{
  width:22px; height:22px; border-radius:50%; background:#fff; color:var(--teal-dark);
  display:flex; align-items:center; justify-content:center; font-size:12px; flex-shrink:0;
}

@media(max-width:992px){
  .ib-hero-grid{ grid-template-columns:1fr; }
}

/* =========================================================
   WHY DIGITAL COMPLIANCE MATTERS (existing enhanced)
========================================================= */
.ib-dcm{ padding:88px 0; }
.ib-dcm-grid{ display:grid; grid-template-columns:.95fr 1.05fr; gap:60px; align-items:center; }
.ib-dcm-points{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.ib-point-pill{
  display:flex; align-items:center; gap:10px; background:var(--tint-navy);
  border:1px solid var(--line); border-radius:12px; padding:14px 16px; font-size:14px; font-weight:600; color:var(--navy);
}
.ib-point-pill .dot{ width:8px; height:8px; border-radius:50%; background:var(--grad); flex-shrink:0; }
.ib-dcm-text h2{ font-size:clamp(26px,3.2vw,36px); font-weight:700; margin-bottom:18px; letter-spacing:-.01em; }
.ib-dcm-text p{ color:var(--sub); font-size:15.5px; line-height:1.85; }
.ib-dcm-text p + p{ margin-top:14px; }
@media(max-width:900px){ .ib-dcm-grid{ grid-template-columns:1fr; } .ib-dcm-points{ grid-template-columns:1fr 1fr; } }
@media(max-width:520px){ .ib-dcm-points{ grid-template-columns:1fr; } }

/* =========================================================
   CHALLENGES GRID
========================================================= */
.ib-challenges{ padding:88px 0; background:var(--tint-navy); }
.ib-challenges-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.ib-chal-card{
  background:#fff; border:1px solid var(--line); border-radius:var(--radius-md);
  padding:20px 18px; display:flex; align-items:flex-start; gap:12px; box-shadow:var(--shadow-sm);
  transition:transform .25s ease, box-shadow .25s ease;
}
.ib-chal-card:hover{ transform:translateY(-4px); box-shadow:var(--shadow-md); }
.ib-chal-card .mark{
  width:30px; height:30px; border-radius:8px; background:rgba(0,77,136,.08); color:var(--navy);
  display:flex; align-items:center; justify-content:center; font-size:13px; flex-shrink:0; font-weight:700;
}
.ib-chal-card span{ font-size:14.5px; font-weight:600; color:var(--ink); line-height:1.5; }
@media(max-width:900px){ .ib-challenges-grid{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:560px){ .ib-challenges-grid{ grid-template-columns:1fr; } }

/* =========================================================
   MOVING BEYOND CSV â€” intro strip
========================================================= */
.ib-beyond-intro{ padding:80px 0 20px; }
.ib-beyond-copy{ max-width:820px; margin:0 auto; text-align:center; }
.ib-beyond-copy p{ color:var(--sub); font-size:16px; line-height:1.85; }
.ib-beyond-copy p + p{ margin-top:12px; }

/* =========================================================
   CSA LIFECYCLE FLOW â€” SIGNATURE ELEMENT
========================================================= */
.ib-flow{ padding:52px 0 96px; }
.ib-flow-track{
  display:grid; grid-template-columns:repeat(8,1fr); gap:0; position:relative; margin-top:16px;
}
.ib-flow-track::before{
  content:''; position:absolute; top:26px; left:6%; right:6%; height:2px;
  background:var(--grad); opacity:.35; z-index:0;
}
.ib-flow-node{ position:relative; z-index:1; padding:0 8px; text-align:center; }
.ib-flow-num{
  width:52px; height:52px; margin:0 auto 16px; border-radius:50%; background:var(--grad);
  color:#fff; font-family:var(--f-mono); font-weight:600; font-size:16px;
  display:flex; align-items:center; justify-content:center; box-shadow:var(--shadow-md);
  border:4px solid #fff;
}
.ib-flow-node h4{ font-size:13.5px; font-weight:700; margin-bottom:6px; letter-spacing:-.005em; }
.ib-flow-node p{ font-size:12px; color:var(--sub); line-height:1.5; }
.ib-flow-node.sub .ib-flow-num{ width:44px; height:44px; font-size:13px; background:#fff; color:var(--navy); border:2px solid var(--teal); }

@media(max-width:992px){
  .ib-flow-track{ grid-template-columns:1fr; gap:0; }
  .ib-flow-track::before{ left:26px; right:auto; top:0; bottom:0; width:2px; height:auto; }
  .ib-flow-node{ display:flex; align-items:center; gap:18px; text-align:left; padding:16px 0; }
  .ib-flow-num{ margin:0; flex-shrink:0; }
}

/* =========================================================
   COMPARISON TABLE â€” CSV vs CSA
========================================================= */
.ib-compare{ padding:20px 0 92px; }
.ib-compare-table{
  border:1px solid var(--line); border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-sm);
}
.ib-compare-row{ display:grid; grid-template-columns:1fr 1fr; }
.ib-compare-row + .ib-compare-row{ border-top:1px solid var(--line); }
.ib-compare-row.head .ib-compare-cell{ font-family:var(--f-mono); font-size:12px; letter-spacing:.1em; text-transform:uppercase; font-weight:600; padding:16px 24px; }
.ib-compare-row.head .ib-compare-cell.old{ background:#f4f2ee; color:#9a7a5a; }
.ib-compare-row.head .ib-compare-cell.new{ background:var(--grad); color:#fff; }
.ib-compare-cell{ padding:18px 24px; font-size:14.5px; font-weight:500; display:flex; align-items:center; gap:10px; }
.ib-compare-cell.old{ color:#9a6a4a; background:#fbf9f6; }
.ib-compare-cell.new{ color:var(--navy); background:var(--tint-teal); font-weight:700; }
.ib-compare-cell .ic{ width:18px; height:18px; border-radius:50%; flex-shrink:0; display:flex; align-items:center; justify-content:center; font-size:10px; }
.ib-compare-cell.old .ic{ background:rgba(154,106,74,.15); color:#9a6a4a; }
.ib-compare-cell.new .ic{ background:var(--grad); color:#fff; }
@media(max-width:640px){
  .ib-compare-row{ grid-template-columns:1fr; }
  .ib-compare-row.head .ib-compare-cell.old{ display:none; }
}

/* =========================================================
   SERVICES (existing 3-card layout enhanced)
========================================================= */
.ib-services{ padding:92px 0; background:var(--tint-navy); }
.ib-services-grid{ display:grid; grid-template-columns:1fr 1.1fr 1fr; gap:20px; align-items:stretch; }
.ib-svc-card{ background:#fff; border-radius:var(--radius-lg); padding:32px 26px; border:1px solid var(--line); box-shadow:var(--shadow-sm); }
.ib-svc-card.center{ background:var(--grad); color:#fff; display:flex; flex-direction:column; justify-content:center; text-align:center; box-shadow:var(--shadow-md); }
.ib-svc-card.center h3{ color:#fff; font-size:24px; margin-bottom:14px; }
.ib-svc-card.center p{ color:rgba(255,255,255,.9); font-size:14.5px; line-height:1.7; }
.ib-svc-card h3{ font-size:15px; font-family:var(--f-mono); letter-spacing:.06em; text-transform:uppercase; color:var(--navy); margin-bottom:18px; }
.ib-svc-list{ list-style:none; margin:0; padding:0; display:grid; gap:12px; }
.ib-svc-list li{ font-size:14.5px; color:var(--ink); font-weight:500; padding-left:22px; position:relative; line-height:1.5; }
.ib-svc-list li::before{ content:''; position:absolute; left:0; top:6px; width:9px; height:9px; border-radius:3px; background:var(--grad); }
@media(max-width:992px){ .ib-services-grid{ grid-template-columns:1fr; } .ib-svc-card.center{ order:-1; } }

/* =========================================================
   VALIDATION LIFECYCLE COVERAGE (icon cards)
========================================================= */
.ib-lccov{ padding:92px 0; background:var(--tint-navy); }
.ib-lccov-grid{ display:grid; grid-template-columns:repeat(6,1fr); gap:14px; }
.ib-lccov-card{
  text-align:center; padding:28px 16px; border-radius:var(--radius-md);
  border:1px solid var(--line); background:#fff; transition:.25s ease;
}
.ib-lccov-card:hover{ transform:translateY(-4px); box-shadow:var(--shadow-md); border-color:var(--teal); }
.ib-lccov-icon{
  width:52px; height:52px; margin:0 auto 16px; border-radius:14px; background:var(--grad-soft);
  color:var(--navy); display:flex; align-items:center; justify-content:center; font-size:20px;
}
.ib-lccov-card h4{ font-size:14px; }
@media(max-width:992px){ .ib-lccov-grid{ grid-template-columns:repeat(3,1fr); } }
@media(max-width:560px){ .ib-lccov-grid{ grid-template-columns:1fr 1fr; } }

/* =========================================================
   DELIVERABLES
========================================================= */
.ib-deliver{ padding:92px 0; }
.ib-deliver-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.ib-deliver-card{
  border:1px solid var(--line); border-radius:var(--radius-md); padding:20px 18px;
  display:flex; align-items:center; gap:12px; transition:.25s ease; background:#fff;
}
.ib-deliver-card:hover{ border-color:var(--teal); box-shadow:var(--shadow-sm); transform:translateY(-3px); }
.ib-deliver-card .num{ font-family:var(--f-mono); font-size:12px; color:var(--teal-dark); font-weight:700; }
.ib-deliver-card span{ font-size:14px; font-weight:600; color:var(--ink); line-height:1.4; }
@media(max-width:992px){ .ib-deliver-grid{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:560px){ .ib-deliver-grid{ grid-template-columns:1fr; } }

/* Document coverage icon chips */
.ib-doc-strip{ margin-top:36px; display:flex; flex-wrap:wrap; gap:12px; justify-content:center; }
.ib-doc-chip{
  font-family:var(--f-mono); font-weight:700; font-size:13px; letter-spacing:.03em;
  color:var(--white); background:var(--grad); padding:12px 20px; border-radius:10px;
  box-shadow:var(--shadow-sm); min-width:64px; text-align:center;
}

/* =========================================================
   DIGITAL SYSTEMS ARCHITECTURE
========================================================= */
.ib-arch{ padding:92px 0; background:var(--tint-teal); }
.ib-arch-grid{ display:grid; grid-template-columns:1fr auto 1fr; gap:40px; align-items:center; }
.ib-arch-stack{ display:grid; gap:12px; }
.ib-arch-layer{
  background:#fff; border:1px solid var(--line); border-radius:12px; padding:16px 20px;
  font-weight:700; font-size:14.5px; color:var(--navy); box-shadow:var(--shadow-sm);
  display:flex; align-items:center; justify-content:space-between;
}
.ib-arch-layer small{ font-family:var(--f-mono); font-size:11px; color:var(--sub); font-weight:600; }
.ib-arch-divider{ width:2px; height:100%; min-height:220px; background:repeating-linear-gradient(180deg,var(--teal) 0 8px,transparent 8px 16px); justify-self:center; }
.ib-arch-tags{ display:flex; flex-wrap:wrap; gap:10px; align-content:center; }
.ib-arch-tag{
  background:#fff; border:1.5px solid var(--navy); color:var(--navy); font-weight:700; font-size:13px;
  padding:10px 16px; border-radius:100px;
}
.ib-arch-tag.alt{ border-color:var(--teal); color:var(--teal-dark); }
@media(max-width:900px){ .ib-arch-grid{ grid-template-columns:1fr; } .ib-arch-divider{ display:none; } }

/* =========================================================
   RISK ASSESSMENT MATRIX
========================================================= */
.ib-risk{ padding:92px 0; }
.ib-risk-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:36px; }
.ib-risk-card{ border-radius:var(--radius-lg); padding:26px 22px; color:#fff; position:relative; overflow:hidden; }
.ib-risk-card.high{ background:linear-gradient(135deg,#a83a2f,#c2523f); }
.ib-risk-card.med{ background:linear-gradient(135deg,#b3781f,#d19a3a); }
.ib-risk-card.low{ background:var(--grad); }
.ib-risk-card .lvl{ font-family:var(--f-mono); font-size:11px; letter-spacing:.12em; text-transform:uppercase; opacity:.85; margin-bottom:10px; }
.ib-risk-card h4{ color:#fff; font-size:19px; margin-bottom:10px; }
.ib-risk-card p{ font-size:13.5px; color:rgba(255,255,255,.88); line-height:1.6; }
.ib-risk-strategy{ display:flex; justify-content:center; }
.ib-risk-tags{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center; }
.ib-risk-tag{
  background:var(--tint-navy); border:1px solid var(--line); border-radius:12px;
  padding:14px 22px; font-weight:700; font-size:14px; color:var(--navy); display:flex; align-items:center; gap:10px;
}
.ib-risk-tag .ic{ width:8px; height:8px; border-radius:50%; background:var(--grad); }
@media(max-width:900px){ .ib-risk-grid{ grid-template-columns:1fr; } }

/* =========================================================
   DATA INTEGRITY â€” ALCOA+
========================================================= */
.ib-alcoa{ padding:92px 0; background:#fff; }
.ib-alcoa-grid{ display:grid; grid-template-columns:repeat(9,1fr); gap:10px; }
.ib-alcoa-card{
  background:#fff; border:1px solid var(--line); border-radius:var(--radius-md);
  padding:22px 10px 18px; text-align:center; transition:.25s ease;
}
.ib-alcoa-card:hover{ transform:translateY(-4px); box-shadow:var(--shadow-md); border-color:var(--teal); }
.ib-alcoa-letter{
  width:42px; height:42px; margin:0 auto 12px; border-radius:50%; background:var(--grad); color:#fff;
  font-family:var(--f-mono); font-weight:700; font-size:16px; display:flex; align-items:center; justify-content:center;
}
.ib-alcoa-card span{ font-size:12px; font-weight:600; color:var(--ink); line-height:1.3; display:block; }
@media(max-width:992px){ .ib-alcoa-grid{ grid-template-columns:repeat(5,1fr); } }
@media(max-width:560px){ .ib-alcoa-grid{ grid-template-columns:repeat(3,1fr); } }
/* =========================================================
   LIFECYCLE COVERAGE (phase cards)
========================================================= */
.ib-phases{ padding:92px 0; background:var(--tint-teal); }
.ib-phases-track{ display:grid; grid-template-columns:repeat(6,1fr); gap:12px; }
.ib-phase-card{
  background:#fff; border-radius:var(--radius-md); padding:22px 16px; text-align:center;
  border:1px solid var(--line); position:relative;
}
.ib-phase-card::after{
  content:'â†’'; position:absolute; right:-16px; top:50%; transform:translateY(-50%);
  color:var(--teal); font-weight:700; font-size:15px;
}
.ib-phase-card:last-child::after{ display:none; }
.ib-phase-idx{ font-family:var(--f-mono); font-size:11px; color:var(--teal-dark); font-weight:700; margin-bottom:10px; }
.ib-phase-card h4{ font-size:14px; }
@media(max-width:992px){ .ib-phases-track{ grid-template-columns:repeat(3,1fr); } .ib-phase-card::after{ display:none; } }
@media(max-width:560px){ .ib-phases-track{ grid-template-columns:1fr 1fr; } }

/* =========================================================
   REGULATORY BADGE STRIP
========================================================= */
.ib-badges{ padding:44px 0 96px; }
.ib-badge-row{ display:flex; flex-wrap:wrap; gap:14px; justify-content:center; }
.ib-badge{
  display:flex; align-items:center; gap:10px; border:1.5px solid var(--line); border-radius:100px;
  padding:12px 20px; font-weight:700; font-size:13.5px; color:var(--navy); background:#fff;
  transition:.25s ease;
}
.ib-badge:hover{ border-color:var(--teal); box-shadow:var(--shadow-sm); }
.ib-badge .dot{ width:8px; height:8px; border-radius:50%; background:var(--grad); }

/* =========================================================
   WHY INCEPBIO (existing structure, restyled)
========================================================= */
.ib-why{ padding:92px 0; }

/* =========================================================
   FAQ / CTA generic polish hooks
========================================================= */
.ib-mono-tag{ font-family:var(--f-mono); }

/* =========================================================
   RESPONSIVE â€” global
========================================================= */
@media(max-width:768px){
  .ib-shell{ padding:0 18px; }
  .ib-head{ margin-bottom:38px; }
  .csacsv section{ padding-top:0; }
}

@media(prefers-reduced-motion:reduce){
  .csacsv *{ transition:none !important; animation:none !important; }
}

/* =========================================================
   GLOBAL RESPONSIVE AUDIT FIXES (MOBILE & TABLET)
========================================================= */

@media (max-width: 1200px) {
  .csa-container {
    max-width: 95%;
    padding: 0 20px;
  }
}

@media (max-width: 992px) {
  .csa-hero__title {
    font-size: clamp(32px, 5vw, 42px) !important;
  }
  .csa-hero__subtitle {
    font-size: 16px !important;
    max-width: 100% !important;
  }
  
  /* Fix Grid Overflows */
  .csa-about__grid,
  .csa-service__grid,
  .csa-why__grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px !important;
  }
  
  .csa-frame__grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 768px) {
  .csa-section {
    padding: 60px 0 !important;
  }
  
  .csa-heading {
    font-size: clamp(24px, 6vw, 32px) !important;
    line-height: 1.3 !important;
  }
  
  /* Make all grids 1 column */
  .csa-about__grid,
  .csa-service__grid,
  .csa-why__grid,
  .csa-frame__grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  
  /* Feature cards & Icons */
  .csa-feat-card {
    flex-direction: column !important;
    align-items: flex-start !important;
    text-align: left !important;
  }
  
  /* CTA Box */
  .csa-cta-box {
    flex-direction: column !important;
    text-align: center !important;
    padding: 30px 20px !important;
  }
  .csa-cta-box__actions {
    flex-direction: column !important;
    width: 100% !important;
  }
  .csa-cta-box__actions .csa-btn {
    width: 100% !important;
    justify-content: center !important;
  }
  
  /* Fix images to never stretch */
  
}

@media (max-width: 480px) {
  .csa-section {
    padding: 40px 0 !important;
  }
  .csa-heading {
    font-size: 24px !important;
  }
}


/* =========================================================
   USER FEEDBACK FIXES: HERO OVERLAP & INLINE CTA
========================================================= */
.ib-hero.no-border {
  padding-top: 160px; 
}

.tvr-inline-cta {
  background: var(--grad);
  border-radius: var(--radius-lg);
  padding: 32px 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  position: relative;
  overflow: hidden;
  margin: 40px auto 0;
  max-width: 900px;
}
.tvr-inline-cta__glow {
  position: absolute;
  top: -50px; left: -50px;
  width: 250px; height: 250px;
  background: radial-gradient(circle, rgba(255,255,255,0.15) 0%, transparent 70%);
  border-radius: 50%;
  pointer-events: none;
}
.tvr-inline-cta__content h3 {
  color: #ffffff !important;
  font-size: 28px;
  margin-bottom: 12px;
}
.tvr-inline-cta__content p {
  color: rgba(255, 255, 255, 0.85);
  font-size: 16px;
}
.tvr-inline-cta__actions {
  display: flex;
  gap: 16px;
  align-items: center;
  flex-shrink: 0;
}
.tvr-inline-cta__actions a {
  padding: 14px 28px;
  border-radius: 100px;
  text-decoration: none !important;
  font-weight: 700;
  font-size: 15px;
  transition: all 0.3s ease;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
}
.tvr-inline-cta__actions a:first-child {
  background: linear-gradient(135deg, var(--teal) 0%, #007a6e 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 20px rgba(0, 156, 141, 0.3) !important;
}
.tvr-inline-cta__actions a:first-child:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 25px rgba(0, 156, 141, 0.4) !important;
}
.tvr-inline-cta__actions a:last-child {
  background: linear-gradient(135deg, #012a52 0%, #004d88 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 20px rgba(0, 77, 136, 0.3) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
}
.tvr-inline-cta__actions a:last-child:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 25px rgba(0, 77, 136, 0.4) !important;
}
@media (max-width: 768px) {
  .tvr-inline-cta {
    flex-direction: column;
    text-align: center;
    padding: 32px 24px;
  }
}

/* =========================================================
   USER FEEDBACK FIXES: AUTOMATION SERVICES (adt-section)
========================================================= */
.adt-section {
  padding: 100px 0;
  background: var(--tint-navy);
}
.adt-heading {
  max-width: 800px;
  margin: 0 auto 60px;
  text-align: center;
}
.adt-heading span {
  display: inline-block;
  background: var(--tint-teal);
  color: var(--teal);
  padding: 6px 16px;
  border-radius: 100px;
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  margin-bottom: 16px;
}
.adt-heading h2 {
  font-size: 42px;
  color: var(--navy);
  margin-bottom: 24px;
}
.adt-heading p {
  font-size: 17px;
  color: var(--sub);
  line-height: 1.6;
}
.adt-wrapper {
  max-width: var(--wrap);
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
}
.adt-row {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 24px;
  background: var(--white);
  padding: 16px 24px;
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  transition: transform 0.3s ease;
}
.adt-row:hover {
  transform: translateX(10px);
}
.adt-line {
  width: 4px;
  height: 24px;
  background: var(--teal);
  border-radius: 4px;
}
.adt-row h3 {
  font-size: 18px;
  color: var(--navy);
  margin: 0;
}
.adt-right img {
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  width: 100%;
}
@media (max-width: 992px) {
  .adt-wrapper { grid-template-columns: 1fr; }
  .adt-heading h2 { font-size: 32px; }
}

/* =========================================================
   USER FEEDBACK FIXES: GLOBAL REGULATORY (grf-section)
========================================================= */
.grf-section {
  padding: 100px 0;
  background: var(--tint-teal);
  text-align: center;
}
.grf-eyebrow {
  display: inline-block;
  background: var(--white);
  color: var(--teal);
  padding: 6px 16px;
  border-radius: 100px;
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  margin-bottom: 16px;
  border: 1px solid rgba(0,156,141,0.2);
}
.grf-title {
  font-size: 42px;
  color: var(--navy);
  margin-bottom: 24px;
}
.grf-description {
  font-size: 17px;
  color: var(--sub);
  max-width: 700px;
  margin: 0 auto 60px;
}
.grf-slider-wrapper {
  max-width: var(--wrap);
  margin: 0 auto;
  padding: 0 24px;
  position: relative;
}
.grf-nav { display: none; } /* Disable broken slider buttons */
.grf-track {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  justify-content: center;
}
.grf-card {
  background: var(--white);
  padding: 30px 24px;
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  width: calc(25% - 18px);
  min-width: 200px;
  transition: transform 0.3s ease;
  border-top: 3px solid var(--teal);
}
.grf-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); }
.grf-icon {
  font-size: 32px;
  margin-bottom: 16px;
}
.grf-text {
  font-size: 16px;
  color: var(--navy);
  font-weight: 700;
  margin: 0;
}
@media (max-width: 992px) {
  .grf-title { font-size: 32px; }
  .grf-card { width: calc(50% - 12px); }
}
@media (max-width: 560px) {
  .grf-card { width: 100%; }
}

/* =========================================================
   USER FEEDBACK FIXES: FAQ & PHASES CLEARFIX
========================================================= */
.ib-phases {
  clear: both;
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.csa-faq {
  padding: 100px 0;
  background: var(--white);
  clear: both;
  position: relative;
  z-index: 2;
}
.csa-faq-container {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 24px;
}
.csa-faq-tag {
  display: block;
  text-align: center;
  color: var(--teal);
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 32px;
  font-size: 32px;
  font-family: var(--f-display);
}
.csa-faq-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.csa-faq-item {
  background: var(--tint-navy);
  border-radius: var(--radius-sm);
  overflow: hidden;
}
.csa-faq-question {
  width: 100%;
  background: none;
  border: none;
  padding: 24px;
  text-align: left;
  font-size: 18px;
  font-weight: 700;
  color: var(--navy);
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  outline: none;
}
.csa-faq-answer {
  padding: 0 24px 24px;
  color: var(--sub);
  font-size: 16px;
  line-height: 1.6;
}

/* =========================================================
   USER FEEDBACK FIXES: FINAL CTA
========================================================= */
.csa-cta {
    padding: 60px 40px;
    background: var(--grad);
    max-width: var(--wrap);
    margin: 60px auto;
    border-radius: var(--radius-lg);
  }
.csa-cta-container {
    padding: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 60px;
}
.csa-cta-left { 
  max-width: 600px; 
  color: var(--white); 
}
.csa-cta-tag {
  display: inline-block;
  background: rgba(255,255,255,0.1);
  color: var(--white);
  padding: 6px 16px;
  border-radius: 100px;
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  margin-bottom: 16px;
}
.csa-cta-title { 
  font-size: 42px; 
  margin-bottom: 24px; 
  color: var(--white); 
}
.csa-cta-description { 
  font-size: 17px; 
  color: rgba(255,255,255,0.85); 
  line-height: 1.6; 
}
.csa-cta-right { 
  display: flex; 
  flex-direction: column; 
  gap: 16px; 
  min-width: 300px; 
}
.csa-cta-btn {
  background: var(--white);
  color: var(--navy);
  padding: 16px 24px;
  border-radius: var(--radius-lg);
  text-decoration: none !important;
  font-weight: 700;
  text-align: center;
  transition: all 0.3s ease;
  display: block;
}
.csa-cta-btn:hover { 
  transform: translateY(-3px); 
  box-shadow: var(--shadow-lg); 
}
@media (max-width: 992px) {
  .csa-cta-container { 
    flex-direction: column; 
    text-align: center; 
  }
  .csa-cta-title { font-size: 32px; }
  .csa-cta-right { width: 100%; }
}

/* =========================================================
   USER FEEDBACK FIXES: DIGITAL SYSTEMS CAROUSEL
========================================================= */
.csa-digital-systems {
    padding: 100px 0;
    background: #fff;
    text-align: center;
    overflow: hidden;
  }
.csa-digital-header {
  max-width: 800px;
  margin: 0 auto 60px;
}
.csa-digital-eyebrow {
  display: inline-block;
  background: var(--white);
  color: var(--teal);
  padding: 6px 16px;
  border-radius: 100px;
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  margin-bottom: 16px;
  border: 1px solid rgba(0,156,141,0.2);
}
.csa-digital-title {
  font-size: 42px;
  color: var(--navy);
  margin-bottom: 24px;
}
.csa-digital-description {
  font-size: 17px;
  color: var(--sub);
  line-height: 1.6;
}
.csa-stage {
  position: relative;
  width: 100%;
  height: 460px;
  max-width: 1200px;
  margin: 0 auto;
  perspective: 1200px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.csa-card {
  position: absolute;
  width: 320px;
  background: var(--white);
  border-radius: var(--radius-lg);
  padding: 40px 30px;
  box-shadow: var(--shadow-md);
  text-align: center;
  cursor: pointer;
  border-top: 4px solid var(--teal);
  will-change: transform, opacity;
}
.csa-card-icon {
  width: 70px;
  height: 70px;
  background: var(--tint-teal);
  color: var(--teal);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
  margin: 0 auto 20px;
}
.csa-card h3 {
  font-size: 20px;
  color: var(--navy);
  margin-bottom: 20px;
}
.csa-card ul {
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: left;
}
.csa-card li {
  font-size: 14px;
  color: var(--sub);
  margin-bottom: 12px;
  position: relative;
  padding-left: 24px;
}
.csa-card li::before {
  content: '\2713';
  color: var(--teal);
  position: absolute;
  left: 0;
  top: 0;
  font-weight: bold;
}
.csa-dots {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-top: 40px;
}
.csa-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: rgba(0, 35, 71, 0.2);
  cursor: pointer;
  transition: all 0.3s ease;
}
.csa-dot.active {
  background: var(--teal);
  width: 32px;
  border-radius: 100px;
}

/* =========================================================
   USER FEEDBACK FIXES: INDUSTRY SUPPORT SECTION
========================================================= */
.industry-support-section {
  padding: 100px 0;
  background: var(--white);
}
.industry-container {
  max-width: var(--wrap);
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  align-items: center;
  gap: 60px;
}
.industry-content {
  flex: 1;
}
.industry-content .small-title {
  display: inline-block;
  background: var(--tint-teal);
  color: var(--teal);
  padding: 6px 16px;
  border-radius: 100px;
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  margin-bottom: 16px;
}
.industry-support-section-desc {
  font-size: 42px;
  color: var(--navy);
  line-height: 1.2;
}
.scroll-card {
  flex: 1;
  background: var(--grad);
  border-radius: var(--radius-lg);
  padding: 40px;
  box-shadow: var(--shadow-lg);
  position: relative;
  overflow: hidden;
  height: 400px;
}
.scroll-card::before, .scroll-card::after {
  content: '';
  position: absolute;
  left: 0; right: 0;
  height: 80px;
  z-index: 2;
  pointer-events: none;
}
.scroll-card::before {
  top: 0;
  background: linear-gradient(to bottom, var(--navy) 0%, transparent 100%);
}
.scroll-card::after {
  bottom: 0;
  background: linear-gradient(to top, var(--teal-dark) 0%, transparent 100%);
}
.scroll-wrapper {
  height: 100%;
  overflow: hidden;
  position: relative;
}
.scroll-content {
  animation: scrollVertical 15s linear infinite;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.scroll-item {
  color: var(--white);
  font-size: 18px;
  font-weight: 600;
  padding: 12px 0;
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
@keyframes scrollVertical {
  0% { transform: translateY(0); }
  100% { transform: translateY(-50%); }
}
@media (max-width: 992px) {
  .industry-container { flex-direction: column-reverse; text-align: center; }
  .industry-support-section-desc { font-size: 32px; }
  .scroll-card { width: 100%; height: 300px; }
}
/* =========================================================
   BUSINESS OUTCOMES (Premium Gradient Enhanced)
========================================================= */
.ib-outcomes{ padding:92px 0; }
.ib-outcomes-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.ib-outcome-card{
  border-radius:var(--radius-lg); padding:32px 24px; background:#fff;
  box-shadow:0 4px 15px rgba(0,0,0,0.03); transition:all .3s ease;
  position:relative;
}
.ib-outcome-card::before {
  content: ''; position: absolute; inset: 0;
  border-radius: var(--radius-lg); padding: 1.5px;
  background: var(--line);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  transition: all 0.3s ease; pointer-events: none;
}
.ib-outcome-card:hover{ 
  box-shadow:0 15px 35px rgba(0, 207, 187, 0.1); 
  transform:translateY(-5px); 
}
.ib-outcome-card:hover::before {
  background: linear-gradient(135deg, var(--teal), var(--navy));
}
.ib-outcome-card .icn{
  width:52px; height:52px; border-radius:14px; background: rgba(0, 207, 187, 0.1);
  color: var(--teal); display:flex; align-items:center; justify-content:center; margin-bottom:20px;
  transition: all 0.3s ease;
}
.ib-outcome-card:hover .icn{
  background: linear-gradient(135deg, var(--teal), var(--navy));
  color: #fff; box-shadow: 0 10px 20px rgba(0, 207, 187, 0.2);
}
.ib-outcome-card .icn svg {
  width: 24px; height: 24px; stroke: currentColor; stroke-width: 1.5;
  fill: none; stroke-linecap: round; stroke-linejoin: round;
}
.ib-outcome-card h4{ font-size:15.5px; margin-bottom:8px; }
.ib-outcome-card p{ font-size:13.5px; color:var(--sub); line-height:1.6; }
@media(max-width:900px){ .ib-outcomes-grid{ grid-template-columns:1fr 1fr; } }
@media(max-width:560px){ .ib-outcomes-grid{ grid-template-columns:1fr; } }

/* Split Layout Additions for Images */
.csa-split-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; }
.csa-split-img { width: 100%; height: auto; border-radius: var(--radius-lg); box-shadow: 0 20px 40px rgba(0,0,0,0.1); object-fit: cover; }
.csa-split-content { display: flex; flex-direction: column; justify-content: center; }
@media(max-width:992px) { .csa-split-wrapper { grid-template-columns: 1fr; } }
.left-align-head { text-align: left !important; max-width: 100% !important; margin: 0 0 30px 0 !important; }

/* Premium Strip Badges */
.csa-hero-strips { display: flex; gap: 12px; margin-top: 24px; flex-wrap: wrap; justify-content: center; }
.csa-strip { background: linear-gradient(135deg, rgba(0, 207, 187, 0.08), rgba(1, 28, 56, 0.05)); color: var(--navy); padding: 8px 18px; border-radius: 50px; font-size: 13.5px; font-weight: 600; display: flex; align-items: center; gap: 8px; border: 1px solid rgba(0, 207, 187, 0.2); box-shadow: 0 4px 10px rgba(0,0,0,0.02); transition: all 0.3s ease; }
.csa-strip:hover { transform: translateY(-2px); box-shadow: 0 6px 15px rgba(0, 207, 187, 0.15); border-color: rgba(0, 207, 187, 0.5); }
.csa-strip::before { content: ''; display: block; width: 6px; height: 6px; border-radius: 50%; background: var(--teal); box-shadow: 0 0 8px var(--teal); }

@media(max-width: 992px) { .csa-faq-perfect > div > div { grid-template-columns: 1fr !important; } }
/* =========================================================
   USER FEEDBACK MOBILE RESPONSIVE FIXES
========================================================= */

/* Make .csa-svc-card-grid work on desktop and stack on mobile */
.csa-svc-card-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

@media (max-width: 768px) {
  .csa-svc-card-grid {
    grid-template-columns: 1fr !important;
  }
  
  /* Ensure CTA buttons stack vertically (one by one line) on mobile */
  .ib-hero-cta,
  .tvr-inline-cta__actions,
  .csa-cta-box__actions {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 12px !important;
    width: 100% !important;
  }
  
  /* Make buttons text fit perfectly */
  .ib-btn-primary, 
  .ib-btn-ghost, 
  .tvr-cta-btn,
  .csa-cta-btn {
    white-space: normal !important;
    padding: 14px 20px !important;
    font-size: 15px !important;
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
  }
  
  /* Make the carousel cards separate (stack) on mobile */
  .csa-digital-systems .csa-stage {
    height: auto !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
    perspective: none !important;
    padding: 0 20px !important;
  }
  
  .csa-digital-systems .csa-card {
    position: static !important;
    width: 100% !important;
    transform: none !important;
    opacity: 1 !important;
    z-index: 1 !important;
    margin: 0 auto !important;
    pointer-events: auto !important;
  }
  
  .csa-digital-systems .csa-dots {
    display: none !important;
  }

  /* Fix for Screenshot 2: Split Wrapper and Image Overflow on Mobile */
  .csa-split-wrapper {
    gap: 40px !important;
    grid-template-columns: 1fr !important;
    display: flex !important;
    flex-direction: column !important;
  }
  
  .ib-services-img-wrapper {
    margin-bottom: 20px !important;
    padding-bottom: 30px !important;
    display: none !important; /* Hide image on mobile */
  }
  
  /* Ensure the content takes full width */
  .csa-split-wrapper .csa-split-content {
    width: 100% !important;
  }
  
  /* Make the heading responsive */
  .csa-split-content h2 {
    font-size: 28px !important;
    word-break: normal !important;
    hyphens: none !important;
  }
  
  /* Break the single card into two separate cards on mobile */
  .csa-split-content .ib-svc-card {
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    border: none !important;
  }
  
  .csa-split-content .csa-svc-card-grid > div {
    background: #fff !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05) !important;
    border-radius: 16px !important;
    border-top: 4px solid var(--teal) !important;
    padding: 24px !important;
    margin-bottom: 20px !important;
  }
}
/* =========================================================
   INDUSTRY CHALLENGES SECTION CSS (Copied from Thermal)
========================================================= */
.ibc-tc-rows { position: relative; display: flex; flex-direction: column; gap: 16px; margin: 0 auto; max-width: 1000px; }
.ibc-tc-rows::before { content: ''; position: absolute; top: 0; bottom: 0; left: 50%; transform: translateX(-50%); border-left: 2px dashed rgba(0,0,0,0.15); z-index: 0; }
.ibc-tc-row { display: flex; align-items: stretch; justify-content: space-between; position: relative; z-index: 1; transition: transform 0.3s ease; }
.ibc-tc-row:hover { transform: scale(1.02); }
.ibc-tc-card { flex: 0 0 45%; background: #fff; border-radius: 12px; padding: 24px 28px; display: flex; align-items: center; gap: 18px; box-shadow: 0 10px 30px rgba(0,0,0,0.06); border: 1px solid rgba(0,0,0,0.08); transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1); }
.ibc-tc-row:hover .ibc-tc-card { box-shadow: 0 15px 40px rgba(0,0,0,0.1); transform: translateY(-3px); }

.ibc-tc-card-challenge { background: #FFF8F2; border: 1px solid rgba(194, 122, 61, 0.2); }
.ibc-tc-card-challenge .ibc-tc-icon { background: linear-gradient(135deg, #883B00 0%, #E8833A 100%); color: #fff; width: 48px; height: 48px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 20px; flex-shrink: 0; box-shadow: 0 4px 10px rgba(136, 59, 0, 0.3); }
.ibc-tc-card-challenge h4 { font-family: 'Plus Jakarta Sans', sans-serif !important; color: #111; font-size: 1.05rem; font-weight: 700; margin: 0; line-height: 1.4; }
.ibc-tc-card-challenge .ibc-label { font-size: 0.75rem; font-weight: 700; letter-spacing: 1px; color: #C27A3D; margin-bottom: 6px; display: block; text-transform: uppercase;}
.ibc-tc-card-challenge .ibc-tc-icon i { color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; font-size: 16px; }

.ibc-tc-card-solution { background: #F0FBF9; border: 1px solid rgba(0, 207, 187, 0.2); }
.ibc-tc-card-solution .ibc-tc-icon { background: linear-gradient(135deg, #004D88 0%, #009C8D 100%); color: #fff; width: 48px; height: 48px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 20px; flex-shrink: 0; box-shadow: 0 4px 10px rgba(0, 77, 136, 0.3); }
.ibc-tc-card-solution h4 { font-family: 'Plus Jakarta Sans', sans-serif !important; color: #007A6E; font-size: 1.05rem; font-weight: 700; margin: 0; line-height: 1.4; }
.ibc-tc-card-solution .ibc-label { font-size: 0.75rem; font-weight: 700; letter-spacing: 1px; color: #009C8D; margin-bottom: 6px; display: block; text-transform: uppercase;}
.ibc-tc-card-solution .ibc-tc-icon svg { color: #ffffff !important; width: 22px; height: 22px; }

.ibc-tc-arrow-circle { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 32px; height: 32px; background: #fff; color: #009C8D; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 15.5px; line-height: 1.65; font-weight: 500; box-shadow: 0 2px 8px rgba(0, 156, 141, 0.2); z-index: 2; border: 1px solid #009C8D; }
.ibc-tc-arrow-circle i { display: inline-block; }

@media (max-width: 768px) {
  .ibc-tc-row { flex-direction: column; gap: 20px; margin-bottom: 30px; padding-bottom: 20px; border-bottom: 1px dashed rgba(0,0,0,0.1); }
  .ibc-tc-rows::before { display: none; }
  .ibc-tc-card { flex: 1 1 auto; }
  .ibc-tc-arrow-circle { position: relative; top: auto; left: auto; transform: rotate(90deg); margin: -25px auto; z-index: 3; }
}

