/* ==========================================================================
   Paramount Infinet - Redesign layer (2026)
   Pure CSS enhancement layer. No markup/content/meta changes required.
   Loaded LAST so it safely refines the existing theme.
   ========================================================================== */

:root {
  --pi-orange: #fd6802;
  --pi-orange-dark: #e05500;
  --pi-amber: #fcbf02;
  --pi-ink: #14161c;
  --pi-ink-soft: #3b4150;
  --pi-line: rgba(20, 22, 28, .08);
  --pi-surface: #ffffff;
  --pi-surface-2: #f6f7fb;
  --pi-shadow-sm: 0 2px 10px rgba(20, 22, 28, .06);
  --pi-shadow: 0 12px 34px rgba(20, 22, 28, .10);
  --pi-shadow-lg: 0 24px 60px rgba(20, 22, 28, .16);
  --pi-grad: linear-gradient(135deg, var(--pi-orange) 0%, var(--pi-amber) 100%);
  --pi-radius: 14px;
  --pi-radius-lg: 22px;
  --pi-ease: cubic-bezier(.22, .61, .36, 1);
}

/* ---------- Typography : Ubuntu everywhere ---------- */
html body,
body, p, div, span, li, a, td, th, label, input, textarea, select, button,
h1, h2, h3, h4, h5, h6,
.navbar-nav > li > a, .btn, .button,
.slider-content-area h1, .slider-content-area h2,
.section-title h2, .section-title h3 {
  font-family: "Ubuntu", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
}
[class*="fa-"], .fa, .icon, [class^="icon-"], [class*=" icon-"],
[class^="flaticon-"], [class*=" flaticon-"] {
  font-family: inherit;
}
.fa { font-family: FontAwesome !important; }
[class^="icon-"], [class*=" icon-"] { font-family: "icomoon" !important; }
[class^="flaticon-"], [class*=" flaticon-"] { font-family: "Flaticon" !important; }
.glyphicon { font-family: "Glyphicons Halflings" !important; }

body {
  color: var(--pi-ink-soft);
  font-size: 15.5px;
  line-height: 1.75;
  letter-spacing: .1px;
  -webkit-font-smoothing: antialiased;
  background: var(--pi-surface);
}

h1, h2, h3, h4, h5, h6 {
  color: var(--pi-ink);
  font-weight: 700;
  letter-spacing: -.4px;
}
h1 { line-height: 1.15; }
h2 { line-height: 1.2; }

a { transition: color .25s var(--pi-ease), background-color .25s var(--pi-ease), box-shadow .25s var(--pi-ease); }
a:hover, a:focus { color: var(--pi-orange); text-decoration: none; }

::selection { background: var(--pi-orange); color: #fff; }

/* ---------- Top bar ---------- */
.top-bar {
  background: var(--pi-ink) !important;
  border-bottom: 1px solid rgba(255, 255, 255, .06);
  padding: 6px 0;
}
.top-bar a, .top-bar li a, .top-bar .email-box a, .top-bar .phone-box a {
  color: rgba(255, 255, 255, .82) !important;
  font-size: 13.5px;
  letter-spacing: .2px;
}
.top-bar a:hover { color: var(--pi-amber) !important; }
.top-bar .social-box ul li a {
  display: inline-flex; align-items: center; justify-content: center;
  width: 30px; height: 30px; border-radius: 50%;
  background: rgba(255, 255, 255, .07);
  margin-left: 6px;
}
.top-bar .social-box ul li a:hover { background: var(--pi-orange); color: #fff !important; }

/* ---------- Header / nav ---------- */
.header, .header_style_01 {
  background: rgba(255, 255, 255, .92) !important;
  backdrop-filter: saturate(160%) blur(10px);
  -webkit-backdrop-filter: saturate(160%) blur(10px);
  box-shadow: var(--pi-shadow-sm);
  border-bottom: 1px solid var(--pi-line);
}
.header .navbar { margin-bottom: 0; border: 0; background: transparent; }
.navbar-brand { padding: 10px 15px; height: auto; }
.navbar-brand img { max-height: 54px; width: auto; transition: transform .3s var(--pi-ease); }
.navbar-brand:hover img { transform: scale(1.03); }

.navbar-nav > li > a {
  color: var(--pi-ink) !important;
  font-weight: 500;
  font-size: 14.5px;
  padding: 26px 14px;
  position: relative;
  text-transform: none;
}
.navbar-nav > li > a::after {
  content: "";
  position: absolute;
  left: 14px; right: 14px; bottom: 18px;
  height: 2px;
  border-radius: 2px;
  background: var(--pi-grad);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform .3s var(--pi-ease);
}
.navbar-nav > li > a:hover::after,
.navbar-nav > li > a.active::after { transform: scaleX(1); }
.navbar-nav > li > a:hover,
.navbar-nav > li > a.active { color: var(--pi-orange) !important; background: transparent !important; }

/* Self care CTA in nav */
.navbar-nav > li.nav-cta { padding: 15px 0 15px 12px; }
.navbar-nav > li.nav-cta > a {
  background: var(--pi-grad) !important;
  color: #fff !important;
  padding: 11px 22px !important;
  border-radius: 999px;
  font-weight: 600;
  box-shadow: 0 10px 22px rgba(253, 104, 2, .30);
  display: inline-block;
}
.navbar-nav > li.nav-cta > a::after { display: none; }
.navbar-nav > li.nav-cta > a:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 30px rgba(253, 104, 2, .40);
  color: #fff !important;
}
.navbar-nav > li.nav-cta > a i { margin-right: 7px; }

.navbar-toggle { border-color: var(--pi-line); margin-top: 18px; }
.navbar-toggle .icon-bar { background: var(--pi-ink); }

/* ---------- Buttons ---------- */
.btn, .button, .btn-radius, .btn-brd, input[type="submit"], button.btn {
  border-radius: 999px !important;
  font-weight: 600;
  letter-spacing: .2px;
  padding: 12px 30px;
  transition: transform .25s var(--pi-ease), box-shadow .25s var(--pi-ease), background-color .25s var(--pi-ease), color .25s var(--pi-ease);
}
.btn:hover, .button:hover, input[type="submit"]:hover {
  transform: translateY(-2px);
  box-shadow: var(--pi-shadow);
}
.btn-light, .button.btn-light {
  background: rgba(255, 255, 255, .10);
  border: 2px solid rgba(255, 255, 255, .85);
  color: #fff;
}
.btn-light:hover, .button.btn-light:hover {
  background: var(--pi-grad);
  border-color: transparent;
  color: #fff;
}
.btn-primary, .btn-default.btn-orange, .btn-orange {
  background: var(--pi-grad);
  border: 0;
  color: #fff;
}

/* ---------- Slider / hero ---------- */
.slider-area .slider-item { position: relative; }
.slider-area .slider-item::before {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(10, 12, 18, .70) 0%, rgba(10, 12, 18, .45) 45%, rgba(10, 12, 18, .78) 100%);
  z-index: 1;
}
.slider-area .container, .slider-content-area { position: relative; z-index: 2; }
.slider-content-area h1,
.slider-content-area h2 { color: #fff; text-shadow: 0 2px 24px rgba(0, 0, 0, .35); }
.slider-content-area h1 {
  font-size: 58px;
  font-weight: 700;
  letter-spacing: -1.4px;
  margin-bottom: 18px;
}
.slider-content-area h1 span {
  background: var(--pi-grad);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.slider-content-area h2 { font-size: 19px; font-weight: 400; opacity: .92; }
.slide-text { animation: piFadeUp .9s var(--pi-ease) both; }
.slider-content-btn { margin-top: 28px; }
.slider-content-btn .btn + .btn, .slider-content-btn a + a { margin-left: 10px; }

@keyframes piFadeUp {
  from { opacity: 0; transform: translateY(26px); }
  to { opacity: 1; transform: none; }
}

/* ---------- Sections ---------- */
section, .section, .about-section, .services-section {
  position: relative;
}
.section-title h2, .section-title h3, .heading-title h2 {
  position: relative;
  display: inline-block;
  padding-bottom: 16px;
}
.section-title h2::after, .section-title h3::after, .heading-title h2::after {
  content: "";
  position: absolute;
  left: 50%; bottom: 0;
  transform: translateX(-50%);
  width: 68px; height: 4px;
  border-radius: 4px;
  background: var(--pi-grad);
}

/* Generic card polish */
.services-box, .service-box, .single-service, .pricing-box, .price-box,
.team-box, .testimonial-box, .feedback-box, .blog-box, .client-box, .box,
.panel, .well, .thumbnail {
  background: var(--pi-surface);
  border: 1px solid var(--pi-line) !important;
  border-radius: var(--pi-radius-lg) !important;
  box-shadow: var(--pi-shadow-sm);
  transition: transform .35s var(--pi-ease), box-shadow .35s var(--pi-ease), border-color .35s var(--pi-ease);
}
.services-box:hover, .service-box:hover, .single-service:hover, .pricing-box:hover,
.price-box:hover, .team-box:hover, .testimonial-box:hover, .feedback-box:hover,
.blog-box:hover, .client-box:hover, .thumbnail:hover {
  transform: translateY(-8px);
  box-shadow: var(--pi-shadow-lg);
  border-color: rgba(253, 104, 2, .35) !important;
}

img { max-width: 100%; height: auto; }
.thumbnail img, .client-box img, .services-box img { border-radius: 12px; }

/* Icon accents */
.services-box i, .service-box i, .single-service i,
.services-box [class^="flaticon-"], .services-box [class^="icon-"] {
  color: var(--pi-orange);
}

/* ---------- Tables / plans ---------- */
.table, table {
  border-radius: var(--pi-radius);
  overflow: hidden;
  box-shadow: var(--pi-shadow-sm);
  background: var(--pi-surface);
}
.table > thead > tr > th, table thead th {
  background: var(--pi-ink);
  color: #fff !important;
  border: 0 !important;
  font-weight: 600;
  letter-spacing: .3px;
}
.table > tbody > tr:nth-child(even) { background: var(--pi-surface-2); }
.table > tbody > tr:hover { background: rgba(253, 104, 2, .07); }
.table > tbody > tr > td { border-color: var(--pi-line) !important; vertical-align: middle; }

/* ---------- Forms (styling only, markup untouched) ---------- */
.form-control, input[type="text"], input[type="email"], input[type="tel"],
input[type="number"], textarea, select.form-control {
  border-radius: 12px !important;
  border: 1px solid var(--pi-line) !important;
  background: var(--pi-surface-2) !important;
  box-shadow: none !important;
  height: auto;
  min-height: 48px;
  padding: 12px 16px;
  color: var(--pi-ink);
  transition: border-color .25s var(--pi-ease), box-shadow .25s var(--pi-ease), background-color .25s var(--pi-ease);
}
textarea.form-control { min-height: 140px; }
.form-control:focus {
  border-color: var(--pi-orange) !important;
  background: var(--pi-surface) !important;
  box-shadow: 0 0 0 4px rgba(253, 104, 2, .14) !important;
}
.form-control::placeholder { color: #98a0b0; }
.contact_form { background: transparent; }

/* ---------- Testimonials ---------- */
.testimonial-box img, .feedback-box img, img.testi, .testimonial img {
  border-radius: 50%;
  border: 3px solid rgba(253, 104, 2, .25);
  padding: 3px;
}

/* ---------- Parallax / dark blocks ---------- */
.parallax, .parallax-section, .cta-section, .counter-section {
  position: relative;
  background-attachment: scroll !important;
  background-size: cover !important;
  background-position: center !important;
}
.parallax::before, .parallax-section::before, .cta-section::before {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(120deg, rgba(10, 12, 18, .82), rgba(10, 12, 18, .60));
}
.parallax > *, .parallax-section > *, .cta-section > * { position: relative; z-index: 2; }

/* ---------- Footer ---------- */
footer, .footer, .footer-area, .copyright {
  background: var(--pi-ink) !important;
  color: rgba(255, 255, 255, .72);
}
footer h3, .footer h3, footer h4, .footer h4 {
  color: #fff;
  font-size: 18px;
  position: relative;
  padding-bottom: 12px;
  margin-bottom: 18px;
}
footer h3::after, .footer h3::after, footer h4::after, .footer h4::after {
  content: "";
  position: absolute; left: 0; bottom: 0;
  width: 44px; height: 3px; border-radius: 3px;
  background: var(--pi-grad);
}
footer a, .footer a, .copyright a { color: rgba(255, 255, 255, .72); }
footer a:hover, .footer a:hover { color: var(--pi-amber); padding-left: 3px; }
footer ul li, .footer ul li { transition: transform .25s var(--pi-ease); }
.copyright { border-top: 1px solid rgba(255, 255, 255, .08); }

/* ---------- Scroll reveal (JS adds .pi-in) ---------- */
.pi-reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity .7s var(--pi-ease), transform .7s var(--pi-ease);
  will-change: opacity, transform;
}
.pi-reveal.pi-in { opacity: 1; transform: none; }

/* ---------- Back to top ---------- */
#pi-top {
  position: fixed;
  right: 22px; bottom: 26px;
  width: 46px; height: 46px;
  border: 0;
  border-radius: 50%;
  background: var(--pi-grad);
  color: #fff;
  font-size: 18px;
  line-height: 46px;
  text-align: center;
  box-shadow: 0 12px 26px rgba(253, 104, 2, .35);
  opacity: 0;
  visibility: hidden;
  transform: translateY(14px);
  transition: all .3s var(--pi-ease);
  z-index: 999;
  cursor: pointer;
}
#pi-top.pi-show { opacity: 1; visibility: visible; transform: none; }

/* ---------- Scrollbar ---------- */
@media (min-width: 992px) {
  ::-webkit-scrollbar { width: 10px; }
  ::-webkit-scrollbar-track { background: var(--pi-surface-2); }
  ::-webkit-scrollbar-thumb { background: #c9ced9; border-radius: 10px; }
  ::-webkit-scrollbar-thumb:hover { background: var(--pi-orange); }
}

/* ---------- Responsive ---------- */
@media (max-width: 991px) {
  .slider-content-area h1 { font-size: 38px; }
  .slider-content-area h2 { font-size: 16px; }
  .navbar-nav > li > a { padding: 14px 12px; }
  .navbar-nav > li > a::after { bottom: 8px; }
  .navbar-nav > li.nav-cta { padding: 10px 12px 14px; }
  .navbar-collapse {
    background: #fff;
    border-top: 1px solid var(--pi-line);
    box-shadow: var(--pi-shadow);
  }
}
@media (max-width: 767px) {
  .slider-content-area h1 { font-size: 30px; }
  .slider-content-btn a { display: inline-block; margin: 6px 4px !important; }
  .top-bar { text-align: center; }
  .top-bar .right-top, .top-bar .left-top { display: block; }
}

/* ---------- Submit buttons on light backgrounds ---------- */
.btn.grd1,
button[type="submit"].btn,
input[type="submit"].btn,
form .btn-block {
  background: var(--pi-grad) !important;
  border: 0 !important;
  color: #fff !important;
  box-shadow: 0 12px 26px rgba(253, 104, 2, .28);
  padding: 14px 32px;
  font-size: 16px;
}
.btn.grd1:hover,
button[type="submit"].btn:hover,
input[type="submit"].btn:hover {
  box-shadow: 0 18px 34px rgba(253, 104, 2, .38);
  color: #fff !important;
}

/* ==========================================================================
   REDESIGN v2 — richer, bolder visual layer
   ========================================================================== */

:root {
  --pi-glow: 0 0 0 1px rgba(253,104,2,.14), 0 18px 44px rgba(253,104,2,.18);
}

/* ---------- Ambient page texture ---------- */
body { background:
  radial-gradient(900px 460px at 88% -6%, rgba(253,104,2,.10), transparent 60%),
  radial-gradient(760px 420px at -8% 22%, rgba(252,191,2,.10), transparent 62%),
  var(--pi-surface);
}

/* ---------- Header: shrink + sticky ---------- */
.header, .header_style_01 {
  position: sticky; top: 0; z-index: 900;
  transition: box-shadow .3s var(--pi-ease), background-color .3s var(--pi-ease), padding .3s var(--pi-ease);
}
.header.pi-stuck {
  background: rgba(255,255,255,.97) !important;
  box-shadow: 0 10px 30px rgba(20,22,28,.10);
}
.header.pi-stuck .navbar-brand img { max-height: 44px; }
.header.pi-stuck .navbar-nav > li > a { padding-top: 20px; padding-bottom: 20px; }

/* ---------- Hero upgrade ---------- */
.slider-area { position: relative; }
.slider-area::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 90px;
  background: linear-gradient(to bottom, transparent, var(--pi-surface));
  z-index: 3; pointer-events: none;
}
.slider-item { background-size: cover !important; background-position: center !important; }
.slider-content-area h2:first-child {
  display: inline-block;
  font-size: 13px !important;
  letter-spacing: 3px;
  text-transform: uppercase;
  padding: 7px 18px;
  border: 1px solid rgba(255,255,255,.35);
  background: rgba(255,255,255,.10);
  backdrop-filter: blur(6px);
  border-radius: 999px;
  margin-bottom: 18px;
}
.slider-content-area h1 { font-size: 64px; }
.slider-content-btn .btn:first-child {
  background: var(--pi-grad) !important;
  border-color: transparent !important;
  color: #fff !important;
  box-shadow: 0 14px 30px rgba(253,104,2,.35);
}

/* ---------- Section rhythm ---------- */
.section { padding: 86px 0; }
.section.wb { background: transparent; }
.section.wb + .section.wb { border-top: 1px solid var(--pi-line); }
.section-title h3 {
  font-size: 40px;
  letter-spacing: -1px;
  position: relative;
  display: inline-block;
  padding-bottom: 18px;
  margin-bottom: 14px;
}
.section-title h3::after {
  content: ""; position: absolute; left: 50%; bottom: 0; transform: translateX(-50%);
  width: 74px; height: 4px; border-radius: 4px; background: var(--pi-grad);
}
.section-title .lead { color: var(--pi-ink-soft); font-size: 16.5px; max-width: 900px; margin: 0 auto; }
.db .section-title h3, .db .section-title .lead, .db h3, .db h4, .db p { color: #fff; }

/* ---------- Service cards (.about-item) ---------- */
.about-item {
  position: relative;
  background: var(--pi-surface);
  border: 1px solid var(--pi-line);
  border-radius: var(--pi-radius-lg);
  padding: 34px 26px 30px;
  margin-bottom: 30px;
  height: 100%;
  overflow: hidden;
  box-shadow: var(--pi-shadow-sm);
  transition: transform .4s var(--pi-ease), box-shadow .4s var(--pi-ease), border-color .4s var(--pi-ease);
}
.about-item::before {
  content: ""; position: absolute; left: 0; top: 0; height: 4px; width: 100%;
  background: var(--pi-grad); transform: scaleX(0); transform-origin: left;
  transition: transform .45s var(--pi-ease);
}
.about-item:hover { transform: translateY(-10px); box-shadow: var(--pi-shadow-lg); border-color: rgba(253,104,2,.30); }
.about-item:hover::before { transform: scaleX(1); }
.about-icon { margin-bottom: 18px; }
.about-icon .icon, .about-icon span {
  display: inline-flex; align-items: center; justify-content: center;
  width: 74px; height: 74px; border-radius: 20px;
  background: linear-gradient(135deg, rgba(253,104,2,.12), rgba(252,191,2,.14));
  transition: transform .45s var(--pi-ease), background .45s var(--pi-ease);
}
.about-item:hover .about-icon .icon { transform: rotate(-6deg) scale(1.06); }
.about-icon i { font-size: 32px !important; line-height: 1; }
.about-text h3 { font-size: 18.5px; margin-bottom: 10px; line-height: 1.35; }
.about-text h3 a { color: var(--pi-ink); }
.about-text h3 a:hover { color: var(--pi-orange); }
.about-text p { font-size: 14.8px; color: var(--pi-ink-soft); margin: 0; }

/* ---------- Stats / parallax counters ---------- */
.stat-wrap .icon_wrap {
  display: inline-flex; align-items: center; justify-content: center;
  width: 84px; height: 84px; margin-bottom: 16px;
  border-radius: 50%;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.20);
  backdrop-filter: blur(4px);
  transition: transform .4s var(--pi-ease), background .4s var(--pi-ease);
}
.stat-wrap .icon_wrap i { font-size: 34px; color: var(--pi-amber); }
.stat-wrap > div:hover .icon_wrap { transform: translateY(-6px); background: var(--pi-grad); }
.stat-wrap > div:hover .icon_wrap i { color: #fff; }
.stat-wrap .text, .stat-wrap .stat_count {
  font-size: 42px; font-weight: 700; color: #fff; margin: 4px 0 2px; line-height: 1.1;
}
.stat-wrap h3 { color: rgba(255,255,255,.82); font-size: 15px; font-weight: 500; letter-spacing: .4px; }

/* ---------- Feature list (.fr-inner) ---------- */
ul li .fr-inner { padding-left: 4px; }
ul li > i + .fr-inner h4 { font-size: 17px; margin-bottom: 6px; }
.fr-inner h4 { color: inherit; }

/* ---------- Testimonials ---------- */
.testimonial {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: var(--pi-radius-lg);
  padding: 30px 28px;
  backdrop-filter: blur(8px);
  transition: transform .4s var(--pi-ease), background .4s var(--pi-ease);
}
.testimonial:hover { transform: translateY(-6px); background: rgba(255,255,255,.10); }
.testimonial .desc h3 { color: #fff; font-size: 19px; }
.testimonial .desc h3 .fa-quote-left { color: var(--pi-amber); margin-right: 8px; }
.testimonial .desc .lead { color: rgba(255,255,255,.82); font-size: 15.5px; }
.testi-meta img { width: 56px; height: 56px; border-radius: 50%; margin-right: 14px; border: 2px solid rgba(253,104,2,.55); }
.testi-meta h4 { color: #fff; font-size: 15px; }
.testi-meta h4 small { color: rgba(255,255,255,.6); display: block; margin-top: 4px; }

/* ---------- Contrast and alignment fixes ---------- */
.section.lb .section-title .lead,
.section.wb .section-title .lead,
#services .section-title .lead,
#portfolio .section-title .lead {
  color: var(--pi-ink) !important;
  font-weight: 400;
}

#features li .fl-inner p,
#features li .fr-inner p {
  display: block;
  background: transparent !important;
  color: #ffffff !important;
  font-size: 13px;
  line-height: 1.45;
  margin-top: 3px;
}

#features .features-left li .fl-inner h4,
#features .features-right li .fr-inner h4 {
  color: #ffffff !important;
}

.parallax.section.noover .customwidget p,
.parallax.section.noover .customwidget li {
  color: #ffffff !important;
}

.parallax.section.noover .customwidget.text-left p {
  display: block;
  color: #ffffff !important;
  line-height: 1.7;
  font-style: normal;
}

.owl-services .owl-stage {
  display: flex;
  align-items: stretch;
}

.owl-services .owl-item {
  display: flex;
  align-items: stretch;
}

.owl-services .owl-item > .service-widget {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  min-height: 100%;
}

.owl-services .service-dit {
  flex: 1 1 auto;
  min-height: 150px;
}

.owl-services .service-dit p {
  color: var(--pi-ink) !important;
  line-height: 1.55;
}

/* The reference uses a light, outlined bill action with the brand accent. */
.header.header_style_01 .nav-bill > a {
  position: relative;
  background: #ffffff !important;
  border: 1px solid var(--paramount-blue) !important;
  color: var(--paramount-blue) !important;
  box-shadow: none !important;
}

.header.header_style_01 .nav-bill > a::after {
  content: "";
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 4px;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--pi-orange), var(--pi-amber));
}

/* ---------- Client logos ---------- */
.logos img {
  background: #fff; padding: 12px; border-radius: 14px;
  filter: grayscale(1); opacity: .78;
  transition: all .35s var(--pi-ease);
}
.logos > div { margin-bottom: 18px; }
.logos img:hover { filter: none; opacity: 1; transform: translateY(-5px); box-shadow: var(--pi-shadow); }
hr.hr1 { border-color: rgba(255,255,255,.14); margin: 46px 0; }

/* ---------- Plans / pricing tables ---------- */
.table > thead > tr > th { padding: 16px 18px; font-size: 14.5px; text-transform: uppercase; }
.table > tbody > tr > td { padding: 14px 18px; }

/* ---------- Footer polish ---------- */
.footer { padding-top: 70px; }
.footer .widget-title img { max-height: 60px; margin-bottom: 18px; }
.footer-links li a {
  display: block; padding: 6px 0; font-size: 14.2px;
  border-bottom: 1px dashed rgba(255,255,255,.08);
}
.footer-links li a .icon { float: right; opacity: 0; transition: opacity .25s var(--pi-ease); }
.footer-links li a:hover .icon { opacity: 1; }

/* ---------- Preloader ---------- */
#preloader { background: var(--pi-ink); }

/* ---------- Reveal refinement ---------- */
.pi-reveal { transform: translateY(34px) scale(.985); }
.pi-reveal.pi-in { transform: none; }

/* ---------- WhatsApp float ---------- */
.whatsapp_float { box-shadow: 0 14px 30px rgba(37,211,102,.42) !important; animation: piPulse 2.6s infinite; }
@keyframes piPulse {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

/* ---------- Responsive v2 ---------- */
@media (max-width: 991px) {
  .slider-content-area h1 { font-size: 40px; }
  .section { padding: 60px 0; }
  .section-title h3 { font-size: 30px; }
  .stat-wrap .text, .stat-wrap .stat_count { font-size: 32px; }
  .stat-wrap > div { margin-bottom: 28px; }
}

/* ---------- v2 fixes ---------- */
.header.pi-stuck { background: #fff !important; backdrop-filter: none; }
.section .lead, .lead { font-style: normal !important; }

/* equal-height service card grid */
.section .row.text-center { display: flex; flex-wrap: wrap; justify-content: center; }
.section .row.text-center > .section-title { flex: 0 0 100%; }
.section .row.text-center > [class*="col-"] { display: flex; }
.section .row.text-center > [class*="col-"] > .about-item { width: 100%; }
.stat-wrap > [class*="col-"] { display: block !important; }

/* readable about copy */
#about .message-box .section-title p { text-align: center; }
#about .message-box .section-title .lead { font-size: 16px; }

/* ---------- header paint fix ---------- */
.header, .header_style_01, .header .navbar, .header.pi-stuck .navbar {
  background-color: #fff !important;
}
.header { box-shadow: 0 6px 24px rgba(20,22,28,.08); }
.header.pi-stuck { box-shadow: 0 10px 30px rgba(20,22,28,.14); }

/* ==========================================================================
   v3 FIXES — issues flagged in review (nav pill, about layout, service grid,
   testimonial arrows, footer headings)
   ========================================================================== */

/* --- 1) Nav: remove leftover orange/white pill + shadow artifact on Home --- */
.header_style_01 .navbar-default .navbar-nav > li a,
.header_style_01 .navbar-default .navbar-nav > li a.active,
.header_style_01 .navbar-default .navbar-nav > li:hover a,
.header_style_01 .navbar-default .navbar-nav > li:focus a,
.navbar-nav > li > a,
.navbar-nav > li > a:hover,
.navbar-nav > li > a:focus,
.navbar-nav > li > a.active {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
.navbar-nav > li { margin: 0 4px; }
.navbar-nav > li > a.active { color: var(--pi-orange) !important; }

/* keep the Self Care CTA pill intact */
.header_style_01 .navbar-default .navbar-nav > li.nav-cta > a,
.header_style_01 .navbar-default .navbar-nav > li.nav-cta:hover > a,
.navbar-nav > li.nav-cta > a,
.navbar-nav > li.nav-cta > a:hover,
.navbar-nav > li.nav-cta > a:focus {
  background: var(--pi-grad) !important;
  color: #fff !important;
  border-radius: 999px !important;
  box-shadow: 0 10px 22px rgba(253, 104, 2, .30) !important;
}

/* --- 2) About intro: it is a .section-title that also carries .row.text-center,
       the equal-height flex rule turned its paragraphs into columns.        --- */
.section .row.text-center.section-title,
.section-title.row.text-center,
#about .message-box .section-title {
  display: block !important;
}
#about .message-box .section-title > [class*="col-"] {
  display: block !important;
  float: none;
  margin: 0 auto;
}
#about .col-md-0 { width: 100%; }
#about .message-box .section-title p,
#about .message-box .section-title .lead {
  text-align: center;
  max-width: 920px;
  margin: 0 auto 16px;
}
#about .message-box .section-title .btn {
  display: inline-block;
  width: auto;
  margin-top: 14px;
}

/* --- 3) Service card grid: even 3-up rows, all cards aligned --- */
@media (min-width: 992px) {
  .section .row.text-center:has(.about-item) {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px;
    align-items: stretch;
  }
  .section .row.text-center:has(.about-item) > .section-title {
    grid-column: 1 / -1;
  }
  .section .row.text-center:has(.about-item) > [class*="col-"] {
    width: 100%;
    float: none;
    padding: 0;
    display: flex;
  }
  .section .row.text-center:has(.about-item) > [class*="col-"] > .about-item {
    width: 100%;
    margin-bottom: 0;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .section .row.text-center:has(.about-item) {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
  .section .row.text-center:has(.about-item) > .section-title { grid-column: 1 / -1; }
  .section .row.text-center:has(.about-item) > [class*="col-"] {
    width: 100%; float: none; padding: 0; display: flex;
  }
  .section .row.text-center:has(.about-item) > [class*="col-"] > .about-item {
    width: 100%; margin-bottom: 0;
  }
}

/* --- 4) Testimonial carousel arrows were sitting outside the viewport --- */
.testi-carousel { position: relative; }
.testi-carousel .owl-nav { top: 50%; margin: 0; width: 100%; }
.testi-carousel .owl-next i,
.testi-carousel .owl-prev i {
  width: 48px; height: 48px; line-height: 48px; font-size: 20px;
  border-radius: 14px;
  top: -24px;
  box-shadow: 0 10px 22px rgba(0, 0, 0, .35);
}
.testi-carousel .owl-prev i { left: 8px; right: auto; }
.testi-carousel .owl-next i { right: 8px; left: auto; }
@media (max-width: 767px) {
  .testi-carousel .owl-next i,
  .testi-carousel .owl-prev i { width: 40px; height: 40px; line-height: 40px; font-size: 16px; top: -20px; }
  .testi-carousel .owl-prev i { left: 0; }
  .testi-carousel .owl-next i { right: 0; }
}

/* --- 5) Footer headings: accent bar was striking through the text --- */
.footer .widget-title { overflow: visible; }
.footer .widget-title h3 {
  line-height: 1.3 !important;
  padding: 0 0 14px !important;
  margin: 0 0 8px !important;
  display: inline-block;
}
.footer .widget-title h3::after { left: 0; bottom: 0; }
.footer .widget { margin-bottom: 34px; }
.footer .widget-title img { display: block; }

/* arrow glyphs: the icomoon sheet is not loaded, fall back to FontAwesome */
.testi-carousel .owl-prev i,
.testi-carousel .owl-next i { font-size: 0; }
.testi-carousel .owl-prev i::before,
.testi-carousel .owl-next i::before {
  font-family: FontAwesome !important;
  font-size: 22px;
  line-height: 48px;
}
.testi-carousel .owl-prev i::before { content: "\f104"; }
.testi-carousel .owl-next i::before { content: "\f105"; }
@media (max-width: 767px) {
  .testi-carousel .owl-prev i::before,
  .testi-carousel .owl-next i::before { font-size: 18px; line-height: 40px; }
}
.footer .widget:has(> .widget-title:only-child) { margin-bottom: 8px; }
