/* ==========================================================
   small-business.css
   Page-specific styles for Digital Marketing for Small Businesses
   SMEdigital - smedigital.in
   ========================================================== */

/* ── Floating pills ── */
.smb-float {
  position: absolute;
  font-size: 0.68rem; font-weight: 700;
  letter-spacing: 0.07em;
  color: rgba(235, 96, 31, 0.18);
  pointer-events: none; white-space: nowrap; z-index: 1;
  animation: smb-float 10s ease-in-out infinite;
  border: 1px solid rgba(235, 96, 31, 0.1);
  padding: 0.3rem 0.7rem; border-radius: 999px;
  font-family: 'Montserrat', sans-serif;
}
.smb-float--1 { top: 20%;    left: 4%;   animation-delay: 0s;   animation-duration: 10s; }
.smb-float--2 { top: 35%;    right: 5%;  animation-delay: 2.5s; animation-duration: 12s; }
.smb-float--3 { bottom: 26%; left: 7%;   animation-delay: 5s;   animation-duration: 9s;  }
.smb-float--4 { bottom: 16%; right: 9%;  animation-delay: 1.5s; animation-duration: 11s; }

@keyframes smb-float {
  0%, 100% { transform: translateY(0);     opacity: 0.18; }
  50%       { transform: translateY(-16px); opacity: 0.42; }
}
@media (max-width: 768px) { .smb-float { display: none; } }

/* ── Audience chip ── */
.smb-chip {
  display: inline-flex; align-items: center; gap: 0.45rem;
  background: rgba(235, 96, 31, 0.1);
  border: 1px solid rgba(235, 96, 31, 0.3);
  color: #eb601f; font-size: 0.78rem; font-weight: 700;
  letter-spacing: 0.06em; padding: 0.4rem 1rem; border-radius: 999px;
  font-family: 'Montserrat', sans-serif; text-transform: uppercase;
}

/* ── Hero sub-title ── */
.smb-hero-sub {
  font-size: 1.5rem;
  font-weight: 300;
  color: rgba(255, 255, 255, 0.55);
  font-family: 'Montserrat', sans-serif;
  letter-spacing: 0.04em;
  margin-top: -0.5rem;
}

@media (min-width: 768px) {
  .smb-hero-sub { font-size: 2.5rem; }
}

/* ── Image badge ── */
.smb-img-badge {
  display: inline-flex; align-items: center;
  background: rgba(235, 96, 31, 0.88); color: #000;
  font-size: 0.7rem; font-weight: 700;
  padding: 0.35rem 0.9rem; border-radius: 999px;
  font-family: 'Montserrat', sans-serif; letter-spacing: 0.04em;
}

/* ── Pain Points Section ── */
.smb-pain-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 640px)  { .smb-pain-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .smb-pain-grid { grid-template-columns: repeat(3, 1fr); } }

.smb-pain-card {
  background: rgba(17, 17, 17, 0.7);
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 1.25rem; padding: 1.5rem;
  position: relative; overflow: hidden;
  transition: all 0.3s ease; cursor: default;
}

.smb-pain-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(to right, transparent, rgba(235,96,31,0.3), transparent);
  transform: scaleX(0); transform-origin: left; transition: transform 0.4s ease;
}

.smb-pain-card:hover {
  transform: translateY(-4px);
  border-color: rgba(235, 96, 31, 0.25);
  box-shadow: 0 10px 32px rgba(235, 96, 31, 0.1);
}

.smb-pain-card:hover::before { transform: scaleX(1); }

.smb-pain-top {
  display: flex; align-items: flex-start; gap: 0.75rem; margin-bottom: 1rem;
}

.smb-pain-icon { font-size: 1.5rem; flex-shrink: 0; margin-top: 1px; }

.smb-pain-text {
  font-size: 0.9rem; font-weight: 600; color: rgba(255,255,255,0.75);
  font-family: 'Montserrat', sans-serif; line-height: 1.5;
}

.smb-pain-fix {
  display: flex; align-items: flex-start; gap: 0.5rem;
  padding: 0.6rem 0.75rem;
  background: rgba(40, 200, 64, 0.07);
  border: 1px solid rgba(40, 200, 64, 0.15);
  border-radius: 0.6rem;
  font-size: 0.78rem; color: rgba(40,200,64,0.85);
  font-family: 'Montserrat', sans-serif; line-height: 1.4;
}

.smb-pain-arrow {
  font-weight: 800; color: #28c840; flex-shrink: 0; margin-top: 1px;
}

/* ── Stats Section ── */
.smb-stats-section {
  border-radius: 2rem; background: rgba(17,17,17,0.7);
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(235,96,31,0.2); padding: 3rem 2rem;
  position: relative; overflow: hidden;
}
.smb-stats-section::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(to right, transparent, #eb601f, transparent); }
.smb-stats-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 2rem; }
@media (min-width: 768px) { .smb-stats-grid { grid-template-columns: repeat(4, 1fr); } }
.smb-stat-card { text-align: center; padding: 1.5rem 1rem; border-radius: 1rem; transition: transform 0.3s, box-shadow 0.3s; }
.smb-stat-card:hover { transform: translateY(-6px); box-shadow: 0 10px 30px rgba(235,96,31,0.15); }
.smb-stat-icon   { font-size: 2rem; margin-bottom: 0.75rem; display: block; }
.smb-stat-number { font-size: 2.5rem; font-weight: 900; color: #eb601f; line-height: 1; margin-bottom: 0.5rem; font-family: 'Montserrat', sans-serif; }
.smb-stat-label  { font-size: 0.82rem; color: rgba(255,255,255,0.55); font-weight: 500; text-transform: uppercase; letter-spacing: 0.05em; font-family: 'Montserrat', sans-serif; line-height: 1.4; }

/* ── Why + Growth System ── */
.smb-why-wrapper {
  display: grid; grid-template-columns: 1fr; gap: 4rem; align-items: start;
}
@media (min-width: 1024px) { .smb-why-wrapper { grid-template-columns: 1fr 1fr; } }

/* Why items */
.smb-why-cards { display: flex; flex-direction: column; gap: 0.8rem; }

.smb-why-item {
  display: flex; align-items: flex-start; gap: 1rem;
  padding: 1.1rem 1.25rem;
  background: rgba(17,17,17,0.6);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 1rem; transition: all 0.3s ease;
  position: relative; overflow: hidden;
}

.smb-why-item::before {
  content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 3px;
  background: #eb601f; transform: scaleY(0); transform-origin: bottom;
  transition: transform 0.3s ease;
}

.smb-why-item:hover {
  border-color: rgba(235,96,31,0.3);
  box-shadow: 0 5px 20px rgba(235,96,31,0.08);
  transform: translateX(5px);
}

.smb-why-item:hover::before { transform: scaleY(1); }

.smb-why-icon  { font-size: 1.6rem; flex-shrink: 0; width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; background: rgba(235,96,31,0.1); border-radius: 0.7rem; border: 1px solid rgba(235,96,31,0.2); }
.smb-why-title { font-size: 0.95rem; font-weight: 700; color: #fff; margin-bottom: 0.2rem; font-family: 'Montserrat', sans-serif; }
.smb-why-desc  { font-size: 0.82rem; color: rgba(255,255,255,0.5); line-height: 1.5; }

.smb-cta-btn {
  display: inline-flex; align-items: center; padding: 1rem 2rem; border-radius: 999px;
  font-weight: 700; font-size: 1rem; background: #eb601f; color: #000;
  text-decoration: none; transition: all 0.3s ease;
  box-shadow: 0 0 30px rgba(235,96,31,0.35); font-family: 'Montserrat', sans-serif;
}
.smb-cta-btn:hover { background: #fff; color: #000; box-shadow: 0 0 40px rgba(235,96,31,0.5); transform: scale(1.04); }

/* ── Growth System Panel ── */
.smb-right-col { display: flex; flex-direction: column; }

.smb-growth-panel {
  background: rgba(13,13,13,0.92);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 1.5rem; overflow: visible;
  box-shadow: 0 24px 60px rgba(0,0,0,0.45);
  display: flex; flex-direction: column;
  transition: box-shadow 0.3s ease;
}
.smb-growth-panel:hover { box-shadow: 0 24px 80px rgba(0,0,0,0.5), 0 0 0 1px rgba(235,96,31,0.12); }

.smb-gp-header { display: flex; align-items: center; gap: 0.5rem; padding: 0.85rem 1.25rem; background: rgba(255,255,255,0.04); border-bottom: 1px solid rgba(255,255,255,0.07); border-radius: 1.5rem 1.5rem 0 0; flex-shrink: 0; }
.smb-gp-dots { display: flex; gap: 6px; }
.smb-gpdot  { width: 11px; height: 11px; border-radius: 50%; }
.smb-gpdot--r { background: #ff5f57; }
.smb-gpdot--y { background: #febc2e; }
.smb-gpdot--g { background: #28c840; }
.smb-gp-title { margin-left: 0.4rem; font-size: 0.72rem; font-weight: 600; color: rgba(255,255,255,0.4); letter-spacing: 0.04em; font-family: 'Montserrat', sans-serif; }

.smb-gp-section { padding: 1.1rem 1.5rem; flex-shrink: 0; }
.smb-gp-section + .smb-gp-section { border-top: 1px solid rgba(255,255,255,0.06); }

.smb-gp-label-row { display: flex; align-items: center; justify-content: space-between; margin-bottom: 0.85rem; }
.smb-gp-label { font-size: 0.68rem; font-weight: 700; color: rgba(255,255,255,0.4); text-transform: uppercase; letter-spacing: 0.09em; font-family: 'Montserrat', sans-serif; }
.smb-gp-badge { font-size: 0.68rem; font-weight: 800; color: #eb601f; background: rgba(235,96,31,0.12); border: 1px solid rgba(235,96,31,0.25); padding: 0.18rem 0.55rem; border-radius: 999px; font-family: 'Montserrat', sans-serif; }

/* Channel rows */
.smb-channels { display: flex; flex-direction: column; gap: 5px; }

.smb-channel-row {
  display: flex; align-items: center; gap: 0.6rem;
  padding: 0.5rem 0.7rem;
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.05);
  border-radius: 7px; transition: all 0.25s ease;
}
.smb-channel-row:hover { border-color: rgba(235,96,31,0.25); background: rgba(235,96,31,0.04); }

.smb-channel-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--ch-color, #eb601f); flex-shrink: 0; }
.smb-channel-name { font-size: 0.78rem; font-weight: 700; color: #fff; font-family: 'Montserrat', sans-serif; min-width: 80px; }
.smb-channel-role { font-size: 0.7rem; color: rgba(255,255,255,0.45); font-family: 'Montserrat', sans-serif; }

/* Process steps */
.smb-process-steps { display: flex; flex-direction: column; gap: 4px; }

.smb-process-step {
  display: flex; align-items: center; gap: 0.75rem;
  padding: 0.45rem 0.7rem;
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.05);
  border-radius: 6px; transition: all 0.2s ease;
}
.smb-process-step:hover { border-color: rgba(235,96,31,0.2); background: rgba(235,96,31,0.04); }

.smb-process-num { font-size: 0.65rem; font-weight: 900; color: #eb601f; font-family: 'Montserrat', sans-serif; min-width: 22px; }
.smb-process-text { font-size: 0.73rem; color: rgba(255,255,255,0.62); font-family: 'Montserrat', sans-serif; line-height: 1.3; }

.smb-gp-caption { font-size: 0.73rem; color: rgba(255,255,255,0.25); line-height: 1.6; padding: 0.85rem 1.5rem 1.25rem; text-align: center; border-top: 1px solid rgba(255,255,255,0.05); flex-shrink: 0; }

/* ── Industries Grid ── */
.smb-industries-grid {}

.smb-ind-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.6rem;
}
@media (min-width: 480px) { .smb-ind-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 768px) { .smb-ind-grid { grid-template-columns: repeat(4, 1fr); } }

.smb-ind-item {
  display: flex; flex-direction: column; align-items: center; gap: 0.4rem;
  padding: 0.9rem 0.6rem;
  background: rgba(17,17,17,0.6);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 0.9rem; text-align: center; cursor: default;
  transition: all 0.25s ease;
}
.smb-ind-item:hover {
  border-color: rgba(235,96,31,0.3);
  background: rgba(235,96,31,0.05);
  transform: translateY(-3px);
}
.smb-ind-emoji { font-size: 1.6rem; line-height: 1; }
.smb-ind-name  { font-size: 0.68rem; font-weight: 600; color: rgba(255,255,255,0.65); font-family: 'Montserrat', sans-serif; line-height: 1.3; }

/* ── Mobile ── */
@media (max-width: 768px) {
  .smb-stats-section  { padding: 2rem 1rem; }
  .smb-stat-number    { font-size: 1.75rem; }
  .smb-why-wrapper    { gap: 2.5rem; }
  .smb-pain-grid      { gap: 0.75rem; }
  .smb-ind-grid       { grid-template-columns: repeat(2, 1fr); }
}