/* Smooth scrolling with offset for fixed header */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 0;
}


/* ── Hero Section ─────────────────────────────── */
.mac-hero {
  padding-top: 80px;
  padding-bottom: 80px;
  background: #2E194D;
  position: relative;
  overflow: hidden;
}

.mac-hero .hero-glow {
  position: absolute;
  width: 335px;
  height: 335px;
  background: #FF7F00;
  mix-blend-mode: normal;
  filter: blur(200px);
  border-radius: 9999px;
  z-index: 0;
  pointer-events: none;
  left: 45%;
  top: 15%;
  transform: translate(0, 0);
}

.mac-hero .hero-glow--2 {
  width: 211px;
  height: 211px;
  left: 75%;
  top: 50%;
}

.mac-hero .hero-inner {
  max-width: calc(1200px + 1.5rem * 2);
  margin: 0 auto;
  padding: 0 1.5rem;
  display: flex;
  gap: 60px;
  align-items: center;
  position: relative;
  z-index: 1;
}

.mac-hero .hero-content {
  flex: 1;
}

.mac-hero .hero-content h2 {
  font-size: 42px;
  font-weight: 600;
  line-height: 1.25;
  color: #FFFFFF;
  margin: 0;
  text-transform: Capitalize;
}

.mac-hero .hero-content h2:first-child {
  width: max-content;
  background-image: linear-gradient(90deg, #B17CFF 0%, #FF7F00 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent; 
}

.mac-hero .hero-content p {
  font-size: 18px;
  font-weight: 500;
  color: #FFFFFF;
  line-height: 1.7;
  padding: 24px 0 48px 0;
  margin: 0;
  border-bottom: 1px solid rgba(217, 217, 217, 0.3);
}

.mac-hero .hero-content-bottom {
  display: flex;
  gap: 60px;
  margin-top: 48px;
}

.mac-hero .hero-content-bottom div {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.mac-hero .hero-content-bottom h3 {
  font-size: 28px;
  font-weight: 600;
  line-height: 1.5;
  color: #FFFFFF;
  margin: 0;
  text-transform: Capitalize;
  width: max-content;
  background-image: linear-gradient(90deg, #FFFFFF 0%, #FF7F00 30.98%);;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent; 
}

.mac-hero .hero-content-bottom p {
  font-size: 14px;
  padding: 0;
  margin: 0;
  border-bottom: none;
}

/* Contact form */
.mac-hero .hero-form {
  max-width: 480px;
  height: stretch;
  flex: 1 1 480px;
  background: #FFFFFF;
  border-radius: 28px;
  padding: 28px 40px;
  z-index: 10;
}

.mac-hero .hero-form .contact-form-subtitle {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  color: #9B9B9B;
  margin: 8px 0 28px;
}

.mac-hero .hero-form .contact-form-section .container {
  overflow-y: unset;
  height: unset;
  padding: 0;
}

.mac-hero .hero-form .contact-form-section .container .form {
  margin-top: 0;
}

.mac-hero .hero-form .contact-form-section .container .form .form-field {
  margin-bottom: 16px;
}

.mac-hero .hero-form .contact-form-section .container .form .form-field:nth-child(5) {
  margin-bottom: 28px;
}

.mac-hero .hero-form .contact-form-section .container .form .form-field input,
.mac-hero .hero-form .contact-form-section .container .form .form-field select {
  border: 1px solid #E4E4E4;
}

.mac-hero .hero-form .contact-form-section .container .form .form-field input::placeholder,
.mac-hero .hero-form .contact-form-section .container .form .form-field select:has(option:first-child:checked){
  color: #9B9B9B;
}

.mac-hero .hero-form .contact-form-section .container .form .form-field select {
  width: 100%;
  padding: 0.8rem 0.5rem;
  -webkit-appearance: none;
  appearance: none;
  background-image: url("assets/images/arrow.svg");
  background-repeat: no-repeat;
  background-position: right 16px center;
}

.mac-hero .hero-form .contact-form-section .container .form .form-field select option:first-child {
  display: none;
}

.mac-hero .hero-form .contact-form-section .container .divider {
  margin: 26px 0 8px;
}

.mac-hero .hero-form .contact-form-section .container .contact-method {
  padding: 18px 0;
}

.mac-hero .hero-form .contact-form-section .contact-method .contact-method-icon {
  width: 24px;
  height: 24px;
}

.mac-hero .hero-form .contact-form-section .contact-bottom {
  font-size: 12px;
  font-weight: 500;
  color: #9B9B9B;
  line-height: 1.7;
  margin-top: 8px;
  text-align: center;
}

@media screen and (max-width: 959px) {
  .mac-hero {
    padding-top: 40px;
    padding-bottom: 40px;
    background: url('assets/images/ai-chat/hero-bg-pad.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }

  .mac-hero .hero-glow {
    display: none;
  }

  .mac-hero .hero-content h2 {
    font-size: 28px;
  }

  .mac-hero .hero-content p {
    font-size: 16px;
  }

  .mac-hero .hero-content-bottom h3 {
    font-size: 20px;
  }

  /* Contact form */
  .mac-hero .hero-form {
    width: 100%;
    max-width: 395px;
    min-width: auto;
    flex: 1 1 auto;
    padding: 20px;
  }

  .mac-hero .hero-form .contact-form-title {
    font-size: 20px;
  }

  .mac-hero .hero-form .contact-form-subtitle {
    margin: 8px 0 20px;
  }

  .mac-hero .hero-form .contact-form-section .container .form .form-field:nth-child(5) {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 430px) {
  .mac-hero {
    padding: 40px 24px;
    background-image: url('assets/images/ai-chat/hero-bg-mobile.png');
  }

  .mac-hero .hero-inner {
    padding: 0;
    gap: 40px;
    flex-direction: column;
  }

  .mac-hero .hero-content p {
    padding: 16px 0;
  }

  .mac-hero .hero-content-bottom {
    flex-direction: column;
    gap: 16px;
    margin-top: 16px;
  }

  .mac-hero .hero-content-bottom div p {
    padding: 0;
  }

  /* Contact form */
  /* .mac-hero .hero-form {
    max-width: 324px;
  } */
}


/* ── Logos Section ─────────────────────────── */
.mac-logos {
  padding: 40px 0 20px;
  overflow: hidden;
  background: #F3F3F3;
}

.mac-logos .logos-inner {
  max-width: 100%;
  margin: 0 auto;
}

.mac-logos .logos-title {
  font-size: 20px;
  font-weight: 600;
  text-align: center;
  margin: 0 0 16px;
  text-transform: Capitalize;
}

.mac-logos .logos-marquee-wrapper {
  overflow: hidden;
  width: 100%;
  mask-image: linear-gradient(to right, transparent 0, black 10%, black 90%, transparent 100%);
  -webkit-mask-image: linear-gradient(to right, transparent 0, black 10%, black 90%, transparent 100%);
}

.mac-logos .logos-marquee-track {
  display: flex;
  width: max-content;
  animation: marqueeScrollRight 40s linear infinite;
  will-change: transform;
}

/* Pause animation on container hover */
.mac-logos .logos-marquee-wrapper:hover .logos-marquee-track {
  animation-play-state: paused;
}

@keyframes marqueeScrollRight {
  0% {
    transform: translateX(-50%);
  }
  100% {
    transform: translateX(0);
  }
}

@keyframes marqueeScrollLeft {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}


.mac-logos .logo-item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 30px;
  flex-shrink: 0;
  text-decoration: none;
}

.mac-logos .logo-item img {
  height: 120px;
  max-width: auto;
  object-fit: contain;
  filter: grayscale(100%);
  opacity: 0.6;
  transition: filter 0.3s ease, opacity 0.3s ease;
}

.mac-logos .logo-item:hover img {
  filter: grayscale(0%);
  opacity: 1;
}


.mac-logos .logo-item:hover img {
  filter: grayscale(0%);
  opacity: 1;
}


/* -- Mobile two-row marquee (≤ 430px) -- */
@media screen and (max-width: 430px) {
  .mac-logos .logos-row--desktop {
    display: none;
  }

  .mac-logos .logos-row--mobile-1,
  .mac-logos .logos-row--mobile-2 {
    display: block;
    overflow: hidden;
    width: 100%;
    margin-bottom: 12px;
  }

  .mac-logos .logos-row--mobile-1 .logos-marquee-track {
    animation: marqueeScrollRight 25s linear infinite;
  }

  .mac-logos .logos-row--mobile-2 .logos-marquee-track {
    animation: marqueeScrollLeft 25s linear infinite;
  }

  .mac-logos .logo-item {
    padding: 0 16px;
  }
}

@media screen and (min-width: 431px) {
  .mac-logos .logos-row--mobile-1,
  .mac-logos .logos-row--mobile-2 {
    display: none;
  }
}


/* ── Features Section ─────────────────────────── */
.mac-features {
  padding: 80px 0 0;
  background: #FFFFFF;
}

.mac-features .features-inner {
  max-width: calc(1200px + 3rem);
  margin: 0 auto;
  padding: 0 1.5rem;
}

/* -- Component 1: Tag Wall / Badge Pills -- */
.mac-features .features-tag-wall {
  text-align: center;
  margin-bottom: 60px;
}

.mac-features .features-tag-heading {
  font-size: 36px;
  font-weight: 600;
  margin: 0 0 16px;
  line-height: 1.25;
}

.mac-features .features-tag-desc {
  font-size: 18px;
  margin: 0 auto 60px;
  line-height: 1.7;
}

.mac-features .features-badges {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
}

.mac-features .badge-pill {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: #E4E4E4;
  font-size: 14px;
  font-weight: 600;
  padding: 7px 15px;
  border-radius: 100px;
  white-space: nowrap;
}

.mac-features .badge-icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

/* -- Component 2: 6-Core Architecture Grid -- */
.mac-features .features-arch {
  text-align: center;
}

.mac-features .features-arch-heading {
  font-size: 20px;
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 28px;
  background: linear-gradient(90deg, #2E194D 0%, #FF7F00 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.mac-features .features-arch-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}

.mac-features .arch-card {
  background: #2E194D;
  padding: 40px 12px;
  text-align: center;
  z-index: 2;
}

.mac-features .arch-icon {
  width: 120px;
  height: 120px;
  margin: 0 auto 16px;
}

.mac-features .arch-card-title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5;
  color: #fff;
  margin: 0 0 16px;
  text-transform: Capitalize;
}

.mac-features .arch-card-desc {
  font-size: 14px;
  color: #fff;
  line-height: 1.7;
  margin: 0;
}

@media screen and (max-width: 959px) {
  .mac-features {
    padding: 60px 0 0;
  }

  /* -- Component 1: Tag Wall / Badge Pills -- */
  .mac-features .features-tag-wall {
    text-align: center;
    margin-bottom: 40px;
  }

  .mac-features .features-tag-heading {
    font-size: 24px;
    margin: 0 0 8px;
  }

  .mac-features .features-tag-desc {
    font-size: 16px;
    margin: 0 auto 60px;
  }

  .mac-features .features-badges {
    gap: 8px;
  }

  /* -- Component 2: 6-Core Architecture Grid -- */
  .mac-features .features-arch-heading {
    margin-bottom: 16px;
  }

  .mac-features .features-arch-grid {
    gap: 16px;
  }

  .mac-features .arch-card {
    padding: 16px;
  }
}

@media screen and (max-width: 430px) {
  .mac-features {
    padding: 40px 0 0;
  }

  /* -- Component 1: Tag Wall / Badge Pills -- */
  .mac-features .features-tag-desc {
    margin: 0 auto 40px;
  }

  .mac-features .features-badges {
    gap: 12px;
  }

  .mac-features .badge-pill {
    white-space: wrap;
  }

  /* -- Component 2: 6-Core Architecture Grid -- */
  .mac-features .features-arch-heading {
    margin-bottom: 8px;
  }

  .mac-features .features-arch-grid {
    grid-template-columns: repeat(1, 1fr);
    gap: 8px;
  }
}


/* ── AI Section ─────────────────────────── */
.mac-ai {
  padding: 160px 0 80px;
  background: #fff;
  position: relative;
}

.mac-ai .ai-glow {
  position: absolute;
  width: 335px;
  height: 335px;
  background: #FF7F00;
  mix-blend-mode: normal;
  filter: blur(200px);
  border-radius: 9999px;
  z-index: 0;
  pointer-events: none;
  left: 45%;
  top: 12%;
  transform: translate(0, 0);
}

.mac-ai .ai-glow--2 {
  width: 211px;
  height: 211px;
  left: 70%;
  top: 40%;
}

.mac-ai .ai-hero-inner {
  max-width: calc(1200px + 3rem);
  margin: 0 auto 60px;
  padding: 0 1.5rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
  position: relative;
  z-index: 1;
}

/* -- Left Column -- */
.mac-ai .ai-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  font-weight: 600;
  padding: 8px 16px;
  border-radius: 100px;
  position: relative;
  margin-bottom: 16px;
  background: linear-gradient(90deg, #2E194D 0%, #FF7F00 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.mac-ai .ai-hero-badge::before {
  content: "";
  position: absolute;
  inset: 0;
  padding: 2px;
  border-radius: inherit;
  background: linear-gradient(
      90deg,
      #2E194D 0%,
      #FF7F00 100%
  );

  -webkit-mask:
      linear-gradient(#fff 0 0) content-box,
      linear-gradient(#fff 0 0);

  -webkit-mask-composite: xor;
  mask-composite: exclude;

  pointer-events: none;
}

.mac-ai .ai-hero-badge-icon {
  width: 24px;
  height: 24px;
}

.mac-ai .ai-hero-heading {
  font-size: 36px;
  font-weight: 600;
  line-height: 1.25;
  margin: 0 0 16px;
}

.mac-ai .ai-hero-desc {
  font-size: 18px;
  line-height: 1.7;
  margin: 0 0 60px;
}

.mac-ai .ai-hero-cta {
  display: inline-block;
  padding: 17px 48px;
  font-size: 16px;
  font-weight: 600;
  color: #fff;
  background: linear-gradient(to right, #1C1A4E, #FF7F00);
  text-decoration: none;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.mac-ai .ai-hero-cta:hover {
  opacity: 0.92;
  transform: translateY(-1px);
}

.mac-ai .ai-hero-card-rec {
  background: #2E194D;
}

.mac-ai .ai-hero-card-rec-title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5;
  color: #fff;
  margin: 0 0 8px;
}

.mac-ai .ai-hero-card-rec-desc {
  font-size: 14px;
  color: #fff;
  line-height: 1.7;
  margin: 0;
}

/* -- Recommendation Panel -- */
.mac-ai .ai-inner {
  max-width: calc(1200px + 3rem);
  margin: 0 auto;
  padding: 0 1.5rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: start;
}

.mac-ai .ai-heading {
  font-size: 28px;
  font-weight: 600;
  margin: 0 0 28px;
  line-height: 1.5;
  text-transform: capitalize;
}

/* -- Left Column: 5-Step Cycle (Vertical Timeline/Stepper) -- */
.mac-ai .ai-step-list {
  display: flex;
  flex-direction: column;
}

.mac-ai .ai-step {
  display: flex;
  gap: 24px;
  align-items: stretch;
  margin-bottom: 0;
}

.ai-hero-col--right {
  z-index: 1;
}

/* Rail: circle + vertical connector line */
.mac-ai .ai-step-rail {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
  width: 56px;
}

.mac-ai .ai-step-num-container {
  width: 56px;
  height: 56px;
  border-radius: 16px;
  background: #FFF3E6;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  line-height: 1.5;
}

.mac-ai .ai-step-num {
  font-size: 28px;
  font-weight: 700;
  background: linear-gradient(90deg, #2E194D 0%, #FF7F00 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.mac-ai .ai-step-line {
  border: none;
  margin: 0;
  padding: 0;
  width: 4px;
  flex: 1;
  background: #FFD9B3;
  min-height: 24px;
  height: 100%;
}

.mac-ai .ai-step-text {
  flex: 1;
  padding-bottom: 28px;
  border-bottom: 1px solid #E4E4E4;
  margin-bottom: 28px;
}

.mac-ai .ai-step:last-child .ai-step-text {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.mac-ai .ai-step-title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5;
  margin: 0 0 4px;
}

.mac-ai .ai-step-desc {
  font-size: 14px;
  line-height: 1.7;
  margin: 0;
}

/* -- Right Column: Differentiation -- */
.mac-ai .ai-diff-list {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.mac-ai .ai-diff {
  display: flex;
  gap: 16px;
  align-items: flex-start;
}

.mac-ai .ai-diff-icon {
  width: 56px;
  height: 56px;
  min-width: 56px;
}

.mac-ai .ai-diff-text {
  flex: 1;
  padding-bottom: 28px;
  border-bottom: 1px solid #E4E4E4;
}

.mac-ai .ai-diff:last-child .ai-diff-text {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.mac-ai .ai-diff-title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5;
  margin: 0 0 4px;
}

.mac-ai .ai-diff-desc {
  font-size: 14px;
  line-height: 1.7;
  margin: 0;
}

@media screen and (max-width: 959px) {
  .mac-ai {
    padding: 120px 0 60px;
    background: url('assets/images/ai-chat/ai-bg-pad.png');
    background-repeat: no-repeat;
    background-position: top;
    background-size: contain;
  }

  .mac-ai .ai-glow {
    display: none;
  }

  .mac-ai .ai-hero-inner {
    margin: 0 auto 40px;
  }

  /* -- Left Column -- */
  .mac-ai .ai-hero-heading {
    font-size: 24px;
  }

  .mac-ai .ai-hero-desc {
    font-size: 16px;
  }

  /* -- Recommendation Panel -- */
  .mac-ai .ai-hero-card-rec-title {
    font-size: 15px;
    margin: 0 0 6px;
  }

  .mac-ai .ai-hero-card-rec-desc {
    font-size: 14px;
    color: #fff;
    line-height: 1.7;
    margin: 0;
  }

  .mac-ai .ai-heading {
    font-size: 20px;
    margin: 0 0 16px;
  }

  /* -- Left Column: 5-Step Cycle (Vertical Timeline/Stepper) -- */
  .mac-ai .ai-step {
    gap: 16px;
  }

  .mac-ai .ai-step-text {
    padding-bottom: 16px;
    margin-bottom: 16px;
  }

  /* -- Right Column: Differentiation -- */
  .mac-ai .ai-diff-list {
    gap: 16px;
  }

  .mac-ai .ai-diff-text {
    padding-bottom: 16px;
  }
}

@media screen and (max-width: 430px) {
  .mac-ai {
    margin-top: -160px;
    padding: 240px 0 40px;
    background-image: url('assets/images/ai-chat/ai-bg-mobile.png');
    background-position: 0 -80px;
  }

  .mac-ai .ai-hero-inner {
    display: flex;
    flex-direction: column-reverse;
    gap: 40px;
    text-align: center;
  }

  /* -- Left Column -- */
  .mac-ai .ai-hero-desc {
    margin: 0 0 16px;
  }

  .mac-ai .ai-hero-desc b {
    display: block;
  }

  .mac-ai .ai-hero-cta {
    display: inline-block;
    padding: 17px 0;
    width: 100%;
  }

  /* -- Recommendation Panel -- */
  .mac-ai .ai-inner {
    display: flex;
    flex-direction: column;
    gap: 40px;
  }
}


/* ── Why Motherapp Section ────────────────────────── */
.mac-why-motherapp {
  padding: 80px 0;
  background: #2C194F;
}

.mac-why-motherapp .why-motherapp-inner {
  max-width: calc(1200px + 3rem);
  margin: 0 auto;
  padding: 0 1.5rem;
}

.mac-why-motherapp .why-motherapp-header {
  text-align: center;
  margin-bottom: 60px;
}

.mac-why-motherapp .why-motherapp-title {
  font-size: 36px;
  font-weight: 600;
  line-height: 1.25;
  color: #FFFFFF;
  text-transform: uppercase;
  margin: 0 0 16px;
}

.mac-why-motherapp .why-motherapp-subtitle {
  font-size: 18px;
  color: #FFFFFF;
  line-height: 1.7;
  margin: 0;
}

.mac-why-motherapp .why-motherapp-subtitle .text-highlight {
  color: #FF7F00;
  font-weight: 600;
}

/* cards grid */
.cards-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}

/* testimonial item */
.testimonial-item {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

/* last item spans full width and centres itself */
.testimonial-item--last {
  grid-column: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.testimonial-item--last .feedback-svg,
.testimonial-item--last .partner-info {
  /* max-width: 381px; */
  width: 100%;
}

/* feedback SVG bubble */
.feedback-svg {
  display: block;
  width: 100%;
  height: auto;
}

.feedback-svg--pad {
  display: none;
}

.feedback-inner {
  padding: 2px 4px;
}

.feedback-inner .stars {
  height: 28px;
  margin-bottom: 16px;
  background-image: url("assets/images/ai-chat/stars.svg");
  background-repeat: no-repeat;
}

.feedback-inner .comment-text {
  font-size: 14px;
  line-height: 1.7;
  color: #FFFFFF;
  margin: 0;
}

/* partner info */
.partner-info {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 16px;
}

.partner-info .logo-badge img {
  width: 80px;
  height: 80px;
}

.partner-info .partner-name {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5;
  color: #FFFFFF;
}

@media (max-width: 959px) {
  .mac-why-motherapp {
    padding: 60px 0;
  }

  .mac-why-motherapp .why-motherapp-header {
    margin-bottom: 40px;
  }

  .mac-why-motherapp .why-motherapp-title {
    font-size: 24px;
    margin: 0 0 8px;
  }

  .mac-why-motherapp .why-motherapp-subtitle {
    font-size: 16px;
  }

  /* cards grid */
  .cards-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .feedback-svg--desktop {
    display: none;
  }

  .feedback-svg--pad {
    display: block;
  }

  /* last item spans full width and centres itself */
  .testimonial-item--last {
    grid-column: 1 / 1;
    align-items: flex-start;
  }

  /* partner info */
  .partner-info {
    margin-top: 8px;
  }

  .testimonial-item:nth-of-type(2) .partner-info,
  .testimonial-item:nth-of-type(4) .partner-info,
  .testimonial-item:nth-of-type(6) .partner-info {
    flex-direction: row-reverse;
  }
}

@media (max-width: 430px) {
  .mac-why-motherapp {
    padding: 40px 0;
  }

  /* cards grid */
  .cards-grid {
    grid-template-columns: repeat(1, 1fr);
    gap: 24px;
  }
}

/* ── Case Studies Section ────────────────────────── */
.mac-case-studies {
  padding: 80px 0;
  background: rgba(31, 19, 53, 1);
}

.mac-case-studies .case-studies-inner {
  max-width: calc(1200px + 3rem);
  margin: 0 auto;
  padding: 0 1.5rem;
}

/* Header */
.cs-header {
  text-align: center;
  margin-bottom: 60px;
}

.cs-title {
  font-size: 36px;
  font-weight: 600;
  color: #FFFFFF;
  text-transform: uppercase;
  margin: 0 0 16px;
  line-height: 1.25;
}

.cs-desc {
  font-size: 18px;
  color: #FFFFFF;
  line-height: 1.7;
}

/* Portfolio Grid */
.cs-grid-container {
  text-align: center;
}

.cs-grid-heading {
  font-size: 20px;
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 28px;
  background: linear-gradient(90deg, #B17CFF 0%, #FF7F00 100%), linear-gradient(90deg, #2E194D 0%, #B17CFF 100%), linear-gradient(90deg, #2E194D 0%, #FF7F00 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.cs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-bottom: 60px;
}

.cs-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  background: #3A2157;
  padding: 28px;
  text-align: left;
  position: relative;
}

.cs-card:hover h3,
.cs-card:hover p {
  text-decoration: underline;
}

.cs-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: linear-gradient(180deg, #B17CFF 0%, #FF7F00 100%);
}

.cs-card-header {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.cs-card-logo {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  flex-shrink: 0;
}

.cs-card-logo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  padding: 8px;
}

.cs-card-title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5;
  color: #FFFFFF;
  margin: 0;
}

.cs-card-desc {
  font-size: 14px;
  color: #FFFFFF;
  line-height: 1.7;
  margin: 0;
  flex: 1;
}

/* Target Audience Row */
.cs-targets {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  text-align: left;
}

.cs-target {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  padding: 16px;
  background: #241733;
  border: 2px solid #FFFFFF4D
}

.cs-target-header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}

.cs-target-icon {
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cs-target-title {
  font-size: 20px;
  font-weight: 600;
  color: #FFFFFF;
  text-transform: capitalize;
  margin: 0;
}

.cs-target-desc {
  font-size: 14px;
  color: #FFFFFF;
  margin: 0;
  line-height: 1.7;
}

@media (max-width: 959px) {
  .mac-case-studies {
    padding: 60px 0;
  }

  /* Header */
  .cs-header {
    margin-bottom: 40px;
  }

  .cs-title {
    font-size: 24px;
    margin: 0 0 8px;
  }

  .cs-desc {
    font-size: 16px;
  }

  /* Portfolio Grid */
  .cs-grid-heading {
    font-size: 20px;
    margin-bottom: 16px;
  }

  .cs-grid {
    gap: 16px;
    margin-bottom: 40px;
  }

  .cs-card {
    padding: 16px;
  }

  /* Target Audience Row */
  .cs-target {
    gap: 8px;
  }
}

@media (max-width: 430px) {
  .mac-case-studies {
    padding: 40px 0;
  }

  /* Portfolio Grid */
  .cs-grid-heading {
    margin-bottom: 8px;
  }

  .cs-grid {
    grid-template-columns: repeat(1, 1fr);
    gap: 8px;
  }

  .cs-card {
    padding: 8px 16px;
  }

  /* Target Audience Row */
  .cs-targets {
    grid-template-columns: repeat(1, 1fr);
  }

  .cs-target-header {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
  }
}


/* ── Pricing V2 Section ────────────────────────── */
.mac-pricing-v2 {
  padding: 80px 0;
  background: #2C194F;
}

.mac-pricing-v2 .pricing-v2-inner {
  max-width: calc(1200px + 3rem);
  margin: 0 auto;
  padding: 0 1.5rem;
}

.pricing-v2-header {
  text-align: center;
  margin-bottom: 60px;
}

.pricing-v2-title {
  font-size: 36px;
  font-weight: 600;
  line-height: 1.25;
  color: #FFFFFF;
  text-transform: uppercase;
  margin: 0 0 16px;
}

.pricing-v2-subtitle {
  font-size: 18px;
  color: #FFFFFF;
  line-height: 1.7;
}

/* Pricing Grid */
.pricing-v2-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin: 0 auto 60px;
}

/* Pricing Card */
.pv2-card {
  display: flex;
  flex-direction: column;
  background: #1E1034;
  padding: 28px;
  position: relative;
}

.pv2-card--featured::before {
  content: "";
  position: absolute;
  inset: 0;
  padding: 3px;
  border-radius: inherit;
  background: linear-gradient(90deg, #B17CFF 0%, #FF7F00 100%);

  -webkit-mask:
      linear-gradient(#fff 0 0) content-box,
      linear-gradient(#fff 0 0);

  -webkit-mask-composite: xor;
  mask-composite: exclude;

  pointer-events: none;
}

/* Stage Badge */
.pv2-stage-badge {
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  color: #FFFFFF;
  background: #9B9B9B;
  border: 1px solid #FF7F00;
  border-radius: 100px;
  padding: 7px 15px;
  width: fit-content;
  position: absolute;
  top: 0;
  transform: translateY(-50%); 
}

.pv2-card:nth-of-type(2) .pv2-stage-badge {
  background: linear-gradient(90deg, #2E194D 0%, #361F58 7.14%, #3F2664 14.29%, #472C70 21.43%, #50337C 28.57%, #593A88 35.71%, #624195 42.86%, #6C48A1 50%, #754FAE 57.14%, #7F56BB 64.29%, #895EC9 71.43%, #9365D6 78.57%, #9D6DE3 85.71%, #A774F1 92.86%, #B17CFF 100%);
}

.pv2-card:nth-of-type(3) .pv2-stage-badge {
  background: #2E194D;
}

/* Card Label */
.pv2-card-label {
  display: block;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5;
  text-transform: capitalize;
  color: #C0C0C0;
  margin-bottom: 8px;
}

/* Card Title */
.pv2-card-title {
  font-size: 28px;
  font-weight: 600;
  line-height: 1.5;
  color: #FFFFFF;
  margin: 0 0 8px;
}

/* Card Description */
.pv2-card-desc {
  font-size: 14px;
  color: #FFFFFF;
  line-height: 1.7;
  margin: 0;
}

.pv2-card-top {
  min-height: 226px;
}

.pv2-card-middle {
  flex: 1;
  display: flex;
  flex-direction: column;
}

/* Divider */
.pv2-divider {
  border: none;
  border-top: 1px solid #9B9B9B;
  margin: 28px 0;
}

/* Features Title */
.pv2-features-title {
  display: block;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5;
  text-transform: capitalize;
  margin-bottom: 16px;
  background: linear-gradient(90deg, #B17CFF 0%, #FF7F00 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* Features List */
.pv2-features-list {
  list-style: none;
  padding: 0;
  margin: 0 0 28px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.pv2-features-list li {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #FFFFFF;
  line-height: 1.7;
}

.pv2-features-list li svg {
  width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  border-radius: 50%;
  background-color: #FF7F00;
  margin: 6px;
}

.pv2-check {
  flex-shrink: 0;
  margin-top: 2px;
}

/* Buttons */
.pv2-btn {
  display: block;
  width: 100%;
  text-align: center;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  text-transform: capitalize;
  padding: 16px 0;
  cursor: pointer;
  margin-top: auto;
}

.pv2-btn--outline {
  background: transparent;
  color: #FF7F00;
  border: 2px solid #FF7F00;
}

.pv2-btn--solid {
  background: #FF7F00;
  color: #FFFFFF;
  border: 2px solid #FF7F00;
}

/* Footer Banner */
.pv2-banner {
  background: #1E1034;
  padding: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 60px;
  max-width: calc(1200px + 3rem);
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}

.pv2-banner::after {
  display: inline-block;
  content: '';
  width: 210px;
  height: 210px;
  position: absolute;
  right: 0;
  top: 0;
  background: #FF7F00;
  filter: blur(200px);
  border-radius: 9951.61px;
}

.pv2-banner-text {
  flex: 1;
}

.pv2-banner-title {
  font-size: 28px;
  font-weight: 600;
  line-height: 1.5;
  color: #FFFFFF;
  margin: 0 0 16px;
}

.pv2-banner-desc {
  font-size: 14px;
  color: #FFFFFF;
  line-height: 1.7;
  margin: 0;
}

.pv2-banner-cta {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  z-index: 10;
}

.pv2-btn--banner-cta {
  width: auto;
  white-space: nowrap;
  padding: 16px 48px;
}

@media (max-width: 959px) {
  .mac-pricing-v2 {
    padding: 60px 0;
  }

  .pricing-v2-header {
    margin-bottom: 40px;
  }

  .pricing-v2-title {
    font-size: 24px;
    margin: 0 0 8px;
  }

  .pricing-v2-subtitle {
    font-size: 16px;
  }

  /* Pricing Grid */
  .pricing-v2-grid {
    gap: 16px;
    margin: 0 auto 40px;
  }

  /* Pricing Card */
  .pv2-card {
    padding: 24px;
  }

  /* Card Title */
  .pv2-card-title {
    font-size: 20px;
  }

  /* Divider */
  .pv2-divider {
    margin: 16px 0;
  }

  /* Features List */
  .pv2-features-list {
    margin: 0 0 16px;
  }

  /* Footer Banner */
  .pv2-banner {
    padding: 24px;
    gap: 40px;
    background: url('assets/images/ai-chat/cta-bg-pad.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }

  .pv2-banner::after {
    display: none;
  }

  .pv2-banner-title {
    font-size: 20px;
    margin: 0 0 8px;
  }
}

@media (max-width: 430px) {
  .mac-pricing-v2 {
    padding: 40px 0;
  }

  /* Pricing Grid */
  .pricing-v2-grid {
    grid-template-columns: repeat(1, 1fr);
    gap: 24px;
  }

  /* Footer Banner */
  .pv2-banner {
    flex-direction: column;
    gap: 16px;
    background-image: url('assets/images/ai-chat/cta-bg-mobile.png');
  }

  /* .pv2-banner::after {
    bottom: 0;
  } */

  .pv2-banner-cta {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    width: 100%;
  }

  .pv2-btn--banner-cta {
    width: 100%;
    white-space: nowrap;
    padding: 16px 0;
  }
}


/* ── Reviews CTA Section ────────────────────────── */
.mac-reviews-cta {
  padding: 80px 0;
  background: #1C0D35;
  position: relative;
  overflow: hidden;
}

.mac-reviews-cta::before {
  display: inline-block;
  content: "";
  width: 335px;
  height: 335px;
  background: #FF7F00;
  mix-blend-mode: normal;
  border-radius: 9999px;
  filter: blur(300px);
  position: absolute;
  left: calc((100vw - 1200px - 3rem) / 2);
  bottom: 0;
  transform: translateY(50%);
}

.mac-reviews-cta::after {
  display: inline-block;
  content: "";
  width: 210px;
  height: 210px;
  background: #FF7F00;
  mix-blend-mode: normal;
  border-radius: 9999px;
  filter: blur(200px);
  position: absolute;
  right: calc((100vw - 1200px - 3rem) / 2);
  top: 0;
  transform: translateY(-50%);
}

.mac-reviews-cta .reviews-cta-inner {
  max-width: calc(1200px + 3rem);
  margin: 0 auto;
  padding: 0 1.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative;
}

.reviews-cta-title {
  font-size: 36px;
  font-weight: 600;
  color: #FFFFFF;
  text-transform: uppercase;
  margin: 0 0 16px;
  line-height: 1.25;
}

.reviews-cta-desc {
  font-size: 18px;
  color: #FFFFFF;
  line-height: 1.7;
  margin: 0 0 60px;
}

.reviews-cta-actions {
  display: flex;
  gap: 28px;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 28px;
}

.rcta-btn {
  display: inline-block;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
  text-transform: capitalize;
  padding: 16px 0;
  cursor: pointer;
  width: 335px;
}

.rcta-btn--solid {
  background: #FF7F00;
  color: #FFFFFF;
  border: 2px solid #FF7F00;
}

.rcta-btn--outline {
  background: transparent;
  color: #FF7F00;
  border: 1.5px solid #FF7F00;
}

.reviews-cta-note {
  font-size: 14px;
  color: #FFFFFF;
  margin: 0;
  line-height: 1.7;
}

@media (max-width: 959px) {
  .mac-reviews-cta {
    padding: 60px 0;
    background: url('assets/images/ai-chat/review-bg-pad.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }

  /* .mac-reviews-cta::before {
    left: 0;
    bottom: 0;
    transform: translate(-50%, 50%);
  }

  .mac-reviews-cta::after {
    right: 0;
    top: 0;
    transform: translateX(50%);
  } */

  .mac-reviews-cta::before,
  .mac-reviews-cta::after {
    display: none;
  }

  .reviews-cta-title {
    font-size: 24px;
    margin: 0 0 8px;
  }

  .reviews-cta-desc {
    font-size: 16px;
    margin: 0 0 40px;
  }

  .reviews-cta-actions {
    gap: 16px;
    margin-bottom: 16px;
  }
}

@media (max-width: 430px) {
  .mac-reviews-cta {
    padding: 40px 0;
    background-image: url('assets/images/ai-chat/review-bg-mobile.png');
  }

  .mac-reviews-cta::before {
    left: 0;
    bottom: 0;
    transform: translate(-40%, -110%);
  }

  .mac-reviews-cta::after {
    right: 0;
    top: 0;
    transform: translate(60%, -10%);
  }

  .reviews-cta-actions {
    flex-direction: column;
  }
}
