/* Infonova Home v7 — structural review */
:root { --home-header-height: 104px; --home-header-sticky-height: 82px; }
html { scroll-behavior: smooth; scroll-padding-top: calc(var(--home-header-sticky-height) + 20px); }
section { scroll-margin-top: calc(var(--home-header-sticky-height) + 20px); }

/* Header: one CTA and a compact sticky state */
.main-menu-two__wrapper-inner { min-height: var(--home-header-height); padding: 0 clamp(24px, 4vw, 64px); flex-wrap: nowrap; gap: 28px; }
.main-menu-two__left { padding: 18px 0; flex: 0 0 auto; }
.main-menu-two__logo img { width: clamp(170px, 14vw, 215px); height: auto; }
.main-menu-two__main-menu-box { margin-left: auto; }
.main-menu .main-menu__list { gap: clamp(14px, 1.6vw, 30px); }
.main-menu .main-menu__list > li + li { margin-left: 0 !important; }
.main-menu .main-menu__list > li > a { font-size: 15px !important; white-space: nowrap; }
.main-menu .main-menu__list > li:last-child { margin-left: 6px; }
.btn-cta { padding: 16px 22px 15px; font-size: 15px; white-space: nowrap; }
.stricky-header.main-menu-two { background: #08182d; }
.stricky-header .main-menu-two__wrapper-inner { min-height: var(--home-header-sticky-height); }
.stricky-header .main-menu-two__left { padding: 10px 0; }
.stricky-header .main-menu-two__logo img { width: 175px; }
.stricky-header .btn-cta { padding: 13px 18px 12px; }

/* Section rhythm */
.about-two { padding: 96px 0 86px; }
.about-two__img-2 { bottom: -118px; right: -78px; max-width: 300px; }
.about-two__shape-1 { height: 500px; }
.about-two__client-box { margin-top: 18px; }
.about-two__experience-contact-and-btn { justify-content: flex-start; margin-top: 30px; }
.about-two__experience-contact-and-btn .about-two__btn-box { margin-left: 0 !important; }
.services-two { padding: 92px 0 76px; }
.services-two__top { margin-bottom: 34px; }
.services-two__intro { color: var(--techguru-gray); font-size: 18px; line-height: 1.6; margin-top: 18px; }
.services-two__services-list-single { padding: 25px 0 24px; }
.services-three { padding: 92px 0 88px; }
.process-one { padding: 92px 0 88px; }
.testimonial-two { padding: 92px 0 82px; }
.contact-two { padding-top: 92px !important; padding-bottom: 92px !important; }
.blog-two { padding: 92px 0 76px; }
.blog-two__top-btn-box { margin-bottom: 0 !important; }

/* Static differentials: four visible cards, no hidden carousel item */
.services-three__grid-v7 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; margin-top: 42px; }
.services-three__grid-item-v7 { min-width: 0; }
.services-three__grid-v7 .services-three__single { height: 100%; min-height: 440px; }

/* Compact methodology in a clear 2x3 card grid */
.process-one .row { align-items: flex-start; }
.process-one__left { position: sticky; top: calc(var(--home-header-sticky-height) + 28px); margin-top: 0; }
.process-one__right { margin-left: 0; }
.process-one__process-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.process-one__process-list::before { display: none; }
.process-one__process-list li,
.process-one__process-list li:nth-child(1),
.process-one__process-list li:nth-child(3) { display: grid; grid-template-columns: 58px minmax(0, 1fr); align-items: start; gap: 16px; margin: 0 !important; min-height: 220px; padding: 24px; border: 1px solid rgba(92,176,233,.22); border-radius: 24px; background: rgba(255,255,255,.035); }
.process-one__process-count { grid-column: 1; grid-row: 1; }
.process-one__process-content { grid-column: 2; grid-row: 1; text-align: left !important; }
.process-one__process-content::before { display: none; }
.process-one__process-count::before { font-size: 48px !important; line-height: 1 !important; }
.process-one__process-title { font-size: 20px !important; line-height: 1.3; }
.process-one__process-text { font-size: 14px !important; line-height: 1.6; margin-top: 9px; }

/* Fixed testimonials */
.testimonial-two__grid-v7 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; margin-top: 42px; }
.testimonial-two__grid-item-v7 { min-width: 0; display: flex; }
.testimonial-two__grid-item-v7 .testimonial-two__single { margin-left: 0; width: 100%; display: flex; flex-direction: column; min-height: 430px; padding-right: 30px; }
.testimonial-two__grid-item-v7 .testimonial-two__single-inner { flex: 1; padding-right: 0; }
.testimonial-two__grid-item-v7 .testimonial-two__client-info { margin-top: auto; }
.testimonial-extra-v7 { display: none; grid-column: 2 / 3; }
.testimonial-two__grid-v7.is-expanded-v7 .testimonial-extra-v7 { display: flex; }
.testimonial-controls-v7 { display: flex; justify-content: center; margin-top: 34px; }
.testimonial-controls-v7 .thm-btn { border: 0; cursor: pointer; }
.brand-grid-heading-v7 { text-align: center; color: #0b192c; font-size: 20px; font-weight: 700; margin: 70px 0 28px; }
.sliding-text-two__wrap { padding-top: 0 !important; }
.sliding-text-two__wrap .brand-logo { max-height: 70px; object-fit: contain; }

/* Compact form */
.contact-two__left { margin-left: 0; padding-right: 52px; }
.contact-two__right { padding: 30px; }
.contact-one__input-title { margin-bottom: 7px !important; }
.contact-one__input-box { margin-bottom: 18px !important; }
.contact-one__input-box input,
.contact-one__input-box select { min-height: 58px !important; }
.contact-one__input-box textarea { min-height: 130px !important; }
#home-form-result-v7 { margin-top: 16px; color: #ffd25a; font-weight: 600; }

/* Case placeholders now look intentional */
.blog-two__img img, .blog-two__img-two img { object-fit: cover; background: #0b192c; }
.blog-two__img img { aspect-ratio: 531 / 257; }
.blog-two__img-two img { aspect-ratio: 1 / 1; }

/* Compact back-to-top and a single floating WhatsApp */
.scroll-to-top { width: 46px; height: 46px; right: 24px; bottom: 24px; border-radius: 50%; transform: none; justify-content: center; background: #ffd25a; color: #08182d; box-shadow: 0 10px 30px rgba(0,0,0,.25); }
.scroll-to-top.show { bottom: 24px; }
.scroll-to-top:hover { background: #fff; color: #08182d; }
.scroll-to-top .fa-arrow-up { font-size: 16px; }
.whatsapp-float-v7 { position: fixed; right: 24px; bottom: 82px; z-index: 995; min-width: 54px; height: 54px; padding: 0 17px; display: flex; align-items: center; justify-content: center; gap: 9px; border-radius: 28px; background: #25d366; color: #fff; box-shadow: 0 10px 30px rgba(0,0,0,.28); transition: .25s ease; }
.whatsapp-float-v7:hover { color: #fff; transform: translateY(-3px); }
.whatsapp-float-v7 .fa-whatsapp { font-size: 27px; }
.whatsapp-float-v7__label { font-size: 14px; font-weight: 700; }

@media (max-width: 1399px) {
  .main-menu-two__wrapper-inner { padding-inline: 28px; gap: 18px; }
  .main-menu .main-menu__list { gap: 16px; }
  .main-menu .main-menu__list > li > a { font-size: 14px !important; }
  .btn-cta { padding-inline: 17px; font-size: 14px; }
}
@media (max-width: 1199px) {
  :root { --home-header-height: 88px; --home-header-sticky-height: 76px; }
  .main-menu-two__wrapper-inner { min-height: var(--home-header-height); }
  .main-menu-two__logo img { width: 175px; }
  .services-three__grid-v7 { grid-template-columns: 1fr 1fr; }
  .process-one__left { position: relative; top: auto; margin-bottom: 38px; }
  .process-one__process-list { grid-template-columns: 1fr 1fr; }
  .testimonial-two__grid-v7 { grid-template-columns: 1fr 1fr; }
  .testimonial-extra-v7 { grid-column: auto; }
}
@media (max-width: 991px) {
  .main-menu-two__wrapper-inner { min-height: 82px; }
  .main-menu-two__left { padding: 12px 0; }
  .services-three__grid-v7, .process-one__process-list, .testimonial-two__grid-v7 { grid-template-columns: 1fr; }
  .services-three__grid-v7 .services-three__single { min-height: auto; }
  .process-one__process-list li, .process-one__process-list li:nth-child(1), .process-one__process-list li:nth-child(3) { min-height: auto; }
  .testimonial-two__grid-item-v7 .testimonial-two__single { min-height: auto; }
  .testimonial-extra-v7 { grid-column: auto; }
  .contact-two__left { padding-right: 0; }
  .about-two__img-2 { bottom: -75px; right: -20px; }
}
@media (max-width: 767px) {
  .about-two, .services-two, .services-three, .process-one, .testimonial-two, .blog-two { padding-top: 72px; padding-bottom: 64px; }
  .contact-two { padding-top: 72px !important; padding-bottom: 64px !important; }
  .main-slider-two__title { font-size: 44px !important; line-height: 1.08 !important; }
  .services-two__services-list-single { align-items: flex-start; }
  .services-two__hover-img { display: none; }
  .process-one__process-list li, .process-one__process-list li:nth-child(1), .process-one__process-list li:nth-child(3) { grid-template-columns: 48px minmax(0, 1fr); padding: 20px; }
  .process-one__process-count::before { font-size: 38px !important; }
  .whatsapp-float-v7 { right: 16px; bottom: 76px; width: 52px; min-width: 52px; padding: 0; }
  .whatsapp-float-v7__label { display: none; }
  .scroll-to-top { right: 16px; bottom: 16px; }
  .scroll-to-top.show { bottom: 16px; }
  .brand-grid-heading-v7 { margin-top: 50px; font-size: 18px; }
}

/* Immediate content visibility: avoid delayed/half-rendered headings while scrolling. */
.section-title__title,
.section-title__title * { opacity: 1 !important; visibility: visible !important; transform: none !important; }

/* Menu vertical rhythm */
.main-menu .main-menu__list > li { padding-top: 32px; padding-bottom: 32px; }
.stricky-header .main-menu__list > li { padding-top: 22px; padding-bottom: 22px; }
.stricky-header .main-menu-two__wrapper-inner { min-height: 76px; }
.stricky-header .main-menu-two__left { padding: 8px 0; }

/* Keep company marks inside testimonial medallions. */
.testimonial-two__client-img img { width: 100px !important; height: 100px !important; object-fit: contain !important; padding: 17px !important; }
html, body { max-width: 100%; overflow-x: hidden; }

/* Infonova Home v8 — case artwork full bleed and RD Station form slot */
.blog-two__img,
.blog-two__img-two {
  position: relative;
  overflow: hidden;
  background: #0b192c;
}
.blog-two__img { aspect-ratio: 531 / 257; }
.blog-two__img-two {
  width: 250px;
  max-width: 250px;
  flex: 0 0 250px;
  aspect-ratio: 1 / 1;
}
.blog-two__img img,
.blog-two__img-two img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100% !important;
  height: 100% !important;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover !important;
  object-position: center center;
  border-radius: inherit;
}
.blog-two__img-two img { transform: scale(1.035); }
.blog-two__single:hover .blog-two__img img { transform: scale(1.045); }
.blog-two__single-two:hover .blog-two__img-two img { transform: scale(1.075); }

/* Smaller, translucent preview ready to receive RD Station HTML. */
.contact-two .row { align-items: center; }
.contact-two__right.rd-form-shell-v8 {
  position: relative;
  max-width: 610px;
  min-height: 500px;
  margin-left: auto;
  padding: 22px;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 28px;
  background: rgba(5,14,27,.66);
  box-shadow: 0 24px 70px rgba(0,0,0,.18);
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
}
.rd-form-preview-v8 {
  opacity: .28;
  filter: saturate(.55);
  pointer-events: none;
  user-select: none;
  transition: opacity .2s ease;
}
.rd-form-mount-v8 {
  position: absolute;
  inset: 22px;
  z-index: 5;
}
.rd-form-mount-v8:empty { pointer-events: none; }
.rd-form-shell-v8:has(.rd-form-mount-v8:not(:empty)) .rd-form-preview-v8 { opacity: 0; }
.rd-form-preview-v8 .contact-one__input-title {
  font-size: 12px !important;
  line-height: 1.25;
  margin-bottom: 5px !important;
}
.rd-form-preview-v8 .contact-one__input-box { margin-bottom: 10px !important; }
.rd-form-preview-v8 .contact-one__input-box input,
.rd-form-preview-v8 .contact-one__input-box select {
  min-height: 48px !important;
  height: 48px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.rd-form-preview-v8 .contact-one__input-box textarea {
  min-height: 88px !important;
  height: 88px !important;
}
.rd-form-preview-v8 .contact-one__privacy-text {
  margin-bottom: 12px !important;
  font-size: 10px !important;
}
.rd-form-preview-v8 .thm-btn {
  min-height: 48px;
  padding-top: 13px;
  padding-bottom: 13px;
}

@media (max-width: 1199px) {
  .contact-two__right.rd-form-shell-v8 { max-width: none; margin-top: 34px; }
}
@media (max-width: 767px) {
  .blog-two__img-two { width: 100%; max-width: none; flex-basis: auto; }
  .contact-two__right.rd-form-shell-v8 { min-height: 620px; padding: 18px; }
  .rd-form-mount-v8 { inset: 18px; }
}

/* Infonova Home v9 — staircase methodology and clean case artwork */

/* Methodology: restore a visible sequential staircase on desktop. */
.process-one__process-list {
  align-items: start;
  padding-bottom: 76px;
}
.process-one__process-list li:nth-child(1) { grid-column: 1; grid-row: 1; }
.process-one__process-list li:nth-child(2) { grid-column: 2; grid-row: 1; transform: translateY(72px); }
.process-one__process-list li:nth-child(3) { grid-column: 1; grid-row: 2; }
.process-one__process-list li:nth-child(4) { grid-column: 2; grid-row: 2; transform: translateY(72px); }
.process-one__process-list li:nth-child(5) { grid-column: 1; grid-row: 3; }
.process-one__process-list li:nth-child(6) { grid-column: 2; grid-row: 3; transform: translateY(72px); }

/* Remove legacy author/avatar ornaments that were peeking from behind case artwork. */
.blog-two__user,
.blog-two__user-two {
  display: none !important;
}
.blog-two__img::before,
.blog-two__img-two::before {
  content: none !important;
  display: none !important;
}
.blog-two__img,
.blog-two__img-two {
  isolation: isolate;
}
.blog-two__img img,
.blog-two__img-two img {
  z-index: 2;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.blog-two__content,
.blog-two__content-two {
  z-index: 3;
}

/* Keep the provisional illustrations completely contained by each image frame. */
.blog-two__img-two {
  border-radius: 28px;
  clip-path: inset(0 round 28px);
}
.blog-two__img {
  border-radius: 24px;
  clip-path: inset(0 round 24px);
}

@media (max-width: 991px) {
  .process-one__process-list { padding-bottom: 0; }
  .process-one__process-list li:nth-child(n) {
    grid-column: auto;
    grid-row: auto;
    transform: none;
  }
}
