/* ============================================================
   PINAKRA — Premium Assets & Dark Luxury Design
   NOVAWELL PRIVATE LIMITED
   Image placement, dark theme overrides, glass cards,
   hero backgrounds, icon styling, responsive fixes
   ============================================================ */

/* ── Global Dark Theme Override ─────────────────────────────── */
body {
  background: #050505 !important;
  color: #ffffff;
}

/* Light / off-white sections become very dark */
.bg-light,
.bg-off {
  background: #080808 !important;
}

.bg-dark   { background: #050505 !important; }
.bg-dark-2 { background: #060606 !important; }

/* Nav override — make light-nav dark on all pages */
.site-header.light-nav {
  background: rgba(5,5,5,0.94) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  box-shadow: 0 1px 0 rgba(255,255,255,0.05) !important;
}
.site-header.light-nav .nav-link         { color: rgba(255,255,255,0.82) !important; }
.site-header.light-nav .nav-link:hover,
.site-header.light-nav .nav-link.active  { color: #ffffff !important; background: rgba(255,255,255,0.06) !important; }
.site-header.light-nav .nav-logo-text    { color: #ffffff !important; }
.site-header.light-nav .nav-cta          { background: #ffffff; color: #050505; }
.site-header.light-nav .hamburger span   { background: #ffffff; }
.site-header.light-nav .btn-icon         { border-color: rgba(255,255,255,0.15); color: rgba(255,255,255,0.7); }

/* Section typography */
.section-title  { color: #ffffff; }
.section-desc   { color: #cfcfcf; }
.section-label  { color: #8a8a8a; }

/* Lead text */
.lead { color: #cfcfcf !important; }

/* ── Hero Background Images ──────────────────────────────────── */

/* Homepage hero */
.page-home .hero {
  background-image: url('../img/gemini/hero background.webp');
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}
.page-home .hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(160deg,
    rgba(0,0,0,0.90) 0%,
    rgba(0,0,0,0.72) 50%,
    rgba(0,0,0,0.90) 100%);
  z-index: 0;
  pointer-events: none;
}
.page-home .hero .hero-bg  { z-index: 1; }
.page-home .hero .container { position: relative; z-index: 2; }

/* About page hero */
.page-about .page-hero {
  background-image: url('../img/gemini/about page hero image.webp');
  background-size: cover;
  background-position: center top;
}
.page-about .page-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,
    rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.75) 50%, rgba(0,0,0,0.92) 100%);
  z-index: 0;
}
.page-about .page-hero .container,
.page-about .page-hero .page-hero-bg { position: relative; z-index: 1; }

/* Services page hero */
.page-services .page-hero {
  background-image: url('../img/gemini/services section banner image.webp');
  background-size: cover;
  background-position: center;
}
.page-services .page-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,
    rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.75) 50%, rgba(0,0,0,0.92) 100%);
  z-index: 0;
}
.page-services .page-hero .container,
.page-services .page-hero .page-hero-bg { position: relative; z-index: 1; }

/* Industries page hero */
.page-industries .page-hero {
  background-image: url('../img/chatgpt/software.webp');
  background-size: cover;
  background-position: center;
}
.page-industries .page-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,
    rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.75) 50%, rgba(0,0,0,0.92) 100%);
  z-index: 0;
}
.page-industries .page-hero .container,
.page-industries .page-hero .page-hero-bg { position: relative; z-index: 1; }

/* Portfolio page hero */
.page-portfolio .page-hero {
  background-image: url('../img/chatgpt/website-mockup.webp');
  background-size: cover;
  background-position: center;
}
.page-portfolio .page-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,
    rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.75) 50%, rgba(0,0,0,0.92) 100%);
  z-index: 0;
}
.page-portfolio .page-hero .container,
.page-portfolio .page-hero .page-hero-bg { position: relative; z-index: 1; }

/* Blog / Insights page hero */
.page-blog .page-hero {
  background-image: url('../img/chatgpt/blog-section.webp');
  background-size: cover;
  background-position: center;
}
.page-blog .page-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,
    rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.75) 50%, rgba(0,0,0,0.92) 100%);
  z-index: 0;
}
.page-blog .page-hero .container,
.page-blog .page-hero .page-hero-bg { position: relative; z-index: 1; }

/* Contact page hero */
.page-contact .page-hero {
  background-image: url('../img/gemini/about-section image.webp');
  background-size: cover;
  background-position: center;
}
.page-contact .page-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,
    rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.75) 50%, rgba(0,0,0,0.92) 100%);
  z-index: 0;
}
.page-contact .page-hero .container,
.page-contact .page-hero .page-hero-bg { position: relative; z-index: 1; }

/* Careers page hero */
.page-careers .page-hero {
  background-image: url('../img/chatgpt/careers-section.webp');
  background-size: cover;
  background-position: center top;
}
.page-careers .page-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,
    rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.75) 50%, rgba(0,0,0,0.92) 100%);
  z-index: 0;
}
.page-careers .page-hero .container,
.page-careers .page-hero .page-hero-bg { position: relative; z-index: 1; }

/* Page hero text */
.page-hero-title    { color: #ffffff; text-shadow: 0 2px 20px rgba(0,0,0,0.5); }
.page-hero-subtitle { color: rgba(255,255,255,0.65); }
.breadcrumb, .breadcrumb a { color: rgba(255,255,255,0.45); }
.breadcrumb a:hover         { color: rgba(255,255,255,0.9); }

/* ── CTA Section Background ──────────────────────────────────── */
.cta-section {
  background-image: url('../img/chatgpt/call-to-action- background.webp') !important;
  background-size: cover !important;
  background-position: center !important;
  position: relative;
}
.cta-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg,
    rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.88) 50%, rgba(0,0,0,0.95) 100%);
  z-index: 0;
}
.cta-section .container,
.cta-section .cta-bg-decor { position: relative; z-index: 1; }
.cta-title    { color: #ffffff; }
.cta-subtitle { color: rgba(255,255,255,0.55); }

/* ── Footer Background ───────────────────────────────────────── */
.site-footer {
  background-image: url('../img/gemini/footer background image.webp') !important;
  background-size: cover !important;
  background-position: center !important;
  position: relative;
}
.site-footer::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(4,4,4,0.9) 0%, rgba(0,0,0,0.96) 100%);
  z-index: 0;
}
.site-footer::after {
  content: '';
  position: absolute;
  inset: -18% -12%;
  background:
    radial-gradient(circle at 16% 30%, rgba(174,174,174,0.18), transparent 24%),
    radial-gradient(circle at 82% 20%, rgba(132,132,132,0.12), transparent 22%),
    radial-gradient(circle at 56% 78%, rgba(214,214,214,0.08), transparent 28%);
  mix-blend-mode: screen;
  opacity: 0.34;
  z-index: 0;
  animation: footer-grey-drift 20s ease-in-out infinite alternate;
  pointer-events: none;
}
.site-footer > .container { position: relative; z-index: 1; }

@keyframes footer-grey-drift {
  0% { transform: translate3d(-2%, 0, 0) scale(1); opacity: 0.32; }
  50% { transform: translate3d(2%, -1.5%, 0) scale(1.04); opacity: 0.46; }
  100% { transform: translate3d(-1%, 2%, 0) scale(1.02); opacity: 0.36; }
}

/* ── Newsletter Banner ───────────────────────────────────────── */
.newsletter-section {
  background: #060606 !important;
  border-top:    1px solid rgba(255,255,255,0.06) !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}
.newsletter-title { color: #ffffff; }
.newsletter-sub   { color: #8a8a8a; }
.newsletter-email {
  background: rgba(255,255,255,0.05) !important;
  border-color: rgba(255,255,255,0.12) !important;
  color: #ffffff !important;
}
.newsletter-email::placeholder { color: #6b6b6b; }

/* ── Testimonials Section Background ────────────────────────── */
#testimonials {
  background-image: url('../img/chatgpt/call-to-action- background.webp') !important;
  background-size: cover !important;
  background-position: center !important;
  position: relative;
}
#testimonials::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(3,3,3,0.94);
  z-index: 0;
}
#testimonials .container { position: relative; z-index: 1; }

/* ── Glass Card ──────────────────────────────────────────────── */
.glass-card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 24px;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 24px 80px rgba(0,0,0,0.45);
}

/* ── Service Cards ───────────────────────────────────────────── */
.service-card {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  color: #ffffff;
}
.service-card:hover {
  background: rgba(255,255,255,0.07) !important;
  border-color: rgba(255,255,255,0.15) !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.55) !important;
}
.service-card-icon   { background: rgba(255,255,255,0.06) !important; color: #c0c0c0; }
.service-card-tag    { color: #8a8a8a; }
.service-card-title  { color: #ffffff; }
.service-card-desc   { color: #cfcfcf; }
.service-card-link   { color: #e4e4e4; }
.service-card:hover .service-card-icon { background: rgba(255,255,255,0.10) !important; }
.service-card:hover .service-card-title { color: #ffffff; }

/* Service feature list check icon — dark sections */
.service-card li svg { stroke: #c0c0c0 !important; }

/* Service card image wrapper */
.service-card-img-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 12px;
  margin-bottom: 1.25rem;
  flex-shrink: 0;
}
.service-card-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.65) contrast(1.10);
  transition: transform 0.5s ease, filter 0.5s ease;
  display: block;
}
.service-card:hover .service-card-img-wrap img {
  transform: scale(1.05);
  filter: brightness(0.78) contrast(1.12);
}

/* ── Industry Cards ──────────────────────────────────────────── */
.industry-card {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  display: flex;
  flex-direction: column;
}
.industry-card:hover {
  background: rgba(255,255,255,0.07) !important;
  border-color: rgba(255,255,255,0.14) !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.5) !important;
}
.industry-card-title { color: #ffffff; }
.industry-card-desc  { color: #cfcfcf; }
.industry-card-icon  { background: rgba(255,255,255,0.06) !important; color: #c0c0c0; }
.industry-card:hover .industry-card-icon {
  background: rgba(192,192,192,0.15) !important;
  color: #e4e4e4;
}

/* Industry card image */
.industry-card-img-wrap {
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 10px;
  margin-bottom: 1rem;
  flex-shrink: 0;
}
.industry-card-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.62) contrast(1.10);
  transition: transform 0.5s ease;
  display: block;
}
.industry-card:hover .industry-card-img-wrap img {
  transform: scale(1.05);
}

/* ── Blog Cards ──────────────────────────────────────────────── */
.blog-card {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
}
.blog-card:hover {
  box-shadow: 0 16px 60px rgba(0,0,0,0.5) !important;
}
.blog-card-title   { color: #ffffff !important; }
.blog-card-excerpt { color: #cfcfcf !important; }
.blog-card-meta    { color: #8a8a8a !important; }
.blog-card-footer  { border-top-color: rgba(255,255,255,0.08) !important; }
.blog-card-footer span { color: #8a8a8a !important; }

.blog-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.72) contrast(1.08);
  transition: transform 0.6s ease, filter 0.5s ease;
  display: block;
}
.blog-card:hover .blog-card-image img {
  transform: scale(1.05);
  filter: brightness(0.85) contrast(1.12);
}

/* ── Case Study Cards ────────────────────────────────────────── */
.case-study-card {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
}
.case-study-title  { color: #ffffff; }
.case-study-desc   { color: #cfcfcf; }
.case-study-client { color: #8a8a8a; }
.case-study-metrics { border-top-color: rgba(255,255,255,0.08) !important; }
.metric-value { color: #ffffff; }
.metric-label { color: #8a8a8a; }

.case-study-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.65) contrast(1.08);
  transition: transform 0.6s ease;
}
.case-study-card:hover .case-study-image img {
  transform: scale(1.04);
  filter: brightness(0.78) contrast(1.12);
}

/* ── Portfolio / Case Cards ──────────────────────────────────── */
.case-card {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
}
.case-card:hover {
  border-color: rgba(255,255,255,0.14) !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.5) !important;
}

/* ── Team Cards ──────────────────────────────────────────────── */
.team-card {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
}
.team-card:hover { box-shadow: 0 16px 60px rgba(0,0,0,0.5) !important; }
.team-name  { color: #ffffff !important; }
.team-role  { color: #cfcfcf !important; }
.team-dept  { background: rgba(255,255,255,0.06) !important; color: #e4e4e4 !important; }
.team-avatar {
  background: rgba(255,255,255,0.06) !important;
  border-color: rgba(255,255,255,0.10) !important;
}

/* ── FAQ Dark ────────────────────────────────────────────────── */
.faq-item              { border-color: rgba(255,255,255,0.08); background: transparent; }
.faq-item.open         { border-color: rgba(255,255,255,0.18); }
.faq-question          { color: #ffffff; }
.faq-question:hover    { background: rgba(255,255,255,0.04); }
.faq-icon              { border-color: rgba(255,255,255,0.20); color: #8a8a8a; }
.faq-item.open .faq-icon { background: #ffffff; border-color: #ffffff; color: #050505; }
.faq-answer-inner      { color: #cfcfcf; }

/* ── Form Dark ───────────────────────────────────────────────── */
.form-label    { color: #cfcfcf; }
.form-input, .form-select, .form-textarea {
  background: rgba(255,255,255,0.05) !important;
  border-color: rgba(255,255,255,0.12) !important;
  color: #ffffff !important;
}
.form-input::placeholder,
.form-textarea::placeholder { color: #6b6b6b; }
.form-input:focus,
.form-select:focus,
.form-textarea:focus {
  border-color: rgba(255,255,255,0.30) !important;
  box-shadow: 0 0 0 3px rgba(255,255,255,0.04) !important;
}
select.form-select option { background: #111; color: #fff; }

/* ── Stats Bar ───────────────────────────────────────────────── */
.stats-bar {
  background: rgba(8,8,8,0.98) !important;
  border-top:    1px solid rgba(255,255,255,0.06) !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}
.stat-item::after { background: rgba(255,255,255,0.08) !important; }

/* ── Process Steps ───────────────────────────────────────────── */
.process-step-title { color: #ffffff; }
.process-step-desc  { color: #8a8a8a; }
.process-step-number {
  background: rgba(255,255,255,0.05) !important;
  border-color: rgba(255,255,255,0.12) !important;
  color: #c0c0c0;
}

/* ── USP items ───────────────────────────────────────────────── */
.usp-item {
  background: rgba(255,255,255,0.03) !important;
  border-color: rgba(255,255,255,0.07) !important;
}
.usp-item:hover {
  background: rgba(255,255,255,0.06) !important;
  border-color: rgba(255,255,255,0.12) !important;
}
.usp-title { color: #ffffff !important; }
.usp-desc  { color: #8a8a8a !important; }
.usp-icon  { background: rgba(255,255,255,0.06) !important; color: #c0c0c0 !important; }

/* ── PNG Icon Styling ────────────────────────────────────────── */
.icon-png {
  width: 28px;
  height: 28px;
  object-fit: contain;
  filter: brightness(0) invert(1);
  display: inline-block;
  vertical-align: middle;
  flex-shrink: 0;
}
.icon-png-sm {
  width: 20px;
  height: 20px;
  object-fit: contain;
  filter: brightness(0) invert(1);
  display: inline-block;
  vertical-align: middle;
  flex-shrink: 0;
}
.icon-png-lg {
  width: 36px;
  height: 36px;
  object-fit: contain;
  filter: brightness(0) invert(1);
  display: inline-block;
  vertical-align: middle;
}
.service-card-icon img,
.industry-card-icon img {
  width: 26px;
  height: 26px;
  object-fit: contain;
  filter: brightness(0) invert(1);
  display: block;
}
.footer-contact-icon img {
  width: 16px;
  height: 16px;
  object-fit: contain;
  filter: brightness(0) invert(0.6);
}

/* ── About Company Image ─────────────────────────────────────── */
.about-company-image-wrap {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 28px 80px rgba(0,0,0,0.65);
}
.about-company-image-wrap img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  filter: brightness(0.72) contrast(1.06);
  display: block;
  transition: transform 0.5s ease;
}
.about-company-image-wrap:hover img { transform: scale(1.03); }
.about-company-image-wrap::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(0,0,0,0.25) 0%, transparent 60%);
  z-index: 1;
  pointer-events: none;
}

/* ── Homepage About / Why Section ───────────────────────────── */
.home-about-img-wrap {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 28px 80px rgba(0,0,0,0.60);
}
.home-about-img-wrap img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  filter: brightness(0.72) contrast(1.06);
  display: block;
  transition: transform 0.5s ease;
}
.home-about-img-wrap:hover img { transform: scale(1.03); }
.home-about-img-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.45) 0%, transparent 55%);
  pointer-events: none;
}

/* ── Team / Culture Image ────────────────────────────────────── */
.team-culture-img-wrap {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 24px 80px rgba(0,0,0,0.60);
  margin-bottom: 2rem;
}
.team-culture-img-wrap img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  filter: brightness(0.65) contrast(1.08);
  display: block;
}
.team-culture-img-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.55) 0%, transparent 60%);
  pointer-events: none;
}

/* ── Contact Side Image ──────────────────────────────────────── */
.contact-side-image-wrap {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 28px 80px rgba(0,0,0,0.65);
  height: 100%;
  min-height: 400px;
}
.contact-side-image-wrap img {
  width: 100%;
  height: 100%;
  min-height: 400px;
  object-fit: cover;
  filter: brightness(0.65) contrast(1.08);
  display: block;
}
.contact-side-image-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0.55) 100%);
  pointer-events: none;
}

/* Contact info on dark bg */
.page-contact .section { background: #080808 !important; }
.page-contact .form-label { color: #cfcfcf; }

/* ── Careers Culture Section ─────────────────────────────────── */
.careers-culture-img-wrap {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 24px 80px rgba(0,0,0,0.65);
  margin-bottom: 3rem;
}
.careers-culture-img-wrap img {
  width: 100%;
  aspect-ratio: 21 / 9;
  object-fit: cover;
  object-position: center 30%;
  filter: brightness(0.62) contrast(1.08);
  display: block;
}
.careers-culture-img-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to right,
    rgba(0,0,0,0.6) 0%, transparent 40%, transparent 60%, rgba(0,0,0,0.5) 100%);
  pointer-events: none;
}

/* ── 404 Illustration ────────────────────────────────────────── */
.error-404-illustration {
  max-width: 380px;
  margin-inline: auto;
  margin-bottom: 2rem;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 24px 80px rgba(0,0,0,0.55);
}
.error-404-illustration img {
  width: 100%;
  height: auto;
  display: block;
  filter: brightness(0.70) contrast(1.08);
}

/* ── Services Preview Banner (homepage) ──────────────────────── */
.services-preview-banner {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 3rem;
  box-shadow: 0 20px 70px rgba(0,0,0,0.55);
}
.services-preview-banner img {
  width: 100%;
  aspect-ratio: 21 / 9;
  object-fit: cover;
  filter: brightness(0.55) contrast(1.10);
  display: block;
}
.services-preview-banner::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 30%, rgba(0,0,0,0.60) 100%);
  pointer-events: none;
}

/* ── Blog card fallback placeholder ─────────────────────────── */
.blog-card-image-placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #111 0%, #1a1a1a 100%);
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ── Case study placeholder ──────────────────────────────────── */
.case-study-img-placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #0d0d0d 0%, #1a1a1a 100%);
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ── Insights section on homepage ────────────────────────────── */
#insights { background: #070707 !important; }
#insights .blog-card-title   { color: #ffffff !important; }
#insights .blog-card-excerpt { color: #cfcfcf !important; }
#insights .blog-card-footer  { border-top-color: rgba(255,255,255,0.08) !important; }

/* ── Pagination dark ─────────────────────────────────────────── */
.btn-outline[style*="gray"] {
  border-color: rgba(255,255,255,0.18) !important;
  color: #cfcfcf !important;
}

/* ── Tags dark ───────────────────────────────────────────────── */
.tag {
  background: rgba(255,255,255,0.06) !important;
  border-color: rgba(255,255,255,0.10) !important;
  color: #cfcfcf !important;
}

/* ── Section border separators ───────────────────────────────── */
.section + .section,
.section-sm + .section {
  border-top: 1px solid rgba(255,255,255,0.04);
}

/* ── Industries approach section ─────────────────────────────── */
.page-industries .section:not(:first-child) {
  background: #080808 !important;
}
.page-industries .section:nth-child(odd) {
  background: #060606 !important;
}
.page-industries h2.section-title,
.page-industries h3, .page-industries h4 { color: #ffffff; }
.page-industries p, .page-industries div { color: inherit; }

/* ── Services sticky nav override ───────────────────────────── */
.page-services nav[aria-label="Service categories"] {
  background: rgba(6,6,6,0.95) !important;
  border-bottom: 1px solid rgba(255,255,255,0.07) !important;
  backdrop-filter: blur(16px);
}
.page-services .service-tab {
  border-color: rgba(255,255,255,0.15) !important;
  color: rgba(255,255,255,0.6) !important;
}
.page-services .service-tab:hover,
.page-services .service-tab.active {
  background: #ffffff !important;
  border-color: #ffffff !important;
  color: #050505 !important;
}
/* Services section alternating */
.page-services .section {
  background: #080808 !important;
}
.page-services .section:nth-child(odd) {
  background: #060606 !important;
}

/* ── Portfolio section ───────────────────────────────────────── */
.page-portfolio .section {
  background: #080808 !important;
}
.page-portfolio .btn-outline {
  border-color: rgba(255,255,255,0.20) !important;
  color: #cfcfcf !important;
}

/* ── Blog sidebar ────────────────────────────────────────────── */
.page-blog aside > div:first-child {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
}
.page-blog aside h3,
.page-blog aside li a { color: #cfcfcf !important; }
.page-blog aside li a:hover { color: #ffffff !important; }
.page-blog .service-tab {
  border-color: rgba(255,255,255,0.15) !important;
  color: rgba(255,255,255,0.6) !important;
}
.page-blog .service-tab.active,
.page-blog .service-tab:hover {
  background: #ffffff !important;
  color: #050505 !important;
  border-color: #ffffff !important;
}

/* ── About page values section ───────────────────────────────── */
.page-about .section-title { color: #ffffff; }
.page-about .two-col .section-title { color: #ffffff; }
.page-about .two-col p { color: #cfcfcf; }
.page-about .stat-number { color: #ffffff; }
.page-about .stat-label  { color: #8a8a8a; }
.page-about .section-label { color: #8a8a8a; }

/* Values section stats grid */
.page-about .responsive-card-grid-2 > div {
  border: 1px solid rgba(255,255,255,0.10) !important;
  background: rgba(255,255,255,0.04) !important;
}

/* Careers perks */
.page-careers .service-card-title { color: #ffffff; }
.page-careers .service-card-desc  { color: #cfcfcf; }

/* ── Consultation / Misc pages ───────────────────────────────── */
.page-consultation .section,
.page-consultation .bg-light { background: #080808 !important; }
.page-faqs .section           { background: #080808 !important; }
.page-media .section          { background: #080808 !important; }
.page-testimonials .section   { background: #080808 !important; }
.page-terms .section,
.page-privacy-policy .section,
.page-refund-policy .section  { background: #080808 !important; }

/* Prose dark */
.prose { color: #cfcfcf; }
.prose h1,.prose h2,.prose h3,.prose h4 { color: #ffffff; }

/* ── Mobile / Responsive Fixes ───────────────────────────────── */
@media (max-width: 768px) {
  .about-company-image-wrap img,
  .home-about-img-wrap img { aspect-ratio: 16 / 9; }
  .contact-side-image-wrap { min-height: 260px; }
  .contact-side-image-wrap img { min-height: 260px; aspect-ratio: 16 / 9; }
  .careers-culture-img-wrap img { aspect-ratio: 16 / 9; }
  .services-preview-banner img  { aspect-ratio: 16 / 9; }
  .team-culture-img-wrap img    { aspect-ratio: 16 / 9; }
}

@media (max-width: 480px) {
  .error-404-illustration { max-width: 88%; }
  .industry-card-img-wrap img { aspect-ratio: 16 / 9; }
  .service-card-img-wrap img  { aspect-ratio: 16 / 9; }
}

/* ── Scrollbar ───────────────────────────────────────────────── */
::-webkit-scrollbar-track { background: #060606; }
::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.10); }
::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.20); }

/* Shared layout utilities used by existing page templates */
.responsive-two-col {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--sp-10);
}

.responsive-card-grid-5 {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: var(--sp-5);
}

.mobile-stack {
  display: flex;
  align-items: center;
  gap: var(--sp-4);
  flex-wrap: wrap;
}

.responsive-sidebar-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(280px, 0.75fr);
  gap: var(--sp-12);
  align-items: start;
}

.responsive-sidebar-layout-wide {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.9fr);
  gap: var(--sp-12);
  align-items: start;
}

.responsive-two-col > *,
.responsive-sidebar-layout > *,
.responsive-sidebar-layout-wide > *,
.two-col > *,
.three-col > * {
  min-width: 0;
}

.blog-card-cat {
  display: inline-flex;
  align-items: center;
  gap: .375rem;
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #8a8a8a;
  margin-bottom: var(--sp-3);
}

.service-card,
.industry-card,
.case-card,
.blog-card,
.team-card {
  height: 100%;
}

.service-card-inner {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.service-card-desc {
  flex: 1 1 auto;
}

.service-card-link {
  margin-top: auto;
}

.btn {
  max-width: 100%;
  text-align: center;
}

.breadcrumb {
  flex-wrap: wrap;
}

.hero-title,
.page-hero-title,
.section-title,
.cta-title {
  overflow-wrap: anywhere;
}

.hero-subtitle,
.page-hero-subtitle,
.section-subtitle,
.cta-subtitle {
  max-width: min(100%, 68ch);
}

@media (max-width: 1199px) {
  .responsive-card-grid-5 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .responsive-sidebar-layout,
  .responsive-sidebar-layout-wide {
    gap: var(--sp-8);
  }
}

@media (max-width: 991px) {
  .responsive-two-col,
  .responsive-sidebar-layout,
  .responsive-sidebar-layout-wide {
    grid-template-columns: 1fr;
    gap: var(--sp-8);
  }

  .responsive-sidebar-layout > aside > div[style*="position:sticky"],
  .responsive-sidebar-layout-wide > aside > div[style*="position:sticky"] {
    position: static !important;
    top: auto !important;
  }
}

@media (max-width: 768px) {
  .page-hero {
    padding-top: calc(var(--nav-height) + var(--sp-12));
    padding-bottom: var(--sp-16);
  }

  .page-hero-title {
    font-size: clamp(1.875rem, 8vw, 3rem);
    line-height: 1.12;
  }

  .page-hero-subtitle {
    font-size: var(--text-base);
    line-height: 1.75;
  }

  .hero-split-wrap {
    padding-inline: var(--sp-4);
    padding-top: calc(var(--nav-height) + var(--sp-10));
    gap: var(--sp-8);
  }

  .hero-actions,
  .cta-actions,
  .mobile-stack {
    flex-direction: column;
    align-items: stretch;
  }

  .hero-actions .btn,
  .cta-actions .btn,
  .mobile-stack .btn,
  .page-media .page-hero .btn {
    width: 100%;
    justify-content: center;
  }

  .responsive-card-grid-5,
  .responsive-card-grid-4,
  .responsive-card-grid-3,
  .responsive-card-grid-2,
  .responsive-card-grid-medium,
  .responsive-card-grid-wide,
  .services-grid,
  .industries-grid,
  .blog-grid {
    grid-template-columns: 1fr !important;
  }

  .stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--sp-4);
  }

  .page-contact table,
  .page-media table {
    display: block;
    width: 100%;
  }

  .page-contact tbody,
  .page-media tbody,
  .page-contact tr,
  .page-media tr {
    display: block;
    width: 100%;
  }

  .page-contact tr,
  .page-media tr {
    padding-block: var(--sp-3);
  }

  .page-contact td,
  .page-media td {
    display: block;
    width: 100% !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .page-career-detail .section > .container > div[style*="justify-content:space-between"][style*="align-items:center"] {
    flex-wrap: wrap;
    gap: var(--sp-4);
    align-items: flex-start !important;
  }

  .page-career-detail a[style*="justify-content:space-between"] {
    flex-wrap: wrap;
    align-items: flex-start !important;
  }

  .page-case-study .container > div[style*="display:flex;justify-content:center;gap:0;flex-wrap:wrap"] > div {
    flex: 1 1 50%;
    min-width: 150px;
    padding: var(--sp-6) var(--sp-4) !important;
    border-left: none !important;
    border-top: 1px solid var(--clr-dark-border);
  }

  .page-case-study .container > div[style*="display:flex;justify-content:center;gap:0;flex-wrap:wrap"] > div:nth-child(-n+2) {
    border-top: none;
  }
}

@media (max-width: 480px) {
  .nav-inner,
  .container,
  .container-narrow,
  .hero-split-wrap {
    padding-inline: var(--sp-4);
  }

  .mobile-menu {
    padding: var(--sp-5) var(--sp-4) var(--sp-6);
  }

  .nav-logo-text {
    font-size: 1.25rem;
  }

  .stats-grid {
    grid-template-columns: 1fr;
  }

  .hero-split-right,
  .hero-3d-card {
    min-height: 220px;
  }

  .hero-title {
    font-size: clamp(2.45rem, 14vw, 3.2rem);
    line-height: 0.98;
    letter-spacing: -0.04em;
    max-width: 10ch;
  }

  .hero-subtitle {
    font-size: 0.95rem;
    line-height: 1.65;
    max-width: 100%;
  }

  .hero-eyebrow {
    font-size: 0.7rem;
    letter-spacing: 0.12em;
    margin-bottom: var(--sp-4);
  }

  .hero-split-wrap {
    gap: var(--sp-6);
    padding-top: calc(var(--nav-height) + var(--sp-8));
    padding-bottom: var(--sp-8);
  }

  .hero-scroll {
    display: none;
  }

  .btn {
    white-space: normal;
    line-height: 1.35;
  }

  .toast-container {
    left: var(--sp-4);
    right: var(--sp-4);
    max-width: none;
  }
}

@media (max-width: 360px) {
  .hero-title {
    font-size: 2.2rem;
    max-width: 9ch;
  }
}
