/* Bhavik Nathwani & Associates - Chartered Accountants
   Premium Website Stylesheet 2026 - Glassmorphism + Crystalline Glass
   Brand Colors: Green #10B981 + Blue #00A8E8 */

:root {
  --font-sans: "Inter","Segoe UI",-apple-system,BlinkMacSystemFont,Roboto,sans-serif;
  --brand-green: #10B981; --brand-green-light: #34D399; --brand-green-dark: #059669;
  --brand-blue: #00A8E8; --brand-blue-light: #38BDF8; --brand-blue-dark: #0077A8;
  --grad-brand: linear-gradient(135deg, #10B981 0%, #00A8E8 100%);
  --grad-brand-r: linear-gradient(135deg, #00A8E8 0%, #10B981 100%);
  --grad-hero: linear-gradient(135deg, #0a1628 0%, #0d2040 50%, #061a14 100%);
  --grad-card: linear-gradient(145deg, rgba(16,185,129,0.06) 0%, rgba(0,168,232,0.04) 100%);
  --shadow-xs: 0 1px 2px rgba(0,0,0,0.05); --shadow-sm: 0 2px 4px rgba(0,0,0,0.08);
  --shadow-md: 0 4px 12px rgba(0,0,0,0.12); --shadow-lg: 0 8px 32px rgba(0,0,0,0.16);
  --shadow-xl: 0 20px 60px rgba(0,0,0,0.20);
  --shadow-glow-green: 0 0 30px rgba(16,185,129,0.25);
  --shadow-glow-blue: 0 0 30px rgba(0,168,232,0.25);
  --shadow-card: 0 4px 24px rgba(0,0,0,0.12),0 0 0 1px rgba(255,255,255,0.06);
  --radius-xs: 4px; --radius-sm: 8px; --radius-md: 14px;
  --radius-lg: 20px; --radius-xl: 32px; --radius-full: 9999px;
  --ease-out: cubic-bezier(0.22,1,0.36,1); --ease-in-out: cubic-bezier(0.4,0,0.2,1);
  --t-fast: 0.18s cubic-bezier(0.4,0,0.2,1); --t-smooth: 0.38s cubic-bezier(0.22,1,0.36,1);
  --t-slow: 0.6s cubic-bezier(0.22,1,0.36,1);
  --bg-page: #F0F7F4; --bg-section: #FFFFFF; --bg-alt: #EBF5F0;
  --bg-glass: rgba(255,255,255,0.72); --bg-glass-dark: rgba(240,247,244,0.90);
  --bg-card: rgba(255,255,255,0.85); --bg-input: #FFFFFF;
  --text-primary: #0B1F14; --text-secondary: #3D5A4E; --text-muted: #6B8F7F; --text-inverse: #FFFFFF;
  --border: rgba(16,185,129,0.15); --border-strong: rgba(16,185,129,0.30); --border-input: #CBD5CC;
  --accent-primary: var(--brand-green); --accent-secondary: var(--brand-blue);
  --nav-bg: rgba(240,247,244,0.82); --nav-border: rgba(16,185,129,0.14);
  --footer-bg: #071410; --footer-text: #94A3B8; --footer-border: rgba(255,255,255,0.05);
  --tag-bg: rgba(16,185,129,0.10); --tag-color: #059669;
  /* Water Drop Glass Tokens */
  --water-drop-surface: rgba(255, 255, 255, 0.72);
  --water-drop-surface-hover: rgba(255, 255, 255, 0.88);
  --water-drop-border: rgba(255, 255, 255, 0.65);
  --water-drop-border-caustic: rgba(16, 185, 129, 0.35);
  --water-drop-glare: rgba(255, 255, 255, 0.95);
  --water-drop-shadow: 0 20px 48px -12px rgba(10, 45, 30, 0.12), 0 8px 18px -6px rgba(0, 0, 0, 0.05);
  --water-drop-inset: 
    inset 1px 2px 3px 0 rgba(255, 255, 255, 0.95),
    inset -1px -2px 4px 0 rgba(16, 185, 129, 0.10),
    inset 0 25px 35px -15px rgba(255, 255, 255, 0.30);
  --water-drop-caustic: 0 0 35px rgba(16, 185, 129, 0.22);
}
[data-theme="dark"] {
  --bg-page: #060B14; --bg-section: #0A1122; --bg-alt: #0E172E;
  --bg-glass: rgba(14, 23, 45, 0.72); --bg-glass-dark: rgba(8, 14, 28, 0.94);
  --bg-card: rgba(14, 23, 45, 0.78); --bg-input: #091122;
  --text-primary: #F8FAFC; --text-secondary: #CBD5E1; --text-muted: #94A3B8; --text-inverse: #060B14;
  --border: rgba(56, 189, 248, 0.16); --border-strong: rgba(16, 185, 129, 0.35); --border-input: rgba(56, 189, 248, 0.24);
  --accent-primary: #10B981; --accent-secondary: #0080FF;
  --nav-bg: rgba(8, 14, 28, 0.85); --nav-border: rgba(56, 189, 248, 0.18);
  --footer-bg: #04070F; --footer-text: #94A3B8; --footer-border: rgba(255, 255, 255, 0.06);
  --shadow-card: 0 8px 32px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(56, 189, 248, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.08);
  --tag-bg: rgba(0, 128, 255, 0.14); --tag-color: #38BDF8;
  --grad-hero: linear-gradient(135deg, #060B14 0%, #0A1428 50%, #061A18 100%);
  --grad-card: linear-gradient(145deg, rgba(0, 128, 255, 0.08) 0%, rgba(16, 185, 129, 0.06) 100%);
  --shadow-glow-green: 0 0 32px rgba(16, 185, 129, 0.32);
  --shadow-glow-blue: 0 0 32px rgba(0, 128, 255, 0.35);
  /* Water Drop Glass Tokens - Dark Sapphire & Emerald Crystalline Caustics */
  --water-drop-surface: rgba(14, 25, 50, 0.72);
  --water-drop-surface-hover: rgba(20, 35, 70, 0.88);
  --water-drop-border: rgba(56, 189, 248, 0.32);
  --water-drop-border-caustic: rgba(0, 208, 132, 0.45);
  --water-drop-glare: rgba(255, 255, 255, 0.70);
  --water-drop-shadow: 0 24px 60px -15px rgba(0, 0, 0, 0.80), 0 10px 24px -8px rgba(0, 128, 255, 0.25);
  --water-drop-inset: 
    inset 1px 2px 3px 0 rgba(255, 255, 255, 0.45),
    inset -1px -2px 6px 0 rgba(0, 0, 0, 0.65),
    inset 0 25px 40px -15px rgba(56, 189, 248, 0.16);
  --water-drop-caustic: 0 0 40px rgba(0, 128, 255, 0.32);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:90px;font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:clip}
body{font-family:var(--font-sans);background:var(--bg-page);color:var(--text-primary);line-height:1.65;overflow-x:clip;transition:background-color var(--t-smooth),color var(--t-smooth)}
h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);font-weight:700;line-height:1.22;color:var(--text-primary);letter-spacing:-0.02em}
p{color:var(--text-secondary)} a{color:inherit;text-decoration:none;transition:color var(--t-fast)}
img{max-width:100%;height:auto;display:block} ul{list-style:none}
button{cursor:pointer;font-family:inherit;border:none;background:none}
input,textarea,select{font-family:inherit}
::-webkit-scrollbar{width:8px} ::-webkit-scrollbar-track{background:var(--bg-page)}
::-webkit-scrollbar-thumb{background:var(--brand-green);border-radius:var(--radius-full)}
::-webkit-scrollbar-thumb:hover{background:var(--brand-green-dark)}
.container{max-width:1240px;margin:0 auto;padding:0 1.5rem}
.scroll-progress-container{position:fixed;top:0;left:0;width:100%;height:3px;z-index:9999}
.scroll-progress-bar{height:100%;width:0%;background:var(--grad-brand);border-radius:0 var(--radius-full) var(--radius-full) 0;transition:width 0.1s linear}
/* === Utility === */
.badge{display:inline-flex;align-items:center;gap:0.4rem;padding:0.35rem 1rem;background:linear-gradient(135deg,rgba(16,185,129,0.12),rgba(0,168,232,0.10));border:1px solid rgba(16,185,129,0.25);border-radius:var(--radius-full);font-size:0.78rem;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;color:var(--brand-green);margin-bottom:1.2rem}
.section-label{font-size:0.8rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--brand-green);margin-bottom:0.75rem}
.gradient-text{background:var(--grad-brand);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.reveal{opacity:1;transform:none;transition:opacity 0.6s cubic-bezier(0.22,1,0.36,1),transform 0.6s cubic-bezier(0.22,1,0.36,1);will-change:opacity,transform}
.reveal-left{opacity:1;transform:none;transition:opacity 0.6s cubic-bezier(0.22,1,0.36,1),transform 0.6s cubic-bezier(0.22,1,0.36,1);will-change:opacity,transform}
.reveal-right{opacity:1;transform:none;transition:opacity 0.6s cubic-bezier(0.22,1,0.36,1),transform 0.6s cubic-bezier(0.22,1,0.36,1);will-change:opacity,transform}
.reveal.revealed,.reveal.visible,.reveal-left.revealed,.reveal-left.visible,.reveal-right.revealed,.reveal-right.visible{opacity:1 !important;transform:none !important;visibility:visible !important}
@media (prefers-reduced-motion: reduce){.reveal,.reveal-left,.reveal-right{opacity:1 !important;transform:none !important;transition:none !important}}
@keyframes floating{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.floating{animation:floating 5s ease-in-out infinite}
@keyframes pulse-glow{0%,100%{box-shadow:0 0 20px rgba(16,185,129,0.2)}50%{box-shadow:0 0 40px rgba(16,185,129,0.5)}}
/* === Buttons (Water Drop Meniscus Styling) === */
.btn{display:inline-flex;align-items:center;gap:0.5rem;padding:0.8rem 1.75rem;border-radius:var(--radius-full);font-size:0.925rem;font-weight:600;letter-spacing:0.01em;transition:all var(--t-fast);position:relative;overflow:hidden;white-space:nowrap;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.btn-primary{background:var(--grad-brand);color:#fff;border:1px solid rgba(255,255,255,0.40);box-shadow:inset 0 2px 2px rgba(255,255,255,0.70),inset 0 -2px 4px rgba(0,0,0,0.18),0 8px 25px -4px rgba(16,185,129,0.45)}
.btn-primary::after{content:"";position:absolute;top:0;left:0;right:0;height:45%;background:linear-gradient(180deg,rgba(255,255,255,0.40) 0%,rgba(255,255,255,0.06) 100%);border-radius:inherit;pointer-events:none}
.btn-primary:hover{transform:translateY(-2px);box-shadow:inset 0 2px 3px rgba(255,255,255,0.90),0 14px 38px -4px rgba(16,185,129,0.60),var(--water-drop-caustic);color:#fff}
.btn-primary:active{transform:translateY(0);box-shadow:inset 0 1px 3px rgba(0,0,0,0.3),0 4px 12px rgba(16,185,129,0.3)}
.btn-secondary{background:var(--water-drop-surface);color:var(--text-primary);border:1.5px solid var(--water-drop-border);box-shadow:var(--water-drop-inset),0 4px 16px rgba(0,0,0,0.06)}
.btn-secondary:hover{border-color:var(--brand-green);color:var(--brand-green);background:var(--water-drop-surface-hover);transform:translateY(-2px);box-shadow:var(--water-drop-inset),var(--water-drop-caustic)}
.btn-outline-white{background:rgba(255,255,255,0.85);color:var(--text-primary);border:1.5px solid rgba(15,23,42,0.18);box-shadow:inset 0 1px 2px rgba(255,255,255,0.8),0 4px 14px rgba(0,0,0,0.06)}
.btn-outline-white:hover{background:#ffffff;color:var(--brand-green);border-color:var(--brand-green);transform:translateY(-2px);box-shadow:0 8px 24px rgba(16,185,129,0.20)}

[data-theme="dark"] .btn-outline-white{background:rgba(255,255,255,0.08);color:#fff;border:1.5px solid rgba(255,255,255,0.45);box-shadow:inset 1px 1px 2px rgba(255,255,255,0.6),0 4px 15px rgba(0,0,0,0.15)}
[data-theme="dark"] .btn-outline-white:hover{background:rgba(255,255,255,0.18);border-color:rgba(255,255,255,0.85);transform:translateY(-2px);box-shadow:inset 1px 1px 3px rgba(255,255,255,0.9),0 8px 25px rgba(255,255,255,0.25)}
.btn-sm{padding:0.55rem 1.2rem;font-size:0.85rem} .btn-lg{padding:1rem 2.25rem;font-size:1rem}

/* ========================================================
   === WATER DROP GLASS CARDS & SURFACE CAUSTICS ==========
   ======================================================== */
.water-drop-glass,
.glass-card,
.stat-card,
.service-card,
.testimonial-card,
.calc-inputs-card,
.calc-results-card,
.calc-card,
.slab-table-card,
.contact-method-card,
.contact-trust-panel,
.contact-form-panel,
.sidebar-widget,
.value-card,
.hero-float-badge {
  background: var(--water-drop-surface);
  backdrop-filter: blur(24px) saturate(200%) brightness(103%);
  -webkit-backdrop-filter: blur(24px) saturate(200%) brightness(103%);
  border: 1px solid var(--water-drop-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--water-drop-shadow), var(--water-drop-inset);
  transition: transform var(--t-smooth), box-shadow var(--t-smooth), border-color var(--t-smooth), background var(--t-smooth);
  position: relative;
  overflow: hidden;
}

/* Water Droplet Top-Arc Meniscus Glare */
.water-drop-glass::before,
.glass-card::before,
.calc-inputs-card::before,
.calc-results-card::before,
.contact-form-panel::before,
.contact-trust-panel::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 48%;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.22) 0%, rgba(255, 255, 255, 0.04) 45%, transparent 100%);
  border-radius: inherit;
  pointer-events: none;
  opacity: 0.85;
  transition: opacity var(--t-fast);
  z-index: 1;
}

/* Water Droplet Hover Squeeze & Caustic Prism */
.water-drop-glass:hover,
.glass-card:hover,
.stat-card:hover,
.service-card:hover,
.testimonial-card:hover,
.calc-inputs-card:hover,
.calc-results-card:hover,
.contact-method-card:hover,
.sidebar-widget:hover,
.value-card:hover,
.hero-float-badge:hover {
  background: var(--water-drop-surface-hover);
  border-color: var(--water-drop-border-caustic);
  box-shadow: 
    0 26px 65px -12px rgba(0, 0, 0, 0.20),
    var(--water-drop-caustic),
    var(--water-drop-inset),
    inset 0 0 18px rgba(16, 185, 129, 0.16);
  transform: translateY(-5px);
}

/* Specular Light Highlight Following Mouse Movement */
.sheen-overlay {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: radial-gradient(
    380px circle at var(--mouse-x, -500px) var(--mouse-y, -500px),
    rgba(255, 255, 255, 0.35) 0%,
    rgba(52, 211, 153, 0.16) 28%,
    rgba(0, 168, 232, 0.08) 52%,
    transparent 75%
  );
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 2;
}
*:hover > .sheen-overlay {
  opacity: 1;
}

/* Water Impact Expanding Ripple Effect */
.water-ripple {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  width: 50px;
  height: 50px;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.90) 0%, rgba(16, 185, 129, 0.40) 45%, rgba(0, 168, 232, 0.18) 70%, transparent 100%);
  animation: waterRippleAnim 0.75s cubic-bezier(0.1, 0.8, 0.3, 1) forwards;
  z-index: 4;
}
@keyframes waterRippleAnim {
  0% {
    transform: translate(-50%, -50%) scale(0);
    opacity: 0.95;
  }
  100% {
    transform: translate(-50%, -50%) scale(5.5);
    opacity: 0;
  }
}

/* Organic Morphing Water Droplets */
.water-droplet {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 48% 52% 63% 37% / 41% 44% 56% 59%;
  background: var(--water-drop-surface);
  backdrop-filter: blur(20px) saturate(220%);
  -webkit-backdrop-filter: blur(20px) saturate(220%);
  border: 1px solid var(--water-drop-border);
  box-shadow: 
    inset 2px 3px 4px 0 rgba(255, 255, 255, 0.95),
    inset -2px -2px 6px 0 rgba(16, 185, 129, 0.20),
    0 15px 35px -8px rgba(0, 0, 0, 0.18),
    var(--water-drop-caustic);
  transition: all var(--t-smooth);
  animation: waterMorph 8s ease-in-out infinite alternate;
}
@keyframes waterMorph {
  0% { border-radius: 48% 52% 63% 37% / 41% 44% 56% 59%; }
  33% { border-radius: 58% 42% 47% 53% / 54% 39% 61% 46%; }
  66% { border-radius: 42% 58% 55% 45% / 37% 58% 42% 63%; }
  100% { border-radius: 52% 48% 39% 61% / 49% 47% 53% 51%; }
}

/* ========================================================
   === WATER DROP ICON BADGES (HIGH-CONTRAST & CRISP) ===
   ======================================================== */

/* 1. Value Card Icon (About Page) & Why Feature Icon (Home Page) - Vibrant Brand Liquid Beads for White SVGs */
.value-icon,
.why-feature-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--grad-brand) !important;
  border-radius: 46% 54% 50% 50% / 50% 48% 52% 50% !important;
  border: 1.5px solid rgba(255, 255, 255, 0.50) !important;
  box-shadow: 
    inset 1.5px 2px 3px 0 rgba(255, 255, 255, 0.85),
    inset -1.5px -1.5px 4px 0 rgba(0, 0, 0, 0.15),
    0 10px 24px -4px rgba(16, 185, 129, 0.45) !important;
  color: #ffffff !important;
  flex-shrink: 0 !important;
  transition: transform var(--t-fast), box-shadow var(--t-fast) !important;
}
.value-icon {
  width: 62px !important;
  height: 62px !important;
  margin: 0 auto 1.5rem !important;
}
.value-icon svg {
  width: 28px !important;
  height: 28px !important;
  stroke: #ffffff !important;
  display: block !important;
}
.why-feature-icon {
  width: 50px !important;
  height: 50px !important;
}
.why-feature-icon svg {
  width: 22px !important;
  height: 22px !important;
  stroke: #ffffff !important;
  display: block !important;
}
.value-card:hover .value-icon,
.why-feature:hover .why-feature-icon {
  transform: translateY(-3px) scale(1.10) rotate(4deg) !important;
  box-shadow: 
    inset 1.5px 2px 3px 0 rgba(255, 255, 255, 0.95),
    0 14px 30px -4px rgba(16, 185, 129, 0.60) !important;
}

/* 2. Stat Card Icon & Service Card Icon - Crystalline Water-Drop Meniscus with Deep Emerald Contrast */
.stat-card-icon,
.service-card-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 46% 54% 50% 50% / 50% 48% 52% 50% !important;
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.14) 0%, rgba(0, 168, 232, 0.08) 100%) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1.5px solid rgba(16, 185, 129, 0.32) !important;
  color: #047857 !important;
  box-shadow: 
    inset 1.5px 2px 3px 0 rgba(255, 255, 255, 0.95),
    inset -1px -1px 3px 0 rgba(16, 185, 129, 0.20),
    0 8px 20px -4px rgba(16, 185, 129, 0.22) !important;
  transition: all var(--t-fast) !important;
}
[data-theme="dark"] .stat-card-icon,
[data-theme="dark"] .service-card-icon {
  background: linear-gradient(135deg, rgba(0, 128, 255, 0.25) 0%, rgba(16, 185, 129, 0.20) 100%) !important;
  border-color: rgba(56, 189, 248, 0.45) !important;
  color: #38BDF8 !important;
  box-shadow: 
    inset 1.5px 2px 3px 0 rgba(255, 255, 255, 0.45),
    inset -1px -1px 3px 0 rgba(0, 0, 0, 0.50),
    0 8px 24px -4px rgba(0, 128, 255, 0.40) !important;
}
.stat-card-icon {
  width: 58px !important;
  height: 58px !important;
  margin: 0 auto 1.25rem !important;
}
.stat-card-icon svg {
  width: 26px !important;
  height: 26px !important;
  stroke: currentColor !important;
  display: block !important;
}
.service-card-icon {
  width: 52px !important;
  height: 52px !important;
  margin-bottom: 1.25rem !important;
}
.service-card-icon svg {
  width: 24px !important;
  height: 24px !important;
  stroke: currentColor !important;
  display: block !important;
}
.stat-card:hover .stat-card-icon,
.service-card:hover .service-card-icon {
  transform: translateY(-3px) scale(1.10) rotate(3deg) !important;
  background: var(--grad-brand) !important;
  border-color: transparent !important;
  color: #ffffff !important;
  box-shadow: 
    0 12px 26px -3px rgba(16, 185, 129, 0.50),
    inset 0 1px 2px rgba(255, 255, 255, 0.70) !important;
}
.stat-card:hover .stat-card-icon svg,
.service-card:hover .service-card-icon svg {
  stroke: #ffffff !important;
}

/* 3. Auxiliary Water-Drop Icons (Contact & Megamenu) */
.contact-method-icon {
  width: 44px !important;
  height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  border-radius: 46% 54% 50% 50% / 50% 48% 52% 50% !important;
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.14) 0%, rgba(0, 168, 232, 0.08) 100%) !important;
  border: 1.5px solid rgba(16, 185, 129, 0.30) !important;
  color: #047857 !important;
  box-shadow: inset 1px 1.5px 2px rgba(255, 255, 255, 0.90), 0 4px 14px rgba(16, 185, 129, 0.20) !important;
}
[data-theme="dark"] .contact-method-icon {
  background: linear-gradient(135deg, rgba(0, 128, 255, 0.22) 0%, rgba(16, 185, 129, 0.16) 100%) !important;
  border-color: rgba(56, 189, 248, 0.40) !important;
  color: #38BDF8 !important;
}
.megamenu-item-icon {
  width: 36px !important;
  height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  border-radius: 46% 54% 50% 50% / 50% 48% 52% 50% !important;
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.12) 0%, rgba(0, 168, 232, 0.06) 100%) !important;
  border: 1px solid rgba(16, 185, 129, 0.25) !important;
  color: #047857 !important;
  box-shadow: inset 1px 1px 2px rgba(255, 255, 255, 0.85) !important;
  transition: transform var(--t-fast) !important;
}
[data-theme="dark"] .megamenu-item-icon {
  background: linear-gradient(135deg, rgba(0, 128, 255, 0.24) 0%, rgba(16, 185, 129, 0.16) 100%) !important;
  border-color: rgba(56, 189, 248, 0.35) !important;
  color: #38BDF8 !important;
}
.megamenu-item:hover .megamenu-item-icon {
  transform: scale(1.12) rotate(4deg) !important;
}

/* === Navigation with Water Drop Glass === */
.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;border-bottom:1px solid var(--water-drop-border);box-shadow:0 4px 20px -5px rgba(0,0,0,0.08),inset 0 -1px 2px rgba(255,255,255,0.4);transition:box-shadow var(--t-smooth),border-color var(--t-smooth)}
.navbar::before{content:"";position:absolute;inset:0;background:var(--nav-bg);backdrop-filter:blur(24px) saturate(200%);-webkit-backdrop-filter:blur(24px) saturate(200%);pointer-events:none;z-index:-1}
.navbar.scrolled{box-shadow:0 6px 28px rgba(0,0,0,0.15),var(--water-drop-caustic);border-color:var(--water-drop-border-caustic)}
.nav-container{display:flex;align-items:center;justify-content:space-between;height:68px;gap:2rem}
.brand-logo{display:flex;align-items:center;gap:0.6rem;font-size:1.1rem;font-weight:700;color:var(--text-primary);flex-shrink:0;transition:opacity var(--t-fast)}
.brand-logo img{width:40px;height:40px;object-fit:contain;background:transparent !important;box-shadow:none !important;border:none !important;border-radius:0 !important}
.brand-logo span{background:var(--grad-brand);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:800;letter-spacing:-0.02em}
.brand-logo:hover{opacity:0.85}
.nav-links{display:flex;align-items:center;gap:0.25rem;flex:1;justify-content:center;position:relative;margin:0 1.5rem}
.nav-links > li{position:relative;z-index:1}
.nav-link{display:inline-flex;align-items:center;gap:0.3rem;padding:0.45rem 0.85rem;border-radius:var(--radius-sm);font-size:0.875rem;font-weight:500;color:var(--text-secondary);transition:color var(--t-fast),background var(--t-fast);white-space:nowrap}
.nav-link:hover,.nav-link.active{color:var(--brand-green)}

/* Sliding Liquid Glass Capsule Behind Nav Hover */
.nav-hover-pill{position:absolute;top:0;left:0;height:38px;background:var(--water-drop-surface);backdrop-filter:blur(20px) saturate(200%);-webkit-backdrop-filter:blur(20px) saturate(200%);border:1px solid var(--water-drop-border);border-radius:var(--radius-full);box-shadow:inset 1px 1.5px 2px rgba(255,255,255,0.92),inset -1px -1px 3px rgba(0,0,0,0.05),0 4px 18px rgba(16,185,129,0.22);pointer-events:none;z-index:0;transition:all 0.28s cubic-bezier(0.22,1,0.36,1);overflow:hidden}
.nav-hover-pill::before{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(180deg,rgba(255,255,255,0.35) 0%,transparent 100%);border-radius:inherit}

.chevron-icon{transition:transform var(--t-fast);flex-shrink:0}
.nav-item-dropdown:hover .chevron-icon{transform:rotate(180deg)}
.nav-item-dropdown{position:relative}
.megamenu-panel{
  position:absolute;
  top:calc(100% + 8px);
  left:50%;
  transform:translateX(-50%) translateY(8px);
  min-width:580px;
  background:rgba(255, 255, 255, 0.94) !important;
  backdrop-filter:blur(40px) saturate(200%) brightness(1.02) !important;
  -webkit-backdrop-filter:blur(40px) saturate(200%) brightness(1.02) !important;
  border:1.5px solid rgba(255, 255, 255, 0.90) !important;
  border-radius:var(--radius-lg);
  box-shadow:0 24px 60px -12px rgba(10, 45, 30, 0.18), 0 8px 24px -4px rgba(0, 0, 0, 0.08), var(--water-drop-inset), var(--water-drop-caustic) !important;
  padding:1.5rem;
  opacity:0;
  pointer-events:none;
  visibility:hidden;
  transition:opacity var(--t-fast),transform var(--t-fast),visibility var(--t-fast);
  z-index:1000;
}
[data-theme="dark"] .megamenu-panel{
  background:rgba(9, 15, 30, 0.94) !important;
  backdrop-filter:blur(40px) saturate(200%) brightness(1.05) !important;
  -webkit-backdrop-filter:blur(40px) saturate(200%) brightness(1.05) !important;
  border-color:rgba(56, 189, 248, 0.30) !important;
  box-shadow:0 26px 70px -12px rgba(0, 0, 0, 0.85), 0 10px 28px -6px rgba(0, 128, 255, 0.25), var(--water-drop-inset), var(--water-drop-caustic) !important;
}
.megamenu-panel::before{content:"";position:absolute;top:-12px;left:0;right:0;height:12px}
.nav-item-dropdown:hover .megamenu-panel,.nav-item-dropdown.open-dropdown .megamenu-panel{opacity:1;pointer-events:auto;visibility:visible;transform:translateX(-50%) translateY(0)}
.megamenu-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.megamenu-header{display:block;font-size:0.72rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--brand-green);margin-bottom:0.75rem}
.megamenu-item{display:flex;align-items:flex-start;gap:0.75rem;padding:0.6rem 0.75rem;border-radius:var(--radius-sm);transition:background var(--t-fast);margin-bottom:0.2rem}
.megamenu-item:hover{background:rgba(16,185,129,0.08)}
.megamenu-item-title{display:block;font-size:0.875rem;font-weight:600;color:var(--text-primary);margin-bottom:0.15rem}
.megamenu-item-desc{display:block;font-size:0.78rem;color:var(--text-muted);line-height:1.4}
.megamenu-link{display:block;padding:0.35rem 0.75rem;border-radius:var(--radius-xs);font-size:0.85rem;color:var(--text-secondary);transition:color var(--t-fast),background var(--t-fast)}
.megamenu-link:hover{color:var(--brand-green);background:rgba(16,185,129,0.06)}
.megamenu-divider{height:1px;background:var(--border);margin:0.75rem 0}
.nav-auth-group{display:flex;align-items:center;gap:0.85rem;flex-shrink:0}
.nav-btn-cta{padding:0.5rem 1.25rem;border-radius:var(--radius-full);font-size:0.875rem;font-weight:600;background:var(--grad-brand);color:#fff;border:1px solid rgba(255,255,255,0.4);box-shadow:inset 0 1px 2px rgba(255,255,255,0.6),0 4px 16px rgba(16,185,129,0.35);transition:transform var(--t-fast),box-shadow var(--t-fast)}
.nav-btn-cta:hover{transform:translateY(-1px);box-shadow:inset 0 1px 2px rgba(255,255,255,0.9),0 8px 26px rgba(16,185,129,0.50);color:#fff}
.theme-switcher{display:flex;align-items:center;gap:2px;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius-full);padding:2px;position:relative;box-shadow:inset 1px 1px 3px rgba(0,0,0,0.08),inset -1px -1px 2px rgba(255,255,255,0.6)}
.theme-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-full);color:var(--text-muted);transition:color var(--t-fast);position:relative;z-index:1}
.theme-active-indicator{position:absolute;top:2px;width:30px;height:30px;border-radius:var(--radius-full);background:var(--grad-brand);border:1px solid rgba(255,255,255,0.5);box-shadow:inset 1px 1px 2px rgba(255,255,255,0.85),0 2px 10px rgba(16,185,129,0.40);transition:left 0.28s cubic-bezier(0.22,1,0.36,1);pointer-events:none;z-index:0}
.theme-btn:hover,.theme-btn.active{color:#fff}
.hamburger-btn{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:0.5rem;border:none;background:transparent;cursor:pointer;border-radius:var(--radius-sm);transition:background var(--t-fast);flex-shrink:0}
.hamburger-btn:hover{background:rgba(16,185,129,0.08)}
.hamburger-btn span{display:block;width:22px;height:2px;background:var(--text-primary);border-radius:var(--radius-full);transition:transform var(--t-fast),opacity var(--t-fast),width var(--t-fast)}
.hamburger-btn.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.hamburger-btn.open span:nth-child(2){opacity:0;width:0}
.hamburger-btn.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
/* === HERO === */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;background:var(--grad-hero);padding:120px 0 80px}
[data-theme="light"] .hero{background:linear-gradient(135deg,#EBF5F0 0%,#E0F2FE 50%,#EBF5F0 100%)}
.hero-bg-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(16,185,129,0.06) 1px,transparent 1px),linear-gradient(90deg,rgba(16,185,129,0.06) 1px,transparent 1px);background-size:40px 40px;mask-image:radial-gradient(ellipse at center,black 30%,transparent 75%);pointer-events:none}
.hero-orb{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none}
.hero-orb-1{width:500px;height:500px;background:radial-gradient(circle,rgba(16,185,129,0.22) 0%,transparent 70%);top:-100px;right:-100px}
.hero-orb-2{width:400px;height:400px;background:radial-gradient(circle,rgba(0,168,232,0.18) 0%,transparent 70%);bottom:-80px;left:-80px}
.hero-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;z-index:1}
.hero-eyebrow{display:inline-flex;align-items:center;gap:0.5rem;padding:0.4rem 1.1rem;background:linear-gradient(135deg,rgba(16,185,129,0.14),rgba(0,168,232,0.10));border:1px solid rgba(16,185,129,0.30);border-radius:var(--radius-full);font-size:0.78rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--brand-green);margin-bottom:1.5rem}
.hero-headline{font-size:clamp(2rem,4.5vw,3.5rem);font-weight:800;line-height:1.12;letter-spacing:-0.03em;margin-bottom:1.25rem}
[data-theme="dark"] .hero-headline{color:#F8FAFC} [data-theme="light"] .hero-headline{color:#0B1F14}
.hero-desc{font-size:1.075rem;line-height:1.75;max-width:520px;margin-bottom:2rem}
[data-theme="dark"] .hero-desc{color:#CBD5E1}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:2.5rem}
.hero-trust{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem}
.trust-item{display:flex;align-items:center;gap:0.5rem;font-size:0.84rem;font-weight:500}
[data-theme="dark"] .trust-item{color:#94A3B8} [data-theme="light"] .trust-item{color:#3D5A4E}
.trust-item svg{color:var(--brand-green)} .trust-sep{width:1px;height:20px;background:var(--border)}
.hero-visual{position:relative;display:flex;justify-content:center;align-items:center}
.hero-image-frame{position:relative;border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 32px 80px rgba(0,0,0,0.40),0 0 0 1px rgba(16,185,129,0.15)}
.hero-image-frame img{width:100%;height:420px;object-fit:cover;border-radius:var(--radius-xl)}
.hero-float-badge{position:absolute;padding:0.75rem 1.25rem;background:var(--bg-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:0.75rem}
.hero-float-badge.badge-tl{top:-18px;left:-18px} .hero-float-badge.badge-br{bottom:-18px;right:-18px}
.float-badge-icon{width:40px;height:40px;background:var(--grad-brand);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}
.float-badge-num{font-size:1.3rem;font-weight:800;background:var(--grad-brand);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}
.float-badge-label{font-size:0.75rem;color:var(--text-muted);margin-top:2px}
/* === Stats === */
.stats-section{padding:4.5rem 0;background:var(--bg-section);border-top:1px solid var(--border);border-bottom:1px solid var(--border);position:relative}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.stat-card{padding:2.25rem 1.5rem;text-align:center;display:flex;flex-direction:column;align-items:center}
.stat-num{font-size:2.6rem;font-weight:900;letter-spacing:-0.03em;background:var(--grad-brand);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1;margin-bottom:0.4rem;display:block}
.stat-label{font-size:1rem;color:var(--text-primary);font-weight:700;margin-bottom:0.6rem}
.stat-pill{display:inline-block;padding:0.25rem 0.75rem;background:rgba(16,185,129,0.08);border:1px solid rgba(16,185,129,0.2);border-radius:var(--radius-full);font-size:0.75rem;font-weight:600;color:var(--brand-green)}
/* === Services Overview === */
.services-section{padding:6rem 0;background:var(--bg-page)}
.section-header{text-align:center;max-width:640px;margin:0 auto 3.5rem}
.section-title{font-size:clamp(1.7rem,3vw,2.5rem);margin-bottom:1rem}
.section-desc{font-size:1.05rem;line-height:1.7}
.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}
.service-card{padding:1.75rem;text-decoration:none;display:block}
.service-card-title{font-size:1.05rem;font-weight:700;margin-bottom:0.6rem;color:var(--text-primary)}
.service-card-desc{font-size:0.875rem;line-height:1.65;color:var(--text-muted);margin-bottom:1.25rem}
.service-card-link{display:inline-flex;align-items:center;gap:0.35rem;font-size:0.85rem;font-weight:600;color:var(--brand-green);transition:gap var(--t-fast)}
.service-card:hover .service-card-link{gap:0.6rem}
/* === Why Us === */
.why-us-section{padding:6rem 0;background:var(--bg-section)}
.why-us-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.why-us-features{display:flex;flex-direction:column;gap:1.5rem}
.why-feature{display:flex;gap:1.25rem;padding:1.25rem;border-radius:var(--radius-md);border:1px solid transparent;transition:border-color var(--t-fast),background var(--t-fast),transform var(--t-fast)}
.why-feature:hover{border-color:var(--border);background:var(--bg-glass);transform:translateX(6px)}
.why-feature-icon{width:48px;height:48px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--grad-brand);border-radius:var(--radius-md);color:#fff}
.why-feature-title{font-size:1rem;font-weight:700;margin-bottom:0.3rem}
.why-feature-desc{font-size:0.875rem;line-height:1.6;color:var(--text-muted)}
.why-us-visual img{width:100%;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl)}
/* === Process === */
.process-section{padding:6rem 0;background:var(--bg-page)}
.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;position:relative}
.process-steps::before{content:"";position:absolute;top:2.2rem;left:10%;right:10%;height:2px;background:var(--grad-brand);opacity:0.3;z-index:0}
.process-step{position:relative;text-align:center;z-index:1}
.process-step-num{width:52px;height:52px;background:var(--bg-section);border:2px solid var(--brand-green);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:800;color:var(--brand-green);margin:0 auto 1.25rem;position:relative;z-index:1;transition:background var(--t-fast),color var(--t-fast)}
.process-step:hover .process-step-num{background:var(--grad-brand);color:#fff;border-color:transparent}
.process-step-title{font-size:1rem;font-weight:700;margin-bottom:0.5rem}
.process-step-desc{font-size:0.845rem;color:var(--text-muted);line-height:1.6}
/* === Testimonials === */
.testimonials-section{padding:6rem 0;background:var(--bg-section)}
.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.testimonial-card{padding:2rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);transition:transform var(--t-fast),box-shadow var(--t-fast)}
.testimonial-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.testimonial-stars{display:flex;gap:2px;margin-bottom:1rem;color:#F59E0B}
.testimonial-quote{font-size:0.925rem;line-height:1.75;color:var(--text-secondary);margin-bottom:1.5rem;font-style:italic}
.testimonial-author{display:flex;align-items:center;gap:0.75rem}
.author-avatar{width:44px;height:44px;border-radius:50%;background:var(--grad-brand);display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;color:#fff;flex-shrink:0}
.author-name{font-size:0.9rem;font-weight:700;color:var(--text-primary)}
.author-role{font-size:0.78rem;color:var(--text-muted)}
/* === Tools CTA === */
.tools-cta-section{padding:5rem 0;background:linear-gradient(135deg,#071226 0%,#061F1A 100%);position:relative;overflow:hidden}
[data-theme="light"] .tools-cta-section{background:linear-gradient(135deg,#E8FFF5 0%,#E0F2FE 100%)}
.tools-cta-section::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(16,185,129,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(16,185,129,0.05) 1px,transparent 1px);background-size:30px 30px}
.tools-cta-inner{position:relative;display:grid;grid-template-columns:1fr auto;gap:3rem;align-items:center;z-index:1}
.tools-cta-title{font-size:clamp(1.5rem,2.5vw,2.25rem);font-weight:800}
[data-theme="dark"] .tools-cta-title{color:#F8FAFC}
.tools-cta-desc{margin-top:0.75rem;font-size:1.05rem;max-width:560px}
.tools-cta-buttons{display:flex;flex-direction:column;gap:0.75rem;flex-shrink:0}
[data-theme="light"] .tools-cta-buttons .btn-outline-white,
:root:not([data-theme="dark"]) .tools-cta-buttons .btn-outline-white,
[data-theme="light"] #taxCalcContact,
:root:not([data-theme="dark"]) #taxCalcContact {
  background: rgba(255, 255, 255, 0.92) !important;
  color: #0F172A !important;
  border: 1.5px solid rgba(16, 185, 129, 0.35) !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08), inset 0 1px 2px #ffffff !important;
  font-weight: 700 !important;
}

[data-theme="light"] .tools-cta-buttons .btn-outline-white:hover,
:root:not([data-theme="dark"]) .tools-cta-buttons .btn-outline-white:hover,
[data-theme="light"] #taxCalcContact:hover,
:root:not([data-theme="dark"]) #taxCalcContact:hover {
  background: #ffffff !important;
  color: var(--brand-green) !important;
  border-color: var(--brand-green) !important;
  box-shadow: 0 8px 24px rgba(16, 185, 129, 0.25) !important;
}
/* === Blog Preview === */
.blog-preview-section{padding:6rem 0;background:var(--bg-page)}
.blog-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.blog-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:transform var(--t-fast),box-shadow var(--t-fast);display:flex;flex-direction:column;text-decoration:none}
.blog-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg),var(--shadow-glow-green);border-color:var(--border-strong)}
.blog-card-img{width:100%;height:200px;object-fit:cover}
.blog-card-body{padding:1.5rem;flex:1;display:flex;flex-direction:column}
.blog-card-tag{display:inline-block;padding:0.2rem 0.65rem;background:var(--tag-bg);color:var(--tag-color);font-size:0.72rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;border-radius:var(--radius-full);margin-bottom:0.75rem}
.blog-card-title{font-size:1rem;font-weight:700;margin-bottom:0.6rem;line-height:1.4;color:var(--text-primary)}
.blog-card:hover .blog-card-title{color:var(--brand-green)}
.blog-card-excerpt{font-size:0.84rem;color:var(--text-muted);line-height:1.6;flex:1;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.blog-card-meta{display:flex;align-items:center;gap:1rem;font-size:0.78rem;color:var(--text-muted);margin-top:auto;padding-top:1rem;border-top:1px solid var(--border)}
/* === Services Hub Page === */
.services-hub-page{padding-top:68px}
.services-hero-section{padding:4.5rem 0 3.5rem;text-align:center;background:var(--bg-section);border-bottom:1px solid var(--border)}
.services-hero-title{font-size:clamp(2rem,4vw,3rem);margin-bottom:1rem}
.services-hero-desc{font-size:1.1rem;max-width:640px;margin:0 auto 2rem}
/* ========================================================
   === SERVICES DETAIL SHOWCASE (PREMIUM WATER DROP GLASS) ==
   ======================================================== */
.service-detail-section{padding:5rem 0;border-bottom:1px solid var(--border);position:relative;overflow:hidden}
.service-detail-section.alt-bg{background:linear-gradient(180deg,var(--bg-alt) 0%,var(--bg-page) 100%)}
[data-theme="dark"] .service-detail-section.alt-bg{background:linear-gradient(180deg,rgba(14,23,45,0.50) 0%,var(--bg-page) 100%)}

.service-detail-grid{display:grid;grid-template-columns:1.18fr 1fr;gap:3.5rem;align-items:stretch}
.service-detail-grid.reversed{grid-template-columns:1fr 1.18fr;direction:rtl}
.service-detail-grid.reversed > *{direction:ltr}

/* The Left/Right Text Column: Crystalline Water-Drop Glass Card */
.service-detail-card{
  padding:2.5rem 2.25rem;
  border-radius:var(--radius-xl);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:1.5rem;
  position:relative;
  overflow:hidden;
}

/* Card Topbar */
.sdc-topbar{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;flex-wrap:wrap}
.sdc-badge-pill{
  display:inline-flex;
  align-items:center;
  gap:0.55rem;
  padding:0.4rem 1rem;
  border-radius:var(--radius-full);
  background:linear-gradient(135deg,rgba(16,185,129,0.15) 0%,rgba(0,168,232,0.10) 100%);
  border:1px solid rgba(16,185,129,0.35);
  box-shadow:inset 1px 1px 2px rgba(255,255,255,0.85),0 2px 10px rgba(16,185,129,0.18);
}
[data-theme="dark"] .sdc-badge-pill{
  background:linear-gradient(135deg,rgba(0,128,255,0.22) 0%,rgba(16,185,129,0.16) 100%);
  border-color:rgba(56,189,248,0.40);
  box-shadow:inset 1px 1px 2px rgba(255,255,255,0.30),0 2px 14px rgba(0,128,255,0.30);
}
.sdc-pulse-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--brand-green);
  box-shadow:0 0 0 0 rgba(16,185,129,0.7);
  animation:pulse-green 2s infinite;
}
.sdc-badge-text{font-size:0.76rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;color:var(--brand-green)}

.sdc-sla-pill{
  display:inline-flex;
  align-items:center;
  padding:0.35rem 0.85rem;
  border-radius:var(--radius-full);
  font-size:0.78rem;
  font-weight:700;
  color:var(--text-secondary);
  background:var(--bg-glass);
  border:1px solid var(--border);
  box-shadow:inset 1px 1px 2px rgba(255,255,255,0.6);
}

/* Title & Pitch */
.sdc-header-block{display:flex;flex-direction:column;gap:0.6rem}
.sdc-title{font-size:clamp(1.55rem,2.2vw,2.15rem);font-weight:800;line-height:1.24;letter-spacing:-0.025em;color:var(--text-primary);margin:0}
.sdc-pitch{font-size:0.975rem;line-height:1.68;color:var(--text-secondary);margin:0}

/* Deliverables Micro-List with Glowing Emerald Checkmarks */
.sdc-highlights-list{
  display:flex;
  flex-direction:column;
  gap:0.65rem;
  padding:1.1rem 1.25rem;
  border-radius:var(--radius-md);
  background:rgba(16,185,129,0.04);
  border:1px solid rgba(16,185,129,0.16);
  box-shadow:inset 1px 1px 2px rgba(255,255,255,0.6);
}
[data-theme="dark"] .sdc-highlights-list{
  background:rgba(14,23,45,0.65);
  border-color:rgba(56,189,248,0.20);
  box-shadow:inset 1px 1px 2px rgba(255,255,255,0.08);
}
.sdc-highlight-item{display:flex;align-items:flex-start;gap:0.75rem;font-size:0.875rem;font-weight:500;line-height:1.48;color:var(--text-primary)}
.sdc-check-icon{
  width:22px;
  height:22px;
  border-radius:50%;
  background:linear-gradient(135deg,rgba(16,185,129,0.22) 0%,rgba(0,168,232,0.16) 100%);
  border:1px solid var(--brand-green);
  color:var(--brand-green);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  margin-top:1px;
}
[data-theme="dark"] .sdc-check-icon{background:linear-gradient(135deg,rgba(0,128,255,0.30) 0%,rgba(16,185,129,0.25) 100%);border-color:#38BDF8;color:#38BDF8}

/* Scope & Tags Group */
.sdc-tags-group{display:flex;flex-direction:column;gap:0.5rem}
.sdc-tags-label{font-size:0.74rem;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--text-muted)}
.sdc-tags-list{display:flex;flex-wrap:wrap;gap:0.5rem}
.sdc-tech-tag{
  display:inline-flex;
  align-items:center;
  gap:0.4rem;
  padding:0.35rem 0.85rem;
  border-radius:var(--radius-full);
  font-size:0.78rem;
  font-weight:600;
  color:var(--text-primary);
  background:var(--bg-glass);
  backdrop-filter:blur(12px) saturate(180%);
  -webkit-backdrop-filter:blur(12px) saturate(180%);
  border:1px solid var(--border);
  box-shadow:inset 1px 1px 2px rgba(255,255,255,0.80),0 2px 6px rgba(0,0,0,0.03);
  transition:all var(--t-fast);
}
.sdc-tech-tag::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--brand-green);box-shadow:0 0 6px rgba(16,185,129,0.8)}
.sdc-tech-tag:hover{
  background:var(--water-drop-surface-hover);
  border-color:var(--brand-green);
  color:var(--brand-green);
  transform:translateY(-2px);
  box-shadow:inset 1px 1px 2px rgba(255,255,255,0.95),0 6px 16px rgba(16,185,129,0.25);
}
[data-theme="dark"] .sdc-tech-tag{
  background:rgba(14,23,45,0.80);
  border-color:rgba(56,189,248,0.24);
  color:#E2E8F0;
  box-shadow:inset 1px 1px 2px rgba(255,255,255,0.15),0 2px 8px rgba(0,0,0,0.35);
}
[data-theme="dark"] .sdc-tech-tag:hover{background:rgba(0,128,255,0.25);border-color:#38BDF8;color:#ffffff;box-shadow:0 6px 20px rgba(0,128,255,0.40)}

/* Actions Strip */
.sdc-actions-strip{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding-top:0.35rem}
.sdc-btn-primary{box-shadow:inset 0 2px 2px rgba(255,255,255,0.70),0 8px 24px -4px rgba(16,185,129,0.45)}
.sdc-btn-primary svg{transition:transform var(--t-fast)}
.sdc-btn-primary:hover svg{transform:translateX(4px)}
.sdc-btn-secondary{box-shadow:var(--water-drop-inset),0 4px 14px rgba(0,0,0,0.05)}
/* === About === */
.about-hero{padding:calc(68px + 4rem) 0 4rem;background:var(--bg-section)}
.about-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.about-hero-title{font-size:clamp(1.8rem,3.5vw,2.8rem);margin-bottom:1.2rem}
.about-hero-desc{font-size:1.05rem;line-height:1.75;margin-bottom:2rem}
.about-image img{width:100%;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl)}
.about-values-section{padding:6rem 0;background:var(--bg-page)}
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.75rem}
.value-card{padding:2.25rem 1.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;transition:transform var(--t-fast),border-color var(--t-fast),box-shadow var(--t-fast);box-shadow:var(--shadow-card);display:flex;flex-direction:column;align-items:center}
.value-card:hover{transform:translateY(-6px);border-color:var(--brand-green);box-shadow:0 16px 36px rgba(0,0,0,0.12),var(--shadow-glow-green)}
.value-icon{width:64px;height:64px;background:var(--grad-brand);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#ffffff;margin:0 auto 1.5rem;box-shadow:0 8px 24px rgba(16,185,129,0.35);transition:transform var(--t-fast);flex-shrink:0}
.value-icon svg{stroke:#ffffff !important;width:30px;height:30px;display:block}
.value-card:hover .value-icon{transform:scale(1.1) rotate(3deg)}
.value-card h3{font-size:1.15rem;font-weight:700;margin-bottom:0.75rem;color:var(--text-primary)}
.value-card p{font-size:0.875rem;line-height:1.65;color:var(--text-secondary)}
.value-title{font-size:1.1rem;font-weight:700;margin-bottom:0.6rem}
.value-desc{font-size:0.875rem;line-height:1.65;color:var(--text-muted)}
.team-section{padding:6rem 0;background:var(--bg-section)}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.team-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:transform var(--t-fast),box-shadow var(--t-fast);text-align:center}
.team-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.team-avatar{width:100%;height:200px;background:var(--grad-brand);display:flex;align-items:center;justify-content:center;font-size:3rem}
.team-info{padding:1.5rem}
.team-name{font-size:1.05rem;font-weight:700;margin-bottom:0.25rem}
.team-role{font-size:0.85rem;color:var(--brand-green);font-weight:600;margin-bottom:0.5rem}
.team-qual{font-size:0.78rem;color:var(--text-muted)}
.about-certifications{padding:4rem 0;background:var(--bg-page);border-top:1px solid var(--border)}
.cert-logos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:3rem;padding:2rem 0}
.cert-badge{display:flex;flex-direction:column;align-items:center;gap:0.5rem;font-size:0.82rem;font-weight:600;color:var(--text-muted);text-align:center}
.cert-badge span:first-child{font-size:2rem}
/* === Contact === */
.contact-page{padding-top:68px}
.contact-hero{padding:4rem 0;text-align:center;background:var(--bg-section);border-bottom:1px solid var(--border)}
.contact-hero-title{font-size:clamp(1.8rem,3.5vw,2.8rem);margin-bottom:1rem}
.contact-hero-desc{font-size:1.05rem;max-width:560px;margin:0 auto}
.contact-body{padding:5rem 0}
.contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;align-items:start}
.contact-info-card{padding:2.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl)}
.contact-info-title{font-size:1.4rem;font-weight:700;margin-bottom:0.75rem}
.contact-info-desc{font-size:0.925rem;color:var(--text-muted);margin-bottom:2rem;line-height:1.7}
.contact-method{display:flex;align-items:flex-start;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--border)}
.contact-method:last-of-type{border-bottom:none}
.contact-method-icon{width:42px;height:42px;background:linear-gradient(135deg,rgba(16,185,129,0.12),rgba(0,168,232,0.10));border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--brand-green);flex-shrink:0}
.contact-method-label{font-size:0.78rem;color:var(--text-muted);font-weight:600;letter-spacing:0.04em;text-transform:uppercase;margin-bottom:0.2rem}
.contact-method-value{font-size:0.925rem;font-weight:600;color:var(--text-primary)}
.contact-method-value a{transition:color var(--t-fast)} .contact-method-value a:hover{color:var(--brand-green)}
.contact-office-image{margin-top:1.5rem;border-radius:var(--radius-lg);overflow:hidden}
.contact-office-image img{width:100%;height:200px;object-fit:cover}
.contact-form-card{padding:2.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl)}
.contact-form-title{font-size:1.4rem;font-weight:700;margin-bottom:0.5rem}
.contact-form-desc{font-size:0.9rem;color:var(--text-muted);margin-bottom:2rem}
.form-group{margin-bottom:1.25rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
label{display:block;font-size:0.84rem;font-weight:600;color:var(--text-secondary);margin-bottom:0.45rem}
input[type="text"],input[type="email"],input[type="tel"],select,textarea{width:100%;padding:0.75rem 1rem;background:var(--bg-input);border:1.5px solid var(--border-input);border-radius:var(--radius-sm);font-size:0.925rem;color:var(--text-primary);transition:border-color var(--t-fast),box-shadow var(--t-fast);outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--brand-green);box-shadow:0 0 0 3px rgba(16,185,129,0.12)}
textarea{resize:vertical;min-height:120px} select option{background:var(--bg-card)}
.form-checkbox{display:flex;align-items:flex-start;gap:0.75rem;font-size:0.84rem;color:var(--text-muted);line-height:1.5}
.form-checkbox input[type="checkbox"]{width:18px;height:18px;flex-shrink:0;margin-top:2px;accent-color:var(--brand-green);cursor:pointer}
/* === Tax Calculator === */
.tax-calc-page{padding-top:68px}
.tax-calc-hero{padding:4rem 0;text-align:center;background:var(--bg-section);border-bottom:1px solid var(--border)}
.tax-calc-body{padding:5rem 0}
.tax-calc-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:start}
.calc-card{padding:2rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl)}
.calc-title{font-size:1.3rem;font-weight:700;margin-bottom:1.5rem}
.calc-regime-switch{display:flex;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius-full);padding:3px;margin-bottom:1.5rem}
.regime-btn{flex:1;padding:0.55rem 1rem;border-radius:var(--radius-full);font-size:0.875rem;font-weight:600;color:var(--text-muted);transition:all var(--t-fast);text-align:center;cursor:pointer}
.regime-btn.active{background:var(--grad-brand);color:#fff;box-shadow:0 4px 12px rgba(16,185,129,0.30)}
.calc-result-card{padding:2rem;background:linear-gradient(135deg,rgba(16,185,129,0.08),rgba(0,168,232,0.06));border:1px solid var(--border-strong);border-radius:var(--radius-xl);position:sticky;top:88px}
.calc-result-title{font-size:1.1rem;font-weight:700;margin-bottom:1.5rem}
.calc-result-row{display:flex;justify-content:space-between;align-items:center;padding:0.75rem 0;border-bottom:1px solid var(--border);font-size:0.9rem}
.calc-result-row:last-of-type{border-bottom:none}
.calc-result-label{color:var(--text-muted)} .calc-result-value{font-weight:700;color:var(--text-primary)}
.calc-result-tax{font-size:1.75rem;font-weight:800;background:var(--grad-brand);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.calc-disclaimer{font-size:0.75rem;color:var(--text-muted);line-height:1.6;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}
.calc-info-box{padding:1rem;background:rgba(0,168,232,0.06);border:1px solid rgba(0,168,232,0.20);border-radius:var(--radius-sm);font-size:0.84rem;color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem}
/* === Blog === */
.blog-page{padding-top:68px}
.blog-hero{padding:4rem 0;text-align:center;background:var(--bg-section);border-bottom:1px solid var(--border)}
.blog-grid-section{padding:5rem 0}
.blog-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem}
.blog-categories{display:flex;flex-wrap:wrap;gap:0.5rem;justify-content:center;margin-bottom:2.5rem}
.cat-pill{padding:0.4rem 1rem;border-radius:var(--radius-full);font-size:0.82rem;font-weight:600;border:1.5px solid var(--border);color:var(--text-muted);cursor:pointer;transition:all var(--t-fast)}
.cat-pill:hover,.cat-pill.active{background:var(--grad-brand);color:#fff;border-color:transparent}
.blog-article{padding:4rem 0 6rem}
.blog-article-title{font-size:clamp(1.75rem,3.5vw,2.8rem);margin-bottom:1rem}
.blog-article-meta{display:flex;flex-wrap:wrap;gap:1.5rem;font-size:0.875rem;color:var(--text-muted);margin-bottom:1.5rem}
.blog-article-img{width:100%;height:400px;object-fit:cover;border-radius:var(--radius-xl);margin-bottom:2.5rem}
.blog-article-content{max-width:740px}
.blog-article-content h2{font-size:1.5rem;margin:2rem 0 0.75rem}
.blog-article-content h3{font-size:1.2rem;margin:1.5rem 0 0.6rem}
.blog-article-content p{margin-bottom:1.25rem;line-height:1.8}
.blog-article-content ul,.blog-article-content ol{margin:1rem 0 1.25rem 1.5rem}
.blog-article-content li{margin-bottom:0.5rem;line-height:1.7}
.blog-article-content strong{color:var(--text-primary)}
.blog-article-content blockquote{border-left:3px solid var(--brand-green);padding:1rem 1.5rem;margin:1.5rem 0;background:rgba(16,185,129,0.06);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-style:italic}
/* === Legal === */
.legal-page{padding:0 0 5rem}
.legal-content{max-width:800px;margin:0 auto}
.legal-title{font-size:clamp(1.75rem,3vw,2.5rem);margin-bottom:0.5rem}
.legal-updated{font-size:0.84rem;color:var(--text-muted);margin-bottom:2.5rem}
.legal-content h2{font-size:1.3rem;margin:2.5rem 0 0.75rem;color:var(--brand-green)}
.legal-content h3{font-size:1.1rem;margin:1.75rem 0 0.5rem}
.legal-content p{margin-bottom:1rem;line-height:1.8}
.legal-content ul{margin:0.75rem 0 1rem 1.5rem}
.legal-content ul li{margin-bottom:0.4rem;list-style:disc}
.legal-content a{color:var(--brand-green);text-decoration:underline;text-underline-offset:3px}
/* === Footer === */
.site-footer,.footer{background:var(--footer-bg);padding:5rem 0 0;color:var(--footer-text);border-top:1px solid var(--border);content-visibility:auto;contain-intrinsic-size:0 450px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid var(--footer-border)}
.footer-logo{display:flex;align-items:center;gap:0.6rem;margin-bottom:1rem}
.footer-logo img{width:36px;height:36px;object-fit:contain;background:transparent !important;box-shadow:none !important;border:none !important;border-radius:0 !important}
.footer-logo-name{font-size:1.05rem;font-weight:700;background:var(--grad-brand);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.site-footer .footer-desc,.footer .footer-desc{font-size:0.875rem;line-height:1.7;margin-bottom:1.5rem;max-width:320px;color:#cbd5e1 !important}
.footer-socials{display:flex;gap:0.75rem}
.social-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,0.12);border-radius:var(--radius-sm);color:#94a3b8;transition:border-color var(--t-fast),color var(--t-fast),background var(--t-fast)}
.social-icon:hover{border-color:var(--brand-green);color:var(--brand-green);background:rgba(16,185,129,0.08)}
.site-footer h4,.footer-col h4,.footer-col-title,.footer-grid h4{font-size:0.925rem !important;font-weight:700 !important;letter-spacing:0.06em !important;text-transform:uppercase !important;color:#ffffff !important;margin-bottom:1.25rem !important;opacity:0.95}
.footer-links{display:flex;flex-direction:column;gap:0.6rem}
.site-footer .footer-link,.footer .footer-link{font-size:0.875rem;color:#94a3b8 !important;transition:color var(--t-fast),transform var(--t-fast);display:inline-flex;align-items:center;gap:0.3rem}
.site-footer .footer-link:hover,.footer .footer-link:hover{color:var(--brand-green) !important;transform:translateX(4px)}
.site-footer .footer-contact-item,.footer .footer-contact-item{display:flex;align-items:flex-start;gap:0.6rem;margin-bottom:0.75rem;font-size:0.875rem;line-height:1.5;color:#cbd5e1 !important}
.footer-contact-item svg{color:var(--brand-green);flex-shrink:0;margin-top:2px}
.site-footer .footer-contact-item a,.footer .footer-contact-item a{color:#f1f5f9 !important;transition:color var(--t-fast)}
.site-footer .footer-contact-item a:hover,.footer .footer-contact-item a:hover{color:var(--brand-green) !important}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 0;gap:1rem;flex-wrap:wrap}
.copyright{font-size:0.84rem;color:#94a3b8} .footer-legal{display:flex;gap:1.5rem;flex-wrap:wrap}
.legal-link{font-size:0.84rem;color:#94a3b8;transition:color var(--t-fast)}
.legal-link:hover{color:var(--brand-green)}
/* === Cookie Consent === */
.cookie-consent-bar{position:fixed;bottom:0;left:0;right:0;z-index:9998;background:var(--bg-glass-dark);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border-top:1px solid var(--border-strong);padding:1.25rem 0;transform:translateY(100%);transition:transform 0.5s cubic-bezier(0.22,1,0.36,1);box-shadow:0 -8px 32px rgba(0,0,0,0.20)}
.cookie-consent-bar.visible{transform:translateY(0)}
.cookie-consent-inner{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}
.cookie-icon{font-size:2rem;flex-shrink:0}
.cookie-text-block{flex:1;min-width:240px}
.cookie-title{font-size:0.95rem;font-weight:700;margin-bottom:0.3rem}
.cookie-desc{font-size:0.82rem;color:var(--text-muted);line-height:1.55}
.cookie-desc a{color:var(--brand-green);text-decoration:underline;text-underline-offset:2px}
.cookie-actions{display:flex;gap:0.75rem;flex-shrink:0;flex-wrap:wrap}
/* === Toast === */
.toast{position:fixed;bottom:2rem;right:2rem;z-index:10000;display:flex;align-items:center;gap:0.75rem;padding:0.9rem 1.5rem;background:var(--bg-glass);backdrop-filter:blur(20px);border:1px solid var(--brand-green);border-radius:var(--radius-md);box-shadow:var(--shadow-lg),var(--shadow-glow-green);font-size:0.9rem;font-weight:600;color:var(--text-primary);transform:translateX(calc(100% + 2rem));transition:transform var(--t-smooth)}
.toast.show{transform:translateX(0)} .toast-icon{color:var(--brand-green)}
/* === Back to Top === */
.back-to-top{position:fixed;bottom:5.8rem;right:1.8rem;z-index:500;width:44px;height:44px;border-radius:var(--radius-full);background:var(--grad-brand);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(16,185,129,0.35);opacity:0;transform:translateY(12px);transition:opacity var(--t-fast),transform var(--t-fast);pointer-events:none}
.back-to-top.visible{opacity:1;transform:translateY(0);pointer-events:auto}
.back-to-top:hover{transform:translateY(-3px);box-shadow:0 8px 28px rgba(16,185,129,0.45)}
/* === Error/404 === */
.error-page{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:2rem;background:var(--bg-page)}
.error-code{font-size:8rem;font-weight:900;background:var(--grad-brand);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:1rem}
.error-title{font-size:2rem;font-weight:700;margin-bottom:1rem}
.error-desc{font-size:1.05rem;color:var(--text-muted);max-width:480px;margin:0 auto 2rem}

/* ========================================================
   === TAX CALCULATOR PAGE STYLES (2026 Crystalline UI) ===
   ======================================================== */
.tax-calc-page{padding-bottom:5rem}
.tax-hero-section{padding:5rem 0 3rem;background:radial-gradient(ellipse at 50% 0%,rgba(16,185,129,0.12) 0%,transparent 70%);border-bottom:1px solid var(--border)}
.page-title{font-size:clamp(1.85rem,4.5vw,2.85rem);font-weight:800;line-height:1.22;margin-bottom:1rem;color:var(--text-primary)}
.page-subtitle{font-size:clamp(0.95rem,2vw,1.1rem);line-height:1.7;color:var(--text-secondary)}
.tax-regime-tags{display:flex;justify-content:center;gap:0.75rem;flex-wrap:wrap;margin-top:1.25rem}
.tag-pill{display:inline-flex;align-items:center;padding:0.4rem 1rem;font-size:0.825rem;font-weight:600;border-radius:var(--radius-full);background:var(--bg-glass);backdrop-filter:blur(10px);border:1px solid var(--border);color:var(--text-primary)}
.calculator-container-section{padding:3.5rem 0}
.calc-layout-grid{display:grid;grid-template-columns:1.15fr 1.25fr;gap:2.5rem;align-items:start}
.calc-inputs-card,.calc-results-card{background:var(--bg-glass);backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-card)}
.calc-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.75rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}
.calc-card-header h2{font-size:1.35rem;font-weight:700}
.calc-reset-btn{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.825rem;font-weight:600;color:var(--text-muted);padding:0.35rem 0.75rem;border-radius:var(--radius-sm);border:1px solid var(--border);transition:all var(--t-fast)}
.calc-reset-btn:hover{color:var(--brand-green);border-color:var(--brand-green);background:rgba(16,185,129,0.08)}
.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.calc-input-section{margin-top:1.75rem;padding-top:1.5rem;border-top:1px dashed var(--border)}
.calc-section-subtitle{display:flex;align-items:center;gap:0.5rem;font-size:1.05rem;font-weight:700;margin-bottom:1.25rem;color:var(--text-primary)}
.label-with-hint{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.4rem}
.input-hint{font-size:0.75rem;color:var(--text-muted);font-weight:500}
.input-with-symbol{position:relative;display:flex;align-items:center}
.currency-symbol{position:absolute;left:1rem;font-size:1.1rem;font-weight:600;color:var(--text-muted);pointer-events:none}
.input-with-symbol .form-input{padding-left:2.4rem;width:100%;font-size:1.05rem;font-weight:600;height:48px;border-radius:var(--radius-sm);border:1px solid var(--border-input);background:var(--bg-input);color:var(--text-primary);transition:border-color var(--t-fast),box-shadow var(--t-fast)}
.input-with-symbol .form-input:focus{outline:none;border-color:var(--brand-green);box-shadow:0 0 0 3px rgba(16,185,129,0.18)}

/* Verdict Recommendation Banner */
.verdict-banner-box{display:flex;align-items:center;gap:1.25rem;padding:1.25rem 1.5rem;border-radius:var(--radius-md);background:var(--grad-card);border:1px solid var(--brand-green);margin-bottom:2rem;box-shadow:var(--shadow-glow-green);transition:all var(--t-smooth)}
.verdict-icon{font-size:2.2rem;line-height:1}
.verdict-title{font-size:1.15rem;font-weight:800;color:var(--brand-green);margin-bottom:0.25rem}
.verdict-desc{font-size:0.875rem;color:var(--text-secondary);line-height:1.45}

/* Comparison Cards */
.comparison-cards-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.regime-stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.5rem;transition:all var(--t-smooth);position:relative;overflow:hidden}
.regime-stat-card.regime-highlight{border-color:var(--brand-green);box-shadow:0 0 24px rgba(16,185,129,0.22);transform:scale(1.02)}
.regime-card-top{display:flex;flex-direction:column;gap:0.4rem;margin-bottom:1rem}
.regime-badge{display:inline-block;padding:0.25rem 0.65rem;font-size:0.72rem;font-weight:700;border-radius:var(--radius-full);width:fit-content}
.badge-green{background:rgba(16,185,129,0.12);color:var(--brand-green)}
.badge-blue{background:rgba(0,168,232,0.12);color:var(--brand-blue)}
.tax-amount-callout{font-size:2rem;font-weight:900;line-height:1.1;letter-spacing:-0.03em;color:var(--text-primary);margin-top:0.25rem}
.tax-subtext{font-size:0.75rem;color:var(--text-muted);margin-bottom:1.25rem}
.regime-breakdown-list{display:flex;flex-direction:column;gap:0.65rem;border-top:1px solid var(--border);padding-top:1rem;font-size:0.825rem}
.breakdown-item{display:flex;justify-content:space-between;align-items:center}
.breakdown-item span{color:var(--text-muted)}
.breakdown-item strong{color:var(--text-primary)}
.text-green{color:var(--brand-green) !important}
.text-cyan{color:var(--brand-blue) !important}

/* CA Callout in Calculator */
.ca-callout-box{margin-top:2rem;padding:1.5rem;border-radius:var(--radius-md);background:var(--bg-card);border:1px solid var(--border);display:flex;flex-direction:column;gap:1.25rem}
.ca-callout-header{display:flex;gap:1rem;align-items:flex-start}
.ca-callout-avatar{width:44px;height:44px;border-radius:var(--radius-full);background:var(--grad-brand);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ca-callout-header h4{font-size:1.05rem;font-weight:700;margin-bottom:0.25rem}
.ca-callout-header p{font-size:0.825rem;color:var(--text-muted);line-height:1.4}
.ca-callout-actions{display:flex;gap:0.75rem;flex-wrap:wrap}

/* Tax Slab Tables */
.tax-slabs-info-section{padding:4.5rem 0;background:var(--bg-section);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.slabs-tables-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2.5rem}
.slab-table-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.75rem;box-shadow:var(--shadow-card)}
.slab-table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;flex-wrap:wrap;gap:0.5rem}
.slab-table-header h3{font-size:1.15rem;font-weight:700}
.tax-table{width:100%;border-collapse:collapse;font-size:0.875rem}
.tax-table th{background:rgba(16,185,129,0.06);padding:0.75rem 1rem;text-align:left;font-weight:700;color:var(--text-primary);border-bottom:2px solid var(--border)}
.tax-table td{padding:0.75rem 1rem;border-bottom:1px solid var(--border);color:var(--text-secondary)}
.tax-table tr:last-child td{border-bottom:none}
.table-footnote{font-size:0.78rem;color:var(--text-muted);margin-top:1rem;line-height:1.4}
.tax-calc-faq-section{padding:4.5rem 0;content-visibility:auto;contain-intrinsic-size:0 500px}

/* ========================================================
   === FINANCIAL CALCULATOR STYLES (SIP, PPF, LOAN) =======
   ======================================================== */
.calc-mode-switch{display:flex;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius-full);padding:4px;margin-bottom:1.5rem;gap:4px}
.calc-mode-btn{flex:1;padding:0.6rem 1rem;border-radius:var(--radius-full);font-size:0.85rem;font-weight:600;color:var(--text-muted);transition:all var(--t-fast);text-align:center;cursor:pointer;background:transparent;border:none}
.calc-mode-btn.active{background:var(--grad-brand);color:#fff;box-shadow:0 4px 14px rgba(16,185,129,0.35)}
.calc-slider-wrap{margin-top:0.65rem;margin-bottom:0.25rem}
.calc-range-slider{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:999px;background:var(--border-input);outline:none;cursor:pointer;transition:background var(--t-fast)}
.calc-range-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--brand-green);border:2.5px solid #ffffff;box-shadow:0 2px 8px rgba(16,185,129,0.4),0 0 12px rgba(16,185,129,0.25);cursor:pointer;transition:transform var(--t-fast),box-shadow var(--t-fast)}
.calc-range-slider::-webkit-slider-thumb:hover,.calc-range-slider::-webkit-slider-thumb:active{transform:scale(1.18);box-shadow:0 2px 14px rgba(16,185,129,0.6),0 0 20px rgba(16,185,129,0.4)}
.calc-range-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--brand-green);border:2.5px solid #ffffff;box-shadow:0 2px 8px rgba(16,185,129,0.4);cursor:pointer}
.quick-presets-row{display:flex;flex-wrap:wrap;gap:0.4rem;margin-top:0.5rem}
.preset-pill{padding:0.25rem 0.65rem;font-size:0.72rem;font-weight:600;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);cursor:pointer;transition:all var(--t-fast)}
.preset-pill:hover,.preset-pill.active{border-color:var(--brand-green);color:var(--brand-green);background:rgba(16,185,129,0.08)}
.calc-donut-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem 0;position:relative}
.calc-donut-chart{position:relative;width:190px;height:190px;display:flex;align-items:center;justify-content:center}
.calc-donut-chart svg{transform:rotate(-90deg);width:100%;height:100%}
.donut-circle-bg{fill:none;stroke:var(--border);stroke-width:22}
.donut-circle-seg1{fill:none;stroke:var(--brand-blue);stroke-width:22;transition:stroke-dasharray 0.6s cubic-bezier(0.4,0,0.2,1)}
.donut-circle-seg2{fill:none;stroke:var(--brand-green);stroke-width:22;transition:stroke-dasharray 0.6s cubic-bezier(0.4,0,0.2,1)}
.donut-center-info{position:absolute;text-align:center;pointer-events:none}
.donut-center-label{font-size:0.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.05em}
.donut-center-val{font-size:1.15rem;font-weight:800;color:var(--text-primary);margin-top:0.15rem}
.calc-donut-legend{display:flex;justify-content:center;gap:1.5rem;margin-top:1rem;flex-wrap:wrap}
.legend-item{display:flex;align-items:center;gap:0.5rem;font-size:0.8rem;font-weight:600}
.legend-dot{width:12px;height:12px;border-radius:3px;flex-shrink:0}
.legend-dot.dot-invested,.legend-dot.dot-principal{background:var(--brand-blue)}
.legend-dot.dot-returns,.legend-dot.dot-interest{background:var(--brand-green)}
.calc-table-responsive{width:100%;overflow-x:auto;border-radius:var(--radius-md);border:1px solid var(--border);margin-top:1.5rem;background:var(--bg-card);box-shadow:var(--shadow-sm)}
.calc-table{width:100%;border-collapse:collapse;font-size:0.85rem;min-width:540px}
.calc-table th{background:rgba(16,185,129,0.06);padding:0.75rem 1rem;text-align:right;font-weight:700;color:var(--text-primary);border-bottom:2px solid var(--border)}
.calc-table th:first-child,.calc-table td:first-child{text-align:left}
.calc-table td{padding:0.65rem 1rem;border-bottom:1px solid var(--border);color:var(--text-secondary);text-align:right}
.calc-table tr:hover td{background:rgba(16,185,129,0.04)}
.calc-table tr:last-child td{border-bottom:none}
.calc-progress-bar-wrap{width:100%;height:6px;background:var(--border);border-radius:999px;overflow:hidden;margin-top:4px}
.calc-progress-bar-fill{height:100%;background:var(--grad-brand);border-radius:999px;transition:width 0.4s ease}
.calc-banner-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.5rem}
.calc-banner-stat-box{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:1rem;text-align:center}
.calc-banner-stat-box .stat-lbl{font-size:0.75rem;color:var(--text-muted);font-weight:600;margin-bottom:0.35rem}
.calc-banner-stat-box .stat-num{font-size:1.25rem;font-weight:800;color:var(--text-primary)}
@media (max-width:768px){.calc-banner-stat-grid{grid-template-columns:1fr}}


/* ========================================================
   === CA INFOGRAPHICS & SERVICE PIPELINE STYLES ==========
   ======================================================== */
.ca-infographic-card{
  border-radius:var(--radius-xl);
  padding:2.5rem 2.25rem;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:1.5rem;
  height:100%;
}
.ca-card-topbar{display:flex;align-items:center;gap:0.75rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}
.ca-topbar-title{font-size:0.95rem;font-weight:700;color:var(--text-primary)}
.ca-infographic-content{display:flex;flex-direction:column;gap:1.35rem;flex:1;justify-content:center}
.ca-metric-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.ca-metric-badge{background:var(--bg-glass);backdrop-filter:blur(14px);border:1px solid var(--border);border-radius:var(--radius-md);padding:1rem;text-align:center;box-shadow:inset 1px 1px 2px rgba(255,255,255,0.7),0 2px 8px rgba(0,0,0,0.04)}
.ca-metric-badge .m-val{font-size:1.35rem;font-weight:800;display:block}
.ca-metric-badge .m-lbl{font-size:0.72rem;color:var(--text-muted);font-weight:600}
.ca-pipeline-track{display:flex;flex-direction:column;gap:0.65rem;padding:0.25rem 0}
.ca-track-step{display:flex;align-items:center;gap:0.75rem;font-size:0.85rem;font-weight:600;color:var(--text-muted);padding:0.45rem 0.65rem;border-radius:var(--radius-sm)}
.ca-track-step span{width:24px;height:24px;border-radius:var(--radius-full);background:var(--border);color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;font-size:0.75rem;font-weight:700}
.ca-track-step.done span{background:var(--brand-green);color:#fff}
.ca-track-step.done{color:var(--text-primary)}
.ca-track-step.current span{background:var(--brand-blue);color:#fff}
.ca-track-step.current{color:var(--brand-blue);background:rgba(0,168,232,0.06)}
.ca-infographic-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--border);font-size:0.825rem;color:var(--text-muted)}

/* ========================================================
   === ABOUT & LEADERSHIP PROFILE STYLES ==================
   ======================================================== */
.about-page-hero{padding:calc(74px + 4rem) 0 4rem}
.about-page-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:3.5rem;align-items:center}
.about-stats-strip{padding:2.5rem 0;background:var(--bg-section);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.about-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;text-align:center}
.about-stat-num{font-size:2.4rem;font-weight:900;color:var(--brand-green);line-height:1}
.about-stat-label{font-size:0.85rem;color:var(--text-muted);margin-top:0.5rem;font-weight:600}
.about-values-section{padding:5rem 0}
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:3rem}
.value-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem 1.5rem;box-shadow:var(--shadow-card);transition:transform var(--t-fast)}
.value-card:hover{transform:translateY(-4px)}
.value-icon{margin-bottom:1.25rem}
.value-card h3{font-size:1.15rem;font-weight:700;margin-bottom:0.75rem}
.value-card p{font-size:0.875rem;line-height:1.6}

/* Leadership Grid */
.about-leadership-section{padding:5rem 0;background:var(--bg-section);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.leadership-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:3rem;align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:3rem;box-shadow:var(--shadow-card)}
.leader-img-frame{border-radius:var(--radius-lg);overflow:hidden;border:2px solid var(--border);box-shadow:var(--shadow-lg)}
.leader-img-frame img{width:100%;height:auto;display:block;object-fit:cover}
.leader-name{font-size:2.2rem;font-weight:800;margin:0.5rem 0 0.25rem}
.leader-designation{font-size:1rem;font-weight:700;color:var(--brand-green);margin-bottom:1.5rem}
.leader-bio{font-size:0.95rem;line-height:1.75;color:var(--text-secondary);margin-bottom:1rem}
.leader-credentials-strip{display:grid;grid-template-columns:1fr 1fr;gap:0.75rem;margin-top:1.5rem}
.cred-item{display:flex;align-items:center;gap:0.5rem;font-size:0.875rem;font-weight:600;color:var(--text-primary)}
.cred-check{color:var(--brand-green);font-weight:800}
.leader-cta-wrap{margin-top:1.5rem}

/* Milestones Timeline */
.about-milestones-section{padding:5rem 0}
.timeline-container{max-width:820px;margin:3rem auto 0;position:relative;padding-left:2.5rem;border-left:2px solid var(--border)}
.timeline-item{position:relative;margin-bottom:2.5rem}
.timeline-item:last-child{margin-bottom:0}
.timeline-dot{position:absolute;left:-2.9rem;top:0.4rem;width:14px;height:14px;border-radius:var(--radius-full);background:var(--brand-green);box-shadow:0 0 12px var(--brand-green)}
.timeline-content{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.5rem;box-shadow:var(--shadow-card)}
.timeline-year{font-size:0.85rem;font-weight:800;letter-spacing:0.05em;display:block;margin-bottom:0.35rem}
.timeline-content h4{font-size:1.15rem;font-weight:700;margin-bottom:0.4rem}
.timeline-content p{font-size:0.875rem;line-height:1.6}
.about-cta-section{padding:0 0 5rem}
.cta-banner-card{background:var(--grad-card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:3.5rem 2rem;text-align:center;box-shadow:var(--shadow-card)}
.cta-banner-content h2{font-size:2.2rem;font-weight:800;margin-bottom:1rem}
.cta-banner-content p{max-width:650px;margin:0 auto 2rem;font-size:1.05rem}
.cta-actions{display:flex;justify-content:center;gap:1.25rem;flex-wrap:wrap}

/* About Interactive Panel */
.about-interactive-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card)}
.panel-header{display:flex;align-items:center;justify-content:space-between;padding:0.75rem 1rem;background:rgba(0,0,0,0.08);border-bottom:1px solid var(--border)}
.panel-dots{display:flex;gap:0.35rem}
.panel-dots .dot{width:10px;height:10px;border-radius:var(--radius-full)}
.dot.red{background:#ef4444}.dot.yellow{background:#f59e0b}.dot.green{background:#10b981}
.panel-title{font-size:0.78rem;font-weight:600;color:var(--text-muted);font-family:monospace}
.panel-status-pill{font-size:0.72rem;font-weight:700;color:var(--brand-green);display:flex;align-items:center;gap:0.35rem}
.pulsing{animation:pulse 2s infinite}
@keyframes pulse{0%{opacity:1}50%{opacity:0.4}100%{opacity:1}}
.panel-body{padding:1.5rem}
.screen-view{display:none}
.screen-view.active{display:block}
.compliance-flow-header{display:flex;align-items:center;gap:0.5rem;font-size:0.95rem;margin-bottom:1rem}
.flow-steps-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:0.5rem;margin-bottom:1.25rem}
.flow-step{background:var(--bg-glass);border:1px solid var(--border);border-radius:var(--radius-sm);padding:0.6rem 0.4rem;text-align:center;font-size:0.72rem;font-weight:600;display:flex;flex-direction:column;align-items:center;gap:0.25rem}
.flow-step.done{border-color:var(--brand-green);color:var(--brand-green)}
.flow-step.in-progress{border-color:var(--brand-blue);color:var(--brand-blue)}
.step-num{font-weight:800}
.pipeline-progress-bar{margin-top:1rem;background:var(--border);height:6px;border-radius:var(--radius-full);position:relative}
.bar-fill{background:var(--grad-brand);height:100%;border-radius:var(--radius-full)}
.progress-txt{display:block;font-size:0.75rem;color:var(--text-muted);margin-top:0.6rem;font-weight:600}
.radar-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:0.75rem;margin-top:1rem}
.radar-box{background:var(--bg-glass);border:1px solid var(--border);border-radius:var(--radius-md);padding:1rem 0.5rem;text-align:center}
.radar-val{font-size:1.4rem;font-weight:800;display:block}
.radar-lbl{font-size:0.7rem;color:var(--text-muted);font-weight:600}
.shield-container{text-align:center;margin:1rem 0}
.shield-icon{color:var(--brand-green);display:inline-block}
.security-logs{background:rgba(0,0,0,0.15);border-radius:var(--radius-sm);padding:0.75rem;font-size:0.75rem;font-family:monospace;display:flex;flex-direction:column;gap:0.35rem;margin-top:1rem}
.infographic-tabs{display:flex;gap:0.5rem;border-top:1px solid var(--border);padding-top:1rem;margin-top:1.25rem}
.info-tab-btn{display:flex;align-items:center;gap:0.35rem;padding:0.4rem 0.75rem;font-size:0.78rem;font-weight:600;border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-muted);transition:all var(--t-fast)}
.info-tab-btn.active{background:rgba(16,185,129,0.12);color:var(--brand-green);border-color:var(--brand-green)}

/* ========================================================
   === SERVICE DETAIL PAGE STYLES =========================
   ======================================================== */
.svc-dedicated-page{padding-bottom:5rem}
.svc-breadcrumb{padding:1.5rem 0;font-size:0.85rem}
.breadcrumb-list{display:flex;align-items:center;gap:0.6rem;color:var(--text-muted)}
.breadcrumb-list a:hover{color:var(--brand-green)}
.breadcrumb-list .current{color:var(--text-primary);font-weight:600}
.svc-hero{padding:2.5rem 0 3.5rem;border-bottom:1px solid var(--border)}
.svc-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:3.5rem;align-items:center}
.svc-hero-title{font-size:clamp(2rem,4vw,2.8rem);font-weight:800;margin:0.75rem 0 1rem;line-height:1.2}
.svc-hero-desc{font-size:1.05rem;line-height:1.7;margin-bottom:1.5rem}
.svc-tech-tags{display:flex;gap:0.5rem;flex-wrap:wrap;margin-bottom:1.75rem}
.svc-tech-tag{display:inline-block;padding:0.35rem 0.85rem;font-size:0.78rem;font-weight:600;border-radius:var(--radius-full);background:rgba(16,185,129,0.1);color:var(--brand-green);border:1px solid rgba(16,185,129,0.2)}
.svc-hero-actions{display:flex;gap:1rem;flex-wrap:wrap}

.svc-body-section{padding:4rem 0}
.svc-body-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:3.5rem;align-items:start}
.svc-main-col{display:flex;flex-direction:column;gap:2.5rem}
.svc-content-block{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2.25rem;box-shadow:var(--shadow-card)}
.svc-content-block h2{font-size:1.45rem;font-weight:800;margin-bottom:1rem}
.svc-content-block p{font-size:0.95rem;line-height:1.7;margin-bottom:1.5rem}

.svc-deliverables-list{display:flex;flex-direction:column;gap:1rem}
.svc-deliverables-list li{display:flex;gap:0.85rem;align-items:flex-start;font-size:0.925rem;line-height:1.55}
.check-icon{width:22px;height:22px;border-radius:var(--radius-full);background:rgba(16,185,129,0.15);color:var(--brand-green);display:inline-flex;align-items:center;justify-content:center;font-size:0.75rem;font-weight:800;flex-shrink:0;margin-top:0.15rem}

.doc-checklist-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.doc-item{background:var(--bg-glass);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.25rem;display:flex;gap:0.85rem;align-items:flex-start}
.doc-icon{font-size:1.5rem;line-height:1}
.doc-item strong{font-size:0.925rem;display:block;margin-bottom:0.25rem}
.doc-item p{font-size:0.825rem;color:var(--text-muted);margin-bottom:0;line-height:1.45}

.svc-process-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.proc-step{background:var(--bg-glass);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.25rem;position:relative}
.proc-num{font-size:1.75rem;font-weight:900;color:var(--brand-green);opacity:0.4;line-height:1;margin-bottom:0.5rem}
.proc-step h4{font-size:0.95rem;font-weight:700;margin-bottom:0.35rem}
.proc-step p{font-size:0.78rem;color:var(--text-muted);line-height:1.45;margin-bottom:0}

/* Sticky Sidebar in Service Detail */
.sticky-sidebar{position:sticky;top:90px;display:flex;flex-direction:column;gap:2rem}
.sidebar-consult-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-card)}
.sidebar-consult-card h3{font-size:1.2rem;font-weight:700;margin-bottom:0.5rem}
.sidebar-consult-card p{font-size:0.875rem;color:var(--text-muted);line-height:1.6;margin-bottom:1.25rem}
.sidebar-contact-info{display:flex;flex-direction:column;gap:0.75rem;border-top:1px solid var(--border);padding-top:1rem}
.sidebar-info-row{display:flex;align-items:center;gap:0.6rem;font-size:0.875rem;font-weight:600}
.sidebar-info-row a{color:var(--text-primary)}
.sidebar-info-row a:hover{color:var(--brand-green)}

.sidebar-other-services{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.75rem;box-shadow:var(--shadow-card)}
.sidebar-other-services h4{font-size:1.05rem;font-weight:700;margin-bottom:1rem}
.other-svc-links{display:flex;flex-direction:column;gap:0.5rem}
.other-svc-link{display:flex;justify-content:space-between;align-items:center;padding:0.6rem 0.85rem;border-radius:var(--radius-sm);font-size:0.825rem;color:var(--text-secondary);transition:all var(--t-fast)}
.other-svc-link:hover{background:rgba(16,185,129,0.08);color:var(--brand-green);transform:translateX(3px)}

/* ========================================================
   === LEGAL PAGES (PRIVACY & TERMS) STYLES ==============
   ======================================================== */
.legal-page{padding:0 0 5rem}
.legal-hero{padding:calc(74px + 2.5rem) 0 3rem;background:radial-gradient(ellipse 75% 55% at 50% 0%,rgba(16,185,129,0.14) 0%,rgba(0,168,232,0.06) 50%,transparent 75%),var(--bg-page);border-bottom:1px solid var(--border);text-align:center}
.legal-title{font-size:clamp(2.2rem,4vw,3rem);font-weight:800;margin:0.75rem 0}
.legal-desc{color:var(--text-muted);max-width:650px;margin:0 auto}
.legal-body-section{padding:4rem 0}
.legal-grid{display:grid;grid-template-columns:300px 1fr;gap:3.5rem;align-items:start}
.legal-sidebar{position:-webkit-sticky;position:sticky;top:calc(74px + 1.5rem);align-self:start;z-index:20}
.legal-sidebar .sticky-sidebar{position:-webkit-sticky;position:sticky;top:calc(74px + 1.5rem);background:var(--bg-card);border:1.5px solid var(--water-drop-border);border-radius:var(--radius-lg);padding:1.75rem;box-shadow:var(--shadow-card);max-height:calc(100vh - 120px);overflow-y:auto;scrollbar-width:thin}
[data-theme="dark"] .legal-sidebar .sticky-sidebar{background:rgba(14,23,45,0.78);border-color:rgba(56,189,248,0.25);box-shadow:0 20px 50px -10px rgba(0,0,0,0.65),0 0 30px rgba(0,128,255,0.18),inset 0 1px 0 rgba(255,255,255,0.12)}
.sidebar-title{font-size:1.05rem;font-weight:700;margin-bottom:1rem;color:var(--text-primary)}
.toc-list{display:flex;flex-direction:column;gap:0.4rem}
.toc-link{display:block;padding:0.45rem 0.75rem;border-radius:var(--radius-sm);font-size:0.85rem;color:var(--text-muted);transition:all var(--t-fast)}
.toc-link:hover,.toc-link.active{background:rgba(16,185,129,0.1);color:var(--brand-green);font-weight:600}
.legal-content{display:flex;flex-direction:column;gap:2rem}
.legal-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2.25rem;box-shadow:var(--shadow-card);position:relative}
.card-num{font-size:1.1rem;font-weight:900;margin-bottom:0.5rem}
.legal-card h2{font-size:1.45rem;font-weight:800;margin-bottom:1rem}
.legal-card p{font-size:0.95rem;line-height:1.75;margin-bottom:1rem}
.legal-card ul{padding-left:1.5rem;margin-bottom:1rem;list-style:disc}
.legal-card li{font-size:0.925rem;line-height:1.65;margin-bottom:0.5rem;color:var(--text-secondary)}
.grievance-box{background:var(--bg-glass);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.25rem;margin-top:1rem}
.grievance-box p{margin-bottom:0.35rem;font-size:0.875rem}

/* Tools CTA Strip */
.tools-cta-strip{padding:4rem 0}
.tools-cta-inner{background:var(--grad-card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:3rem 2.5rem;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;box-shadow:var(--shadow-card)}

/* ========================================================
   === SERVICES PAGE - ULTRA-PREMIUM CRYSTALLINE GLASS ====
   ======================================================== */
.services-hero{padding:5rem 0 3.5rem;background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(16,185,129,0.18),rgba(0,168,232,0.08) 50%,transparent 80%),var(--bg-page);border-bottom:1px solid var(--border);text-align:center;position:relative;overflow:hidden}
.services-hero-content{max-width:820px;margin:0 auto}
.services-title{font-size:clamp(1.85rem,4.5vw,3rem);font-weight:800;line-height:1.2;margin-bottom:1rem;color:var(--text-primary)}
.services-desc{font-size:clamp(0.95rem,2vw,1.1rem);line-height:1.7;color:var(--text-secondary);max-width:680px;margin:0 auto 2rem}
.services-trust-row{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:1rem;margin-top:2rem}
.trust-pill{display:inline-flex;align-items:center;gap:0.5rem;padding:0.45rem 1rem;background:var(--bg-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:var(--radius-full);font-size:0.825rem;font-weight:600;color:var(--text-secondary);box-shadow:var(--shadow-xs)}
.pill-dot{width:8px;height:8px;border-radius:50%;background:var(--brand-green);box-shadow:0 0 10px var(--brand-green);flex-shrink:0}

/* Services Filter & Index */
.services-index-section{padding:4.5rem 0;background:var(--bg-page)}
.services-index-header{margin-bottom:2.5rem;text-align:center}
.services-index-title{font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:800;margin-bottom:0.75rem}
.services-index-desc{font-size:1.025rem;color:var(--text-secondary);max-width:700px;margin:0 auto 2.25rem;line-height:1.7}

/* Ultra-Premium Crystalline Filter Slider & Dock */
.services-filter-slider-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto 2.75rem;
  position: relative;
  padding: 0 0.5rem;
}

.services-filter-dock-wrapper {
  flex: 0 1 auto;
  min-width: 0;
  max-width: 100%;
  display: flex;
  align-items: center;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
  border-radius: var(--radius-full);
  padding: 4px;
  margin: 0;
  cursor: grab;
}

.services-filter-dock-wrapper.is-dragging {
  cursor: grabbing;
  scroll-behavior: auto;
  user-select: none;
}

.services-filter-dock-wrapper::-webkit-scrollbar {
  display: none;
}

.services-filter-tabs {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.55rem;
  background: var(--bg-glass);
  backdrop-filter: blur(24px) saturate(180%);
  -webkit-backdrop-filter: blur(24px) saturate(180%);
  border: 1.5px solid var(--water-drop-border);
  border-radius: var(--radius-full);
  box-shadow: 0 16px 40px -10px rgba(0,0,0,0.08), inset 0 1px 2px rgba(255,255,255,0.9), var(--water-drop-caustic);
  white-space: nowrap;
  min-width: max-content;
  position: relative;
  transition: all var(--t-smooth);
}

[data-theme="dark"] .services-filter-tabs {
  background: rgba(14, 23, 45, 0.78);
  border-color: rgba(56, 189, 248, 0.25);
  box-shadow: 0 20px 50px -10px rgba(0,0,0,0.65), 0 0 30px rgba(0,128,255,0.20), inset 0 1px 0 rgba(255,255,255,0.12);
}

.filter-slider-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  margin: 0;
  padding: 0;
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 50%;
  background: var(--bg-glass);
  backdrop-filter: blur(20px) saturate(180%);
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  border: 1.5px solid var(--water-drop-border);
  color: var(--text-primary);
  cursor: pointer;
  box-shadow: 0 8px 24px -4px rgba(0, 0, 0, 0.12), inset 0 1px 1px rgba(255, 255, 255, 0.8), var(--water-drop-caustic);
  transition: all var(--t-fast);
  flex-shrink: 0;
  z-index: 5;
  user-select: none;
}

.filter-slider-arrow:hover:not(:disabled) {
  background: var(--grad-brand);
  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.5);
  box-shadow: 0 10px 25px -4px rgba(16, 185, 129, 0.4), 0 0 16px rgba(0, 168, 232, 0.35);
  transform: scale(1.08);
}

.filter-slider-arrow:active:not(:disabled) {
  transform: scale(0.95);
}

.filter-slider-arrow:disabled {
  opacity: 0.22;
  cursor: not-allowed;
  pointer-events: none;
  transform: none;
  box-shadow: none;
}

[data-theme="dark"] .filter-slider-arrow {
  background: rgba(14, 23, 45, 0.85);
  border-color: rgba(56, 189, 248, 0.25);
  color: #E2E8F0;
  box-shadow: 0 10px 28px -4px rgba(0, 0, 0, 0.6), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

[data-theme="dark"] .filter-slider-arrow:hover:not(:disabled) {
  background: var(--grad-brand);
  color: #ffffff;
  border-color: rgba(56, 189, 248, 0.5);
  box-shadow: 0 10px 30px -4px rgba(0, 128, 255, 0.55), 0 0 20px rgba(56, 189, 248, 0.4);
}

.services-filter-slider-container.is-not-scrollable .filter-slider-arrow {
  display: none !important;
}

.filter-tab-btn{
  display:inline-flex;
  align-items:center;
  gap:0.55rem;
  padding:0.6rem 1.15rem;
  border-radius:var(--radius-full);
  font-size:0.875rem;
  font-weight:600;
  color:var(--text-secondary);
  background:transparent;
  border:1px solid transparent;
  cursor:pointer;
  white-space:nowrap;
  transition:all var(--t-fast);
  position:relative;
  user-select:none;
}
.filter-tab-btn svg{
  color:var(--brand-green);
  transition:all var(--t-fast);
  flex-shrink:0;
}
[data-theme="dark"] .filter-tab-btn svg{
  color:#38BDF8;
}
.tab-label{
  white-space:nowrap;
  display:inline-block;
}
.tab-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:20px;
  height:20px;
  padding:0 0.4rem;
  border-radius:var(--radius-full);
  font-size:0.72rem;
  font-weight:700;
  background:rgba(16,185,129,0.12);
  color:var(--brand-green);
  border:1px solid rgba(16,185,129,0.25);
  transition:all var(--t-fast);
}
[data-theme="dark"] .tab-count{
  background:rgba(56,189,248,0.15);
  color:#38BDF8;
  border-color:rgba(56,189,248,0.30);
}

.filter-tab-btn:hover{
  color:var(--brand-green);
  background:rgba(16,185,129,0.08);
  border-color:rgba(16,185,129,0.20);
  transform:translateY(-2px);
}
[data-theme="dark"] .filter-tab-btn:hover{
  color:#38BDF8;
  background:rgba(0,128,255,0.18);
  border-color:rgba(56,189,248,0.35);
  box-shadow:0 4px 14px rgba(0,128,255,0.25);
}

.filter-tab-btn.active{
  background:var(--grad-brand);
  color:#ffffff !important;
  font-weight:700;
  border:1px solid rgba(255,255,255,0.50);
  box-shadow:inset 0 2px 3px rgba(255,255,255,0.70), inset 0 -2px 4px rgba(0,0,0,0.18), 0 8px 24px -4px rgba(16,185,129,0.45), 0 0 16px rgba(0,168,232,0.30);
  transform:none !important;
}
.filter-tab-btn.active svg{
  color:#ffffff !important;
}
.filter-tab-btn.active .tab-count{
  background:rgba(255,255,255,0.25);
  color:#ffffff !important;
  border-color:rgba(255,255,255,0.40);
  box-shadow:0 2px 6px rgba(0,0,0,0.15);
}

[data-theme="dark"] .filter-tab-btn.active{
  box-shadow:inset 0 2px 3px rgba(255,255,255,0.50), 0 8px 26px -4px rgba(0,128,255,0.60), 0 0 22px rgba(56,189,248,0.45);
}

/* Services Index Grid & Cards */
.services-index-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:2rem}
.services-index-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2.25rem;box-shadow:var(--shadow-card);transition:transform var(--t-smooth),box-shadow var(--t-smooth),border-color var(--t-smooth);display:flex;flex-direction:column;position:relative;overflow:hidden}
.services-index-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--grad-brand);opacity:0.3;transition:opacity var(--t-fast)}
.services-index-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px rgba(0,0,0,0.12),var(--shadow-glow-green);border-color:var(--border-strong)}
.services-index-card:hover::before{opacity:1}
.sic-topbar{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}
.sic-icon-box{width:58px;height:58px;border-radius:var(--radius-md);background:linear-gradient(135deg,rgba(16,185,129,0.12),rgba(0,168,232,0.10));border:1px solid rgba(16,185,129,0.22);color:var(--brand-green);display:flex;align-items:center;justify-content:center;transition:all var(--t-fast)}
.services-index-card:hover .sic-icon-box{background:var(--grad-brand);color:#ffffff;transform:scale(1.08) rotate(2deg)}
.sic-meta-badges{display:flex;align-items:center;gap:0.5rem}
.sic-sla-badge{font-size:0.725rem;font-weight:700;padding:0.3rem 0.65rem;background:rgba(16,185,129,0.10);border:1px solid rgba(16,185,129,0.25);border-radius:var(--radius-full);color:var(--brand-green)}
.sic-num-pill{font-size:0.75rem;font-weight:800;color:var(--text-muted);font-family:monospace}
.sic-title{font-size:1.25rem;font-weight:800;margin-bottom:0.75rem;color:var(--text-primary);line-height:1.35}
.sic-title a{color:inherit;transition:color var(--t-fast)}
.sic-title a:hover{color:var(--brand-green)}
.sic-desc{font-size:0.925rem;color:var(--text-secondary);line-height:1.65;margin-bottom:1.5rem;flex:1}
.sic-deliverables{display:flex;flex-direction:column;gap:0.6rem;margin-bottom:1.5rem;padding:1rem;background:var(--bg-glass);border:1px solid var(--border);border-radius:var(--radius-md)}
.sic-deliverable-item{display:flex;align-items:center;gap:0.6rem;font-size:0.85rem;font-weight:600;color:var(--text-primary)}
.sic-deliverable-item svg{color:var(--brand-green);flex-shrink:0}
.sic-tags{display:flex;flex-wrap:wrap;gap:0.45rem;margin-bottom:1.75rem}
.sic-tag{font-size:0.75rem;font-weight:600;padding:0.25rem 0.65rem;background:var(--bg-page);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text-secondary)}
.sic-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--border);padding-top:1.25rem;margin-top:auto}
.sic-learn-more{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.875rem;font-weight:700;color:var(--brand-green);transition:gap var(--t-fast)}
.sic-learn-more:hover{gap:0.65rem;color:var(--brand-blue)}
.sic-book-btn{padding:0.5rem 1rem;font-size:0.8rem;font-weight:700;background:var(--bg-glass);border:1px solid var(--border-strong);border-radius:var(--radius-full);color:var(--text-primary);transition:all var(--t-fast)}
.sic-book-btn:hover{background:var(--grad-brand);color:#ffffff;border-color:transparent}

/* Comparison Matrix */
.services-comparison-section{padding:5rem 0;background:var(--bg-section);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.comparison-matrix-card{background:var(--bg-card);border:1px solid var(--border-strong);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-xl)}
.comparison-grid-header{display:grid;grid-template-columns:2fr 1.5fr 1.5fr;padding:1.5rem 2rem;background:var(--bg-page);border-bottom:1px solid var(--border);font-weight:800;font-size:1rem}
.comp-col-header.bn-col{color:var(--brand-green);display:flex;align-items:center;gap:0.5rem}
.comp-row{display:grid;grid-template-columns:2fr 1.5fr 1.5fr;padding:1.25rem 2rem;border-bottom:1px solid var(--border);align-items:center;font-size:0.925rem;transition:background var(--t-fast)}
.comp-row:last-child{border-bottom:none}
.comp-row:hover{background:rgba(16,185,129,0.03)}
.comp-feat{font-weight:700;color:var(--text-primary)}
.comp-trad{color:var(--text-muted)}
.comp-bn{font-weight:700;color:var(--brand-green);display:flex;align-items:center;gap:0.4rem}

/* Deep Dive Service Showcases */
.deep-dive-section{padding:5rem 0}
.service-detail-block{padding:4.5rem 0;border-bottom:1px solid var(--border)}
.service-detail-block:last-child{border-bottom:none}
.service-side-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:2.25rem;box-shadow:var(--shadow-card);position:relative}
.workflow-pipeline{display:flex;flex-direction:column;gap:1.25rem;position:relative;margin-top:1.25rem}
.workflow-step{display:flex;align-items:flex-start;gap:1rem}
.step-num{width:32px;height:32px;border-radius:50%;background:var(--grad-brand);color:#fff;font-size:0.8rem;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.step-text h5{font-size:0.95rem;font-weight:700;margin-bottom:0.2rem;color:var(--text-primary)}
.step-text p{font-size:0.825rem;color:var(--text-secondary);line-height:1.5;margin:0}

/* ========================================================
   === BLOG PAGE - ULTRA-PREMIUM CHARTERED ACCOUNTANT =====
   ======================================================== */
.blog-hero{padding:5.5rem 0 3rem;background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(16,185,129,0.18),rgba(0,168,232,0.08) 50%,transparent 80%),var(--bg-page);border-bottom:1px solid var(--border);text-align:center}
.blog-controls-section{padding:2.5rem 0 1rem}
.controls-panel{background:var(--bg-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:var(--radius-xl);padding:1.5rem 2rem;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:1.25rem}
.search-box-wrapper{position:relative;display:flex;align-items:center;width:100%}
.search-icon{position:absolute;left:1.25rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none;z-index:2}
.search-input,#blogSearchInput,.search-box-wrapper input{width:100%;padding:0.95rem 3rem 0.95rem 3.4rem !important;border-radius:var(--radius-full);background:var(--bg-input);border:1.5px solid var(--border-input);color:var(--text-primary);font-size:0.95rem;transition:all var(--t-fast);box-sizing:border-box}
.search-input:focus,#blogSearchInput:focus{outline:none;border-color:var(--brand-green);box-shadow:0 0 0 3px rgba(16,185,129,0.20);background:var(--bg-card)}
.clear-btn{position:absolute;right:1.25rem;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:1.1rem;cursor:pointer;background:none;border:none;padding:0.25rem;display:flex;align-items:center;justify-content:center}

/* Blog Category Filter Slider */
.blog-filter-slider-container {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  gap: 0.5rem;
}

.blog-filter-dock-wrapper {
  flex: 1 1 auto;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
  border-radius: var(--radius-full);
  cursor: grab;
  padding: 4px 2px;
}

.blog-filter-dock-wrapper.is-dragging {
  cursor: grabbing;
  scroll-behavior: auto;
  user-select: none;
}

.blog-filter-dock-wrapper::-webkit-scrollbar {
  display: none;
}

.category-chips-list {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  white-space: nowrap;
  width: max-content;
  min-width: 100%;
}

.blog-slider-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  margin: 0;
  padding: 0;
  width: 38px;
  height: 38px;
  min-width: 38px;
  border-radius: 50%;
  background: var(--bg-glass);
  backdrop-filter: blur(20px) saturate(180%);
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  border: 1.5px solid var(--water-drop-border);
  color: var(--text-primary);
  cursor: pointer;
  box-shadow: 0 4px 14px -2px rgba(0, 0, 0, 0.1), inset 0 1px 1px rgba(255, 255, 255, 0.8), var(--water-drop-caustic);
  transition: all var(--t-fast);
  flex-shrink: 0;
  z-index: 5;
  user-select: none;
}

.blog-slider-arrow:hover:not(:disabled) {
  background: var(--grad-brand);
  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.5);
  box-shadow: 0 8px 20px -3px rgba(16, 185, 129, 0.4), 0 0 14px rgba(0, 168, 232, 0.35);
  transform: scale(1.08);
}

.blog-slider-arrow:active:not(:disabled) {
  transform: scale(0.95);
}

.blog-slider-arrow:disabled {
  opacity: 0.22;
  cursor: not-allowed;
  pointer-events: none;
  transform: none;
  box-shadow: none;
}

[data-theme="dark"] .blog-slider-arrow {
  background: rgba(14, 23, 45, 0.85);
  border-color: rgba(56, 189, 248, 0.25);
  color: #E2E8F0;
  box-shadow: 0 6px 18px -3px rgba(0, 0, 0, 0.6), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

[data-theme="dark"] .blog-slider-arrow:hover:not(:disabled) {
  background: var(--grad-brand);
  color: #ffffff;
  border-color: rgba(56, 189, 248, 0.5);
  box-shadow: 0 8px 24px -3px rgba(0, 128, 255, 0.55), 0 0 18px rgba(56, 189, 248, 0.4);
}

.blog-filter-slider-container.is-not-scrollable .blog-slider-arrow {
  display: none !important;
}

.chip {
  padding: 0.55rem 1.25rem;
  border-radius: var(--radius-full);
  font-size: 0.825rem;
  font-weight: 600;
  color: var(--text-secondary);
  background: var(--bg-card);
  border: 1px solid var(--border);
  cursor: pointer;
  white-space: nowrap;
  transition: all var(--t-fast);
  flex-shrink: 0;
}

.chip:hover {
  border-color: var(--brand-green);
  color: var(--brand-green);
}

.chip.active {
  background: var(--grad-brand);
  color: #ffffff;
  border-color: transparent;
  box-shadow: 0 4px 14px rgba(16, 185, 129, 0.30);
}

/* Featured Article Card */
.featured-post-section{padding:2.5rem 0 3.5rem}
.featured-card{display:grid;grid-template-columns:1.2fr 1fr;background:var(--bg-card);border:1px solid var(--border-strong);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-xl);transition:transform var(--t-smooth),box-shadow var(--t-smooth);width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.featured-card:hover{transform:translateY(-6px);box-shadow:0 24px 48px rgba(0,0,0,0.15),var(--shadow-glow-green)}
.featured-image-side{position:relative;min-height:380px;overflow:hidden;width:100%;min-width:0}
.featured-img{width:100%;height:100%;object-fit:cover;transition:transform 0.6s var(--ease-out)}
.featured-card:hover .featured-img{transform:scale(1.05)}
.featured-content-side{padding:3rem 2.5rem;display:flex;flex-direction:column;justify-content:center;width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden}
.featured-badge{display:inline-flex;align-items:center;gap:0.4rem;padding:0.35rem 0.85rem;background:rgba(16,185,129,0.12);border:1px solid rgba(16,185,129,0.30);border-radius:var(--radius-full);font-size:0.775rem;font-weight:700;color:var(--brand-green);width:fit-content;margin-bottom:1.25rem}
.featured-meta{display:flex;align-items:center;flex-wrap:wrap;gap:0.4rem 0.85rem;font-size:0.825rem;color:var(--text-muted);margin-bottom:0.75rem;max-width:100%;word-break:break-word}
.featured-title{font-size:clamp(1.4rem,2.5vw,1.85rem);font-weight:800;line-height:1.3;margin-bottom:1rem;word-break:break-word;overflow-wrap:break-word}
.featured-title a{color:var(--text-primary);transition:color var(--t-fast);word-break:break-word;overflow-wrap:break-word}
.featured-title a:hover{color:var(--brand-green)}
.featured-excerpt{font-size:0.95rem;color:var(--text-secondary);line-height:1.7;margin-bottom:1.75rem;word-break:break-word;overflow-wrap:break-word}
.featured-footer{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:1.5rem;margin-top:auto;width:100%;min-width:0;box-sizing:border-box}
.card-author,.featured-author{display:flex;align-items:center;gap:0.75rem;min-width:0;flex:1 1 auto;overflow:hidden;max-width:100%}
.author-thumb,.author-avatar-img{width:38px;height:38px;border-radius:50%;border:2px solid var(--brand-green);box-shadow:0 2px 8px rgba(16,185,129,0.25);object-fit:cover;flex-shrink:0}
.author-name-role{display:flex;flex-direction:column;gap:0.15rem;min-width:0;overflow:hidden;max-width:100%}
.author-name-role strong,.card-author span,.author-name{font-size:0.9rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.author-name-role span,.author-role{font-size:0.8rem;color:var(--text-secondary);line-height:1.3;word-break:break-word;overflow-wrap:break-word}
.featured-read-btn{padding:0.75rem 1.6rem;font-size:0.9rem;font-weight:700;display:inline-flex;align-items:center;border-radius:var(--radius-full);white-space:nowrap;flex-shrink:0;box-sizing:border-box;max-width:100%}

/* Blog Grid */
.blog-grid-section{padding:2rem 0 5rem}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem}
.blog-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);transition:transform var(--t-smooth),box-shadow var(--t-smooth),border-color var(--t-smooth);display:flex;flex-direction:column}
.blog-card:hover{transform:translateY(-7px);box-shadow:0 20px 40px rgba(0,0,0,0.12),var(--shadow-glow-green);border-color:var(--border-strong)}
.card-image-box{position:relative;height:220px;overflow:hidden;background:var(--bg-alt)}
.card-cover-img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s var(--ease-out)}
.blog-card:hover .card-cover-img{transform:scale(1.06)}
.card-badge{position:absolute;top:1rem;left:1rem;padding:0.35rem 0.8rem;background:var(--bg-glass-dark);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-strong);border-radius:var(--radius-full);font-size:0.725rem;font-weight:700;color:var(--brand-green);box-shadow:var(--shadow-sm)}
.card-body{padding:1.75rem;display:flex;flex-direction:column;flex:1}
.card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:0.4rem 0.75rem;font-size:0.775rem;color:var(--text-muted);margin-bottom:0.75rem;max-width:100%;word-break:break-word}
.card-title{font-size:1.15rem;font-weight:800;line-height:1.4;margin-bottom:0.75rem}
.card-title a{color:var(--text-primary);transition:color var(--t-fast)}
.card-title a:hover{color:var(--brand-green)}
.card-excerpt{font-size:0.875rem;color:var(--text-secondary);line-height:1.65;margin-bottom:1.5rem;flex:1}
.card-footer{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;border-top:1px solid var(--border);padding-top:1.25rem;margin-top:auto}
.card-link-btn{display:inline-flex;align-items:center;gap:0.35rem;font-size:0.825rem;font-weight:700;color:var(--brand-green);transition:gap var(--t-fast);flex-shrink:0;white-space:nowrap;margin-left:auto}
.card-link-btn:hover{gap:0.55rem;color:var(--brand-blue)}

/* Newsletter Strip */
.blog-newsletter-section{padding:4rem 0 6rem}
.newsletter-banner{background:var(--grad-card);border:1px solid var(--border-strong);border-radius:var(--radius-xl);padding:3.5rem 3rem;display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center;box-shadow:var(--shadow-card)}
.newsletter-action-form,
.newsletter-form {
  display: flex;
  flex-direction: column;
  gap: 1.15rem;
  width: 100%;
}
.newsletter-action-form .input-field,
.newsletter-action-form input[type="email"],
.newsletter-form .input-field,
.newsletter-form input[type="email"] {
  width: 100%;
  padding: 0.9rem 1.35rem;
  background: var(--bg-input);
  border: 1.5px solid var(--border-input);
  border-radius: var(--radius-md);
  font-size: 0.95rem;
  color: var(--text-primary);
  box-sizing: border-box;
  box-shadow: inset 1px 1px 3px rgba(0, 0, 0, 0.05);
  transition: border-color var(--t-fast), box-shadow var(--t-fast);
}
.newsletter-action-form .input-field:focus,
.newsletter-action-form input[type="email"]:focus,
.newsletter-form .input-field:focus,
.newsletter-form input[type="email"]:focus {
  outline: none;
  border-color: var(--brand-green);
  box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.20);
}
.newsletter-action-form button,
.newsletter-action-form .btn,
.newsletter-form button,
.newsletter-form .btn {
  margin-top: 0.25rem;
  align-self: flex-start;
  padding: 0.85rem 1.85rem;
}
@media (max-width: 640px) {
  .newsletter-action-form button,
  .newsletter-action-form .btn,
  .newsletter-form button,
  .newsletter-form .btn {
    width: 100%;
    justify-content: center;
  }
}
.form-input-group{display:flex;gap:0.75rem}
.newsletter-input{flex:1;padding:0.85rem 1.25rem;border-radius:var(--radius-full);background:var(--bg-input);border:1px solid var(--border-input);font-size:0.9rem}

/* ========================================================
   === BLOG READER VIEW - ULTRA-PREMIUM EDITORIAL =========
   ======================================================== */
.blog-reader-view{padding-bottom:5rem}
.blog-reader-hero{position:relative;padding:7.5rem 0 3.5rem;background-size:cover;background-position:center;background-repeat:no-repeat;border-bottom:1px solid var(--border-strong);color:#ffffff}
.reader-hero-container{position:relative;z-index:2;max-width:960px}
.blog-breadcrumb{display:flex;align-items:center;gap:0.5rem;font-size:0.85rem;color:rgba(255,255,255,0.7);margin-bottom:1.25rem}
.breadcrumb-link{color:rgba(255,255,255,0.85);text-decoration:none;transition:color var(--t-fast)}
.breadcrumb-link:hover{color:var(--brand-green);text-decoration:underline}
.breadcrumb-separator{opacity:0.5}
.breadcrumb-current{color:var(--brand-green);font-weight:600}
.reader-title{font-size:clamp(1.85rem,3.5vw,2.75rem);font-weight:800;line-height:1.25;color:#ffffff;margin:0.75rem 0 1rem;text-shadow:0 2px 12px rgba(0,0,0,0.5)}
.reader-subtitle{font-size:1.1rem;color:rgba(255,255,255,0.9);line-height:1.65;margin:0 0 1.5rem;max-width:820px}
.reader-meta{display:flex;align-items:center;gap:0.85rem;font-size:0.85rem;color:rgba(255,255,255,0.8);flex-wrap:wrap}
.meta-tag{padding:0.3rem 0.85rem;background:rgba(16,185,129,0.25);border:1px solid rgba(16,185,129,0.5);color:#34d399;font-weight:700;border-radius:var(--radius-full);font-size:0.775rem}
.meta-separator{opacity:0.4}
.reader-body-grid{display:grid;grid-template-columns:1fr 340px;gap:3.5rem;padding:3.5rem 0 6rem;align-items:start}
.reader-content-col{min-width:0}
.reader-article-content{color:var(--text-secondary);font-size:1.05rem;line-height:1.85}
.reader-article-content h1,.reader-article-content h2,.reader-article-content h3,.reader-article-content h4{color:var(--text-primary);font-weight:800;line-height:1.35;margin:2.5rem 0 1rem}
.reader-article-content h2{font-size:1.55rem;border-left:4px solid var(--brand-green);padding-left:1rem}
.reader-article-content h3{font-size:1.25rem}
.reader-article-content p{margin-bottom:1.5rem}
.reader-article-content strong{color:var(--text-primary);font-weight:700}
.reader-article-content ul,.reader-article-content ol{margin:1.25rem 0 1.75rem 1.75rem;display:flex;flex-direction:column;gap:0.6rem}
.reader-article-content li{line-height:1.7}
.reader-article-content table{width:100%;border-collapse:collapse;margin:2rem 0;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}
.reader-article-content th,.reader-article-content td{padding:0.9rem 1.25rem;text-align:left;border-bottom:1px solid var(--border);font-size:0.95rem}
.reader-article-content th{background:var(--bg-glass);font-weight:700;color:var(--text-primary)}
.reader-article-content blockquote{border-left:4px solid var(--brand-green);background:rgba(16,185,129,0.06);padding:1.25rem 1.5rem;border-radius:0 var(--radius-md) var(--radius-md) 0;margin:2rem 0;font-style:italic;color:var(--text-primary)}
.reader-tags-box{display:flex;align-items:center;gap:0.5rem;flex-wrap:wrap;margin:2.5rem 0 1.5rem;padding:1rem 0;border-top:1px solid var(--border)}
.tags-title{font-size:0.875rem;font-weight:700;color:var(--text-primary)}
.blog-tag{padding:0.25rem 0.75rem;background:var(--bg-glass);border:1px solid var(--border);border-radius:var(--radius-full);font-size:0.8rem;color:var(--brand-green);font-weight:600}

/* Engagement Bar & Strict SVG Cap */
.blog-engagement-bar{display:flex;align-items:center;gap:1.25rem;padding:0.9rem 1.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);margin:2rem 0 2.5rem;box-shadow:var(--shadow-sm);width:fit-content;max-width:100%;box-sizing:border-box}
.blog-engagement-bar svg,.like-btn svg,.engagement-stat svg,.section-heading svg,.comments-list svg{width:20px !important;height:20px !important;max-width:20px !important;max-height:20px !important;flex-shrink:0}
.like-btn{display:inline-flex;align-items:center;gap:0.5rem;padding:0.5rem 1.15rem;border-radius:var(--radius-full);background:var(--bg-glass);border:1px solid var(--border);font-size:0.9rem;font-weight:600;color:var(--text-primary);cursor:pointer;transition:all var(--t-fast)}
.like-btn:hover{border-color:#ef4444;color:#ef4444;transform:scale(1.03)}
.like-btn.liked{background:rgba(239,68,68,0.12);border-color:rgba(239,68,68,0.35);color:#ef4444}
.like-btn.liked svg{fill:#ef4444;stroke:#ef4444;animation:heartBeat 0.35s ease-out}
@keyframes heartBeat{0%{transform:scale(1)}14%{transform:scale(1.3)}28%{transform:scale(1)}42%{transform:scale(1.3)}70%{transform:scale(1)}}
.engagement-divider{width:1px;height:22px;background:var(--border)}
.engagement-stat{display:inline-flex;align-items:center;gap:0.5rem;font-size:0.9rem;font-weight:500;color:var(--text-secondary)}

/* Comments Section */
.blog-comments-section{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--border)}
.section-heading{display:flex;align-items:center;gap:0.65rem;font-size:1.35rem;font-weight:800;color:var(--text-primary);margin-bottom:1.5rem}
.comment-form-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.75rem;box-shadow:var(--shadow-sm);margin-bottom:2rem}
.comment-form-card h4{font-size:1.1rem;font-weight:700;color:var(--text-primary);margin-bottom:1.25rem}
.comment-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.25rem}
.comment-form-card .form-group{display:flex;flex-direction:column;gap:0.4rem}
.comment-form-card label{font-size:0.85rem;font-weight:600;color:var(--text-primary)}
.comment-form-card input,.comment-form-card textarea{width:100%;padding:0.75rem 1rem;background:var(--bg-input);border:1px solid var(--border-input);border-radius:var(--radius-sm);color:var(--text-primary);font-size:0.9rem;transition:all var(--t-fast);box-sizing:border-box}
.comment-form-card input:focus,.comment-form-card textarea:focus{outline:none;border-color:var(--brand-green);box-shadow:0 0 0 3px rgba(16,185,129,0.18)}
.comment-form-actions{display:flex;align-items:center;justify-content:space-between;margin-top:1rem;flex-wrap:wrap;gap:1rem}
.comment-form-policy{font-size:0.8rem;color:var(--text-muted);margin:0}
.comment-submit-btn{display:inline-flex;align-items:center;gap:0.5rem;padding:0.65rem 1.4rem;background:var(--grad-brand);color:#ffffff;border:none;border-radius:var(--radius-full);font-size:0.875rem;font-weight:700;cursor:pointer;transition:all var(--t-fast)}
.comment-submit-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-glow-green)}
.comments-list{display:flex;flex-direction:column;gap:1.25rem}
.comment-card{display:flex;gap:1rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.25rem}
.comment-avatar{width:40px;height:40px;border-radius:50%;background:var(--grad-brand);color:#ffffff;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.comment-content{flex:1}
.comment-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:0.4rem}
.comment-author{font-weight:700;color:var(--text-primary);font-size:0.95rem}
.comment-date{font-size:0.775rem;color:var(--text-muted)}
.comment-body{font-size:0.9rem;color:var(--text-secondary);line-height:1.5;margin:0}
.comments-empty{text-align:center;padding:3rem 1.5rem;background:var(--bg-card);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);color:var(--text-muted)}
.comments-empty svg{width:44px !important;height:44px !important;max-width:44px !important;max-height:44px !important;margin:0 auto 0.75rem auto !important;display:block !important;color:var(--text-muted);opacity:0.6}

/* Reader Sidebar */
.reader-sidebar-col{position:sticky;top:90px;display:flex;flex-direction:column;gap:2rem}
.sidebar-widget{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.75rem;box-shadow:var(--shadow-card)}
.sidebar-widget h4{font-size:1rem;font-weight:700;color:var(--text-primary);margin-bottom:1.25rem;padding-bottom:0.75rem;border-bottom:1px solid var(--border)}
.author-profile{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}
.author-avatar-wrapper{position:relative;flex-shrink:0}
.author-avatar{width:58px;height:58px;border-radius:50%;object-fit:cover;border:2px solid var(--brand-green);box-shadow:0 2px 8px rgba(16,185,129,0.25)}
.author-info{display:flex;flex-direction:column;gap:0.2rem}
.author-name{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0}
.author-role{font-size:0.8rem;color:var(--brand-green);font-weight:600;margin:0}
.author-bio{font-size:0.875rem;color:var(--text-secondary);line-height:1.6;margin:0}
.newsletter-widget p{font-size:0.875rem;color:var(--text-secondary);line-height:1.5;margin-bottom:1rem}
.newsletter-subscribe-form{display:flex;flex-direction:column;gap:0.75rem}
.sub-input{width:100%;padding:0.75rem 1rem;background:var(--bg-input);border:1px solid var(--border-input);border-radius:var(--radius-sm);color:var(--text-primary);font-size:0.9rem;box-sizing:border-box}
.sub-btn{width:100%;padding:0.75rem;background:var(--grad-brand);color:#ffffff;border:none;border-radius:var(--radius-sm);font-weight:700;cursor:pointer;transition:all var(--t-fast)}
.sub-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-glow-green)}

/* ========================================================
   === CONTACT PAGE - ULTRA-PREMIUM CRYSTALLINE GLASS ====
   ======================================================== */
.contact-dedicated-page{background:var(--bg-primary)}
.contact-page-hero{padding:6.5rem 0 3.5rem;background:radial-gradient(ellipse 70% 45% at 50% -10%,rgba(16,185,129,0.20),rgba(0,168,232,0.08) 60%,transparent 80%),var(--bg-page);border-bottom:1px solid var(--border);text-align:center}
.contact-hero-header{max-width:680px;margin:0 auto}
.contact-hero-title{font-size:clamp(2rem,4vw,3rem);font-weight:800;line-height:1.2;margin:1rem 0}
.contact-hero-desc{color:var(--text-secondary);font-size:1.1rem;line-height:1.6}
.contact-page-body{padding:3.5rem 0 6rem}
.contact-page-body .container{max-width:1240px;margin:0 auto;padding:0 2rem;width:100%;box-sizing:border-box}
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:3.5rem;align-items:start;min-width:0;width:100%}
.contact-info{min-width:0;max-width:100%}
.contact-info-title{font-size:1.75rem;font-weight:800;margin-bottom:0.5rem;color:var(--text-primary)}
.contact-info-desc{color:var(--text-secondary);font-size:1rem;line-height:1.6;margin-bottom:2rem}
.contact-methods{display:flex;flex-direction:column;gap:1.25rem;min-width:0;width:100%}
.contact-method-card{display:flex;align-items:flex-start;gap:1.25rem;padding:1.35rem 1.5rem;background:var(--bg-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--t-fast);min-width:0;max-width:100%;box-sizing:border-box}
.contact-method-card:hover{transform:translateY(-3px);border-color:var(--border-strong);box-shadow:var(--shadow-card)}
.contact-method-icon{width:46px;height:46px;border-radius:var(--radius-md);background:rgba(16,185,129,0.12);color:var(--brand-green);border:1px solid rgba(16,185,129,0.25);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contact-method-icon.whatsapp-icon{background:rgba(37,211,102,0.12);color:#25d366;border-color:rgba(37,211,102,0.25)}
.contact-method-text{flex:1 1 auto;min-width:0;overflow:hidden}
.method-label{font-size:0.775rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-muted);display:block;margin-bottom:0.25rem}
.contact-method-text h4{font-size:1.15rem;font-weight:700;margin:0 0 0.25rem;overflow-wrap:anywhere;word-break:break-word}
.contact-method-text h4 a{color:var(--text-primary);transition:color var(--t-fast);overflow-wrap:anywhere;word-break:break-word;display:inline-block;max-width:100%}
.contact-method-text h4 a:hover{color:var(--brand-green)}
.method-sub{font-size:0.825rem;color:var(--text-muted);overflow-wrap:anywhere}
.method-status-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0.35rem;margin-bottom:0.25rem}
.live-status-pill{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.75rem;font-weight:700;color:#25d366;background:rgba(37,211,102,0.12);padding:0.15rem 0.55rem;border-radius:var(--radius-full);white-space:nowrap}
.pulse-dot{width:7px;height:7px;border-radius:50%;background:#25d366;box-shadow:0 0 0 0 rgba(37,211,102,0.7);animation:pulse-green 1.8s infinite}
@keyframes pulse-green{0%{transform:scale(0.95);box-shadow:0 0 0 0 rgba(37,211,102,0.7)}70%{transform:scale(1);box-shadow:0 0 0 6px rgba(37,211,102,0)}100%{transform:scale(0.95);box-shadow:0 0 0 0 rgba(37,211,102,0)}}
.office-address{font-size:0.95rem;color:var(--text-secondary);line-height:1.5;margin:0.25rem 0 0.75rem;overflow-wrap:anywhere;word-break:break-word}
.btn-direction{display:inline-flex;align-items:center;gap:0.45rem;font-size:0.825rem;font-weight:700;color:var(--brand-green);background:rgba(16,185,129,0.10);border:1px solid rgba(16,185,129,0.25);padding:0.4rem 0.85rem;border-radius:var(--radius-full);transition:all var(--t-fast);max-width:100%}
.btn-direction:hover{background:var(--brand-green);color:#ffffff;transform:translateY(-2px)}
.contact-trust-panel{margin-top:2rem;padding:1.75rem;background:var(--bg-card);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-strong);border-radius:var(--radius-xl);display:flex;flex-direction:column;gap:1rem;box-shadow:var(--shadow-card);min-width:0;box-sizing:border-box}
.trust-panel-title{font-size:0.9rem;font-weight:800;text-transform:uppercase;letter-spacing:0.06em;color:var(--brand-green);padding-bottom:0.5rem;border-bottom:1px solid var(--border)}
.trust-item{display:flex;align-items:flex-start;gap:0.75rem;font-size:0.9rem;color:var(--text-secondary);line-height:1.45}
.trust-item strong{color:var(--text-primary)}
.trust-icon{font-size:1.15rem;flex-shrink:0;line-height:1.2}

/* Contact Form Panel */
.contact-form-panel{background:var(--bg-card);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--border-strong);border-radius:var(--radius-2xl);padding:3rem 2.5rem;box-shadow:var(--shadow-xl),var(--shadow-glow-green);position:relative}
.contact-form-panel::before{content:'';position:absolute;top:0;left:10%;right:10%;height:2px;background:var(--grad-brand);border-radius:var(--radius-full)}
.form-panel-header{margin-bottom:2rem}
.form-badge{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.775rem;font-weight:700;color:var(--brand-green);background:rgba(16,185,129,0.12);border:1px solid rgba(16,185,129,0.30);padding:0.3rem 0.75rem;border-radius:var(--radius-full);margin-bottom:0.75rem}
.form-panel-title{font-size:1.65rem;font-weight:800;color:var(--text-primary);margin:0 0 0.5rem}
.form-panel-desc{font-size:0.95rem;color:var(--text-secondary);line-height:1.55;margin:0}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.form-group{margin-bottom:1.35rem;display:flex;flex-direction:column}
.form-label{font-size:0.875rem;font-weight:700;color:var(--text-primary);margin-bottom:0.45rem;display:flex;align-items:center;gap:0.25rem}
.req{color:#ef4444}
.form-control{width:100%;padding:0.9rem 1.15rem;background:var(--bg-input);border:1.5px solid var(--border-input);border-radius:var(--radius-md);color:var(--text-primary);font-size:0.95rem;font-family:inherit;transition:all var(--t-fast);box-sizing:border-box}
.form-control:focus{outline:none;border-color:var(--brand-green);background:var(--bg-card);box-shadow:0 0 0 4px rgba(16,185,129,0.18)}
.form-control.is-invalid{border-color:#ef4444 !important;box-shadow:0 0 0 3px rgba(239,68,68,0.18) !important}
.select-wrapper{position:relative;width:100%}
.form-select{appearance:none;-webkit-appearance:none;padding-right:2.75rem;cursor:pointer}
.select-chevron{position:absolute;right:1.15rem;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--text-muted)}
.form-error{display:none;color:#ef4444;font-size:0.8rem;font-weight:500;margin-top:0.4rem}
.btn-submit-consultation{width:100%;padding:1.1rem;font-size:1.05rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:0.65rem;border-radius:var(--radius-full);box-shadow:0 8px 24px rgba(16,185,129,0.35);transition:all var(--t-fast);cursor:pointer;border:none}
.btn-submit-consultation:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(16,185,129,0.45)}
.btn-submit-consultation:disabled{opacity:0.65;cursor:not-allowed;transform:none}
.form-privacy-note{text-align:center;font-size:0.8rem;color:var(--text-muted);margin-top:1rem;margin-bottom:0}

/* === Cookie Consent Dialog === */
.cookie-consent-bar{position:fixed;bottom:0;left:0;right:0;z-index:9998;background:var(--bg-glass-dark);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-top:1px solid var(--border-strong);box-shadow:0 -8px 32px rgba(0,0,0,0.25);padding:1.25rem 0;transform:translateY(100%);transition:transform 0.4s cubic-bezier(0.22,1,0.36,1)}
.cookie-consent-bar.visible{transform:translateY(0)}
.cookie-consent-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.cookie-icon{font-size:2rem;line-height:1;flex-shrink:0}
.cookie-text-block{flex:1}
.cookie-title{font-size:0.95rem;font-weight:700;color:var(--text-primary);margin-bottom:0.2rem}
.cookie-desc{font-size:0.825rem;color:var(--text-secondary);line-height:1.45;margin:0}
.cookie-desc a{color:var(--brand-green);text-decoration:underline;font-weight:600}
.cookie-actions{display:flex;align-items:center;gap:0.75rem;flex-shrink:0}

/* === Responsive === */
.mobile-nav-cta, .mobile-nav-theme { display: none; }

@media (max-width: 1024px) {
  /* Navigation & Mobile Drawer (Tablets & Phones <= 1024px) */
  .nav-container { gap: 0.75rem !important; }
  .nav-links { margin: 0 !important; }
  .brand-logo { min-width: 0 !important; flex: 1 1 auto !important; max-width: calc(100% - 54px) !important; }
  .brand-logo span { font-size: clamp(0.85rem, 3.8vw, 1.05rem) !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; min-width: 0 !important; }
  .hamburger-btn { display: flex !important; flex-shrink: 0 !important; margin-left: auto !important; z-index: 1001 !important; }
  .nav-auth-group { display: none !important; }
  .nav-hover-pill { display: none !important; }

  .nav-links {
    display: none;
    position: fixed;
    top: 68px;
    left: 0;
    right: 0;
    bottom: 0;
    max-height: calc(100vh - 68px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(28px) saturate(200%);
    -webkit-backdrop-filter: blur(28px) saturate(200%);
    padding: 1.25rem 1.25rem 3.5rem;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0.5rem;
    border-bottom: 1px solid var(--border);
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.22);
    z-index: 999;
  }
  [data-theme="dark"] .nav-links {
    background: rgba(8, 14, 28, 0.98);
    border-color: rgba(56, 189, 248, 0.22);
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.85);
  }
  .nav-links.open {
    display: flex !important;
    animation: mobileNavFadeIn 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  }
  @keyframes mobileNavFadeIn {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
  }

  .nav-links > li {
    width: 100% !important;
    margin: 0 !important;
  }
  .nav-link {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.85rem 1.1rem;
    border-radius: var(--radius-md);
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--text-primary);
    background: rgba(16, 185, 129, 0.05);
    border: 1px solid rgba(16, 185, 129, 0.14);
    transition: background var(--t-fast), border-color var(--t-fast), color var(--t-fast);
  }
  [data-theme="dark"] .nav-link {
    background: rgba(14, 23, 45, 0.65);
    border-color: rgba(56, 189, 248, 0.16);
    color: #F1F5F9;
  }
  .nav-link:hover,
  .nav-link.active,
  .nav-item-dropdown.open-dropdown > .nav-link,
  .nav-item-dropdown.expanded > .nav-link {
    color: var(--brand-green) !important;
    background: rgba(16, 185, 129, 0.12) !important;
    border-color: rgba(16, 185, 129, 0.35) !important;
  }
  [data-theme="dark"] .nav-link:hover,
  [data-theme="dark"] .nav-link.active,
  [data-theme="dark"] .nav-item-dropdown.open-dropdown > .nav-link,
  [data-theme="dark"] .nav-item-dropdown.expanded > .nav-link {
    color: #38BDF8 !important;
    background: rgba(0, 128, 255, 0.16) !important;
    border-color: rgba(56, 189, 248, 0.40) !important;
  }

  /* Megamenu Accordion on Mobile/Tablet */
  .nav-item-dropdown {
    width: 100%;
  }
  .nav-item-dropdown .chevron-icon {
    transition: transform 0.25s ease;
  }
  .nav-item-dropdown.open-dropdown .chevron-icon,
  .nav-item-dropdown.expanded .chevron-icon {
    transform: rotate(180deg) !important;
  }
  .megamenu-panel {
    position: static !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    min-width: 100% !important;
    max-width: 100% !important;
    border-radius: var(--radius-md) !important;
    padding: 1rem 0.85rem !important;
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
    background: rgba(16, 185, 129, 0.04) !important;
    border: 1px solid rgba(16, 185, 129, 0.20) !important;
    box-shadow: inset 0 2px 6px rgba(0, 0, 0, 0.04) !important;
    display: none;
  }
  [data-theme="dark"] .megamenu-panel {
    background: rgba(10, 18, 36, 0.85) !important;
    border-color: rgba(56, 189, 248, 0.25) !important;
  }
  .nav-item-dropdown.open-dropdown .megamenu-panel,
  .nav-item-dropdown.expanded .megamenu-panel {
    display: block !important;
    animation: mobileAccordionDown 0.25s ease-out;
  }
  @keyframes mobileAccordionDown {
    from { opacity: 0; transform: translateY(-6px); }
    to { opacity: 1; transform: translateY(0); }
  }
  .megamenu-panel::before {
    display: none !important;
  }
  .megamenu-grid {
    grid-template-columns: 1fr !important;
    gap: 0.75rem !important;
  }
  .megamenu-header {
    font-size: 0.76rem !important;
    margin-top: 0.4rem;
    margin-bottom: 0.5rem;
  }
  .megamenu-item {
    padding: 0.65rem 0.75rem !important;
    margin-bottom: 0.35rem !important;
    border-radius: var(--radius-sm) !important;
    background: rgba(255, 255, 255, 0.6) !important;
    border: 1px solid rgba(16, 185, 129, 0.14) !important;
  }
  [data-theme="dark"] .megamenu-item {
    background: rgba(14, 23, 45, 0.70) !important;
    border-color: rgba(56, 189, 248, 0.18) !important;
    color: #F1F5F9 !important;
  }
  .megamenu-item:hover,
  .megamenu-item:active {
    background: rgba(16, 185, 129, 0.14) !important;
  }
  .megamenu-link {
    padding: 0.55rem 0.75rem !important;
    border-radius: var(--radius-xs) !important;
    display: block !important;
    font-size: 0.9rem !important;
  }

  .nav-links .mobile-nav-theme,
  .nav-links .nav-theme-item {
    margin-top: 0.75rem !important;
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
  }
  .nav-links .theme-switcher {
    margin: 0 auto !important;
  }
  .mobile-nav-cta {
    display: block !important;
    margin-top: 0.75rem !important;
    width: 100% !important;
  }
  .mobile-nav-cta .btn {
    width: 100% !important;
    justify-content: center !important;
    padding: 0.85rem 1.5rem !important;
    font-size: 1rem !important;
  }

  /* Hero Section (Visible & Responsive on Tablets & Mobile) */
  .hero-grid {
    grid-template-columns: 1fr !important;
    gap: 2.75rem !important;
    text-align: center;
  }
  .hero {
    padding: 110px 0 60px !important;
    min-height: auto !important;
  }
  .hero-headline {
    font-size: clamp(2rem, 5.5vw, 3rem) !important;
  }
  .hero-desc {
    margin: 0 auto 2rem !important;
    max-width: 580px !important;
    font-size: 1rem !important;
  }
  .hero-actions {
    justify-content: center !important;
    gap: 1rem !important;
  }
  .hero-trust {
    justify-content: center !important;
    gap: 1rem !important;
  }
  .hero-visual {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 540px !important;
    margin: 1.5rem auto 0 !important;
    position: relative !important;
  }
  .hero-image-frame {
    width: 100% !important;
    border-radius: var(--radius-xl) !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.30), 0 0 0 1px rgba(16, 185, 129, 0.20) !important;
  }
  .hero-image-frame img {
    width: 100% !important;
    height: auto !important;
    max-height: 380px !important;
    object-fit: cover !important;
    border-radius: var(--radius-xl) !important;
    display: block !important;
  }
  .hero-float-badge {
    padding: 0.65rem 1rem !important;
  }
  .hero-float-badge.badge-tl {
    top: -12px !important;
    left: -8px !important;
  }
  .hero-float-badge.badge-br {
    bottom: -12px !important;
    right: -8px !important;
  }

  /* Core Grids across all pages */
  .stats-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .stat-divider { display: none !important; }
  .services-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .services-index-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .featured-card { grid-template-columns: 1fr !important; width: 100% !important; max-width: 100% !important; min-width: 0 !important; }
  .featured-image-side { min-height: 260px !important; max-height: 340px !important; width: 100% !important; }
  .featured-content-side { padding: 2.25rem 2rem !important; width: 100% !important; max-width: 100% !important; min-width: 0 !important; }
  .newsletter-banner { grid-template-columns: 1fr !important; gap: 2rem !important; }
  .why-us-grid { grid-template-columns: 1fr !important; gap: 3rem !important; }
  .process-steps { grid-template-columns: repeat(2, 1fr) !important; }
  .process-steps::before { display: none !important; }
  .testimonials-grid { grid-template-columns: 1fr 1fr !important; }
  .blog-cards-grid { grid-template-columns: 1fr 1fr !important; }
  .contact-grid { grid-template-columns: 1fr !important; gap: 2.75rem !important; }
  .contact-page-hero { padding: calc(68px + 3rem) 0 2.5rem !important; }
  .contact-page-body { padding: 2.5rem 0 4.5rem !important; }
  .contact-page-body .container { padding: 0 1.5rem !important; }
  .tax-calc-grid { grid-template-columns: 1fr !important; }
  .reader-body-grid { grid-template-columns: 1fr !important; gap: 2.5rem !important; }
  .reader-sidebar-col { position: static !important; }
  .footer-grid { grid-template-columns: 1fr 1fr !important; gap: 2rem !important; }
  .values-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .team-grid { grid-template-columns: 1fr 1fr !important; }
  .about-hero-grid { grid-template-columns: 1fr !important; }
  .tools-cta-inner { grid-template-columns: 1fr !important; gap: 1.5rem !important; }
  .blog-grid { grid-template-columns: 1fr 1fr !important; }

  /* About Us Page Tablet */
  .about-page-hero-grid { grid-template-columns: 1fr !important; gap: 2.5rem !important; }
  .about-page-hero { padding: calc(72px + 3.5rem) 0 2.5rem !important; text-align: center !important; }
  .about-hero-actions { justify-content: center !important; }
  .about-interactive-panel { max-width: 580px !important; margin: 0 auto !important; width: 100% !important; }
  .about-stats-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 1.5rem !important; }
  .leadership-grid { grid-template-columns: 1fr !important; gap: 2.25rem !important; padding: 2.5rem 2rem !important; text-align: center !important; }
  .leader-img-frame { max-width: 320px !important; margin: 0 auto !important; width: 100% !important; }
  .leader-text-col { text-align: center !important; }
  .leader-credentials-strip { grid-template-columns: repeat(2, 1fr) !important; gap: 0.75rem !important; max-width: 480px !important; margin: 1.5rem auto 0 !important; text-align: left !important; }
  .leader-text-col .btn { max-width: 360px !important; margin: 0 auto !important; width: 100% !important; justify-content: center !important; }
  .values-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 1.25rem !important; }

  /* Tools / Tax Calculator Tablet */
  .calc-layout-grid { grid-template-columns: 1fr !important; gap: 2.25rem !important; }
  .slabs-tables-grid { grid-template-columns: 1fr !important; gap: 2rem !important; }
  .tax-hero-section { padding: 3.5rem 0 2.5rem !important; }
  .calculator-container-section { padding: 2.5rem 0 !important; }

  /* Services Page Tablet */
  .services-hero { padding: 3.5rem 0 2.5rem !important; }
  .service-detail-grid,
  .service-detail-grid.reversed { grid-template-columns: 1fr !important; direction: ltr !important; gap: 2.5rem !important; }
  .service-detail-card,
  .ca-infographic-card { width: 100% !important; }
  .comparison-matrix-card { overflow-x: auto !important; -webkit-overflow-scrolling: touch !important; width: 100% !important; }
  .comparison-grid-header,
  .comp-row { min-width: 580px !important; }

  /* Dedicated Service Detail Page Tablet */
  .svc-hero-grid,
  .svc-body-grid { grid-template-columns: 1fr !important; gap: 2.5rem !important; }
  .svc-body-grid .sticky-sidebar { position: static !important; }
  .svc-process-timeline { grid-template-columns: repeat(2, 1fr) !important; }
}

@media (max-width: 768px) {
  .legal-hero { padding: calc(68px + 2rem) 0 2.5rem !important; }
  .legal-grid { grid-template-columns: 1fr !important; gap: 2rem !important; }
  .legal-sidebar { position: static !important; width: 100% !important; }
  .legal-sidebar .sticky-sidebar { position: static !important; max-height: none !important; }
  .services-grid { grid-template-columns: 1fr !important; }
  .services-index-grid { grid-template-columns: 1fr !important; }
  .services-index-card { padding: 1.75rem 1.25rem !important; }
  .services-filter-dock-wrapper { flex: 1 1 auto !important; min-width: 0 !important; width: auto !important; max-width: 100% !important; display: flex !important; align-items: center !important; overflow-x: auto !important; -webkit-overflow-scrolling: touch !important; padding: 4px 2px !important; margin: 0 !important; }
  .services-filter-tabs { width: max-content !important; min-width: 0 !important; padding: 0.4rem 0.5rem !important; margin: 0 !important; }
  .filter-tab-btn { padding: 0.5rem 0.95rem !important; font-size: 0.825rem !important; gap: 0.45rem !important; }
  .service-detail-section { padding: 3.5rem 0 !important; }
  .service-detail-card { padding: 2rem 1.4rem !important; }
  .ca-infographic-card { padding: 2rem 1.4rem !important; }
  .sdc-title { font-size: 1.6rem !important; }
  .sdc-actions-strip { flex-direction: column !important; width: 100% !important; }
  .sdc-actions-strip .btn { width: 100% !important; justify-content: center !important; }

  /* Tools / Tax Calculator */
  .comparison-cards-grid { grid-template-columns: 1fr !important; gap: 1.25rem !important; }
  .regime-stat-card.regime-highlight { transform: none !important; }
  .calc-inputs-card,
  .calc-results-card { padding: 1.6rem 1.25rem !important; }
  .slab-table-card { padding: 1.5rem 1.1rem !important; overflow-x: auto !important; -webkit-overflow-scrolling: touch !important; }
  .tax-table { min-width: 440px !important; }
  .calc-card-header h2 { font-size: 1.2rem !important; }

  /* About Us Page Small & Medium */
  .about-page-hero { padding: calc(70px + 3rem) 0 2.25rem !important; text-align: center !important; }
  .about-page-hero-grid { gap: 2.25rem !important; }
  .about-hero-title { font-size: clamp(1.65rem, 5vw, 2.3rem) !important; line-height: 1.25 !important; }
  .about-hero-desc { font-size: 0.95rem !important; line-height: 1.65 !important; max-width: 560px !important; margin: 0 auto 1.75rem !important; }
  .about-hero-actions { display: flex !important; flex-direction: column !important; width: 100% !important; max-width: 420px !important; margin: 0 auto 2.25rem !important; gap: 0.85rem !important; }
  .about-hero-actions .btn { width: 100% !important; justify-content: center !important; }
  .about-interactive-panel { animation: none !important; max-width: 560px !important; margin: 0 auto !important; width: 100% !important; }
  .panel-body { padding: 1.25rem 1rem !important; }
  .flow-steps-strip { display: grid !important; grid-template-columns: repeat(2, 1fr) !important; gap: 0.5rem !important; }
  .flow-step { padding: 0.55rem 0.35rem !important; font-size: 0.75rem !important; }
  .progress-txt { font-size: 0.72rem !important; text-align: center !important; }
  .radar-metrics { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 0.5rem !important; }
  .radar-box { padding: 0.75rem 0.25rem !important; }
  .radar-val { font-size: 1.2rem !important; }
  .radar-lbl { font-size: 0.68rem !important; }
  .infographic-tabs { display: flex !important; flex-wrap: wrap !important; gap: 0.45rem !important; }
  .info-tab-btn { flex: 1 1 auto !important; justify-content: center !important; font-size: 0.76rem !important; padding: 0.45rem 0.65rem !important; white-space: nowrap !important; }
  .about-stats-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 1.25rem 1rem !important; }
  .leadership-grid { padding: 2rem 1.25rem !important; gap: 1.75rem !important; text-align: center !important; }
  .leader-img-frame { max-width: 280px !important; margin: 0 auto !important; }
  .leader-name { font-size: 1.75rem !important; }
  .leader-credentials-strip { grid-template-columns: 1fr !important; gap: 0.55rem !important; max-width: 380px !important; margin: 1.25rem auto 0 !important; text-align: left !important; }
  .leader-text-col .btn { width: 100% !important; max-width: 380px !important; margin: 0 auto !important; justify-content: center !important; }
  .timeline-container { padding-left: 1.75rem !important; margin: 2rem auto 0 !important; max-width: 580px !important; }
  .timeline-dot { left: calc(-1.75rem - 7px) !important; width: 12px !important; height: 12px !important; top: 0.5rem !important; }
  .timeline-content { padding: 1.25rem 1rem !important; }
  .values-grid { grid-template-columns: 1fr !important; gap: 1rem !important; }
  .value-card { padding: 1.5rem 1.25rem !important; }
  .cta-banner-card { padding: 2.25rem 1.25rem !important; }
  .cta-banner-content h2 { font-size: clamp(1.4rem, 4.5vw, 1.85rem) !important; }
  .cta-banner-content p { font-size: 0.92rem !important; margin-bottom: 1.5rem !important; }
  .cta-actions { flex-direction: column !important; width: 100% !important; max-width: 380px !important; margin: 0 auto !important; }
  .cta-actions .btn { width: 100% !important; justify-content: center !important; }

  .testimonials-grid { grid-template-columns: 1fr !important; }
  .blog-cards-grid { grid-template-columns: 1fr !important; }
  .stats-grid { grid-template-columns: 1fr 1fr !important; }
  .footer-grid { grid-template-columns: 1fr !important; }
  .values-grid { grid-template-columns: 1fr !important; }
  .team-grid { grid-template-columns: 1fr !important; }
  .footer-bottom { flex-direction: column; text-align: center; }
  /* Center Footer Quick Links and Services on Small Devices */
  .footer-col-links,
  .footer-col:has(.footer-links) {
    text-align: center !important;
  }
  .footer-col-links .footer-col-title,
  .footer-col:has(.footer-links) .footer-col-title {
    text-align: center !important;
  }
  .footer-col-links .footer-links,
  .footer-col:has(.footer-links) .footer-links {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    width: 100% !important;
  }
  .footer-col-links .footer-link,
  .footer-col:has(.footer-links) .footer-link {
    justify-content: center !important;
    text-align: center !important;
    width: auto !important;
  }
  .footer-col-links .footer-link:hover,
  .footer-col:has(.footer-links) .footer-link:hover {
    transform: translateY(-2px) !important;
  }
  /* Horizontally Center Footer Social Icons on Small Devices */
  .footer-socials {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 0.85rem !important;
    width: 100% !important;
    margin: 0 auto !important;
  }
  .form-row { grid-template-columns: 1fr !important; }
  .blog-grid { grid-template-columns: 1fr !important; }
  .form-grid { grid-template-columns: 1fr !important; }
  .comment-form-grid { grid-template-columns: 1fr !important; }
  /* Contact Page (<= 768px) */
  .contact-page-hero { padding: calc(68px + 2.25rem) 0 2rem !important; }
  .contact-hero-title { font-size: clamp(1.75rem, 5vw, 2.25rem) !important; margin: 0.75rem 0 !important; }
  .contact-hero-desc { font-size: 0.95rem !important; line-height: 1.55 !important; }
  .contact-page-body { padding: 2rem 0 3.75rem !important; }
  .contact-page-body .container { padding: 0 1.25rem !important; }
  .contact-grid { gap: 2.25rem !important; }
  .contact-info-title { font-size: 1.5rem !important; }
  .contact-info-desc { font-size: 0.925rem !important; margin-bottom: 1.5rem !important; }
  .contact-method-card { padding: 1.15rem 1.15rem !important; gap: 1rem !important; }
  .contact-trust-panel { padding: 1.35rem 1.15rem !important; margin-top: 1.5rem !important; gap: 0.85rem !important; }
  .contact-form-panel { padding: 2rem 1.35rem !important; border-radius: var(--radius-xl) !important; }
  .form-panel-title { font-size: 1.45rem !important; }
  .featured-card { grid-template-columns: 1fr !important; width: 100% !important; max-width: 100% !important; min-width: 0 !important; border-radius: var(--radius-lg) !important; }
  .featured-image-side { min-height: 200px !important; max-height: 280px !important; width: 100% !important; }
  .featured-content-side { padding: 1.5rem 1.25rem !important; width: 100% !important; max-width: 100% !important; min-width: 0 !important; box-sizing: border-box !important; }
  .featured-title { font-size: 1.35rem !important; line-height: 1.35 !important; margin-bottom: 0.75rem !important; }
  .featured-excerpt { font-size: 0.88rem !important; line-height: 1.6 !important; margin-bottom: 1.25rem !important; }
  .featured-footer { flex-direction: column !important; align-items: stretch !important; gap: 1rem !important; width: 100% !important; box-sizing: border-box !important; }
  .featured-author { width: 100% !important; min-width: 0 !important; }
  .featured-author .author-name-role { min-width: 0 !important; }
  .featured-author .author-role { white-space: normal !important; word-break: break-word !important; }
  .featured-read-btn { width: 100% !important; max-width: 100% !important; justify-content: center !important; margin: 0 !important; box-sizing: border-box !important; }
  .controls-panel { padding: 1.25rem !important; }
  .form-input-group { flex-direction: column !important; }
  .cookie-consent-inner { flex-direction: column; align-items: flex-start; gap: 1rem; }
  .cookie-actions { width: 100%; }
}

@media (max-width: 640px) {
  .hero-visual {
    max-width: 100% !important;
    padding: 0 0.25rem !important;
  }
  .hero-image-frame img {
    max-height: 250px !important;
  }
  .hero-float-badge {
    padding: 0.45rem 0.75rem !important;
    gap: 0.5rem !important;
  }
  .float-badge-icon {
    width: 30px !important;
    height: 30px !important;
  }
  .float-badge-num {
    font-size: 1rem !important;
  }
  .float-badge-label {
    font-size: 0.65rem !important;
  }
  .hero-float-badge.badge-tl {
    top: -8px !important;
    left: 2px !important;
  }
  .hero-float-badge.badge-br {
    bottom: -8px !important;
    right: 2px !important;
  }
  .hero-actions .btn {
    width: 100% !important;
    justify-content: center !important;
  }
  .process-steps {
    grid-template-columns: 1fr !important;
  }

  /* Services Small Devices */
  .services-hero { padding: 2.5rem 0 2rem !important; }
  .services-filter-slider-container {
    display: flex !important;
    align-items: center !important;
    gap: 0.45rem !important;
    margin-bottom: 2rem !important;
    padding: 0 0.25rem !important;
  }
  .services-filter-dock-wrapper {
    margin: 0 !important;
    padding: 4px 2px !important;
    display: flex !important;
    align-items: center !important;
  }
  .filter-slider-arrow {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    align-self: center !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .filter-slider-arrow svg {
    width: 15px !important;
    height: 15px !important;
  }
  .filter-tab-btn {
    padding: 0.5rem 0.85rem !important;
    font-size: 0.82rem !important;
    gap: 0.45rem !important;
  }
  .tab-count {
    height: 18px !important;
    min-width: 18px !important;
    font-size: 0.68rem !important;
    padding: 0 0.35rem !important;
  }
  .services-trust-row { gap: 0.5rem !important; }
  .trust-pill { font-size: 0.75rem !important; padding: 0.35rem 0.7rem !important; }
  .services-index-card { padding: 1.5rem 1rem !important; }
  .sic-topbar { margin-bottom: 1.1rem !important; }
  .sic-icon-box { width: 48px !important; height: 48px !important; }
  .sic-footer { flex-direction: column !important; align-items: stretch !important; gap: 0.75rem !important; text-align: center !important; }
  .sic-footer .btn { width: 100% !important; justify-content: center !important; }
  .doc-checklist-grid { grid-template-columns: 1fr !important; }
  .svc-process-timeline { grid-template-columns: 1fr !important; }
  .svc-hero-actions { flex-direction: column !important; width: 100% !important; }
  .svc-hero-actions .btn { width: 100% !important; justify-content: center !important; }

  /* Contact Page (<= 640px) */
  .contact-page-hero { padding: calc(68px + 1.75rem) 0 1.75rem !important; }
  .contact-hero-desc { font-size: 0.9rem !important; }
  .contact-grid { gap: 1.85rem !important; }
  .contact-methods { gap: 0.95rem !important; }
  .contact-method-card { padding: 1rem 1rem !important; gap: 0.85rem !important; }
  .contact-method-icon { width: 42px !important; height: 42px !important; min-width: 42px !important; }
  .contact-method-text h4 { font-size: 1.05rem !important; }
  .contact-trust-panel { padding: 1.2rem 1rem !important; }
  .contact-form-panel { padding: 1.75rem 1.15rem !important; }

  /* Tools / Tax Calculator Small Devices */
  .form-row-2 { grid-template-columns: 1fr !important; gap: 1rem !important; }
  .verdict-banner-box { padding: 1rem !important; gap: 0.85rem !important; }
  .verdict-icon { font-size: 1.85rem !important; }
  .verdict-title { font-size: 1.05rem !important; }
  .ca-callout-actions { flex-direction: column !important; width: 100% !important; }
  .ca-callout-actions .btn { width: 100% !important; justify-content: center !important; }
  .tax-regime-tags { gap: 0.4rem !important; }
  .tag-pill { font-size: 0.75rem !important; padding: 0.35rem 0.75rem !important; }

  /* Small Devices Navbar & Brand Header */
  .nav-container { padding: 0 0.85rem !important; gap: 0.6rem !important; }
  .brand-logo { min-width: 0 !important; max-width: calc(100% - 48px) !important; gap: 0.5rem !important; }
  .brand-logo img { width: 36px !important; height: 36px !important; }
  .brand-logo span { font-size: clamp(0.8rem, 3.8vw, 0.98rem) !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
  .hamburger-btn { display: flex !important; min-width: 38px !important; min-height: 38px !important; padding: 0.45rem !important; flex-shrink: 0 !important; margin-left: auto !important; }

  /* Blog Slider Small Devices */
  .blog-slider-arrow {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
  }
  .blog-slider-arrow svg {
    width: 15px !important;
    height: 15px !important;
  }
  .controls-panel { padding: 1.25rem 1rem !important; }

  /* Blog Cards & Engagement Bar Small Devices */
  .featured-post-section { padding: 1.5rem 0 2.25rem !important; }
  .featured-card {
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    border-radius: var(--radius-lg) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  .featured-image-side {
    width: 100% !important;
    min-height: 200px !important;
    max-height: 260px !important;
  }
  .featured-content-side {
    padding: 1.35rem 1.15rem !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  .featured-badge {
    margin-bottom: 0.85rem !important;
    font-size: 0.72rem !important;
    padding: 0.28rem 0.75rem !important;
  }
  .card-meta, .featured-meta {
    gap: 0.35rem 0.65rem !important;
    font-size: 0.75rem !important;
    line-height: 1.4 !important;
  }
  .featured-title {
    font-size: 1.25rem !important;
    line-height: 1.32 !important;
    margin-bottom: 0.65rem !important;
  }
  .featured-excerpt {
    font-size: 0.86rem !important;
    line-height: 1.55 !important;
    margin-bottom: 1.1rem !important;
  }
  .featured-footer {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 1rem !important;
    padding-top: 1rem !important;
    width: 100% !important;
  }
  .featured-author {
    width: 100% !important;
    min-width: 0 !important;
    gap: 0.65rem !important;
  }
  .featured-author .author-name-role {
    min-width: 0 !important;
  }
  .featured-author .author-role {
    white-space: normal !important;
    word-break: break-word !important;
  }
  .featured-read-btn {
    width: 100% !important;
    max-width: 100% !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0.75rem 1.25rem !important;
    font-size: 0.875rem !important;
    box-sizing: border-box !important;
  }
  .card-body { padding: 1.25rem 1rem !important; }
  .card-footer { gap: 0.5rem !important; }
  .card-author { gap: 0.5rem !important; }
  .author-thumb { width: 34px !important; height: 34px !important; }
  .card-author span, .author-name { font-size: 0.85rem !important; }
  .card-link-btn { font-size: 0.8rem !important; gap: 0.25rem !important; }

  .blog-engagement-bar {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding: 0.65rem 0.85rem !important;
    gap: 0.5rem !important;
    justify-content: space-between !important;
    margin: 1.5rem 0 2rem !important;
  }
  .blog-engagement-bar .like-btn {
    padding: 0.45rem 0.7rem !important;
    font-size: 0.82rem !important;
    gap: 0.35rem !important;
    flex-shrink: 0 !important;
  }
  .blog-engagement-bar .engagement-stat {
    font-size: 0.82rem !important;
    gap: 0.35rem !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
  }
  .blog-engagement-bar .engagement-divider {
    height: 18px !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
  }
  .blog-engagement-bar svg,
  .blog-engagement-bar .like-btn svg,
  .blog-engagement-bar .engagement-stat svg {
    width: 18px !important;
    height: 18px !important;
    max-width: 18px !important;
    max-height: 18px !important;
  }
}

@media (max-width: 480px) {
  .container { padding: 0 1rem !important; }
  .hero-headline { font-size: 1.75rem !important; }
  .section-title { font-size: 1.45rem !important; }
  .page-title { font-size: 1.65rem !important; }
  .services-title { font-size: 1.65rem !important; }
  .about-hero-title { font-size: 1.6rem !important; }
  .stats-grid { grid-template-columns: 1fr 1fr !important; gap: 1rem !important; }
  .btn { font-size: 0.875rem !important; padding: 0.7rem 1.4rem !important; }

  /* About Us Small Phones */
  .about-page-hero { padding: calc(68px + 2.5rem) 0 2rem !important; }
  .about-stats-grid { grid-template-columns: 1fr 1fr !important; gap: 0.75rem !important; }
  .about-stat-num { font-size: 1.8rem !important; }
  .about-stat-label { font-size: 0.72rem !important; }
  .leadership-grid { padding: 1.35rem 0.95rem !important; }
  .leader-name { font-size: 1.5rem !important; }
  .leader-img-frame { max-width: 220px !important; }
  .radar-metrics { grid-template-columns: repeat(3, 1fr) !important; gap: 0.4rem !important; }
  .radar-box { padding: 0.65rem 0.25rem !important; }
  .radar-val { font-size: 1.15rem !important; }
  .radar-lbl { font-size: 0.65rem !important; }
  .infographic-tabs { flex-wrap: wrap !important; }
  .info-tab-btn { flex: 1 1 auto !important; justify-content: center !important; font-size: 0.72rem !important; padding: 0.4rem 0.5rem !important; }
  .panel-body { padding: 1rem 0.85rem !important; }
  .panel-title { font-size: 0.68rem !important; }
  .panel-status-pill { font-size: 0.68rem !important; }
  .cta-banner-card { padding: 2rem 1.15rem !important; }

  /* Tools / Tax Calculator Small Phones */
  .calc-inputs-card,
  .calc-results-card { padding: 1.25rem 0.95rem !important; }
  .tax-amount-callout { font-size: 1.75rem !important; }
  .breakdown-item { font-size: 0.78rem !important; }
  .calc-card-header { margin-bottom: 1.25rem !important; }
  .currency-symbol { left: 0.75rem !important; }
  .input-with-symbol .form-input { padding-left: 2rem !important; font-size: 0.95rem !important; }

  /* Services Small Phones */
  .filter-slider-arrow {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    align-self: center !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .filter-slider-arrow svg {
    width: 14px !important;
    height: 14px !important;
  }
  .filter-tab-btn {
    padding: 0.45rem 0.72rem !important;
    font-size: 0.78rem !important;
    gap: 0.38rem !important;
  }
  .filter-tab-btn svg {
    width: 14px !important;
    height: 14px !important;
  }
  .service-detail-card,
  .ca-infographic-card { padding: 1.4rem 1rem !important; }
  .sdc-title { font-size: 1.35rem !important; }
  .sdc-pitch { font-size: 0.875rem !important; }
  .sdc-highlight-item { font-size: 0.825rem !important; }
  .ca-metric-row { gap: 0.5rem !important; }
  .ca-metric-badge { padding: 0.65rem 0.35rem !important; }
  .ca-metric-badge .m-val { font-size: 1.1rem !important; }
  .ca-metric-badge .m-lbl { font-size: 0.65rem !important; }
  .ca-track-step { font-size: 0.75rem !important; padding: 0.3rem 0.4rem !important; }

  /* Very Small Devices Navbar & Brand Header */
  .nav-container { padding: 0 0.65rem !important; gap: 0.45rem !important; }
  .brand-logo { min-width: 0 !important; max-width: calc(100% - 44px) !important; gap: 0.4rem !important; }
  .brand-logo img { width: 32px !important; height: 32px !important; }
  .brand-logo span { font-size: clamp(0.72rem, 3.4vw, 0.88rem) !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; font-weight: 700 !important; }
  .hamburger-btn { display: flex !important; min-width: 36px !important; min-height: 36px !important; padding: 0.35rem !important; flex-shrink: 0 !important; margin-left: auto !important; }
  .hamburger-btn span { width: 20px !important; }

  /* Blog Controls Very Small Devices */
  .controls-panel { padding: 1rem 0.75rem !important; }
  .blog-slider-arrow {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
  }
  .blog-slider-arrow svg {
    width: 13px !important;
    height: 13px !important;
  }
  .chip {
    padding: 0.45rem 0.95rem !important;
    font-size: 0.78rem !important;
  }

  /* Blog Small Phones */
  .featured-post-section { padding: 1.25rem 0 1.75rem !important; }
  .featured-card { border-radius: var(--radius-md) !important; width: 100% !important; max-width: 100% !important; }
  .featured-image-side { min-height: 175px !important; max-height: 220px !important; }
  .featured-content-side { padding: 1.15rem 0.95rem !important; width: 100% !important; max-width: 100% !important; }
  .card-meta, .featured-meta { font-size: 0.72rem !important; gap: 0.25rem 0.5rem !important; }
  .featured-title { font-size: 1.15rem !important; line-height: 1.3 !important; margin-bottom: 0.55rem !important; }
  .featured-excerpt { font-size: 0.825rem !important; line-height: 1.5 !important; margin-bottom: 0.9rem !important; }
  .featured-footer { padding-top: 0.9rem !important; gap: 0.85rem !important; width: 100% !important; }
  .featured-read-btn { padding: 0.7rem 1.15rem !important; font-size: 0.85rem !important; width: 100% !important; }
  .card-body { padding: 1rem 0.85rem !important; }
  .card-footer { gap: 0.4rem !important; }
  .author-thumb { width: 32px !important; height: 32px !important; }
  .card-author span, .author-name { font-size: 0.825rem !important; }

  .blog-engagement-bar {
    padding: 0.55rem 0.65rem !important;
    gap: 0.35rem !important;
  }
  .blog-engagement-bar .like-btn {
    padding: 0.4rem 0.55rem !important;
    font-size: 0.76rem !important;
    gap: 0.3rem !important;
  }
  .blog-engagement-bar .engagement-stat {
    font-size: 0.76rem !important;
    gap: 0.3rem !important;
  }
  .blog-engagement-bar .engagement-divider {
    height: 16px !important;
  }
  .blog-engagement-bar svg,
  .blog-engagement-bar .like-btn svg,
  .blog-engagement-bar .engagement-stat svg {
    width: 16px !important;
    height: 16px !important;
    max-width: 16px !important;
    max-height: 16px !important;
  }

  /* Contact Page (<= 480px) */
  .contact-page-body .container { padding: 0 1rem !important; }
  .contact-page-hero { padding: calc(68px + 1.25rem) 0 1.25rem !important; }
  .contact-hero-header .badge { font-size: 0.72rem !important; padding: 0.28rem 0.75rem !important; margin-bottom: 0.75rem !important; }
  .contact-hero-title { font-size: clamp(1.45rem, 6.2vw, 1.85rem) !important; line-height: 1.22 !important; margin: 0.5rem 0 !important; }
  .contact-hero-desc { font-size: 0.875rem !important; line-height: 1.5 !important; }
  .contact-page-body { padding: 1.25rem 0 3.5rem !important; }
  .contact-grid { gap: 1.5rem !important; }
  .contact-info-title { font-size: 1.35rem !important; margin-bottom: 0.35rem !important; }
  .contact-info-desc { font-size: 0.86rem !important; margin-bottom: 1rem !important; line-height: 1.5 !important; }
  .contact-methods { gap: 0.75rem !important; }
  .contact-method-card { padding: 0.95rem 0.85rem !important; gap: 0.75rem !important; border-radius: var(--radius-md) !important; }
  .contact-method-icon { width: 38px !important; height: 38px !important; min-width: 38px !important; border-radius: var(--radius-sm) !important; }
  .contact-method-icon svg { width: 18px !important; height: 18px !important; }
  .method-label { font-size: 0.7rem !important; letter-spacing: 0.04em !important; margin-bottom: 0.15rem !important; }
  .contact-method-text h4 { font-size: 0.96rem !important; margin-bottom: 0.2rem !important; line-height: 1.3 !important; }
  .method-sub { font-size: 0.75rem !important; line-height: 1.35 !important; }
  .live-status-pill { font-size: 0.7rem !important; padding: 0.12rem 0.45rem !important; }
  .office-address { font-size: 0.84rem !important; line-height: 1.45 !important; margin: 0.2rem 0 0.55rem !important; }
  .btn-direction { font-size: 0.75rem !important; padding: 0.35rem 0.65rem !important; }
  .contact-trust-panel { padding: 1rem 0.85rem !important; margin-top: 1.15rem !important; gap: 0.7rem !important; border-radius: var(--radius-lg) !important; }
  .trust-panel-title { font-size: 0.8rem !important; padding-bottom: 0.4rem !important; }
  .trust-item { font-size: 0.8rem !important; gap: 0.55rem !important; line-height: 1.4 !important; }
  .trust-icon { font-size: 1rem !important; }
  .contact-form-panel { padding: 1.35rem 0.9rem !important; border-radius: var(--radius-lg) !important; }
  .form-panel-header { margin-bottom: 1.15rem !important; }
  .form-badge { font-size: 0.72rem !important; padding: 0.25rem 0.65rem !important; margin-bottom: 0.5rem !important; }
  .form-panel-title { font-size: 1.25rem !important; margin-bottom: 0.35rem !important; }
  .form-panel-desc { font-size: 0.825rem !important; line-height: 1.45 !important; }
  .form-grid { gap: 0 !important; }
  .form-group { margin-bottom: 0.95rem !important; }
  .form-label { font-size: 0.82rem !important; margin-bottom: 0.35rem !important; }
  .form-control { padding: 0.75rem 0.85rem !important; font-size: 0.88rem !important; border-radius: var(--radius-sm) !important; }
  .form-select { padding-right: 2.25rem !important; }
  .select-chevron { right: 0.85rem !important; }
  .form-banner { padding: 0.75rem 0.95rem !important; font-size: 0.85rem !important; }
  .btn-submit-consultation { padding: 0.85rem 1rem !important; font-size: 0.925rem !important; }
  .btn-submit-consultation svg { width: 16px !important; height: 16px !important; }
  .form-privacy-note { font-size: 0.72rem !important; margin-top: 0.75rem !important; }
  #turnstileContainer { max-width: 100% !important; overflow: hidden !important; }
  #turnstileWidget { transform: scale(0.92); transform-origin: center center; }
}

@media (max-width: 360px) {
  .nav-container { padding: 0 0.4rem !important; gap: 0.35rem !important; }
  .brand-logo { max-width: calc(100% - 40px) !important; gap: 0.35rem !important; }
  .brand-logo img { width: 28px !important; height: 28px !important; }
  .brand-logo span { font-size: 0.72rem !important; }
  .hamburger-btn { min-width: 34px !important; min-height: 34px !important; padding: 0.3rem !important; }
  .controls-panel { padding: 0.85rem 0.5rem !important; }

  .blog-engagement-bar {
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 0.5rem 0.75rem !important;
    padding: 0.65rem 0.5rem !important;
  }
  .blog-engagement-bar .engagement-divider {
    display: none !important;
  }

  /* Featured Blog Card Very Small Phones */
  .featured-content-side { padding: 1rem 0.75rem !important; }
  .featured-image-side { min-height: 155px !important; max-height: 190px !important; }
  .featured-title { font-size: 1.05rem !important; }
  .card-meta, .featured-meta { font-size: 0.68rem !important; gap: 0.2rem 0.4rem !important; }
  .featured-read-btn { padding: 0.65rem 1rem !important; font-size: 0.825rem !important; }

  /* Contact Page (<= 360px) */
  .contact-page-body .container { padding: 0 0.75rem !important; }
  .contact-method-card { padding: 0.8rem 0.7rem !important; gap: 0.6rem !important; }
  .contact-method-icon { width: 34px !important; height: 34px !important; min-width: 34px !important; }
  .contact-method-icon svg { width: 16px !important; height: 16px !important; }
  .contact-method-text h4 { font-size: 0.88rem !important; }
  .contact-form-panel { padding: 1.15rem 0.75rem !important; }
  .btn-submit-consultation { font-size: 0.86rem !important; padding: 0.75rem 0.85rem !important; }
  #turnstileWidget { transform: scale(0.82); transform-origin: center center; }
}

/* ========================================================
   === PREMIUM AI CHATBOT CONCIERGE (Crystalline UI) ===
   ======================================================== */
.bn-chat-widget {
  position: fixed;
  bottom: 1.8rem;
  right: 1.8rem;
  z-index: 9999;
  font-family: inherit;
}

.bn-chat-launcher-wrap {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

/* Floating Greeting Pill */
.bn-chat-launcher-pill {
  position: absolute;
  right: calc(100% + 14px);
  bottom: 8px;
  background: var(--bg-card, rgba(255, 255, 255, 0.9));
  border: 1.5px solid var(--water-drop-border, rgba(16, 185, 129, 0.28));
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  padding: 0.65rem 1rem;
  border-radius: var(--radius-full, 9999px);
  box-shadow: 0 10px 30px -5px rgba(0, 0, 0, 0.12), 0 0 20px rgba(16, 185, 129, 0.15);
  display: flex;
  align-items: center;
  gap: 0.5rem;
  white-space: nowrap;
  font-size: 0.825rem;
  color: var(--text-primary, #0f172a);
  animation: bnPillFloat 3s ease-in-out infinite alternate;
  transform-origin: right center;
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;
  pointer-events: auto;
}

.bn-chat-launcher-pill.is-hidden {
  opacity: 0;
  visibility: hidden;
  transform: translateX(10px) scale(0.95);
  pointer-events: none;
}

.bn-chat-pill-sparkle {
  font-size: 1rem;
  animation: bnSparkleRotate 2s infinite linear;
}

.bn-chat-pill-text strong {
  color: var(--brand-green, #10b981);
  font-weight: 700;
}

.bn-chat-pill-dismiss {
  background: transparent;
  border: none;
  color: var(--text-muted, #64748b);
  cursor: pointer;
  padding: 0 0 0 0.35rem;
  font-size: 1.1rem;
  line-height: 1;
  display: flex;
  align-items: center;
  transition: color 0.2s ease;
}

.bn-chat-pill-dismiss:hover {
  color: var(--text-primary, #0f172a);
}

@keyframes bnPillFloat {
  0% { transform: translateY(0px); }
  100% { transform: translateY(-5px); }
}

@keyframes bnSparkleRotate {
  0% { transform: scale(1) rotate(0deg); }
  50% { transform: scale(1.15) rotate(15deg); }
  100% { transform: scale(1) rotate(0deg); }
}

/* Launcher Button */
.bn-chat-launcher {
  position: relative;
  width: 58px;
  height: 58px;
  border-radius: var(--radius-full, 9999px);
  background: linear-gradient(135deg, #10b981 0%, #059669 45%, #0284c7 100%);
  border: 1.5px solid rgba(255, 255, 255, 0.45);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 10px 30px -5px rgba(16, 185, 129, 0.45), 0 0 25px rgba(14, 165, 233, 0.3);
  transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
  outline: none;
}

.bn-chat-launcher:hover {
  transform: translateY(-3px) scale(1.05);
  box-shadow: 0 16px 36px -5px rgba(16, 185, 129, 0.55), 0 0 35px rgba(14, 165, 233, 0.45);
}

.bn-chat-launcher:active {
  transform: translateY(0px) scale(0.97);
}

.bn-chat-launcher-glow {
  position: absolute;
  inset: -3px;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.6), rgba(14, 165, 233, 0.6));
  z-index: -1;
  filter: blur(8px);
  opacity: 0.65;
  transition: opacity 0.3s ease;
}

.bn-chat-launcher-ping {
  position: absolute;
  top: 3px;
  right: 3px;
  width: 14px;
  height: 14px;
  background: #22c55e;
  border: 2.5px solid #ffffff;
  border-radius: 50%;
  box-shadow: 0 0 10px #22c55e;
}

.bn-chat-launcher-icons {
  position: relative;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.bn-chat-icon-open,
.bn-chat-icon-close {
  position: absolute;
  transition: opacity 0.25s ease, transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.bn-chat-icon-open {
  opacity: 1;
  transform: scale(1) rotate(0deg);
}

.bn-chat-icon-close {
  opacity: 0;
  transform: scale(0.5) rotate(-90deg);
}

.bn-chat-widget.is-open .bn-chat-icon-open {
  opacity: 0;
  transform: scale(0.5) rotate(90deg);
}

.bn-chat-widget.is-open .bn-chat-icon-close {
  opacity: 1;
  transform: scale(1) rotate(0deg);
}

.bn-chat-widget.is-open .bn-chat-launcher-ping {
  display: none;
}

.bn-chat-widget.is-open .bn-chat-launcher-pill {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

/* Chat Window Panel */
.bn-chat-window {
  position: fixed;
  bottom: 6rem;
  right: 1.8rem;
  width: 400px;
  height: 610px;
  max-height: calc(100vh - 120px);
  background: var(--bg-card, rgba(255, 255, 255, 0.92));
  backdrop-filter: blur(24px) saturate(180%);
  -webkit-backdrop-filter: blur(24px) saturate(180%);
  border: 1.5px solid var(--water-drop-border, rgba(16, 185, 129, 0.3));
  border-radius: 24px;
  box-shadow: 0 25px 65px -12px rgba(15, 23, 42, 0.25), 0 0 35px rgba(16, 185, 129, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.6);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transform: translateY(24px) scale(0.94);
  transform-origin: bottom right;
  transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1), transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.35s ease;
  z-index: 10000;
}

.bn-chat-widget.is-open .bn-chat-window {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
}

/* Header */
.bn-chat-header {
  padding: 1.15rem 1.25rem;
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.12) 0%, rgba(2, 132, 199, 0.08) 100%);
  border-bottom: 1.5px solid var(--water-drop-border, rgba(16, 185, 129, 0.2));
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
}

.bn-chat-header-identity {
  display: flex;
  align-items: center;
  gap: 0.85rem;
}

.bn-chat-avatar-wrap {
  position: relative;
}

.bn-chat-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: linear-gradient(135deg, #10b981 0%, #0284c7 100%);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 14px rgba(16, 185, 129, 0.35);
}

.bn-chat-status-dot {
  position: absolute;
  bottom: 0px;
  right: 0px;
  width: 11px;
  height: 11px;
  background: #22c55e;
  border: 2px solid #ffffff;
  border-radius: 50%;
  box-shadow: 0 0 6px #22c55e;
}

.bn-chat-header-meta {
  display: flex;
  flex-direction: column;
}

.bn-chat-title-row {
  display: flex;
  align-items: center;
  gap: 0.45rem;
}

.bn-chat-title {
  font-size: 0.925rem;
  font-weight: 700;
  margin: 0;
  color: var(--text-primary, #0f172a);
  line-height: 1.25;
}

.bn-chat-ai-badge {
  font-size: 0.65rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0.15rem 0.4rem;
  border-radius: 6px;
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.25), rgba(14, 165, 233, 0.25));
  border: 1px solid rgba(16, 185, 129, 0.4);
  color: var(--brand-green, #10b981);
}

.bn-chat-subtitle {
  font-size: 0.72rem;
  color: var(--text-muted, #64748b);
  margin-top: 0.15rem;
}

.bn-chat-header-actions {
  display: flex;
  align-items: center;
  gap: 0.35rem;
}

.bn-chat-tool-btn {
  background: transparent;
  border: none;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-muted, #64748b);
  cursor: pointer;
  transition: all 0.2s ease;
}

.bn-chat-tool-btn:hover {
  background: rgba(16, 185, 129, 0.12);
  color: var(--text-primary, #0f172a);
}

/* Messages Body */
.bn-chat-body {
  flex: 1;
  overflow-y: auto;
  padding: 1.15rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: rgba(16, 185, 129, 0.3) transparent;
}

.bn-chat-body::-webkit-scrollbar {
  width: 5px;
}

.bn-chat-body::-webkit-scrollbar-thumb {
  background: rgba(16, 185, 129, 0.3);
  border-radius: 10px;
}

/* Intro Card */
.bn-chat-intro-card {
  padding: 0.85rem 1rem;
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.08) 0%, rgba(14, 165, 233, 0.05) 100%);
  border: 1px solid var(--water-drop-border, rgba(16, 185, 129, 0.2));
  border-radius: 14px;
}

.bn-chat-intro-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--brand-green, #10b981);
  margin-bottom: 0.35rem;
}

.bn-chat-intro-text {
  font-size: 0.8rem;
  color: var(--text-secondary, #334155);
  line-height: 1.5;
  margin: 0;
}

/* Message Bubbles */
.bn-chat-messages {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}

.bn-chat-msg {
  display: flex;
  flex-direction: column;
  max-width: 86%;
  animation: bnMsgFadeIn 0.25s ease-out forwards;
}

.bn-chat-msg-bot {
  align-self: flex-start;
}

.bn-chat-msg-user {
  align-self: flex-end;
}

.bn-chat-bubble {
  padding: 0.8rem 1rem;
  border-radius: 16px;
  font-size: 0.875rem;
  line-height: 1.55;
  word-break: break-word;
}

.bn-chat-msg-bot .bn-chat-bubble {
  background: var(--bg-surface, rgba(240, 253, 250, 0.9));
  border: 1px solid var(--water-drop-border, rgba(16, 185, 129, 0.22));
  border-top-left-radius: 4px;
  color: var(--text-primary, #0f172a);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04);
}

.bn-chat-msg-user .bn-chat-bubble {
  background: linear-gradient(135deg, #059669 0%, #0284c7 100%);
  color: #ffffff !important;
  border-top-right-radius: 4px;
  box-shadow: 0 6px 18px rgba(16, 185, 129, 0.25);
}

.bn-chat-msg-user .bn-chat-bubble p,
.bn-chat-msg-user .bn-chat-bubble span,
.bn-chat-msg-user .bn-chat-bubble .bn-chat-user-text,
.bn-chat-msg-user .bn-chat-bubble * {
  color: #ffffff !important;
  font-weight: 500;
}

.bn-chat-bubble p {
  margin: 0 0 0.5rem 0;
}

.bn-chat-bubble p:last-child {
  margin-bottom: 0;
}

.bn-chat-bubble h3 {
  font-size: 0.95rem;
  font-weight: 700;
  margin: 0 0 0.45rem 0;
  color: var(--brand-green, #10b981);
}

.bn-chat-bubble ul,
.bn-chat-bubble ol {
  margin: 0.35rem 0;
  padding-left: 1.25rem;
}

.bn-chat-bubble li {
  margin-bottom: 0.25rem;
}

.bn-chat-bubble strong {
  font-weight: 700;
}

.bn-chat-bubble a {
  color: #0284c7;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.bn-chat-msg-user .bn-chat-bubble a {
  color: #ffffff;
}

.bn-chat-msg-time {
  font-size: 0.65rem;
  color: var(--text-muted, #94a3b8);
  margin-top: 0.3rem;
  padding: 0 0.35rem;
}

.bn-chat-msg-user .bn-chat-msg-time {
  text-align: right;
}

/* Action Links inside Bot messages */
.bn-chat-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-top: 0.65rem;
}

.bn-chat-action-link {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.45rem 0.85rem;
  border-radius: var(--radius-full, 9999px);
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.15) 0%, rgba(2, 132, 199, 0.15) 100%);
  border: 1px solid var(--brand-green, #10b981);
  color: var(--brand-green, #10b981) !important;
  font-size: 0.775rem;
  font-weight: 600;
  text-decoration: none !important;
  transition: all 0.2s ease;
}

.bn-chat-action-link:hover {
  background: linear-gradient(135deg, #10b981 0%, #0284c7 100%);
  color: #ffffff !important;
  transform: translateY(-1.5px);
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
}

@keyframes bnHighlightPulse {
  0% {
    box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7);
    outline: 2px solid #10b981;
  }
  50% {
    box-shadow: 0 0 0 14px rgba(16, 185, 129, 0.25);
    outline: 2px solid #10b981;
  }
  100% {
    box-shadow: 0 0 0 0 rgba(16, 185, 129, 0);
    outline: 2px solid transparent;
  }
}

.bn-highlight-pulse {
  animation: bnHighlightPulse 2s cubic-bezier(0.25, 1, 0.5, 1) forwards !important;
  border-color: #10b981 !important;
}

/* Typing Indicator */
.bn-chat-typing {
  display: none;
  align-items: center;
  gap: 0.5rem;
  padding: 0.35rem 0;
  animation: bnMsgFadeIn 0.2s ease-out;
}

.bn-chat-typing.is-visible {
  display: flex;
}

.bn-chat-typing-bubble {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 0.6rem 0.85rem;
  background: var(--bg-surface, rgba(240, 253, 250, 0.9));
  border: 1px solid var(--water-drop-border, rgba(16, 185, 129, 0.2));
  border-radius: 14px;
  border-top-left-radius: 4px;
}

.bn-typing-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--brand-green, #10b981);
  animation: bnTypingDot 1.4s infinite ease-in-out both;
}

.bn-typing-dot:nth-child(1) { animation-delay: -0.32s; }
.bn-typing-dot:nth-child(2) { animation-delay: -0.16s; }
.bn-typing-dot:nth-child(3) { animation-delay: 0s; }

.bn-typing-label {
  font-size: 0.72rem;
  color: var(--text-muted, #94a3b8);
  font-style: italic;
}

@keyframes bnTypingDot {
  0%, 80%, 100% { transform: scale(0); opacity: 0.4; }
  40% { transform: scale(1); opacity: 1; }
}

@keyframes bnMsgFadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Suggestions Chips */
.bn-chat-suggestions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-top: 0.25rem;
  padding-top: 0.5rem;
  border-top: 1px dashed var(--border, rgba(16, 185, 129, 0.18));
}

.bn-chip {
  background: var(--bg-card, rgba(255, 255, 255, 0.75));
  border: 1px solid var(--water-drop-border, rgba(16, 185, 129, 0.25));
  border-radius: var(--radius-full, 9999px);
  padding: 0.4rem 0.75rem;
  font-size: 0.76rem;
  font-weight: 500;
  color: var(--text-secondary, #334155);
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  text-align: left;
}

.bn-chip:hover {
  background: rgba(16, 185, 129, 0.12);
  border-color: var(--brand-green, #10b981);
  color: var(--brand-green, #10b981);
  transform: translateY(-1.5px);
  box-shadow: 0 4px 10px rgba(16, 185, 129, 0.15);
}

/* Chat Footer / Input Form */
.bn-chat-footer {
  padding: 0.85rem 1rem 0.75rem;
  background: var(--bg-card, rgba(255, 255, 255, 0.85));
  border-top: 1.5px solid var(--water-drop-border, rgba(16, 185, 129, 0.2));
  flex-shrink: 0;
}

.bn-chat-form {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: var(--bg-surface, rgba(248, 250, 252, 0.9));
  border: 1.5px solid var(--water-drop-border, rgba(16, 185, 129, 0.25));
  border-radius: var(--radius-full, 9999px);
  padding: 0.35rem 0.45rem 0.35rem 1rem;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.bn-chat-form:focus-within {
  border-color: var(--brand-green, #10b981);
  box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.18);
}

.bn-chat-input {
  flex: 1;
  background: transparent;
  border: none;
  font-size: 0.85rem;
  color: var(--text-primary, #0f172a);
  outline: none;
  min-width: 0;
}

.bn-chat-input::placeholder {
  color: var(--text-muted, #94a3b8);
  font-size: 0.825rem;
}

.bn-chat-send-btn {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: linear-gradient(135deg, #10b981 0%, #0284c7 100%);
  border: none;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}

.bn-chat-send-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  transform: none !important;
}

.bn-chat-send-btn:not(:disabled):hover {
  transform: scale(1.08);
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.35);
}

.bn-chat-disclaimer {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.45rem;
  font-size: 0.65rem;
  color: var(--text-muted, #94a3b8);
}

/* ========================================================
   === DARK MODE CYBERPUNK GLASSMORPHISM FOR CHATBOT ===
   ======================================================== */
[data-theme="dark"] .bn-chat-launcher-pill {
  background: rgba(15, 23, 42, 0.92);
  border-color: rgba(56, 189, 248, 0.35);
  box-shadow: 0 10px 30px -5px rgba(0, 0, 0, 0.6), 0 0 25px rgba(6, 182, 212, 0.25);
  color: #f1f5f9;
}

[data-theme="dark"] .bn-chat-launcher-pill .bn-chat-pill-dismiss {
  color: #94a3b8;
}

[data-theme="dark"] .bn-chat-launcher-pill .bn-chat-pill-dismiss:hover {
  color: #f8fafc;
}

[data-theme="dark"] .bn-chat-launcher {
  background: linear-gradient(135deg, #059669 0%, #0284c7 50%, #3b82f6 100%);
  border-color: rgba(56, 189, 248, 0.45);
  box-shadow: 0 10px 30px -5px rgba(0, 0, 0, 0.6), 0 0 30px rgba(6, 182, 212, 0.4);
}

[data-theme="dark"] .bn-chat-launcher:hover {
  box-shadow: 0 16px 40px -5px rgba(0, 0, 0, 0.7), 0 0 45px rgba(6, 182, 212, 0.55);
}

[data-theme="dark"] .bn-chat-launcher-ping {
  border-color: #0f172a;
}

[data-theme="dark"] .bn-chat-window {
  background: rgba(10, 15, 29, 0.94);
  border-color: rgba(56, 189, 248, 0.35);
  box-shadow: 0 25px 70px -10px rgba(0, 0, 0, 0.85), 0 0 40px rgba(6, 182, 212, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

[data-theme="dark"] .bn-chat-header {
  background: linear-gradient(135deg, rgba(6, 182, 212, 0.12) 0%, rgba(16, 185, 129, 0.08) 100%);
  border-bottom-color: rgba(56, 189, 248, 0.25);
}

[data-theme="dark"] .bn-chat-status-dot {
  border-color: #0b1120;
}

[data-theme="dark"] .bn-chat-intro-card {
  background: rgba(15, 23, 42, 0.7);
  border-color: rgba(56, 189, 248, 0.25);
}

[data-theme="dark"] .bn-chat-intro-text {
  color: #cbd5e1;
}

[data-theme="dark"] .bn-chat-msg-bot .bn-chat-bubble {
  background: rgba(17, 24, 39, 0.9);
  border-color: rgba(56, 189, 248, 0.25);
  color: #e2e8f0;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .bn-chat-msg-bot .bn-chat-bubble a {
  color: #38bdf8;
}

[data-theme="dark"] .bn-chat-msg-user .bn-chat-bubble {
  background: linear-gradient(135deg, #10b981 0%, #0284c7 100%);
  color: #ffffff !important;
  box-shadow: 0 6px 20px rgba(6, 182, 212, 0.25);
}

[data-theme="dark"] .bn-chat-msg-user .bn-chat-bubble p,
[data-theme="dark"] .bn-chat-msg-user .bn-chat-bubble span,
[data-theme="dark"] .bn-chat-msg-user .bn-chat-bubble .bn-chat-user-text,
[data-theme="dark"] .bn-chat-msg-user .bn-chat-bubble * {
  color: #ffffff !important;
  font-weight: 500;
}

[data-theme="dark"] .bn-chat-typing-bubble {
  background: rgba(17, 24, 39, 0.9);
  border-color: rgba(56, 189, 248, 0.25);
}

[data-theme="dark"] .bn-chat-typing-dot {
  background: #38bdf8;
}

[data-theme="dark"] .bn-chat-suggestions {
  border-top-color: rgba(56, 189, 248, 0.2);
}

[data-theme="dark"] .bn-chip {
  background: rgba(30, 41, 59, 0.75);
  border-color: rgba(56, 189, 248, 0.25);
  color: #94a3b8;
}

[data-theme="dark"] .bn-chip:hover {
  background: rgba(6, 182, 212, 0.18);
  border-color: #38bdf8;
  color: #38bdf8;
  box-shadow: 0 4px 12px rgba(6, 182, 212, 0.2);
}

[data-theme="dark"] .bn-chat-footer {
  background: rgba(10, 15, 29, 0.94);
  border-top-color: rgba(56, 189, 248, 0.25);
}

[data-theme="dark"] .bn-chat-form {
  background: rgba(15, 23, 42, 0.9);
  border-color: rgba(56, 189, 248, 0.3);
}

[data-theme="dark"] .bn-chat-form:focus-within {
  border-color: #38bdf8;
  box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.2);
}

[data-theme="dark"] .bn-chat-input {
  color: #f8fafc;
}

[data-theme="dark"] .bn-chat-action-link {
  background: rgba(6, 182, 212, 0.15);
  border-color: rgba(56, 189, 248, 0.4);
  color: #38bdf8 !important;
}

[data-theme="dark"] .bn-chat-action-link:hover {
  background: linear-gradient(135deg, #10b981 0%, #0284c7 100%);
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(6, 182, 212, 0.4);
}

/* ========================================================
   === RESPONSIVE DESIGN FOR AI CHATBOT ===
   ======================================================== */
@media (max-width: 520px) {
  .bn-chat-widget {
    bottom: 1.25rem;
    right: 1.25rem;
  }

  .bn-chat-launcher {
    width: 52px;
    height: 52px;
  }

  .bn-chat-launcher-pill {
    display: none !important;
  }

  .bn-chat-window {
    top: 1rem;
    bottom: 1rem;
    left: 1rem;
    right: 1rem;
    width: auto;
    height: auto;
    max-height: none;
    border-radius: 20px;
    transform-origin: bottom center;
  }

  .back-to-top {
    bottom: 5.25rem !important;
    right: 1.25rem !important;
    width: 40px !important;
    height: 40px !important;
  }
}

