/*
Theme Name: Accelerate Tax & Business Services
Theme URI: https://accelerate-tbs.com/
Description: Jupiter child theme implementing Accelerate brand system & enterprise UX.
Author: Accelerate-tbs
Author URI: https://accelerate-tbs.com/
Template: jupiter
Version: 1.2.1
Text Domain: accelerate-tbs
License: GPL-2.0-or-later
*/

/* ==== ACCELERATE — ONE-STOP THEME CSS (Jupiter + WPBakery) ==== */

/* ================= GOOGLE FONTS ================= */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display+SC:wght@400;500;600;700&family=Source+Sans+3:wght@300;400;500;600;700&display=swap');

/* ================= CALCULATOR STYLES ================= */

/* Activities checklist -> two-column layout */
#calculator .activities {
  display: grid;
  gap: 12px 22px;
}

@media (min-width: 900px) {
  #calculator .activities.grid-2 {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 899.98px) {
  #calculator .activities.grid-2 {
    grid-template-columns: 1fr;
  }
}

/* Optional: Style checkboxes to match Accelerate branding */
#calculator .activities input[type="checkbox"] {
  accent-color: #041f5d; /* navy blue */
  transform: scale(1.2);
  margin-right: 8px;
}

/* ================= ACCELERATE BRAND TYPOGRAPHY ================= */

/* Hero H1 (main heading) */
#hero h1,
#hero-179d h1 {
  font-family: 'Playfair Display SC','Playfair Display',serif;
  text-transform: uppercase;
  font-size: 36px;
  font-weight: 600;
  letter-spacing: 10px;
  color: #ffffff; /* always white */
  text-align: center;
  margin-bottom: 16px;
}

/* Hero H2 (sub-header under hero H1) */
#hero h2,
#hero-179d h2 {
  font-family: 'Playfair Display SC','Playfair Display',serif;
  font-style: italic;
  text-transform: uppercase;
  font-size: 28px;
  font-weight: 500;
  letter-spacing: 5px;
  color: #ffffff; /* always white */
  text-align: center;
  margin-bottom: 20px;
}

/* Section H2 (page-level headers outside hero) */
#what-is-179d h2,
#who-qualifies h2,
#benefits-179d h2,
#our-process h2,
#contact-179d h2 {
  font-family: 'Playfair Display SC','Playfair Display',serif;
  text-transform: uppercase;
  font-size: 26px;
  font-weight: 600;
  letter-spacing: 5px;
  color: #041f5d; /* navy */
  text-align: left;
  margin-bottom: 30px;
}

/* Section Sub-headers (italic line under H2s) */
#what-is-179d p.subheader,
#benefits-179d p.subheader,
#our-process p.subheader {
  font-family: 'Playfair Display SC','Playfair Display',serif;
  font-style: italic;
  text-transform: uppercase;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 5px;
  color: #041f5d;
  text-align: center;
  margin-bottom: 40px;
}

/* ================= UNIVERSAL CARD STYLE ================= */
.card {
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 6px 22px rgba(0,0,0,.08);
  padding: 30px;
  color: #2a2a2a;
  font-family: 'Source Sans Pro','Source Sans 3',sans-serif;
  font-size: 16px;
  line-height: 1.7;
}

/* Card lists */
.card ul {
  margin: 0;
  padding-left: 20px;
}
.card ul li {
  margin-bottom: 10px;
  line-height: 1.6;
  list-style-type: disc;
}

/* ================= SPECIAL FORMATTING ================= */

/* Strong text pop */
strong {
  font-weight: 700;
  color: #041f5d;
}
strong.highlight {
  font-size: 20px;
  color: #041f5d;
}

/* =========================================================
   ACCELERATE – GLOBAL POLISH LAYER (append-only)
   - darker body text, spacing utilities
   - CTA button, checklist, card hover
   - grid helpers, alternating bands
========================================================= */

/* Darker body text & comfortable line-height */
body, .card, .card p, .card li { color:#2a2a2a; }
p, li { line-height:1.7; }

/* Ensure all section H2s match brand weight & spacing */
section h2 { font-weight:600 !important; margin-bottom:24px; }

/* Stack spacing helpers (apply to wrappers) */
.stack-16 > * + * { margin-top:16px !important; }
.stack-24 > * + * { margin-top:24px !important; }
.stack-32 > * + * { margin-top:32px !important; }

/* Card hover micro-interaction */
.card {
  transition: transform .18s ease, box-shadow .18s ease;
}
.card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0,0,0,.10);
}

/* Stronger CTA button */
.btn-cta,
a.btn-cta{
  display:inline-block;
  font-weight:700;
  font-size:18px;
  padding:16px 28px;
  border:2px solid transparent;
  border-radius:10px;
  background:#041f5d;
  color:#fff;
  box-shadow:0 4px 16px rgba(0,0,0,.08);
  text-decoration:none;
  transition: transform .15s ease, box-shadow .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
}
.btn-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 24px rgba(0,0,0,.10);
  background:#0c2a92;
}
/* Light CTA for dark sections */
.btn-cta--light{ background:#fff; color:#041f5d; border-color:#041f5d; }
.btn-cta--light:hover{ background:#041f5d; color:#fff; }

/* Checklist utility — consistent ✓ spacing */
.checklist,
.checks{ list-style:none; padding:0; margin:0; }
.checklist li,
.checks li{
  display:flex;
  gap:10px;
  align-items:flex-start;
  margin-bottom:14px;
  line-height:1.7;
}
.checklist li::before,
.checks li::before{
  content:"✓";
  color:#041f5d;
  font-weight:700;
  line-height:1.2;
  margin-top:2px;
}
section.dark .checklist li::before,
section.dark .checks li::before{ color:#fff; }

/* Two-column section helper with better mobile stack */
.section-grid{ display:grid; gap:30px; }
@media (min-width:900px){ .section-grid.cols-2{ grid-template-columns:1fr 1fr; } }
@media (max-width:899px){
  .section-grid{ gap:40px; }
  .card{ padding:24px; }
}

/* Alternating bands to create visual anchors */
.band{ background:#ffffff; }
.band--light{ background:#f6f7fb; }
