/* =========================================================
   Stratboost Web Development Landing Page
   Premium navy, blue and indigo theme
   ========================================================= */

:root {
  --sb-accent: #4f46e5;
  --sb-accent-dark: #3730a3;
  --sb-accent-deep: #1d4ed8;
  --sb-accent-blue: #2563eb;
  --sb-accent-violet: #6d28d9;
  --sb-accent-soft: #f2f4ff;
  --sb-accent-ice: #f8f9ff;

  --sb-gradient: linear-gradient(135deg, #1d4ed8 0%, #4f46e5 52%, #6d28d9 100%);
  --sb-gradient-dark: linear-gradient(135deg, #0f172a 0%, #111827 42%, #312e81 100%);
  --sb-gradient-soft: linear-gradient(135deg, rgba(37, 99, 235, 0.09), rgba(79, 70, 229, 0.10), rgba(109, 40, 217, 0.07));

  --sb-charcoal: #111827;
  --sb-charcoal-soft: #1e293b;
  --sb-charcoal-light: #312e81;

  --sb-text: #111827;
  --sb-text-soft: #5f6678;
  --sb-text-muted: #7b8195;

  --sb-bg: #ffffff;
  --sb-bg-soft: #f8f9ff;
  --sb-card: #ffffff;
  --sb-border: #e3e7fb;
  --sb-border-strong: #d5daf3;

  --sb-shadow: 0 18px 42px rgba(17, 24, 39, 0.08);
  --sb-shadow-strong: 0 28px 70px rgba(17, 24, 39, 0.14);
  --sb-shadow-accent: 0 18px 44px rgba(79, 70, 229, 0.24);

  --sb-radius: 24px;
  --sb-radius-sm: 16px;
}

/* =========================================================
   Base
   ========================================================= */

html {
  scroll-behavior: smooth;
}

html,
body {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
  background: var(--sb-bg) !important;
}

body.solar-landing-page {
  color: var(--sb-text) !important;
  background: #ffffff !important;
}

body.solar-landing-page .preloader {
  display: none !important;
}

body.solar-landing-page .nk-app-root,
body.solar-landing-page .nk-pages,
body.solar-landing-page .nk-header,
body.solar-landing-page .nk-footer,
body.solar-landing-page .nk-banner,
body.solar-landing-page .nk-section {
  width: 100% !important;
  max-width: 100% !important;
}

body.solar-landing-page .nk-app-root,
body.solar-landing-page .nk-pages,
body.solar-landing-page .nk-banner,
body.solar-landing-page .nk-section {
  background: #ffffff !important;
}

body.solar-landing-page img,
body.solar-landing-page video {
  max-width: 100% !important;
}

body.solar-landing-page a {
  text-decoration: none !important;
}

body.solar-landing-page p,
body.solar-landing-page li,
body.solar-landing-page label,
body.solar-landing-page .small,
body.solar-landing-page .text-gray-600,
body.solar-landing-page .text-gray-700,
body.solar-landing-page .text-gray-800 {
  color: var(--sb-text-soft) !important;
}

body.solar-landing-page h1,
body.solar-landing-page h2,
body.solar-landing-page h3,
body.solar-landing-page h4,
body.solar-landing-page h5,
body.solar-landing-page h6,
body.solar-landing-page .h1,
body.solar-landing-page .h2,
body.solar-landing-page .h3,
body.solar-landing-page .h4,
body.solar-landing-page .h5,
body.solar-landing-page .h6 {
  color: var(--sb-text) !important;
  letter-spacing: -0.025em !important;
}

body.solar-landing-page .container {
  width: 100% !important;
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 18px !important;
  padding-right: 18px !important;
}

body.solar-landing-page .row {
  --bs-gutter-x: 1.5rem;
}

body.solar-landing-page .card,
body.solar-landing-page .nk-video,
body.solar-landing-page .nk-cta-wrap,
body.solar-landing-page .rounded-4 {
  border-radius: var(--sb-radius) !important;
}

body.solar-landing-page .card {
  border: 1px solid var(--sb-border) !important;
  background: var(--sb-card) !important;
  box-shadow: var(--sb-shadow) !important;
}

body.solar-landing-page .card-body {
  position: relative !important;
}

body.solar-landing-page .card-body p:last-child {
  margin-bottom: 0 !important;
}

body.solar-landing-page .bg-primary-100 {
  background: var(--sb-accent-soft) !important;
}

body.solar-landing-page .border-dashed {
  border-style: dashed !important;
  border-width: 2px !important;
  border-color: var(--sb-border-strong) !important;
}

body.solar-landing-page .nk-mask {
  display: none !important;
}

body.solar-landing-page .text-primary {
  color: var(--sb-accent-deep) !important;
}

body.webdev-modal-open {
  overflow: hidden !important;
}

/* =========================================================
   Header
   ========================================================= */

body.solar-landing-page .nk-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 1200 !important;
  background: rgba(255, 255, 255, 0.94) !important;
  border-bottom: 1px solid rgba(227, 231, 251, 0.95) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  overflow: visible !important;
}

body.solar-landing-page .nk-header-main {
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

body.solar-landing-page .nk-header-wrap {
  position: relative !important;
  min-height: 82px !important;
  overflow: visible !important;
}

body.solar-landing-page .nk-header-logo .logo-wrap {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 2px !important;
  min-height: 54px !important;
  overflow: visible !important;
}

body.solar-landing-page .nk-header-logo .logo-wrap strong {
  color: var(--sb-charcoal) !important;
  font-weight: 900 !important;
  letter-spacing: -0.04em !important;
  line-height: 1 !important;
}

body.solar-landing-page .nk-header-logo .logo-wrap span {
  color: var(--sb-text-soft) !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em !important;
}

body.solar-landing-page .nk-header-menu {
  align-items: center !important;
}

body.solar-landing-page .nk-nav {
  gap: 0.25rem !important;
}

body.solar-landing-page .nk-nav-link {
  color: var(--sb-charcoal) !important;
  font-weight: 700 !important;
  padding: 0.8rem 0.95rem !important;
  border-radius: 999px !important;
  transition: all 0.2s ease !important;
}

body.solar-landing-page .nk-nav-link:hover,
body.solar-landing-page .nk-nav-link:focus {
  color: var(--sb-accent-deep) !important;
  background: rgba(79, 70, 229, 0.09) !important;
}

body.solar-landing-page .nk-header-action {
  position: relative !important;
  z-index: 1206 !important;
}

body.solar-landing-page .navbar-toggle {
  width: 48px !important;
  height: 48px !important;
  border-radius: 14px !important;
  border-color: rgba(17, 24, 39, 0.14) !important;
  color: var(--sb-charcoal) !important;
  background: #ffffff !important;
}

/* =========================================================
   Buttons
   ========================================================= */

body.solar-landing-page .btn {
  border-radius: 14px !important;
  font-weight: 800 !important;
  min-height: 52px !important;
  padding: 0.85rem 1.25rem !important;
  box-shadow: none !important;
  transition: all 0.2s ease !important;
}

body.solar-landing-page .btn-sm {
  min-height: 42px !important;
  padding: 0.6rem 0.8rem !important;
  border-radius: 12px !important;
  font-size: 0.9rem !important;
}

body.solar-landing-page .btn-primary,
body.solar-landing-page .text-bg-primary,
body.solar-landing-page .progress-bar {
  background: var(--sb-gradient) !important;
  border-color: transparent !important;
  color: #ffffff !important;
}

body.solar-landing-page .btn-primary:hover,
body.solar-landing-page .btn-primary:focus {
  background: linear-gradient(135deg, #1e40af 0%, #4338ca 55%, #5b21b6 100%) !important;
  border-color: transparent !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
  box-shadow: var(--sb-shadow-accent) !important;
}

body.solar-landing-page .btn-outline-primary {
  border: 1.5px solid rgba(79, 70, 229, 0.24) !important;
  background: #ffffff !important;
  color: var(--sb-charcoal) !important;
}

body.solar-landing-page .btn-outline-primary:hover,
body.solar-landing-page .btn-outline-primary:focus {
  border-color: var(--sb-accent) !important;
  color: var(--sb-charcoal) !important;
  background: rgba(79, 70, 229, 0.08) !important;
  transform: translateY(-1px) !important;
}

body.solar-landing-page .btn-white {
  background: #ffffff !important;
  border-color: #ffffff !important;
  color: var(--sb-charcoal) !important;
}

body.solar-landing-page .btn-white:hover,
body.solar-landing-page .btn-white:focus {
  background: var(--sb-accent-soft) !important;
  border-color: var(--sb-accent-soft) !important;
  color: var(--sb-charcoal) !important;
}

body.solar-landing-page .btn-outline-white {
  border-color: rgba(255, 255, 255, 0.62) !important;
  color: #ffffff !important;
  background: transparent !important;
}

body.solar-landing-page .btn-outline-white:hover,
body.solar-landing-page .btn-outline-white:focus {
  background: rgba(255, 255, 255, 0.12) !important;
  border-color: rgba(255, 255, 255, 0.86) !important;
  color: #ffffff !important;
}

/* =========================================================
   Hero
   ========================================================= */

body.solar-landing-page .nk-pages {
  padding-top: 102px !important;
}

body.solar-landing-page .nk-banner {
  padding-top: 52px !important;
  padding-bottom: 30px !important;
  background:
    radial-gradient(circle at 8% 8%, rgba(37, 99, 235, 0.07), transparent 30%),
    radial-gradient(circle at 92% 12%, rgba(79, 70, 229, 0.06), transparent 28%),
    #ffffff !important;
}

body.solar-landing-page .nk-banner-wrap {
  padding-top: 0 !important;
}

body.solar-landing-page .nk-banner-content {
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.solar-landing-page .nk-banner-content > .fs-14 {
  display: inline-block !important;
  color: var(--sb-accent-deep) !important;
  letter-spacing: 0.02em !important;
  margin-top: 0 !important;
  margin-bottom: 14px !important;
}

body.solar-landing-page .nk-banner-content h1.display-6 {
  margin-top: 0 !important;
}

body.solar-landing-page .display-6 {
  font-size: clamp(2.3rem, 6vw, 4.35rem) !important;
  line-height: 1.04 !important;
  font-weight: 900 !important;
  margin-bottom: 16px !important;
}

body.solar-landing-page .nk-banner-content .fs-20 {
  font-size: clamp(1rem, 2.7vw, 1.25rem) !important;
  line-height: 1.65 !important;
  color: var(--sb-text-soft) !important;
}

body.solar-landing-page .nk-banner-content ul.list-unstyled {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.solar-landing-page .nk-banner-content ul.list-unstyled li {
  width: 100% !important;
  justify-content: flex-start !important;
  text-align: left !important;
  font-size: 1rem !important;
  line-height: 1.5 !important;
}

body.solar-landing-page .nk-banner-content .icon.ni-check-circle-fill {
  color: var(--sb-accent-deep) !important;
}

body.solar-landing-page .nk-banner .card {
  position: relative !important;
  z-index: 2 !important;
}

body.solar-landing-page .nk-banner .card-body {
  padding: 24px !important;
}

body.solar-landing-page .nk-banner #quote-form {
  background: #ffffff !important;
}

/* =========================================================
   Paid traffic conversion upgrades
   ========================================================= */

body.webdev-landing-page .webdev-hero-proof {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  justify-content: center !important;
}

body.webdev-landing-page .webdev-hero-proof span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 36px !important;
  padding: 8px 12px !important;
  border-radius: 999px !important;
  background: var(--sb-gradient-soft) !important;
  border: 1px solid rgba(79, 70, 229, 0.15) !important;
  color: var(--sb-charcoal) !important;
  font-size: 0.88rem !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

body.webdev-landing-page .webdev-hero-note {
  max-width: 560px !important;
}

body.webdev-landing-page .webdev-quote-card {
  border: 1.5px solid rgba(79, 70, 229, 0.18) !important;
  box-shadow: 0 30px 80px rgba(17, 24, 39, 0.12) !important;
}

body.webdev-landing-page .webdev-confidence-box {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  padding: 16px !important;
  border-radius: 18px !important;
  background: var(--sb-gradient-soft) !important;
  border: 1px solid rgba(79, 70, 229, 0.16) !important;
}

body.webdev-landing-page .webdev-confidence-box strong {
  color: var(--sb-charcoal) !important;
  font-size: 0.98rem !important;
  line-height: 1.35 !important;
}

body.webdev-landing-page .webdev-confidence-box span {
  color: var(--sb-text-soft) !important;
  font-size: 0.92rem !important;
  line-height: 1.55 !important;
}

body.webdev-landing-page .webdev-trust-strip {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 16px !important;
  padding: 18px !important;
  border-radius: 24px !important;
  background: var(--sb-gradient-dark) !important;
  box-shadow: var(--sb-shadow-strong) !important;
}

body.webdev-landing-page .webdev-trust-strip > div {
  padding: 16px !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.07) !important;
  border: 1px solid rgba(255, 255, 255, 0.10) !important;
}

body.webdev-landing-page .webdev-trust-strip strong {
  display: block !important;
  color: #ffffff !important;
  font-weight: 900 !important;
  margin-bottom: 6px !important;
}

body.webdev-landing-page .webdev-trust-strip span {
  display: block !important;
  color: rgba(255, 255, 255, 0.76) !important;
  font-size: 0.94rem !important;
  line-height: 1.55 !important;
}

/* =========================================================
   Forms
   ========================================================= */

body.solar-landing-page .solar-quote-form {
  position: relative !important;
}

body.solar-landing-page .solar-quote-form .progress {
  background: #e8ebfb !important;
  border-radius: 999px !important;
  overflow: hidden !important;
}

body.solar-landing-page .solar-quote-form .progress-bar {
  transition: width 0.25s ease !important;
}

body.solar-landing-page .form-label {
  color: var(--sb-text) !important;
  font-weight: 800 !important;
  margin-bottom: 0.6rem !important;
}

body.solar-landing-page .form-control,
body.solar-landing-page .form-select,
body.solar-landing-page textarea.form-control {
  border: 1.5px solid var(--sb-border-strong) !important;
  background: #ffffff !important;
  color: var(--sb-text) !important;
  border-radius: 14px !important;
  min-height: 54px !important;
  padding: 0.9rem 1rem !important;
  box-shadow: none !important;
}

body.solar-landing-page textarea.form-control {
  min-height: 120px !important;
  resize: vertical !important;
}

body.solar-landing-page .form-control::placeholder,
body.solar-landing-page .form-select::placeholder,
body.solar-landing-page textarea.form-control::placeholder {
  color: #9aa0b5 !important;
}

body.solar-landing-page .form-control:focus,
body.solar-landing-page .form-select:focus,
body.solar-landing-page textarea.form-control:focus {
  border-color: var(--sb-accent) !important;
  box-shadow: 0 0 0 4px rgba(79, 70, 229, 0.15) !important;
}

body.solar-landing-page .quote-step {
  width: 100% !important;
}

body.solar-landing-page .quote-step.d-none {
  display: none !important;
}

body.solar-landing-page .quote-step.is-active {
  display: block !important;
}

body.solar-landing-page label.form-check.card {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  gap: 10px !important;
  width: 100% !important;
  min-height: 92px !important;
  padding: 16px 16px !important;
  border-radius: 16px !important;
  border: 1.5px solid var(--sb-border-strong) !important;
  background: #ffffff !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

body.solar-landing-page label.form-check.card:hover {
  border-color: var(--sb-accent) !important;
  transform: translateY(-1px) !important;
}

body.solar-landing-page label.form-check.card .form-check-input {
  margin: 0 !important;
  display: block !important;
  flex: 0 0 auto !important;
  accent-color: var(--sb-accent) !important;
}

body.solar-landing-page label.form-check.card .form-check-label {
  display: block !important;
  width: 100% !important;
  color: var(--sb-text) !important;
  font-weight: 700 !important;
  margin: 0 !important;
  text-align: center !important;
}

body.solar-landing-page label.form-check.card:has(input:checked) {
  border-color: var(--sb-accent) !important;
  background: rgba(79, 70, 229, 0.07) !important;
  box-shadow: 0 0 0 4px rgba(79, 70, 229, 0.12) !important;
}

body.solar-landing-page .solar-quote-form .small {
  line-height: 1.6 !important;
}

body.solar-landing-page .solar-quote-form .d-flex.gap-2,
body.solar-landing-page .solar-quote-form .d-flex.gap-2.mb-3 {
  display: flex !important;
  flex-direction: column-reverse !important;
  gap: 12px !important;
}

body.solar-landing-page .solar-quote-form .d-flex.gap-2 .btn,
body.solar-landing-page .solar-quote-form .d-flex.gap-2.mb-3 .btn {
  width: 100% !important;
  margin: 0 !important;
}

/* =========================================================
   Section headings and shared content
   ========================================================= */

body.solar-landing-page .nk-section {
  padding-top: 76px !important;
  padding-bottom: 76px !important;
  background: #ffffff !important;
}

body.solar-landing-page .nk-section-head {
  margin-bottom: 44px !important;
}

body.solar-landing-page .nk-section-subtitle,
body.solar-landing-page .nk-banner-content > .fs-14,
body.solar-landing-page .card-body > .fs-14.text-uppercase,
body.solar-landing-page .text-uppercase.text-primary,
body.solar-landing-page span.fs-14.text-uppercase.text-primary.fw-semibold,
body.solar-landing-page .nk-banner-content span.fs-14,
body.solar-landing-page .card-body span.fs-14 {
  color: var(--sb-accent-deep) !important;
}

body.solar-landing-page .nk-section-subtitle {
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.03em !important;
}

body.solar-landing-page .nk-section-title {
  font-size: clamp(1.9rem, 4vw, 3rem) !important;
  line-height: 1.14 !important;
  margin-bottom: 12px !important;
}

body.solar-landing-page .nk-section-text {
  color: var(--sb-text-soft) !important;
  font-size: 1.05rem !important;
  line-height: 1.7 !important;
}

body.solar-landing-page .media-circle {
  border-radius: 999px !important;
}

body.solar-landing-page .media-border {
  border: 1.5px solid rgba(79, 70, 229, 0.20) !important;
  background: #ffffff !important;
}

body.solar-landing-page .media.media-lg.media-middle.media-circle {
  background: var(--sb-accent-soft) !important;
  color: var(--sb-accent-deep) !important;
}

body.solar-landing-page .media.media-lg.media-middle.media-circle .icon {
  color: var(--sb-accent-deep) !important;
}

body.solar-landing-page .nk-brand-section .card,
body.solar-landing-page .nk-testimonial-section .card,
body.solar-landing-page .nk-cta-section .card,
body.solar-landing-page .nk-video-section .card {
  height: 100% !important;
}

/* =========================================================
   Dark blocks and CTA areas
   ========================================================= */

body.solar-landing-page .nk-cta-img-wrap,
body.solar-landing-page .nk-video,
body.solar-landing-page .nk-cta-wrap {
  box-shadow: var(--sb-shadow-strong) !important;
}

body.solar-landing-page .nk-cta-img-wrap.bg-primary-gradient,
body.solar-landing-page .nk-cta-wrap.bg-primary-gradient,
body.solar-landing-page .bg-primary-gradient {
  background: var(--sb-gradient-dark) !important;
  color: #ffffff !important;
}

body.solar-landing-page .is-theme,
body.solar-landing-page .is-theme h1,
body.solar-landing-page .is-theme h2,
body.solar-landing-page .is-theme h3,
body.solar-landing-page .is-theme h4,
body.solar-landing-page .is-theme h5,
body.solar-landing-page .is-theme h6,
body.solar-landing-page .is-theme p,
body.solar-landing-page .is-theme li,
body.solar-landing-page .is-theme span {
  color: #ffffff !important;
}

body.solar-landing-page .nk-cta-wrap .h1,
body.solar-landing-page .nk-cta-wrap p,
body.solar-landing-page .nk-cta-wrap h2,
body.solar-landing-page .nk-cta-wrap h3 {
  color: #ffffff !important;
}

body.solar-landing-page .nk-cta-wrap .bg-white.text-dark {
  background: #ffffff !important;
  color: var(--sb-text) !important;
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.16) !important;
}

body.solar-landing-page .nk-cta-wrap .bg-white.text-dark h3,
body.solar-landing-page .nk-cta-wrap .bg-white.text-dark p,
body.solar-landing-page .nk-cta-wrap .bg-white.text-dark span {
  color: var(--sb-text) !important;
}

body.solar-landing-page .nk-cta-wrap .bg-white.text-dark p {
  color: var(--sb-text-soft) !important;
}

/* =========================================================
   Case study section
   ========================================================= */

body.solar-landing-page #case-study {
  background: #ffffff !important;
}

body.solar-landing-page #case-study .row.align-items-center {
  align-items: center !important;
}

body.solar-landing-page #case-study .nk-video {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  border: 1px solid var(--sb-border) !important;
  background: var(--sb-bg-soft) !important;
}

body.solar-landing-page #case-study .nk-video-inner,
body.solar-landing-page #case-study .nk-video-content {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}

body.solar-landing-page #case-study .nk-video-content > div {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 30px 18px !important;
}

body.solar-landing-page .solar-video-embed {
  position: relative !important;
  width: min(100%, 292px) !important;
  aspect-ratio: 9 / 16 !important;
  margin: 0 auto !important;
  padding: 14px 9px 11px !important;
  border-radius: 38px !important;
  overflow: hidden !important;
  background: linear-gradient(180deg, #312e81 0%, #1e1b4b 18%, #111827 100%) !important;
  border: 2px solid rgba(79, 70, 229, 0.50) !important;
  box-shadow:
    0 0 0 1px rgba(37, 99, 235, 0.16),
    0 0 28px rgba(79, 70, 229, 0.20),
    0 24px 56px rgba(17, 24, 39, 0.28) !important;
}

body.solar-landing-page .solar-video-embed::before {
  content: "" !important;
  position: absolute !important;
  inset: -10px !important;
  border-radius: 48px !important;
  background: radial-gradient(circle, rgba(79, 70, 229, 0.16) 0%, rgba(79, 70, 229, 0) 68%) !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

body.solar-landing-page .solar-video-embed::after {
  content: "" !important;
  position: absolute !important;
  top: 8px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 78px !important;
  height: 7px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.16) !important;
  z-index: 3 !important;
  pointer-events: none !important;
}

body.solar-landing-page .solar-video-embed iframe,
body.solar-landing-page .solar-video-embed video {
  position: relative !important;
  z-index: 2 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  border-radius: 29px !important;
  background: #000000 !important;
  overflow: hidden !important;
  object-fit: cover !important;
}

body.solar-landing-page .solar-video-embed-main {
  width: min(100%, 292px) !important;
}

body.solar-landing-page #case-study .small.text-center {
  max-width: 340px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* =========================================================
   Website style cards
   ========================================================= */

body.solar-landing-page #website-styles {
  background: #ffffff !important;
}

body.solar-landing-page .webdev-template-group {
  position: relative !important;
}

body.solar-landing-page .webdev-template-card {
  overflow: hidden !important;
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease !important;
}

body.solar-landing-page .webdev-template-card:hover {
  transform: translateY(-4px) !important;
  border-color: var(--sb-accent) !important;
  box-shadow: var(--sb-shadow-strong) !important;
}

body.solar-landing-page .webdev-template-card .card-img-top {
  display: block !important;
  width: 100% !important;
  height: 190px !important;
  object-fit: cover !important;
  object-position: top center !important;
  border-radius: var(--sb-radius) var(--sb-radius) 0 0 !important;
  background: var(--sb-accent-soft) !important;
  border-bottom: 1px solid var(--sb-border) !important;
}

body.solar-landing-page .webdev-template-card .card-body {
  display: flex !important;
  flex-direction: column !important;
  min-height: 205px !important;
}

body.solar-landing-page .webdev-template-card .small {
  line-height: 1.55 !important;
}

body.solar-landing-page .webdev-template-card .d-flex.gap-2 {
  margin-top: auto !important;
}

body.solar-landing-page .webdev-template-card .btn {
  white-space: nowrap !important;
}

/* =========================================================
   Website style modal
   ========================================================= */

body.solar-landing-page .webdev-style-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 1400 !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 22px !important;
}

body.solar-landing-page .webdev-style-modal.is-open {
  display: flex !important;
}

body.solar-landing-page .webdev-style-modal-backdrop {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(15, 23, 42, 0.70) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

body.solar-landing-page .webdev-style-modal-dialog {
  position: relative !important;
  z-index: 2 !important;
  width: min(100%, 1020px) !important;
  max-height: calc(100vh - 44px) !important;
  overflow: auto !important;
  border-radius: 26px !important;
  background: #ffffff !important;
  border: 1px solid rgba(227, 231, 251, 0.96) !important;
  box-shadow: 0 34px 90px rgba(17, 24, 39, 0.34) !important;
}

body.solar-landing-page .webdev-style-modal-grid {
  display: grid !important;
  grid-template-columns: 1.05fr 0.85fr !important;
  gap: 0 !important;
}

body.solar-landing-page .webdev-style-modal-image-wrap {
  min-height: 420px !important;
  max-height: calc(100vh - 44px) !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  padding: 18px !important;
  background:
    linear-gradient(135deg, rgba(248, 249, 255, 0.96), rgba(242, 244, 255, 0.96)),
    #f8f9ff !important;
  border-right: 1px solid var(--sb-border) !important;
  overflow: auto !important;
}

body.solar-landing-page .webdev-style-modal-image {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: top center !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 42px rgba(17, 24, 39, 0.12) !important;
}

body.solar-landing-page .webdev-style-modal-content {
  padding: 34px !important;
}

body.solar-landing-page .webdev-style-modal-box {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  padding: 16px !important;
  border-radius: 18px !important;
  background: var(--sb-accent-ice) !important;
  border: 1px solid var(--sb-border) !important;
}

body.solar-landing-page .webdev-style-modal-box strong {
  color: var(--sb-charcoal) !important;
  font-weight: 900 !important;
}

body.solar-landing-page .webdev-style-modal-box span {
  color: var(--sb-text-soft) !important;
  line-height: 1.55 !important;
}

body.solar-landing-page .webdev-modal-close {
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 5 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(15, 23, 42, 0.92) !important;
  color: #ffffff !important;
  font-size: 26px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  box-shadow: 0 12px 28px rgba(17, 24, 39, 0.22) !important;
}

/* =========================================================
   Mobile quote form modal
   ========================================================= */

body.webdev-landing-page .webdev-quote-card .webdev-modal-close {
  display: none !important;
}

body.webdev-quote-form-open::before {
  content: "" !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 1298 !important;
  background: rgba(15, 23, 42, 0.70) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

@media (max-width: 991.98px) {
  body.webdev-landing-page .webdev-quote-card {
    display: none !important;
  }

  body.webdev-landing-page .webdev-quote-card.is-mobile-open {
    position: fixed !important;
    top: 50% !important;
    left: 14px !important;
    right: 14px !important;
    z-index: 1305 !important;
    display: block !important;
    max-height: calc(100vh - 28px) !important;
    overflow: auto !important;
    transform: translateY(-50%) !important;
    border-radius: 24px !important;
    box-shadow: 0 34px 90px rgba(17, 24, 39, 0.34) !important;
  }

  body.webdev-landing-page .webdev-quote-card.is-mobile-open .webdev-modal-close {
    display: inline-flex !important;
  }
}

/* =========================================================
   How it works
   ========================================================= */

body.solar-landing-page #how-it-works {
  background: #ffffff !important;
}

body.solar-landing-page #how-it-works .nk-cta-img-wrap {
  padding: 14px !important;
  border-radius: 26px !important;
}

body.solar-landing-page #how-it-works .nk-cta-img-wrap > .rounded-4 {
  background: rgba(255, 255, 255, 0.94) !important;
  padding: 16px !important;
  border-radius: 22px !important;
}

body.solar-landing-page #how-it-works .nk-cta-img-wrap .card {
  box-shadow: none !important;
  border-color: rgba(227, 231, 251, 0.95) !important;
}

body.solar-landing-page #how-it-works .gap.gy-5,
body.solar-landing-page #how-it-works .gap.gy-lg-6 {
  display: flex !important;
  flex-direction: column !important;
  gap: 26px !important;
}

body.solar-landing-page .media-group .media-text p {
  line-height: 1.65 !important;
}

/* =========================================================
   Pricing and included sections
   ========================================================= */

body.solar-landing-page #pricing {
  background: #ffffff !important;
}

body.solar-landing-page #pricing .card {
  transition: transform 0.22s ease, box-shadow 0.22s ease !important;
}

body.solar-landing-page #pricing .card:hover {
  transform: translateY(-4px) !important;
  box-shadow: var(--sb-shadow-strong) !important;
}

body.solar-landing-page #pricing .bg-primary-gradient {
  box-shadow: var(--sb-shadow-strong) !important;
}

body.solar-landing-page #pricing .bg-primary-gradient .btn-white {
  color: var(--sb-charcoal) !important;
}

body.solar-landing-page #pricing .list-unstyled li,
body.solar-landing-page .nk-section .list-unstyled li {
  line-height: 1.55 !important;
}

/* =========================================================
   Mobile sticky CTA
   ========================================================= */

body.webdev-landing-page .webdev-mobile-sticky-cta {
  display: none !important;
}

@media (max-width: 991.98px) {
  body.webdev-landing-page {
    padding-bottom: 92px !important;
  }

  body.webdev-landing-page .webdev-mobile-sticky-cta {
    position: fixed !important;
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    z-index: 1250 !important;
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    border: 1px solid rgba(227, 231, 251, 0.96) !important;
    box-shadow: 0 18px 50px rgba(17, 24, 39, 0.20) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
  }

  body.webdev-landing-page .webdev-mobile-sticky-text {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
  }

  body.webdev-landing-page .webdev-mobile-sticky-text strong {
    color: var(--sb-charcoal) !important;
    font-size: 0.86rem !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
  }

  body.webdev-landing-page .webdev-mobile-sticky-text span {
    color: var(--sb-text-soft) !important;
    font-size: 0.76rem !important;
    line-height: 1.2 !important;
  }

  body.webdev-landing-page .webdev-mobile-sticky-actions {
    display: flex !important;
    gap: 8px !important;
  }

  body.webdev-landing-page .webdev-mobile-sticky-actions .btn {
    width: auto !important;
    min-height: 42px !important;
    padding: 0.66rem 0.78rem !important;
    font-size: 0.82rem !important;
    border-radius: 13px !important;
    white-space: nowrap !important;
  }
}

/* =========================================================
   Footer
   ========================================================= */

body.solar-landing-page .nk-footer {
  background: var(--sb-gradient-dark) !important;
  color: rgba(255, 255, 255, 0.88) !important;
  margin-top: 32px !important;
}

body.solar-landing-page .nk-footer h3,
body.solar-landing-page .nk-footer h4,
body.solar-landing-page .nk-footer p,
body.solar-landing-page .nk-footer li,
body.solar-landing-page .nk-footer a,
body.solar-landing-page .nk-footer .nk-footer-copyright-text {
  color: rgba(255, 255, 255, 0.84) !important;
}

body.solar-landing-page .nk-footer a:hover,
body.solar-landing-page .nk-footer a:focus {
  color: #c7d2fe !important;
}

body.solar-landing-page .nk-footer-top,
body.solar-landing-page .nk-footer-bottom {
  border-color: rgba(255, 255, 255, 0.08) !important;
}

body.solar-landing-page .nk-footer .title {
  font-weight: 800 !important;
  color: #ffffff !important;
  margin-bottom: 12px !important;
}

/* =========================================================
   Scroll to top
   ========================================================= */

body.solar-landing-page .scroll-top {
  background: var(--sb-gradient) !important;
  color: #ffffff !important;
  border: none !important;
  box-shadow: 0 14px 30px rgba(79, 70, 229, 0.25) !important;
}

/* =========================================================
   Mobile nav
   ========================================================= */

@media (max-width: 991.98px) {
  body.solar-landing-page .container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  body.solar-landing-page .nk-section {
    padding-top: 58px !important;
    padding-bottom: 58px !important;
  }

  body.solar-landing-page .nk-header-wrap {
    min-height: 72px !important;
  }

  body.solar-landing-page .nk-pages {
    padding-top: 84px !important;
  }

  body.solar-landing-page .nk-banner {
    padding-top: 28px !important;
  }

  body.solar-landing-page .nk-banner-content {
    padding-top: 4px !important;
  }

  body.solar-landing-page .nk-banner-content,
  body.solar-landing-page .nk-section-head,
  body.solar-landing-page .nk-block-head-content {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.solar-landing-page .nk-banner-content .d-flex,
  body.solar-landing-page .nk-section .d-flex {
    justify-content: center !important;
  }

  body.solar-landing-page .nk-banner .card-body {
    padding: 20px !important;
  }

  body.solar-landing-page .display-6 {
    font-size: 2.35rem !important;
  }

  body.solar-landing-page .nk-section-title {
    font-size: 2rem !important;
  }

  body.solar-landing-page .nk-banner-content ul.list-unstyled {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.solar-landing-page .nk-banner-content ul.list-unstyled li {
    justify-content: flex-start !important;
    text-align: left !important;
  }

  body.solar-landing-page .btn,
  body.solar-landing-page .solar-quote-form .btn {
    width: 100% !important;
  }

  body.solar-landing-page .solar-quote-form .d-flex.gap-2,
  body.solar-landing-page .solar-quote-form .d-flex.gap-2.mb-3,
  body.solar-landing-page .nk-banner-content .d-flex.flex-column.flex-sm-row {
    flex-direction: column !important;
  }

  body.solar-landing-page .scroll-top {
    right: 16px !important;
    bottom: 104px !important;
  }

  body.solar-landing-page .nk-header-menu {
    display: none !important;
    position: absolute !important;
    top: calc(100% + 10px) !important;
    left: 16px !important;
    right: 16px !important;
    width: auto !important;
    max-width: none !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    z-index: 1205 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    overflow: visible !important;
  }

  body.solar-landing-page .nk-header-menu.is-open {
    display: block !important;
  }

  body.solar-landing-page .nk-header-menu.is-open > div {
    display: block !important;
    background: rgba(255, 255, 255, 0.98) !important;
    border: 1px solid var(--sb-border) !important;
    border-radius: 20px !important;
    box-shadow: var(--sb-shadow-strong) !important;
    padding: 16px !important;
    overflow: hidden !important;
  }

  body.solar-landing-page .nk-header-menu > div {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    max-height: none !important;
    height: auto !important;
    transform: none !important;
    position: static !important;
  }

  body.solar-landing-page .nk-header-menu .nk-nav {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }

  body.solar-landing-page .nk-header-menu .nk-nav-item {
    width: 100% !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }

  body.solar-landing-page .nk-header-menu .nk-nav-link {
    display: block !important;
    width: 100% !important;
    padding: 14px !important;
    border-radius: 12px !important;
    color: var(--sb-charcoal) !important;
    background: transparent !important;
    position: static !important;
    inset: auto !important;
    margin: 0 !important;
  }

  body.solar-landing-page .nk-header-menu .nk-nav-link:hover,
  body.solar-landing-page .nk-header-menu .nk-nav-link:focus {
    background: rgba(79, 70, 229, 0.09) !important;
    color: var(--sb-charcoal) !important;
  }

  body.solar-landing-page .nk-navbar-btn {
    display: block !important;
    width: 100% !important;
    margin-top: 10px !important;
    background: transparent !important;
  }

  body.solar-landing-page .nk-navbar-btn .nk-btn-group,
  body.solar-landing-page .nk-navbar-btn li,
  body.solar-landing-page .nk-navbar-btn .btn {
    width: 100% !important;
  }

  body.webdev-landing-page .webdev-trust-strip {
    grid-template-columns: 1fr !important;
  }

  body.webdev-landing-page .webdev-hero-note {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.solar-landing-page .webdev-style-modal {
    padding: 14px !important;
  }

  body.solar-landing-page .webdev-style-modal-dialog {
    max-height: calc(100vh - 28px) !important;
    border-radius: 22px !important;
  }

  body.solar-landing-page .webdev-style-modal-grid {
    grid-template-columns: 1fr !important;
  }

  body.solar-landing-page .webdev-style-modal-image-wrap {
    min-height: 260px !important;
    max-height: 48vh !important;
    border-right: 0 !important;
    border-bottom: 1px solid var(--sb-border) !important;
    padding: 12px !important;
  }

  body.solar-landing-page .webdev-style-modal-image {
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
  }

  body.solar-landing-page .webdev-style-modal-content {
    padding: 24px !important;
  }
}

/* =========================================================
   Desktop layout
   ========================================================= */

@media (min-width: 992px) {
  body.solar-landing-page .nk-banner {
    min-height: auto !important;
  }

  body.solar-landing-page .nk-banner-content {
    max-width: 575px !important;
  }

  body.solar-landing-page .nk-banner .card {
    margin-left: auto !important;
  }

  body.solar-landing-page .nk-section-head.text-center {
    max-width: 780px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.solar-landing-page .nk-banner-content ul.list-unstyled {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.webdev-landing-page .webdev-hero-proof {
    justify-content: flex-start !important;
  }

  body.solar-landing-page .nk-header-menu {
    display: flex !important;
    position: static !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    width: auto !important;
    z-index: auto !important;
  }

  body.solar-landing-page .nk-header-menu > div {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    position: static !important;
    overflow: visible !important;
  }

  body.solar-landing-page #case-study .row.align-items-center > .col-lg-6:first-child {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }

  body.solar-landing-page #case-study .row.align-items-center > .col-lg-6:first-child .nk-video {
    max-width: 520px !important;
  }
}

/* =========================================================
   Tablet and small desktop adjustments
   ========================================================= */

@media (max-width: 1199.98px) {
  body.solar-landing-page .webdev-template-card .card-img-top {
    height: 170px !important;
  }

  body.solar-landing-page .webdev-template-card .card-body {
    min-height: 215px !important;
  }
}

/* =========================================================
   Small mobile
   ========================================================= */

@media (max-width: 767.98px) {
  body.solar-landing-page .container {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  body.solar-landing-page .display-6 {
    font-size: 2.15rem !important;
  }

  body.solar-landing-page .nk-section-title {
    font-size: 1.82rem !important;
  }

  body.solar-landing-page .nk-section-head {
    margin-bottom: 34px !important;
  }

  body.solar-landing-page .card-body {
    padding: 22px !important;
  }

  body.solar-landing-page #case-study .nk-video-content > div {
    padding: 22px 12px !important;
  }

  body.solar-landing-page .solar-video-embed,
  body.solar-landing-page .solar-video-embed-main {
    width: min(100%, 272px) !important;
    border-radius: 34px !important;
    padding: 12px 8px 10px !important;
  }

  body.solar-landing-page .solar-video-embed iframe,
  body.solar-landing-page .solar-video-embed video {
    border-radius: 25px !important;
  }

  body.solar-landing-page .webdev-template-card .card-img-top {
    height: 210px !important;
  }

  body.solar-landing-page .webdev-template-card .card-body {
    min-height: auto !important;
  }

  body.solar-landing-page .webdev-template-card .d-flex.gap-2 {
    flex-direction: column !important;
  }

  body.solar-landing-page .webdev-template-card .btn {
    width: 100% !important;
  }

  body.solar-landing-page #how-it-works .nk-cta-img-wrap {
    padding: 10px !important;
  }

  body.solar-landing-page #how-it-works .nk-cta-img-wrap > .rounded-4 {
    padding: 10px !important;
  }

  body.solar-landing-page .nk-cta-wrap .p-4,
  body.solar-landing-page .nk-cta-wrap .p-lg-5 {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  body.webdev-landing-page .webdev-hero-proof {
    gap: 8px !important;
  }

  body.webdev-landing-page .webdev-hero-proof span {
    width: 100% !important;
    justify-content: center !important;
  }
}

/* =========================================================
   Extra small mobile
   ========================================================= */

@media (max-width: 420px) {
  body.solar-landing-page .display-6 {
    font-size: 1.98rem !important;
  }

  body.solar-landing-page .nk-section-title {
    font-size: 1.68rem !important;
  }

  body.solar-landing-page .solar-video-embed,
  body.solar-landing-page .solar-video-embed-main {
    width: min(100%, 250px) !important;
  }

  body.solar-landing-page .webdev-template-card .card-img-top {
    height: 185px !important;
  }

  body.webdev-landing-page .webdev-mobile-sticky-cta {
    grid-template-columns: 1fr !important;
  }

  body.webdev-landing-page .webdev-mobile-sticky-actions {
    width: 100% !important;
  }

  body.webdev-landing-page .webdev-mobile-sticky-actions .btn {
    width: 50% !important;
  }
}

/* =========================================================
   Icon bullet alignment inside cards
   ========================================================= */

body.solar-landing-page .card .list-unstyled li.d-flex.align-items-start {
  display: grid !important;
  grid-template-columns: 22px 1fr !important;
  align-items: start !important;
  justify-content: start !important;
  gap: 12px !important;
  text-align: left !important;
}

body.solar-landing-page .card .list-unstyled li.d-flex.align-items-start .icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  margin: 2px 0 0 0 !important;
  font-size: 0.9rem !important;
  line-height: 1 !important;
}

body.solar-landing-page .card .list-unstyled li.d-flex.align-items-start span {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  line-height: 1.55 !important;
  text-align: left !important;
}

@media (max-width: 767.98px) {
  body.solar-landing-page .card .list-unstyled li.d-flex.align-items-start {
    grid-template-columns: 20px 1fr !important;
    gap: 10px !important;
  }

  body.solar-landing-page .card .list-unstyled li.d-flex.align-items-start .icon {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    font-size: 0.82rem !important;
  }
}

/* =========================================================
   Header logo size fix
   ========================================================= */

body.webdev-landing-page .nk-header-logo .logo-wrap {
  display: flex !important;
  align-items: center !important;
  height: 46px !important;
  max-width: 190px !important;
  overflow: hidden !important;
}

body.webdev-landing-page .nk-header-logo .logo-wrap img {
  display: block !important;
  width: auto !important;
  height: 42px !important;
  max-height: 42px !important;
  max-width: 190px !important;
  object-fit: contain !important;
}

@media (max-width: 991.98px) {
  body.webdev-landing-page .nk-header-logo .logo-wrap {
    height: 40px !important;
    max-width: 165px !important;
  }

  body.webdev-landing-page .nk-header-logo .logo-wrap img {
    height: 36px !important;
    max-height: 36px !important;
    max-width: 165px !important;
  }
}

/* =========================================================
   Mobile-only horizontal sliders for Website Styles
   ========================================================= */

@media (max-width: 991.98px) {
  #website-styles .webdev-template-group > .row {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 16px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scroll-padding-left: 16px !important;
    padding: 0 16px 12px !important;
    margin-left: -16px !important;
    margin-right: -16px !important;
    -webkit-overflow-scrolling: touch !important;
  }

  #website-styles .webdev-template-group > .row::-webkit-scrollbar {
    display: none !important;
  }

  #website-styles .webdev-template-group > .row {
    scrollbar-width: none !important;
  }

  #website-styles .webdev-template-group > .row > [class*="col-"] {
    flex: 0 0 82% !important;
    max-width: 82% !important;
    scroll-snap-align: start !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  #website-styles .webdev-template-card {
    height: 100% !important;
  }

  #website-styles .webdev-template-card img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
  }

  #website-styles .webdev-template-group::after {
    content: "Swipe to view more styles" !important;
    display: block !important;
    margin-top: 10px !important;
    text-align: center !important;
    font-size: 14px !important;
    color: #6b7280 !important;
  }
}

@media (max-width: 575.98px) {
  #website-styles .webdev-template-group > .row > [class*="col-"] {
    flex-basis: 86% !important;
    max-width: 86% !important;
  }
}

/* =========================================================
   Quote modal safety fix
   ========================================================= */

@media (max-width: 991.98px) {
  body.webdev-quote-form-open #quote-form.webdev-quote-card.is-mobile-open {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: fixed !important;
    top: 50% !important;
    left: 14px !important;
    right: 14px !important;
    z-index: 1305 !important;
    max-height: calc(100vh - 28px) !important;
    overflow: auto !important;
    transform: translateY(-50%) !important;
  }
}


/* Force modal close X to sit perfectly centred */
body.solar-landing-page .webdev-modal-close {
  position: absolute !important;
  padding: 0 !important;
  text-indent: -9999px !important;
  overflow: hidden !important;
  line-height: 0 !important;
}

body.solar-landing-page .webdev-modal-close::after {
  content: "×" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -65%) !important;
  text-indent: 0 !important;
  color: #ffffff !important;
  font-size: 28px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
}

/* =========================================================
   Renergy before and after video
   ========================================================= */

body.webdev-landing-page .webdev-case-video-card {
  display: grid !important;
  grid-template-columns: 1fr 320px !important;
  align-items: center !important;
  gap: 28px !important;
  padding: 24px !important;
  border-radius: 28px !important;
  background: var(--sb-gradient-dark) !important;
  box-shadow: var(--sb-shadow-strong) !important;
  overflow: hidden !important;
  position: relative !important;
}

body.webdev-landing-page .webdev-case-video-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(circle at 15% 15%, rgba(37, 99, 235, 0.22), transparent 34%),
    radial-gradient(circle at 90% 20%, rgba(79, 70, 229, 0.20), transparent 30%) !important;
  pointer-events: none !important;
}

body.webdev-landing-page .webdev-case-video-copy,
body.webdev-landing-page .webdev-case-video-frame {
  position: relative !important;
  z-index: 2 !important;
}

body.webdev-landing-page .webdev-case-video-copy {
  padding: 10px !important;
}

body.webdev-landing-page .webdev-case-video-copy h3,
body.webdev-landing-page .webdev-case-video-copy p,
body.webdev-landing-page .webdev-case-video-copy span {
  color: #ffffff !important;
}

body.webdev-landing-page .webdev-case-video-copy h3 {
  max-width: 620px !important;
}

body.webdev-landing-page .webdev-case-video-copy p {
  max-width: 620px !important;
  color: rgba(255, 255, 255, 0.78) !important;
  line-height: 1.7 !important;
}

body.webdev-landing-page .webdev-case-video-frame {
  width: 100% !important;
  max-width: 300px !important;
  margin-left: auto !important;
  padding: 12px !important;
  border-radius: 34px !important;
  background: rgba(255, 255, 255, 0.10) !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  box-shadow: 0 24px 56px rgba(0, 0, 0, 0.22) !important;
}

body.webdev-landing-page .webdev-case-video {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 9 / 16 !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: #000000 !important;
  object-fit: cover !important;
  overflow: hidden !important;
}

@media (max-width: 991.98px) {
  body.webdev-landing-page .webdev-case-video-card {
    grid-template-columns: 1fr !important;
    text-align: center !important;
    gap: 24px !important;
    padding: 22px !important;
  }

  body.webdev-landing-page .webdev-case-video-copy h3,
  body.webdev-landing-page .webdev-case-video-copy p {
    max-width: 100% !important;
  }

  body.webdev-landing-page .webdev-case-video-frame {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 280px !important;
  }
}

@media (max-width: 420px) {
  body.webdev-landing-page .webdev-case-video-card {
    padding: 18px !important;
    border-radius: 24px !important;
  }

  body.webdev-landing-page .webdev-case-video-frame {
    max-width: 250px !important;
    border-radius: 30px !important;
  }

  body.webdev-landing-page .webdev-case-video {
    border-radius: 22px !important;
  }
}

/* Stop Renergy case study video from being cropped */
body.webdev-landing-page .webdev-case-video {
  aspect-ratio: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

/* =========================================================
   Renergy before and after video with central play button
   ========================================================= */

body.webdev-landing-page .webdev-case-video-card {
  display: grid !important;
  grid-template-columns: 1fr 320px !important;
  align-items: center !important;
  gap: 28px !important;
  padding: 24px !important;
  border-radius: 28px !important;
  background: var(--sb-gradient-dark) !important;
  box-shadow: var(--sb-shadow-strong) !important;
  overflow: hidden !important;
  position: relative !important;
}

body.webdev-landing-page .webdev-case-video-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(circle at 15% 15%, rgba(37, 99, 235, 0.22), transparent 34%),
    radial-gradient(circle at 90% 20%, rgba(79, 70, 229, 0.20), transparent 30%) !important;
  pointer-events: none !important;
}

body.webdev-landing-page .webdev-case-video-copy,
body.webdev-landing-page .webdev-case-video-frame {
  position: relative !important;
  z-index: 2 !important;
}

body.webdev-landing-page .webdev-case-video-copy {
  padding: 10px !important;
}

body.webdev-landing-page .webdev-case-video-copy h3,
body.webdev-landing-page .webdev-case-video-copy p,
body.webdev-landing-page .webdev-case-video-copy span {
  color: #ffffff !important;
}

body.webdev-landing-page .webdev-case-video-copy h3 {
  max-width: 620px !important;
}

body.webdev-landing-page .webdev-case-video-copy p {
  max-width: 620px !important;
  color: rgba(255, 255, 255, 0.78) !important;
  line-height: 1.7 !important;
}

body.webdev-landing-page .webdev-case-video-frame {
  width: 100% !important;
  max-width: 300px !important;
  margin-left: auto !important;
  padding: 12px !important;
  border-radius: 34px !important;
  background: rgba(255, 255, 255, 0.10) !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  box-shadow: 0 24px 56px rgba(0, 0, 0, 0.22) !important;
}

body.webdev-landing-page .webdev-case-video {
  position: relative !important;
  width: 100% !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  background: #000000 !important;
}

body.webdev-landing-page .webdev-case-video-media {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 620px !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: #000000 !important;
  object-fit: contain !important;
}

body.webdev-landing-page .webdev-case-video-play {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  z-index: 5 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 76px !important;
  height: 76px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(15, 23, 42, 0.78) !important;
  color: #ffffff !important;
  cursor: pointer !important;
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.34) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  transition:
    transform 0.2s ease,
    background 0.2s ease,
    opacity 0.2s ease !important;
}

body.webdev-landing-page .webdev-case-video-play:hover,
body.webdev-landing-page .webdev-case-video-play:focus {
  transform: translate(-50%, -50%) scale(1.06) !important;
  background: rgba(15, 23, 42, 0.88) !important;
}

body.webdev-landing-page .webdev-case-video-play-icon {
  display: block !important;
  width: 0 !important;
  height: 0 !important;
  margin-left: 5px !important;
  border-top: 14px solid transparent !important;
  border-bottom: 14px solid transparent !important;
  border-left: 22px solid #ffffff !important;
}

body.webdev-landing-page .webdev-case-video.is-playing .webdev-case-video-play {
  opacity: 0 !important;
  pointer-events: none !important;
}

@media (max-width: 991.98px) {
  body.webdev-landing-page .webdev-case-video-card {
    grid-template-columns: 1fr !important;
    text-align: center !important;
    gap: 24px !important;
    padding: 22px !important;
  }

  body.webdev-landing-page .webdev-case-video-copy h3,
  body.webdev-landing-page .webdev-case-video-copy p {
    max-width: 100% !important;
  }

  body.webdev-landing-page .webdev-case-video-frame {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 280px !important;
  }

  body.webdev-landing-page .webdev-case-video-play {
    width: 66px !important;
    height: 66px !important;
  }

  body.webdev-landing-page .webdev-case-video-play-icon {
    border-top: 12px solid transparent !important;
    border-bottom: 12px solid transparent !important;
    border-left: 19px solid #ffffff !important;
  }
}

@media (max-width: 420px) {
  body.webdev-landing-page .webdev-case-video-card {
    padding: 18px !important;
    border-radius: 24px !important;
  }

  body.webdev-landing-page .webdev-case-video-frame {
    max-width: 250px !important;
    border-radius: 30px !important;
  }

  body.webdev-landing-page .webdev-case-video,
  body.webdev-landing-page .webdev-case-video-media {
    border-radius: 22px !important;
  }
}

/* =========================================================
   Premium hero/banner image
   ========================================================= */

body.webdev-landing-page .webdev-banner-section {
  padding-top: 26px !important;
  padding-bottom: 24px !important;
}

body.webdev-landing-page .webdev-banner-image-wrap {
  border-radius: 28px !important;
  overflow: hidden !important;
  border: 1px solid rgba(79, 70, 229, 0.14) !important;
  box-shadow: var(--sb-shadow-strong) !important;
  background: #0b1220 !important;
}

body.webdev-landing-page .webdev-banner-image-wrap picture {
  display: block !important;
}

body.webdev-landing-page .webdev-banner-image {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

@media (max-width: 767.98px) {
  body.webdev-landing-page .webdev-banner-section {
    padding-top: 14px !important;
    padding-bottom: 8px !important;
  }

  body.webdev-landing-page .webdev-banner-image-wrap {
    border-radius: 20px !important;
  }
}

/* =========================================================
   Reviews layout hard fix
   Add at the very bottom of webdev-lp.css
   ========================================================= */

body.webdev-landing-page #reviews {
  background: #ffffff !important;
}

body.webdev-landing-page .webdev-review-shell,
body.webdev-landing-page .webdev-reviews-shell {
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: 18px !important;
  border-radius: 28px !important;
  background: #ffffff !important;
  border: 1px solid var(--sb-border) !important;
  box-shadow: var(--sb-shadow-strong) !important;
}

body.webdev-landing-page .webdev-review-track,
body.webdev-landing-page .webdev-reviews-track {
  position: relative !important;
  min-height: 0 !important;
}

/* Reset each slide into one clean stacked review card */
body.webdev-landing-page .webdev-review-slide,
body.webdev-landing-page .js-review-slide {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  padding: 32px !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at top right, rgba(79, 70, 229, 0.08), transparent 34%),
    #ffffff !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(12px) !important;
  transition: opacity 0.28s ease, visibility 0.28s ease, transform 0.28s ease !important;
}

body.webdev-landing-page .webdev-review-slide.is-active,
body.webdev-landing-page .js-review-slide.is-active {
  position: relative !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

/* Force stars to sit horizontally */
body.webdev-landing-page .webdev-review-stars,
body.webdev-landing-page .webdev-review-slide ul:first-child,
body.webdev-landing-page .js-review-slide ul:first-child {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  width: 100% !important;
  margin: 0 0 18px 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.webdev-landing-page .webdev-review-stars li,
body.webdev-landing-page .webdev-review-slide ul:first-child li,
body.webdev-landing-page .js-review-slide ul:first-child li {
  display: inline-flex !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #f59e0b !important;
}

body.webdev-landing-page .webdev-review-stars .icon,
body.webdev-landing-page .webdev-review-stars em,
body.webdev-landing-page .webdev-review-slide ul:first-child .icon,
body.webdev-landing-page .webdev-review-slide ul:first-child em,
body.webdev-landing-page .js-review-slide ul:first-child .icon,
body.webdev-landing-page .js-review-slide ul:first-child em {
  color: #f59e0b !important;
  font-size: 1rem !important;
}

/* Main review text */
body.webdev-landing-page .webdev-review-slide h3,
body.webdev-landing-page .webdev-review-slide h4,
body.webdev-landing-page .webdev-review-slide h5,
body.webdev-landing-page .js-review-slide h3,
body.webdev-landing-page .js-review-slide h4,
body.webdev-landing-page .js-review-slide h5 {
  max-width: 720px !important;
  margin: 0 auto 18px auto !important;
  text-align: center !important;
  color: var(--sb-text) !important;
  font-size: clamp(1.35rem, 2.6vw, 2rem) !important;
  line-height: 1.22 !important;
  font-weight: 900 !important;
}

body.webdev-landing-page .webdev-review-slide p,
body.webdev-landing-page .js-review-slide p {
  max-width: 700px !important;
  margin: 0 auto !important;
  text-align: center !important;
  color: var(--sb-text-soft) !important;
  font-size: 1rem !important;
  line-height: 1.75 !important;
}

/* Author / category row */
body.webdev-landing-page .webdev-review-person,
body.webdev-landing-page .webdev-review-author,
body.webdev-landing-page .js-review-slide .media-text {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px 14px !important;
  max-width: 700px !important;
  margin: 26px auto 0 auto !important;
  padding-top: 20px !important;
  border-top: 1px solid var(--sb-border) !important;
  text-align: center !important;
}

body.webdev-landing-page .webdev-review-person strong,
body.webdev-landing-page .webdev-review-author strong,
body.webdev-landing-page .js-review-slide .media-text h6,
body.webdev-landing-page .js-review-slide .media-text strong {
  color: var(--sb-charcoal) !important;
  font-weight: 900 !important;
  margin: 0 !important;
}

body.webdev-landing-page .webdev-review-person span,
body.webdev-landing-page .webdev-review-author span,
body.webdev-landing-page .js-review-slide .media-text span {
  color: var(--sb-text-muted) !important;
  font-size: 0.92rem !important;
  margin: 0 !important;
}

/* Controls */
body.webdev-landing-page .webdev-review-controls {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  margin-top: 20px !important;
}

body.webdev-landing-page .webdev-review-arrow,
body.webdev-landing-page .js-review-prev,
body.webdev-landing-page .js-review-next {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  border: 1px solid rgba(79, 70, 229, 0.22) !important;
  background: #ffffff !important;
  color: var(--sb-charcoal) !important;
  cursor: pointer !important;
  box-shadow: var(--sb-shadow) !important;
}

body.webdev-landing-page .webdev-review-dots {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
}

body.webdev-landing-page .webdev-review-dot,
body.webdev-landing-page .js-review-dot {
  width: 10px !important;
  height: 10px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(79, 70, 229, 0.22) !important;
  cursor: pointer !important;
}

body.webdev-landing-page .webdev-review-dot.is-active,
body.webdev-landing-page .js-review-dot.is-active {
  width: 28px !important;
  background: var(--sb-gradient) !important;
}

/* Mobile */
@media (max-width: 767.98px) {
  body.webdev-landing-page .webdev-review-shell,
  body.webdev-landing-page .webdev-reviews-shell {
    padding: 12px !important;
    border-radius: 22px !important;
  }

  body.webdev-landing-page .webdev-review-slide,
  body.webdev-landing-page .js-review-slide {
    padding: 24px 18px !important;
    border-radius: 18px !important;
  }

  body.webdev-landing-page .webdev-review-slide h3,
  body.webdev-landing-page .webdev-review-slide h4,
  body.webdev-landing-page .webdev-review-slide h5,
  body.webdev-landing-page .js-review-slide h3,
  body.webdev-landing-page .js-review-slide h4,
  body.webdev-landing-page .js-review-slide h5 {
    font-size: 1.35rem !important;
  }
}

/* Hero fold tightening */
@media (min-width: 992px) {
  body.webdev-landing-page .display-6 {
    font-size: clamp(3rem, 4.8vw, 4rem) !important;
    line-height: 1.05 !important;
  }

  body.webdev-landing-page .nk-banner-content .fs-20 {
    font-size: 1.16rem !important;
    line-height: 1.6 !important;
  }

  body.webdev-landing-page .webdev-hero-proof {
    margin-bottom: 18px !important;
  }

  body.webdev-landing-page .nk-banner-content ul.list-unstyled {
    margin-bottom: 22px !important;
  }
}