/* ═══ SERVICE PAGE — 2-Column Sidebar Layout ═══ */
/* Design rules: NO sticky bar, NO mid-page CTA, dot-grid hero, gold accents */

/* HERO */
.sp-hero{background:linear-gradient(135deg,#0a1628,var(--tc-navy),#0f2544);position:relative;overflow:hidden}
.sp-hero::before{content:'';position:absolute;top:-30%;right:-15%;width:600px;height:600px;background:radial-gradient(circle,rgba(19,85,193,.12),transparent 70%);pointer-events:none}
.sp-hero::after{content:'';position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.035) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;z-index:0}
.sp-hero-grid{display:grid;grid-template-columns:1fr 420px;gap:48px;align-items:start;padding:48px 0 56px;position:relative;z-index:2}
.sp-hero-l{color:#fff}
.sp-bc{display:flex;gap:8px;font-size:13px;color:rgba(255,255,255,.45);margin-bottom:16px;flex-wrap:wrap}.sp-bc a{color:rgba(255,255,255,.55)}.sp-bc a:hover{color:var(--tc-gold)}.sp-bc span:last-child{color:rgba(255,255,255,.75)}
.sp-pills{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.sp-pill{padding:6px 14px;border-radius:50px;font-size:12px;font-weight:700;background:rgba(255,255,255,.06);color:rgba(255,255,255,.8);border:1px solid rgba(255,255,255,.08)}
.sp-hero-l h1{font-size:clamp(30px,4.2vw,44px);font-weight:800;color:#fff;line-height:1.1;margin-bottom:18px}.sp-hero-l h1 em{font-family:var(--font-serif);font-style:italic;font-weight:600;color:rgba(255,255,255,.85)}
.sp-hero-l>p{font-size:15.5px;color:rgba(255,255,255,.6);line-height:1.7;margin-bottom:24px;max-width:520px}
.sp-ctas{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:28px}
.sp-phone-link{display:inline-flex;align-items:center;gap:8px;color:rgba(255,255,255,.85);font-size:15px;font-weight:600;text-decoration:none;transition:color .2s}.sp-phone-link:hover{color:#fff}
.sp-badges{display:flex;gap:16px;flex-wrap:wrap}.sp-badges span{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:rgba(255,255,255,.6)}

/* HERO FORM */
.sp-form{background:var(--tc-white);border-radius:16px;padding:28px;box-shadow:0 20px 56px rgba(0,0,0,.25);border-top:3px solid var(--tc-gold)}
.sp-form h3{font-size:17px;font-weight:800;color:var(--tc-navy);margin-bottom:4px}.sp-form .sf-sub{font-size:13px;color:var(--tc-gray);margin-bottom:18px}.sp-form .sf-sub b{color:var(--tc-green)}
.sp-form label{display:block;font-size:12.5px;font-weight:600;color:var(--tc-navy);margin-bottom:4px}.sp-form .fg{margin-bottom:12px}.sp-form .fg-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sp-form input,.sp-form select,.sp-form textarea{width:100%;padding:11px 14px;border:1.5px solid var(--tc-border);border-radius:9px;font-family:var(--font);font-size:13.5px;color:var(--tc-navy);transition:all .2s;background:var(--tc-white)}
.sp-form input:focus,.sp-form select:focus,.sp-form textarea:focus{outline:none;border-color:var(--tc-blue);box-shadow:0 0 0 3px rgba(19,85,193,.08)}
.sp-form input::placeholder,.sp-form textarea::placeholder{color:#b0b8c8}.sp-form textarea{resize:vertical;min-height:60px}.sp-form select{appearance:auto;color:var(--tc-gray)}
.sf-btn{width:100%;padding:14px;background:var(--tc-pink);color:#fff;border:none;border-radius:9px;font-family:var(--font);font-size:15px;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.sf-btn:hover{box-shadow:0 6px 20px rgba(232,62,90,.4);transform:translateY(-1px)}
.sf-note{text-align:center;font-size:11px;color:var(--tc-gray);margin-top:10px}
.sf-div{display:flex;align-items:center;gap:12px;margin:14px 0;font-size:12px;color:var(--tc-gray);text-transform:uppercase;letter-spacing:1px;font-weight:600}.sf-div::before,.sf-div::after{content:'';flex:1;height:1px;background:var(--tc-border)}
.sf-wa{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border:1.5px solid var(--tc-green);border-radius:9px;font-size:14px;font-weight:600;color:#128c7e;transition:all .2s;background:rgba(37,211,102,.04);text-decoration:none}.sf-wa:hover{background:#25d366;color:#fff;border-color:#25d366}

/* TRUST STRIP */
.sp-trust{background:var(--tc-light);border-bottom:1px solid var(--tc-border);padding:14px 0}
.sp-trust-row{display:flex;justify-content:center;gap:0;flex-wrap:wrap}.sp-trust-i{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--tc-navy);padding:0 20px;border-right:1px solid var(--tc-border)}.sp-trust-i:last-child{border-right:none}

/* MAIN 2-COL LAYOUT */
.sp-main{padding:64px 0}.sp-grid-main{display:grid;grid-template-columns:1fr 340px;gap:48px;align-items:start}

/* CONTENT SECTIONS */
.sp-sec{margin-bottom:64px;scroll-margin-top:100px}
.sp-ey{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:var(--tc-pink);margin-bottom:10px}.sp-ey::before{content:'';width:24px;height:2px;background:var(--tc-pink);border-radius:2px;flex-shrink:0}
.sp-h2{font-family:var(--font-serif);font-size:clamp(24px,3.2vw,34px);font-weight:700;font-style:italic;color:var(--tc-navy);line-height:1.2;margin-bottom:14px}.sp-h2::after{content:'';display:block;width:48px;height:3px;background:linear-gradient(90deg,var(--tc-gold),transparent);border-radius:2px;margin-top:8px}
.sp-sub{font-size:14.5px;color:var(--tc-gray);line-height:1.7;margin-bottom:24px}
.sp-prose{font-size:15px;color:var(--tc-gray);line-height:1.8}.sp-prose p{margin-bottom:14px}.sp-prose strong,.sp-prose b{color:var(--tc-navy)}

/* CALLOUT */
.sp-callout{background:var(--tc-light);border-radius:16px;padding:24px;margin-top:24px;display:flex;align-items:flex-start;gap:14px}.sp-callout h4{font-size:15px;font-weight:800;color:var(--tc-navy);margin-bottom:4px}.sp-callout p{font-size:14px;color:var(--tc-gray);line-height:1.7}.sp-callout.gold{background:rgba(245,166,35,.06);border-left:3px solid var(--tc-gold)}.sp-co-i{font-size:22px;flex-shrink:0;margin-top:2px}

/* WHO CARDS */
.sp-who-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sp-who-card{display:flex;align-items:flex-start;gap:14px;padding:18px;background:var(--tc-white);border:1.5px solid var(--tc-border);border-radius:12px;transition:all .2s}.sp-who-card:hover{border-color:var(--tc-blue);box-shadow:0 4px 24px rgba(13,30,60,.08)}
.sp-who-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.sp-who-card h4{font-size:14px;font-weight:700;margin-bottom:2px}.sp-who-card p{font-size:12.5px;color:var(--tc-gray);line-height:1.5}

/* PROS/CONS */
.sp-pc-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sp-pc{border-radius:16px;padding:24px}.sp-pc.pro{background:rgba(34,197,94,.04);border:1.5px solid rgba(34,197,94,.15)}.sp-pc.con{background:rgba(239,68,68,.03);border:1.5px solid rgba(239,68,68,.1)}
.sp-pc h4{font-size:15px;font-weight:800;margin-bottom:16px;display:flex;align-items:center;gap:6px}.sp-pc.pro h4{color:#16a34a}.sp-pc.con h4{color:#dc2626}
.sp-pc ul{list-style:none;display:grid;gap:10px}.sp-pc li{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;color:var(--tc-navy);line-height:1.55}

/* TIMELINE */
.sp-timeline{display:flex;flex-direction:column}.sp-tl-step{display:flex;gap:20px;position:relative;padding-bottom:32px}.sp-tl-step:last-child{padding-bottom:0}
.sp-tl-step::before{content:'';position:absolute;left:23px;top:48px;bottom:0;width:2px;background:var(--tc-border)}.sp-tl-step:last-child::before{display:none}
.sp-tl-num{width:48px;height:48px;border-radius:14px;background:var(--tc-blue);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;flex-shrink:0;position:relative;z-index:1}.sp-tl-num.green{background:var(--tc-green)}
.sp-tl-body{flex:1;padding-top:4px}.sp-tl-body h4{font-size:16px;font-weight:700;margin-bottom:4px}.sp-tl-body p{font-size:13.5px;color:var(--tc-gray);line-height:1.6}

/* DELIVERABLES */
.sp-del-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sp-del-card{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--tc-light);border-radius:12px;transition:all .15s}.sp-del-card:hover{box-shadow:0 4px 24px rgba(13,30,60,.08)}.sp-del-card.hl{background:rgba(232,62,90,.05);border:1px solid rgba(232,62,90,.15)}
.sp-del-icon{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.sp-del-card h4{font-size:13.5px;font-weight:700;margin-bottom:2px}.sp-del-card p{font-size:12px;color:var(--tc-gray);line-height:1.4}

/* DOCUMENTS */
.sp-doc-label{font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--tc-gray);margin-bottom:14px}
.sp-doc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}
.sp-doc-card{text-align:center;padding:20px 14px;background:var(--tc-light);border-radius:12px;border:1px solid transparent;transition:all .2s}.sp-doc-card:hover{border-color:var(--tc-blue);box-shadow:0 4px 24px rgba(13,30,60,.08)}
.sp-doc-icon{width:44px;height:44px;border-radius:12px;background:var(--tc-white);border:1.5px solid var(--tc-border);display:flex;align-items:center;justify-content:center;font-size:20px;margin:0 auto 10px}
.sp-doc-card h4{font-size:13px;font-weight:700;margin-bottom:3px}.sp-doc-card p{font-size:11.5px;color:var(--tc-gray);line-height:1.4}

/* COMPARISON TABLE */
.sp-tbl-wrap{overflow-x:auto;border-radius:12px;border:1.5px solid var(--tc-border)}
.sp-cmp{width:100%;border-collapse:collapse;font-size:14px;min-width:600px}.sp-cmp thead{background:var(--tc-navy);color:#fff}.sp-cmp th{padding:14px 18px;font-size:12.5px;font-weight:700;text-align:left;letter-spacing:.5px}
.sp-cmp td{padding:13px 18px;border-bottom:1px solid var(--tc-border);font-size:13.5px}.sp-cmp td.hl{background:rgba(19,85,193,.03);font-weight:600}.sp-cmp tbody tr:hover{background:rgba(19,85,193,.02)}

/* COMPLIANCE CHECKLIST */
.sp-chk-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sp-chk{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:var(--tc-light);border-radius:9px;font-size:13px;color:var(--tc-navy);line-height:1.5;transition:background .15s}.sp-chk:hover{background:rgba(19,85,193,.05)}
.sp-ck{width:22px;height:22px;border-radius:50%;background:rgba(19,85,193,.1);color:var(--tc-blue);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;flex-shrink:0;margin-top:1px}

/* DARK CALLOUT */
.sp-dk-callout{background:var(--tc-navy);border-radius:16px;padding:24px;display:flex;align-items:flex-start;gap:14px;margin-top:16px}.sp-dk-callout h4{color:#fff;font-size:14px;font-weight:700;margin-bottom:4px}.sp-dk-callout p{color:rgba(255,255,255,.6);font-size:13px;line-height:1.6}.sp-dk-callout a{color:var(--tc-gold);font-weight:700}

/* WHY CARDS */
.sp-why-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sp-why-card{display:flex;align-items:flex-start;gap:14px;padding:20px;background:var(--tc-white);border:1.5px solid var(--tc-border);border-radius:12px;transition:all .2s}.sp-why-card:hover{border-color:var(--tc-blue);box-shadow:0 4px 24px rgba(13,30,60,.08)}
.sp-why-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.sp-why-card h4{font-size:14px;font-weight:700;margin-bottom:2px}.sp-why-card p{font-size:12.5px;color:var(--tc-gray);line-height:1.5}

/* FAQ */
.sp-faq{border:1.5px solid var(--tc-border);border-radius:12px;margin-bottom:8px;overflow:hidden;background:var(--tc-light);transition:border-color .2s}.sp-faq.open{border-color:var(--tc-blue)}
.sp-faq-q{display:flex!important;justify-content:space-between!important;align-items:center!important;width:100%;padding:16px 20px;background:none;border:none;cursor:pointer;font-family:var(--font);font-size:15px;font-weight:600;color:var(--tc-navy);text-align:left;gap:16px;line-height:1.4}.sp-faq-q:hover{color:var(--tc-blue)}
.sp-faq-plus{width:28px;height:28px;border-radius:50%;background:var(--tc-white);border:1.5px solid var(--tc-border);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:16px;color:var(--tc-gray);transition:all .3s}
.sp-faq.open .sp-faq-plus{background:var(--tc-blue);color:#fff;border-color:var(--tc-blue);transform:rotate(45deg)}
.sp-faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease}.sp-faq.open .sp-faq-a{max-height:600px}
.sp-faq-inner{padding:0 20px 18px;font-size:14px;color:var(--tc-gray);line-height:1.75}

/* RELATED */
.sp-rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.sp-rel-card{padding:24px;background:var(--tc-white);border:1.5px solid var(--tc-border);border-radius:16px;transition:all .25s;display:block;color:var(--tc-navy);text-decoration:none}.sp-rel-card:hover{border-color:var(--tc-blue);box-shadow:0 12px 40px rgba(13,30,60,.12);transform:translateY(-3px)}
.sp-rel-icon{font-size:24px;margin-bottom:10px;display:block}.sp-rel-card h4{font-size:14px;font-weight:700;margin-bottom:4px}.sp-rel-card p{font-size:12.5px;color:var(--tc-gray);line-height:1.5;margin-bottom:10px}.sp-rel-link{font-size:13px;font-weight:700;color:var(--tc-blue)}

/* SIDEBAR */
.sp-sidebar{position:sticky;top:110px;display:flex;flex-direction:column;gap:16px}
.sp-panel{background:var(--tc-white);border:1.5px solid var(--tc-border);border-radius:16px;padding:24px;transition:border-color .2s}.sp-panel:hover{border-color:rgba(19,85,193,.3)}
.sp-panel h4{font-size:14px;font-weight:800;color:var(--tc-navy);margin-bottom:14px;display:flex;align-items:center;gap:8px}
.sp-panel-sub{font-size:13px;color:var(--tc-gray);margin-bottom:14px;line-height:1.5}
.sp-panel-list{list-style:none;display:grid;gap:6px}.sp-panel-list li{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--tc-navy);line-height:1.5}
.sp-li-i{color:var(--tc-blue);flex-shrink:0;font-size:12px;margin-top:2px}
.sp-panel.dk{background:var(--tc-navy);border-color:var(--tc-navy)}.sp-panel.dk h4{color:#fff}.sp-panel.dk li{color:rgba(255,255,255,.7)}
.sp-sbtn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border-radius:9px;font-size:14px;font-weight:700;transition:all .2s;width:100%;text-decoration:none;margin-bottom:8px}
.sp-sbtn.pk{background:var(--tc-pink);color:#fff}.sp-sbtn.pk:hover{box-shadow:0 4px 16px rgba(232,62,90,.3)}
.sp-sbtn.ol{border:1.5px solid var(--tc-border);color:var(--tc-navy)}.sp-sbtn.ol:hover{border-color:var(--tc-blue);color:var(--tc-blue)}
.sp-sbtn.wa{background:rgba(37,211,102,.06);border:1.5px solid var(--tc-green);color:#128c7e}.sp-sbtn.wa:hover{background:#25d366;color:#fff}

/* FINAL CTA */
.sp-final{background:var(--tc-navy);padding:64px 0;text-align:center;position:relative;overflow:hidden}.sp-final::before{content:'';position:absolute;top:-80px;right:-80px;width:400px;height:400px;background:radial-gradient(circle,rgba(232,62,90,.08),transparent 70%);pointer-events:none}

/* RESPONSIVE */
@media(max-width:1024px){.sp-hero-grid,.sp-grid-main{grid-template-columns:1fr}.sp-sidebar{position:static;display:grid;grid-template-columns:1fr 1fr;gap:12px}.sp-who-grid,.sp-pc-grid,.sp-del-grid,.sp-why-grid,.sp-chk-grid{grid-template-columns:1fr}.sp-rel-grid,.sp-doc-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.sp-main{padding:40px 0}.sp-sec{margin-bottom:48px}.sp-hero-grid{padding:28px 0 36px}.sp-who-grid,.sp-pc-grid,.sp-del-grid,.sp-why-grid,.sp-chk-grid,.sp-rel-grid,.sp-doc-grid{grid-template-columns:1fr}.sp-sidebar{grid-template-columns:1fr}.sp-trust-row{overflow-x:auto;flex-wrap:nowrap}.sp-trust-i{white-space:nowrap;flex-shrink:0}.sp-form .fg-row{grid-template-columns:1fr}}


/* ═══════════════════════════════════════════════
   FSSAI Service Pages — Component Styles
   Used by: basic-fssai-registration, state-fssai-license,
   central-fssai-license, fssai-renewal, fssai-amendment,
   fssai-by-business-type, fssai-annual-return,
   fssai-closure-surrender, fssai-compliance-support
═══════════════════════════════════════════════ */

/* Map FSSAI variables to site's --tc-* system */
:root {
  --navy: var(--tc-navy, #0d1e3c);
  --navy-light: #152a4a;
  --blue: var(--tc-blue, #1355c1);
  --blue-light: #e8f0fe;
  --pink: var(--tc-pink, #e83e5a);
  --pink-light: #fef0f2;
  --gold: var(--tc-gold, #f5a623);
  --gold-light: #fef8eb;
  --green: var(--tc-green, #22c55e);
  --green-light: #f0fdf4;
  --white: var(--tc-white, #fff);
  --gray-50: #f9fafb;
  --gray-100: #f3f4f6;
  --gray-200: var(--tc-border, #e5e7eb);
  --gray-300: #d1d5db;
  --gray-400: #9ca3af;
  --gray-500: var(--tc-gray, #6b7280);
  --gray-600: #4b5563;
  --gray-700: #374151;
  --gray-800: var(--tc-navy, #1f2937);
  --gray-900: #111827;
  --radius-sm: 6px;
  --radius: var(--r, 10px);
  --radius-lg: var(--r2, 14px);
  --radius-xl: 20px;
  --shadow-sm: 0 1px 3px rgba(0,0,0,.06);
  --shadow-md: 0 4px 16px rgba(0,0,0,.1);
  --shadow-lg: 0 8px 30px rgba(0,0,0,.12);
  --max-w: var(--container, 1200px);
}

/* ---------- Breadcrumb ---------- */
.breadcrumb { font-size: 13px; color: var(--gray-400); padding: 14px 0; }
.breadcrumb a { color: var(--gray-400); }
.breadcrumb a:hover { color: var(--blue); }
.breadcrumb span { margin: 0 6px; }

/* ---------- HERO ---------- */
.hero {
  background: var(--navy);
  color: var(--white);
  padding: 0 0 0;
  position: relative;
  overflow: hidden;
}
.hero::before {
  content: '';
  position: absolute;
  top: -60%; right: -20%;
  width: 600px; height: 600px;
  background: radial-gradient(circle, rgba(19,85,193,.25) 0%, transparent 70%);
  pointer-events: none;
}
.hero .container { position: relative; z-index: 1; }
.hero-grid {
  display: grid;
  grid-template-columns: 1fr 420px;
  gap: 48px;
  align-items: start;
  padding: 32px 0 48px;
}
.hero-badges { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; }
.hero-badge {
  display: inline-flex; align-items: center; gap: 5px;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 20px;
  padding: 5px 14px;
  font-size: 12.5px;
  font-weight: 500;
  color: rgba(255,255,255,.9);
}
.hero-badge .dot { width: 6px; height: 6px; border-radius: 50%; display: inline-block; }
.hero-badge .dot.green { background: var(--green); }
.hero-badge .dot.gold { background: var(--gold); }
.hero-badge .dot.pink { background: var(--pink); }
.hero-badge .dot.blue { background: #60a5fa; }

.hero h1 {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.15;
  margin-bottom: 18px;
}
.hero h1 .highlight { color: var(--gold); }
.hero h1 .highlight-pink { color: var(--pink); }
.hero h1 .highlight-blue { color: #60a5fa; }

.hero-desc {
  font-size: 16px;
  line-height: 1.7;
  color: rgba(255,255,255,.75);
  margin-bottom: 28px;
  max-width: 520px;
}

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

.hero-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.hero-card {
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: var(--radius);
  padding: 14px 16px;
}
.hero-card-title { font-weight: 600; font-size: 14px; color: var(--white); margin-bottom: 2px; }
.hero-card-sub { font-size: 12px; color: rgba(255,255,255,.5); }
.hero-card-tag {
  display: inline-block;
  font-size: 10.5px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .5px;
  padding: 2px 8px;
  border-radius: 4px;
  margin-top: 6px;
}
.hero-card-tag.green { background: rgba(22,163,74,.2); color: #4ade80; }
.hero-card-tag.pink { background: rgba(232,62,90,.2); color: #f87171; }
.hero-card-tag.blue { background: rgba(19,85,193,.25); color: #93bbfd; }
.hero-card-tag.gold { background: rgba(245,166,35,.2); color: var(--gold); }

/* ---------- Hero Form ---------- */
.hero-form-wrapper {
  background: var(--white);
  border-radius: var(--radius-lg);
  padding: 28px 24px;
  color: var(--gray-800);
  box-shadow: var(--shadow-lg);
}
.hero-form-label {
  display: inline-block;
  background: var(--navy);
  color: var(--gold);
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 5px 14px;
  border-radius: 20px;
  margin-bottom: 12px;
}
.hero-form-title {
  font-family: 'DM Sans', sans-serif;
  font-size: 20px;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 4px;
}
.hero-form-sub {
  font-size: 13px;
  color: var(--gray-500);
  margin-bottom: 18px;
}
.hero-form-sub .timer { color: var(--green); font-weight: 600; }

.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 10px; }
.form-group { margin-bottom: 10px; }
.form-group.full { grid-column: 1 / -1; }
.form-label { display: block; font-size: 12.5px; font-weight: 600; color: var(--gray-700); margin-bottom: 4px; }
.form-input, .form-select, .form-textarea {
  width: 100%;
  padding: 10px 14px;
  border: 1.5px solid var(--gray-200);
  border-radius: var(--radius-sm);
  font-size: 14px;
  font-family: inherit;
  color: var(--gray-800);
  transition: border-color .2s;
  background: var(--white);
}
.form-input:focus, .form-select:focus, .form-textarea:focus {
  outline: none;
  border-color: var(--blue);
  box-shadow: 0 0 0 3px rgba(19,85,193,.1);
}
.form-input::placeholder, .form-textarea::placeholder { color: var(--gray-400); }
.form-textarea { resize: vertical; min-height: 70px; }

.form-submit {
  width: 100%;
  padding: 14px;
  background: var(--pink);
  color: var(--white);
  border: none;
  border-radius: var(--radius);
  font-size: 15px;
  font-weight: 700;
  font-family: inherit;
  cursor: pointer;
  transition: background .2s, transform .1s;
  margin-top: 6px;
  display: flex; align-items: center; justify-content: center; gap: 8px;
}
.form-submit:hover { background: #d4354f; transform: translateY(-1px); }
.form-submit .icon { font-size: 16px; }

.form-trust {
  text-align: center;
  font-size: 11.5px;
  color: var(--gray-400);
  margin-top: 10px;
}
.form-trust .lock { margin-right: 3px; }

.form-or {
  text-align: center;
  font-size: 12px;
  color: var(--gray-400);
  margin: 12px 0;
  position: relative;
}
.form-or::before, .form-or::after {
  content: '';
  position: absolute;
  top: 50%;
  width: calc(50% - 20px);
  height: 1px;
  background: var(--gray-200);
}
.form-or::before { left: 0; }
.form-or::after { right: 0; }

.whatsapp-btn {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  width: 100%;
  padding: 12px;
  background: #25d366;
  color: var(--white);
  border: none;
  border-radius: var(--radius);
  font-size: 14px;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  transition: background .2s;
}
.whatsapp-btn:hover { background: #20bd5a; text-decoration: none; color: var(--white); }

/* ---------- Trust Bar ---------- */
.trust-bar {
  background: var(--navy-light);
  border-top: 1px solid rgba(255,255,255,.08);
  padding: 14px 0;
}
.trust-bar-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  flex-wrap: wrap;
}
.trust-item {
  display: flex; align-items: center; gap: 8px;
  font-size: 13px;
  font-weight: 500;
  color: rgba(255,255,255,.8);
  white-space: nowrap;
}
.trust-item .icon { font-size: 15px; }

/* ---------- Buttons ---------- */
.btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 28px;
  border-radius: var(--radius);
  font-size: 15px;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  border: none;
  transition: all .2s;
  text-decoration: none;
}
.btn:hover { text-decoration: none; transform: translateY(-1px); }
.btn-pink { background: var(--pink); color: var(--white); }
.btn-pink:hover { background: #d4354f; color: var(--white); }
.btn-navy { background: var(--navy); color: var(--white); }
.btn-navy:hover { background: var(--navy-light); color: var(--white); }
.btn-outline {
  background: transparent;
  color: var(--white);
  border: 1.5px solid rgba(255,255,255,.3);
}
.btn-outline:hover { border-color: var(--white); color: var(--white); }
.btn-outline-dark {
  background: transparent;
  color: var(--navy);
  border: 1.5px solid var(--gray-300);
}
.btn-outline-dark:hover { border-color: var(--navy); }
.btn-blue { background: var(--blue); color: var(--white); }
.btn-blue:hover { background: #0f47a3; color: var(--white); }
.btn-green { background: var(--green); color: var(--white); }
.btn-green:hover { background: #15803d; color: var(--white); }

/* ---------- Section Spacing ---------- */
.section { padding: 64px 0; }
.section-sm { padding: 48px 0; }
.section-lg { padding: 80px 0; }
.section-gray { background: var(--gray-50); }
.section-blue-light { background: var(--blue-light); }
.section-pink-light { background: var(--pink-light); }

/* ---------- Eyebrow ---------- */
.eyebrow {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: var(--pink);
  margin-bottom: 10px;
  font-family: 'DM Sans', sans-serif;
}
.eyebrow::before { content: '— '; }

/* ---------- Section Titles ---------- */
.section-title {
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 14px;
}
.section-desc {
  font-size: 16px;
  color: var(--gray-500);
  max-width: 640px;
  line-height: 1.7;
}
.text-center { text-align: center; }
.mx-auto { margin-left: auto; margin-right: auto; }

/* ---------- 2-Column Layout ---------- */
.two-col {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 48px;
  align-items: start;
}
.main-content { min-width: 0; }

/* ---------- Sidebar (Sticky) ---------- */
.sidebar {
  position: sticky;
  top: 24px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.sidebar-card {
  background: var(--white);
  border: 1.5px solid var(--gray-200);
  border-radius: var(--radius-lg);
  padding: 22px 20px;
}
.sidebar-card-title {
  font-family: 'DM Sans', sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.sidebar-card-title .icon { font-size: 16px; }

/* Talk to CA */
.sidebar-cta {
  background: var(--white);
  border: 2px solid var(--pink);
  border-radius: var(--radius-lg);
  padding: 22px 20px;
  text-align: center;
}
.sidebar-cta-title {
  font-family: 'DM Sans', sans-serif;
  font-weight: 700;
  font-size: 16px;
  color: var(--navy);
  margin-bottom: 6px;
}
.sidebar-cta-desc {
  font-size: 13px;
  color: var(--gray-500);
  margin-bottom: 16px;
  line-height: 1.6;
}
.sidebar-cta .btn { width: 100%; justify-content: center; margin-bottom: 8px; }
.sidebar-cta .phone-link {
  display: flex; align-items: center; justify-content: center; gap: 6px;
  font-size: 14px; font-weight: 600; color: var(--navy);
  padding: 10px;
  border: 1.5px solid var(--gray-200);
  border-radius: var(--radius);
  margin-bottom: 8px;
}
.sidebar-cta .phone-link:hover { text-decoration: none; border-color: var(--navy); }
.sidebar-cta .wa-link {
  display: flex; align-items: center; justify-content: center; gap: 6px;
  font-size: 14px; font-weight: 600; color: #25d366;
  padding: 10px;
  border: 1.5px solid #25d366;
  border-radius: var(--radius);
}
.sidebar-cta .wa-link:hover { text-decoration: none; background: #25d366; color: var(--white); }

/* Sidebar: Response Times */
.response-table { width: 100%; font-size: 13.5px; }
.response-table tr { border-bottom: 1px solid var(--gray-100); }
.response-table td { padding: 8px 0; }
.response-table td:last-child { text-align: right; font-weight: 600; color: var(--navy); }

/* Sidebar: What's Included */
.checklist { list-style: none; }
.checklist li {
  display: flex; align-items: flex-start; gap: 8px;
  padding: 6px 0;
  font-size: 13.5px;
  color: var(--gray-700);
}
.checklist li::before {
  content: '✅';
  font-size: 13px;
  flex-shrink: 0;
  margin-top: 1px;
}

/* Sidebar: Why TaxClue (dark) */
.sidebar-dark {
  background: var(--navy);
  color: var(--white);
  border: none;
}
.sidebar-dark .sidebar-card-title { color: var(--gold); }
.why-item { padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,.08); }
.why-item:last-child { border-bottom: none; }
.why-item-title { font-weight: 700; font-size: 14px; color: var(--white); margin-bottom: 2px; display: flex; align-items: center; gap: 6px; }
.why-item-desc { font-size: 12.5px; color: rgba(255,255,255,.55); }

/* Sidebar: Doc Checklist */
.doc-list { list-style: none; }
.doc-list li {
  display: flex; align-items: flex-start; gap: 8px;
  padding: 5px 0;
  font-size: 13.5px;
  color: var(--gray-700);
}
.doc-list li::before {
  content: '📄';
  font-size: 13px;
  flex-shrink: 0;
}

/* Sidebar: Quick Reference */
.quick-ref-table { width: 100%; font-size: 13px; }
.quick-ref-table tr { border-bottom: 1px solid var(--gray-100); }
.quick-ref-table tr:last-child { border-bottom: none; }
.quick-ref-table td { padding: 7px 0; }
.quick-ref-table td:first-child { color: var(--gray-500); }
.quick-ref-table td:last-child { text-align: right; font-weight: 600; color: var(--navy); }

/* ---------- Content Sections ---------- */

/* Tab switcher */
.tabs {
  display: flex;
  gap: 0;
  margin-bottom: 32px;
  border-bottom: 2px solid var(--gray-200);
}
.tab {
  padding: 14px 24px;
  font-size: 14px;
  font-weight: 600;
  color: var(--gray-500);
  cursor: pointer;
  border-bottom: 2px solid transparent;
  margin-bottom: -2px;
  transition: all .2s;
  display: flex; align-items: center; gap: 8px;
  background: none;
  border-top: none; border-left: none; border-right: none;
  font-family: inherit;
}
.tab:hover { color: var(--navy); }
.tab.active { color: var(--blue); border-bottom-color: var(--blue); }
.tab-content { display: none; }
.tab-content.active { display: block; }

/* Info cards grid */
.info-cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-bottom: 24px;
}
.info-card {
  background: var(--gray-50);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius);
  padding: 18px;
}
.info-card-title { font-family: 'DM Sans'; font-weight: 700; font-size: 14px; color: var(--navy); margin-bottom: 4px; }
.info-card-desc { font-size: 13px; color: var(--gray-500); line-height: 1.6; }

/* Check list (in content) */
.check-list { list-style: none; margin: 16px 0; }
.check-list li {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 6px 0;
  font-size: 14.5px;
  line-height: 1.6;
}
.check-list li::before {
  content: '✓';
  color: var(--green);
  font-weight: 700;
  flex-shrink: 0;
  margin-top: 2px;
}

/* Vertical Timeline (Process) */
.timeline { position: relative; padding-left: 40px; margin: 24px 0; }
.timeline::before {
  content: '';
  position: absolute;
  left: 15px;
  top: 0;
  bottom: 0;
  width: 2px;
  background: var(--gray-200);
}
.timeline-step {
  position: relative;
  padding-bottom: 28px;
}
.timeline-step:last-child { padding-bottom: 0; }
.timeline-num {
  position: absolute;
  left: -40px;
  top: 0;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--blue);
  color: var(--white);
  font-size: 14px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}
.timeline-step-title { font-family: 'DM Sans'; font-weight: 700; font-size: 16px; color: var(--navy); margin-bottom: 4px; }
.timeline-step-desc { font-size: 14px; color: var(--gray-600); line-height: 1.65; }
.timeline-step-time {
  display: inline-block;
  font-size: 12px;
  font-weight: 600;
  color: var(--blue);
  background: var(--blue-light);
  padding: 3px 10px;
  border-radius: 20px;
  margin-top: 6px;
}

/* Document Cards (3-col centered) */
.doc-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin: 20px 0;
}
.doc-card {
  background: var(--gray-50);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius);
  padding: 14px 16px;
  text-align: center;
  font-size: 13.5px;
  color: var(--gray-700);
}
.doc-card .icon { font-size: 20px; margin-bottom: 6px; }

/* FAQ (rounded bordered cards) */
.faq-section { margin: 24px 0; }
.faq-item {
  border: 1.5px solid var(--gray-200);
  border-radius: var(--radius-lg);
  margin-bottom: 10px;
  overflow: hidden;
  transition: border-color .2s;
}
.faq-item:hover { border-color: var(--gray-300); }
.faq-question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  font-size: 15px;
  font-weight: 600;
  color: var(--navy);
  cursor: pointer;
  background: none;
  border: none;
  width: 100%;
  text-align: left;
  font-family: inherit;
  gap: 16px;
}
.faq-question .plus {
  font-size: 20px;
  color: var(--gray-400);
  flex-shrink: 0;
  transition: transform .2s;
}
.faq-item.active .faq-question .plus { transform: rotate(45deg); color: var(--pink); }
.faq-answer {
  padding: 0 20px 16px;
  font-size: 14px;
  color: var(--gray-600);
  line-height: 1.7;
  display: none;
}
.faq-item.active .faq-answer { display: block; }

/* Mistakes Section */
.mistakes-section {
  background: var(--pink-light);
  border: 1.5px solid rgba(232,62,90,.15);
  border-radius: var(--radius-lg);
  padding: 28px 24px;
  margin: 32px 0;
}
.mistakes-title {
  font-family: 'DM Sans', sans-serif;
  font-size: 17px;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.mistakes-intro {
  font-size: 14px;
  color: var(--gray-600);
  margin-bottom: 14px;
  padding: 10px 16px;
  border-left: 3px solid var(--pink);
  background: rgba(255,255,255,.6);
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}
.mistakes-list { list-style: none; }
.mistakes-list li {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 6px 0;
  font-size: 14px;
  color: var(--gray-700);
  line-height: 1.6;
}
.mistakes-list li::before {
  content: '•';
  color: var(--pink);
  font-weight: 700;
  font-size: 18px;
  flex-shrink: 0;
  line-height: 1.4;
}

/* Comparison Table */
.comparison-table {
  width: 100%;
  border-collapse: collapse;
  margin: 20px 0;
  font-size: 14px;
  border-radius: var(--radius-lg);
  overflow: hidden;
  border: 1px solid var(--gray-200);
}
.comparison-table thead { background: var(--navy); color: var(--white); }
.comparison-table th {
  padding: 14px 16px;
  font-weight: 600;
  text-align: left;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .5px;
}
.comparison-table td {
  padding: 12px 16px;
  border-bottom: 1px solid var(--gray-100);
}
.comparison-table tr:last-child td { border-bottom: none; }
.comparison-table tbody tr:hover { background: var(--gray-50); }
.comparison-table .highlight-col { background: rgba(19,85,193,.04); font-weight: 600; color: var(--blue); }

/* Info Box / Callout */
.callout {
  border-left: 4px solid var(--blue);
  background: var(--blue-light);
  padding: 16px 20px;
  border-radius: 0 var(--radius) var(--radius) 0;
  margin: 20px 0;
  font-size: 14px;
  line-height: 1.65;
}
.callout-title { font-weight: 700; color: var(--navy); margin-bottom: 4px; }
.callout.warning { border-left-color: var(--gold); background: var(--gold-light); }
.callout.danger { border-left-color: var(--pink); background: var(--pink-light); }
.callout.success { border-left-color: var(--green); background: var(--green-light); }

/* Stat pills */
.stat-pills { display: flex; gap: 12px; margin: 20px 0; flex-wrap: wrap; }
.stat-pill {
  background: var(--navy);
  color: var(--white);
  border-radius: var(--radius);
  padding: 14px 24px;
  text-align: center;
  min-width: 120px;
}
.stat-pill-value { font-size: 22px; font-weight: 700; }
.stat-pill-label { font-size: 11.5px; color: rgba(255,255,255,.6); margin-top: 2px; }

/* Tag pills */
.tag-pills { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0; }
.tag-pill {
  font-size: 12px;
  font-weight: 600;
  padding: 5px 14px;
  border-radius: 20px;
  border: 1px solid;
}
.tag-pill.red { color: var(--pink); border-color: var(--pink); background: var(--pink-light); }
.tag-pill.gold { color: #b8860b; border-color: var(--gold); background: var(--gold-light); }
.tag-pill.blue { color: var(--blue); border-color: var(--blue); background: var(--blue-light); }
.tag-pill.green { color: var(--green); border-color: var(--green); background: var(--green-light); }

/* Why TaxClue Section (in content) */
.why-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  margin: 24px 0;
}
.why-card {
  background: var(--white);
  border: 1.5px solid var(--gray-200);
  border-radius: var(--radius-lg);
  padding: 24px;
  text-align: center;
}
.why-card .icon { font-size: 32px; margin-bottom: 10px; }
.why-card-title { font-family: 'DM Sans'; font-weight: 700; font-size: 15px; color: var(--navy); margin-bottom: 6px; }
.why-card-desc { font-size: 13px; color: var(--gray-500); line-height: 1.6; }

/* Why TaxClue (navy bg) */
.why-section-dark {
  background: var(--navy);
  color: var(--white);
  padding: 64px 0;
}
.why-section-dark .eyebrow { color: var(--gold); }
.why-section-dark .section-title { color: var(--white); }
.why-section-dark .section-desc { color: rgba(255,255,255,.6); }
.why-dark-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 40px;
}
.why-dark-card {
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: var(--radius-lg);
  padding: 28px 24px;
  text-align: center;
}
.why-dark-card .icon { font-size: 36px; margin-bottom: 14px; }
.why-dark-card-title { font-family: 'DM Sans'; font-weight: 700; font-size: 16px; color: var(--white); margin-bottom: 8px; }
.why-dark-card-desc { font-size: 13.5px; color: rgba(255,255,255,.55); line-height: 1.6; }

/* Related Services */
.related-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-top: 32px;
}
.related-card {
  background: var(--white);
  border: 1.5px solid var(--gray-200);
  border-radius: var(--radius-lg);
  padding: 24px 20px;
  transition: border-color .2s, box-shadow .2s;
}
.related-card:hover { border-color: var(--blue); box-shadow: var(--shadow-md); }
.related-card .icon { font-size: 28px; margin-bottom: 12px; }
.related-card-title { font-family: 'DM Sans'; font-weight: 700; font-size: 14.5px; color: var(--navy); margin-bottom: 6px; }
.related-card-desc { font-size: 13px; color: var(--gray-500); line-height: 1.5; margin-bottom: 12px; }
.related-card-link { font-size: 13px; font-weight: 600; color: var(--blue); }

/* Bottom CTA Section */
.bottom-cta {
  background: var(--navy);
  color: var(--white);
  padding: 64px 0;
  text-align: center;
}
.bottom-cta .eyebrow { color: var(--gold); }
.bottom-cta .section-title { color: var(--white); font-size: 30px; }
.bottom-cta .section-desc { color: rgba(255,255,255,.6); margin-bottom: 28px; }
.bottom-cta-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-bottom: 16px;
  flex-wrap: wrap;
}
.bottom-cta-trust {
  font-size: 12px;
  color: rgba(255,255,255,.4);
  margin-top: 12px;
}

/* Urgency cards */
.urgency-cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin: 32px 0;
}
.urgency-card {
  background: var(--white);
  border: 1.5px solid var(--gray-200);
  border-radius: var(--radius-lg);
  padding: 24px 20px;
  text-align: center;
}
.urgency-card .icon { font-size: 32px; margin-bottom: 12px; }
.urgency-tag {
  display: inline-block;
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .5px;
  padding: 3px 10px;
  border-radius: 4px;
  margin-bottom: 8px;
}
.urgency-card-title { font-family: 'DM Sans'; font-weight: 700; font-size: 15px; color: var(--navy); margin-bottom: 8px; }
.urgency-card-desc { font-size: 13px; color: var(--gray-500); line-height: 1.6; }

/* Filing Details Table */
.filing-table {
  width: 100%;
  font-size: 14px;
  margin: 16px 0;
  border: 1px solid var(--gray-200);
  border-radius: var(--radius);
  overflow: hidden;
}
.filing-table tr { border-bottom: 1px solid var(--gray-100); }
.filing-table tr:last-child { border-bottom: none; }
.filing-table td { padding: 10px 16px; }
.filing-table td:first-child { color: var(--gray-500); }
.filing-table td:last-child { text-align: right; font-weight: 600; color: var(--navy); }

/* Side-by-side process */
.dual-process {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  margin: 24px 0;
}
.process-column {
  border: 1.5px solid var(--gray-200);
  border-radius: var(--radius-lg);
  padding: 24px;
}
.process-col-header {
  font-family: 'DM Sans', sans-serif;
  font-weight: 700;
  font-size: 16px;
  color: var(--navy);
  margin-bottom: 6px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.process-col-sub { font-size: 13px; color: var(--gray-500); margin-bottom: 20px; }

/* Content paragraph styles */
.content-block { margin-bottom: 32px; }
.content-block h2 { font-size: 28px; margin-bottom: 14px; }
.content-block h3 {
  font-family: 'DM Sans', sans-serif;
  font-size: 18px;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 8px;
}
.content-block p { margin-bottom: 14px; color: var(--gray-600); }

/* Penalty table */
.penalty-table {
  width: 100%;
  border-collapse: collapse;
  margin: 16px 0;
  font-size: 14px;
  border: 1.5px solid var(--gray-200);
  border-radius: var(--radius);
  overflow: hidden;
}
.penalty-table thead { background: var(--pink-light); }
.penalty-table th {
  padding: 12px 16px;
  font-weight: 600;
  text-align: left;
  color: var(--navy);
  font-size: 13px;
}
.penalty-table td { padding: 10px 16px; border-bottom: 1px solid var(--gray-100); }
.penalty-table tr:last-child td { border-bottom: none; }
.penalty-table .penalty-val { font-weight: 700; color: var(--pink); }

/* Late fee calculator (sidebar) */
.late-fee-table { width: 100%; font-size: 13px; }
.late-fee-table tr { border-bottom: 1px solid var(--gray-100); }
.late-fee-table tr:last-child { border-bottom: none; }
.late-fee-table td { padding: 7px 0; }
.late-fee-table td:last-child { text-align: right; font-weight: 600; }

/* Which do I need (sidebar) */
.need-table { width: 100%; font-size: 13px; }
.need-table tr { border-bottom: 1px solid var(--gray-100); }
.need-table tr:last-child { border-bottom: none; }
.need-table td { padding: 7px 0; }
.need-table td:last-child { text-align: right; font-weight: 600; color: var(--blue); }

/* License-by-turnover table (sidebar) */
.turnover-table { width: 100%; font-size: 13px; }
.turnover-table tr { border-bottom: 1px solid var(--gray-100); }
.turnover-table tr:last-child { border-bottom: none; }
.turnover-table td { padding: 7px 0; }
.turnover-table td:last-child { text-align: right; font-weight: 600; color: var(--blue); }

/* Business type nav (left sidebar in "by business type" page) */
.biz-type-nav { list-style: none; }
.biz-type-nav li {
  padding: 12px 16px;
  border-left: 3px solid transparent;
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
  color: var(--gray-600);
  transition: all .2s;
  display: flex; align-items: center; gap: 8px;
}
.biz-type-nav li:hover { color: var(--navy); background: var(--gray-50); }
.biz-type-nav li.active { color: var(--blue); border-left-color: var(--blue); background: var(--blue-light); font-weight: 600; }

/* Calendar / Filing calendar */
.calendar-steps { position: relative; padding-left: 40px; margin: 24px 0; }
.calendar-steps::before {
  content: '';
  position: absolute;
  left: 15px; top: 0; bottom: 0;
  width: 2px;
  background: var(--gray-200);
}
.calendar-step { position: relative; padding-bottom: 24px; }
.calendar-step:last-child { padding-bottom: 0; }
.calendar-num {
  position: absolute;
  left: -40px; top: 0;
  width: 32px; height: 32px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 14px; font-weight: 700;
  z-index: 1;
}
.calendar-num.green { background: var(--green); color: var(--white); }
.calendar-num.blue { background: var(--blue); color: var(--white); }
.calendar-num.gold { background: var(--gold); color: var(--white); }
.calendar-num.red { background: var(--pink); color: var(--white); }
.calendar-step-label { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .5px; margin-bottom: 4px; }
.calendar-step-title { font-family: 'DM Sans'; font-weight: 700; font-size: 16px; color: var(--navy); margin-bottom: 4px; }
.calendar-step-desc { font-size: 14px; color: var(--gray-600); line-height: 1.6; }

/* Key-value detail rows */
.detail-rows { margin: 16px 0; }
.detail-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 0;
  border-bottom: 1px solid var(--gray-100);
  font-size: 14px;
}
.detail-row:last-child { border-bottom: none; }
.detail-key { color: var(--gray-500); }
.detail-val { font-weight: 600; color: var(--navy); }

/* Annexure cards */
.annexure-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin: 24px 0;
}
.annexure-card {
  background: var(--gray-50);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-lg);
  padding: 20px;
}
.annexure-label {
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .5px;
  color: var(--blue);
  margin-bottom: 6px;
}
.annexure-title { font-family: 'DM Sans'; font-weight: 700; font-size: 15px; color: var(--navy); margin-bottom: 6px; }
.annexure-desc { font-size: 13px; color: var(--gray-500); line-height: 1.5; }

/* Key benefits grid */
.benefits-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin: 24px 0;
}
.benefit-card {
  background: var(--white);
  border: 1.5px solid var(--gray-200);
  border-radius: var(--radius-lg);
  padding: 24px;
}
.benefit-card .icon { font-size: 28px; margin-bottom: 10px; }
.benefit-card-title { font-family: 'DM Sans'; font-weight: 700; font-size: 15px; color: var(--navy); margin-bottom: 6px; }
.benefit-card-desc { font-size: 13px; color: var(--gray-500); line-height: 1.6; }

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
  .hero-grid { grid-template-columns: 1fr; }
  .two-col { grid-template-columns: 1fr; }
  .sidebar { position: static; }
  .why-dark-grid { grid-template-columns: repeat(2, 1fr); }
  .related-grid { grid-template-columns: repeat(2, 1fr); }
  .urgency-cards { grid-template-columns: repeat(2, 1fr); }
  .dual-process { grid-template-columns: 1fr; }
  .annexure-grid { grid-template-columns: repeat(2, 1fr); }
  .benefits-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .hero h1 { font-size: 30px; }
  .section-title { font-size: 26px; }
  .hero-cards { grid-template-columns: 1fr; }
  .info-cards { grid-template-columns: 1fr; }
  .doc-cards { grid-template-columns: 1fr 1fr; }
  .why-grid { grid-template-columns: 1fr; }
  .why-dark-grid { grid-template-columns: 1fr; }
  .related-grid { grid-template-columns: 1fr; }
  .urgency-cards { grid-template-columns: 1fr; }
  .comparison-table { font-size: 12px; }
  .comparison-table th, .comparison-table td { padding: 8px 10px; }
  .form-row { grid-template-columns: 1fr; }
  .stat-pills { flex-direction: column; }
  .stat-pill { min-width: auto; }
  .annexure-grid { grid-template-columns: 1fr; }
  .benefits-grid { grid-template-columns: 1fr; }
}

/* ---------- FAQ JS helper ---------- */
/* Toggle is handled via inline JS */

/* ═══ FIXES — 2026-03-21 ═══ */

/* FIX 1: Remove badges bar from hero on ALL service pages */
.sp-badges { display: none !important; }

/* FIX 2: Hero h1 text color — white on navy hero background (global h1 color was overriding) */
.hero h1,
.sp-hero-l h1 { color: #fff !important; }
.hero h1 .highlight { color: var(--gold) !important; }
.hero h1 .highlight-pink { color: var(--pink) !important; }
.hero h1 .highlight-blue { color: #60a5fa !important; }

/* FIX 3: WhatsApp icon on green CTA buttons */
.sf-wa, .whatsapp-btn {
  position: relative;
  padding-left: 40px !important;
}
.sf-wa::before, .whatsapp-btn::before {
  content: '';
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23128c7e'%3E%3Cpath d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z'/%3E%3C/svg%3E") no-repeat center/contain;
  flex-shrink: 0;
}
.sf-wa:hover::before, .whatsapp-btn:hover::before {
  filter: brightness(10);
}

/* FIX 4: Compact hero forms — reduce blank space on service pages */
/* Template-based form (.sp-form) */
.sp-form { padding: 22px 24px; }
.sp-form h3 { font-size: 15.5px; margin-bottom: 2px; }
.sp-form .sf-sub { font-size: 12px; margin-bottom: 12px; }
.sp-form label { font-size: 11.5px; margin-bottom: 2px; }
.sp-form .fg { margin-bottom: 8px; }
.sp-form .fg-row { gap: 8px; }
.sp-form input, .sp-form select { padding: 9px 12px; font-size: 13px; border-radius: 7px; }
.sp-form textarea { padding: 8px 12px; font-size: 13px; min-height: 44px; border-radius: 7px; }
.sf-btn { padding: 11px; font-size: 14px; border-radius: 8px; }
.sf-note { font-size: 10px; margin-top: 6px; }
.sf-div { margin: 8px 0; font-size: 11px; }
.sf-wa { padding: 9px; font-size: 13px; border-radius: 8px; }

/* Standalone form (.hero-form-wrapper) */
.hero-form-wrapper { padding: 22px 20px; }
.hero-form-title { font-size: 17px; margin-bottom: 2px; }
.hero-form-sub { font-size: 12px; margin-bottom: 12px; }
.form-row { gap: 8px; margin-bottom: 8px; }
.form-group { margin-bottom: 8px; }
.form-label { font-size: 11.5px; margin-bottom: 2px; }
.form-input, .form-select { padding: 9px 12px; font-size: 13px; }
.form-textarea { padding: 8px 12px; font-size: 13px; min-height: 44px; }
.form-submit { padding: 11px; font-size: 14px; margin-top: 4px; }
.form-trust { font-size: 10px; margin-top: 6px; }
.form-or { margin: 8px 0; font-size: 11px; }
.whatsapp-btn { padding: 9px; font-size: 13px; }

/* ═══ Service Page — Small device fixes ═══ */
@media(max-width:480px){
.sp-hero-grid{grid-template-columns:1fr;gap:24px;padding:20px 0 28px}
.sp-hero-l h1{font-size:26px!important}
.sp-hero-l>p{font-size:14px}
.sp-pills{gap:6px}.sp-pill{font-size:11px;padding:4px 10px}
.sp-ctas{flex-direction:column;gap:10px}.sp-ctas .btn{width:100%;justify-content:center}
.sp-form{padding:18px 16px}
.sp-form h3{font-size:14.5px}
.sp-h2{font-size:22px!important}
.sp-grid-main{grid-template-columns:1fr;gap:32px}
.sp-tl-num{width:40px;height:40px;font-size:16px}
/* Standalone service pages */
.hero-grid{grid-template-columns:1fr!important;gap:24px}
.hero h1{font-size:26px!important}
.hero-badges{gap:6px}.hero-badge{font-size:11px;padding:4px 10px}
.hero-cards{grid-template-columns:1fr}
.hero-form-wrapper{padding:18px 16px}
.two-col{grid-template-columns:1fr!important}
.sidebar{position:static!important}
.form-row{grid-template-columns:1fr!important}
}
@media(max-width:360px){
.sp-hero-l h1{font-size:22px!important}
.sp-form{padding:16px 14px}
.hero h1{font-size:22px!important}
.hero-form-wrapper{padding:16px 14px}
.hero-desc{font-size:13px}
}
